説明

位置標定装置、位置標定装置の位置標定方法および位置標定プログラム

【課題】高精度でないIMUと1台のGPS受信機とを用いて車両の位置を高精度に標定できるようにすることを目的とする。
【解決手段】初期値算出部110は、車両の出発時に3自由度2次元航法により方位角の初期値を算出する。走行時標定部121は、車両が停車するまで、方位角の初期値または前回の方位角を用いて6自由度3次元航法により位置と姿勢と方位とを標定する。停車時標定部122は、車両が停車している間、方位角を拘束する拡張ZUPTアルゴリズムに基づいて6自由度3次元航法により位置と姿勢と方位とを標定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、例えば、車両の位置を標定する位置標定装置、位置標定装置の位置標定方法および位置標定プログラムに関するものである。
【背景技術】
【0002】
従来、6自由度の3次元航法は、高価で高精度なIMU(Inertial Measurement Unit)を利用する必要があったため、航空・宇宙関連分野など、限られた分野でしか使用できなかった。
【0003】
そこで、低価格化のために複数台のGPS(Global Positioning System)受信機と車速パルスとを利用して車両の位置・姿勢・方位を標定することも考えられる。
しかし、GPSアンテナ同士をある程度離して相対位置が変化しないように設置する必要がある。この制約は、一般の乗用車に適用するには大きな制約である。
【0004】
これらの制約が発生する具体的な要因は以下のとおりである。
(1)車両を停止した状態で方位を求める場合、中精度または低精度なIMUでは、地球の自転を計測して方位を求めるといった計算が出来ない。
また、2台以上のGPS受信機を使用して方位を求める場合、GPSアンテナ間の基線解析を行うため、精度を出すためにはGPSアンテナを可能な限り離して相対位置が変化しないよう設置する必要がある。
(2)3次元航法計算では、ある程度正確な初期値(位置・姿勢・方位)を設定しなければ計算結果が発散してしまう可能性が高い。
初期値のうち、姿勢角(ピッチ角、ロール角)は重力観測により得られ、位置はGPS観測により得られるが、方位に関しては上記(1)の理由により適切な値を得ることができない。
(3)正確な初期値が何らかの方法で与えられたとしても、その後の停車時にはジャイロの誤差等によって方位の値がドリフトしてしまう。
【0005】
今後、3次元地図のインフラ整備が急速に進むほか、低価格なMEMS(Micro Electro Mechanical Systems)センサの性能向上によって一般のカーナビゲーションシステムでも車両の位置・姿勢・方位を標定する3次元航法のニーズが高まることが予想されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2010−287156号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、例えば、高精度でないIMUと1台のGPS受信機とを用いて車両の位置を高精度に標定できるようにすることを目的とする。
【課題を解決するための手段】
【0008】
本発明の位置標定装置は、GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する。
前記位置標定装置は、
前記角速度センサにより計測された方位角の角速度に基づいて前記移動体の方位角を第一航法方位角として算出し、算出した第一航法方位角と前記速度センサにより計測された速度とに基づいて前記移動体の座標値を第一航法座標値として算出し、算出した第一航法座標値と前記GPS受信機により測位された座標値とに基づいて第1のカルマンフィルタを用いて前記第一航法方位角を補正する補正値を算出し、算出した補正値を用いて前記第一航法方位角を補正し、補正後の第一航法方位角を方位角初期値として出力する初期値算出部と、
前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記初期値算出部から出力された方位角初期値とに基づいて前記移動体の方位角を第二航法方位角として算出し、算出した第二航法方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を第二航法座標値として算出し、算出した第二航法座標値と前記GPS受信機により測位された座標値とに基づいて第2のカルマンフィルタを用いて前記第二航法座標値を補正する補正値を算出し、算出した補正値を用いて前記第二航法座標値を補正し、前記移動体の位置を標定した位置標定値として補正後の第二航法座標値を出力する標定値算出部とを備える。
【発明の効果】
【0009】
本発明によれば、例えば、高精度でないIMU(加速度センサ、角速度センサ)と1台のGPS受信機とを用いて車両(移動体の一例)の位置を高精度に標定することができる。
【図面の簡単な説明】
【0010】
【図1】実施の形態1における車両200の概要図。
【図2】実施の形態1における自己位置姿勢標定装置100の概要図。
【図3】実施の形態1における自己位置姿勢標定装置100の機能構成図。
【図4】実施の形態1におけるストラップダウン演算部140の機能構成図。
【図5】実施の形態1における自己位置姿勢標定方法を示すフローチャート。
【図6】実施の形態1における3自由度2次元航法のアルゴリズムを示す図。
【図7】実施の形態1における3自由度2次元航法による方位角の推定結果を示すグラフ。
【図8】実施の形態1における6自由度3次元航法のアルゴリズムを示す図。
【図9】実施の形態1における車両200の停車時の方位角のドリフトを示すグラフ。
【図10】実施の形態1における拡張ZUPTアルゴリズムの概要図。
【図11】実施の形態1における自己位置姿勢標定装置100のハードウェア資源の一例を示す図。
【発明を実施するための形態】
【0011】
実施の形態1.
車両の位置・姿勢・方位を標定する自己位置姿勢標定装置について説明する。
【0012】
図1は、実施の形態1における車両200の概要図である。
図2は、実施の形態1における自己位置姿勢標定装置100の概要図である。
実施の形態1における車両200の概要と自己位置姿勢標定装置100の概要とについて、図1と図2とに基づいて説明する。
【0013】
図1において、車両200(移動体の一例)は、GPS受信機210(およびGPSアンテナ211)と慣性センサ220、車速センサ230(速度センサの一例)と自己位置姿勢標定装置100(位置標定装置の一例)を備える。
「GPS」は「Global Positioning System」の略である。
【0014】
例えば、GPS受信機210と慣性センサ220とを設置した天板201を車両200の屋根部に設置する。また、自己位置姿勢標定装置100と車速センサ230とを車両200内に設置する。
但し、設置方法はこれに限らない。例えば、GPS受信機210を屋根部以外に設置してもよいし、慣性センサ220を車両200内に設置してもよく、天板201を設けることなく、GPS受信機210と慣性センサ220を車両200の内部または外部に取り付けてもよい。
また、自己位置姿勢標定装置100は車両200とは別個に設けた外部装置であっても構わない。
さらに、車両200は他の移動体(例えば、飛行機、船舶、自動二輪車、自転車、列車)であっても構わない。
【0015】
GPS受信機210は、GPS衛星から発信される測位信号をGPSアンテナ211を用いて観測し、観測結果に基づいて位置を測位する。
【0016】
慣性センサ220は、3軸方向(車両200の長さ方向と幅方向と高さ方向)の加速度と角速度とを計測する。
慣性センサ220は、IMU(Inertial Measurement Unit)と呼ばれる。
以下、3軸方向の加速度を「三次元加速度」といい、3軸方向の角速度を「三次元角速度」という。
【0017】
車速センサ230は、車軸の回転を車速パルスとして検出し、検出した車速パルスを用いて車両200の速度を計測する。
【0018】
図2に示すように、自己位置姿勢標定装置100は、GPS受信機210のデータと、慣性センサ220のデータと、車速センサ230のデータとに基づいて車両200の位置と姿勢と方位とを標定する。
「位置」は、三次元の座標値(緯度、経度、高度)を意味する。
「姿勢」は、仰角(ピッチ角)と回転角(ロール角)とを意味する。
「方位」は、方位角を意味する。
【0019】
図3は、実施の形態1における自己位置姿勢標定装置100の機能構成図である。
実施の形態1における自己位置姿勢標定装置100の機能構成について、図3に基づいて説明する。
【0020】
自己位置姿勢標定装置100(位置標定装置の一例)は、初期値算出部110、自己位置姿勢標定部120、カルマンフィルタ部130、ストラップダウン演算部140および装置記憶部190を備える。
【0021】
装置記憶部190は、自己位置姿勢標定装置100で使用するデータを記憶する。
GPSデータ191、速度データ192、加速度データ193または角速度データ194は、装置記憶部190に記憶されるデータの一例である。
【0022】
GPSデータ191は、GPS受信機210により計測されたデータであり、時刻に対応付けて「位置」や「速度」を含んでいる。速度は、過去の位置と現在の位置と過去から現在までの経過時間とに基づいて計測される。
速度データ192は、車速センサ230により計測されたデータであり、時刻に対応付けて「速度」を含んでいる。
加速度データ193は、慣性センサ220を構成する加速度センサ221により計測されたデータであり、時刻に対応付けて三次元加速度を含んでいる。
角速度データ194は、慣性センサ220を構成する角速度センサ222により計測されたデータであり、時刻に対応付けて三次元角速度を含んでいる。つまり、角速度データ194は、「仰角」の角速度と「回転角」の角速度と「方位角」の角速度とを含んでいる。角速度センサ222は「ジャイロ」と呼ばれる。
【0023】
初期値算出部110は、カルマンフィルタ部130を制御して方位角の初期値を算出する(初期値算出処理)。
【0024】
例えば、初期値算出部110は、以下のように方位角の初期値を算出する。
初期値算出部110は、角速度データ194に含まれる方位角の角速度に基づいて、車両200の方位角を第一航法方位角として算出する(後述する方位更新部112の処理)。
初期値算出部110は、算出した第一航法方位角と速度データ192に含まれる速度とに基づいて、車両200の座標値を第一航法座標値として算出する(後述する緯度経度更新部114の処理)。
初期値算出部110は、算出した第一航法座標値とGPSデータ191に含まれる座標値とに基づいて、第1のカルマンフィルタ131を用いて、第一航法方位角を補正する補正値を算出する。
初期値算出部110は、算出した補正値を用いて第一航法方位角を補正し、補正後の第一航法方位角を方位角初期値として出力する(後述する出力補正部115の処理)。
【0025】
自己位置姿勢標定部120は、走行時標定部121(標定値算出部の一例)と停車時標定部122(方位角補正部の一例)と停車判定部123(停止判定部の一例)とを備える。
走行時標定部121は、車両200が走行しているときに、カルマンフィルタ部130とストラップダウン演算部140とを制御して車両200の位置と姿勢と方位とを標定(算出)する。
停車時標定部122は、車両200が停車しているときに、カルマンフィルタ部130とストラップダウン演算部140とを制御して車両200の位置と姿勢と方位とを標定する。
【0026】
例えば、走行時標定部121は、以下のように車両200の位置を標定する。
走行時標定部121は、角速度データ194に含まれる方位角の角速度に基づいて、方位角の変化量を算出する(後述する姿勢方位更新部142の処理)。
走行時標定部121は、算出した方位角の変化量と初期値算出部110から出力された方位角初期値とに基づいて、車両200の方位角を第二航法方位角として算出する(後述する姿勢方位更新部142の処理)。
走行時標定部121は、算出した第二航法方位角と加速度データ193に含まれる加速度とに基づいて、車両200の座標値を第二航法座標値として算出する(後述する速度位置更新部144の処理)。
走行時標定部121は、算出した第二航法座標値とGPSデータ191に含まれる座標値とに基づいて、第2のカルマンフィルタ132を用いて、第二航法座標値を補正する補正値を算出する。
走行時標定部121は、算出した補正値を用いて第二航法座標値を補正し、車両200の位置を標定した位置標定値として補正後の第二航法座標値を出力する(後述する出力補正部125の処理)。
【0027】
例えば、走行時標定部121と停車時標定部122とは、以下のように車両200の位置を標定する。
停車時標定部122は、移動していた車両200が移動を停止した場合、第3のカルマンフィルタ133を用いて第二航法方位角を補正する方位角補正値を算出する。
停車時標定部122は、算出した方位角補正値を用いて第二航法方位角を補正して補正後の第二航法方位角を算出する(後述する出力補正部125の処理)。
走行時標定部121は、停止した車両200が移動を再開した場合、補正後の第二航法方位角と新たな方位角の変化量とに基づいて新たな第二航法方位角を算出する(後述する姿勢方位更新部142の処理)。
走行時標定部121は、算出した新たな第二航法方位角に基づいて新たな第二航法座標値を算出する(後述する速度位置更新部144の処理)。
走行時標定部121は、算出した新たな第二航法座標値を補正する位置補正値を第2のカルマンフィルタ132を用いて算出する。
走行時標定部121は、算出した位置補正値を用いて新たな第二航法座標値を補正し、補正後の新たな第二航法座標値を新たな位置標定値として出力する(後述する出力補正部125の処理)。
【0028】
停車判定部123は、車両200が停車したか又は発車したかを判定する。
【0029】
例えば、停車判定部123は、車両200が停車したか又は発車したかを以下のように判定する。
停車判定部123は、車速センサ230により計測された速度が所定の速度閾値未満である場合、車両200が移動を停止したと判定する。
停車判定部123は、車両200が移動を停止したと判定した後、車速センサ230により計測された速度が速度閾値以上である場合、車両200が移動を再開したと判定する。
【0030】
カルマンフィルタ部130は、観測方程式や状態方程式を生成し、生成した観測方程式や状態方程式を用いて各種データの補正値を算出する。
カルマンフィルタ部130は、観測方程式が異なる複数のカルマンフィルタ(符号131−133)を備える。
【0031】
例えば、第3のカルマンフィルタ133は、前回算出された第二航法方位角と今回算出された第二航法方位角とを一致させる補正値を方位角補正値として算出する。
【0032】
例えば、第3のカルマンフィルタ133は、前回算出された第二航法方位角と今回算出された第二航法方位角との差分を表す観測方程式を生成し、生成した観測方程式を用いて方位角補正値を算出する。
【0033】
図4は、実施の形態1におけるストラップダウン演算部140の機能構成図である。
実施の形態1におけるストラップダウン演算部140の機能構成について、図4に基づいて説明する。
【0034】
ストラップダウン演算部140は、加速度データ193と角速度データ194とに基づいて速度と位置と姿勢と方位とを算出する。
【0035】
ストラップダウン演算部140は、図4に示す構成(符号141−147、148A−C)を備える。
【0036】
角速度座標変換部141は、センサ座標系(車体座標系)の三次元角速度を入力する。
角速度座標変換部141は、姿勢方位更新部142により前回算出された姿勢と方位とに基づいて所定の座標変換式(例えば、方向余弦行列)を用いて三次元角速度をセンサ座標系の値から航法座標系(局所水平座標系)の値に変換する。
「センサ座標系」は車両200を基準とする座標系であり、例えば、長さ方向を「x」、幅方向を「y」、高さ方向を「z」として表される。
「航法座標系」は地面を基準とする座標系であり、例えば、「North(北)」「East(東)」「Down(下)」で表される。
【0037】
第一補正部148Aは、角速度座標変換部141により変換された三次元角速度に航法系回転補正計算部147により算出される補正値を加算して三次元角速度を補正する。
【0038】
姿勢方位更新部142は、第一補正部148Aにより補正された方位角の角速度を1回積分して方位角の変化量を算出し、算出した方位角の変化量を方位角の初期値または前回標定された方位角に加算して新たな方位角を算出する。
同様に、姿勢方位更新部142は、新たな姿勢角を算出する。
ここで、姿勢方位更新部142は、初期値算出部110により算出された方位角を方位角の初期値として用いる。
また、姿勢方位更新部142は、加速度センサ221により停車時に計測された加速度を用いて所定の姿勢角算出式を計算し、姿勢角の初期値を算出する。姿勢角算出式は、計測された加速度と重力加速度と姿勢角との関係を表した式である。
【0039】
加速度座標変換部143は、センサ座標系の三次元加速度を入力する。
加速度座標変換部143は、姿勢方位更新部142により算出された姿勢角と方位角とに基づいて、所定の座標変換式を用いて、三次元加速度をセンサ座標系の値から航法座標系の値に変換する。
【0040】
第二補正部148Bは、加速度座標変換部143により変換された三次元加速度に重力補正計算部145により算出される補正値を加算して三次元加速度を補正する。
【0041】
第三補正部148Cは、第二補正部148Bにより補正された三次元加速度にコリオリ補正計算部146により算出される補正値を加算して三次元加速度を補正する。
【0042】
速度位置更新部144は、第三補正部148Cにより補正された三次元加速度を1回積分して速度(速度ベクトル)を算出する。
また、速度位置更新部144は、第三補正部148Cにより補正された三次元加速度を2回積分して位置の変化量を算出し、算出した位置の変化量を位置の初期値または前回標定された位置に加算して新たな位置を算出する。
例えば、速度位置更新部144は、GPS受信機210により停車時に計測された位置を位置の初期値として用いる。
【0043】
重力補正計算部145は、速度位置更新部144により算出された位置を入力値として所定の重力補正計算式を計算し、三次元加速度の補正値を算出する。この補正値は計測された三次元加速度に含まれる重力加速度を取り除くための値である。
【0044】
コリオリ補正計算部146は、速度位置更新部144により算出された速度と姿勢方位更新部142により算出された姿勢とを入力値として所定のコリオリ補正計算式を計算し、三次元加速度の補正値を算出する。この補正値はコリオリ力による計測誤差を三次元加速度から取り除くための値である。
【0045】
航法系回転補正計算部147は、速度位置更新部144により算出された速度を入力値として所定の航法系回転補正計算式を計算し、三次元角速度の補正値を算出する。この補正値は地球の自転による計測誤差を三次元角速度から取り除くための値である。
【0046】
図5は、実施の形態1における自己位置姿勢標定方法を示すフローチャートである。
実施の形態1における自己位置姿勢標定方法について、図5に基づいて説明する。
【0047】
まず、自己位置姿勢標定方法の概要について説明する。
【0048】
初期値算出部110は、車両200の出発時に3自由度2次元航法により方位角の初期値を算出する(S110)。
走行時標定部121は、車両200が停車するまで、方位角の初期値または前回の方位角を用いて6自由度3次元航法により位置と姿勢と方位とを標定する(S120)。
停車時標定部122は、車両200が停車している間、拡張ZUPTアルゴリズムに基づいて6自由度3次元航法により位置と姿勢と方位とを標定する(S140)。
【0049】
次に、自己位置姿勢標定方法の詳細について説明する。
【0050】
S110において、初期値算出部110は、車両200の出発時、つまり、自己位置姿勢標定装置100の起動時に3自由度2次元航法(第一航法)により方位角の初期値を算出する。
「3自由度」は「緯度」と「経度」と「方位」とを意味し、「2次元」は「緯度、経度」または「方位」を意味する。
【0051】
図6は、実施の形態1における3自由度2次元航法のアルゴリズムを示す図である。
実施の形態1における3自由度2次元航法について、図6に基づいて説明する。
【0052】
入力補正部111、方位更新部112、座標変換部113、緯度経度更新部114および出力補正部115は、初期値算出部110が備える機能構成である。
【0053】
入力補正部111は、速度データ192に含まれる速度にカルマンフィルタ部130により算出される補正値を加算して速度(速度ベクトル)を補正する。
さらに、入力補正部111は、角速度データ194に含まれる「方位角」の角速度にカルマンフィルタ部130により算出される補正値を加算して方位角の角速度を補正する。
【0054】
方位更新部112は、入力補正部111により補正された方位角の角速度を1回積分して方位角の変化量を算出する。
方位更新部112は、算出した方位角の変化量を方位角の初期値または出力補正部115により前回算出された方位角に加算して新たな方位角を算出する。
ここで、方位更新部112は方位角の初期値として所定の値(例えば、0度)を用いる。ここで用いる方位角の初期値は適当な値で構わない。つまり、方位角の初期値は、正確な方位角を示す適切な値であっても、不正確な方位角を示す不適切な値であっても構わない。
【0055】
座標変換部113は、方位更新部112により算出された姿勢と方位とに基づいて、所定の座標変換式を用いて、入力補正部111により補正された速度をセンサ座標系の値から航法座標系の値に変換する。
これにより、航法座標系の二次元速度(緯度方向の速度、経度方向の速度)が得られる。
【0056】
緯度経度更新部114は、座標変換部113により得られた二次元速度を1回積分して二次元座標(緯度、経度)の変化量を算出する。
緯度経度更新部114は、算出した二次元座標の変化量を二次元座標の初期値または出力補正部115により前回算出された二次元座標に加算して新たな二次元座標を算出する。
例えば、緯度経度更新部114は、車両200が出発する前、つまり、車両200の停車時にGPS受信機210により測位された二次元座標値を二次元座標の初期値として用いる。
【0057】
カルマンフィルタ部130は、GPSデータ191に含まれる二次元座標と緯度経度更新部114により算出された二次元座標との差を「座標残差」として算出する。
カルマンフィルタ部130は、GPSデータ191に含まれる二次元速度と座標変換部113により得られた二次元速度とを差を「速度残差」として算出する。
カルマンフィルタ部130は、座標残差と速度残差とを入力値として第1のカルマンフィルタ131を実行し、速度の補正値と角速度の補正値と二次元座標の補正値と方位角の補正値とを算出する。
【0058】
出力補正部115は、緯度経度更新部114により算出された二次元座標値にカルマンフィルタ部130により算出された補正値を加算して二次元座標値を補正し、補正した二次元座標値を出力する。
さらに、出力補正部115は、方位更新部112により算出された方位角にカルマンフィルタ部130により算出された補正値を加算して方位角を補正し、補正した方位角を出力する。
【0059】
図7は、実施の形態1における3自由度2次元航法による方位角の推定結果を示すグラフである。
実施の形態1における3自由度2次元航法による方位角の推定結果について、図7に基づいて説明する。
【0060】
図7において、3自由度2次元航法(図6参照)により算出した方位角を実線で示し、正しい方位角を鎖線で示す。
【0061】
(1)車両200が「−180度」の方位を向いて停車しているときに方位角の初期値「0度」を初期値算出部110の方位更新部112に設定し、車両200の走行を開始した。
(2)車両200を左回りに回転させると、3自由度2次元航法により算出した方位角(実線)は数秒程度で正しい方位角(鎖線)に近い適切な値になった。
(3)車両200を停車させると、角速度センサ222のバイアス(計測誤差)により方位角の値がドリフトを始めた。
【0062】
図7(1)(2)に示すように、3自由度2次元航法は、方位角の初期値が不適切な値であってもすぐに適切な値を求めることができる。
これは、3自由度2次元航法において、加速度センサ221が計測した加速度ではなく、車速センサ230が計測した速度を用いているためである。
これにより、二次元座標を求める積分計算が1回で済み、速度の座標変換に用いる方位角(の初期値)の誤差の影響が比較的少なく、カルマンフィルタを用いて二次元座標と方位角とを適切に補正できる。
【0063】
図5に戻り、S110の説明を続ける。
【0064】
カルマンフィルタ部130は、上記の3自由度2次元航法(図6参照)を所定の初期化時間(例えば、数秒)または所定の航法回数だけ実行し、実行を終了したときに算出した方位角を「方位角初期値」としてストラップダウン演算部140に出力する。
S110の後、S120に進む。
【0065】
S120において、走行時標定部121は、方位角の初期値または前回標定した方位角を用いて6自由度3次元航法(第二航法)により位置と姿勢と方位とを標定する。
「6自由度」は「緯度」「経度」「高度」「仰角」「回転角」「方位角」を意味し、「3次元」は「緯度、経度、高度」または「仰角、回転角、方位角」を意味する。
【0066】
図8は、実施の形態1における6自由度3次元航法のアルゴリズムを示す図である。
実施の形態1における6自由度3次元航法のアルゴリズムについて、図8に基づいて説明する。
【0067】
停車判定部123、入力補正部124、出力補正部125は自己位置姿勢標定部120が備える機能構成である。
【0068】
入力補正部124は、加速度データ193に含まれる三次元加速度にカルマンフィルタ部130により算出される補正値を加算して三次元加速度を補正する。
さらに、入力補正部124は、角速度データ194に含まれる三次元角速度にカルマンフィルタ部130により算出される補正値を加算して三次元角速度を補正する。
【0069】
ストラップダウン演算部140は、入力補正部124により補正された三次元加速度と入力補正部124により補正された三次元角速度とを用いて位置と姿勢と方位とを算出する(図4参照)。
ここで、ストラップダウン演算部140の姿勢方位更新部142は、初期値算出部110により算出された方位角を方位角の初期値として用いる。
図7で説明したように、初期値算出部110により算出される方位角は正確な方位角に近い値であり、ストラップダウン演算に用いる方位角の初期値として適切な値である。例えば、初期値算出部110の代わりに方位磁石を用いた場合、ストラップダウン演算で用いる初期値として十分な精度の方位角を得ることができない。
ストラップダウン演算部140は、適切な方位角の初期値を用いることにより精度が高い位置と姿勢と方位とを算出することができる。
【0070】
出力補正部125は、ストラップダウン演算部140により算出された位置にカルマンフィルタ部130により算出される補正値を加算して位置を補正し、補正した位置を標定結果の位置として出力する。
また、出力補正部125は、ストラップダウン演算部140により算出された姿勢にカルマンフィルタ部130により算出される補正値を加算して姿勢を補正し、補正した姿勢を標定結果の姿勢角として出力する。
さらに、出力補正部125は、ストラップダウン演算部140により算出された方位にカルマンフィルタ部130により算出される補正値を加算して方位を補正し、補正した方位を標定結果の方位として出力する。
【0071】
停車判定部123は、車両200が停車しているか否かを判定する。
【0072】
カルマンフィルタ部130は、車両200が停車していない場合、GPSデータ191に含まれる位置とストラップダウン演算部140により算出された位置との差を「位置残差」として算出する。
また、カルマンフィルタ部130は、速度データ192に含まれる速度とストラップダウン演算部140により算出された速度との差を「速度残差」として算出する。
そして、カルマンフィルタ部130は、位置残差と速度残差とを入力値として第2のカルマンフィルタ132を実行し、三次元加速度の補正値と三次元角速度の補正値と位置の補正値と姿勢の補正値と方位の補正値とを算出する。
【0073】
カルマンフィルタ部130は、車両200が停車している場合、ストラップダウン演算部140により算出された方位に基づいて方位の変化量を「方位残差」として算出する。
そして、カルマンフィルタ部130は、方位残差を入力値として第3のカルマンフィルタ133を実行し、三次元加速度の補正値と三次元角速度の補正値と位置の補正値と姿勢の補正値と方位の補正値とを算出する。
【0074】
図5に戻り、自己位置姿勢標定方法の説明を続ける。
【0075】
S120の後、S130に進む。
【0076】
S130において、停車判定部123は、速度データ192に含まれる速度を所定の速度閾値と比較し、速度が速度閾値未満である場合、車両200が停車していると判定し、速度が速度閾値以上である場合、車両200が停車していないと判定する。
但し、停車判定部123は、車両200が停車しているか否かをその他のデータに基づいて判定してもよい。例えば、停車判定部123は、GPSデータ191に含まれる速度に基づいて判定を行ってもよい。また、停車判定部123は、GPSデータ191に含まれる前回の位置と今回の位置とに基づいて位置の変化量が所定の位置閾値未満である場合に車両200が停車していると判定してもよい。また、停車判定部123は、加速度データ193(または角速度データ194)に基づいて加速度(または角速度)の変化量が所定の加速度閾値(または角速度閾値)未満である場合に車両200が停車していると判定してもよい。
車両200が停車している場合(YES)、S140に進む。
車両200が停車していない場合(NO)、S120に戻る。
【0077】
S140において、停車時標定部122は、前回標定された方位角を用いて6自由度3次元航法(図8参照)により位置と姿勢と方位とを標定する。
但し、停車時標定部122は、6自由度3次元航法に「拡張ZUPTアルゴリズム」を適用する。
【0078】
拡張ZUPTアルゴリズムは、ZUPT(Zero velocity UP daTe)という従来技術を拡張した新規技術である。ZUPTとは、停止中の位置の計測値を固定することによりセンサ誤差による位置(計測値)の変化を防ぐ技術である。
拡張ZUPTアルゴリズムは、停止中の方位角の計測値を固定することによりセンサ誤差による方位角(計測値)の変化を防ぐ。
但し、拡張ZUPTアルゴリズムは、停止中の姿勢角の計測値を固定しない。車両200が停車中であっても人の乗り降りや車内での人の移動によって、車両200の姿勢角は変化するからである。もし、姿勢角の計測値を固定してしまうと姿勢角が実際に変化しているにも関わらず、カルマンフィルタが姿勢角の変化量をセンサ誤差として判断してしまい、間違った補正値を出力してしまう。また、姿勢角はレベリングによって正確な値を求めることができる。
【0079】
図9は、実施の形態1における車両200の停車時の方位角のドリフトを示すグラフである。
車両200の停車時(但し、人の乗り降り及び車内での人の移動は無し)の回転角、仰角、方位角の変化を図9に示す。
図9に示すように、方位角の値は角速度センサ222のバイアス誤差により、時間の経過に伴ってドリフトする。
一方、回転角、仰角の値(姿勢角の値)は、重力加速度と加速度センサ221により計測された加速度との比較によって安定化することができる(レベリング)。
【0080】
図10は、実施の形態1における拡張ZUPTアルゴリズムの概要図である。
実施の形態1における拡張ZUPTアルゴリズムの概要について、図10に基づいて説明する。
【0081】
拡張ZUPTアルゴリズムでは、車両200の左右に「仮想アンカポイント」を設定し、車両200の長さ方向の2箇所に「仮想センシングポイント」を設定し、仮想アンカポイントと仮想センシングポイントとをワイヤーで結んだ状態を仮定する。
この場合、車両200の姿勢角(x軸またはy軸回りの回転)を変化させることは可能であるが、車両200の方位角(z軸回りの回転)を変化させることはできない。つまり、方位角について車両200が拘束される。
【0082】
この状態において、仮想アンカポイントと仮想センシングポイントとの距離の二重差を観測値とする。
観測値を表す観測式(1)−(3)を以下に示す。式(3)に示すように観測値は「0」である。
【0083】
【数1】

