説明

測位方法、プログラム及び測位装置

【課題】現実的な移動体の移動を想定した適切な誤差推定を実現する測位方法等を提供す
ること。
【解決手段】慣性航法演算処理により随時求められる相対高度である第1高度変化「Δh
i」と、移動体である自動車の外気圧を検出する気圧センサの検出結果に基づいて算出さ
れる相対高度である第2高度変化「Δhb」との差「δh=Δhi−Δhb」が算出される
。そして、算出された高度変化の差「δh」、慣性航法演算処理により求められる自動車
の直進方向に対する左右方向の速度「vix」、及び、慣性航法演算処理により求められる
自動車の高度方向の速度「viz」に応じた観測値を用いたカルマンフィルタ処理が行われ
て、慣性航法演算処理の演算結果「(pi,vi,Ai)」に含まれる誤差「(δp,δv
,ε)」が推定され、推定された誤差を用いて慣性航法演算処理の演算結果が補正されて
、自動車の現在位置が測位される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体に搭載される測位装置が所定の慣性航法用センサを用いた所定の慣性
航法演算処理を実行して前記移動体の現在位置を測位する測位方法等に関する。
【背景技術】
【0002】
人工衛星を利用した測位システムとしては、GPS(Global Positioning System)が
広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された測位装置に利
用されている。GPSでは、自機の位置を示す3次元の座標値と、時計誤差との4つのパ
ラメータの値を、複数のGPS衛星の位置や各GPS衛星から自機までの擬似距離等の情
報に基づいて求める測位演算を行うことで、自機の現在位置を測位する。
【0003】
しかし、トンネル内や屋内等、GPS衛星信号を受信することができない環境では、G
PSによる測位を行うことができないため、ジャイロセンサや加速度センサ等の慣性航法
用センサを用いた慣性航法演算処理を行って、現在位置を測位する技術が広く用いられて
いる。この技術に関連して、例えば非特許文献1や非特許文献2には、カルマンフィルタ
を用いて、慣性航法演算処理の演算結果を補正する技術が開示されている。
【非特許文献1】S.Godha and M.E.Cannon, “Integration of DGPS with a Low Cost MEMS - Based Inertial Measurement Unit(IMU) for Land Vehicle Navigation Application”, ION(The Institute Of Navigation) GPS -05, September13-16, 2005, Long Beach, CA.
【非特許文献2】S.Godha, M.G.Petovello, and G.Lachapelle, “Performance Analysis of MEMS IMU/HSGPS/MagneticSensor Integrated System in Urban Canyons”, ION(The Institute Of Navigation) GNSS 2005, September13-16, 2005, Long Beach, CA.
【発明の開示】
【発明が解決しようとする課題】
【0004】
非特許文献1や非特許文献2に開示された技術は、測位装置が搭載された移動体の速度
や高度に制約条件を設け、当該制約条件の下で慣性航法演算処理の演算結果に含まれる誤
差を推定して、当該演算結果を補正する技術である。具体的には、非特許文献1では、測
位装置が搭載された移動体の直進方向に対する左右方向及び高さ方向の速度を“0”とす
る速度制約条件が設けられており、非特許文献2では、移動体が一定の高度を走行すると
いう高度制約条件が設けられている。
【0005】
しかし、自動車等の移動体を想定した場合、上述した速度制約条件や高度制約条件が満
たされる状況は稀であると考えられる。すなわち、自動車は左右に転回したり、坂道を走
行したりする場合が多々あるため、直進方向に対する左右方向及び高さ方向の速度を“0
”としたり、走行高度が一定であるとする制約条件は現実的ではない。
【0006】
本発明は、上述した非現実的な制約条件の下での誤差推定ではなく、現実的な移動体の
移動を想定した適切な誤差推定を実現する測位方法等を提供することを目的として為され
たものである。
【課題を解決するための手段】
【0007】
以上の課題を解決するための第1の発明は、移動体に搭載される測位装置が所定の慣性
航法用センサを用いた所定の慣性航法演算処理を実行して前記移動体の現在位置を測位す
る測位方法であって、前記慣性航法演算処理により随時求められる相対高度を第1高度変
化として算出することと、前記移動体の外気圧を検出する気圧センサの検出結果に基づい
て、相対高度を第2高度変化として算出することと、前記第1高度変化と前記第2高度変
化との差を算出することと、前記高度変化の差、前記慣性航法演算処理により求められる
前記移動体の直進方向に対する左右方向の速度、及び、前記慣性航法演算処理により求め
られる前記移動体の高度方向の速度に応じた観測値を用いたカルマンフィルタ処理を行っ
て、前記慣性航法演算処理の演算結果に含まれる誤差を推定することと、前記誤差を用い
て前記慣性航法演算処理の演算結果を補正して、前記移動体の現在位置を測位することと
、を含む測位方法である。
【0008】
また、他の発明として、移動体に搭載され、所定の慣性航法用センサを用いた所定の慣
性航法演算処理を実行して前記移動体の現在位置を測位する測位装置であって、前記慣性
航法演算処理により随時求められる相対高度を第1高度変化として算出する第1高度変化
算出部と、前記移動体の外気圧を検出する気圧センサの検出結果に基づいて、相対高度を
第2高度変化として算出する第2高度変化算出部と、前記第1高度変化と前記第2高度変
化との差を算出する高度変化差算出部と、前記高度変化の差、前記慣性航法演算処理によ
り求められる前記移動体の直進方向に対する左右方向の速度、及び、前記慣性航法演算処
理により求められる前記移動体の高度方向の速度に応じた観測値を用いたカルマンフィル
タ処理を行って、前記慣性航法演算処理の演算結果に含まれる誤差を推定するカルマンフ
ィルタ処理部と、前記誤差を用いて前記慣性航法演算処理の演算結果を補正して、前記移
動体の現在位置を測位する測位部と、を備えた測位装置を構成してもよい。
【0009】
この第1の発明等によれば、慣性航法演算処理により随時求められる相対高度である第
1高度変化と、移動体の外気圧を検出する気圧センサの検出結果に基づいて算出される相
対高度である第2高度変化との差が算出される。そして、算出された高度変化の差、慣性
航法演算処理により求められる移動体の直進方向に対する左右方向の速度、及び、慣性航
法演算処理により求められる高度方向の速度に応じた観測値を用いたカルマンフィルタ処
理が行われて、慣性航法演算処理の演算結果に含まれる誤差が推定され、推定された誤差
を用いて慣性航法演算処理の演算結果が補正されて、移動体の現在位置が測位される。
【0010】
例えば、移動体が直進方向に対する左右方向に回転していることが想定される場合は、
左右方向の速度を観測値として用いず、移動体が高度方向に変位していることが想定され
る場合は、高度方向の速度を観測値として用いずにカルマンフィルタ処理を行うようにす
る。これにより、現実的な移動体の移動を想定した適切な誤差推定を実現することができ
、ひいては、移動体の現在位置をより正確に測位することが可能となる。
【0011】
また、第2の発明として、第1の発明の測位方法であって、前記慣性航法用センサの検
出結果から、前記移動体の直進方向に対する左右方向の回転有無を判定することを更に含
み、前記誤差を推定することは、前記左右方向の回転が無いと判定された場合には、前記
左右方向の速度及び前記高度変化の差それぞれに応じた観測値を少なくとも用いたカルマ
ンフィルタ処理を行い、前記左右方向の回転が有ると判定された場合には、前記左右方向
の速度に応じた観測値を用いずに、前記高度変化の差に応じた観測値を少なくとも用いた
カルマンフィルタ処理を行って、前記慣性航法演算処理の演算結果に含まれる誤差を推定
することである測位方法を構成してもよい。
【0012】
この第2の発明によれば、慣性航法用センサの検出結果から、移動体の直進方向に対す
る左右方向の回転有無が判定される。そして、左右方向の回転が無いと判定された場合に
は、左右方向の速度及び高度変化の差それぞれに応じた観測値を少なくとも用いたカルマ
ンフィルタ処理が行われる。また、左右方向の回転が有ると判定された場合には、左右方
向の速度に応じた観測値を用いずに、高度変化の差に応じた観測値を少なくとも用いたカ
ルマンフィルタ処理が行われて、慣性航法演算処理の演算結果に含まれる誤差が推定され
る。
【0013】
移動体が直進方向に対する左右方向に回転していることが想定される場合に、当該左右
方向の速度が“0”であるとする速度制約条件を用いてカルマンフィルタ処理を行ったの
では、慣性航法演算処理の演算結果に含まれる誤差を適切に推定することができない。し
かし、第2の発明では、移動体の直進方向に対する左右方向の回転が有ると判定された場
合には、左右方向の速度をカルマンフィルタ処理の観測値として用いないこととしている
ため、上述した問題は生じず、慣性航法演算処理の演算結果に含まれる誤差を適切に推定
することができる。
【0014】
また、第3の発明として、第2の発明の測位方法であって、前記慣性航法用センサは角
速度を検出するセンサを有して構成され、前記左右方向の回転有無を判定することは、前
記検出された角速度又は当該角速度の時間微分である角加速度が所定の閾値条件を満たす
か否かによって判定することである測位方法を構成してもよい。
【0015】
この第3の発明によれば、慣性航法用センサにより検出された角速度又は当該角速度の
時間微分である角加速度が所定の閾値条件を満たすか否かによって、左右方向の回転有無
が判定される。
【0016】
また、第4の発明として、第1〜第3の何れかの発明の測位方法であって、前記誤差を
推定することは、前記第2高度変化が無しの場合には、前記高度方向の速度及び前記高度
変化の差それぞれに応じた観測値を少なくとも用いたカルマンフィルタ処理を行い、前記
第2高度変化が有る場合には、前記高度方向の速度に応じた観測値を用いずに、前記高度
変化の差に応じた観測値を少なくとも用いたカルマンフィルタ処理を行って、前記慣性航
法演算処理の演算結果に含まれる誤差を推定することである測位方法を構成してもよい。
【0017】
この第4の発明によれば、第2高度変化が無しの場合には、高度方向の速度及び高度変
化の差それぞれに応じた観測値を少なくとも用いたカルマンフィルタ処理が行われる。一
方、第2高度変化が有る場合には、高度方向の速度に応じた観測値を用いずに、高度変化
の差に応じた観測値を少なくとも用いたカルマンフィルタ処理が行われて、慣性航法演算
処理の演算結果に含まれる誤差が推定される。
【0018】
移動体が高度方向に変位していることが想定される場合に、移動体の高度方向の速度が
“0”であるとする速度制約条件を用いてカルマンフィルタ処理を行ったのでは、慣性航
法演算処理の演算結果に含まれる誤差を適切に推定することができない。しかし、第4の
発明では、気圧センサの検出結果に基づいて算出された移動体の高度変化が有りである場
合は、高度方向の速度に応じた観測値を用いないこととしているため、上述した問題は生
じず、慣性航法演算処理の演算結果に含まれる誤差を適切に推定することができる。
【0019】
また、第5の発明として、第1〜第4の発明の測位方法であって、前記移動体が停止し
たときに、気温を検出する温度センサの検出温度と前記慣性航法用センサの検出結果とを
対応付けて記憶することと、前記記憶された前記温度センサの検出温度と前記慣性航法用
センサの検出結果とから、任意の気温に対する前記慣性航法用センサの検出誤差を補償す
る温度補償モデル式を算出することと、前記温度センサの現在の検出温度に対応する前記
慣性航法用センサの検出誤差の補償値を前記温度補償モデル式から求め、前記慣性航法用
センサの検出結果を補償することと、を更に含む測位方法を構成してもよい。
【0020】
この第5の発明によれば、移動体が停止したときに、気温を検出する温度センサの検出
温度と慣性航法用センサの検出結果とが対応付けて記憶され、記憶された温度センサの検
出温度と慣性航法用センサの検出結果とから、任意の気温に対する慣性航法用センサの検
出誤差を補償する温度補償モデル式が算出される。そして、温度センサの現在の検出温度
に対応する慣性航法用センサの検出誤差の補償値が温度補償モデル式から求められ、慣性
航法用センサの検出結果が補償される。
【0021】
また、第6の発明として、第1〜第5の何れかの発明の測位方法を、移動体に搭載され
る測位装置に内蔵されたコンピュータに実行させるためのプログラムを構成してもよい。
【発明を実施するための最良の形態】
【0022】
以下、図面を参照して、本発明に好適な実施形態の一例を説明する。尚、以下では、測
位装置として、移動体の一種である自動車に搭載されるカーナビゲーション装置を例に挙
げ、測位システムとしてGPSを用いた場合について説明するが、本発明を適用可能な実
施形態がこれらに限定されるわけではない。
【0023】
1.原理
先ず、本実施形態における現在位置の測位の原理について説明する。本実施形態では、
図1に示すように、カーナビゲーション装置1を備えた移動体である自動車の進行方向を
「y軸」(直進方向を正方向)、y軸正方向に向かって左右方向を「x軸」(右方向を正
方向)、y軸に対する高さ方向を「z軸」(上方向を正方向)とする直交3軸の移動体座
標系を定義する。
【0024】
カーナビゲーション装置1は、慣性航法用センサとして、それぞれ3軸の加速度センサ
及びジャイロセンサを備えている。以下実施形態においては、これらのセンサの3軸は、
上述した移動体座標系の3軸にそれぞれ対応するように定められているとする。尚、セン
サの3軸は、必ずしも移動体座標系の3軸に対応させる必要はない。なぜならば、例えば
センサの出力値に対して公知の行列演算を行うことで、移動体座標系の3軸の値に変換(
座標変換)することができるからである。但し、以下の実施形態においては、説明を簡明
化するために、センサが検出する3軸は、移動体座標系の3軸と同じとして説明する。
【0025】
カーナビゲーション装置1は、慣性航法用センサの検出結果に基づいて公知の慣性航法
演算処理を行って、自動車の位置、速度及び姿勢を演算する。そして、カルマンフィルタ
処理(以下、適宜「KF(Kalman Filter)処理」と称す。)を行うことで、慣性航法演
算処理の演算結果に含まれる誤差と、慣性航法用センサのバイアスとを推定し、推定した
誤差を用いて慣性航法演算処理の演算結果を補正するとともに、推定したバイアスを用い
て慣性航法用センサのバイアス補正を行う。
【0026】
カルマンフィルタは、誤差を含む観測値を利用して、時々刻々と変化する状態量を推定
する確率理論に基づく推定方法である。カルマンフィルタでは、状態ベクトルと呼ばれる
ベクトルを用いて推定演算を行う。尚、カルマンフィルタそのものは公知の技術であるた
め、推定演算の詳細については説明を省略する。
【0027】
本実施形態では、次式(1)で表わされる状態ベクトル「X」を用いて推定演算を行う

