説明

カーナビゲーション装置、プログラムおよび地図データ更新方法

【課題】地図データ更新中であっても、カーナビ機能の正常な動作を確保する。
【解決手段】カーナビ装置1は、HDD地図110、キャッシュ地図109を備え、HDD地図110には全地域の地図データが格納され、キャッシュ地図109には、経路探索部115、誘導案内部116が用いる地域の地図データが格納される。キャッシュ地図エリア特定部108は、キャッシュ地図109に格納すべき地域の地図データファイルをナビアプリごとに特定し、その特定した地図データファイルの名称をナビアプリに対応付けてナビアプリ整合性管理テーブル103に格納する。整合性判断部104は、ナビアプリ整合性管理テーブル103にその名称が登録された地図データファイルの更新状況を監視するとともに、その監視により得られた更新状況(更新済または未済)をナビアプリ整合性管理テーブル103に格納する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カーナビゲーション装置およびそのプログラム、ならびに、そのカーナビゲーション装置で用いられる地図データの更新方法に関する。
【背景技術】
【0002】
近年、道路を走行する車両用のナビゲーション装置(以下、カーナビゲーション装置、または、略して、カーナビ装置という)は、国内をはじめ、海外においても、急速に普及してきている。
【0003】
カーナビ装置は、ハードディスク装置(HDD:Hard Disk Drive)などに格納されている地図データと、GPS(Global Positioning System)衛星の電波から取得される緯度・経度のデータと、に基づき、地図データ上で自車位置を特定し、その特定した自車位置とその近傍の地図とを表示装置に表示する。
【0004】
また、カーナビ装置は、ユーザの入力操作に基づき、地図データ上で目的地を特定することにより、自車位置から目的地までの経路探索を行い、その探索した経路を、前記表示装置に表示した地図上に重ね合わせて表示するとともに、さらに、自車がその経路に沿って走行する場合には、経路誘導のための案内表示や音声出力などを行う。
【0005】
カーナビ装置用の地図データは、いわゆるKIWIフォーマット、Aフォーマット、Iフォーマットなどにフォーマットされたデータであり、エンドユーザへは、従来、カーナビ装置ベンダを介して、CD−ROM(Compact Disk - Read Only Memory)/DVD−ROM(Digital Versatile Disk - Read Only Memory)などの可搬記憶媒体に格納された形態で提供されてきた。
【0006】
そして、新地図データが可搬記憶媒体で提供されると、カーナビ装置のエンドユーザは、ハードディスク装置に格納されている旧地図データを、その可搬記憶媒体に格納されている新地図データで総入れ替えをして、新地図データに更新していた。
【0007】
しかしながら、地図データの更新における実際の変更データは、多くても数パーセント程度であることを考慮した場合、このような可搬記憶媒体を介した地図更新は、必ずしも効率のよい方法とは言えない。また、可搬記憶媒体を介した地図更新では、日々、新しい道路などが建設または改修され、道路地図が変更されている実態に迅速に対応することができない。ちなみに、新地図データの提供は、よくても1年に1回程度しか行われておらず、そのため、相当箇所の地点で、カーナビ装置の地図データが実際の道路の実態と乖離する結果となっている。
【0008】
こうしたなか、近年では、旧地図と新地図との差分地図データを作成し、その差分地図データを通信や放送を用いて配信するサービスが開始されている。この場合には、可搬記憶媒体などを介する必要がないので、新地図データを提供して更新するまでの業者およびエンドユーザの手数が軽減される。その結果、地図データの更新頻度を、例えば、1年に1回から、2〜3ヶ月に1回などに増やすことが可能となる。
【0009】
一方、差分地図データを配信する場合には、その配信手段として通信または放送が用いられるため、差分地図データでデータ量が削減されているとはいえ、その地図データの配信および更新に長時間を要する。ちなみに、現状では、東京都の地図データを更新するだけでも30分程度かかる。
【0010】
例えば、特許文献1には、地図データを更新するとき、更新前の地図データを残しておき、その更新前の地図データを用いてカーナビ装置の動作を継続させ、全ての地図データ更新が完了したときに、全面的に新地図データに切り替えてカーナビ装置を動作させる地図データ更新方法が開示されている。
【0011】
また、特許文献2には、地図データが階層的に構成され、車両の現在位置を含む地域の地図データを更新することにより地図データ配信の時間やコストを削減するカーナビ装置の例が開示されている。そのカーナビ装置は、更新中の地図データについては、更新前の地図データと更新後の地図データとの両方を記憶しておき、自車位置が更新地域内にあるときは更新前の地図データを用い、更新地域外にあるときは更新前の地図データを用いて経路誘導を行う。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開平11−95657号公報
【特許文献2】特開2003−315056号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
特許文献1に開示された地図データ更新方法によれば、地図データ更新中であっても、カーナビ装置の機能を正常に動作させることができるが、新しい地図データが使用可能になるまで長時間かかるという欠点は解決されていない。しかも、地図データ更新中には、更新前の地図データを使用するので、現実にそぐわない経路誘導情報などが表示される可能性を避けることはできない。
【0014】
また、特許文献2に開示されたカーナビ装置においては、更新した地域の境界付近の地図データと、その更新した地域に隣接する更新前の地図データと、の間で不整合が生じる可能性があり、そのため、表示する地図データと経路誘導データとが互いに矛盾するような結果が生じることがある。
【0015】
以上のように、従来技術においては、更新した地図データを迅速に利用できるようにすることと、更新前の地域の地図データと更新後の地域の地図データとを利用して、矛盾なく経路探索をしたり、誘導データを表示したりすることと、をうまく両立させることができなかった。
【0016】
そこで、本発明では、地図データ更新中であっても、カーナビ機能の正常な動作を確保し、かつ、更新した地図データを迅速に利用可能にすることができるようなカーナビゲーション装置、プログラムおよび地図データ更新方法を提供することを目的とする。
【課題を解決するための手段】
【0017】
本発明に係るカーナビゲーション装置は、複数の地域の地図データをそれぞれの地図データファイルとして記憶する地図データ記憶手段と、その地図データを表示する表示手段と、自車位置を取得する位置取得手段と、目的地を設定する目的地設定手段と、を備え、前記地図データ記憶手段を参照して、自車位置から目的地までの誘導経路を探索し、その探索した誘導経路を表示手段に表示する。そして、そのカーナビゲーション装置の演算処理装置は、次の処理を実行することを特徴とする。
(1)地図データ記憶手段に記憶されている複数の地域の地図データファイルから、当該カーナビゲーション装置に含まれているアプリケーションプログラムごとに、そのアプリケーションプログラムの実行に必要な地域の地図データファイルを、目的地または誘導経路を含む地域およびその周辺地域の地図データファイルとして特定する処理。
(2)地図データ記憶手段に記憶されている地図データファイルを更新する場合には、前記特定した地図データファイルについてその更新状況を監視する処理。
(3)前記監視によって得られる前記特定した地図データファイルの更新状況と、その地図データファイルの識別情報とを、前記アプリケーションプログラムに対応付けた情報を、前記アプリケーションプログラムの動作の整合性を管理する管理情報として記憶装置に格納する処理。
(4)前記管理情報にその識別情報が含まれている地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関連させて、その地図データファイルを更新し、前記管理情報にその識別情報が含まれている地図データファイル以外の地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関係なく、その地図データファイルを更新する処理。
【0018】
以上のように、本発明においては、カーナビゲーション装置に含まれているアプリケーションプログラムごとに、そのアプリケーションプログラムの実行に必要な地域の地図データファイルを特定し、その特定した地図データファイルの更新状況を監視するようにしている。従って、本発明では、アプリケーションプログラムの実行に必要な地域の地図データファイルが更新されれば、全部の地域の地図データファイルの更新の完了を待つことなく、そのアプリケーションプログラムを正常に動作させることができる。
【0019】
また、本発明では、前記特定した地図データファイルを更新するときには、アプリケーションプログラムの実行状況と関連させて更新するので、そのアプリケーションプログラムによって実現されるカーナビゲーション装置の正常な動作を確保することができる。
【発明の効果】
【0020】
カーナビゲーション装置において、地図データ更新中であっても、その通常機能の正常な動作を実現することができ、かつ、更新した地図データを迅速に利用可能にすることができるようになる。
【図面の簡単な説明】
【0021】
【図1】本発明の実施形態に係るカーナビ装置の機能ブロックの構成の例を示した図。
【図2】本発明の実施形態に係る地図配信センタの構成の例を示した図。
【図3】地図配信ホストコンピュータの内部構成の例を示した図。
【図4】地図配信ホストコンピュータのメイン処理の処理フローの例を示した図。
【図5】地図配信ホストコンピュータのメイン処理における差分抽出処理の処理フローの例を示した図。
【図6】地図データを構成するパーセルの概念を説明するための図。
【図7】地図データベースのファイル構成の概念を説明するための図。
【図8】カーナビ装置におけるメイン処理の処理フローの例を示した図。
【図9】カーナビ装置における地図更新処理の処理フローの例を示した図。
【図10】カーナビ装置1における誘導案内処理の処理フローの例を示した図。
【図11】カーナビ装置の地図更新処理におけるDBファイル更新処理の処理フローの例を示した図。
【図12】DBファイル名リストの構成の例を示した図。
【図13】カーナビ装置の地図更新処理における差分更新処理の処理フローの例を示した図。
【図14】カーナビ装置の誘導案内処理における誘導案内補正処理の処理フローの例を示した図。
【図15】ナビアプリ整合性管理テーブルの構成の例を示した図。
【図16】カーナビ装置の主記憶装置とHDDとの間における関係データベース(RDB)の動作を説明するための図。
【図17】カーナビ装置の地図データベースにおける管理情報のデータ構成の例を示した図。
【図18】HDD上の地図データが地図メディア上の地図データにより更新される様子を表した第1の例を示した図(その1)。
【図19】HDD上の地図データが地図メディア上の地図データにより更新される様子を表した第1の例を示した図(その2)。
【図20】HDD上の地図データが地図メディア上の地図データにより更新される様子を表した第2の例を示した図(その1)。
【図21】HDD上の地図データが地図メディア上の地図データにより更新される様子を表した第2の例を示した図(その2)
【発明を実施するための形態】
【0022】
以下、図面を参照して本発明の実施形態について詳しく説明する。
【0023】
図1は、本発明の実施形態に係るカーナビ装置の機能ブロックの構成の例を示した図である。
【0024】
図1に示すように、カーナビ装置1は、地図データベースを記憶したHDD地図110を備え、いわゆるカーナビとしての機能を実現する機能ブロックとして、車の走行速度を取得する車速取得部112、GPS衛星からの電波から緯度・経度を特定して自車位置を決定する自車位置決定部113、ユーザにより選択されるPOI(Point of Interest)を目的地として設定する目的地設定部114、自車位置から目的地までの経路探索を行う経路探索部115、経路探索された結果に従って交差点案内などの誘導案内を行う誘導案内部116、地図や誘導案内を表示する表示部118などを備える。
【0025】
これらの機能ブロックは、カーナビ装置1の図示しない演算処理装置(以下、「CPU(Central Processing Unit)」という)が、半導体メモリなどからなる図示しない主記憶装置にロードされた所定のプログラムを実行することによって実現される。なお、本実施形態では、これらの機能ブロックを実現するためのプログラムを、以下、「ナビアプリ」という。
【0026】
カーナビ装置1は、さらに、キャッシュ地図109を備え、本実施形態に特有の機能ブロックとして、更新用地図データ入力部117、キャッシュ地図エリア特定部108、キャッシュ地図更新部107、ファイル更新部101、差分更新部102、更新方式切替部105、更新時間計算部106、ナビアプリ整合性管理テーブル103、整合性判断部104、不整合補正部111などを備える。
【0027】
更新用地図データ入力部117は、通信または放送を介して地図配信センタ2から配信され、通信装置4によって受信された更新用地図データを入力する、あるいは、可搬記憶媒体などからなる地図メディア5に記録された更新用地図データを読み取る。なお、通信装置4は、携帯電話機、データ放送の受信装置などである。
【0028】
ファイル更新部101および差分更新部102は、更新用地図データ入力部117から入力された更新用地図データにより、HDD地図110の地図データベースを構成する地図データのファイル(以下、「DBファイル」という)を更新する。ここで、HDD地図110は、図示しないハードディスク装置上に構成され、地図データベースの構成については、別途、図面を参照して説明する。
【0029】
なお、ファイル更新部101は、HDD地図110の地図データベースをDBファイルの単位で更新し、差分更新部102は、その地図データベースを差分データの単位で更新する。また、更新方式切替部105は、地図データを更新する方式(ファイル更新または差分更新)を切り替える。また、更新時間計算部106は、それぞれの更新方式ごとに地図データ更新に要する時間を計算する。
【0030】
キャッシュ地図109は、ナビアプリによって高頻度で使用される地域の地図データをHDD地図110から取り出して、図示しない主記憶装置や高速の補助記憶装置(ハードディスク装置など)上に記憶したものであり、地図データのアクセスの高速化を目的として設けられたものである。
【0031】
キャッシュ地図エリア特定部108は、自車位置または目的地までの誘導経路に基づき、キャッシュ地図109に記憶(キャッシュ)すべき地図データの対象地域(エリア)を特定する。その場合、キャッシュの対象となる地域は、それぞれのナビアプリ(自車位置決定、経路探索、誘導案内など)ごとに、そのナビアプリの正常な動作を確保するために必要な範囲の地域と定められる。そして、その範囲が、自車位置または目的地だけを含んだ地域なのか、隣接地域をも含むものかなどについては、ナビアプリごとにあらかじめ定められているものとする。
【0032】
そこで、本実施形態では、キャッシュ地図エリア特定部108は、ナビアプリごとにそのキャッシュの対象となる地域を特定し、その特定した地域の地図データを記憶したDBファイルの名称(識別情報)を、そのナビアプリに対応付けて、ナビアプリ整合性管理テーブル103に格納する。なお、ナビアプリ整合性管理テーブル103の詳細については、別途、図15を参照して説明する。
【0033】
キャッシュ地図更新部107は、キャッシュ地図エリア特定部108により特定された地域に変更があった場合には、キャッシュ地図109にキャッシュされている地図データを、HDD地図110の地図データに基づき更新する。また、更新用地図データ入力部117から、キャッシュ地図109にキャッシュされている地域の更新用地図データが入力された場合には、その地域の更新用地図データに基づき更新する。
【0034】
なお、キャッシュ地図更新部107は、キャッシュ地図109を更新用地図データに基づき更新するときには、ナビアプリ整合性管理テーブル103を参照して、それぞれのナビアプリごとに地図データをキャッシュすべき地域としてリストアップされている地域の対応するDBファイルが更新された否かを監視し、その監視の結果を、ナビアプリ整合性管理テーブル103に格納する。
【0035】
整合性判断部104は、ナビアプリ整合性管理テーブル103を参照して、各ナビアプリが使用する地域の地図のDBファイル、すなわち、キャッシュ地図109として記憶されている地域の地図のDBファイルが更新中(更新未済)であるか、または、更新完了した状態(更新済)であるかを判定する。そして、更新未済である場合には、そのナビアプリとの整合性がない(不整合有り)ものと判定する。不整合補正部111は、整合性判断部104により不整合有りと判定された場合には、そのナビアプリの中で、適宜、地図データの不整合を補正するための処理を実行する。
【0036】
図2は、本発明の実施形態に係る地図配信センタ2の構成の例を示した図である。
【0037】
図2に示すように、地図配信センタ2は、地図メディア作成装置21、通信制御装置22、地図配信ホストコンピュータ23、データベース管理装置24、並びに、複数のバージョンのPOIデータベース25および地図データベース26を含んで構成される。
【0038】
地図配信ホストコンピュータ23は、地図メディア作成装置21または通信制御装置22を介して入力されるバージョン指定情報に基づき、全地図データまたは差分地図データを作成する。
【0039】
ここで、全地図データとは、データベース管理装置24で管理されている地図データベース26のうち、前記バージョン指定情報により指定されたバージョンの地図データベース26に含まれる全地図データをさす。ただし、地図データの更新に用いる全地図データの場合には、その全地図データとして、更新不要の地域の地図データを格納したDBファイルを含む必要はない。また、差分地図データとは、前記バージョン指定情報により指定されたバージョンの地図データベース26の地図データと、最新バージョンの地図データベース26の地図データと、の差分データをいう。
【0040】
地図配信ホストコンピュータ23は、その作成した全地図データまたは差分地図データを地図メディア作成装置21へ出力して、その地図メディア作成装置21により、全地図データまたは差分地図データが書き込まれた地図メディア5(図1参照、CD−ROM、DVD−ROMなど)を作成する。地図配信ホストコンピュータ23は、また、その作成した差分地図データを通信制御装置22へ出力して、通信ネットワークや放送電波を介してカーナビ装置1へ配信する。
【0041】
なお、図2に示すように、地図データベース26と同様のデータベースとして、POIデータベース25があるが、本実施形態では、それらを総称して、単に、「地図データベース」という。また、地図データベースを構成するファイルを「DBファイル」といい、そのDBファイルを構成するデータを「地図データ」という。
【0042】
図3は、地図配信ホストコンピュータ23の内部構成の例を示した図である。地図配信ホストコンピュータ23は、地図配信センタ2の主要動作を司る中枢部であり、図3に示すように、地図メディア用地図データ選択部231、差分抽出部232、パケット処理部233、配信処理部234、地図コンテンツ決定部235、地図データベース選択部236、POIデータベース選択部237、ネットワークI/F部238などを含んで構成される。
【0043】
地図メディア用地図データ選択部231は、全地図データまたは差分地図データを地図メディア作成装置21へ出力するとき、地図メディア5の作成の対象となる地域の地図データを格納したDBファイルを選択する。また、差分抽出部232は、2つの互いに異なるバージョン(通常は、その一方が最新バージョン)の地図データベースについて、その差分データを抽出する。
【0044】
また、パケット処理部233は、差分抽出部232により抽出された差分データを配信する際の放送または通信パケットのフォーマットへ変換する。配信処理部234は、パケット処理を施した差分データを通信制御装置22へ出力することにより、データ放送やデータ通信などのデータカルーセルやIP(Internet Protocol)からなるデータ伝送路へ重畳する。
【0045】
また、地図コンテンツ決定部235は、地図配信ホストコンピュータ23に付属する入力装置(図示省略)などから入力されるデータに基づき、地図メディア作成装置21または通信制御装置22へ出力する地図データとしてどのような地図データ(地図データベース26のデータ、POIデータベース25のデータ、または、両方のデータなど)を含ませるかを決定する。
【0046】
地図データベース選択部236およびPOIデータベース選択部237は、地図コンテンツ決定部235によって決定された地図データの種類に基づき、ネットワークI/F部238およびデータベース管理装置24を介して、対象となるPOIデータベース25や地図データベース26などを選択する。
【0047】
なお、ここでは、地図配信ホストコンピュータ23とデータベース管理装置24とは、地図配信センタ2内に敷設された高速のLAN(Local Area Network)などで接続されているものとする。
【0048】
図4は、地図配信ホストコンピュータ23のメイン処理の処理フローの例を示した図である。
【0049】
図4に示すように、地図配信ホストコンピュータ23は、まず、地図メディア作成装置21、通信制御装置22またはキーボードなどの入力装置(図示せず)などから入力される地図配信または地図メディア作成の要求を受付ける(ステップS01)。そして、その要求が地図配信要求であった場合には(ステップS02でYes)、地図配信ホストコンピュータ23は、カーナビ装置1からそのカーナビ装置1がそのとき有している地図データベースおよびPIOデータベースのバージョンを取得し(ステップS03)、さらに、カーナビ装置1から自車位置の緯度・経度の情報を取得する(ステップS04)。
【0050】
次に、地図配信ホストコンピュータ23は、それぞれの地域ごとの地図データについて差分データを抽出する差分抽出処理を実行する(ステップS05)。さらに、地図配信ホストコンピュータ23は、自車位置の緯度・経度の情報などに基づき、カーナビ装置1における差分更新順序を決定するとともに(ステップS06)、その差分データの配信スケジュールを決定し(ステップS07)、地図データの差分データをカーナビ装置1へ配信する(ステップS08)。
【0051】
また、ステップS01で受付けられた要求が地図配信要求ではなく、地図メディア作成要求であった場合には(ステップS02でNo)、地図配信ホストコンピュータ23は、キーボードなどの入力装置などからPOIデータベース25のバージョンおよび地図データベース26のバージョンの入力を受付ける(ステップS11)。
【0052】
そして、地図配信ホストコンピュータ23は、データベース管理装置24を介して、前記受付けたバージョンのPOIデータベース25および地図データベース26が地図配信センタ2の中に存在することを確認し(ステップS12)、前記受付けたバージョンのPOIデータベース25および地図データベース26を地図メディア5へ書き込む(ステップS13)。なお、その存在が確認されなかった場合には、例えば、その旨を付属する表示装置などに表示する。
【0053】
なお、ここでは、地図メディア作成装置21で更新用地図データ作成する場合には、その更新用地図データは、全地図データであるとしているが、一般には、その限定は必要ではなく、差分データであってもよい。
【0054】
図5は、地図配信ホストコンピュータ23のメイン処理における差分抽出処理の処理フローの例を示した図である。図5に示すように、地図配信ホストコンピュータ23は、まず、データベース管理装置24を介して、地図配信センタ2における最新のPOIデータベース25のバージョンおよび最新の地図データベース26のバージョンを取得し(ステップS051)、さらに、カーナビ装置1から送信される情報に基づき、カーナビ装置1に存在するPOIデータベース25のバージョンおよび地図データベース26のバージョンを取得する(ステップS052)。
【0055】
次に、地図配信ホストコンピュータ23は、地図配信センタ2における最新バージョンのPOIデータベース25と、カーナビ装置1に存在するPOIデータベースと同じバージョンのPOIデータベース25と、から新規IDで管理されるPOIレコードを検索し抽出し(ステップS053)、さらに、同様に、地図配信センタ2における最新バージョンのPOIデータベース25と、カーナビ装置1に存在するPOIデータベースと同じバージョンのPOIデータベース25と、から既存IDで管理されるPOIレコードのうち、変更箇所があるPOIレコードを検索し抽出する(ステップS054)。なお、これらの検索では、SQL(Structured Query Language)によるクエリを用いてもよい。
【0056】
次に、地図配信ホストコンピュータ23は、地図配信センタ2における最新の地図データベース26と、カーナビ装置1に存在する地図データベースと同じバージョンの地図データベース26と、から新規IDで管理される地図レコードを検索し抽出し(ステップS055)、さらに、同様に、地図配信センタ2における最新の地図データベース26と、カーナビ装置1に存在する地図データベースと同じバージョンの地図データベース26と、から既存IDで管理される地図レコードのうち、変更箇所がある地図レコードを検索し抽出する(ステップS056)。これらの検索では、SQLによるクエリを行ってもよい。
【0057】
次に、地図配信ホストコンピュータ23は、以上のようにして差分として抽出されたPOIレコードおよび地図レコードを、あらかじめ設定された放送や通信の仕様に従ってパケット化する(ステップS057)。
【0058】
続いて、図6および図7を参照して、本実施形態で用いられるパーセルおよび地図データベースを構成するファイルについて説明する。ここで、図6は、地図データを構成するパーセルの概念を説明するための図、図7は、地図データベースのファイル構成の概念を説明するための図である。
【0059】
図6に示すように、パーセルは、所定の大きさの区画に分割された1つの区画が表す地域の地図、または、その地図に含まれる地図データの総称であり、パーセルIDによって識別される。すなわち、パーセルIDは、矩形の大きさを指定するレベル情報と、その矩形の左下頂点の緯度および経度の情報とを連結した文字情報で表される。
【0060】
ここで、レベル情報は、Lv1−Lv6まで6レベルあり、各レベルにおける矩形の大きさは、図7に示しているように、それぞれ、一辺が2.5km、10km、40km、160km、640km、2560kmである。また、緯度および経度の情報は、度表記の小数点以下2桁の10進数で表される。
【0061】
例えば、パーセルIDが“Lv4+40.00+14.00”である場合には、その矩形の左下頂点の位置は、北緯40度、東経14度であり、その一辺の大きさは160kmとなる。なお、緯度および経度が、南緯および西経の場合には、それぞれ“+”の代わりに“−”が付される。
【0062】
パーセルIDの管理体系については、地図配信センタ2側で、あらかじめカーナビ装置の機種ならびにパーセルID管理体系(例えば、図6に示すようなパーセルIDフォーマット定義情報)を通信を介して取得し、地図配信センタ2側でパーセルIDフォーマット定義に基づいたID変換を行った後に地図更新データを配信するという手段を備えておくことでさまざまな機種のPND(Personal Navigation Device)に対しても配信が可能となり、このような地図配信センタ2側の地図更新データを取得できるカーナビ装置であれば、新たな買い替えを必要とせずに機能実現を可能となる。
【0063】
また、図7に示すように、地図データベース26を構成する1つのファイル(本実施形態で「DBファイル」と称しているもの)は、レベル情報がLv1−lv4である場合には、一辺が320kmの矩形の地域に含まれる地図データによって構成され、レベル情報がLv5,lv6である場合には、一辺が2560kmの矩形の地域に含まれる地図データによって構成される。
【0064】
従って、Lv4のDBファイルには、160km四方の地域の地図4枚分(Lv4のパーセル4個分)の地図データが格納され、Lv3のDBファイルには、40km四方の地域の地図64枚分(Lv3のパーセル64個分)の地図データが格納され、Lv2のDBファイルには、10km四方の地域の地図1024枚分(Lv2のパーセル1024個分)の地図データが格納され、Lv1のDBファイルには、2.5km四方の地域の地図16384枚分(Lv1のパーセル16384個分)の地図データが格納される。
【0065】
また、Lv5,lv6の地図データは、ともに1つのDBファイルに格納される。すなわち、2560km四方の地域の地図1枚分(Lv6のパーセル1個分)の地図データおよび640km四方の地域の地図1枚分(Lv5のパーセル4個分)の地図データが1つのDBファイルに格納される。
【0066】
以上のように、全体を2560km四方の地域とし、Lv1−Lv4のDBファイルに320km四方の地域の地図データが含まれるとした場合には、Lv1−Lv4のDBファイルは、各レベル16個、4レベル併せて64個存在することになる。
【0067】
なお、DBファイルの名称も、パーセルIDと同様に、矩形の地域の大きさを指定するレベル情報と、その矩形の左下頂点の緯度および経度の情報とを連結した文字情報で表される。
【0068】
図8は、カーナビ装置1におけるメイン処理の処理フローの例を示した図である。ここで、メイン処理とは、カーナビ装置1において電源が投入されて、電源が切断されるまでの一連の処理をいう。
【0069】
図8に示すように、エンジンキーなどによりカーナビ装置1へ電源が投入される(電源ON)と、カーナビ装置1のCPU(以下、単に、「CPU」という)は、補助記憶装置に記憶されているOS(Operating System)、ナビアプリを主記憶装置にロードするなどの所定の初期化処理を実行する(ステップS21)。
【0070】
次に、CPUは、カーナビイベントを取得するループ処理へ入る(ステップS22)。ここで、カーナビイベントとは、カーナビ装置1に付属する通信装置4、入力装置、センサインタフェースなどによって発生させられる割込イベントであり、また、タイマやプログラムにより発生させられるイベントを指す。
【0071】
そこで、そのイベントが“自車位置更新イベント”であった場合には(ステップS23でYes)、CPUは、OSが提供するメールボックスに、自車位置更新処理要求メッセージを送信する(ステップS24)。このとき、CPUは、そのメールボックスに自車位置更新処理要求メッセージの存在を検知すると、自車位置更新処理の実行を開始し、そのとき受信しているGPS電波から自車位置の緯度・経度を取得する。
【0072】
また、そのイベントが“地図表示イベント”であった場合には(ステップS25でYes)、CPUは、地図表示処理要求メッセージをメールボックスに送信する(ステップS26)。このとき、CPUは、そのメールボックスに地図表示処理要求メッセージの存在を検知すると、そのとき取得されている自車位置をその中に含む所定の大きさの地図を表示装置上に表示する。
【0073】
以下、同様に、そのイベントが“目的地設定イベント”であった場合には(ステップS27でYes)、CPUは、目的地設定処理要求メッセージをメールボックスに送信する(ステップS28)。また、そのイベントが“経路探索イベント”であった場合には(ステップS29でYes)、CPUは、経路探索処理要求メッセージをメールボックスに送信する(ステップS30)。また、そのイベントが“誘導案内イベント”であった場合には(ステップS31でYes)、CPUは、誘導案内処理要求メッセージをメールボックスに送信する(ステップS32)。また、そのイベントが“地図更新イベント”であった場合には(ステップS33でYes)、CPUは、地図更新処理要求メッセージをメールボックスに送信する(ステップS34)。また、そのイベントが“再起動イベント”であった場合には(ステップS35でYes)、CPUは、再起動処理要求メッセージをメールボックスに送信する(ステップS36)。
【0074】
さらに、そのイベントが“電源OFFイベント”であった場合には(ステップS37でYes)、CPUは、カーナビ終了処理要求メッセージをメールボックスに送信し(ステップS38)、図8のメイン処理を終了する。
【0075】
図9は、カーナビ装置1における地図更新処理の処理フローの例を示した図である。
【0076】
図9に示すように、カーナビ装置1のCPUは、まず、地図更新処理要求メッセージの有無を判定する(ステップS41)。そして、その判定の結果、地図更新処理要求メッセージが有った場合には(ステップS41でYes)、CPUは、自車位置または誘導経路を含まない地図に対して、その地図データベースを構成するファイルのDBファイル更新方式を決定する(ステップS42)。
【0077】
ステップS42の処理において、例えば、キャッシュ地図109にキャッシュしている地域の地図データのDBファイルについては、差分更新を行い、それ以外の地域の地図データのDBファイルについては、全地図データの更新(以下、「ファイル更新」という)を行うようにする。ファイル更新と差分更新のどちらを最初に実行するかを決定するために、更新時間計算部106により更新方式ごとの地図データ更新に要する時間を計算することで、更新時間が短いほうから先に実行するように決定する。例えば、ファイル更新および差分更新の更新時間を比較して、ファイル更新のほうが更新時間が短いことでファイル更新を差分更新よりも先にすると決定した場合には、CPUは、ステップS42以降の処理を、次の順序に従って実行する。
【0078】
ファイル更新は、DBファイルを丸ごと書き換える通常のFILE処理のI/Fが活用できる。一方、差分更新を実現する上で関係データベース処理におけるSQL文の翻訳処理、表定義解析処理、HDD上の物理空間上に対するページ検索処理などの一連の処理を組み込み機器上で実行する必要がある。このため、ファイル更新と差分更新の更新時間を比較したときに、更新データの量が一定以上になると差分更新よりもファイル更新のほうが早い場合が存在するため、本比較処理は、カーナビ装置1のような組み込み機器の処理特性を考慮して、ユーザに地図更新の時間を感じさせない処理を可能とする。
【0079】
すなわち、CPUは、まず、地図データベースを構成するDBファイルについて、DBファイル更新処理を実行する(ステップS43)。なお、DBファイル更新処理の詳細な処理フローについては、別途、図11を参照して説明する。
【0080】
次に、CPUは、差分更新の対象となるDBファイルを指定するDBファイル更新エリア情報(パーセルID)を地図配信センタ2へ送信し(ステップS44)、さらに、自車位置の緯度・経度を地図配信センタ2へ送信する(ステップS45)。
【0081】
これに対し、地図配信センタ2は、カーナビ装置1から送信されるファイル更新エリア情報と自車位置の緯度・経度を受信すると、その自車位置が含まれる地域の地図データを含むパーセルまたはDBファイルについての差分データをカーナビ装置1へ配信する。そこで、カーナビ装置1のCPUは、その配信される差分データを受信し(ステップS46)、その受信した差分データに基づき、差分更新処理を行う(ステップS47)。なお、差分更新処理の詳細な処理フローについては、別途、図13を参照して説明する。
【0082】
なお、地図更新処理の実行順序は、図9に示した順序に限定されることはなく、例えば、DBファイル更新処理(ステップS43)を差分更新処理(ステップS47)の後に実行するようにしてもよい。その場合には、キャッシュ地図109のほうがHDD地図110よりも先に更新されるので、ナビアプリは、より早く更新された地図データを使用することができるようになる。
【0083】
図10は、カーナビ装置1における誘導案内処理の処理フローの例を示した図である。
【0084】
図10に示すように、カーナビ装置1のCPUは、まず、誘導案内処理要求メッセージの有無を判定する(ステップS51)。そして、その判定の結果、誘導案内処理要求メッセージが有った場合には(ステップS51でYes)、CPUは、ナビアプリ整合性管理テーブル103を参照し、ナビアプリ“誘導”についてパーセルIDで特定される地図データの地図更新処理が完了したか否かを判定する(ステップS52)。そして、その判定の結果、地図更新処理が完了していた場合には(ステップS52でYes)、CPUは、ナビアプリ“誘導”が更新後の地図を参照するようにし(ステップS53)、経路探索処理要求メッセージを送信することにより、経路探索処理に対し、誘導経路の再経路探索を要求する(ステップS54)。
【0085】
その後、CPUは、再経路探索後の誘導経路とそれまでの誘導経路とを比較し、再経路探索後の誘導経路のほうが目的地へ早く到着する場合には(ステップS55でYes)、
再経路探索後の誘導経路を表示装置に表示するとともに(ステップS56)、再経路探索前と比べて誘導経路が変化した経路部分の道路や背景などを太線や目立つ色で強調表示する(ステップS57)。一方、再経路探索後の誘導経路のほうが目的地へ早く到着しない場合には(ステップS55でNo)、表示装置には、再経路探索前の誘導経路を表示する(ステップS58)。
【0086】
また、ステップS52の判定で、地図更新処理が完了していないと判定された場合には(ステップS52でNo)、誘導案内補正処理を行い(ステップS59)、その誘導案内補正処理の結果に基づき、不整合の誘導情報を提示するときには、音声メッセージまたは表示装置に表示したメッセージによって、ユーザに対し「誘導案内が実際の道路と異なる場合がある」ことを通知する(ステップS60)。
【0087】
以上、ステップS55の条件分岐処理を行うことによって、地図更新後に再経路探索した誘導経路が地図更新前の誘導経路よりも有利な誘導経路(例えば、最短時間経路)であるか否かが自動的に判定され、有利な誘導経路が表示装置に表示される。従って、ユーザの車両の運転は、地図更新によって妨げられることはない。そして、カーナビ装置1により提供される機能は、地図更新がされると即座に有効となるので、ユーザは、その機能をすぐに活用することが可能となる。
【0088】
また、ステップS60では、ユーザに「誘導案内が実際の道路と異なる場合がある」ことが通知されるため、ユーザは、誘導案内補正処理(ステップS59)の後に地図に不整合があるか否かを、車両運転中であってもカーナビ装置1への操作をすることなく、その状況を把握することが可能となる。
【0089】
図11は、カーナビ装置1の地図更新処理におけるDBファイル更新処理の処理フローの例を示した図である。
【0090】
カーナビ装置1のCPUは、まず、地図メディア5を認識する(ステップS4301)。なお、ここでいう地図メディア5は、通常は、更新用地図データが記憶された可搬記憶媒体(CD−ROM/DVD−ROMなど)であるが、広義には、通信装置4などを介して通信可能に接続された地図配信センタ2を地図メディア5とみなしてもよい。
【0091】
次に、CPUは、自車位置決定部113を介して自車位置を取得し(ステップS4302)、さらに、地図表示レベルを変更する(ステップS4303)。例えば、地図表示レベルがLv5,6であった場合には、Lv4に変更する。
【0092】
次に、CPUは、自車位置と地図データベースのDBファイル命名規則により、自車位置周辺に該当・非該当のLv4−1のDBファイル名を特定し(ステップS4304)、DBファイル名リストを作成する(ステップS4305)。
【0093】
なお、DBファイル名リストの構成については、別途、図12を参照して説明するが、DBファイル名リストには、それぞれのDBファイルのファイル名に対応付けて、“自車位置周辺ビット”、“削除ファイルサイズ”、“削除状態”、“コピー状態”の各情報が格納される。ここで、“自車位置周辺ビット”に“1”をセットするDBファイルは、実は、キャッシュ地図109にキャッシュされているDBファイルである。従って、ナビアプリ整合性管理テーブル103において自車位置決定アプリなどに対応付けられてリストされているDBファイルの名称に基づき、DBファイル名リストにおける“自車位置周辺ビット”を“1”または“0”にセットしてもよい。
【0094】
次に、CPUは、Lv5_6に該当するDBファイルを地図データベースから切り離し(ステップS4306)、さらに、自車位置周辺に該当しないLv4−1のDBファイルを地図データベースから切り離す(ステップS4307)。なお、このとき、自車位置周辺に該当するLv4−1のDBファイルは、キャッシュ地図109上に残った状態にあり、これらのDBファイルを、以下、「旧自車位置周辺DBファイル」という。
【0095】
次に、CPUは、地図データベースを格納するハードディスク装置(以下、単に、「HDD」という)の空き容量を確認する(ステップS4308)。ここまでの処理は、DBファイル更新処理の前処理であり、ステップS4308でHDDの空き容量がDBファイルの更新に充分な量であることが確認された場合には、以下のようにして更新処理そのものを実行する。
【0096】
CPUは、まず、DBファイル名リストを参照して、削除状態が“未削除”のファイルを1つずつ選択して削除し、DBファイル名リスト上において、その削除したDBファイルの削除状態を“削除済み”に変更する(ステップS4309)。
【0097】
次に、CPUは、DBファイル名リストを参照して、自車位置周辺に該当するDBファイルを、地図メディア5からHDD(キャッシュ地図109)へリネームしてコピーする(ステップS4310)。なお、このステップにおいて、リネームしてコピーしたDBファイルを、以下、「新自車位置周辺リネームDBファイル」という。
【0098】
次に、CPUは、DBファイル名リストを参照して、自車位置周辺に該当しないDBファイルで、そのコピー状態が“未コピー”のDBファイルを選択してコピーし、DBファイル名リスト上において、そのコピーしたDBファイルのコピー状態を“コピー済”に変更する(ステップS4311)。
【0099】
次に、CPUは、旧自車位置周辺DBファイルを削除し(ステップS4312)、新自車位置周辺リネームDBファイルの名称を対応する旧自車位置周辺DBファイルと同じ名称に再リネームする(ステップS4313)。
【0100】
以上により、地図データベースを構成するDBファイルの更新が完了したことになる。
【0101】
図12は、DBファイル名リストの構成の例を示した図である。図12に示すように、DBファイル名リスト1402には、地図データベースを構成するDBファイルそれぞれについて、“ファイル名”、“自車位置周辺ビット”、“削除ファイルサイズ”、“削除状態”、“コピー状態”の各情報が格納される。従って、このDBファイル名リスト1402を用いることによって、地図データベースを構成するDBファイルの更新状況を管理することができる。
【0102】
ちなみに、図12(a)は、ステップS4305(図11参照)が実行された直後のDBファイル名リスト1402に格納されたデータの例を示しており、ここでは、ステップS4304の処理結果を反映し、自車位置周辺に該当するDBファイルについては、その“自車位置周辺ビット”が“1”に設定されている。
【0103】
また、図12の(b)および(c)は、それぞれ、ステップS4309およびステップS4311の処理実行中に、DBファイル名リスト1402に格納されているデータの例を示している。図12(b)では、削除されたDBファイルについては、削除状態が“未削除”から“削除済”に変更されている。また、図12(c)では、コピーされたDBファイルについては、コピー状態が“未コピー”から“コピー済”に変更されている。
【0104】
なお、図12において、ファイル名は、パーセルIDおよび地図表示レベルを示す値を所定のルールで符号化して生成した文字列である。
【0105】
図13は、カーナビ装置1の地図更新処理における差分更新処理の処理フローの例を示した図である。
【0106】
カーナビ装置1のCPUは、まず、差分更新処理対象の差分データから、そのとき誘導案内処理で利用中の誘導経路のノードデータに紐付けられた差分データを抽出する(ステップS4701)。すなわち、CPUは、誘導経路のノードデータに紐付けられた差分データを抽出することにより、誘導経路データを更新するための判断処理を実行できるようになる。次に、CPUは、車速取得部112を介して、自車の車速を取得する(ステップS4702)。なお、車速を取得するときには、例えば、1秒間隔で車速を取得し、その前10秒分、すなわち、10個の車速により移動平均をとった値を、そのときの車速とする。
【0107】
次に、CPUは、道路データの差分更新時間を計算し(ステップS4703)、さらに、誘導データの差分更新時間を計算する(ステップS4704)。この場合、その差分更新時間は、道路データまたは誘導データの差分データのサイズ、地図データベースを操作する命令(追加、削除、更新など)の単位データサイズについての処理完了時間などに基づき計算する。ちなみに、追加、削除、更新の単位データサイズについての処理完了時間は、それぞれ、0.1ms/byte,0.5ms/byte,0.2ms/byte程度である。
【0108】
なお、差分更新処理を通信または放送による差分データの配信を受けながら実行する場合には、その通信や放送による伝送時間も考慮する。その場合、伝送時間は、“差分データサイズ”ד伝送レート”により算出される。
【0109】
次に、CPUは、道路データの差分更新時間と自車の更新箇所への到達時間とを比較し、道路データの差分更新時間が更新箇所への到達時間より小さい場合には(ステップS4705でYes)、道路データの差分更新を実施し(ステップS4706)、道路データの差分更新時間が更新箇所への到達時間より小さくない場合には(ステップS4705でNo)、道路データの差分更新を実施しない。
【0110】
次に、CPUは、誘導の差分データが1km先の交差点案内音声であった場合には(ステップS4707でYes)、車速および自車位置を取得する(S4708)。さらに、CPUは、誘導データの差分更新時間が、自車位置から更新箇所間までの距離から1000mを引いた距離を車速で割った値より小さいか否かを判定し、小さかった場合には(ステップS4709でYes)、1km先の交差点案内音声の誘導データの差分更新を実施する(ステップS4710)。
【0111】
一方、誘導データの差分更新時間が、自車位置から更新箇所間までの距離から1kmを引いた距離を車速で割った値より小さくなかった場合には(ステップS4709でNo)、その1km先の交差点案内音声の誘導データの更新が間に合わないと判断し、HDD地図110の管理情報の更新可否フラグに“不可”をセットする(ステップS4711)。なお、HDD地図110の管理情報については、別途、図17を参照して説明する。
【0112】
また、誘導の差分データが、1km先の交差点案内音声でなく(ステップS4707でNo)、300m先の交差点案内音声であった場合には(ステップS4712でYes)、車速および自車位置を取得する(ステップS4713)。さらに、CPUは、誘導データの差分更新時間が、自車位置から更新箇所間までの距離から300mを引いた距離を車速で割った値より小さいか否かを判定し、小さかった場合には(ステップS4714でYes)、300m先の交差点案内音声の誘導データの差分更新を実施する(ステップS4715)。
【0113】
一方、誘導データの差分更新時間が、自車位置から更新箇所間までの距離から300mを引いた距離を車速で割った値より小さくなかった場合には(ステップS4714でNo)、その300m先の交差点案内音声の誘導データの更新が間に合わないと判断し、HDD地図110の管理情報の更新可否フラグに“不可”をセットする(ステップS4716)。
【0114】
また、誘導の差分データが、300m先の交差点案内音声でなく(ステップS4712でNo)、50m先の交差点案内音声であった場合には(ステップS4717でYes)、車速および自車位置を取得する(ステップS4718)。さらに、CPUは、誘導データの差分更新時間が、自車位置から更新箇所間までの距離から50mを引いた距離を車速で割った値より小さいか否かを判定し、小さかった場合には(ステップS4719でYes)、50m先の交差点案内音声の誘導データの差分更新を実施する(ステップS4720)。
【0115】
一方、誘導データの差分更新時間が、自車位置から更新箇所間までの距離から50mを引いた距離を車速で割った値より小さくなかった場合には(ステップS4719でNo)、その50m先の交差点案内音声の誘導データの更新が間に合わないと判断し、HDD地図110の管理情報の更新可否フラグに“不可”をセットする(ステップS4721)。
【0116】
以上、ステップS4707からステップS4721までのリアルタイム性が要求される誘導案内処理部分では、CPUは、誘導の差分データの更新が間に合うデータを優先して更新する。また、差分データの更新ができなかった場合には、更新できなかったことを更新可否フラグに保持するようにしたため、CPUは、誘導案内補正処理(図10、ステップS59参照)において、HDD地図110の地図データを再検索することなく、その処理を実行することが可能となる。
【0117】
図14は、カーナビ装置1の誘導案内処理における誘導案内補正処理の処理フローの例を示した図である。誘導案内補正処理は、道路データと誘導データとの間に矛盾がある場合に誘導案内を補正するための処理である。
【0118】
カーナビ装置1のCPUは、まず、誘導データ列から自車位置に最も近いイベントを抽出する(ステップS5901)。次に、CPUは、道路リンクが更新されたか否かを判定し、道路リンクが更新されていた場合には(ステップS5902でYes)、HDD地図110の管理情報の更新可否フラグを参照する(ステップS5903)。
【0119】
そして、その道路リンクに紐付けられた誘導データの更新可否フラグおよび道路データの更新可否フラグのうち一方だけが“不可”であった場合には(ステップS5904でYes)、CPUは、該当ノードIDごとにリンク数、リンク間の角度、道路種別などについて、道路データと誘導データとの間の差異を比較する(ステップS5905)。この処理により、一方だけが“不可”であった場合について、道路データと誘導データとの間の許容される差異が優先的に判断されることになるため、CPUは、HDD地図110の地図データを再検索することなく、その判断処理(比較処理:ステップS5905)を実行することが可能となる。
【0120】
そして、その比較処理により、差異があった場合には(ステップS5906でYes)、CPUは、HDD地図110の管理情報において、当該誘導データの不一致フラグをセットする(ステップS5907)。このステップにおいて、誘導データの不一致フラグをセットしておくことにより、CPUは、リアルタイムの応答が要求されるユーザへの通知処理(図10、ステップS60参照)を、HDD地図110の地図データを再検索することなく、即座に実行することが可能となる。
【0121】
一方、ステップS5902の判定で道路リンクが更新されていなかった場合(ステップS5902でNo)、ステップS5904の判定で道路リンクに紐付けられた誘導データの更新可否フラグおよび道路データの更新可否フラグの両方がそろって“可”または“不可”であった場合(ステップS5904でNo)、および、ステップS5905の比較で差異がなかった場合(ステップS5906でNo)には、誘導案内の補正処理を行わない。
【0122】
図15は、ナビアプリ整合性管理テーブル103の構成の例を示した図である。図15に示すように、ナビアプリ整合性管理テーブル103は、アプリ名称、パーセル数、パーセルIDリスト、更新済フラグの各データによって構成される。
【0123】
ここで、アプリ名称は、カーナビ装置1で動作するナビアプリの名称、パーセル数は、当該ナビアプリが正常動作をする上で必要なパーセル数、パーセルIDリストは、当該ナビアプリが正常動作をする上で必要なパーセルのパーセルIDのリストである。なお、前記したように、このパーセルIDリストによって指定されるパーセルの地図データは、キャッシュ地図109に格納される。ナビアプリ整合性管理テーブル103の更新および参照は、前記の通りキャッシュ地図更新部107、キャッシュ地図エリア特定部108により実行される。
【0124】
更新済フラグは、パーセルIDリストによって指定されるすべてのパーセル(DBファイル)の地図データの更新が終了したか否かを表す。すなわち、あるナビアプリに対応付けられた更新済フラグが、“済”である場合には、そのナビアプリの動作は保証される。一方、更新済フラグが、“未済”である場合には、そのナビアプリは、更新前のパーセルの地図データを使用して動作させる必要がある。
【0125】
また、ナビアプリ整合性管理テーブル103の中のパーセルIDリストは、自車位置の移動に伴って、適宜、書き換えられる。また、経路誘導アプリに対するパーセル数は、誘導経路を含む周辺のパーセルの数であって、誘導経路が探索されたとき、または、自車位置の移動に伴って、適宜、書き換えられる。
【0126】
このナビアプリ整合性管理テーブル103を備えることで、ナビアプリごとに、そのナビアプリの正常な動作に必要な地図データが格納されたパーセル(DBファイル)の更新完了を検知することができる。従って、各ナビアプリは、すべての地図データの更新終了を待つことなく、自己の動作に必要な地図データの更新完了を検知することができ、その時点で、更新後の地図データの利用が可能となる。すなわち、カーナビ装置1のユーザにとってみれば、更新された新しい地図がより早く利用可能になる。
【0127】
なお、以上の図15の説明において、なお、パーセル数をDBファイル数と言い換え、パーセルIDリストをDBファイルの名称のリストと言い換えてもよい。
【0128】
図16は、カーナビ装置1の主記憶装置30とHDD40との間における関係データベース(RDB:Relational Data Base)の動作を説明するための図である。
【0129】
図16において、HDD40は、RDBが管理する地図データベースにおけるテーブルの名称、テーブルが保持するカラムの名称や型定義を定義するための表定義情報41を備えている。表定義情報41は、電源ON後の初期化処理によりRDBが初期化されると、主記憶装置30上のDBMS(Database Management System)31がロードされるメモリ空間中のメモリプール311上にロードされる。
【0130】
DBMS31は、カーナビアプリから関数コールの形で地図アクセスの要求がくると、その関数コールの内容に応じてSQL文32を生成する。SQLコンパイラ33は、そのSQL文32をすでにメモリプール311上にロードされている表定義情報を用いてSQL文32の解釈を行う。
【0131】
データアクセス34は、SQL文32の解釈の結果としての地図データベースにおける地図データの物理的な配置を解決し、地図データの管理単位であるページと、ページを管理する管理情報と、を特定し、主記憶装置30上のグローバルバッファ312に逐次格納する。
【0132】
以上のように、管理情報42とページとが主記憶装置30にロードされることにより、CPUは、ナビアプリ実行時に、必要な地図データを主記憶装置30から高速に参照することができ、RDBを介して参照するオーバーヘッドや、HDD40からデータをアクセスするオーバーヘッドをなくすことができる。
【0133】
図17は、カーナビ装置1の地図データベースにおける管理情報42のデータ構成の例を示した図である。図17に示すように、管理情報42は、ページサイズ、ページ数、ページ番号リスト、パーセルID、データ種別、更新可否フラグ、不一致フラグなどによって構成される。
【0134】
ここで、ページサイズは1ページのデータ容量、ページ数は当該地図データを保持するのに必要なページの数、ページ番号リストは当該地図データが保持されているページ番号(ページアドレス)のリスト、パーセルIDは当該地図データが属するパーセルのパーセルID、データ種別は当該地図データの種別(道路データ、誘導データ、背景データなど)である。
【0135】
また、更新可否フラグは、差分更新ができたか否かを示すフラグであり、差分更新処理(図13参照)でセットされる。また、不一致フラグは、道路データと誘導データとが一致しているか否かを示すフラグであり、誘導案内補正処理(図14参照)において該当する誘導データにセットされる。
【0136】
図18および図19は、HDD上の地図データが地図メディア上の地図データにより更新される様子を表した第1の例を示した図である。
【0137】
図18において、(a)は、地図更新を開始するときの地図データの状態を示した図であり、符号61はLv5_6の地図、符号62はLv1−4の地図、符号63は自車位置周辺地図、符号64は自車位置を示している。
【0138】
DBファイル更新処理(図11参照)が実行されると、図18(b)に示すように、まず、古いLv5_6の地図61と、自車位置周辺地図63を除いた古いLv1−4の地図62と、が削除される。ここで、自車位置周辺地図63は、キャッシュ地図103(図1参照)に格納されている。
【0139】
次に、図19(c)に示すように、Lv5_6の地図61および自車位置周辺地図63を除いたLv1−4の地図62が、地図メディア5からHDDへ、ファイル名を変えずにそのままコピーされる。また、自車位置周辺地図63については、新しいファイルがリネーム後、キャッシュ地図103にコピーされる。
【0140】
次に、図19(d)に示すように、そのコピーが終了すると、図19(e)に示すように、古い自車位置周辺地図63が削除され、リネーム後コピーされた新しい自車位置周辺地図63が古い自車位置周辺地図63と同じ名称に再リネームされる。以上により、図19(f)において、地図データの更新が完了する。
【0141】
図20および図21は、HDD上の地図データが地図メディア上の地図データにより更新される様子を表した第2の例を示した図である。
【0142】
図20において、(a)は、地図更新を開始するときの地図データの状態を示した図であり、符号71はLv5_6の地図、符号72はLv1−4の地図、符号73は自車位置周辺地図、符号74は自車位置を示している。
【0143】
次に、DBファイル更新処理(図11参照)が実行されると、図20(b)に示すように、HDD上の地図データにおいて、誘導経路75が特定され、さらに、誘導経路周辺地図77が特定される。さらに、図20(c)に示すように、まず、古いLv5_6の地図71と、誘導経路周辺地図77を除いた古いLv1−4の地図72と、が削除される。
【0144】
次に、図21(d)に示すように、Lv5_6の地図71および誘導経路周辺地図77を除いたLv1−4の地図72が、地図メディア5からHDDへ、ファイル名を変えずにそのままコピーされる。また、誘導経路周辺地図77については、新しいファイルがリネーム後、キャッシュ地図103にコピーされる。
【0145】
次に、図21(e)に示すように、そのコピーが終了すると、図21(f)に示すように、古い誘導経路周辺地図77が削除され、リネーム後コピーされた誘導経路周辺地図77が古い誘導経路周辺地図77と同じ名称に再リネームされる。以上により、図21(g)において、地図データの更新が完了する。
【符号の説明】
【0146】
1 カーナビ装置
2 地図配信センタ
4 通信装置
5 地図メディア
21 地図メディア作成装置
22 通信制御装置
23 地図配信ホストコンピュータ
24 データベース管理装置
25 POIデータベース
26 地図データベース
101 ファイル更新部
102 差分更新部
103 ナビアプリ整合性管理テーブル
104 整合性判断部
105 更新方式切替部
106 更新時間計算部
107 キャッシュ地図更新部
108 キャッシュ地図エリア特定部
109 キャッシュ地図
111 不整合補正部
112 車速取得部
113 自車位置決定部
114 目的地設定部
115 経路探索部
116 誘導案内部
117 更新用地図データ入力部
118 表示部
231 地図メディア用地図データ選択部
232 差分抽出部
233 パケット処理部
234 配信処理部
235 地図コンテンツ決定部
236 地図データベース選択部
237 POIデータベース選択部
238 ネットワークI/F部