【0084】
上記式(2)の行列Aを表す式(6)および行列Aの算出式(4)(5)を以下に示す。
【0085】
【数2】

【0086】
上記式(4)の右辺の行列は、方位角を車体座標系(xyz)から局所水平座標系(NED)に変換する方向余弦行列である。
また、上記式(4)の右辺の1つ目のベクトルは車両200の右方向の単位行列であり、2つ目のベクトルは車両200の左方向の単位行列である。
【0087】
上記式(2)に含まれる行列Aと行列Cとベクトルbとのうち、行列Cはセンサ誤差の影響による方位角の計測値の変化に応じて変化する。
そこで、予測値を以下の観測式(7)で表す。
【0088】
【数3】

【0089】
式(2)に表した観測値と式(7)に表した予測値との差を方位角の観測誤差(方位残差)として以下の式(8)で表す。
【0090】
【数4】

【0091】
図5に戻り、S140の説明を続ける。
【0092】
6自由度3次元航法(図8)において、拡張ZUPTアルゴリズムを適用した第3のカルマンフィルタ133が実行される。
第3のカルマンフィルタ133は、上記式(8)を観測方程式として用いてカルマンフィルタ処理により各種の補正値を算出する。
S140の後、S150に進む。
【0093】
S150において、停車判定部123は、車両200が停車しているか否かをS130と同様に判定する。
車両200が停車している場合(YES)、S140に戻る。
車両200が停車していない場合(NO)、S120に戻る。
【0094】
図11は、実施の形態1における自己位置姿勢標定装置100のハードウェア資源の一例を示す図である。
図11において、自己位置姿勢標定装置100は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
【0095】
通信ボード905は、有線または無線で、LAN(Local Area Network)、インターネット、電話回線などの通信網に接続している。
【0096】
磁気ディスク装置920には、OS921(オペレーティングシステム)、プログラム群922、ファイル群923が記憶されている。
【0097】
プログラム群922には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラムは、CPU901により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
【0098】
ファイル群923には、実施の形態において説明する「〜部」で使用される各種データ(入力、出力、判定結果、計算結果、処理結果など)が含まれる。
【0099】
実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
【0100】
実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。
【0101】
実施の形態1において、例えば、以下のような自己位置姿勢標定装置100について説明した。
【0102】
自己位置姿勢標定装置100は、GPSとIMUと車速パルスとを用いて(1)方位を求めるための初期演算と、(2)停車中に実施する方位に関するカルマンフィルタの観測更新アルゴリズム(拡張ZUPT)とを実行する。
(1)(2)により、低価格で中精度なIMUと設置場所に制約がない1台のGPSとを用いて6自由度3次元航法を行うことが可能となる。
【符号の説明】
【0103】
100 自己位置姿勢標定装置、110 初期値算出部、111 入力補正部、112 方位更新部、113 座標変換部、114 緯度経度更新部、115 出力補正部、120 自己位置姿勢標定部、121 走行時標定部、122 停車時標定部、123 停車判定部、124 入力補正部、125 出力補正部、130 カルマンフィルタ部、131 第1のカルマンフィルタ、132 第2のカルマンフィルタ、133 第3のカルマンフィルタ、140 ストラップダウン演算部、141 角速度座標変換部、142 姿勢方位更新部、143 加速度座標変換部、144 速度位置更新部、145 重力補正計算部、146 コリオリ補正計算部、147 航法系回転補正計算部、148A 第一補正部、148B 第二補正部、148C 第三補正部、190 装置記憶部、191 GPSデータ、192 速度データ、193 加速度データ、194 角速度データ、200 車両、201 天板、210 GPS受信機、211 GPSアンテナ、220 慣性センサ、221 加速度センサ、222 角速度センサ、230 車速センサ、901 CPU、902 バス、903 ROM、904 RAM、905 通信ボード、920 磁気ディスク装置、921 OS、922 プログラム群、923 ファイル群。