【数1】

ここで、「δp」は慣性航法演算処理により求められた位置に含まれる誤差、「δv」
は慣性航法演算処理により求められた速度に含まれる誤差、「ε」は慣性航法演算処理に
より求められた姿勢に含まれる誤差、「ba」は加速度センサのバイアス、「bg」はジャ
イロセンサのバイアスをそれぞれ示している。これら5つの成分は、それぞれ3次元のベ
クトルで表わされるため、状態ベクトル「X」は全部で15次元のベクトルとなる。
【0028】
カーナビゲーション装置1は、ジャイロセンサの検出結果に基づいて、自動車のz軸回
りの回転(いわゆるヨー角。)の有無を判定する。また、カーナビゲーション装置1は気
圧センサを備えており、この気圧センサにより検出された自動車の外気圧に基づいて、自
動車の相対高度を第2高度変化として算出する。そして、z軸回りの回転の有無と、第2
高度変化の有無とに応じて、カルマンフィルタに入力する観測値を可変に設定して推定演
算を行い、求められた状態ベクトル「X=(δp,δv,ε,ba,bg)」の各成分を用
いて、慣性航法演算処理の演算結果の補正及び慣性航法用センサのバイアス補正を行う。
以下、その詳細について説明する。
【0029】
1−1.z軸回りの回転が有りで、第2高度変化が有りの場合
図2は、z軸回りの回転が有りで、第2高度変化も有りの場合における誤差推定の流れ
を示す図である。この場合は、カーナビゲーション装置1は、慣性航法用センサであるジ
ャイロセンサ及び加速度センサそれぞれから出力される角速度「ω」及び加速度「a」を
用いて慣性航法演算処理を行い、自動車の位置「pi」、速度「vi」及び姿勢「Ai」を
演算する。
【0030】
また、カーナビゲーション装置1は、慣性航法演算処理において、現在の時刻と1時刻
前(測位演算は所定時間間隔で行っており、各測位タイミングを「時刻」という。「1時
刻前」とは前回の測位タイミングのことである。)との自動車の相対高度を第1高度変化
「Δhi」として算出し、第1高度変化「Δhi」と第2高度変化「Δhb」との差「δh
=Δhi−Δhb」を観測値とする第1KF処理を行って、状態ベクトル「X=(δp,δ
v,ε,ba,bg)」を演算する。
【0031】
そして、慣性航法演算処理の演算結果「(pi,vi,Ai)」に、推定した誤差「(δ
p,δv,ε)」を加算することで、慣性航法演算処理の演算結果を補正する。また、推
定した誤差「(δp,δv,ε)」をフィードバックして次の時刻(次の測位タイミング
)における慣性航法演算処理に反映させるとともに、バイアス「(ba,bg)」を慣性航
法用センサにフィードバックして、慣性航法用センサのバイアス補正を行う。
【0032】
1−2.z軸回りの回転が無しで、第2高度変化が有りの場合
図3は、z軸回りの回転が無しで、第2高度変化が有りの場合における誤差推定の流れ
を示す図である。この場合は、速度制約条件としてx軸方向(自動車の直進方向に対する
左右方向)への速度「vrx」を“0”に設定し(vrx=0)、慣性航法演算処理により求
めたx軸方向への速度「vix」と「vrx=0」との差「δvx=vix−vrx=vix」と、
第1高度変化と第2高度変化との差「δh」とを観測値とする第2KF処理を行って、状
態ベクトル「X=(δp,δv,ε,ba,bg)」を演算する。そして、慣性航法演算処
理の演算結果「(pi,vi,Ai)」の補正及び慣性航法用センサのバイアス補正を行う