【特許請求の範囲】
【請求項1】
複数の地域の地図データをそれぞれの地図データファイルとして記憶する地図データ記憶手段と、その地図データを表示する表示手段と、自車位置を取得する位置取得手段と、目的地を設定する目的地設定手段と、を備え、前記地図データ記憶手段を参照して、前記自車位置から前記目的地までの誘導経路を探索し、その探索した誘導経路を前記表示手段に表示するカーナビゲーション装置であって、
前記カーナビゲーション装置の演算処理装置は、
前記地図データ記憶手段に記憶されている複数の地域の地図データファイルから、前記カーナビゲーション装置に含まれているアプリケーションプログラムごとに、そのアプリケーションプログラムの実行に必要な地域の地図データファイルを、前記目的地または前記誘導経路を含む地域およびその周辺地域の地図データファイルとして特定し、
前記地図データ記憶手段に記憶されている前記地図データファイルを更新する場合には、前記特定した地図データファイルについてその更新状況を監視し、
前記監視によって得られる前記特定した地図データファイルの更新状況とその地図データファイルの識別情報とを前記アプリケーションプログラムに対応付けた情報を、前記アプリケーションプログラムの動作の整合性を管理する管理情報として記憶装置に格納し、
前記管理情報にその識別情報が含まれている地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関連させて、その地図データファイルを更新し、前記管理情報にその識別情報が含まれている地図データファイル以外の地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関係なく、その地図データファイルを更新すること
を特徴とするカーナビゲーション装置。
【請求項2】
前記演算処理装置は、
誘導案内のアプリケーションプログラムを実行する場合には、前記管理情報を参照し、そのアプリケーションプログラムに対応付けられた地図データファイルの更新が完了しているか否かを判定し、その更新が完了しているときには、その更新された地図データファイルの地図データを用いて、再経路探索を行い、
前記再経路探索によって得られた新誘導経路と、前記地図データの更新前に得られていた旧誘導経路と、を比較し、新誘導経路のほうが目的地に早く到着すると判定される場合には、前記表示手段には、前記新誘導経路を表示すること
を特徴とする請求項1に記載のカーナビゲーション装置。
【請求項3】
前記演算処理装置は、
前記誘導経路に紐付けられた地図データを更新する場合には、その更新対象の地図データが示す位置へ自車が到達するまでの時間と、その更新対象の地図データを更新する時間と、を予測し、前記更新対象の地図データを更新する時間が、前記更新対象の地図データの示す位置へ自車が到達するまでの時間より小さいときに、前記更新対象の地図データを更新すること
を特徴とする請求項1に記載のカーナビゲーション装置。
【請求項4】
前記演算処理装置は、
前記地図データ記憶手段に記憶されている前記複数の地域についての地図データファイルのうち、前記管理テーブルにその識別情報が格納されている地図データファイルの更新を、それ以外の地図データファイルの更新よりも先に実行すること
を特徴とする請求項1に記載のカーナビゲーション装置。
【請求項5】
複数の地域の地図データをそれぞれの地図データファイルとして記憶する地図データ記憶手段と、その地図データを表示する表示手段と、自車位置を取得する位置取得手段と、目的地を設定する目的地設定手段と、を備え、前記地図データ記憶手段を参照して、前記自車位置から前記目的地までの誘導経路を探索し、その探索した誘導経路を前記表示手段に表示するカーナビゲーション装置のプログラムであって、
前記カーナビゲーション装置の演算処理装置に、
前記地図データ記憶手段に記憶されている複数の地域の地図データファイルから、前記カーナビゲーション装置に含まれているアプリケーションプログラムごとに、そのアプリケーションプログラムの実行に必要な地域の地図データファイルを、前記目的地または前記誘導経路を含む地域およびその周辺地域の地図データファイルとして特定する処理と、
前記地図データ記憶手段に記憶されている前記地図データファイルを更新する場合には、前記特定した地図データファイルについてその更新状況を監視する処理と、
前記監視によって得られる前記特定した地図データファイルの更新状況とその地図データファイルの識別情報とを前記アプリケーションプログラムに対応付けた情報を、前記アプリケーションプログラムの動作の整合性を管理する管理情報として記憶装置に格納する処理と、
前記管理情報にその識別情報が含まれている地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関連させて、その地図データファイルを更新し、前記管理情報にその識別情報が含まれている地図データファイル以外の地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関係なく、その地図データファイルを更新する処理と、
を実行させる
ことを特徴とするプログラム。
【請求項6】
前記演算処理装置に、
誘導案内のアプリケーションプログラムにおいて、前記管理情報を参照し、そのアプリケーションプログラムに対応付けられた地図データファイルの更新が完了しているか否かを判定し、その更新が完了しているときには、その更新された地図データファイルの地図データを用いて、再経路探索を行う処理と、
前記再経路探索によって得られた新誘導経路と、前記地図データの更新前に得られていた旧誘導経路と、を比較し、新誘導経路のほうが目的地に早く到着すると判定される場合には、前記表示手段には、前記新誘導経路を表示する処理と、
を実行させること
を特徴とする請求項5に記載のプログラム。
【請求項7】
前記演算処理装置に、
前記誘導経路に紐付けられた地図データを更新する場合には、その更新対象の地図データが示す位置へ自車が到達するまでの時間と、その更新対象の地図データを更新する時間と、を予測し、前記更新対象の地図データを更新する時間が、前記更新対象の地図データの示す位置へ自車が到達するまでの時間より小さいときに、前記更新対象の地図データを更新する処理を
を実行させること
を特徴とする請求項5に記載のプログラム。
【請求項8】
前記演算処理装置に、
前記地図データ記憶手段に記憶されている前記複数の地域についての地図データファイルのうち、前記管理テーブルにその識別情報が格納されている地図データファイルの更新を、それ以外の地図データファイルの更新よりも先に実行させること
を特徴とする請求項5に記載のプログラム。
【請求項9】
複数の地域の地図データをそれぞれの地図データファイルとして記憶する地図データ記憶手段と、その地図データを表示する表示手段と、自車位置を取得する位置取得手段と、目的地を設定する目的地設定手段と、を備え、前記地図データ記憶手段を参照して、前記自車位置から前記目的地までの誘導経路を探索し、その探索した誘導経路を前記表示手段に表示するカーナビゲーション装置における地図データ更新方法であって、
前記カーナビゲーション装置の演算処理装置は、
前記地図データ記憶手段に記憶されている複数の地域の地図データファイルから、前記カーナビゲーション装置に含まれているアプリケーションプログラムごとに、そのアプリケーションプログラムの実行に必要な地域の地図データファイルを、前記目的地または前記誘導経路を含む地域およびその周辺地域の地図データファイルとして特定し、
前記地図データ記憶手段に記憶されている前記地図データファイルを更新する場合には、前記特定した地図データファイルについてその更新状況を監視し、
前記監視によって得られる前記特定した地図データファイルの更新状況とその地図データファイルの識別情報とを前記アプリケーションプログラムに対応付けた情報を、前記アプリケーションプログラムの動作の整合性を管理する管理情報として記憶装置に格納し、
前記管理情報にその識別情報が含まれている地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関連させて、その地図データファイルを更新し、前記管理情報にその識別情報が含まれている地図データファイル以外の地図データファイルを更新する場合には、前記アプリケーションプログラムの実行状況と関係なく、その地図データファイルを更新すること
を特徴とする地図データ更新方法。
【請求項10】
前記演算処理装置は、
前記誘導経路に紐付けられた地図データを更新する場合には、その更新対象の地図データが示す位置へ自車が到達するまでの時間と、その更新対象の地図データを更新する時間と、を予測し、前記更新対象の地図データを更新する時間が、前記更新対象の地図データの示す位置へ自車が到達するまでの時間より小さいときに、前記更新対象の地図データを更新すること
を特徴とする請求項9に記載の地図データ更新方法。
【請求項11】
前記演算処理装置は、
前記地図データ記憶手段に記憶されている前記複数の地域についての地図データファイルのうち、前記管理テーブルにその識別情報が格納されている地図データファイルの更新を、それ以外の地図データファイルの更新よりも先に実行すること
を特徴とする請求項9に記載の地図データ更新方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2011−7656(P2011−7656A)
【公開日】平成23年1月13日(2011.1.13)
【国際特許分類】
【出願番号】特願2009−151997(P2009−151997)
【出願日】平成21年6月26日(2009.6.26)
【出願人】(000001487)クラリオン株式会社 (1,722)
【Fターム(参考)】