【特許請求の範囲】
【請求項1】
GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する位置標定装置において、
前記角速度センサにより計測された方位角の角速度に基づいて前記移動体の方位角を第一航法方位角として算出し、算出した第一航法方位角と前記速度センサにより計測された速度とに基づいて前記移動体の座標値を第一航法座標値として算出し、算出した第一航法座標値と前記GPS受信機により測位された座標値とに基づいて第1のカルマンフィルタを用いて前記第一航法方位角を補正する補正値を算出し、算出した補正値を用いて前記第一航法方位角を補正し、補正後の第一航法方位角を方位角初期値として出力する初期値算出部と、
前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記初期値算出部から出力された方位角初期値とに基づいて前記移動体の方位角を第二航法方位角として算出し、算出した第二航法方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を第二航法座標値として算出し、算出した第二航法座標値と前記GPS受信機により測位された座標値とに基づいて第2のカルマンフィルタを用いて前記第二航法座標値を補正する補正値を算出し、算出した補正値を用いて前記第二航法座標値を補正し、前記移動体の位置を標定した位置標定値として補正後の第二航法座標値を出力する標定値算出部と
を備えたことを特徴とする位置標定装置。
【請求項2】
前記標定値算出部は、
移動していた前記移動体が移動を停止した場合、第3のカルマンフィルタを用いて前記第二航法方位角を補正する方位角補正値を算出し、算出した方位角補正値を用いて前記第二航法方位角を補正して補正後の第二航法方位角を算出し、
停止した前記移動体が移動を再開した場合、前記補正後の第二航法方位角と新たな方位角の変化量とに基づいて新たな第二航法方位角を算出し、算出した新たな第二航法方位角に基づいて新たな第二航法座標値を算出し、算出した新たな第二航法座標値を補正する位置補正値を前記第2のカルマンフィルタを用いて算出し、算出した位置補正値を用いて前記新たな第二航法座標値を補正し、補正後の新たな第二航法座標値を新たな位置標定値として出力する
ことを特徴とする請求項1記載の位置標定装置。
【請求項3】
前記標定値算出部は、
前記速度センサにより計測された速度が所定の速度閾値未満である場合、前記移動体が移動を停止したと判定し、
前記移動体が移動を停止したと判定した後、前記速度センサにより計測された速度が前記速度閾値以上である場合、前記移動体が移動を再開したと判定する
ことを特徴とする請求項2記載の位置標定装置。
【請求項4】
前記第3のカルマンフィルタは、前回算出された第二航法方位角と今回算出された第二航法方位角とを一致させる補正値を前記方位角補正値として算出する
ことを特徴とする請求項2または請求項3記載の位置標定装置。
【請求項5】
前記第3のカルマンフィルタは、前回算出された第二航法方位角と今回算出された第二航法方位角との差分を表す観測方程式を生成し、生成した観測方程式を用いて前記方位角補正値を算出する
ことを特徴とする請求項2から請求項4いずれかに記載の位置標定装置。
【請求項6】
GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する位置標定装置において、
前記移動体が移動している場合、前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記移動体の特定の方位角とに基づいて前記移動体の方位角を算出し、算出した前記移動体の方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を算出し、算出した前記移動体の座標値と前記GPS受信機により測位された座標値とに基づいてカルマンフィルタAを用いて前記移動体の座標値を補正する位置補正値を算出し、算出した位置補正値を用いて前記移動体の座標値を補正し、前記移動体の位置を標定した位置標定値として前記移動体の補正後の座標値を出力する標定値算出部と、
移動していた前記移動体が移動を停止した場合、カルマンフィルタBを用いて前記移動体の方位角を補正する方位角補正値を算出し、算出した方位角補正値を用いて前記移動体の方位角を補正する方位角補正部とを備え、
前記標定値算出部は、
停止した前記移動体が移動を再開した場合、前記方位角補正部によって補正された補正後の方位角と新たな方位角の変化量とに基づいて前記移動体の新たな方位角を算出し、算出した前記移動体の新たな方位角に基づいて前記移動体の新たな座標値を算出し、算出した前記移動体の新たな座標値に基づいて前記第2のカルマンフィルタを用いて新たな位置補正値を算出し、算出した新たな位置補正値を用いて前記移動体の新たな座標値を補正し、補正後の新たな座標値を新たな位置標定値として出力する
ことを特徴とする位置標定装置。
【請求項7】
GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する位置標定装置の位置標定方法において、
初期値算出部は、前記角速度センサにより計測された方位角の角速度に基づいて前記移動体の方位角を第一航法方位角として算出し、算出した第一航法方位角と前記速度センサにより計測された速度とに基づいて前記移動体の座標値を第一航法座標値として算出し、算出した第一航法座標値と前記GPS受信機により測位された座標値とに基づいて第1のカルマンフィルタを用いて前記第一航法方位角を補正する補正値を算出し、算出した補正値を用いて前記第一航法方位角を補正し、補正後の第一航法方位角を方位角初期値として出力し、
標定値算出部は、前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記初期値算出部から出力された方位角初期値とに基づいて前記移動体の方位角を第二航法方位角として算出し、算出した第二航法方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を第二航法座標値として算出し、算出した第二航法座標値と前記GPS受信機により測位された座標値とに基づいて第2のカルマンフィルタを用いて前記第二航法座標値を補正する補正値を算出し、算出した補正値を用いて前記第二航法座標値を補正し、前記移動体の位置を標定した位置標定値として補正後の第二航法座標値を出力する
ことを特徴とする位置標定装置の位置標定方法。
【請求項8】
GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する位置標定装置の位置標定方法において、
標定値算出部は、前記移動体が移動している場合、前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記移動体の特定の方位角とに基づいて前記移動体の方位角を算出し、算出した前記移動体の方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を算出し、算出した前記移動体の座標値と前記GPS受信機により測位された座標値とに基づいてカルマンフィルタAを用いて前記移動体の座標値を補正する位置補正値を算出し、算出した位置補正値を用いて前記移動体の座標値を補正し、前記移動体の位置を標定した位置標定値として前記移動体の補正後の座標値を出力し、
方位角補正部は、移動していた前記移動体が移動を停止した場合、カルマンフィルタBを用いて前記移動体の方位角を補正する方位角補正値を算出し、算出した方位角補正値を用いて前記移動体の方位角を補正し、
前記標定値算出部は、
停止した前記移動体が移動を再開した場合、前記方位角補正部によって補正された補正後の方位角と新たな方位角の変化量とに基づいて前記移動体の新たな方位角を算出し、算出した前記移動体の新たな方位角に基づいて前記移動体の新たな座標値を算出し、算出した前記移動体の新たな座標値に基づいて前記第2のカルマンフィルタを用いて新たな位置補正値を算出し、算出した新たな位置補正値を用いて前記移動体の新たな座標値を補正し、補正後の新たな座標値を新たな位置標定値として出力する
ことを特徴とする位置標定装置の位置標定方法。
【請求項9】
GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する位置標定プログラムにおいて、
前記角速度センサにより計測された方位角の角速度に基づいて前記移動体の方位角を第一航法方位角として算出し、算出した第一航法方位角と前記速度センサにより計測された速度とに基づいて前記移動体の座標値を第一航法座標値として算出し、算出した第一航法座標値と前記GPS受信機により測位された座標値とに基づいて第1のカルマンフィルタを用いて前記第一航法方位角を補正する補正値を算出し、算出した補正値を用いて前記第一航法方位角を補正し、補正後の第一航法方位角を方位角初期値として出力する初期値算出部と、
前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記初期値算出部から出力された方位角初期値とに基づいて前記移動体の方位角を第二航法方位角として算出し、算出した第二航法方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を第二航法座標値として算出し、算出した第二航法座標値と前記GPS受信機により測位された座標値とに基づいて第2のカルマンフィルタを用いて前記第二航法座標値を補正する補正値を算出し、算出した補正値を用いて前記第二航法座標値を補正し、前記移動体の位置を標定した位置標定値として補正後の第二航法座標値を出力する標定値算出部として
コンピュータを機能させることを特徴とする位置標定プログラム。
【請求項10】
GPS(Global Positioning System)を利用して測位を行うGPS受信機と、速度を計測する速度センサと、加速度を計測する加速度センサと、方位角の角速度を計測する角速度センサとが取り付けられた移動体の位置を標定する位置標定プログラムにおいて、
前記移動体が移動している場合、前記角速度センサにより計測された方位角の角速度に基づいて方位角の変化量を算出し、算出した方位角の変化量と前記移動体の特定の方位角とに基づいて前記移動体の方位角を算出し、算出した前記移動体の方位角と前記加速度センサにより計測された加速度とに基づいて前記移動体の座標値を算出し、算出した前記移動体の座標値と前記GPS受信機により測位された座標値とに基づいてカルマンフィルタAを用いて前記移動体の座標値を補正する位置補正値を算出し、算出した位置補正値を用いて前記移動体の座標値を補正し、前記移動体の位置を標定した位置標定値として前記移動体の補正後の座標値を出力する標定値算出部と、
移動していた前記移動体が移動を停止した場合、カルマンフィルタBを用いて前記移動体の方位角を補正する方位角補正値を算出し、算出した方位角補正値を用いて前記移動体の方位角を補正する方位角補正部としてコンピュータを機能させ、
前記標定値算出部としてコンピュータに、
停止した前記移動体が移動を再開した場合、前記方位角補正部によって補正された補正後の方位角と新たな方位角の変化量とに基づいて前記移動体の新たな方位角を算出し、算出した前記移動体の新たな方位角に基づいて前記移動体の新たな座標値を算出し、算出した前記移動体の新たな座標値に基づいて前記第2のカルマンフィルタを用いて新たな位置補正値を算出し、算出した新たな位置補正値を用いて前記移動体の新たな座標値を補正し、補正後の新たな座標値を新たな位置標定値として出力させる
ことを特徴とする位置標定プログラム。
【請求項11】
移動体の停止状態からの移動に応じて、GPS(Global Positioning System)受信機、速度センサ、加速度センサ、および角速度センサの計測データから自己の方位角を求め、移動後の再停止時に求めた方位角を初期方位角として確定するとともに、当該確定された初期方位角と、GPS(Global Positioning System)受信機、速度センサ、加速度センサ、および角速度センサの計測データに基づいて、カルマンフィルタを用いた航法演算により自己位置を標定する演算装置を備えた位置標定装置。

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


【公開番号】特開2012−193965(P2012−193965A)
【公開日】平成24年10月11日(2012.10.11)
【国際特許分類】
【出願番号】特願2011−56105(P2011−56105)
【出願日】平成23年3月15日(2011.3.15)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】