【0033】
1−3.z軸回りの回転が有りで、第2高度変化が無しの場合
図4は、z軸回りの回転が有りで、第2高度変化が無しの場合における誤差推定の流れ
を示す図である。この場合は、速度制約条件としてz軸方向(自動車の直進方向に対する
上下方向)への速度「vrz」を“0”に設定し(vrz=0)、慣性航法演算処理により求
めたz軸方向への速度「viz」と「vrz=0」との差「δvz=viz−vrz=viz」と、
第1高度変化と第2高度変化との差「δh」とを観測値とする第3KF処理を行って、状
態ベクトル「X=(δp,δv,ε,ba,bg)」を演算する。そして、慣性航法演算処
理の演算結果「(pi,vi,Ai)」の補正及び慣性航法用センサのバイアス補正を行う

【0034】
1−4.z軸回りの回転が無しで、第2高度変化が無しの場合
図5は、z軸回りの回転が無しで、第2高度変化も無しの場合における誤差推定の流れ
を示す図である。この場合は、速度制約条件として、x軸方向への速度「vrx」と、z軸
方向への速度「vrz」とをそれぞれ“0”に設定し(vrx=vrz=0)、「δvx=vix
−vrx=vix」と、「δvz=viz−vrz=viz」と、「δh」との3つを観測値とする
第4KF処理を行って、状態ベクトル「X=(δp,δv,ε,ba,bg)」を演算する
。そして、慣性航法演算処理の演算結果「(pi,vi,Ai)」の補正及び慣性航法用セ
ンサのバイアス補正を行う。
【0035】
2.機能構成
図6は、本実施形態におけるカーナビゲーション装置1の機能構成を示すブロック図で
ある。カーナビゲーション装置1は、GPSアンテナ10と、GPS受信部20と、ホス
トCPU(Central Processing Unit)30と、操作部40と、表示部50と、加速度セ
ンサ60と、ジャイロセンサ70と、気圧センサ80と、温度センサ90と、ROM(Re
ad Only Memory)100と、RAM(Random Access Memory)110とを備えて構成され
る。
【0036】
GPSアンテナ10は、GPS衛星から発信されているGPS衛星信号を含むRF(Ra
dio Frequency)信号を受信するアンテナであり、受信した信号をGPS受信部20に出
力する。尚、GPS衛星信号は、衛星毎に異なる拡散符号の一種であるPRN(Pseudo R
andom Noise)コードで直接スペクトラム拡散方式により変調された1.57542[G
Hz]の通信信号である。PRNコードは、コード長1023チップを1PNフレームと
する繰返し周期1msの擬似ランダム雑音符号である。
【0037】
GPS受信部20は、GPSアンテナ10から出力された信号に基づいてカーナビゲー
ション装置1の現在位置を測位する測位回路であり、いわゆるGPS受信機に相当する機
能ブロックである。GPS受信部20は、RF(Radio Frequency)受信回路部21と、
ベースバンド処理回路部23とを備えて構成される。尚、RF受信回路部21と、ベース
バンド処理回路部23とは、それぞれ別のLSI(Large Scale Integration)として製
造することも、1チップとして製造することも可能である。
【0038】
RF受信回路部21は、RF信号の処理回路ブロックであり、所定の局部発振信号を分
周或いは逓倍することで、RF信号乗算用の発振信号を生成する。そして、生成した発振
信号を、GPSアンテナ10から出力されたRF信号に乗算することで、RF信号を中間
周波数の信号(以下、「IF(Intermediate Frequency)信号」と称す。)にダウンコン
バートし、IF信号を増幅等した後、A/D変換器でデジタル信号に変換して、ベースバ
ンド処理回路部23に出力する。
【0039】
ベースバンド処理回路部23は、RF受信回路部21から出力されたIF信号に対して
相関処理等を行ってGPS衛星信号を捕捉・抽出し、データを復号して航法メッセージや
時刻情報等を取り出して測位演算を行う回路部である。ベースバンド処理回路部23は、
プロセッサとしてのCPUと、メモリとしてのROM及びRAMを備えて構成される。尚
、測位演算としては、例えば最小二乗法を用いた測位演算等の公知の手法を適用すること
ができる。
【0040】
ホストCPU30は、ROM100に記憶されているシステムプログラム等の各種プロ
グラムに従ってカーナビゲーション装置1の各部を統括的に制御するプロセッサである。
ホストCPU30は、測位プログラム103に従って、ナビゲーション画面に表示させる
位置である出力位置を決定する。そして、ナビゲーションプログラム101に従って、出
力位置をプロットしたナビゲーション画面を生成して、表示部50に表示させる。
【0041】
操作部40は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であ
り、押下されたアイコンやボタンの信号をホストCPU30に出力する。この操作部40
の操作により、目的地の入力や、ナビゲーション画面の表示要求等の各種指示入力がなさ
れる。
【0042】
表示部50は、LCD(Liquid Crystal Display)等により構成され、ホストCPU3
0から入力される表示信号に基づいた各種表示を行う表示装置である。表示部50には、
ナビゲーション画面等が表示される。
【0043】
加速度センサ60は、加速度を検出して自動車の移動状態を検出する3軸のセンサであ
り、検出した3軸の加速度をホストCPU30に出力する。加速度センサ60は、慣性航
法用センサの一種である。
【0044】
ジャイロセンサ70は、角速度を検出して自動車の回転を検出する3軸のセンサ(角速
度センサ)であり、検出した3軸の角速度をホストCPU30に出力する。ジャイロセン
サ70も、慣性航法用センサの一種である。
【0045】
ジャイロセンサ70の出力には、いわゆるゼロ点バイアスが含まれている。ゼロ点バイ
アスは、角速度が無い状態(例えば自動車の完全停止時(静止時))におけるジャイロセ
ンサ70の出力値であり、温度変化によって変動する温度依存性がある。温度「T」にお
けるゼロ点バイアス「BT」は、例えば次式(2)に示すような2次の温度補償モデル式
で表すことができる。
【数2】

