以下、本発明の実施の形態について図面を用いて説明する。
最初に第1実施形態が適用された車載用ナビゲーション装置の概略構成について図1を用いて説明する。
図1は、本発明の実施形態が適用された車載用ナビゲーション装置(以下、単に「ナビゲーション装置」という)の概略構成図である。
図示するように、ナビゲーション装置は、演算処理部1と、ディスプレイ2と、地図データ等が記憶された記憶装置3と、音声入出力装置4と、入力装置5と、車速センサ6と、ジャイロ7と、GPS(Global Positioning System)受信装置8とを有する。
演算処理部1は、ナビゲーション装置が利用者に提供する各種情報を処理するための中心的ユニットである。例えば、各種センサ6〜7やGPS受信装置8から出力される情報を基にして現在位置を算出する。演算処理部1は、算出した現在位置の周辺の地図データを記憶装置3から読み出して、その読み出した地図データをグラフィックス展開し、そこに現在位置を示すカーマーク200を重ねてディスプレイ2に表示する。
ディスプレイ2は、演算処理部1で生成された画像データを表示するユニットで、CRTや液晶ディスプレイ等により構成される。また、演算処理部1とディスプレイ2との間の信号S1は、RGB信号やNTSC(National TV Standards Committee)信号で接続するのが一般的である。
記憶装置3は、地図データ310(図2参照)等を記憶するユニットである。なお、記憶装置3には、例えば、DVD装置やハードディスク装置を用いることができる。
ここで地図データの構成を説明する。
図2は、記憶装置3に記憶されている地図データのデータ構造を模擬的に示した図である。
図示するように、地図データ310は、地図を複数に分割することで得られるメッシュ領域毎に分類されている。地図データ310は、メッシュ領域を識別するためのメッシュID311、および、そのメッシュ領域に含まれる道路を構成する各リンクのリンクデータ312を有する。
リンクデータ312は、リンクを識別するためのリンクID3121、リンクを構成する2つのノード(開始ノード、終了ノード)の座標情報3122、リンクが属する道路が「有料道路」であるか「一般道路」であるかを示す道路種別3123、リンクの長さを示すリンク長情報3124、リンクの旅行時間(或いは移動時間)情報3125、および2つのノード(開始ノード、終了ノード)にそれぞれ接続するリンクのリンクID(接続リンクID)3126などを有する。また、記憶装置3には、座標情報からその座標情報により特定される地点を含むメッシュのメッシュIDを特定するためのテーブルが記憶されている。
図1に戻り、説明を続ける。音声入出力装置4は、演算処理部1で生成した利用者へのメッセージを音声信号に変換して出力すると共に、利用者が発した声を認識し、認識した内容を演算処理部1に転送する。
入力装置5は、ナビゲーション装置の各種機能選択、目的地設定等の利用者からの指示を受け付けるユニットで、スクロールキー、縮尺変更キーなどのハードスイッチ、ジョイステック、ディスプレイ2上に貼られたタッチパネルなどで構成される。
センサ6〜7およびGPS受信装置8は、ナビゲーション装置が現在位置を算出するために使用するものである。車速センサ6は、車輪の円周と計測される車輪の回転数から距離を測定し、さらに対となる車輪の回転数から移動体が曲がった角度を計測する。ジャイロ7は、光ファイバジャイロや振動ジャイロで構成され、車両(移動体)が回転した角度を検出する。GPS受信装置8は、GPS衛星からの信号(GPS信号)を受信し移動体とGSP衛星間の距離および距離の変化率を3個以上の衛星に対して測定することで移動体の現在位置、進行方向および進行方位を測定する。
続いて、上述したナビゲーション装置の演算処理部1が有する特徴的な機能について図3を用いて説明する。
図3は、本実施形態の演算処理部1の機能ブロック図である。
図示するように、演算処理部1は、UI(User Interface)制御部100、現在位置算出部110、現在位置表示処理部120、データ記憶部130、およびマップマッチング処理部140を有する。
UI制御部100は、入力装置5或いは音声入出力装置4に入力された利用者からの要求を受け付け、その要求された内容に対応する処理が実行されるように演算処理部1を制御する。また、UI制御部100は、各種操作を誘導するための画像データを生成して、ディスプレイ2に表示する。また、UI制御部100は、現在位置表示処理部120が生成する、地図上に現在位置を示した画像データをディスプレイに表示する。
現在位置算出部110は、車速センサ6で計測される距離パルスデータS5およびジャイロセンサ7で計測される角速度データS7を各々積分した結果得られる距離データおよび角度データを用いて、そのデータを時間軸で積分していくことにより、初期値(X,Y)から自車走行後の位置である現在位置(X´,Y´)を定期的に(所定走行間隔毎に)演算する。そして、現在位置算出部110は、上記の算出した現在位置を現在位置表示処理部120に出力する。
また、現在位置算出部110は、車速センサ6のデータS5およびジャイロ8のデータS6を各々積分していくと、誤差が蓄積するため、ある時間でGPS受信装置8から得られた位置データS7をもとに蓄積した誤差をキャンセルする処理を施し、現在位置を求める。
現在位置表示処理部120は、ディスプレイ2に表示が要求される領域にある地図データ310を記憶装置3から読み出す。また、現在位置表示処理部120は、現在位置算出部110から定期的に現在位置を示す情報(現在位置情報)を受信する。そして、現在位置表示処理部120は、読み出した「地図データ」と、受信した「現在位置情報」を用いて、地図上に、現在位置を示すカーマーク200(図1参照)を表した画像データを生成する。現在位置表示処理部120は、生成した画像データをUI制御部100に出力する。UI制御部100は、現在位置表示処理部120が生成した画像データをディスプレイ2に表示する。
また、現在位置表示処理部120は、マップマッチング処理部140の動作を制御する。具体的には、現在位置表示処理部120は、定期的に受け取る「現在位置情報」を所定の受け取り回数毎にマップマッチング処理部140に出力し、現在位置情報の補正を要求する(例えば、現在位置表示処理部120は、「現在位置情報」を10回受け取ると、そのうちの1回、マップマッチング処理部140に現在位置の位置補正を行わせる)。そして、現在位置表示処理部120は、上記の要求に応答して返信される、マップマッチング処理部140からの現在位置情報を補正したデータ(補正データ)を受け取る。或いは、現在位置表示処理部120は、マップマッチング処理部140からの「現在位置をマッチングできる道路がない旨(後述する)」の通知を受け取る。
現在位置表示処理部120は、補正データを受け取った場合、補正データを利用して、地図上に現在位置(補正された現在位置)を示すカーマーク200を表した画像データを生成し、UI制御部110を介して、画像データをディスプレイ2に表示する。一方、現在位置表示処理部120は、「現在位置をマッチングできる道路がない旨(後述する)」の通知を受け付けると、現在位置算出部110が求めた現在位置を利用して、地図上に現在位置を示すカーマークを表示した画像データを生成し、UI制御部110を介して、画像データをディスプレイ2に表示する(この場合、カーマーク200は、地図上の道路上に表示されない)。
さらに、現在位置表示処理部120は、車両が駐車場に入庫しているか否かの判定を行う。現在位置表示処理部120は、車両が駐車場に入庫したと判定した場合、後述する車両の走行軌跡を利用して、車両が駐車場から退出(出庫)したか否かを判定する。また、現在位置表示処理部120は、車両が駐車場に入庫したと判定すると、車両が駐車場から出庫したと判定されるまで、マップマッチング処理部140の機能を利用しないで、現在位置算出部110が算出した現在位置を利用して、地図上にカーマークを表示する。なお、車両の駐車場への入庫および出庫を判定する処理については、後述する図5で詳細に説明する。
データ記憶部130は、現在位置表示処理部120から、車両の走行軌跡を示すデータを受け取り記憶する。また、データ記憶部130は、現在位置表示120から、車両の高度変化に関する情報(後段で説明する)を受け取り記憶する。
マップマッチング処理部140は、現在位置表示処理部120からの現在位置の補正要求を受け付ける。マップマッチング処理部140は、記憶装置3から読み出した「地図データ」を利用して、現在位置表示処理部120からの「現在位置情報」が示す現在位置を、地図上の道路に乗せるための処理を行う。すなわち、マップマッチング処理部140は、現在位置表示処理部120からの「現在位置情報」が示す位置が地図上の道路に乗るように補正する。そして、マップマッチング処理部140は、現在位置情報を補正した補正データを現在位置表示処理部120に出力する。
ここで、マップマッチング処理において、現在位置算出部110が求めた現在位置の周辺にマッチングできる道路がないことがある。このような場合、マップマッチング処理部140は、現在位置をマッチングできる道路がない旨を現在位置表示処理部120に通知する。
なお、マップマッチング処理部140が行う、現在位置を補正する方法は、既存のマップマッチング処理の手法を用いるものとする。例えば、マップマッチング処理部140は、現在位置が地図上の道路にない場合(この状態を「フリー状態」という)、現在位置から所定距離範囲に存在する地図上の道路を抽出する。マップマッチング処理部140は、現在位置から抽出した各道路に垂線を下ろし、その垂線の距離が所定距離以下の道路を求めて、垂線の距離が所定以下の道路の中で、その距離が一番短い道路上の位置に、現在位置がくるように補正する。なお、現在位置から所定範囲内に存在する地図上の道路が無い場合や、上記の垂線の距離が所定距離以下の道路がなければ、マップマッチング処理部140は、現在位置をマッチングできる道路がない旨を現在位置表示処理部120に通知する。
続いて、本実施形態の演算処理部1のハードウェア構成を説明する。
図4は、演算処理部1のハードウェア構成図である。
図示するように、演算処理部1は、CPU(中央演算処理装置)21と、CPU21が実行するプログラムや各種データを一時的に記憶するRAM(Random Access Memory)22と、上記の各部(UI制御部100、現在位置算出部110、現在位置表示処理部120、およびマップマッチング処理部140が有する機能を実行するためのプログラムが予め記憶されているROM(Read Only Memory)23と、メモリ間およびメモリと各デバイスとの間のデータを転送するDMA(Direct Memory Access)24と、グラフィック描画を実行し且つ表示制御を行う描画コントローラ25と、グラフィックスイメージデータを蓄えるVRAM(Video Random Access Memory)26と、イメージデータをRGB信号に変換するカラーパレット27と、アナログ信号をデジタル信号に変換するA/D変換器28と、シリアル信号をバスに同期したパラレル信号に変換するSCI(Serial Communication Interface)29と、パラレル信号をバスに同期させてバス上に載せるPIO(Parallel Input/Output)30と、パルス信号を積分するカウンタ31と、電源がOFFされても記憶内容を保持する不揮発性メモリ32とを有する。
そして、UI制御部100、現在位置算出部110、現在位置表示処理部120、およびマップマッチング処理部140の機能は、CPU21が、ROM23に記憶されている上記の各部の機能を実行するためのプログラムをRAM22にロードして実行することにより実現される。また、データ記憶部130の機能は、不揮発性メモリ32により実現される。
続いて、本実施形態のナビゲーション装置が行う、車両の駐車場への入庫および出庫を判定する処理について、図5〜6を用いて説明する。
図5は、本実施形態のナビゲーション装置が行う、車両の駐車場への入庫および出庫を判定する処理のフローチャートである。なお、以下のフローは、駐車場が立体駐車場の場合、或いは、地下駐車場(地下立体駐車場)の場合を例にして説明する。
先ず、現在位置表示処理部120は、現在位置算出部110が求めた現在位置がフリー状態であるか否かを判定する(S10)。そして、現在位置表示処理部120は、現在位置がフリー状態である場合にはS11〜12に進む。
一方、現在位置表示処理部120は、現在位置がフリー状態でなければ、本フローの処理を終了し、既存技術を利用した「通常の現在位置表示処理」を行う。ここで、「通常の現在位置表示処理」とは、現在位置算出部110が定期的に算出する現在位置を利用して、地図上に現在位置を示した画像データをディスプレイ2に表示するとともに、所定のタイミングでマップマッチング処理を行い、現在位置を補正した上で地図上に表示する処理をいう。なお、「フリー状態」とは、現在位置算出部110が求めた現在位置が地図上の道路上の位置にない場合をいう。
S11では、現在位置表示処理部120は、走行軌跡の保存を開始する。すなわち、現在位置表示処理部120は、現在位置算出部110から定期的に取得する現在位置情報を利用して車両の走行軌跡を求め、その求めた走行軌跡を記憶部130保存する。なお、データ記憶部130は、上述したように、電源がOFFされてもデータ記憶内容を保持する不揮発性メモリ32(図4参照)の所定領域に形成されているものとする。
S12では、現在位置表示処理部120は、車両内に設けられた高度センサ(図示しない)から高度を示す情報(高度情報)を定期的に取得し、その取得した高度情報を用いて高度変化を求めて、求めた高度変化をデータ記憶部130に保存していく。すなわち、現在位置表示処理部120は、高度変化を求める毎に、データ記憶部130の高度変化を保存していく。
なお、S11およびS12の順番は、反対でもかまわない。すなわち、S12の処理の後、S11を行ってもよい。
つぎに、現在位置表示処理部120は、現在位置が地図上の道路上にマッチング状態にあるか否かを判定し、マッチング状態でなければS14に進み、マッチング状態であればS30に進む(S13)。
具体的には、現在位置表示処理部120は、定期的に受け取る「現在位置情報」を所定の受け取り回数毎にマップマッチング処理部140に出力し、マップマッチング処理を要求する。現在位置表示処理部120は、上記要求に応答して、マップマッチング処理部140からのデータを受け付ける。現在位置表示処理部120は、受け付けたデータが「補正データ(マップマッチング処理により補正されたデータ)」であれば、マッチング状態にあると判定して、S30の処理に進む。一方、現在位置表示処理部120は、受け付けたデータが「マッチングできる道路がない旨を示すデータ」の場合、マッチング状態ではないと判定してS14に進む。
S30では、現在位置表示処理部120は、保存している走行軌跡を初期化して(記憶部130上の走行軌跡を消去して)、S31に進む。
S31では、現在位置表示処理部120は、保存している高度変化を初期化する(記憶部130の高度変化を消去する)。その後、現在位置表示処理部120は、本フローの処理を終了し、既存技術による「通常の現在位置表示処理」を行う。なお、S30およびS31の順番は、反対でもかまわない。
続いて、S13において、マッチング状態ではないと判定された場合に進むS14以降の処理について説明する。
S14では、現在位置表示処理部120は、車両が駐車場に入庫したか否かを判定する。現在位置表示処理部120は、車両が駐車場に入庫したと判定した場合にS15に進み、駐車場に入庫していないと判定した場合にS11の処理に戻る。
本実施形態のナビゲーション装置は、本ステップ(S14)において、車両が駐車場に入庫したと判定した場合、その後、S22で駐車場から車両が出庫したと判定されるまで、マップマッチング処理を行わない。すなわち、S15〜S22までの間において、現在位置表示処理部120は、マップマッチング処理部140の機能を利用せずに、現在位置算出部110が算出した現在位置情報を利用して、地図上に現在位置を表示する。
本実施形態では、車両が駐車場に入庫したか否かを判定する手段について特に限定しない。例えば、現在位置表示処理部120は、車両が駐車場に入庫したか否かについて、GPS受信装置8のGPS信号の受信状態により判定するようにしてもよい。すなわち、現在位置表示処理部120は、本ステップ(S14)まで進んだ場合において、GPS受信装置8がGPS信号を受信できていない状態であれば、車両が駐車場に入庫したと判定する。一方、現在位置表示処理部120は、GPS受信装置8がGPS信号を受信できていれば、車両が駐車場に入庫していないと判定する。
なお、車両が駐車場に入庫したか否かについて、GPS信号の受信状態に加えて、さらに、高度センサ(図示しない)から取得した高度情報により判断するようにしてもよい。すなわち、GPS受信装置8がGPS信号を受信できていない状態であり、且つ高度センサからの高度情報により車両の高度が変化していると判定できた場合に、車両が駐車場に入庫したと判断するようにしてもよい。
続いて、駐車場に入庫したと判定された場合に進むS15以降の処理を説明する。
S15〜16では、現在位置表示処理部120は、上述したS11〜12と同様の手順にしたがい、車両の走行軌跡と、高度変化とを保存する。
つぎに、現在位置表示処理部120は、高度変化が逆向きになったか否かを判定し、逆向きになっている場合にS18に進み、逆向きになっていない場合にS15に戻る(S17)。具体的には、現在位置表示処理部120は、S16で求めた高度変化、およびデータ記憶部130に保存している高度変化を用いて、車両の高度変化が反対向きになったか否かを判定する。高度変化が逆向きになる場合とは、例えば、以下のような場合をいう。すなわち、データ記憶部130に、「高度変化」として、i)上昇、ii)上昇、iii)上昇、iv)変化なし、v)変化なしの5つのデータが記憶されているとする。この場合に、S16で求めた「高度変化」が「下降」である場合、高度変化が逆向きになったと判定される。
S18では、現在位置表示処理部120は、走行軌跡の保存を終了する。すなわち、現在位置表示処理部120は、S17で車両の高度変化が反対向きになった場合、車両が駐車場から退出する状態にあると推定し、走行軌跡の保存を中止する。ここで、S17において、車両が駐車場から退出する状態(車両が駐車場の出口に向かっている状態)にあると推定する原理について説明する。
ここでは、1階にある立体駐車場の入口から車両が入庫し、立体駐車場の屋上まで行き車両を止め、その後、屋上から1階にある駐車場の出口を経由して立体駐車場から退出する場合を例に挙げて説明する。この場合、先ず、車両は、立体駐車場の1階にある入口から入庫して、駐車位置の屋上に向けて進んでいく。車両が屋上に到着するまでは、高度変化は上昇する方向である。車両を屋上に駐車した後、駐車場から退出する場合、屋上から下位の階に降りて行き1階にある駐車場の出口から退出する。すなわち、屋上から駐車場の出口に向かう途中で、高度変化が下降する方向に変化する。本実施形態では、この高度変化に着目して、高度変化が反対向きになった場合に、車両が駐車場から退出する状態にあると推定するようにしている。
なお、データ記憶部130は、電源がOFFされても記憶内容を保持する不揮発性メモリ32により構成されている。そのため、ユーザが車両を駐車した後で、ナビゲーション装置の電源をOFFにして車両から降りて、その後、再び、車両に戻り、車を動かすような場合であっても、ナビゲーション装置の電源をONにすれば、駐車場に入庫してから駐車するまでの走行軌跡を利用することができる。
また、地下駐車場の場合も、上記と同様の原理で、車両の高度変化に着目することにより、車両が駐車場から退出する状態にあると判定できる。すなわち、地下駐車場の場合、下降する方向から上昇する方向に高度変化が変わった場合、車両が駐車場から退出する状態にあると推定することができる。
つぎに、S18の処理の後で行われるS19の処理について説明する。
S19では、現在位置表示処理部120は、記憶部130に記憶している走行軌跡から駐車場の領域(エリア)を推定して、S20〜21の処理を行う。具体的には、現在位置表示処理部120は、走行軌跡の形状から、駐車場が存在するエリアを推定し、そのエリアを車両がいる駐車場として設定する。なお、本実施形態では、走行軌跡からエリアを推定する方法について特に限定しない。駐車場のエリアは、少なくとも、走行軌跡が含まれる大きさを推定すればよい。
例えば、図6に示すように、走行軌跡から駐車場のエリアを推定するようにしてもよい。
図6は、本実施形態のナビゲーション装置が行う、車両の走行軌跡を利用して駐車場の領域を推定する処理の一例を説明するための図である。なお、図6では、(a)図に駐車場の領域が円と推定する場合の例を示し、(b)図に駐車場の領域を四角形と推定する場合の例を示している。また、図6では、走行軌跡を点線(510、520)で示し、推定する駐車場のエリアを実線(410、410)で示している。
図6では、走行軌跡のX方向の長さと、Y方向との長さとを求めて、両者の長さの「差」が所定値未満の場合、エリアを円形状として、両者の長さの「差」が所定値以上異なる場合、四角形の形状とする場合の例を示している。なお、図6(a)の例では、X方向の長さと、Y方向との長さとの「差」が所定値未満であるものとする。図6(b)の例では、X方向の長さと、Y方向との長さとの「差」が所定値以上あるものとする。
最初に、図6(a)の例を説明する。先ず、フリー状態の検出点(A1)から、一番離れたX座標を左右それぞれ求め、2つのX座標を利用して、走行軌跡510のX方向の中点および長さを求める。同様に、フリー状態の検出点(A1)から一番離れたY座標を上下それぞれ求め、2つのY座標を利用して、走行軌跡510のY方向の中点および長さを求める。ここでは、X方向の長さとY方向の長さとが略同じであるので(両者の差が所定値未満であるため)、求めた中点を中心にとり、走行軌跡510を含む最小の面積の円を求めて、その求めた円を駐車場のエリアとして推定する。
つぎに、図6(b)の例を説明する。上記同様、フリー状態の検出点(A2)から、一番離れたX座標を左右それぞれ求め、2つのX座標からX方向の中点および長さを求める。同様に、フリー状態の検出点(A2)から一番離れたY座標を上下それぞれ求め、2つのY座標からY座標の中点および長さを求める。ここでは、X方向の長さと、Y方向の長さとの長さが所定値以上あるため、走行軌跡520を含くむ最小の面積の四角形を求める。なお、求める四角形の対角線の交点が、上記の求めた中点になるようにする。そして、求めた四角形をエリアとして推定する。
或いは、図6のように走行軌跡(510、520)が閉ループの経路を形成する場合、走行軌跡の形状をそのまま駐車場のエリアと推定するようにしてもよい。
図5に戻り説明を続ける。S20では、カーマークがS19で設定したエリアから脱出したか否かを判定する(エリアの外側に出たか否かを判定する)。そして、カーマークがエリアから脱出したと判定した場合S22に進み、エリアから脱出していなければS20の処理に戻り、エリアから脱出したと判定するまで、S20〜21の処理を繰返す。
具体的には、現在位置表示処理部120は、現在位置算出部110が現在位置を算出するたびに、S19で設定したエリアの外側に現在位置が出たか否かを判定する。現在位置表示処理部120は、現在位置がエリアの外に出れば、S22の処理に進み、現在位置がエリアから出ていなければS20の処理に戻る。
S22では、現在位置表示処理部120は、車両が駐車場から出庫したと判断する。そして、現在位置表示処理部120は、記憶部120に記憶している走行軌跡および車両の高度変化を初期化して(消去して)、処理を終了する。
その後、現在位置表示処理部120は、「通常の現在位置表示処理」を開始する。すなわち、現在位置表示処理部120は、現在位置算出部110が現在位置を所定回数算出するたびに、マップマッチング処理を行い、現在位置が地図上の道路から外れることを防止する。
このように、本実施形態では、車両が駐車場から出庫したか否かを走行軌跡から推定した駐車場のエリアと、算出した現在位置とを用いて判定するようにしている。したがって、GPS信号の受信状態だけを利用して駐車場から車両が出庫したか否かを判定する場合に比べて、精度高く駐車場からの出庫を判定することができる。
すなわち、本実施形態によれば、GPS衛星からの信号を受信できた場合であっても、現在位置が走行軌跡から推定したエリアから出ない限り、車両が駐車場から出庫したと判断しないようにしている。また、一度、駐車場に入庫したと判断されると、駐車場から出庫したと判断されるまでマップマッチング処理を行なわない。そのため、本実施形態によれば、車両が駐車場を走行している場合に、マップマッチング処理が行われて、実際に走行しているところと異なる位置を現在位置として表示してしまうことを防ぐことができる。すなわち、本実施形態によれば、立体駐車場を車両が走行している場合においても現在位置を正確な位置に表示することができるようになる。
なお、上述したフローでは、高度変化が逆向きになった場合に、車両が駐車場から退出する状態(車両が駐車場の出口に向かっている状態)にあると推定するようにしているが、特にこれに限定するものではない。
高度変化による判断は、あくまでも一例に過ぎない。
例えば、S17において、高度変化を参照するのではなく、車両が所定時間以上停車しているか否かを判定し、所定時間以上停車していれば、車両が駐車したと判断して、S18の処理に進むようにしてもよい。この場合には、例えば、車速センサからの信号と、タイマとを用いて車両が所定時間以上停車しているか否かを判定する。ナビゲーション装置は、車両が所定時間以上停車した場合、車両が駐車されたと判定する。その後、駐車場を出るために車両が動き出した場合、ナビゲーション装置は、S18以降の処理を行い、走行軌跡を利用して車両が駐車場から退出したか否かを判定する。このように構成しておけば、少なくとも、車両が入庫してから駐車するまでの間の走行軌跡をデータ記憶部130に保存することができる。そして、その走行軌跡を利用することで、上記と同様、車両が駐車場から退出したか否かを判定することができる。
また、例えば、S17において、高度変化を参照するのではなく、エンジンが停止されたか否かを判定して、エンジンが停止された場合に、車両が駐車されたものと判定して、S18以降の処理を行うようにしてもよい。或いは、エンジンが停止された後、再び、エンジンがスタートされた場合にS18以降の処理を行うようにしてもよい。または、S17において、高度変化を参照するのではなく、サイドブレーキが引かれたことを検知すると、車両が駐車されたものと判定して、S18以降の処理を行うようにしてもよい。この場合も、少なくとも、車両が入庫してから駐車するまでの間の走行軌跡をデータ記憶部130に保存しておくことができる。
なお、S17において、上述のように、高度変化を参照しない手法(例えば、車両が所定時間以上停車しているか否かにより判定する等)を用いるようにした場合において、さらに、S14で、駐車場に入庫したか否かをGPS信号の受信状態だけで判断するようにすると高度変化を保存する処理が必要なくなる。その結果、図5に示す処理を簡素化することができる。すなわち、図示するS12、16、31の処理を省略できる。なお、この場合には、車両に高度センサを搭載する必要がなくなる。
また、図5のフローでは、走行軌跡から推定したエリアの外側に現在位置が出た場合に、車両が駐車場から脱出したと判定するようにしているが、特にこれに限定するものではない。
例えば、図5に示すように、駐車場と推定したエリアから現在位置が脱出した場合、すぐに駐車場から出庫したと判定しないで、さらに、GPS信号の受信状況に応じて、車両が駐車場から出たか否かを判断するようにしてもよい。具体的には、S21とS22との間にGPS信号の受信状態を参照する処理を入れて、GPS受信装置8がGPS信号を受信できている場合に、S22の処理を行うようにしてもよい。
このようにすることで、図7に示すように、駐車場700の入口701から停車位置Xまで通過した走行軌跡と、別ルートを通過して駐車場700から出庫する場合であっても、誤ったマップマッチング処理により、実際に走行しているところと異なる位置を現在位置として表示してしまうことを防ぐことができる。以下、S21とS22との間にGPS信号の受信状態を参照する処理を入れた場合の例について図5および図7を参照しながら説明する。なお、図7に示す駐車場700は、立体駐車場であり、その屋上に車両を駐車させるものとする。
先ず、図7に示すように、道路601を通行している車両が入口701経由して駐車場700に進入し、破線で示す走行軌跡510を通り、屋上にある駐車位置702まで進み、駐車したとする。このような場合、ナビゲーション装置は、現在位置が地図上の道路601に乗らないフリー状態になると、走行軌跡および高度変化の登録を開始する(図2のS10〜12)。その後、所定のタイミングで行われるマップマッチング処理を行っても、現在位置がマッチング状態にならなければ(S13)、駐車場の入庫判定を行う(S14)。ここでは、車両が駐車場に入庫されたとする。S14で駐車場700への入庫が判定されると、高度変化が逆向きになるまで走行軌跡および高度変化の保存は行われる(S15〜17)。
つぎに、車両が停車位置702から発車して、出口703を経由して駐車場700から脱出して、道路602に出たとする。この場合、ナビゲーション装置は、高度変化が逆向きになるまで走行軌跡および高度変化の保存は行われる(S15〜17)。ここでは、停車位置702から出口703に向かうまでの間の経路で高度変化が逆向きになったものとする。その結果、S17で高度変化が逆向きになったと判定され、走行軌跡の保存を中止して、保存している走行軌跡510を利用して、駐車場のエリア410を推定する(S18〜19)。
その後、ナビゲーション装置は、現在位置算出部110が算出した現在位置がエリア410の外側に出て(S20、21)、且つGPS信号を受信可能になるまでは、駐車場から出庫したと判断しない。すなわち、現在位置がエリア410の外側に出て(S20、21)、且つGPS信号を受信可能になるまでは、駐車場から出庫したと判断しない。
このように、S21とS22との間にGPS信号の受信状態を参照する処理を入れるようにすることにより、走行軌跡510から推定したエリア410から脱出してから(地点411から)出口703に至るまでの経路を走行している間においても、マップマッチング処理が行われることがなくなる。そのため、地点420から出口703を走行している場合に、マップマッチング処理により、道路603上に現在位置を引き込んで表示してしまうことを防ぐことができる。
すなわち、S21とS22との間にGPS信号の受信状態を参照する処理を入れるようにすることにより、駐車場700の入口701から停車位置702まで通過した走行軌跡510と、別ルートを通過して駐車場700から出庫する場合であっても、正確に現在位置を表示することができるようになる。
なお、本発明は、以上で説明した実施形態に限定されるものではなく、本発明の要旨の範囲内において種々の変形が可能である。
例えば、図5に示すS18では、車両の走行軌跡から駐車場のエリアを推定するようにしているが、特にこれに限定するものではない。地図データの中にある、現在位置の周辺の道路(リンク)の形状から駐車場のエリアを推定するようにしてもよい。
或いは、S18において、走行軌跡が十分記録できていれば、その走行軌跡により駐車場のエリアを推定し、記録している走行軌跡が短いような場合(入庫して直ぐに駐車してしまうような場合等)に、車両の現在位置周辺のリンクの形状から駐車場のエリアを推定するようにしてもよい。
また、予め、地図データの中に駐車場に関する情報(地図上での位置、範囲)を含めておいて、S19の処理では、走行軌跡に代えて、地図データの中にある駐車場に関する情報により駐車場のエリアを推定するようにしてもよい。
また、上述した図5のS21では、現在位置がエリアから脱出した場合に、駐車場から出庫したと判定するようにしているが特にこれに限定するものではない。例えば、S21において、現在位置がエリアから所定距離(例えば、10m程度)以上逸脱した場合に、駐車場から出庫したと判定するようにしてもよい。このようにすることで、車両を走行軌跡(閉ループ)の外側に停車するような場合であっても、より正確に駐車場からの出庫を判断することができる。
1…演算処理部、2…ディスプレイ、3…記憶装置、4…音声入出力装置、5…入力装置、6…車速センサ、7…ジャイロ、8…GPS受信装置、21…CPU、22…RAM、23…ROM、24…DMA、25…描画コントローラ、26…VRAM、27…カラーパレット、28…A/D変換器、29…SCI、30…PIO、31…カウンタ、32…不揮発性メモリ、100…UI制御部、110…現在位置算出部、120…現在位置表示処理部、130…データ処理部、140…マップマッチング処理部