但し、「T0」は基準温度、「BT0」は基準温度T0におけるゼロ点バイアス、「k1
は1次の温度係数、「k2」は2次の温度係数をそれぞれ示している。
【0046】
ホストCPU30は、測位処理において、自動車が停止(静止)していると判定した場
合に、フィールドキャリブレーションを行って、上述した2次の温度補償モデル式を算出
する。そして、算出した温度補償モデル式を用いて、ジャイロセンサ70のゼロ点バイア
スの補正を行う。
【0047】
気圧センサ80は、自動車の外気圧を検出するセンサであり、その検出結果をホストC
PU30に出力する。
【0048】
温度センサ90は、外界の気温を検出する接触式又は非接触式のセンサであり、その検
出結果をホストCPU30に出力する。
【0049】
ROM100は、読み出し専用の記憶装置であり、ホストCPU30がカーナビゲーシ
ョン装置1を制御するためのシステムプログラムや、ナビゲーション機能を実現するため
の各種プログラムやデータ等を記憶している。
【0050】
RAM110は、読み書き可能な記憶装置であり、ホストCPU30により実行される
システムプログラム、各種処理プログラム、各種処理の処理中データ、処理結果などを一
時的に記憶するワークエリアを形成している。
【0051】
図7は、ROM100に格納されたデータの一例を示す図である。ROM100には、
ホストCPU30により読み出され、ナビゲーション処理として実行されるナビゲーショ
ンプログラム101と、測位処理(図10及び図11参照)として実行される測位プログ
ラム103と、KF誤差推定処理として実行されるKF誤差推定プログラム105と、ナ
ビゲーション画面を生成するための地図情報のデータである地図データ107とが記憶さ
れている。
【0052】
また、KF誤差推定プログラム105には、第1KF処理、第2KF処理、第3KF処
理及び第4KF処理として実行される第1KF処理プログラム1051、第2KF処理プ
ログラム1052、第3KF処理プログラム1053及び第4KF処理プログラム105
4が、サブルーチンとして含まれている。
【0053】
ナビゲーション処理とは、ホストCPU30が、地図データ107に記憶されている地
図情報を用いて、測位処理により決定した出力位置を道路上に補正するマップマッチング
処理を行うとともに、補正後の位置をプロットしたナビゲーション画面を生成して、表示
部50に表示させる処理である。尚、マップマッチング処理については公知であるため、
詳細な説明を省略する。
【0054】
測位処理とは、ホストCPU30が、慣性航法演算処理を行って、自動車の位置、速度
及び姿勢を演算するとともに、自動車のz軸回りの回転の有無及び第2高度変化の有無に
応じて観測値を可変に設定してKF処理を行うことで、慣性航法演算処理の演算結果に含
まれる誤差を推定する処理である。そして、ホストCPU30は、推定した誤差を用いて
慣性航法演算処理の演算結果を補正する。
【0055】
また、ホストCPU30は、GPS受信部20から測位結果を取得した場合は、当該測
位結果であるGPS測位位置を出力位置に決定し、GPS受信部20から測位結果を取得
しなかった場合は、補正によって得られた慣性航法演算処理の演算結果に含まれる慣性航
法演算位置を出力位置に決定する。測位処理については、フローチャートを用いて詳細に
後述する。
【0056】
KF誤差推定処理とは、ホストCPU30が、高度変化の差「δh」や、x軸及びz軸
に対する速度の差「δvx」及び「δvz」を観測値とするKF処理を行って、慣性航法演
算処理の演算結果に含まれる誤差「(δp,δv,ε)」及び慣性航法用センサのバイア
ス「(ba,bg)」を推定する処理である。
【0057】
図8は、RAM110に格納されるデータの一例を示す図である。RAM110には、
計測履歴データ111と、ゼロ点バイアス参照データ113と、温度補償モデル式データ
115とが記憶される。
【0058】
図9は、計測履歴データ111のデータ構成の一例を示す図である。計測履歴データ1
11には、各時刻1111毎に、加速度センサ60により検出された3軸の加速度111
2と、ジャイロセンサ70により検出された3軸の角速度1113と、気圧センサ80に
より検出された外気圧1114と、温度センサ90により検出された温度1115と、G
PS受信部20により測位されたGPS測位位置1116と、慣性航法演算処理により求
められた慣性航法演算位置1117と、慣性航法演算処理により求められた速度1118
及び姿勢1119とが対応付けて記憶される。計測履歴データ111は、測位処理におい
てホストCPU30により随時更新される。
【0059】
ゼロ点バイアス参照データ113は、自動車の停止時において温度センサ90により検
出された温度と、当該温度におけるゼロ点バイアスとが対応付けて蓄積記憶されたデータ
である。測位処理において、ホストCPU30は、ゼロ点バイアス参照データ113に記
憶されたデータを基に、例えば最小二乗法を用いて1次の温度係数「k1」及び2次の温
度係数「k2」を求めることで、式(2)で表わされる2次の温度補償モデル式を算出す
る。
【0060】
温度補償モデル式データ115は、ホストCPU30により算出された温度補償モデル
式が記憶されたデータである。
【0061】
3.処理の流れ
図10及び図11は、ホストCPU30によりROM100に記憶されている測位プロ
グラム103が読み出されて実行されることで、カーナビゲーション装置1において実行
される測位処理の流れを示すフローチャートである。
【0062】
測位処理は、RF受信回路部21によるGPS衛星信号の受信と併せて、ホストCPU
30が、操作部40に測位開始指示の操作がなされたことを検出した場合に実行を開始す
る処理である。尚、カーナビゲーション装置1の電源のON/OFFとGPSの起動/停
止とを連動させ、カーナビゲーション装置1の電源投入操作を検出した場合に測位処理の
実行を開始させることにしてもよい。
【0063】
また、特に説明しないが、以下の測位処理の実行中は、GPSアンテナ10によるRF
信号の受信や、RF受信回路部21によるIF信号へのダウンコンバート、ベースバンド
処理回路部23によるGPS衛星信号の捕捉・追尾、疑似距離の演算や測位演算等が随時
行われている状態にあるものとする。また、加速度センサ60、ジャイロセンサ70、気
圧センサ80及び温度センサ90の検出結果に従って、ホストCPU30により、RAM
110の計測履歴データ111は随時更新されるものとする。
【0064】
先ず、ホストCPU30は、例えば加速度センサ60の検出結果に基づいて、自動車が
停止しているか否かを判定し(ステップA1)、停止していないと判定した場合は(ステ
ップA1;No)、ステップA13へと処理を移行する。また、停止していると判定した
場合は(ステップA1;Yes)、温度センサ90から現在の温度を取得する(ステップ
A3)。
【0065】
次いで、ホストCPU30は、ジャイロセンサ70からのオリジナルの出力値である原
出力値を取得し(ステップA5)、ステップA3で取得した温度と、ステップA5で取得
した原出力値とを対応付けて、RAM110のゼロ点バイアス参照データ113に蓄積記
憶させる(ステップA7)。
【0066】
その後、ホストCPU30は、ゼロ点バイアス参照データ113に記憶されている複数
の温度及び原出力値のデータを基に、例えば最小二乗法を用いて1次の温度係数「k1
及び2次の温度係数「k2」を求め、式(2)で表わされる2次の温度補償モデル式を算
出する(ステップA9)。そして、算出した温度補償モデル式で、RAM110の温度補
償モデル式データ115を更新する(ステップA11)。
【0067】
次いで、ホストCPU30は、RAM110の温度補償モデル式データ115に記憶さ
れている温度補償モデル式を用いて、温度センサ90により検出された現在の温度におけ
るゼロ点バイアスを算出し、算出したゼロ点バイアスを用いて、ジャイロセンサ70のゼ
ロ点バイアス補正を行う(ステップA13)。
【0068】
その後、ホストCPU30は、1時刻前(前回測位時)のKF誤差推定処理で求められ
た加速度センサ60及びジャイロセンサ70のバイアス「ba」及び「bg」を用いて、慣
性航法用センサのバイアス補正を行う(ステップA15)。
【0069】
次いで、ホストCPU30は、慣性航法用センサの検出結果を用いて公知の慣性航法演
算処理を行って、自動車の位置「pi」、速度「vi」及び姿勢「Ai」を演算するととと
もに、自動車の相対高度を演算して第1高度変化「Δhi」とする(ステップA17)。
【0070】
その後、ホストCPU30は、気圧センサ80の検出結果に基づいて、第2高度変化を
算出する(ステップA19)。具体的には、気圧センサ80により検出された大気圧の変
化量から相対高度を算出して、第2高度変化「Δhb」とする。
【0071】
次いで、ホストCPU30は、ジャイロセンサ60の検出結果に基づいて、z軸回りの
回転が有るか否かを判定する(ステップA21)。具体的には、ジャイロセンサ60によ
り検出されたz軸回りの角速度が所定の閾値以上であるか否かを判定し、閾値以上である
と判定した場合は、z軸回りの回転が有るものと判定する。尚、所定の閾値は、ジャイロ
センサ60の検出誤差等を加味して、自動車がz軸回りに回転していない(左右方向に回
転していない)とみなせる値に予め定められる。
【0072】
そして、z軸回りの回転が有ると判定した場合は(ステップA21;Yes)、ホスト
CPU30は、ステップA25へと処理を移行する。また、z軸回りの回転が無いと判定
した場合は(ステップA21;No)、ステップA17の慣性航法演算処理で求めたx軸
方向への速度「vix」と、速度制約条件として設定したx軸方向への速度「vrx=0」と
の差「δvx=vix−vrx=vix」を、第1観測値として設定する(ステップA23)。
【0073】
その後、ホストCPU30は、第2高度変化が有るか否かを判定し(ステップA25)
、有ると判定した場合は(ステップA25;Yes)、ステップA29へと処理を移行す
る。また、第2高度変化が無いと判定した場合は(ステップA25;No)、ステップA
17の慣性航法演算処理で求めたz軸方向への速度「viz」と、速度制約条件として設定
したz軸方向への速度「vrz=0」との差「δvz=viz−vrz=viz」を、第2観測値
として設定する(ステップA27)。
【0074】
また、ホストCPU30は、ステップA17の慣性航法演算処理で求めた第1高度変化
「Δhi」と、ステップA19で求めた第2高度変化「Δhb」との差「δh=Δhi−Δ
b」を、第3観測値として設定する(ステップA29)。
【0075】
そして、ホストCPU30は、ROM100に記憶されている第1KF処理プログラム
1051〜第4KF処理プログラム1054の中から、設定した観測値に応じたKF処理
プログラムを選択する(ステップA31)。KF処理プログラムの選択は、図2〜図5で
それぞれ説明したKF処理に対応するプログラムを選択することで行う。
【0076】
その後、ホストCPU30は、ステップA31で選択したKF処理プログラムを読み出
して実行することでKF誤差推定処理を行い、慣性航法演算処理の演算結果に含まれる誤
差「(δp,δv,ε)」及び慣性航法用センサのバイアス「(ba,bg)」を推定する
(ステップA33)。そして、推定した誤差を用いて、慣性航法演算処理の演算結果「(
i,vi,Ai)」を補正する(ステップA35)。
【0077】
次いで、ホストCPU30は、GPS受信部20からGPS測位結果を取得したか否か
を判定し(ステップA37)、取得したと判定した場合は(ステップA37;Yes)、
取得したGPS測位位置を出力位置に決定する(ステップA39)。また、GPS測位結
果を取得しなかったと判定した場合は(ステップA37;No)、ステップA35の補正
結果の慣性航法演算位置「pi」を出力位置に決定する(ステップA41)。
【0078】
出力位置を決定した後、ホストCPU30は、操作部40を介してユーザにより測位終
了指示がなされたか否かを判定し(ステップA43)、なされなかったと判定した場合は
(ステップA43;No)、ステップA1に戻る。また、測位終了指示がなされたと判定
した場合は(ステップA43;Yes)、測位処理を終了する。
【0079】
4.作用効果
本実施形態によれば、慣性航法演算処理により随時求められる相対高度である第1高度
変化「Δhi」と、移動体である自動車の外気圧を検出する気圧センサの検出結果に基づ
いて算出される相対高度である第2高度変化「Δhb」との差「δh=Δhi−Δhb」が
算出される。そして、算出された高度変化の差「δh」、慣性航法演算処理により求めら
れる自動車の直進方向に対する左右方向の速度「vix」、及び、慣性航法演算処理により
求められる自動車の高度方向の速度「viz」に応じた観測値を用いたカルマンフィルタ処
理が行われて、慣性航法演算処理の演算結果「(pi,vi,Ai)」に含まれる誤差「(
δp,δv,ε)」が推定され、推定された誤差を用いて慣性航法演算処理の演算結果が
補正されて、自動車の現在位置が測位される。
【0080】
本実施形態では、自動車が直進方向に対する左右方向に回転していることが検出された
場合は、左右方向の速度「vix」を観測値として用いず、自動車が高度方向に変位してい
ることが検出された場合は、高度方向の速度「viz」を観測値として用いずにカルマンフ
ィルタ処理を行うようにしている。これにより、現実的な自動車の移動を想定した適切な
誤差推定を実現することができ、ひいては、自動車の現在位置をより正確に測位すること
が可能となる。
【0081】
5.変形例
5−1.電子機器
本発明は、測位装置を備えた電子機器であれば何れの電子機器にも適用可能である。例
えば、ノート型パソコンやPDA(Personal Digital Assistant)等についても同様に適
用可能である。但し、移動体に設置される際には、移動体に対する電子機器の相対的な姿
勢を固定する必要がある。すなわち、電子機器の慣性航法用センサが検出する座標系と移
動体座標系との相対的関係を常に一定とし、移動体座標系の3軸の値を検出する必要があ
る。換言すれば、移動体座標系の3軸の値を検出できれば、移動体に対する電子機器の相
対的な姿勢は任意である。
【0082】
5−2.移動体
また、移動体は必ずしも自動車に限られるわけではなく、バスや電車、人間等の移動体
についても同様に適用可能である。
【0083】
5−3.衛星測位システム
上述した実施形態では、衛星測位システムとしてGPSを例に挙げて説明したが、WA
AS(Wide Area Augmentation System)、QZSS(Quasi Zenith Satellite System)
、GLONASS(GLObal NAvigation Satellite System)、GALILEO等の他の衛
星測位システムであってもよい。
【0084】
5−4.処理の分化
ホストCPU30が行う処理の一部又は全部を、ベースバンド処理回路部23のCPU
が行うことにしてもよい。具体的には、例えばベースバンド処理回路部のCPUが測位処
理を行う。そして、ホストCPU30が、測位処理により求められた出力位置に対してマ
ップマッチング処理等を行ってナビゲーション画面を生成し、生成したナビゲーション画
面を表示部50に表示させるナビゲーション処理を行うようにする。
【0085】
5−5.上下方向の回転有無の判定
上述した実施形態では、気圧センサ80の検出結果に基づいて算出された第2高度変化
が無しの場合に、z軸方向への速度制約条件を用いてカルマンフィルタ処理を実行するも
のとして説明したが、移動体の直進方向に対する上下方向への回転(x軸回りの回転。い
わゆるピッチ角。)の有無を判定し、回転が無いと判定された場合に限り、z軸方向への
速度制約条件を用いてカルマンフィルタ処理を実行することとしてもよい。
【0086】
具体的には、ジャイロセンサ70により検出されたx軸回りのピッチ角と移動体の初期
水平状態のピッチ角との差分が所定の閾値未満であるか否かを判定し、閾値以上であると
判定した場合は、x軸回りの回転(上下方向への回転)が有るものと判定する。そして、
この場合において、z軸回りの回転(左右方向への回転)も有ると判定した場合は、第1
高度変化と第2高度変化との差「δh=Δhi−Δhb」のみを観測値とする第1KF処理
を行い、z軸回りの回転が無いと判定した場合は、「δh」と、x軸方向に対する速度の
差「δvx=vix−vrx=vix」とを観測値とする第2KF処理を行って、状態ベクトル
「X=(δp,δv,ε,ba,bg)」を演算するようにする。
【0087】
また、x軸回りのピッチ角と移動体の初期水平状態のピッチ角との差分が所定の閾値未
満であると判定した場合は、x軸回りの回転(上限方向への回転)が無いものと判定する
。そして、この場合において、z軸回りの回転(左右方向への回転)が有ると判定した場
合は、「δh」と、z軸方向に対する速度の差「δvz=viz−vrz=viz」とを観測値
とする第3KF処理を行い、z軸回りの回転も無いと判定した場合は、「δh」と、「δ
x」と、「δvz」とを観測値とする第4KF処理を行って、状態ベクトル「X」を演算
するようにする。
【0088】
5−6.回転の検出
また、上述した実施形態では、ジャイロセンサ70により検出された角速度を用いて移
動体の回転の有無を判定するものとして説明したが、角速度を時間微分することで得られ
る角加速度を用いて移動体の回転の有無を判定することとしてもよい。
【0089】
具体的には、各時刻それぞれにおいて、当該時刻にジャイロセンサ70により検出され
た角速度と、1時刻前にジャイロセンサ70により検出された角速度との差分を算出する
。そして、算出した差分が所定の閾値以上である場合は、移動体の回転が有りと判定し、
閾値未満である場合は、移動体の回転が無しと判定する。尚、この場合は、ジャイロセン
サ70の原出力値の差分を算出しているため、ジャイロセンサ70のバイアス補正を行わ
ずとも、回転の有無を適切に判定することができる。
【0090】
5−7.慣性航法用センサのバイアス補正
上述した実施形態では、ジャイロセンサ70のゼロ点バイアスの補正を行う場合を例に
挙げて説明したが、加速度センサ60のゼロ点バイアスについても同様に温度補正するこ
とが可能である。
【0091】
5−8.温度補償モデル式
また、2次の温度補償モデル式を用いて慣性航法用センサのゼロ点バイアスの補正を行
うのではなく、3次以上の温度補償モデル式を用いてゼロ点バイアスの補正を行うことと
してもよい。この場合は、図10の測位処理のステップA9において温度補償モデル式を
算出する際に、例えば最小二乗法を用いて、1次及び2次の温度係数「k1」及び「k2
に加えて、3次以上の温度係数「k3,・・・」も求めるようにすればよい。
【図面の簡単な説明】
【0092】
【図1】移動体座標系の一例を示す図。
【図2】z軸回りの回転有りで、第2高度変化有りの場合の誤差推定の流れを示す図。
【図3】z軸回りの回転無しで、第2高度変化有りの場合の誤差推定の流れを示す図。
【図4】z軸回りの回転有りで、第2高度変化無しの場合の誤差推定の流れを示す図。
【図5】z軸回りの回転無しで、第2高度変化無しの場合の誤差推定の流れを示す図。
【図6】カーナビゲーション装置の機能構成を示すブロック図。
【図7】ROMに格納されたデータの一例を示す図。
【図8】RAMに格納されたデータの一例を示す図。
【図9】計測履歴データのデータ構成の一例を示す図。
【図10】測位処理の流れを示すフローチャート。
【図11】測位処理の流れを示すフローチャート。
【符号の説明】
【0093】
1 カーナビゲーション装置、 10 GPSアンテナ、 20 GPS受信部、
21 RF受信回路部、 23 ベースバンド処理回路部、 30 ホストCPU、
40 操作部、 50 表示部、 60 加速度センサ、 70 ジャイロセンサ、
80 気圧センサ、 90 温度センサ、 100 ROM、 110 RAM

【特許請求の範囲】
【請求項1】
移動体に搭載される測位装置が所定の慣性航法用センサを用いた所定の慣性航法演算処
理を実行して前記移動体の現在位置を測位する測位方法であって、
前記慣性航法演算処理により随時求められる相対高度を第1高度変化として算出するこ
とと、
前記移動体の外気圧を検出する気圧センサの検出結果に基づいて、相対高度を第2高度
変化として算出することと、
前記第1高度変化と前記第2高度変化との差を算出することと、
前記高度変化の差、前記慣性航法演算処理により求められる前記移動体の直進方向に対
する左右方向の速度、及び、前記慣性航法演算処理により求められる前記移動体の高度方
向の速度に応じた観測値を用いたカルマンフィルタ処理を行って、前記慣性航法演算処理
の演算結果に含まれる誤差を推定することと、
前記誤差を用いて前記慣性航法演算処理の演算結果を補正して、前記移動体の現在位置
を測位することと、
を含む測位方法。
【請求項2】
前記慣性航法用センサの検出結果から、前記移動体の直進方向に対する左右方向の回転
有無を判定することを更に含み、
前記誤差を推定することは、前記左右方向の回転が無いと判定された場合には、前記左
右方向の速度及び前記高度変化の差それぞれに応じた観測値を少なくとも用いたカルマン
フィルタ処理を行い、前記左右方向の回転が有ると判定された場合には、前記左右方向の
速度に応じた観測値を用いずに、前記高度変化の差に応じた観測値を少なくとも用いたカ
ルマンフィルタ処理を行って、前記慣性航法演算処理の演算結果に含まれる誤差を推定す
ることである、
請求項1に記載の測位方法。
【請求項3】
前記慣性航法用センサは角速度を検出するセンサを有して構成され、
前記左右方向の回転有無を判定することは、前記検出された角速度又は当該角速度の時
間微分である角加速度が所定の閾値条件を満たすか否かによって判定することである、
請求項2に記載の測位方法。
【請求項4】
前記誤差を推定することは、前記第2高度変化が無しの場合には、前記高度方向の速度
及び前記高度変化の差それぞれに応じた観測値を少なくとも用いたカルマンフィルタ処理
を行い、前記第2高度変化が有る場合には、前記高度方向の速度に応じた観測値を用いず
に、前記高度変化の差に応じた観測値を少なくとも用いたカルマンフィルタ処理を行って
、前記慣性航法演算処理の演算結果に含まれる誤差を推定することである、
請求項1〜3の何れか一項に記載の測位方法。
【請求項5】
前記移動体が停止したときに、気温を検出する温度センサの検出温度と前記慣性航法用
センサの検出結果とを対応付けて記憶することと、
前記記憶された前記温度センサの検出温度と前記慣性航法用センサの検出結果とから、
任意の気温に対する前記慣性航法用センサの検出誤差を補償する温度補償モデル式を算出
することと、
前記温度センサの現在の検出温度に対応する前記慣性航法用センサの検出誤差の補償値
を前記温度補償モデル式から求め、前記慣性航法用センサの検出結果を補償することと、
を更に含む請求項1〜4の何れか一項に記載の測位方法。
【請求項6】
請求項1〜5の何れか一項に記載された測位方法を、移動体に搭載される測位装置に内
蔵されたコンピュータに実行させるためのプログラム。
【請求項7】
移動体に搭載され、所定の慣性航法用センサを用いた所定の慣性航法演算処理を実行し
て前記移動体の現在位置を測位する測位装置であって、
前記慣性航法演算処理により随時求められる相対高度を第1高度変化として算出する第
1高度変化算出部と、
前記移動体の外気圧を検出する気圧センサの検出結果に基づいて、相対高度を第2高度
変化として算出する第2高度変化算出部と、
前記第1高度変化と前記第2高度変化との差を算出する高度変化差算出部と、
前記高度変化の差、前記慣性航法演算処理により求められる前記移動体の直進方向に対
する左右方向の速度、及び、前記慣性航法演算処理により求められる前記移動体の高度方
向の速度に応じた観測値を用いたカルマンフィルタ処理を行って、前記慣性航法演算処理
の演算結果に含まれる誤差を推定するカルマンフィルタ処理部と、
前記誤差を用いて前記慣性航法演算処理の演算結果を補正して、前記移動体の現在位置
を測位する測位部と、
を備えた測位装置。

【図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


【公開番号】特開2009−192462(P2009−192462A)
【公開日】平成21年8月27日(2009.8.27)
【国際特許分類】
【出願番号】特願2008−35636(P2008−35636)
【出願日】平成20年2月18日(2008.2.18)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】