姿勢判定方法、位置算出方法及び姿勢判定装置
【課題】移動体に対するセンサーの姿勢を判定するための新たな手法を提供する。
【解決手段】移動体に設置されたセンサー3により移動ベクトルが計測される。そして、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、移動体に対するセンサー3の姿勢が判定され、移動体が停止している場合に、移動体の速度に関する制約条件を用いて、センサー3の計測結果が補償される。
【解決手段】移動体に設置されたセンサー3により移動ベクトルが計測される。そして、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、移動体に対するセンサー3の姿勢が判定され、移動体が停止している場合に、移動体の速度に関する制約条件を用いて、センサー3の計測結果が補償される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体に対するセンサーの姿勢を判定する方法等に関する。
【背景技術】
【0002】
いわゆるシームレス測位やモーションセンシング、姿勢制御など様々な分野において、センサーの活用が注目されている。センサーとしては、加速度センサーやジャイロセンサー、圧力センサー、地磁気センサーなどが広く知られている。センサーの計測結果を利用して慣性航法演算を行って移動体(例えば自転車や自動車、電車、船、飛行機など)の位置算出を行う技術も考案されている。
【0003】
慣性航法演算においては、センサーの計測結果に含まれ得る種々の誤差成分に起因して位置算出の正確性が低下するという問題があり、位置算出の正確性を向上させるための様々な技術が考案されている。例えば、特許文献1には、移動体の移動方向に関する制約条件を利用して、カルマンフィルターを適用して慣性航法演算結果を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許出願公開第2010/0019963号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1の技術は、センサーの計測結果には誤差が含まれることを前提とし、移動体の移動方向に関する制約条件を利用して、慣性航法演算結果である移動体の位置や速度といった諸量に含まれる誤差を推定するものである。但し、この技術は、センサーの座標系と移動体の座標系との正確な対応関係を把握していることが前提である。
【0006】
センサーの計測結果はセンサーの座標系(ローカル座標系)での値である。移動体の座標系での値ではない。従って、移動体の移動方向に関する制約条件を利用する場合には、センサーの座標系と移動体の座標系との間で座標変換を行うか、或いは、センサーの座標系と移動体の座標系とがぴったり一致するようにセンサーを移動体に固定する必要がある。しかし、キャリブレーションを行うとしても、センサーの座標系から移動体の座標系に正確に変換することは困難であるし、センサーの座標系と移動体の座標系とがぴったり一致するようにセンサーを移動体に固定するのも困難である。僅かではあるが誤差が発生し得るし、時間が経過すると誤差が大きくなり得る。
【0007】
また、慣性航法用のセンサーを備えた携帯型電話機やナビゲーション装置、PDA(Personal Digital Assistant)、パソコンといった持ち運び可能な電子機器を移動体に持ち込んで配置し、その電子機器で慣性航法演算を行う場合には、センサーの座標系と移動体の座標系との対応関係を正確に把握することは至難である。
【0008】
センサーの座標系と移動体の座標系との間で正確な座標変換ができない場合は、センサーの座標系と移動体の座標系との間で辻褄が合わなくなるため、慣性航法演算結果に誤差が生じる。また、慣性航法演算を継続するにつれて、実際の位置と演算した位置との乖離が徐々に大きくなっていく傾向があった。
【0009】
センサーの座標系と移動体の座標系との正確な対応関係を把握するためには、移動体に対するセンサーの正確な姿勢を判定する必要がある。
【0010】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、移動体に対するセンサーの姿勢を判定するための新たな手法を提案することにある。
【課題を解決するための手段】
【0011】
以上の課題を解決するための第1の形態は、移動体に設置された移動ベクトルを計測するセンサーが前記移動ベクトルを計測することと、前記移動体が移動を開始した際に前記センサーが計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定することと、を含む姿勢判定方法である。
【0012】
また、他の形態として、移動体に設置された移動ベクトルを計測するセンサーが前記移動体が移動を開始した際に計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定する姿勢判定装置を構成してもよい。
【0013】
この第1の形態等によれば、移動体が移動を開始した際にセンサーが計測した移動ベクトルを用いて、移動体に対するセンサーの姿勢を判定する。移動ベクトルは、移動体の加速度ベクトルや速度ベクトルといった、移動体の移動に関するベクトルのことを意味する。また、移動体に対するセンサーの姿勢とは、移動体に対するセンサーの相対的な姿勢のことを意味する。実施形態で詳細に後述するが、移動体が移動を開始した際にセンサーにより計測された移動ベクトルを用いることで、移動体に対するセンサーの姿勢を判定することができる。
【0014】
また、第2の形態として、第1の形態の姿勢判定方法であって、前記移動体が停止している場合に、前記移動体の速度に関する第1の制約条件を用いて、前記センサーの計測結果を補償すること、を更に含む姿勢判定方法を構成してもよい。
【0015】
この第2の形態によれば、移動体が停止している場合に、移動体の速度に関する第1の制約条件を用いて、センサーの計測結果を補償する。これにより、第1の形態と相まって、移動体が停止している場合に補償された移動ベクトルを用いてセンサーの姿勢を判定することができるようになり、姿勢判定をより精確に行うことが可能となる。
【0016】
また、第3の形態として、第1又は第2の形態の姿勢判定方法であって、前記姿勢を判定することは、前記移動体に対する前記姿勢のロール成分を判定せず、ピッチ成分及びヨー成分のうちの少なくも一方を判定することである、姿勢判定方法を構成してもよい。
【0017】
この第3の形態によれば、移動体に対する姿勢のロール成分を判定せず、ピッチ成分及びヨー成分のうちの少なくも一方を判定することで、センサーの姿勢判定を簡易に行うことができる。
【0018】
また、第4の形態として、第1〜第3の何れかの形態の姿勢判定方法であって、前記移動ベクトルを計測することは、前記移動体の移動空間を定める座標系である絶対座標系での移動ベクトルを計測することであり、前記姿勢を判定することは、前記移動ベクトルと、前記絶対座標系で表した前記センサーの向きとを用いて、前記センサーの前記姿勢を判定することである、姿勢判定方法を構成してもよい。
【0019】
この第4の形態によれば、移動体の移動空間を定める絶対座標系での移動ベクトルと、絶対座標系で表したセンサーの向きとを用いて、移動体に対するセンサーの姿勢を判定する。絶対座標系で表したセンサーの向きが分かれば、絶対座標系での移動ベクトルを、センサーの座標系に座標変換することができる。そして、変換後の移動ベクトルを用いることで、センサーの姿勢を適切に判定することができる。
【0020】
また、第5の形態として、第1〜第3の何れかの形態の姿勢判定方法であって、前記姿勢を判定することは、前記移動体の停止時に前記センサーにより計測された移動ベクトルと、移動を開始した際に計測された移動ベクトルとを用いて、前記センサーの計測座標系であるローカル座標系における速度ベクトルを算出することと、前記速度ベクトルを用いて前記センサーの姿勢を判定することと、を含む姿勢判定方法を構成してもよい。
【0021】
この第5の形態によれば、前記移動体の停止時に前記センサーにより計測された移動ベクトルと、移動を開始した際に計測された移動ベクトルとを用いて、前記センサーの計測座標系であるローカル座標系における速度ベクトルを算出することで、前記センサーのバイアス誤差等を取り除いた速度ベクトルを算出することが可能となる。
【0022】
また、第6の形態として、第1〜第5の何れかの形態の姿勢判定方法であって、前記姿勢を判定することは、前記移動体の停止が解除されて前記移動体の速度又は加速度が所定の閾値に達した時の前記移動ベクトルを用いて前記姿勢を判定することである、姿勢判定方法を構成してもよい。
【0023】
この第6の形態によれば、移動体の停止が解除されて移動体の速度又は加速度が所定の閾値に達した時の移動ベクトルを用いて姿勢を判定する。移動体の停止が解除されてもすぐには姿勢判定を行わず、移動体の速度又は加速度がある程度の大きさとなった時点で姿勢判定を行うようにすることで、姿勢判定の正確性を向上させることができる。
【0024】
また、第7の形態として、第1〜第6の何れかの形態の姿勢判定方法を用いて前記姿勢を判定することと、前記姿勢と前記移動ベクトルとを用いて前記移動体の位置を算出することと、を含む位置算出方法を構成してもよい。
【0025】
この第7の形態によれば、上記の形態の姿勢判定方法を用いて判定した姿勢と移動ベクトルとを用いることで、移動体の位置を適切に算出することができる。
【0026】
また、第8の形態として、第7の形態の位置算出方法であって、前記位置を算出することは、前記移動ベクトルを用いて前記絶対座標系での前記移動体の絶対座標位置を算出することと、前記姿勢と前記絶対座標系で表した前記センサーの向きとを用いて、前記絶対座標位置を前記移動体を基準とする移動体座標位置に座標変換することと、前記移動体座標位置と、前記移動体の移動方向に関する第2の制約条件とを用いて、前記絶対座標位置を補正することと、を含む、位置算出方法を構成してもよい。
【0027】
この第8の形態によれば、移動ベクトルを用いて絶対座標系での移動体の絶対座標位置を算出する。例えば、絶対座標系での移動ベクトルを積分することで、移動体の位置を算出する。絶対座標系と移動体を基準とする座標系とを結び付けるためには、移動体に対するセンサーの相対的な姿勢と、絶対座標系で表したセンサーの向きとが必要となる。そこで、上記の形態の姿勢判定方法を用いて判定したセンサーの姿勢と、絶対座標系で表したセンサーの向きとを用いて、絶対座標位置を移動体座標位置に座標変換する。これにより、移動体を基準とする座標系での演算が可能となる。その上で、移動体座標位置と移動体の移動方向に関する第2の制約条件とを用いることで、移動体の絶対座標位置を適切に補正することができる。
【図面の簡単な説明】
【0028】
【図1】全体システムのシステム構成図。
【図2】第1の取付姿勢判定システムのシステム構成図。
【図3】第2の取付姿勢判定システムのシステム構成図。
【図4】第1の位置算出システムのシステム構成図。
【図5】第1の慣性航法システムのシステム構成図。
【図6】第2の位置算出システムのシステム構成図。
【図7】第2の慣性航法システムのシステム構成図。
【図8】従来の手法で位置算出を行ったシミュレーション結果の一例。
【図9】実施形態の手法で位置算出を行ったシミュレーション結果の一例。
【図10】カーナビゲーション装置の機能構成を示すブロック図。
【図11】処理部を機能ブロックとして表した概念図。
【図12】ナビゲーション処理の流れを示すフローチャート。
【図13】補正処理の流れを示すフローチャート。
【図14】従来のナビゲーション処理による位置算出の実験結果の一例。
【図15】実施例のナビゲーション処理による位置算出の実験結果の一例。
【図16】第2のナビゲーション処理の流れを示すフローチャート。
【図17】進行方向切替対応ロジックを適用しない場合の実験結果の一例。
【図18】進行方向切替対応ロジックを適用した場合の実験結果の一例。
【図19】変形例における処理部を機能ブロックとして表した概念図。
【図20】変形例における処理部を機能ブロックとして表した概念図。
【図21】第2の取付姿勢判定処理の流れを示すフローチャート。
【発明を実施するための形態】
【0029】
以下、図面を参照して、本発明の好適な実施形態の一例について説明する。但し、本発明を適用可能な実施形態が以下説明する実施形態に限定されるわけでないことは勿論である。
【0030】
1.原理
1−1.全体システム
図1は、本実施形態における姿勢判定方法及び位置算出方法に係る全体システムのシステム構成の一例を示す図である。全体システムは、センサー3が搭載された移動体を有するシステムとして構成される。移動体は、自転車や自動車(四輪自動車及びバイクを含む)、電車、飛行機、船等の何れでもよいが、本実施形態では四輪自動車として説明する。
【0031】
本実施形態では、3種類の座標系を定義する。第1の座標系は、センサー3に対応付けられたセンサー座標系であるローカル座標系である。本明細書では、ローカル座標系のことをL(Local)フレームとも言う。ローカル座標系は、センサー3に対応付けられた三次元直交座標系であり、本実施形態では、ローカル座標系の3軸をx軸、y軸及びz軸と表記する。
【0032】
第2の座標系は、移動体に対応付けられた移動体座標系である。本明細書では、移動体座標系のことをV(Vehicle)フレームとも言う。Vフレームは、例えば、移動体の前方を正とする前後方向をロール軸(R軸)、右方を正とする左右方向をピッチ軸(P軸)、鉛直下方を正とする上下方向をヨー軸(Q軸)とする三次元直交座標系として定義される。本実施形態では、移動体座標系の3軸をR軸、P軸及びQ軸と表記する。
【0033】
第3の座標系は、移動体の移動空間を定める座標系である絶対座標系である。本明細書では、絶対座標系のことをA(Absolute)フレームとも言う。Aフレームは、例えば、北東下座標系として知られるNED(North East Down)座標系や、地球中心地球固定座標系として知られるECEF(Earth Centered Earth Fixed)座標系として定義される。本実施形態では、絶対座標系の3軸をX軸、Y軸及びZ軸と表記する。
【0034】
センサー3は、移動体に搭載される各種のセンサーである。例えば、センサー3の計測結果を利用して自立的に位置算出や速度算出を行う慣性航法システムに適用する場合は、センサー3として、加速度センサー3Aや姿勢センサー3Bといった慣性航法用のセンサー(慣性センサー)が用いられる。
【0035】
加速度センサー3Aは、移動体の加速度をローカル座標系で検出するセンサーであり、例えばMEMS(Micro Electro Mechanical Systems)の技術を利用したMEMSセンサーが用いられる。加速度センサー3Aは移動体に固定される。加速度センサー3Aが計測した値は、ローカル座標系で計測した移動体の加速度となる。
【0036】
姿勢センサー3Bは、絶対座標系におけるセンサー3の向きである絶対姿勢を検出するためのセンサーであり、例えばジャイロセンサー3Cや磁気センサーといったセンサーが用いられる。姿勢センサー3Bは、ジャイロセンサー3Cや磁気センサー単体として構成してもよいし、これらを組み合わせて構成してもよい。また、加速度センサーを含んで姿勢センサー3Bを構成してもよい。姿勢センサー3Bは移動体に固定される。姿勢センサー3Bが計測した値は、絶対座標系で表したセンサー3の向きとなる。
【0037】
移動体の加速度や速度は、方向及び大きさを持っている。そのため、本明細書では、スカラーとベクトルとを適宜区別して説明する。原則として、加速度や速度と言ったときは加速度や速度の大きさ(スカラー量)を表すものとし、加速度ベクトルや速度ベクトルと言ったときは方向及び大きさを考慮した加速度及び速度を表すものとする。また、本実施形態では、移動体の加速度ベクトル及び速度ベクトルを総称して、移動体の「移動ベクトル」と呼ぶ。なお、各座標系において定義される諸量を明確にするため、各諸量を表す文言の先頭に座標系の種類を付して説明する。例えば、ローカル座標系で表した加速度ベクトルのことを「ローカル座標加速度ベクトル」と称し、絶対座標系で表した加速度ベクトルのことを「絶対座標加速度ベクトル」と称する。他の諸量についても同様である。
【0038】
また、センサー3の姿勢は、ロール角、ピッチ角及びヨー角といったオイラー角で表される。絶対座標系で表したセンサー3の向きを「絶対姿勢」と表現し、その姿勢角のことを「絶対姿勢角」と称する。また、移動体に対するセンサー3の相対的な姿勢(相対姿勢)のことを「取付姿勢」と表現し、その姿勢角(相対姿勢角)のことを「取付姿勢角」と称する。
【0039】
また、以下の説明で参照する図面については、各種のセンサー3のブロックを二重線で示し、センサー3の計測結果を利用して演算処理を行う処理ブロックを一重線で示す。一重線で示される処理ブロックは、センサー3に搭載されるプロセッサーや、電子機器に搭載されるプロセッサー(ホストプロセッサー)が処理主体となる処理ブロックである。なお、各処理ブロックの処理の主体は、本発明を適用するシステムに応じて適宜設定可能であるものとする。
【0040】
1−2.取付姿勢判定方法
本実施形態における取付姿勢判定方法について説明する。センサー3が移動体に取り付けられた場合に、移動体に対するセンサー3の相対的な姿勢である取付姿勢を判定することが1つの目的である。本実施形態では、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、センサー3の取付姿勢を判定する。前述したように、移動ベクトルには、速度ベクトルや加速度ベクトルが含まれる。そのため、本実施形態では、移動体が移動を開始した際に計測された速度ベクトルや加速度ベクトルを用いて、センサー3の取付姿勢を判定することになる。
【0041】
(1)第1の取付姿勢判定方法
図2は、第1の取付姿勢判定方法に係る第1の取付姿勢判定システム1A(第1の姿勢判定装置)のシステム構成図である。第1の取付姿勢判定システム1Aは、例えば、加速度センサー3Aと、ローカル座標速度ベクトル算出部5と、取付姿勢判定部10とを有する。
【0042】
ローカル座標速度ベクトル算出部5は、加速度センサー3Aから入力したローカル座標加速度ベクトルを積分及び継ぎ足し処理して、ローカル座標速度ベクトルを算出する。本実施形態において、「積分」とは、所定時間分の値を累積的に加算することを意味する。また、「継ぎ足す」とは、積分により得られた結果を最後に更新した結果に足し合わせることを意味する。
【0043】
具体的には、ローカル座標速度ベクトル算出部5は、所定時間分のローカル座標加速度ベクトルを積分することで、その所定時間の間におけるローカル座標系で表した速度ベクトルの変化分を算出する。そして、算出した速度ベクトルの変化分を最後に更新したローカル座標速度ベクトルに継ぎ足すことで、ローカル座標速度ベクトルを新たに算出・更新する。
【0044】
取付姿勢判定部10は、ローカル座標速度ベクトル算出部5から入力したローカル座標速度ベクトルを用いて取付姿勢を判定する。取付姿勢判定部10は、移動体が停止している状態から移動を開始した際に計測される速度ベクトルを用いて、移動体に対するセンサー3の姿勢(取付姿勢)を判定する。
【0045】
本実施形態では、移動体が停止している場合に、移動体の速度に関する制約条件(第1の制約条件)を用いて、センサー3の計測結果を補償する。移動体が停止しているのであれば、理想的には、移動体の速度ベクトルはゼロベクトルとなる。よって、移動体が停止している場合には、移動体の速度ベクトルの各成分がゼロであるとする運動モデルを適用することができる。但し、ここで言う移動体の速度ベクトルとは、移動体座標系(Vフレーム)での速度ベクトルである。
【0046】
上記の運動モデルに基づいて、移動体の速度ベクトルを補正する手法が適用可能である。具体的には、停止中は移動体の速度ベクトルの各成分がゼロであるとする停止時速度制約条件を与えて、例えばカルマンフィルター(KF(Kalman Filter))を利用して、センサー3の計測結果を補正する手法が挙げられる。
【0047】
カルマンフィルターは、時々刻々と変化する外部観測量を利用して、確率理論に基づいて系の状態を推定する推定手法の1つである。例えば、推定対象とする「状態」をセンサー3の計測結果に含まれる誤差とし、上記の速度制約条件を「観測情報」として利用して、センサー3の計測結果を補正する手法が考えられる。また、カルマンフィルター以外にも、上記の停止時速度制約条件に基づいて、センサー3の計測結果にリセットをかけるなどの手法も考えられる。つまり、停止時速度制約条件を用いて、センサー3をキャリブレーションするのである。
【0048】
上記のように、移動体が停止している場合に、移動体の速度に関する制約条件(第1の制約条件)を用いてセンサー3の計測結果を補償することで、センサー3の計測結果に含まれる誤差を低減させる(小さくする)ことができる。誤差が低減された状態で移動体が移動を開始すると、暫くの間は、センサー3の計測結果は誤差が低減された状態となる。そこで、本実施形態では、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、移動体に対するセンサー3の姿勢(取付姿勢)を判定する。
【0049】
ローカル座標系で表した速度ベクトル(ローカル座標速度ベクトル)と、移動体座標系で表した速度ベクトル(移動体座標速度ベクトル)との間には、次式(1)のような関係がある。
【数1】
【0050】
本明細書における数式では、速度ベクトルの成分を小文字の“v”で表す。また、速度ベクトルの表記において、座標系の種類を上付きの大文字の添え字で示す。“L”はローカル座標系、“V”は移動体座標系、“A”は絶対座標系をそれぞれ意味する。また、対応する座標系の各軸の成分を下付きの小文字の添え字で示す。例えば、ローカル座標系の3軸であれば“x”、“y”及び“z”の表記を用いる。
【0051】
また、本明細書では、座標変換行列を大文字の“C”で表す。各座標変換行列において、下付きの添え字は座標変換前の座標系を示し、上付きの添え字は座標変換後の座標系を示す。例えば、“CLV”は、ローカル座標系(Lフレーム)から移動体座標系(Vフレーム)への座標変換行列を示し、“CAL”は、絶対座標系(Aフレーム)からローカル座標系(Lフレーム)への座標変換行列を示す。
【0052】
ここで、移動体の移動方向に関する制約条件(第2の制約条件)を適用する。例えば、移動体が四輪自動車であれば、通常走行において四輪自動車はジャンプやドリフトすることはないと仮定することができる。つまり、移動体の縦横方向の速度成分はゼロであると仮定し、移動体座標系(Vフレーム)のQ軸方向及びP軸方向の速度成分はゼロであるとする制約条件を設定する。つまり、移動体の速度に関して{vPV=vQV=0}とする制約条件を設定する。
【0053】
この場合、式(1)から、取付姿勢のピッチ成分であるピッチ角“θ”及びヨー成分であるヨー角“Ψ”を、次式(2)及び(3)のように算出することができる。
【数2】
【数3】
【0054】
ピッチ角“θ”及びヨー角“Ψ”は、それぞれ移動体座標系のP軸及びQ軸回りのセンサー3の回転角を示す。つまり、ピッチ角“θ”及びヨー角“Ψ”は、移動体に対するセンサー3の相対的な姿勢角を表していると言える。
【0055】
なお、自動車が移動を開始した直後は、自動車の速度はゼロに近い値となる。この状態で式(2)及び(3)に従って取付姿勢角を算出すると、浮動小数点数同士の演算により、十分な演算精度が保証されない可能性がある。そこで、自動車が移動を開始してもすぐには取付姿勢角を算出せず、速度又は加速度がある程度大きくなった時点で、取付姿勢を判定すると効果的である。例えば、自動車のブレーキ制御が解除された直後から所定時間(1秒以下の時間として定められる。)経過時に取付姿勢を判定することとしたり、ブレーキ制御が解除された後に「1km/h以上20km/h以下」の所定速度に到達した際に取付姿勢を判定するなどすると効果的である。
【0056】
(2)第2の取付姿勢判定方法
図3は、第2の取付姿勢判定方法に係る第2の取付姿勢判定システム1B(第2の姿勢判定装置)のシステム構成図である。第2の取付姿勢判定システム1Bは、例えば、加速度センサー3Aと、姿勢センサー3Bと、LA座標変換行列算出部20と、絶対座標加速度ベクトル算出部30と、絶対座標速度ベクトル算出部40と、取付姿勢判定部10とを有する。本実施形態において、加速度センサー3A及び姿勢センサー3Bは、共通のローカル座標系での値を計測するように、例えば一体的に構成される。
【0057】
LA座標変換行列算出部20は、姿勢センサー3Bから入力したセンサー3の絶対姿勢角(絶対座標系で表したセンサー3の向き)を用いて、ローカル座標系から絶対座標系への座標変換行列(以下、「LA座標変換行列」と称する。)を算出する。なお、LA座標変換行列それ自体は公知であるため、数式等を用いた説明は省略する。
【0058】
絶対座標加速度ベクトル算出部30は、LA座標変換行列算出部20から入力したLA座標変換行列を用いて、加速度センサー3Aから入力したローカル座標加速度ベクトルを絶対座標加速度ベクトルに座標変換する。
【0059】
絶対座標速度ベクトル算出部40は、絶対座標加速度ベクトル算出部30から入力した絶対座標加速度ベクトルを積分及び継ぎ足し処理することで、絶対座標速度ベクトルを算出する。つまり、所定時間分の絶対座標加速度ベクトルを積分することで、その所定時間の間の移動体の速度ベクトルの変化分を算出する。そして、算出した速度ベクトルの変化分を最後に更新した絶対座標速度ベクトルに継ぎ足すことで、絶対座標速度ベクトルを新たに算出・更新する。
【0060】
取付姿勢判定部10は、絶対座標速度ベクトル算出部40から入力した絶対座標速度ベクトルと、姿勢センサー3Bから入力した絶対姿勢角とを用いて、加速度センサー3Aの取付姿勢を判定する。取付姿勢判定部10は、絶対座標系からローカル座標系への座標変換行列(以下、「AL座標変換行列」と称す。)を算出するAL座標変換行列算出部11を機能部として有する。
【0061】
絶対座標系で表した速度ベクトル(絶対座標速度ベクトル)と、移動体座標系で表した速度ベクトル(移動体座標速度ベクトル)との間には、次式(4)のような関係がある。
【数4】
【0062】
但し、“CAL”はAL座標変換行列を示す。また、“CLV”はローカル座標系(Lフレーム)から移動体座標系(Vフレーム)への座標変換行列(以下、「LV座標変換行列」と称す。)を示す。
【0063】
式(4)から、絶対座標系と移動体座標系とを結び付けるためには、2段階の座標変換が必要であることがわかる。つまり、第1段階として、AL座標変換行列“CAL”を用いて、絶対座標速度ベクトルをローカル座標速度ベクトルに座標変換する。その後、第2段階として、LV座標変換行列“CLV”を用いて、ローカル座標速度ベクトルを移動体座標速度ベクトルに座標変換する。
【0064】
AL座標変換行列“CAL”は、絶対座標系で表したセンサー3の向き(絶対姿勢)により定まる行列であり、LA座標変換行列算出部20により算出されるLA座標変換行列の逆行列である。この場合、AL座標変換行列を用いて絶対座標速度ベクトルをローカル座標速度ベクトルに座標変換すると、式(4)は式(1)と一致する。つまり、次式(5)が成立するため、式(4)及び式(5)から、式(1)が導出される。
【数5】
【0065】
このように式(1)を導出することができるため、第1の取付姿勢判定方法と同様に、取付姿勢を判定することができる。つまり、移動体座標系(Vフレーム)において、Q軸方向及びP軸方向(縦横方向)の速度成分はゼロであるとする制約条件{vPV=vQV=0}に基づき、式(2)及び(3)に従って取付姿勢角を算出する。
【0066】
上記を実現するため、取付姿勢判定部10のAL座標変換行列算出部11は、姿勢センサー3Bから入力した絶対姿勢角を用いて、AL座標変換行列を算出する。そして、取付姿勢判定部10は、絶対座標速度ベクトル算出部40から入力した絶対座標速度ベクトルを、AL座標変換行列算出部11により算出されたAL座標変換行列を用いてローカル座標速度ベクトルに座標変換する。そして、最終的に、ローカル座標速度ベクトルを用いて、式(2)及び式(3)に従って取付姿勢角を算出する。
【0067】
1−3.位置算出方法
次に、上記の取付姿勢判定方法を用いて判定したセンサー3の取付姿勢と、移動ベクトルとを用いて、移動体の位置を算出する位置算出方法について説明する。
【0068】
(1)第1の位置算出方法
図4は、第1の位置算出方法に係る第1の位置算出システム2A(第1の位置算出装置)のシステム構成図である。第1の位置算出システム2Aは、例えば、第1の慣性航法システム(第1のINS(Inertial Navigation System))4Aと、取付姿勢判定部10と、移動状況判定部60と、速度制約条件設定部70と、LV座標変換行列算出部80と、補正部90とを有する。
【0069】
第1の慣性航法システム4Aは、INSとして知られる慣性航法システムであり、そのシステム構成の一例を図5に示す。第1の慣性航法システム4Aは、例えば、加速度センサー3Aと、ジャイロセンサー3Cと、ローカル座標速度ベクトル算出部5と、絶対姿勢判定部15と、LA座標変換行列算出部20と、絶対座標加速度ベクトル算出部30と、絶対座標速度ベクトル算出部40と、絶対座標位置算出部50とを有する。
【0070】
ローカル座標速度ベクトル算出部5は、加速度センサー3Aから入力したローカル座標加速度ベクトルを積分及び継ぎ足し処理することで、ローカル座標速度ベクトルを算出する。
【0071】
絶対姿勢判定部15は、ジャイロセンサー3Cから入力したローカル座標角速度を積分及び継ぎ足し処理することで、絶対姿勢角を判定する。具体的には、絶対座標系で表したセンサー3の所与の基準姿勢からの姿勢角変化分を、ジャイロセンサー3Cから入力したローカル座標角速度を積分することで算出する。そして、基準姿勢に姿勢角変化分を継ぎ足すことで、絶対姿勢角を新たに算出・更新する。
【0072】
LA座標変換行列算出部20、絶対座標加速度ベクトル算出部30及び絶対座標速度ベクトル算出部40は、図3と同様に、それぞれLA座標変換行列、絶対座標加速度ベクトル及び絶対座標速度ベクトルを算出する。
【0073】
絶対座標位置算出部50は、絶対座標速度ベクトル算出部40から入力した絶対座標速度ベクトルを積分及び継ぎ足し処理することで、移動体の絶対座標位置を算出する。つまり、所定時間分の絶対座標速度ベクトルを積分することで、その所定時間の間における位置変化分を算出する。そして、算出した位置変化分を最後に更新した絶対座標位置に継ぎ足すことで、絶対座標位置を新たに算出・更新する。
【0074】
第1の慣性航法システム4Aからは、ローカル座標速度ベクトル算出部5により算出されたローカル速度ベクトルと、絶対姿勢判定部15により算出された絶対姿勢角と、絶対座標速度ベクトル算出部40により算出された絶対座標速度ベクトルと、絶対座標位置算出部50により算出された絶対座標位置とが出力される。
【0075】
図4の説明に戻り、取付姿勢判定部10は、第1の慣性航法システム4Aから入力したローカル座標速度ベクトルを用いて、移動体に対する第1の慣性航法システム4Aの取付姿勢を判定する。
【0076】
移動状況判定部60は、移動体の移動状況を判定する。移動体の移動状況判定は、種々の手法により実現可能である。例えば、慣性航法システムが具備する加速度センサー3Aやジャイロセンサー3Cの計測結果を利用して判定を行う方法が挙げられる。また、移動体が自動車である場合には、自動車に搭載される車速検出システム(例えば車速パルス)により計測された車速を利用して、移動体の移動状況を判定してもよい。
【0077】
速度制約条件設定部70は、移動状況判定部60から入力した移動状況に基づいて、補正部90に適用する速度制約条件を設定する。本実施形態では、移動体の停止時における速度制約条件である「停止時速度制約条件」と、移動体の移動時における速度制約条件である「移動時速度制約条件」との2種類の速度制約条件を切り替えて設定する。
【0078】
停止時速度制約条件は、移動体の速度に関する第1の制約条件であり、移動体の停止時に適用する制約条件である。詳細には、移動体の停止時には、移動体の速度ベクトルはゼロベクトルになるという仮定に基づき設定される制約条件である。この停止時速度制約条件を適用する座標系は任意であるが、例えば絶対座標系で適用することが考えられる。この場合は、例えば{vXA=vYA=vZA=0}を制約条件として与える。
【0079】
移動時速度制約条件は、移動体の移動方向に関する第2の制約条件であり、移動体の移動時に適用する制約条件である。前述したように、移動体が四輪自動車であれば、通常走行時において移動体はジャンプやドリフトすることはないとする仮定に基づき設定される制約条件である。この場合は、例えば{vPV=vQV=0}を制約条件として与える。この制約条件は、移動体座標系において有効な条件である。
【0080】
LV座標変換行列算出部80は、取付姿勢判定部10から入力した取付姿勢角を用いて、ローカル座標系から移動体座標系への座標変換行列(以下、「LV座標変換行列」と称する。)を算出する。なお、LV座標変換行列それ自体は公知であるため、数式等を用いた説明は省略する。
【0081】
補正部90は、第1の慣性航法システム4Aから入力した慣性航法演算結果を補正する。補正部90は、慣性航法演算結果のうち、少なくとも絶対座標位置を補正するように構成されていればよい。つまり、少なくとも絶対座標位置に対して誤差推定演算を行い、推定した位置誤差を用いて絶対座標位置を推定するように構成されていればよい。
【0082】
本実施形態では、補正部90が、絶対座標位置だけではなく、絶対座標速度ベクトル及び絶対姿勢角も併せて補正する場合を例示する。補正部90は、誤差推定部91と、AL座標変換行列算出部93とを有する。
【0083】
誤差推定部91は、第1の慣性航法システム4Aから入力した慣性航法演算結果に含まれる誤差(以下、「慣性航法演算誤差」と称す。)を、所定の誤差推定演算を行うことで推定する。慣性航法演算誤差の推定方法としては種々の手法を適用可能であるが、典型的な手法としては、カルマンフィルターを適用することができる。
【0084】
具体的には、状態ベクトル“X”を、例えば次式(6)のように設定する。
【数6】
但し、“δP”、“δV”及び“δA”は、それぞれ絶対座標位置の誤差(位置誤差)、絶対座標速度ベクトルの誤差(速度ベクトル誤差)及び絶対姿勢角の誤差(姿勢角誤差)である。
【0085】
移動体の停止時には、停止時速度制約条件に従って、例えば次式(7)のような停止時観測ベクトル“Zstop”を設定する。また、移動体の移動時には、移動時速度制約条件に従って、例えば次式(8)のような移動時観測ベクトル“Zmove”を設定する。
【数7】
【数8】
【0086】
但し、式(8)において、|V|は速度の大きさを示す。速度の大きさは、慣性航法演算で得られた絶対座標速度ベクトルの大きさ(スカラー)として計算してもよいし、車速検出システム等の外部システムから取得した速度の大きさとして計算してもよい。
【0087】
上記のように状態ベクトル“X”及び観測ベクトル“Z”を設定し、カルマンフィルターの理論に基づく予測演算(時刻更新)及び補正演算(観測更新)を行って、状態ベクトル“X”の推定値(状態推定値)を求める。
【0088】
上記の定義式において、状態ベクトル“X”は、絶対座標系で表した慣性航法演算誤差として定義されている。停止時観測ベクトル“Zstop”は絶対座標系で定義されているため、同じ座標系での演算が可能である。しかし、移動時観測ベクトル“Zmove”は移動体座標系で定義されているため、同じ座標系での演算が困難である。
【0089】
そこで、AL座標変換行列算出部93は、第1の慣性航法システム4Aから入力した絶対姿勢角を用いて、AL座標変換行列を算出する。そして、算出したAL座標変換行列と、LV座標変換行列算出部80から入力したLV座標変換行列とを用いて、絶対座標系で表した状態ベクトル“X”を、移動体座標系で表した状態ベクトル“X”に座標変換する。つまり、2種類の座標変換行列を用いて、状態ベクトル“X”に2段階の座標変換を施すことになる。
【0090】
同様に、AL座標変換行列及びLV座標変換行列を用いて、慣性航法演算結果である絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角を、それぞれ移動体座標系で表した移動体座標位置、移動体座標速度ベクトル及び移動体姿勢角に座標変換する。つまり、2種類の座標変換行列を用いて、慣性航法演算結果に2段階の座標変換を施すことになる。
【0091】
移動体座標系に座標変換した状態ベクトル“X”に対して、移動体座標系で定義した移動時観測ベクトル“Zmove”を適用して、カルマンフィルターを利用した誤差推定演算を行って慣性航法演算誤差を推定する。そして、移動体座標系で推定された慣性航法演算誤差を用いて、上記の移動体座標位置、移動体座標速度ベクトル及び移動体姿勢角をそれぞれ補正する。そして、移動体座標系から絶対座標系に再変換することで、最終的な補正結果を得る。
【0092】
補正部90から出力される補正位置、補正速度ベクトル及び補正姿勢角は、第1の慣性航法システム4Aにフィードバックされる。第1の慣性航法システム4Aでは、補正部90から入力した補正位置、補正速度ベクトル及び補正姿勢角を用いて、それぞれ絶対座標位置算出部50、絶対座標速度ベクトル算出部40及び絶対姿勢判定部15により算出された絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角が補正される。
【0093】
(2)第2の位置算出方法
図6は、第2の位置算出方法に係る第2の位置算出システム2B(第2の位置算出装置)のシステム構成図である。第2の位置算出システム2Bは、例えば、第2の慣性航法システム(第2のINS)4Bと、取付姿勢判定部10と、移動状況判定部60と、速度制約条件設定部70と、LV座標変換行列算出部80と、補正部90とを有する。
【0094】
図7は、第2の慣性航法システム4Bのシステム構成の一例を示す図である。第2の慣性航法システム4Bは、加速度センサー3Aと、ジャイロセンサー3Cと、絶対姿勢判定部15と、LA座標変換行列算出部20と、絶対座標加速度ベクトル算出部30と、絶対座標速度ベクトル算出部40と、絶対座標位置算出部50とを有する。図5の第1の慣性航法システム4Aにおいて、ローカル座標速度ベクトル算出部5を除いた構成である。
【0095】
第2の慣性航法システム4Bからは、絶対姿勢判定部15により算出された絶対姿勢角と、絶対座標速度ベクトル算出部40により算出された絶対座標速度ベクトルと、絶対座標位置算出部50により算出された絶対座標位置とが出力される。
【0096】
図6の説明に戻り、取付姿勢判定部10は、第2の慣性航法システム4Bから入力した絶対座標速度ベクトルを用いて、移動体に対する第2の慣性航法システム4Bの取付姿勢を判定する。取付姿勢判定部10は、AL座標変換行列算出部11を機能部として有し、図3の第2の取付姿勢判定システム1Bと同様に、取付姿勢を判定する。
【0097】
補正部90は、取付姿勢判定部10から入力した取付姿勢角及びAL座標変換行列と、速度制約条件設定部70から入力した速度制約条件と、LV座標変換行列算出部80から入力したLV座標変換行列とを用いて、第2の慣性航法システム4Bから入力した慣性航法演算結果を補正する。補正部90は、誤差推定部91を機能部として有する。
【0098】
補正部90からは、慣性航法演算結果に対する補正結果である補正位置、補正速度ベクトル及び補正姿勢角が出力される。また、これらの補正結果は、第2の慣性航法システム4Bにフィードバックされる。第2の慣性航法システム4Bは、補正部90から入力した補正結果を利用して、慣性航法演算結果を補正する。
【0099】
1−4.シミュレーション結果
上記の位置算出方法の有効性を示すために、移動体の位置算出を行うシミュレーション実験を行った結果について説明する。設置ずれが生ずるようにセンサー3を移動体に取り付け、上記の位置算出方法を用いて移動体の位置を算出するシミュレーション実験を行った。
【0100】
図8は、従来の手法を用いたシミュレーション結果を示す。それに対し、図9は、本実施形態の手法を用いたシミュレーション結果を示す。各図において、横軸は東西方向、縦軸は南北方向を示し、単位はメートル[m]である。東西方向“0m”、南北方向“0m”の位置をスタート地点とし、大きく反時計回り方向に1周周回するようなダイヤ型の経路を辿った。ゴール地点はスタート地点と同じである。移動体の真の軌跡を破線で示し、算出した位置の軌跡を実線で示す。
【0101】
図8を見ると、従来の手法を用いた場合は、重大な位置誤差が生じていることがわかる。つまり、ダイヤ型の軌跡に沿って位置が算出されるどころか、スタート直後から東方向に向かって位置が逸れていき、最終的には、ゴール地点から程遠い位置をゴール地点と判定していることがわかる。これは、センサー3の取付姿勢を判定せずに位置算出を行った結果である。つまり、ローカル座標系と移動体座標系とが一致していないにも関わらず、移動体座標系で定義される移動時速度制約条件(第2の制約条件)を適用して位置算出を行ったために、当初から誤った方向に位置が算出され、時間経過に伴って誤差が累積的に増加した結果である。
【0102】
それに対し、図9を見ると、本実施形態の手法を用いた場合は、ダイヤ型の真の軌跡に沿ったほぼ正確な軌跡が得られていることがわかる。これは、センサー3の取付姿勢を可能な限り正確に判定して、位置算出を行うことができた結果である。つまり、センサー3の取付姿勢を判定した上で、ローカル座標系と移動体座標系とのズレ分を考慮して移動体座標系への座標変換を行い、移動体座標系で定義される移動時速度制約条件を適用して位置算出を行ったため、このような良好な結果が得られたのである。
【0103】
2.実施例
次に、上記の姿勢判定方法及び位置算出方法を適用したナビゲーションシステムの実施例について説明する。但し、本発明を適用可能な実施例が以下説明する実施例に限定されるわけではないことは勿論である。
【0104】
本実施例におけるナビゲーションシステムは、移動体の一種である四輪自動車(以下、単に「自動車」と称す。)に、原理で説明した取付姿勢判定システム(姿勢判定装置)及び位置算出システム(位置算出装置)を適用したカーナビゲーション装置1000が設置されたシステムとして構成される。
【0105】
カーナビゲーション装置1000は、自動車に搭載される電子機器であり、加速度センサー3A及びジャイロセンサー3Cを有するセンサーユニットとしてIMU(Inertial Measurement Unit)400を具備している。IMU400は、慣性計測ユニットとして知られるセンサーユニットであり、ローカル座標系で表した加速度ベクトル及び角速度を計測して出力可能に構成されている。
【0106】
カーナビゲーション装置1000は、IMU400の計測結果を利用して慣性航法演算処理を行うことで、絶対座標系での自動車の位置を算出する。本実施例では、絶対座標系としてNED座標系を適用する場合について説明する。つまり、カーナビゲーション装置1000は、NED座標系での自動車の位置を算出する。そして、カーナビゲーション装置1000は、算出位置をプロットしたナビゲーション画面を生成し、当該ナビゲーション画面を表示部300であるディスプレイに表示させる。
【0107】
2−1.機能構成
図10は、カーナビゲーション装置1000の機能構成の一例を示すブロック図である。カーナビゲーション装置1000は、主要な機能構成として、処理部100と、操作部200と、表示部300と、IMU400と、記憶部500とを備えて構成される。
【0108】
処理部100は、記憶部500に記憶されているシステムプログラム等の各種プログラムに従ってカーナビゲーション装置1000の各部を統括的に制御する制御装置であり、CPU(Central Processing Unit)等のプロセッサーを有して構成される。処理部100は、IMU400の計測結果を利用した慣性航法演算処理を行って自動車の位置等を算出する。処理部100は、自動車に対するIMU400の姿勢を判定する姿勢判定装置として機能するとともに、自動車の位置を算出する位置算出装置として機能する。
【0109】
図11は、処理部100に係る機能ブロックを中心に示したブロック図である。処理部100は、慣性航法演算部105と、取付姿勢判定部110と、移動状況判定部160と、速度制約条件設定部170と、LV座標変換行列算出部180と、補正部190とを機能部として有する。
【0110】
慣性航法演算部105は、IMU400から入力したローカル座標加速度ベクトル及びローカル座標角速度を用いて、慣性航法演算処理を行って自動車のNED座標位置、NED座標速度ベクトル及び絶対姿勢角を算出する。
【0111】
補正部190は、取付姿勢判定部110から入力したIMU400の取付姿勢角と、速度制約条件設定部170から入力した速度制約条件とを用いて、慣性航法演算部105から入力したNED座標位置、NED座標速度ベクトル及び絶対姿勢角を補正する。補正部190は、KF誤差推定部191と、NL座標変換行列193とを機能部として有する。
【0112】
KF誤差推定部191は、カルマンフィルターを利用してNED座標系での慣性航法演算結果に含まれる慣性航法演算誤差を推定する。
【0113】
NL座標変換行列算出部193は、慣性航法演算部105から入力した絶対姿勢角を用いて、NED座標系からローカル座標系への座標変換行列(以下、「NL座標変換行列」と称す。)を算出する。
【0114】
図10の説明に戻り、操作部200は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号を処理部100に出力する。この操作部200の操作により、目的地の入力等の各種指示入力がなされる。
【0115】
表示部300は、LCD(Liquid Crystal Display)等により構成され、処理部100から入力される表示信号に基づいた各種表示を行う表示装置である。表示部300には、ナビゲーション画面等が表示される。
【0116】
IMU400は、慣性計測ユニットとして知られるセンサーユニットであり、例えば加速度センサー3A及びジャイロセンサー3Cを有して構成される。
【0117】
記憶部500は、ROM(Read Only Memory)やフラッシュROM、RAM(Random Access Memory)等の記憶装置によって構成され、カーナビゲーション装置1000のシステムプログラムや、ナビゲーション機能等の各種機能を実現するための各種プログラム、データ等を記憶している。また、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを有する。
【0118】
2−2.データ構成
図10に示すように、記憶部500には、プログラムとして、処理部100により読み出され、ナビゲーション処理(図12参照)として実行されるナビゲーションプログラム510が記憶されている。ナビゲーションプログラム510は、補正処理(図13参照)として実行される補正プログラム511をサブルーチンとして含む。これらの処理については、フローチャートを用いて詳細に後述する。
【0119】
また、記憶部500には、データとして、速度制約条件520と、IMU計測データ530と、慣性航法演算データ540と、取付姿勢データ550と、座標変換行列データ560と、推定誤差データ570と、補正慣性航法演算データ580とが記憶される。
【0120】
速度制約条件520は、自動車の移動状況に応じた速度の制約条件であり、停止時速度制約条件521と、移動時速度制約条件523とがこれに含まれる。
【0121】
IMU計測データ530は、IMU400の計測結果のデータである。加速度センサー3Aにより計測されたローカル座標加速度ベクトルと、ジャイロセンサー3Cにより計測されたローカル座標角速度とが時系列に記憶される。
【0122】
慣性航法演算データ540は、処理部100がIMU400の計測結果を利用して慣性航法演算処理を行うことで算出したNED座標位置、NED座標速度ベクトル及び絶対姿勢角のデータである。
【0123】
取付姿勢データ550は、処理部100により算出されたIMU400の取付姿勢角が記憶されたデータである。座標変換行列データ560は、処理部100が算出した各種の座標変換行列が記憶されたデータである。
【0124】
推定誤差データ570は、処理部100がKF誤差推定演算を行って推定した慣性航法演算誤差が記憶されたデータである。また、補正慣性航法演算データ580は、処理部100が、慣性航法演算誤差を用いて慣性航法演算結果を補正したデータである。
【0125】
2−3.処理の流れ
図12は、記憶部500に記憶されているナビゲーションプログラム510が処理部100により読み出されて実行されることで、カーナビゲーション装置1000において実行されるナビゲーション処理の流れを示すフローチャートである。以下のナビゲーション処理では、IMU400により計測されたローカル座標加速度ベクトル及びローカル座標角速度が、記憶部500のIMU計測データ530に随時記憶されるものとする。
【0126】
最初に、処理部100は、初期設定を行う(ステップA1)。例えば、カルマンフィルターで利用する各種パラメーター値の初期設定を行う。また、自動車が停止している状態であるとして停止時速度制約条件521を「ON」に設定し、移動時速度制約条件523を「OFF」に設定する。
【0127】
次いで、慣性航法演算部105が、慣性航法演算処理を開始する(ステップA3)。つまり、慣性航法演算部105は、IMU計測データ530に記憶されているIMU400の計測データを利用して慣性航法演算処理を行う。そして、その結果を慣性航法演算データ540として記憶部500に記憶させる。
【0128】
その後、補正部190は、記憶部500に記憶されている補正プログラム511に従って補正処理を開始する(ステップA5)。
【0129】
図13は、補正処理の流れを示すフローチャートである。
先ず、KF誤差推定部191は、移動時速度制約条件523が「ON」に設定されているか否かを判定する(ステップB1)。そして、移動時速度制約条件523が「ON」に設定されていると判定した場合は(ステップB1;Yes)、NL座標変換行列算出部193が、最新の絶対姿勢角を用いてNL座標変換行列を算出し、記憶部500の座標変換行列データ560に記憶させる(ステップB3)。
【0130】
次いで、KF誤差推定部191は、ステップB3で算出したNL座標変換行列を用いて、NED座標速度ベクトルを移動体座標速度ベクトルに変換する(ステップB5)。そして、KF誤差推定部191は、移動時制約速度ベクトルと、移動体座標速度ベクトルとの差を算出して、移動時観測ベクトルとする(ステップB7)。
【0131】
その後、KF誤差推定部191は、KF誤差推定処理を行う(ステップB9)。すなわち、ステップB7で設定した移動時観測ベクトルを観測情報として、予測演算及び補正演算を行って慣性航法演算誤差を推定する。そして、KF誤差推定部191は、推定した慣性航法演算誤差を用いて慣性航法演算結果を補正し、その結果を記憶部500の補正慣性航法演算データ580に記憶させた後(ステップB11)、ステップB1に戻る。
【0132】
また、ステップB1において移動時速度制約条件523が「ON」に設定されていないと判定した場合は(ステップB1;No)、KF誤差推定部191は、停止時速度制約条件521が「ON」に設定されているか否かを判定する(ステップB13)。そして、「ON」に設定されていると判定したならば(ステップB13;Yes)、KF誤差推定部191は、停止時制約速度ベクトルと、NED座標速度ベクトルとの差を算出して、停止時観測ベクトルとする(ステップB15)。
【0133】
その後、KF誤差推定部191は、KF誤差推定処理を行う(ステップB17)。すなわち、ステップB15で設定した停止時観測ベクトルを観測情報として、予測演算及び補正演算を行って慣性航法演算誤差を推定する。そして、KF誤差推定部191は、推定した慣性航法演算誤差を用いて慣性航法演算結果を補正し、その結果を記憶部500の補正慣性航法演算データ580に記憶させた後(ステップB19)、ステップB1に戻る。
【0134】
また、ステップB13において停止時速度制約条件521が「ON」に設定されていないと判定した場合は(ステップB13;No)、補正部190は、ステップB1に戻る。
【0135】
図12の説明に戻り、ステップA5において補正処理を開始したならば、移動状況判定部160は、自動車の移動状況を判定する(ステップA7)。そして、処理部100は、自動車が停止状態から移動を開始したか否かを判定する(ステップA9)。例えば、自動車のブレーキ制御の解除信号を外部入力したり、車速情報を外部入力する等して判定する。
【0136】
自動車が移動を開始したと判定した場合は(ステップA9;Yes)、速度制約条件設定部170は、停止時速度制約条件521を「OFF」に設定する(ステップA11)。そして、処理部100は、所定の取付姿勢判定発動条件が成立したか否かを判定する(ステップA13)。取付姿勢判定発動条件は、原理でも説明したように、取付姿勢の判定精度を保証するために定める条件である。例えば、移動体の停止が解除された後、移動体の速度又は加速度が所定の閾値に達することを発動条件として定めておくと好適である。
【0137】
ステップA13において、未だ取付姿勢判定発動条件が成立していないと判定した場合は(ステップA13;No)、処理部100は、ステップA27へと処理を移行する。取付姿勢判定発動条件が成立したと判定した場合は(ステップA13;Yes)、取付姿勢判定部110は、取付姿勢判定処理を行う(ステップA15)。つまり、最新のローカル座標速度ベクトルを用いて、式(2)及び式(3)に従って取付姿勢角を算出し、記憶部500の取付姿勢データ550を更新する。
【0138】
次いで、処理部100は、ステップA15で算出した取付姿勢角を用いてLV座標変換行列を算出し、記憶部500の座標変換行列データ560を更新する(ステップA17)。そして、処理部100は、移動時速度制約条件523を「ON」に設定する(ステップA19)。
【0139】
一方、ステップA9において自動車が移動を開始したことを検知しなかった場合は(ステップA9;No)、処理部100は、自動車が移動状態から停止状態に変化したか否かを判定する(ステップA21)。停止状態に変化しなかったと判定した場合は(ステップA21;No)、処理部100は、ステップA27に移行する。
【0140】
また、自動車が移動状態から停止状態に変化したと判定した場合は(ステップA21;Yes)、処理部100は、移動時速度制約条件523を「OFF」に設定するとともに(ステップA23)、停止時速度制約条件521を「ON」に設定する(ステップA25)。そして、処理部100は、ステップA27に移行する。
【0141】
処理部100は、位置の出力タイミングであるか否かを判定し(ステップA27)、出力タイミングではないと判定した場合は(ステップA27;No)、ステップA31へと処理を移行する。また、出力タイミングであると判定した場合は(ステップA27;Yes)、処理部100は、最新の補正位置を出力する(ステップA29)。つまり、最新の補正位置に対してマップマッチング処理等を行い、表示部300のナビゲーション画面を更新する。
【0142】
次いで、処理部100は、ナビゲーション処理を終了するか否かを判定する(ステップA31)。例えば、操作部200を介してユーザーによりナビゲーションの終了指示操作がなされた場合に、ナビゲーション処理を終了すると判定する。そして、まだ処理を終了しないと判定した場合は(ステップA31;No)、処理部100は、ステップA7に戻る。また、処理を終了すると判定した場合は(ステップA31;Yes)、処理部100は、ナビゲーション処理を終了する。
【0143】
2−4.実験結果
上記のカーナビゲーション装置1000を自動車に搭載し、実際に自動車を走行させて位置を算出する実験を行った。具体的には、上記のナビゲーション処理に従って自動車の位置を算出し、その位置をプロットする実験を行った。
【0144】
図14は、従来のカーナビゲーション装置1000による実験結果を示す。それに対し、図15は、本実施例のカーナビゲーション装置1000による実験結果を示す。但し、何れの場合もマップマッチング機能はオフとしている。図の見方は、図8及び図9のシミュレーション結果と同じであるが、実際に走行実験を行った結果であるため、経路が異なっている。東西方向“0m”、南北方向“0m”の位置をスタート地点とし、東方向“12000m”、南方向“10000m”の近傍位置をゴール地点として、スタート地点からゴール地点まで自動車を実際に走行させた。
【0145】
この結果を見ると、図14の従来のカーナビゲーション装置1000による実験結果では、図8のシミュレーション結果と同様に、スタート直後から誤った方向に位置が算出され、最終的には、ゴール地点から程遠い位置をゴール地点と判定している。それに対し、図15の本実施例のカーナビゲーション装置1000による実験結果では、図9のシミュレーション結果と同様に、ほぼ真の軌跡に沿った正確な軌跡が得られていることがわかる。これにより、実環境においても、本実施形態の位置算出方法は有効であることが示された。
【0146】
3.作用効果
本実施形態によれば、移動体に設置されたセンサー3により移動ベクトルが計測される。そして、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、移動体に対するセンサー3の姿勢が判定される。
【0147】
第1の取付姿勢判定システム1Aでは、ローカル座標速度ベクトル算出部5が、加速度センサー3Aが計測したローカル座標加速度ベクトルを用いてローカル座標速度ベクトルを算出する。そして、取付姿勢判定部10が、移動体が移動を開始した際のローカル座標速度ベクトルを用いて、加速度センサー3Aの取付姿勢のうちのピッチ成分及びヨー成分を判定する。
【0148】
また、第2の取付姿勢判定システム1Bでは、LA座標変換行列算出部20が、姿勢センサー3Bが計測した絶対座標系で表したセンサー3の向き(絶対姿勢)を用いて、ローカル座標系から絶対座標系への座標変換行列(LA座標変換行列)を算出する。そして、絶対座標加速度ベクトル算出部30が、加速度センサー3Aが計測したローカル座標加速度ベクトルを、LA座標変換行列を用いて絶対座標加速度ベクトルに座標変換する。さらに、絶対座標速度ベクトル算出部40は、絶対座標加速度ベクトルを用いて絶対座標速度ベクトルを算出する。取付姿勢判定部10は、姿勢センサー3Bが計測した絶対座標系で表したセンサー3の向きを用いて絶対座標系からローカル座標系への座標変換行列(AL座標変換行列)を算出し、当該AL座標変換行列と、絶対座標速度ベクトルとを用いて、加速度センサー3Aの取付姿勢のうちのピッチ成分及びヨー成分を判定する。
【0149】
また、移動体が停止している際には、センサー3の計測結果を補償するための補償演算を行う。例えば、移動体が停止している場合は、移動体の速度ベクトルの各成分はゼロであるとする制約条件(第1の制約条件)を用いて、センサー3の計測結果を補償する。これにより、移動体の停止中は、センサー3の計測結果に含まれる誤差を低減させることができる。誤差が低減された状態で移動体が移動を開始しても、それほど時間が経過していなければ、移動体の速度ベクトルの誤差は抑制されているはずである。そのため、移動体が移動を開始した際の速度ベクトルを利用することで、移動体に対するセンサー3の相対的な姿勢を正しく判定することができる。
【0150】
また、第1の位置算出システム2Aでは、第1の慣性航法システム4Aの慣性航法演算結果(絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角)が、補正部90によって補正される。補正部90は、取付姿勢判定部10により判定された第1の慣性航法システム4Aの取付姿勢と、速度制約条件設定部70により設定された停止時速度制約条件(第1の制約条件)又は移動時速度制約条件(第2の制約条件)と、LV座標変換行列算出部80により算出されたLV座標変換行列とを用いて、所定の誤差推定演算を行って慣性航法演算誤差を推定する。そして、推定した慣性航法演算誤差を用いて慣性航法演算結果を補正する。また、第2の位置算出システム2Bにおいても同様に、第2の慣性航法システム4Bの慣性航法演算結果(絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角)が、補正部90によって補正される。
【0151】
このように、第1又は第2の取付姿勢判定方法を用いて判定したセンサー3の取付姿勢と、センサー3が計測した移動ベクトル(加速度ベクトルや速度ベクトル)とを用いることで、ローカル座標系と移動体座標系とのズレ分を考慮し、この2種類の座標系の座標変換を適切に行って、移動体の位置をより正確に算出することができる。
【0152】
4.変形例
本発明を適用可能な実施例は、上記の実施例に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能であることは勿論である。以下、変形例について説明するが、上記の実施例と同一の構成要素については同一の符号を付して説明を省略し、上記の実施例とは異なる部分を中心に説明する。
【0153】
4−1.進行方向切替対応ロジック
上記の実施形態では、移動体が移動を開始した際に求めたLV座標変換行列を用いて位置算出を行うものとして説明した。しかし、移動体は必ずしも進行方向前方にのみ移動するとは限らない。例えば、移動体が四輪自動車であるならば、四輪自動車は前方に進行するに限らず、後方に進行する(バックする)場合もあり得る。
【0154】
従って、移動体の進行方向が前進と後進とで切り替わる場合、進行方向の変化の前後で同じLV座標変換行列を用いて計算を行ったのでは、移動体の速度や位置が適切に求まらないことが想定される。なぜならば、本実施形態の手法では、移動体が移動を開始した際の移動体の移動方向に対する移動ベクトルを用いてセンサー3の取付姿勢を判定するため、移動体の移動方向が逆転してしまうと、取付姿勢と移動方向との間で辻褄が合わなくなるためである。
【0155】
上記の問題に鑑み、次のような進行方向切替対応ロジックを適用すると好適である。具体的には、例えば移動体座標系での移動体の速度ベクトルに基づいて、移動体の移動方向が逆転したか否かを判定する。そして、移動体の移動方向が逆転した場合に、移動開始時に求めて記憶しておいたLV座標変換行列を180°回転させて更新し、更新後のLV座標変換行列を用いて計算を行う。
【0156】
図16は、この場合に、実施例のカーナビゲーション装置1000が図12のナビゲーション処理に代えて実行する第2のナビゲーション処理の流れを示すフローチャートである。
【0157】
第2のナビゲーション処理では、処理部100は、ステップA19又はステップA25の後、移動体座標系のロール軸(R軸)の速度成分の正負の符号が逆転したか否かを判定する(ステップC25)。符号が逆転していない場合は(ステップC25;No)、自動車の移動方向は変化していないものと判断し、ステップA27に移行する。
【0158】
それに対し、正負の符号が逆転している場合は(ステップC25;Yes)、処理部100は、自動車の移動方向が変化したものと判断し、座標変換行列データ560に記憶されている最新のLV座標変換行列を180°回転させて、座標変換行列データ560を更新する(ステップC26)。そして、処理部100は、ステップA27に移行する。
【0159】
図17及び図18は、上記の進行方向切替対応ロジックの有効性を示す実験結果である。図17は、進行方向切替対応ロジックを適用しない場合の実験結果である。それに対し、図18は、進行方向切替対応ロジックを適用した場合の実験結果である。車の進行方向前方(前進方向)とセンサー3のx軸正方向とが一致するようにセンサー3を設置した。つまり、この場合のセンサー3の取付姿勢角は「0°」である。
【0160】
自動車を時刻「t0」〜「t1」までの期間停止させた。そして、時刻「t1」においてバックで移動開始し、時刻「t2」において自動車を一旦停止させて、今度は自動車を前方に移動させた。各図において、横軸は時間軸を示し、縦軸は自動車のロール軸速度(単位は[m/s])及びセンサー3の取付姿勢角(単位は[°])を示す。また、判定されたセンサー3の取付姿勢角を太実線で示し、算出された自動車のロール軸速度を細実線で示す。
【0161】
これらの図を見ると、時刻「t0」〜「t1」までの間は、ロール軸速度はゼロとなっている。そして、時刻「t1」において自動車がバックを開始するとロール軸速度は負の値となり、時刻「t2」までは徐々に減少していく。
【0162】
その後、時刻「t2」においてロール軸速度の絶対値が所定の閾値を超えると、取付姿勢判定発動条件が成立する(図16のステップA13;Yes)。これにより、センサー3の取付姿勢が判定される(図16のステップA15)。この場合、取付姿勢判定部10は、自動車が後進(バック)した方向を自動車の移動方向と認識して取付姿勢を判定するため、実際にはセンサー3の取付姿勢角は「0°」であるのに、取付姿勢角を「180°」と判定してしまう。
【0163】
この場合、取付姿勢角を「180°」としてLV座標変換行列を算出し(図16のステップA17)、当該LV座標変換行列を用いて計算を行うため、自動車のロール軸速度は正の値として算出されてしまう。自動車はバックで移動しているため、実際にはロール軸速度は負の値である。
【0164】
進行方向切替対応ロジックを適用しない場合は、図17に示すように、時刻「t3」において自動車が前方に移動を開始しても、センサー3の取付姿勢角が「180°」であると認識したまま計算を行うため、ロール軸速度の符号は変化しない。そのため、正の値として算出されるべきロール軸速度は負の値として算出され、自動車が前方に加速するにつれて、ロール軸速度は負の方向に増大してしまっている。
【0165】
それに対し、進行方向切替対応ロジックを適用した場合は、図18に示すように、時刻「t3」において自動車が前方に移動を開始したことを検知すると(図16のステップC25;Yes)、取付姿勢角を「180°」として算出したLV座標変換行列を反転させて更新する(図16のステップC26)。そして、反転後のLV座標変換行列を用いて計算を行うため、算出されるロール軸速度の符号は負から正に変化する。そして、自動車が前方に加速したことで、ロール軸速度は正の方向に増大していく。このように、進行方向切替対応ロジックを適用することで、移動体の進行方向の変化に適切に対応することができる。
【0166】
4−2.補正部の補正方法
上記の実施形態では、慣性航法演算結果を補正する手法としてカルマンフィルターを例に挙げて説明したが、補正方法はこれに限られない。例えば、速度制約条件設定部70により設定された速度制約条件に含まれる制約速度ベクトルと、慣性航法演算で得られた速度ベクトルとの平均化処理を行って速度ベクトルを補正することとしてもよい。
【0167】
また、車速検出システムにより計測された移動体の速度や、磁気センサー等の方位センサーにより計測された移動体の向きを用いて、慣性航法演算で得られた速度ベクトルを補正することとしてもよい。例えば、速度ベクトルの大きさについて、慣性航法演算で得られた速度ベクトルの大きさと、車速検出システムにより計測された速度との平均化処理を行うこととしてもよい。また、速度ベクトルの向きについて、慣性航法演算で得られた速度ベクトルの向きと、方位センサーにより計測された移動体の向きとの平均化処理を行うこととしてもよい。
【0168】
平均化処理は、単純な算術平均や幾何平均を適用してもよいし、加重平均を適用してもよい。慣性航法演算結果を信用して速度ベクトルを補正するのであれば、慣性航法演算結果の重みを車速検出システムや方位センサーの計測結果の重みよりも高くして加重平均すればよい。逆に、車速検出システムや方位センサーの計測結果を信用して速度ベクトルを補正するのであれば、慣性航法演算結果の重みを車速検出システムや方位センサーの計測結果の重みよりも低くして加重平均すればよい。なお、これらの手法以外にも、補正部の補正手法としては任意の手法を適用可能である。
【0169】
4−3.処理の主体
上記の実施例では、電子機器にIMU400が搭載され、IMU400の計測結果に基づいて、電子機器の処理部が慣性航法演算処理を行うものとして説明した。しかし、電子機器にINSを搭載することとし、INSの処理部が慣性航法演算処理を行うこととしてもよい。この場合、電子機器の処理部は、INSから出力される慣性航法演算結果に含まれる誤差(慣性航法演算誤差)を推定する処理を行う。そして、推定した慣性航法演算誤差を用いて、INSから入力した慣性航法演算結果を補正する。
【0170】
また、電子機器にGPS(Global Positioning System)等の衛星測位システムを適用したセンサーユニットを搭載することとし、このセンサーユニットの計測結果を利用して、慣性航法演算結果を補正することとしてもよい。
【0171】
図19は、この場合における電子機器の構成を示す図であり、処理部100に係る機能ブロックを中心に示したものである。図19の電子機器では、図11のIMU400の代わりにINS700が搭載され、さらにGPSユニット800が搭載されている。この場合、処理部100は慣性航法演算処理を行わないため、図11における慣性航法演算部105は削除されている。
【0172】
取付姿勢判定部110は、INS700から入力したローカル座標速度ベクトルを用いて、INS700の取付姿勢を判定する。補正部190のKF誤差推定部191は、速度制約条件設定部170から入力した速度制約条件の他に、GPSユニット800から入力したメジャメント情報を観測情報として、INS700の慣性航法演算結果に含まれる慣性航法演算誤差を推定する。
【0173】
メジャメント情報は、GPS衛星から受信したGPS衛星信号に係る各種の諸量である。例えば、GPS衛星信号のキャリア位相やコード位相、ドップラー周波数、擬似距離、擬似距離の変化率(レンジレート)といった諸量がメジャメント情報に含まれる。なお、GPSのメジャメント情報を観測情報として慣性航法演算誤差を推定する手法については従来公知であるため、数式等を用いた説明は省略する。
【0174】
4−4.姿勢判定タイミング
上記の実施形態では、移動体が停止した後に移動を開始する度に、センサー3の取付姿勢を判定するものとして説明した。しかし、姿勢判定タイミングは適宜設定可能である。例えば、センサー3が移動体に設置された後、移動体の初回の移動開始タイミングにのみセンサー3の取付姿勢を判定することとしてもよい。この場合は、初回以降は取付姿勢判定を行わず、初回に判定した取付姿勢を用いて処理を行うようにすればよい。
【0175】
4−5.姿勢判定の成分
上記の実施形態では、移動体に対するセンサー3の取付姿勢のピッチ成分及びヨー成分の両方を判定するものとして説明したが、ピッチ成分及びヨー成分の何れか一方のみを判定することとしてもよいのは勿論である。
【0176】
4−6.設置ずれの誤差
上記の実施形態では、移動中はセンサー3の取付姿勢に変化が生じないことを前提としていた。しかし、移動中の振動等によってセンサー3の取付姿勢の変化、すなわち設置ずれが生じる可能性がある。そこで、式(6)の状態ベクトルに設置ずれによる誤差角度の成分を追加し、KF誤差推定部191が移動時速度制約条件521を「ON」として求めた移動時観測ベクトルを用いてKF誤差推定処理を行って(ステップB9)、設置ずれの誤差角度を推定することとしてもよい。このようにすることで、移動中にセンサー3の取付姿勢が変化した場合であっても、図12や図16のステップA15の取付姿勢判定処理で判定された取付姿勢を随時補正することが可能となる。
【0177】
4−7.取付姿勢判定処理の変形例
図3等を用いて説明した取付姿勢の判定では、IMU400が計測するローカル座標加速度ベクトルにバイアス誤差がのっている場合、算出されるAL座標変換行列にもバイアス誤差が含まれるため、正確な姿勢の判定ができない場合が考えられる。そこで、次のようにしてもよい。
【0178】
すなわち、図20に示すように、図11に示した処理部100の機能ブロックにおいて、IMU400が計測したローカル座標加速度ベクトル及びローカル座標角速度を取付姿勢判定部110へ入力するようにする。そして、取付姿勢判定部110(処理部100)は、図21に示す第2の取付姿勢判定処理を実行する。
【0179】
図21において、処理部100は、自動車が停止しているか否かを判定する(ステップD1)。停止している場合には、ローカル座標速度ベクトルをゼロリセットするとともに(ステップD3)、IMU400で計測されているローカル座標角速度及びローカル座標加速度ベクトルを停止時の計測データとして取得・更新する(ステップD5)。このときのローカル座標角速度をローカル座標停止時角速度Ωsと称し、ローカル座標加速度をローカル座標停止時加速度αsと称する。
【0180】
停止が継続している間、ステップD3〜D5を繰り返し行い、停止が解除され、自動車が移動を開始したと判定された場合は(ステップD7:YES)、次の処理に移行する。ここで、移動中のIMU400で計測されているローカル座標角速度を符号Ωmとし、ローカル座標加速度を符号αmとして説明する。まず、ローカル座標の回転情報を算出する(ステップD9)。具体的には、ローカル座標停止時角速度Ωsに対するローカル座標角速度Ωmの時間変化(時間微分)を積算し、継ぎ足していく。この値は、停止時のローカル座標系に対する座標系自体の回転、すなわちローカル座標回転情報を示す。
【0181】
次いで、ローカル座標停止時加速度ベクトルαsを、ステップD9で算出したローカル座標回転情報を用いて逆変換することで、IMU400で計測されているローカル座標系における加速度αmsに変換する(ステップD11)。そして、IMU400で計測されているローカル座標加速度αmと変換した加速度αmsとの差を取ることで、当該時点の加速度αfを求める(ステップD13)。変換した加速度αmsと、IMU400で計測されているローカル座標系における加速度αmとは、同じローカル座標系上での加速度である。そして、もしも両者の加速度ベクトルにバイアス誤差がのっていたとしても、その差を求める結果、バイアス誤差は相殺することになる。また、重力加速度も相殺される。そのため、IMU400で計測されているローカル座標系における自動車自体の純粋な加速度に係るベクトルαfが得られる。
【0182】
次いで、得られた加速度ベクトルαfを用いて、ローカル座標速度ベクトルを更新する(ステップD15)。更新が初回の場合は、ステップD3でリセットしたローカル座標速度ベクトルが初めて更新されるため、停止時のローカル座標系における移動開始直後の速度ベクトルが得られる。以降、取付姿勢の判定タイミングが到来するまでステップD9〜D15の処理を繰り返す(ステップD17)。取付姿勢の判定タイミングは、図12のステップA13の取付姿勢判定発動条件の成否で判定すると好適である。
姿勢判定の判定タイミングが到来した場合、最新のローカル座標速度ベクトルをもとに、上述の式(2)及び式(3)を用いて取付姿勢を判定する(ステップD19)。
【0183】
以上の第2の取付姿勢判定処理は、ナビゲーション処理の実行中に並行して実行することとするとよい。例えば図12や図16のステップA3とA5の間に、第2の取付姿勢判定処理の実行を開始するステップを加える。この場合、第2の取付姿勢判定処理は、図12や図16のステップA15で実行される取付姿勢判定処理の代わりの処理となるため、ステップA15では取付姿勢判定処理を行わずともよい。
【0184】
また、第2の取付姿勢判定処理の効果確認試験を行った。ローカル座標系のx軸及びz軸にバイアス誤差を生じさせた場合の従来の取付姿勢判定処理の判定結果と、第2の取付姿勢判定処理の判定結果とを比較した。x軸に+1[mG]、z軸に−1[mG]のバイアス誤差を生じさせた第1試験では、従来の取付姿勢判定処理ではヨー角の誤差が−3.40[deg]、ピッチ角の誤差が+5.53[deg]であった。一方、第2の取付姿勢判定処理ではヨー角の誤差が+0.06[deg]、ピッチ角の誤差が−0.01[deg]であった。また、x軸に+100[mG]、z軸に−100[mG]のバイアス誤差を生じさせた第2試験では、従来の取付姿勢判定処理ではヨー角の誤差が+74.26[deg]、ピッチ角の誤差が−34.30[deg]であった。一方、第2の取付姿勢判定処理ではヨー角の誤差が+0.05[deg]、ピッチ角の誤差が+0.00[deg]であった。
【0185】
4−8.移動体
本発明は種々の移動体に適用可能である。好適な適用例は四輪自動車であるが、例えば移動時には縦方向や横方向に移動しないといった移動方向に関する制約を課すことができるのであれば、二輪自動車や自転車、電車、船、人間といった移動体にも本発明を適用可能である。
【0186】
4−9.電子機器
上記の実施例では、カーナビゲーション装置に本発明を適用した場合を例に挙げて説明したが、本発明を適用可能な電子機器はこれに限られるわけではない。例えば、携帯型ナビゲーション装置(ポータブルナビ)や携帯型電話機、パソコン、PDAといった他の電子機器にも本発明を適用可能である。
【符号の説明】
【0187】
1A 第1の取付姿勢判定システム、 1B 第2の取付姿勢判定システム、 2A 第1の位置算出システム、 2B 第2の位置算出システム、 3 センサー、 3A 加速度センサー、 3B 姿勢センサー、 3C ジャイロセンサー、 4A 第1の慣性航法システム、 4B 第2の慣性航法システム、 5 ローカル座標速度ベクトル算出部、 10 取付姿勢判定部、 15 絶対姿勢判定部、 20 LA座標変換行列算出部、 30 絶対座標加速度ベクトル算出部、 40 絶対座標速度ベクトル算出部、 50 絶対座標位置算出部、 60 移動状況判定部、 70 速度制約条件設定部、 80 LV座標変換行列算出部、 90 補正部
【技術分野】
【0001】
本発明は、移動体に対するセンサーの姿勢を判定する方法等に関する。
【背景技術】
【0002】
いわゆるシームレス測位やモーションセンシング、姿勢制御など様々な分野において、センサーの活用が注目されている。センサーとしては、加速度センサーやジャイロセンサー、圧力センサー、地磁気センサーなどが広く知られている。センサーの計測結果を利用して慣性航法演算を行って移動体(例えば自転車や自動車、電車、船、飛行機など)の位置算出を行う技術も考案されている。
【0003】
慣性航法演算においては、センサーの計測結果に含まれ得る種々の誤差成分に起因して位置算出の正確性が低下するという問題があり、位置算出の正確性を向上させるための様々な技術が考案されている。例えば、特許文献1には、移動体の移動方向に関する制約条件を利用して、カルマンフィルターを適用して慣性航法演算結果を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許出願公開第2010/0019963号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1の技術は、センサーの計測結果には誤差が含まれることを前提とし、移動体の移動方向に関する制約条件を利用して、慣性航法演算結果である移動体の位置や速度といった諸量に含まれる誤差を推定するものである。但し、この技術は、センサーの座標系と移動体の座標系との正確な対応関係を把握していることが前提である。
【0006】
センサーの計測結果はセンサーの座標系(ローカル座標系)での値である。移動体の座標系での値ではない。従って、移動体の移動方向に関する制約条件を利用する場合には、センサーの座標系と移動体の座標系との間で座標変換を行うか、或いは、センサーの座標系と移動体の座標系とがぴったり一致するようにセンサーを移動体に固定する必要がある。しかし、キャリブレーションを行うとしても、センサーの座標系から移動体の座標系に正確に変換することは困難であるし、センサーの座標系と移動体の座標系とがぴったり一致するようにセンサーを移動体に固定するのも困難である。僅かではあるが誤差が発生し得るし、時間が経過すると誤差が大きくなり得る。
【0007】
また、慣性航法用のセンサーを備えた携帯型電話機やナビゲーション装置、PDA(Personal Digital Assistant)、パソコンといった持ち運び可能な電子機器を移動体に持ち込んで配置し、その電子機器で慣性航法演算を行う場合には、センサーの座標系と移動体の座標系との対応関係を正確に把握することは至難である。
【0008】
センサーの座標系と移動体の座標系との間で正確な座標変換ができない場合は、センサーの座標系と移動体の座標系との間で辻褄が合わなくなるため、慣性航法演算結果に誤差が生じる。また、慣性航法演算を継続するにつれて、実際の位置と演算した位置との乖離が徐々に大きくなっていく傾向があった。
【0009】
センサーの座標系と移動体の座標系との正確な対応関係を把握するためには、移動体に対するセンサーの正確な姿勢を判定する必要がある。
【0010】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、移動体に対するセンサーの姿勢を判定するための新たな手法を提案することにある。
【課題を解決するための手段】
【0011】
以上の課題を解決するための第1の形態は、移動体に設置された移動ベクトルを計測するセンサーが前記移動ベクトルを計測することと、前記移動体が移動を開始した際に前記センサーが計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定することと、を含む姿勢判定方法である。
【0012】
また、他の形態として、移動体に設置された移動ベクトルを計測するセンサーが前記移動体が移動を開始した際に計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定する姿勢判定装置を構成してもよい。
【0013】
この第1の形態等によれば、移動体が移動を開始した際にセンサーが計測した移動ベクトルを用いて、移動体に対するセンサーの姿勢を判定する。移動ベクトルは、移動体の加速度ベクトルや速度ベクトルといった、移動体の移動に関するベクトルのことを意味する。また、移動体に対するセンサーの姿勢とは、移動体に対するセンサーの相対的な姿勢のことを意味する。実施形態で詳細に後述するが、移動体が移動を開始した際にセンサーにより計測された移動ベクトルを用いることで、移動体に対するセンサーの姿勢を判定することができる。
【0014】
また、第2の形態として、第1の形態の姿勢判定方法であって、前記移動体が停止している場合に、前記移動体の速度に関する第1の制約条件を用いて、前記センサーの計測結果を補償すること、を更に含む姿勢判定方法を構成してもよい。
【0015】
この第2の形態によれば、移動体が停止している場合に、移動体の速度に関する第1の制約条件を用いて、センサーの計測結果を補償する。これにより、第1の形態と相まって、移動体が停止している場合に補償された移動ベクトルを用いてセンサーの姿勢を判定することができるようになり、姿勢判定をより精確に行うことが可能となる。
【0016】
また、第3の形態として、第1又は第2の形態の姿勢判定方法であって、前記姿勢を判定することは、前記移動体に対する前記姿勢のロール成分を判定せず、ピッチ成分及びヨー成分のうちの少なくも一方を判定することである、姿勢判定方法を構成してもよい。
【0017】
この第3の形態によれば、移動体に対する姿勢のロール成分を判定せず、ピッチ成分及びヨー成分のうちの少なくも一方を判定することで、センサーの姿勢判定を簡易に行うことができる。
【0018】
また、第4の形態として、第1〜第3の何れかの形態の姿勢判定方法であって、前記移動ベクトルを計測することは、前記移動体の移動空間を定める座標系である絶対座標系での移動ベクトルを計測することであり、前記姿勢を判定することは、前記移動ベクトルと、前記絶対座標系で表した前記センサーの向きとを用いて、前記センサーの前記姿勢を判定することである、姿勢判定方法を構成してもよい。
【0019】
この第4の形態によれば、移動体の移動空間を定める絶対座標系での移動ベクトルと、絶対座標系で表したセンサーの向きとを用いて、移動体に対するセンサーの姿勢を判定する。絶対座標系で表したセンサーの向きが分かれば、絶対座標系での移動ベクトルを、センサーの座標系に座標変換することができる。そして、変換後の移動ベクトルを用いることで、センサーの姿勢を適切に判定することができる。
【0020】
また、第5の形態として、第1〜第3の何れかの形態の姿勢判定方法であって、前記姿勢を判定することは、前記移動体の停止時に前記センサーにより計測された移動ベクトルと、移動を開始した際に計測された移動ベクトルとを用いて、前記センサーの計測座標系であるローカル座標系における速度ベクトルを算出することと、前記速度ベクトルを用いて前記センサーの姿勢を判定することと、を含む姿勢判定方法を構成してもよい。
【0021】
この第5の形態によれば、前記移動体の停止時に前記センサーにより計測された移動ベクトルと、移動を開始した際に計測された移動ベクトルとを用いて、前記センサーの計測座標系であるローカル座標系における速度ベクトルを算出することで、前記センサーのバイアス誤差等を取り除いた速度ベクトルを算出することが可能となる。
【0022】
また、第6の形態として、第1〜第5の何れかの形態の姿勢判定方法であって、前記姿勢を判定することは、前記移動体の停止が解除されて前記移動体の速度又は加速度が所定の閾値に達した時の前記移動ベクトルを用いて前記姿勢を判定することである、姿勢判定方法を構成してもよい。
【0023】
この第6の形態によれば、移動体の停止が解除されて移動体の速度又は加速度が所定の閾値に達した時の移動ベクトルを用いて姿勢を判定する。移動体の停止が解除されてもすぐには姿勢判定を行わず、移動体の速度又は加速度がある程度の大きさとなった時点で姿勢判定を行うようにすることで、姿勢判定の正確性を向上させることができる。
【0024】
また、第7の形態として、第1〜第6の何れかの形態の姿勢判定方法を用いて前記姿勢を判定することと、前記姿勢と前記移動ベクトルとを用いて前記移動体の位置を算出することと、を含む位置算出方法を構成してもよい。
【0025】
この第7の形態によれば、上記の形態の姿勢判定方法を用いて判定した姿勢と移動ベクトルとを用いることで、移動体の位置を適切に算出することができる。
【0026】
また、第8の形態として、第7の形態の位置算出方法であって、前記位置を算出することは、前記移動ベクトルを用いて前記絶対座標系での前記移動体の絶対座標位置を算出することと、前記姿勢と前記絶対座標系で表した前記センサーの向きとを用いて、前記絶対座標位置を前記移動体を基準とする移動体座標位置に座標変換することと、前記移動体座標位置と、前記移動体の移動方向に関する第2の制約条件とを用いて、前記絶対座標位置を補正することと、を含む、位置算出方法を構成してもよい。
【0027】
この第8の形態によれば、移動ベクトルを用いて絶対座標系での移動体の絶対座標位置を算出する。例えば、絶対座標系での移動ベクトルを積分することで、移動体の位置を算出する。絶対座標系と移動体を基準とする座標系とを結び付けるためには、移動体に対するセンサーの相対的な姿勢と、絶対座標系で表したセンサーの向きとが必要となる。そこで、上記の形態の姿勢判定方法を用いて判定したセンサーの姿勢と、絶対座標系で表したセンサーの向きとを用いて、絶対座標位置を移動体座標位置に座標変換する。これにより、移動体を基準とする座標系での演算が可能となる。その上で、移動体座標位置と移動体の移動方向に関する第2の制約条件とを用いることで、移動体の絶対座標位置を適切に補正することができる。
【図面の簡単な説明】
【0028】
【図1】全体システムのシステム構成図。
【図2】第1の取付姿勢判定システムのシステム構成図。
【図3】第2の取付姿勢判定システムのシステム構成図。
【図4】第1の位置算出システムのシステム構成図。
【図5】第1の慣性航法システムのシステム構成図。
【図6】第2の位置算出システムのシステム構成図。
【図7】第2の慣性航法システムのシステム構成図。
【図8】従来の手法で位置算出を行ったシミュレーション結果の一例。
【図9】実施形態の手法で位置算出を行ったシミュレーション結果の一例。
【図10】カーナビゲーション装置の機能構成を示すブロック図。
【図11】処理部を機能ブロックとして表した概念図。
【図12】ナビゲーション処理の流れを示すフローチャート。
【図13】補正処理の流れを示すフローチャート。
【図14】従来のナビゲーション処理による位置算出の実験結果の一例。
【図15】実施例のナビゲーション処理による位置算出の実験結果の一例。
【図16】第2のナビゲーション処理の流れを示すフローチャート。
【図17】進行方向切替対応ロジックを適用しない場合の実験結果の一例。
【図18】進行方向切替対応ロジックを適用した場合の実験結果の一例。
【図19】変形例における処理部を機能ブロックとして表した概念図。
【図20】変形例における処理部を機能ブロックとして表した概念図。
【図21】第2の取付姿勢判定処理の流れを示すフローチャート。
【発明を実施するための形態】
【0029】
以下、図面を参照して、本発明の好適な実施形態の一例について説明する。但し、本発明を適用可能な実施形態が以下説明する実施形態に限定されるわけでないことは勿論である。
【0030】
1.原理
1−1.全体システム
図1は、本実施形態における姿勢判定方法及び位置算出方法に係る全体システムのシステム構成の一例を示す図である。全体システムは、センサー3が搭載された移動体を有するシステムとして構成される。移動体は、自転車や自動車(四輪自動車及びバイクを含む)、電車、飛行機、船等の何れでもよいが、本実施形態では四輪自動車として説明する。
【0031】
本実施形態では、3種類の座標系を定義する。第1の座標系は、センサー3に対応付けられたセンサー座標系であるローカル座標系である。本明細書では、ローカル座標系のことをL(Local)フレームとも言う。ローカル座標系は、センサー3に対応付けられた三次元直交座標系であり、本実施形態では、ローカル座標系の3軸をx軸、y軸及びz軸と表記する。
【0032】
第2の座標系は、移動体に対応付けられた移動体座標系である。本明細書では、移動体座標系のことをV(Vehicle)フレームとも言う。Vフレームは、例えば、移動体の前方を正とする前後方向をロール軸(R軸)、右方を正とする左右方向をピッチ軸(P軸)、鉛直下方を正とする上下方向をヨー軸(Q軸)とする三次元直交座標系として定義される。本実施形態では、移動体座標系の3軸をR軸、P軸及びQ軸と表記する。
【0033】
第3の座標系は、移動体の移動空間を定める座標系である絶対座標系である。本明細書では、絶対座標系のことをA(Absolute)フレームとも言う。Aフレームは、例えば、北東下座標系として知られるNED(North East Down)座標系や、地球中心地球固定座標系として知られるECEF(Earth Centered Earth Fixed)座標系として定義される。本実施形態では、絶対座標系の3軸をX軸、Y軸及びZ軸と表記する。
【0034】
センサー3は、移動体に搭載される各種のセンサーである。例えば、センサー3の計測結果を利用して自立的に位置算出や速度算出を行う慣性航法システムに適用する場合は、センサー3として、加速度センサー3Aや姿勢センサー3Bといった慣性航法用のセンサー(慣性センサー)が用いられる。
【0035】
加速度センサー3Aは、移動体の加速度をローカル座標系で検出するセンサーであり、例えばMEMS(Micro Electro Mechanical Systems)の技術を利用したMEMSセンサーが用いられる。加速度センサー3Aは移動体に固定される。加速度センサー3Aが計測した値は、ローカル座標系で計測した移動体の加速度となる。
【0036】
姿勢センサー3Bは、絶対座標系におけるセンサー3の向きである絶対姿勢を検出するためのセンサーであり、例えばジャイロセンサー3Cや磁気センサーといったセンサーが用いられる。姿勢センサー3Bは、ジャイロセンサー3Cや磁気センサー単体として構成してもよいし、これらを組み合わせて構成してもよい。また、加速度センサーを含んで姿勢センサー3Bを構成してもよい。姿勢センサー3Bは移動体に固定される。姿勢センサー3Bが計測した値は、絶対座標系で表したセンサー3の向きとなる。
【0037】
移動体の加速度や速度は、方向及び大きさを持っている。そのため、本明細書では、スカラーとベクトルとを適宜区別して説明する。原則として、加速度や速度と言ったときは加速度や速度の大きさ(スカラー量)を表すものとし、加速度ベクトルや速度ベクトルと言ったときは方向及び大きさを考慮した加速度及び速度を表すものとする。また、本実施形態では、移動体の加速度ベクトル及び速度ベクトルを総称して、移動体の「移動ベクトル」と呼ぶ。なお、各座標系において定義される諸量を明確にするため、各諸量を表す文言の先頭に座標系の種類を付して説明する。例えば、ローカル座標系で表した加速度ベクトルのことを「ローカル座標加速度ベクトル」と称し、絶対座標系で表した加速度ベクトルのことを「絶対座標加速度ベクトル」と称する。他の諸量についても同様である。
【0038】
また、センサー3の姿勢は、ロール角、ピッチ角及びヨー角といったオイラー角で表される。絶対座標系で表したセンサー3の向きを「絶対姿勢」と表現し、その姿勢角のことを「絶対姿勢角」と称する。また、移動体に対するセンサー3の相対的な姿勢(相対姿勢)のことを「取付姿勢」と表現し、その姿勢角(相対姿勢角)のことを「取付姿勢角」と称する。
【0039】
また、以下の説明で参照する図面については、各種のセンサー3のブロックを二重線で示し、センサー3の計測結果を利用して演算処理を行う処理ブロックを一重線で示す。一重線で示される処理ブロックは、センサー3に搭載されるプロセッサーや、電子機器に搭載されるプロセッサー(ホストプロセッサー)が処理主体となる処理ブロックである。なお、各処理ブロックの処理の主体は、本発明を適用するシステムに応じて適宜設定可能であるものとする。
【0040】
1−2.取付姿勢判定方法
本実施形態における取付姿勢判定方法について説明する。センサー3が移動体に取り付けられた場合に、移動体に対するセンサー3の相対的な姿勢である取付姿勢を判定することが1つの目的である。本実施形態では、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、センサー3の取付姿勢を判定する。前述したように、移動ベクトルには、速度ベクトルや加速度ベクトルが含まれる。そのため、本実施形態では、移動体が移動を開始した際に計測された速度ベクトルや加速度ベクトルを用いて、センサー3の取付姿勢を判定することになる。
【0041】
(1)第1の取付姿勢判定方法
図2は、第1の取付姿勢判定方法に係る第1の取付姿勢判定システム1A(第1の姿勢判定装置)のシステム構成図である。第1の取付姿勢判定システム1Aは、例えば、加速度センサー3Aと、ローカル座標速度ベクトル算出部5と、取付姿勢判定部10とを有する。
【0042】
ローカル座標速度ベクトル算出部5は、加速度センサー3Aから入力したローカル座標加速度ベクトルを積分及び継ぎ足し処理して、ローカル座標速度ベクトルを算出する。本実施形態において、「積分」とは、所定時間分の値を累積的に加算することを意味する。また、「継ぎ足す」とは、積分により得られた結果を最後に更新した結果に足し合わせることを意味する。
【0043】
具体的には、ローカル座標速度ベクトル算出部5は、所定時間分のローカル座標加速度ベクトルを積分することで、その所定時間の間におけるローカル座標系で表した速度ベクトルの変化分を算出する。そして、算出した速度ベクトルの変化分を最後に更新したローカル座標速度ベクトルに継ぎ足すことで、ローカル座標速度ベクトルを新たに算出・更新する。
【0044】
取付姿勢判定部10は、ローカル座標速度ベクトル算出部5から入力したローカル座標速度ベクトルを用いて取付姿勢を判定する。取付姿勢判定部10は、移動体が停止している状態から移動を開始した際に計測される速度ベクトルを用いて、移動体に対するセンサー3の姿勢(取付姿勢)を判定する。
【0045】
本実施形態では、移動体が停止している場合に、移動体の速度に関する制約条件(第1の制約条件)を用いて、センサー3の計測結果を補償する。移動体が停止しているのであれば、理想的には、移動体の速度ベクトルはゼロベクトルとなる。よって、移動体が停止している場合には、移動体の速度ベクトルの各成分がゼロであるとする運動モデルを適用することができる。但し、ここで言う移動体の速度ベクトルとは、移動体座標系(Vフレーム)での速度ベクトルである。
【0046】
上記の運動モデルに基づいて、移動体の速度ベクトルを補正する手法が適用可能である。具体的には、停止中は移動体の速度ベクトルの各成分がゼロであるとする停止時速度制約条件を与えて、例えばカルマンフィルター(KF(Kalman Filter))を利用して、センサー3の計測結果を補正する手法が挙げられる。
【0047】
カルマンフィルターは、時々刻々と変化する外部観測量を利用して、確率理論に基づいて系の状態を推定する推定手法の1つである。例えば、推定対象とする「状態」をセンサー3の計測結果に含まれる誤差とし、上記の速度制約条件を「観測情報」として利用して、センサー3の計測結果を補正する手法が考えられる。また、カルマンフィルター以外にも、上記の停止時速度制約条件に基づいて、センサー3の計測結果にリセットをかけるなどの手法も考えられる。つまり、停止時速度制約条件を用いて、センサー3をキャリブレーションするのである。
【0048】
上記のように、移動体が停止している場合に、移動体の速度に関する制約条件(第1の制約条件)を用いてセンサー3の計測結果を補償することで、センサー3の計測結果に含まれる誤差を低減させる(小さくする)ことができる。誤差が低減された状態で移動体が移動を開始すると、暫くの間は、センサー3の計測結果は誤差が低減された状態となる。そこで、本実施形態では、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、移動体に対するセンサー3の姿勢(取付姿勢)を判定する。
【0049】
ローカル座標系で表した速度ベクトル(ローカル座標速度ベクトル)と、移動体座標系で表した速度ベクトル(移動体座標速度ベクトル)との間には、次式(1)のような関係がある。
【数1】
【0050】
本明細書における数式では、速度ベクトルの成分を小文字の“v”で表す。また、速度ベクトルの表記において、座標系の種類を上付きの大文字の添え字で示す。“L”はローカル座標系、“V”は移動体座標系、“A”は絶対座標系をそれぞれ意味する。また、対応する座標系の各軸の成分を下付きの小文字の添え字で示す。例えば、ローカル座標系の3軸であれば“x”、“y”及び“z”の表記を用いる。
【0051】
また、本明細書では、座標変換行列を大文字の“C”で表す。各座標変換行列において、下付きの添え字は座標変換前の座標系を示し、上付きの添え字は座標変換後の座標系を示す。例えば、“CLV”は、ローカル座標系(Lフレーム)から移動体座標系(Vフレーム)への座標変換行列を示し、“CAL”は、絶対座標系(Aフレーム)からローカル座標系(Lフレーム)への座標変換行列を示す。
【0052】
ここで、移動体の移動方向に関する制約条件(第2の制約条件)を適用する。例えば、移動体が四輪自動車であれば、通常走行において四輪自動車はジャンプやドリフトすることはないと仮定することができる。つまり、移動体の縦横方向の速度成分はゼロであると仮定し、移動体座標系(Vフレーム)のQ軸方向及びP軸方向の速度成分はゼロであるとする制約条件を設定する。つまり、移動体の速度に関して{vPV=vQV=0}とする制約条件を設定する。
【0053】
この場合、式(1)から、取付姿勢のピッチ成分であるピッチ角“θ”及びヨー成分であるヨー角“Ψ”を、次式(2)及び(3)のように算出することができる。
【数2】
【数3】
【0054】
ピッチ角“θ”及びヨー角“Ψ”は、それぞれ移動体座標系のP軸及びQ軸回りのセンサー3の回転角を示す。つまり、ピッチ角“θ”及びヨー角“Ψ”は、移動体に対するセンサー3の相対的な姿勢角を表していると言える。
【0055】
なお、自動車が移動を開始した直後は、自動車の速度はゼロに近い値となる。この状態で式(2)及び(3)に従って取付姿勢角を算出すると、浮動小数点数同士の演算により、十分な演算精度が保証されない可能性がある。そこで、自動車が移動を開始してもすぐには取付姿勢角を算出せず、速度又は加速度がある程度大きくなった時点で、取付姿勢を判定すると効果的である。例えば、自動車のブレーキ制御が解除された直後から所定時間(1秒以下の時間として定められる。)経過時に取付姿勢を判定することとしたり、ブレーキ制御が解除された後に「1km/h以上20km/h以下」の所定速度に到達した際に取付姿勢を判定するなどすると効果的である。
【0056】
(2)第2の取付姿勢判定方法
図3は、第2の取付姿勢判定方法に係る第2の取付姿勢判定システム1B(第2の姿勢判定装置)のシステム構成図である。第2の取付姿勢判定システム1Bは、例えば、加速度センサー3Aと、姿勢センサー3Bと、LA座標変換行列算出部20と、絶対座標加速度ベクトル算出部30と、絶対座標速度ベクトル算出部40と、取付姿勢判定部10とを有する。本実施形態において、加速度センサー3A及び姿勢センサー3Bは、共通のローカル座標系での値を計測するように、例えば一体的に構成される。
【0057】
LA座標変換行列算出部20は、姿勢センサー3Bから入力したセンサー3の絶対姿勢角(絶対座標系で表したセンサー3の向き)を用いて、ローカル座標系から絶対座標系への座標変換行列(以下、「LA座標変換行列」と称する。)を算出する。なお、LA座標変換行列それ自体は公知であるため、数式等を用いた説明は省略する。
【0058】
絶対座標加速度ベクトル算出部30は、LA座標変換行列算出部20から入力したLA座標変換行列を用いて、加速度センサー3Aから入力したローカル座標加速度ベクトルを絶対座標加速度ベクトルに座標変換する。
【0059】
絶対座標速度ベクトル算出部40は、絶対座標加速度ベクトル算出部30から入力した絶対座標加速度ベクトルを積分及び継ぎ足し処理することで、絶対座標速度ベクトルを算出する。つまり、所定時間分の絶対座標加速度ベクトルを積分することで、その所定時間の間の移動体の速度ベクトルの変化分を算出する。そして、算出した速度ベクトルの変化分を最後に更新した絶対座標速度ベクトルに継ぎ足すことで、絶対座標速度ベクトルを新たに算出・更新する。
【0060】
取付姿勢判定部10は、絶対座標速度ベクトル算出部40から入力した絶対座標速度ベクトルと、姿勢センサー3Bから入力した絶対姿勢角とを用いて、加速度センサー3Aの取付姿勢を判定する。取付姿勢判定部10は、絶対座標系からローカル座標系への座標変換行列(以下、「AL座標変換行列」と称す。)を算出するAL座標変換行列算出部11を機能部として有する。
【0061】
絶対座標系で表した速度ベクトル(絶対座標速度ベクトル)と、移動体座標系で表した速度ベクトル(移動体座標速度ベクトル)との間には、次式(4)のような関係がある。
【数4】
【0062】
但し、“CAL”はAL座標変換行列を示す。また、“CLV”はローカル座標系(Lフレーム)から移動体座標系(Vフレーム)への座標変換行列(以下、「LV座標変換行列」と称す。)を示す。
【0063】
式(4)から、絶対座標系と移動体座標系とを結び付けるためには、2段階の座標変換が必要であることがわかる。つまり、第1段階として、AL座標変換行列“CAL”を用いて、絶対座標速度ベクトルをローカル座標速度ベクトルに座標変換する。その後、第2段階として、LV座標変換行列“CLV”を用いて、ローカル座標速度ベクトルを移動体座標速度ベクトルに座標変換する。
【0064】
AL座標変換行列“CAL”は、絶対座標系で表したセンサー3の向き(絶対姿勢)により定まる行列であり、LA座標変換行列算出部20により算出されるLA座標変換行列の逆行列である。この場合、AL座標変換行列を用いて絶対座標速度ベクトルをローカル座標速度ベクトルに座標変換すると、式(4)は式(1)と一致する。つまり、次式(5)が成立するため、式(4)及び式(5)から、式(1)が導出される。
【数5】
【0065】
このように式(1)を導出することができるため、第1の取付姿勢判定方法と同様に、取付姿勢を判定することができる。つまり、移動体座標系(Vフレーム)において、Q軸方向及びP軸方向(縦横方向)の速度成分はゼロであるとする制約条件{vPV=vQV=0}に基づき、式(2)及び(3)に従って取付姿勢角を算出する。
【0066】
上記を実現するため、取付姿勢判定部10のAL座標変換行列算出部11は、姿勢センサー3Bから入力した絶対姿勢角を用いて、AL座標変換行列を算出する。そして、取付姿勢判定部10は、絶対座標速度ベクトル算出部40から入力した絶対座標速度ベクトルを、AL座標変換行列算出部11により算出されたAL座標変換行列を用いてローカル座標速度ベクトルに座標変換する。そして、最終的に、ローカル座標速度ベクトルを用いて、式(2)及び式(3)に従って取付姿勢角を算出する。
【0067】
1−3.位置算出方法
次に、上記の取付姿勢判定方法を用いて判定したセンサー3の取付姿勢と、移動ベクトルとを用いて、移動体の位置を算出する位置算出方法について説明する。
【0068】
(1)第1の位置算出方法
図4は、第1の位置算出方法に係る第1の位置算出システム2A(第1の位置算出装置)のシステム構成図である。第1の位置算出システム2Aは、例えば、第1の慣性航法システム(第1のINS(Inertial Navigation System))4Aと、取付姿勢判定部10と、移動状況判定部60と、速度制約条件設定部70と、LV座標変換行列算出部80と、補正部90とを有する。
【0069】
第1の慣性航法システム4Aは、INSとして知られる慣性航法システムであり、そのシステム構成の一例を図5に示す。第1の慣性航法システム4Aは、例えば、加速度センサー3Aと、ジャイロセンサー3Cと、ローカル座標速度ベクトル算出部5と、絶対姿勢判定部15と、LA座標変換行列算出部20と、絶対座標加速度ベクトル算出部30と、絶対座標速度ベクトル算出部40と、絶対座標位置算出部50とを有する。
【0070】
ローカル座標速度ベクトル算出部5は、加速度センサー3Aから入力したローカル座標加速度ベクトルを積分及び継ぎ足し処理することで、ローカル座標速度ベクトルを算出する。
【0071】
絶対姿勢判定部15は、ジャイロセンサー3Cから入力したローカル座標角速度を積分及び継ぎ足し処理することで、絶対姿勢角を判定する。具体的には、絶対座標系で表したセンサー3の所与の基準姿勢からの姿勢角変化分を、ジャイロセンサー3Cから入力したローカル座標角速度を積分することで算出する。そして、基準姿勢に姿勢角変化分を継ぎ足すことで、絶対姿勢角を新たに算出・更新する。
【0072】
LA座標変換行列算出部20、絶対座標加速度ベクトル算出部30及び絶対座標速度ベクトル算出部40は、図3と同様に、それぞれLA座標変換行列、絶対座標加速度ベクトル及び絶対座標速度ベクトルを算出する。
【0073】
絶対座標位置算出部50は、絶対座標速度ベクトル算出部40から入力した絶対座標速度ベクトルを積分及び継ぎ足し処理することで、移動体の絶対座標位置を算出する。つまり、所定時間分の絶対座標速度ベクトルを積分することで、その所定時間の間における位置変化分を算出する。そして、算出した位置変化分を最後に更新した絶対座標位置に継ぎ足すことで、絶対座標位置を新たに算出・更新する。
【0074】
第1の慣性航法システム4Aからは、ローカル座標速度ベクトル算出部5により算出されたローカル速度ベクトルと、絶対姿勢判定部15により算出された絶対姿勢角と、絶対座標速度ベクトル算出部40により算出された絶対座標速度ベクトルと、絶対座標位置算出部50により算出された絶対座標位置とが出力される。
【0075】
図4の説明に戻り、取付姿勢判定部10は、第1の慣性航法システム4Aから入力したローカル座標速度ベクトルを用いて、移動体に対する第1の慣性航法システム4Aの取付姿勢を判定する。
【0076】
移動状況判定部60は、移動体の移動状況を判定する。移動体の移動状況判定は、種々の手法により実現可能である。例えば、慣性航法システムが具備する加速度センサー3Aやジャイロセンサー3Cの計測結果を利用して判定を行う方法が挙げられる。また、移動体が自動車である場合には、自動車に搭載される車速検出システム(例えば車速パルス)により計測された車速を利用して、移動体の移動状況を判定してもよい。
【0077】
速度制約条件設定部70は、移動状況判定部60から入力した移動状況に基づいて、補正部90に適用する速度制約条件を設定する。本実施形態では、移動体の停止時における速度制約条件である「停止時速度制約条件」と、移動体の移動時における速度制約条件である「移動時速度制約条件」との2種類の速度制約条件を切り替えて設定する。
【0078】
停止時速度制約条件は、移動体の速度に関する第1の制約条件であり、移動体の停止時に適用する制約条件である。詳細には、移動体の停止時には、移動体の速度ベクトルはゼロベクトルになるという仮定に基づき設定される制約条件である。この停止時速度制約条件を適用する座標系は任意であるが、例えば絶対座標系で適用することが考えられる。この場合は、例えば{vXA=vYA=vZA=0}を制約条件として与える。
【0079】
移動時速度制約条件は、移動体の移動方向に関する第2の制約条件であり、移動体の移動時に適用する制約条件である。前述したように、移動体が四輪自動車であれば、通常走行時において移動体はジャンプやドリフトすることはないとする仮定に基づき設定される制約条件である。この場合は、例えば{vPV=vQV=0}を制約条件として与える。この制約条件は、移動体座標系において有効な条件である。
【0080】
LV座標変換行列算出部80は、取付姿勢判定部10から入力した取付姿勢角を用いて、ローカル座標系から移動体座標系への座標変換行列(以下、「LV座標変換行列」と称する。)を算出する。なお、LV座標変換行列それ自体は公知であるため、数式等を用いた説明は省略する。
【0081】
補正部90は、第1の慣性航法システム4Aから入力した慣性航法演算結果を補正する。補正部90は、慣性航法演算結果のうち、少なくとも絶対座標位置を補正するように構成されていればよい。つまり、少なくとも絶対座標位置に対して誤差推定演算を行い、推定した位置誤差を用いて絶対座標位置を推定するように構成されていればよい。
【0082】
本実施形態では、補正部90が、絶対座標位置だけではなく、絶対座標速度ベクトル及び絶対姿勢角も併せて補正する場合を例示する。補正部90は、誤差推定部91と、AL座標変換行列算出部93とを有する。
【0083】
誤差推定部91は、第1の慣性航法システム4Aから入力した慣性航法演算結果に含まれる誤差(以下、「慣性航法演算誤差」と称す。)を、所定の誤差推定演算を行うことで推定する。慣性航法演算誤差の推定方法としては種々の手法を適用可能であるが、典型的な手法としては、カルマンフィルターを適用することができる。
【0084】
具体的には、状態ベクトル“X”を、例えば次式(6)のように設定する。
【数6】
但し、“δP”、“δV”及び“δA”は、それぞれ絶対座標位置の誤差(位置誤差)、絶対座標速度ベクトルの誤差(速度ベクトル誤差)及び絶対姿勢角の誤差(姿勢角誤差)である。
【0085】
移動体の停止時には、停止時速度制約条件に従って、例えば次式(7)のような停止時観測ベクトル“Zstop”を設定する。また、移動体の移動時には、移動時速度制約条件に従って、例えば次式(8)のような移動時観測ベクトル“Zmove”を設定する。
【数7】
【数8】
【0086】
但し、式(8)において、|V|は速度の大きさを示す。速度の大きさは、慣性航法演算で得られた絶対座標速度ベクトルの大きさ(スカラー)として計算してもよいし、車速検出システム等の外部システムから取得した速度の大きさとして計算してもよい。
【0087】
上記のように状態ベクトル“X”及び観測ベクトル“Z”を設定し、カルマンフィルターの理論に基づく予測演算(時刻更新)及び補正演算(観測更新)を行って、状態ベクトル“X”の推定値(状態推定値)を求める。
【0088】
上記の定義式において、状態ベクトル“X”は、絶対座標系で表した慣性航法演算誤差として定義されている。停止時観測ベクトル“Zstop”は絶対座標系で定義されているため、同じ座標系での演算が可能である。しかし、移動時観測ベクトル“Zmove”は移動体座標系で定義されているため、同じ座標系での演算が困難である。
【0089】
そこで、AL座標変換行列算出部93は、第1の慣性航法システム4Aから入力した絶対姿勢角を用いて、AL座標変換行列を算出する。そして、算出したAL座標変換行列と、LV座標変換行列算出部80から入力したLV座標変換行列とを用いて、絶対座標系で表した状態ベクトル“X”を、移動体座標系で表した状態ベクトル“X”に座標変換する。つまり、2種類の座標変換行列を用いて、状態ベクトル“X”に2段階の座標変換を施すことになる。
【0090】
同様に、AL座標変換行列及びLV座標変換行列を用いて、慣性航法演算結果である絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角を、それぞれ移動体座標系で表した移動体座標位置、移動体座標速度ベクトル及び移動体姿勢角に座標変換する。つまり、2種類の座標変換行列を用いて、慣性航法演算結果に2段階の座標変換を施すことになる。
【0091】
移動体座標系に座標変換した状態ベクトル“X”に対して、移動体座標系で定義した移動時観測ベクトル“Zmove”を適用して、カルマンフィルターを利用した誤差推定演算を行って慣性航法演算誤差を推定する。そして、移動体座標系で推定された慣性航法演算誤差を用いて、上記の移動体座標位置、移動体座標速度ベクトル及び移動体姿勢角をそれぞれ補正する。そして、移動体座標系から絶対座標系に再変換することで、最終的な補正結果を得る。
【0092】
補正部90から出力される補正位置、補正速度ベクトル及び補正姿勢角は、第1の慣性航法システム4Aにフィードバックされる。第1の慣性航法システム4Aでは、補正部90から入力した補正位置、補正速度ベクトル及び補正姿勢角を用いて、それぞれ絶対座標位置算出部50、絶対座標速度ベクトル算出部40及び絶対姿勢判定部15により算出された絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角が補正される。
【0093】
(2)第2の位置算出方法
図6は、第2の位置算出方法に係る第2の位置算出システム2B(第2の位置算出装置)のシステム構成図である。第2の位置算出システム2Bは、例えば、第2の慣性航法システム(第2のINS)4Bと、取付姿勢判定部10と、移動状況判定部60と、速度制約条件設定部70と、LV座標変換行列算出部80と、補正部90とを有する。
【0094】
図7は、第2の慣性航法システム4Bのシステム構成の一例を示す図である。第2の慣性航法システム4Bは、加速度センサー3Aと、ジャイロセンサー3Cと、絶対姿勢判定部15と、LA座標変換行列算出部20と、絶対座標加速度ベクトル算出部30と、絶対座標速度ベクトル算出部40と、絶対座標位置算出部50とを有する。図5の第1の慣性航法システム4Aにおいて、ローカル座標速度ベクトル算出部5を除いた構成である。
【0095】
第2の慣性航法システム4Bからは、絶対姿勢判定部15により算出された絶対姿勢角と、絶対座標速度ベクトル算出部40により算出された絶対座標速度ベクトルと、絶対座標位置算出部50により算出された絶対座標位置とが出力される。
【0096】
図6の説明に戻り、取付姿勢判定部10は、第2の慣性航法システム4Bから入力した絶対座標速度ベクトルを用いて、移動体に対する第2の慣性航法システム4Bの取付姿勢を判定する。取付姿勢判定部10は、AL座標変換行列算出部11を機能部として有し、図3の第2の取付姿勢判定システム1Bと同様に、取付姿勢を判定する。
【0097】
補正部90は、取付姿勢判定部10から入力した取付姿勢角及びAL座標変換行列と、速度制約条件設定部70から入力した速度制約条件と、LV座標変換行列算出部80から入力したLV座標変換行列とを用いて、第2の慣性航法システム4Bから入力した慣性航法演算結果を補正する。補正部90は、誤差推定部91を機能部として有する。
【0098】
補正部90からは、慣性航法演算結果に対する補正結果である補正位置、補正速度ベクトル及び補正姿勢角が出力される。また、これらの補正結果は、第2の慣性航法システム4Bにフィードバックされる。第2の慣性航法システム4Bは、補正部90から入力した補正結果を利用して、慣性航法演算結果を補正する。
【0099】
1−4.シミュレーション結果
上記の位置算出方法の有効性を示すために、移動体の位置算出を行うシミュレーション実験を行った結果について説明する。設置ずれが生ずるようにセンサー3を移動体に取り付け、上記の位置算出方法を用いて移動体の位置を算出するシミュレーション実験を行った。
【0100】
図8は、従来の手法を用いたシミュレーション結果を示す。それに対し、図9は、本実施形態の手法を用いたシミュレーション結果を示す。各図において、横軸は東西方向、縦軸は南北方向を示し、単位はメートル[m]である。東西方向“0m”、南北方向“0m”の位置をスタート地点とし、大きく反時計回り方向に1周周回するようなダイヤ型の経路を辿った。ゴール地点はスタート地点と同じである。移動体の真の軌跡を破線で示し、算出した位置の軌跡を実線で示す。
【0101】
図8を見ると、従来の手法を用いた場合は、重大な位置誤差が生じていることがわかる。つまり、ダイヤ型の軌跡に沿って位置が算出されるどころか、スタート直後から東方向に向かって位置が逸れていき、最終的には、ゴール地点から程遠い位置をゴール地点と判定していることがわかる。これは、センサー3の取付姿勢を判定せずに位置算出を行った結果である。つまり、ローカル座標系と移動体座標系とが一致していないにも関わらず、移動体座標系で定義される移動時速度制約条件(第2の制約条件)を適用して位置算出を行ったために、当初から誤った方向に位置が算出され、時間経過に伴って誤差が累積的に増加した結果である。
【0102】
それに対し、図9を見ると、本実施形態の手法を用いた場合は、ダイヤ型の真の軌跡に沿ったほぼ正確な軌跡が得られていることがわかる。これは、センサー3の取付姿勢を可能な限り正確に判定して、位置算出を行うことができた結果である。つまり、センサー3の取付姿勢を判定した上で、ローカル座標系と移動体座標系とのズレ分を考慮して移動体座標系への座標変換を行い、移動体座標系で定義される移動時速度制約条件を適用して位置算出を行ったため、このような良好な結果が得られたのである。
【0103】
2.実施例
次に、上記の姿勢判定方法及び位置算出方法を適用したナビゲーションシステムの実施例について説明する。但し、本発明を適用可能な実施例が以下説明する実施例に限定されるわけではないことは勿論である。
【0104】
本実施例におけるナビゲーションシステムは、移動体の一種である四輪自動車(以下、単に「自動車」と称す。)に、原理で説明した取付姿勢判定システム(姿勢判定装置)及び位置算出システム(位置算出装置)を適用したカーナビゲーション装置1000が設置されたシステムとして構成される。
【0105】
カーナビゲーション装置1000は、自動車に搭載される電子機器であり、加速度センサー3A及びジャイロセンサー3Cを有するセンサーユニットとしてIMU(Inertial Measurement Unit)400を具備している。IMU400は、慣性計測ユニットとして知られるセンサーユニットであり、ローカル座標系で表した加速度ベクトル及び角速度を計測して出力可能に構成されている。
【0106】
カーナビゲーション装置1000は、IMU400の計測結果を利用して慣性航法演算処理を行うことで、絶対座標系での自動車の位置を算出する。本実施例では、絶対座標系としてNED座標系を適用する場合について説明する。つまり、カーナビゲーション装置1000は、NED座標系での自動車の位置を算出する。そして、カーナビゲーション装置1000は、算出位置をプロットしたナビゲーション画面を生成し、当該ナビゲーション画面を表示部300であるディスプレイに表示させる。
【0107】
2−1.機能構成
図10は、カーナビゲーション装置1000の機能構成の一例を示すブロック図である。カーナビゲーション装置1000は、主要な機能構成として、処理部100と、操作部200と、表示部300と、IMU400と、記憶部500とを備えて構成される。
【0108】
処理部100は、記憶部500に記憶されているシステムプログラム等の各種プログラムに従ってカーナビゲーション装置1000の各部を統括的に制御する制御装置であり、CPU(Central Processing Unit)等のプロセッサーを有して構成される。処理部100は、IMU400の計測結果を利用した慣性航法演算処理を行って自動車の位置等を算出する。処理部100は、自動車に対するIMU400の姿勢を判定する姿勢判定装置として機能するとともに、自動車の位置を算出する位置算出装置として機能する。
【0109】
図11は、処理部100に係る機能ブロックを中心に示したブロック図である。処理部100は、慣性航法演算部105と、取付姿勢判定部110と、移動状況判定部160と、速度制約条件設定部170と、LV座標変換行列算出部180と、補正部190とを機能部として有する。
【0110】
慣性航法演算部105は、IMU400から入力したローカル座標加速度ベクトル及びローカル座標角速度を用いて、慣性航法演算処理を行って自動車のNED座標位置、NED座標速度ベクトル及び絶対姿勢角を算出する。
【0111】
補正部190は、取付姿勢判定部110から入力したIMU400の取付姿勢角と、速度制約条件設定部170から入力した速度制約条件とを用いて、慣性航法演算部105から入力したNED座標位置、NED座標速度ベクトル及び絶対姿勢角を補正する。補正部190は、KF誤差推定部191と、NL座標変換行列193とを機能部として有する。
【0112】
KF誤差推定部191は、カルマンフィルターを利用してNED座標系での慣性航法演算結果に含まれる慣性航法演算誤差を推定する。
【0113】
NL座標変換行列算出部193は、慣性航法演算部105から入力した絶対姿勢角を用いて、NED座標系からローカル座標系への座標変換行列(以下、「NL座標変換行列」と称す。)を算出する。
【0114】
図10の説明に戻り、操作部200は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号を処理部100に出力する。この操作部200の操作により、目的地の入力等の各種指示入力がなされる。
【0115】
表示部300は、LCD(Liquid Crystal Display)等により構成され、処理部100から入力される表示信号に基づいた各種表示を行う表示装置である。表示部300には、ナビゲーション画面等が表示される。
【0116】
IMU400は、慣性計測ユニットとして知られるセンサーユニットであり、例えば加速度センサー3A及びジャイロセンサー3Cを有して構成される。
【0117】
記憶部500は、ROM(Read Only Memory)やフラッシュROM、RAM(Random Access Memory)等の記憶装置によって構成され、カーナビゲーション装置1000のシステムプログラムや、ナビゲーション機能等の各種機能を実現するための各種プログラム、データ等を記憶している。また、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを有する。
【0118】
2−2.データ構成
図10に示すように、記憶部500には、プログラムとして、処理部100により読み出され、ナビゲーション処理(図12参照)として実行されるナビゲーションプログラム510が記憶されている。ナビゲーションプログラム510は、補正処理(図13参照)として実行される補正プログラム511をサブルーチンとして含む。これらの処理については、フローチャートを用いて詳細に後述する。
【0119】
また、記憶部500には、データとして、速度制約条件520と、IMU計測データ530と、慣性航法演算データ540と、取付姿勢データ550と、座標変換行列データ560と、推定誤差データ570と、補正慣性航法演算データ580とが記憶される。
【0120】
速度制約条件520は、自動車の移動状況に応じた速度の制約条件であり、停止時速度制約条件521と、移動時速度制約条件523とがこれに含まれる。
【0121】
IMU計測データ530は、IMU400の計測結果のデータである。加速度センサー3Aにより計測されたローカル座標加速度ベクトルと、ジャイロセンサー3Cにより計測されたローカル座標角速度とが時系列に記憶される。
【0122】
慣性航法演算データ540は、処理部100がIMU400の計測結果を利用して慣性航法演算処理を行うことで算出したNED座標位置、NED座標速度ベクトル及び絶対姿勢角のデータである。
【0123】
取付姿勢データ550は、処理部100により算出されたIMU400の取付姿勢角が記憶されたデータである。座標変換行列データ560は、処理部100が算出した各種の座標変換行列が記憶されたデータである。
【0124】
推定誤差データ570は、処理部100がKF誤差推定演算を行って推定した慣性航法演算誤差が記憶されたデータである。また、補正慣性航法演算データ580は、処理部100が、慣性航法演算誤差を用いて慣性航法演算結果を補正したデータである。
【0125】
2−3.処理の流れ
図12は、記憶部500に記憶されているナビゲーションプログラム510が処理部100により読み出されて実行されることで、カーナビゲーション装置1000において実行されるナビゲーション処理の流れを示すフローチャートである。以下のナビゲーション処理では、IMU400により計測されたローカル座標加速度ベクトル及びローカル座標角速度が、記憶部500のIMU計測データ530に随時記憶されるものとする。
【0126】
最初に、処理部100は、初期設定を行う(ステップA1)。例えば、カルマンフィルターで利用する各種パラメーター値の初期設定を行う。また、自動車が停止している状態であるとして停止時速度制約条件521を「ON」に設定し、移動時速度制約条件523を「OFF」に設定する。
【0127】
次いで、慣性航法演算部105が、慣性航法演算処理を開始する(ステップA3)。つまり、慣性航法演算部105は、IMU計測データ530に記憶されているIMU400の計測データを利用して慣性航法演算処理を行う。そして、その結果を慣性航法演算データ540として記憶部500に記憶させる。
【0128】
その後、補正部190は、記憶部500に記憶されている補正プログラム511に従って補正処理を開始する(ステップA5)。
【0129】
図13は、補正処理の流れを示すフローチャートである。
先ず、KF誤差推定部191は、移動時速度制約条件523が「ON」に設定されているか否かを判定する(ステップB1)。そして、移動時速度制約条件523が「ON」に設定されていると判定した場合は(ステップB1;Yes)、NL座標変換行列算出部193が、最新の絶対姿勢角を用いてNL座標変換行列を算出し、記憶部500の座標変換行列データ560に記憶させる(ステップB3)。
【0130】
次いで、KF誤差推定部191は、ステップB3で算出したNL座標変換行列を用いて、NED座標速度ベクトルを移動体座標速度ベクトルに変換する(ステップB5)。そして、KF誤差推定部191は、移動時制約速度ベクトルと、移動体座標速度ベクトルとの差を算出して、移動時観測ベクトルとする(ステップB7)。
【0131】
その後、KF誤差推定部191は、KF誤差推定処理を行う(ステップB9)。すなわち、ステップB7で設定した移動時観測ベクトルを観測情報として、予測演算及び補正演算を行って慣性航法演算誤差を推定する。そして、KF誤差推定部191は、推定した慣性航法演算誤差を用いて慣性航法演算結果を補正し、その結果を記憶部500の補正慣性航法演算データ580に記憶させた後(ステップB11)、ステップB1に戻る。
【0132】
また、ステップB1において移動時速度制約条件523が「ON」に設定されていないと判定した場合は(ステップB1;No)、KF誤差推定部191は、停止時速度制約条件521が「ON」に設定されているか否かを判定する(ステップB13)。そして、「ON」に設定されていると判定したならば(ステップB13;Yes)、KF誤差推定部191は、停止時制約速度ベクトルと、NED座標速度ベクトルとの差を算出して、停止時観測ベクトルとする(ステップB15)。
【0133】
その後、KF誤差推定部191は、KF誤差推定処理を行う(ステップB17)。すなわち、ステップB15で設定した停止時観測ベクトルを観測情報として、予測演算及び補正演算を行って慣性航法演算誤差を推定する。そして、KF誤差推定部191は、推定した慣性航法演算誤差を用いて慣性航法演算結果を補正し、その結果を記憶部500の補正慣性航法演算データ580に記憶させた後(ステップB19)、ステップB1に戻る。
【0134】
また、ステップB13において停止時速度制約条件521が「ON」に設定されていないと判定した場合は(ステップB13;No)、補正部190は、ステップB1に戻る。
【0135】
図12の説明に戻り、ステップA5において補正処理を開始したならば、移動状況判定部160は、自動車の移動状況を判定する(ステップA7)。そして、処理部100は、自動車が停止状態から移動を開始したか否かを判定する(ステップA9)。例えば、自動車のブレーキ制御の解除信号を外部入力したり、車速情報を外部入力する等して判定する。
【0136】
自動車が移動を開始したと判定した場合は(ステップA9;Yes)、速度制約条件設定部170は、停止時速度制約条件521を「OFF」に設定する(ステップA11)。そして、処理部100は、所定の取付姿勢判定発動条件が成立したか否かを判定する(ステップA13)。取付姿勢判定発動条件は、原理でも説明したように、取付姿勢の判定精度を保証するために定める条件である。例えば、移動体の停止が解除された後、移動体の速度又は加速度が所定の閾値に達することを発動条件として定めておくと好適である。
【0137】
ステップA13において、未だ取付姿勢判定発動条件が成立していないと判定した場合は(ステップA13;No)、処理部100は、ステップA27へと処理を移行する。取付姿勢判定発動条件が成立したと判定した場合は(ステップA13;Yes)、取付姿勢判定部110は、取付姿勢判定処理を行う(ステップA15)。つまり、最新のローカル座標速度ベクトルを用いて、式(2)及び式(3)に従って取付姿勢角を算出し、記憶部500の取付姿勢データ550を更新する。
【0138】
次いで、処理部100は、ステップA15で算出した取付姿勢角を用いてLV座標変換行列を算出し、記憶部500の座標変換行列データ560を更新する(ステップA17)。そして、処理部100は、移動時速度制約条件523を「ON」に設定する(ステップA19)。
【0139】
一方、ステップA9において自動車が移動を開始したことを検知しなかった場合は(ステップA9;No)、処理部100は、自動車が移動状態から停止状態に変化したか否かを判定する(ステップA21)。停止状態に変化しなかったと判定した場合は(ステップA21;No)、処理部100は、ステップA27に移行する。
【0140】
また、自動車が移動状態から停止状態に変化したと判定した場合は(ステップA21;Yes)、処理部100は、移動時速度制約条件523を「OFF」に設定するとともに(ステップA23)、停止時速度制約条件521を「ON」に設定する(ステップA25)。そして、処理部100は、ステップA27に移行する。
【0141】
処理部100は、位置の出力タイミングであるか否かを判定し(ステップA27)、出力タイミングではないと判定した場合は(ステップA27;No)、ステップA31へと処理を移行する。また、出力タイミングであると判定した場合は(ステップA27;Yes)、処理部100は、最新の補正位置を出力する(ステップA29)。つまり、最新の補正位置に対してマップマッチング処理等を行い、表示部300のナビゲーション画面を更新する。
【0142】
次いで、処理部100は、ナビゲーション処理を終了するか否かを判定する(ステップA31)。例えば、操作部200を介してユーザーによりナビゲーションの終了指示操作がなされた場合に、ナビゲーション処理を終了すると判定する。そして、まだ処理を終了しないと判定した場合は(ステップA31;No)、処理部100は、ステップA7に戻る。また、処理を終了すると判定した場合は(ステップA31;Yes)、処理部100は、ナビゲーション処理を終了する。
【0143】
2−4.実験結果
上記のカーナビゲーション装置1000を自動車に搭載し、実際に自動車を走行させて位置を算出する実験を行った。具体的には、上記のナビゲーション処理に従って自動車の位置を算出し、その位置をプロットする実験を行った。
【0144】
図14は、従来のカーナビゲーション装置1000による実験結果を示す。それに対し、図15は、本実施例のカーナビゲーション装置1000による実験結果を示す。但し、何れの場合もマップマッチング機能はオフとしている。図の見方は、図8及び図9のシミュレーション結果と同じであるが、実際に走行実験を行った結果であるため、経路が異なっている。東西方向“0m”、南北方向“0m”の位置をスタート地点とし、東方向“12000m”、南方向“10000m”の近傍位置をゴール地点として、スタート地点からゴール地点まで自動車を実際に走行させた。
【0145】
この結果を見ると、図14の従来のカーナビゲーション装置1000による実験結果では、図8のシミュレーション結果と同様に、スタート直後から誤った方向に位置が算出され、最終的には、ゴール地点から程遠い位置をゴール地点と判定している。それに対し、図15の本実施例のカーナビゲーション装置1000による実験結果では、図9のシミュレーション結果と同様に、ほぼ真の軌跡に沿った正確な軌跡が得られていることがわかる。これにより、実環境においても、本実施形態の位置算出方法は有効であることが示された。
【0146】
3.作用効果
本実施形態によれば、移動体に設置されたセンサー3により移動ベクトルが計測される。そして、移動体が移動を開始した際にセンサー3が計測した移動ベクトルを用いて、移動体に対するセンサー3の姿勢が判定される。
【0147】
第1の取付姿勢判定システム1Aでは、ローカル座標速度ベクトル算出部5が、加速度センサー3Aが計測したローカル座標加速度ベクトルを用いてローカル座標速度ベクトルを算出する。そして、取付姿勢判定部10が、移動体が移動を開始した際のローカル座標速度ベクトルを用いて、加速度センサー3Aの取付姿勢のうちのピッチ成分及びヨー成分を判定する。
【0148】
また、第2の取付姿勢判定システム1Bでは、LA座標変換行列算出部20が、姿勢センサー3Bが計測した絶対座標系で表したセンサー3の向き(絶対姿勢)を用いて、ローカル座標系から絶対座標系への座標変換行列(LA座標変換行列)を算出する。そして、絶対座標加速度ベクトル算出部30が、加速度センサー3Aが計測したローカル座標加速度ベクトルを、LA座標変換行列を用いて絶対座標加速度ベクトルに座標変換する。さらに、絶対座標速度ベクトル算出部40は、絶対座標加速度ベクトルを用いて絶対座標速度ベクトルを算出する。取付姿勢判定部10は、姿勢センサー3Bが計測した絶対座標系で表したセンサー3の向きを用いて絶対座標系からローカル座標系への座標変換行列(AL座標変換行列)を算出し、当該AL座標変換行列と、絶対座標速度ベクトルとを用いて、加速度センサー3Aの取付姿勢のうちのピッチ成分及びヨー成分を判定する。
【0149】
また、移動体が停止している際には、センサー3の計測結果を補償するための補償演算を行う。例えば、移動体が停止している場合は、移動体の速度ベクトルの各成分はゼロであるとする制約条件(第1の制約条件)を用いて、センサー3の計測結果を補償する。これにより、移動体の停止中は、センサー3の計測結果に含まれる誤差を低減させることができる。誤差が低減された状態で移動体が移動を開始しても、それほど時間が経過していなければ、移動体の速度ベクトルの誤差は抑制されているはずである。そのため、移動体が移動を開始した際の速度ベクトルを利用することで、移動体に対するセンサー3の相対的な姿勢を正しく判定することができる。
【0150】
また、第1の位置算出システム2Aでは、第1の慣性航法システム4Aの慣性航法演算結果(絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角)が、補正部90によって補正される。補正部90は、取付姿勢判定部10により判定された第1の慣性航法システム4Aの取付姿勢と、速度制約条件設定部70により設定された停止時速度制約条件(第1の制約条件)又は移動時速度制約条件(第2の制約条件)と、LV座標変換行列算出部80により算出されたLV座標変換行列とを用いて、所定の誤差推定演算を行って慣性航法演算誤差を推定する。そして、推定した慣性航法演算誤差を用いて慣性航法演算結果を補正する。また、第2の位置算出システム2Bにおいても同様に、第2の慣性航法システム4Bの慣性航法演算結果(絶対座標位置、絶対座標速度ベクトル及び絶対姿勢角)が、補正部90によって補正される。
【0151】
このように、第1又は第2の取付姿勢判定方法を用いて判定したセンサー3の取付姿勢と、センサー3が計測した移動ベクトル(加速度ベクトルや速度ベクトル)とを用いることで、ローカル座標系と移動体座標系とのズレ分を考慮し、この2種類の座標系の座標変換を適切に行って、移動体の位置をより正確に算出することができる。
【0152】
4.変形例
本発明を適用可能な実施例は、上記の実施例に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能であることは勿論である。以下、変形例について説明するが、上記の実施例と同一の構成要素については同一の符号を付して説明を省略し、上記の実施例とは異なる部分を中心に説明する。
【0153】
4−1.進行方向切替対応ロジック
上記の実施形態では、移動体が移動を開始した際に求めたLV座標変換行列を用いて位置算出を行うものとして説明した。しかし、移動体は必ずしも進行方向前方にのみ移動するとは限らない。例えば、移動体が四輪自動車であるならば、四輪自動車は前方に進行するに限らず、後方に進行する(バックする)場合もあり得る。
【0154】
従って、移動体の進行方向が前進と後進とで切り替わる場合、進行方向の変化の前後で同じLV座標変換行列を用いて計算を行ったのでは、移動体の速度や位置が適切に求まらないことが想定される。なぜならば、本実施形態の手法では、移動体が移動を開始した際の移動体の移動方向に対する移動ベクトルを用いてセンサー3の取付姿勢を判定するため、移動体の移動方向が逆転してしまうと、取付姿勢と移動方向との間で辻褄が合わなくなるためである。
【0155】
上記の問題に鑑み、次のような進行方向切替対応ロジックを適用すると好適である。具体的には、例えば移動体座標系での移動体の速度ベクトルに基づいて、移動体の移動方向が逆転したか否かを判定する。そして、移動体の移動方向が逆転した場合に、移動開始時に求めて記憶しておいたLV座標変換行列を180°回転させて更新し、更新後のLV座標変換行列を用いて計算を行う。
【0156】
図16は、この場合に、実施例のカーナビゲーション装置1000が図12のナビゲーション処理に代えて実行する第2のナビゲーション処理の流れを示すフローチャートである。
【0157】
第2のナビゲーション処理では、処理部100は、ステップA19又はステップA25の後、移動体座標系のロール軸(R軸)の速度成分の正負の符号が逆転したか否かを判定する(ステップC25)。符号が逆転していない場合は(ステップC25;No)、自動車の移動方向は変化していないものと判断し、ステップA27に移行する。
【0158】
それに対し、正負の符号が逆転している場合は(ステップC25;Yes)、処理部100は、自動車の移動方向が変化したものと判断し、座標変換行列データ560に記憶されている最新のLV座標変換行列を180°回転させて、座標変換行列データ560を更新する(ステップC26)。そして、処理部100は、ステップA27に移行する。
【0159】
図17及び図18は、上記の進行方向切替対応ロジックの有効性を示す実験結果である。図17は、進行方向切替対応ロジックを適用しない場合の実験結果である。それに対し、図18は、進行方向切替対応ロジックを適用した場合の実験結果である。車の進行方向前方(前進方向)とセンサー3のx軸正方向とが一致するようにセンサー3を設置した。つまり、この場合のセンサー3の取付姿勢角は「0°」である。
【0160】
自動車を時刻「t0」〜「t1」までの期間停止させた。そして、時刻「t1」においてバックで移動開始し、時刻「t2」において自動車を一旦停止させて、今度は自動車を前方に移動させた。各図において、横軸は時間軸を示し、縦軸は自動車のロール軸速度(単位は[m/s])及びセンサー3の取付姿勢角(単位は[°])を示す。また、判定されたセンサー3の取付姿勢角を太実線で示し、算出された自動車のロール軸速度を細実線で示す。
【0161】
これらの図を見ると、時刻「t0」〜「t1」までの間は、ロール軸速度はゼロとなっている。そして、時刻「t1」において自動車がバックを開始するとロール軸速度は負の値となり、時刻「t2」までは徐々に減少していく。
【0162】
その後、時刻「t2」においてロール軸速度の絶対値が所定の閾値を超えると、取付姿勢判定発動条件が成立する(図16のステップA13;Yes)。これにより、センサー3の取付姿勢が判定される(図16のステップA15)。この場合、取付姿勢判定部10は、自動車が後進(バック)した方向を自動車の移動方向と認識して取付姿勢を判定するため、実際にはセンサー3の取付姿勢角は「0°」であるのに、取付姿勢角を「180°」と判定してしまう。
【0163】
この場合、取付姿勢角を「180°」としてLV座標変換行列を算出し(図16のステップA17)、当該LV座標変換行列を用いて計算を行うため、自動車のロール軸速度は正の値として算出されてしまう。自動車はバックで移動しているため、実際にはロール軸速度は負の値である。
【0164】
進行方向切替対応ロジックを適用しない場合は、図17に示すように、時刻「t3」において自動車が前方に移動を開始しても、センサー3の取付姿勢角が「180°」であると認識したまま計算を行うため、ロール軸速度の符号は変化しない。そのため、正の値として算出されるべきロール軸速度は負の値として算出され、自動車が前方に加速するにつれて、ロール軸速度は負の方向に増大してしまっている。
【0165】
それに対し、進行方向切替対応ロジックを適用した場合は、図18に示すように、時刻「t3」において自動車が前方に移動を開始したことを検知すると(図16のステップC25;Yes)、取付姿勢角を「180°」として算出したLV座標変換行列を反転させて更新する(図16のステップC26)。そして、反転後のLV座標変換行列を用いて計算を行うため、算出されるロール軸速度の符号は負から正に変化する。そして、自動車が前方に加速したことで、ロール軸速度は正の方向に増大していく。このように、進行方向切替対応ロジックを適用することで、移動体の進行方向の変化に適切に対応することができる。
【0166】
4−2.補正部の補正方法
上記の実施形態では、慣性航法演算結果を補正する手法としてカルマンフィルターを例に挙げて説明したが、補正方法はこれに限られない。例えば、速度制約条件設定部70により設定された速度制約条件に含まれる制約速度ベクトルと、慣性航法演算で得られた速度ベクトルとの平均化処理を行って速度ベクトルを補正することとしてもよい。
【0167】
また、車速検出システムにより計測された移動体の速度や、磁気センサー等の方位センサーにより計測された移動体の向きを用いて、慣性航法演算で得られた速度ベクトルを補正することとしてもよい。例えば、速度ベクトルの大きさについて、慣性航法演算で得られた速度ベクトルの大きさと、車速検出システムにより計測された速度との平均化処理を行うこととしてもよい。また、速度ベクトルの向きについて、慣性航法演算で得られた速度ベクトルの向きと、方位センサーにより計測された移動体の向きとの平均化処理を行うこととしてもよい。
【0168】
平均化処理は、単純な算術平均や幾何平均を適用してもよいし、加重平均を適用してもよい。慣性航法演算結果を信用して速度ベクトルを補正するのであれば、慣性航法演算結果の重みを車速検出システムや方位センサーの計測結果の重みよりも高くして加重平均すればよい。逆に、車速検出システムや方位センサーの計測結果を信用して速度ベクトルを補正するのであれば、慣性航法演算結果の重みを車速検出システムや方位センサーの計測結果の重みよりも低くして加重平均すればよい。なお、これらの手法以外にも、補正部の補正手法としては任意の手法を適用可能である。
【0169】
4−3.処理の主体
上記の実施例では、電子機器にIMU400が搭載され、IMU400の計測結果に基づいて、電子機器の処理部が慣性航法演算処理を行うものとして説明した。しかし、電子機器にINSを搭載することとし、INSの処理部が慣性航法演算処理を行うこととしてもよい。この場合、電子機器の処理部は、INSから出力される慣性航法演算結果に含まれる誤差(慣性航法演算誤差)を推定する処理を行う。そして、推定した慣性航法演算誤差を用いて、INSから入力した慣性航法演算結果を補正する。
【0170】
また、電子機器にGPS(Global Positioning System)等の衛星測位システムを適用したセンサーユニットを搭載することとし、このセンサーユニットの計測結果を利用して、慣性航法演算結果を補正することとしてもよい。
【0171】
図19は、この場合における電子機器の構成を示す図であり、処理部100に係る機能ブロックを中心に示したものである。図19の電子機器では、図11のIMU400の代わりにINS700が搭載され、さらにGPSユニット800が搭載されている。この場合、処理部100は慣性航法演算処理を行わないため、図11における慣性航法演算部105は削除されている。
【0172】
取付姿勢判定部110は、INS700から入力したローカル座標速度ベクトルを用いて、INS700の取付姿勢を判定する。補正部190のKF誤差推定部191は、速度制約条件設定部170から入力した速度制約条件の他に、GPSユニット800から入力したメジャメント情報を観測情報として、INS700の慣性航法演算結果に含まれる慣性航法演算誤差を推定する。
【0173】
メジャメント情報は、GPS衛星から受信したGPS衛星信号に係る各種の諸量である。例えば、GPS衛星信号のキャリア位相やコード位相、ドップラー周波数、擬似距離、擬似距離の変化率(レンジレート)といった諸量がメジャメント情報に含まれる。なお、GPSのメジャメント情報を観測情報として慣性航法演算誤差を推定する手法については従来公知であるため、数式等を用いた説明は省略する。
【0174】
4−4.姿勢判定タイミング
上記の実施形態では、移動体が停止した後に移動を開始する度に、センサー3の取付姿勢を判定するものとして説明した。しかし、姿勢判定タイミングは適宜設定可能である。例えば、センサー3が移動体に設置された後、移動体の初回の移動開始タイミングにのみセンサー3の取付姿勢を判定することとしてもよい。この場合は、初回以降は取付姿勢判定を行わず、初回に判定した取付姿勢を用いて処理を行うようにすればよい。
【0175】
4−5.姿勢判定の成分
上記の実施形態では、移動体に対するセンサー3の取付姿勢のピッチ成分及びヨー成分の両方を判定するものとして説明したが、ピッチ成分及びヨー成分の何れか一方のみを判定することとしてもよいのは勿論である。
【0176】
4−6.設置ずれの誤差
上記の実施形態では、移動中はセンサー3の取付姿勢に変化が生じないことを前提としていた。しかし、移動中の振動等によってセンサー3の取付姿勢の変化、すなわち設置ずれが生じる可能性がある。そこで、式(6)の状態ベクトルに設置ずれによる誤差角度の成分を追加し、KF誤差推定部191が移動時速度制約条件521を「ON」として求めた移動時観測ベクトルを用いてKF誤差推定処理を行って(ステップB9)、設置ずれの誤差角度を推定することとしてもよい。このようにすることで、移動中にセンサー3の取付姿勢が変化した場合であっても、図12や図16のステップA15の取付姿勢判定処理で判定された取付姿勢を随時補正することが可能となる。
【0177】
4−7.取付姿勢判定処理の変形例
図3等を用いて説明した取付姿勢の判定では、IMU400が計測するローカル座標加速度ベクトルにバイアス誤差がのっている場合、算出されるAL座標変換行列にもバイアス誤差が含まれるため、正確な姿勢の判定ができない場合が考えられる。そこで、次のようにしてもよい。
【0178】
すなわち、図20に示すように、図11に示した処理部100の機能ブロックにおいて、IMU400が計測したローカル座標加速度ベクトル及びローカル座標角速度を取付姿勢判定部110へ入力するようにする。そして、取付姿勢判定部110(処理部100)は、図21に示す第2の取付姿勢判定処理を実行する。
【0179】
図21において、処理部100は、自動車が停止しているか否かを判定する(ステップD1)。停止している場合には、ローカル座標速度ベクトルをゼロリセットするとともに(ステップD3)、IMU400で計測されているローカル座標角速度及びローカル座標加速度ベクトルを停止時の計測データとして取得・更新する(ステップD5)。このときのローカル座標角速度をローカル座標停止時角速度Ωsと称し、ローカル座標加速度をローカル座標停止時加速度αsと称する。
【0180】
停止が継続している間、ステップD3〜D5を繰り返し行い、停止が解除され、自動車が移動を開始したと判定された場合は(ステップD7:YES)、次の処理に移行する。ここで、移動中のIMU400で計測されているローカル座標角速度を符号Ωmとし、ローカル座標加速度を符号αmとして説明する。まず、ローカル座標の回転情報を算出する(ステップD9)。具体的には、ローカル座標停止時角速度Ωsに対するローカル座標角速度Ωmの時間変化(時間微分)を積算し、継ぎ足していく。この値は、停止時のローカル座標系に対する座標系自体の回転、すなわちローカル座標回転情報を示す。
【0181】
次いで、ローカル座標停止時加速度ベクトルαsを、ステップD9で算出したローカル座標回転情報を用いて逆変換することで、IMU400で計測されているローカル座標系における加速度αmsに変換する(ステップD11)。そして、IMU400で計測されているローカル座標加速度αmと変換した加速度αmsとの差を取ることで、当該時点の加速度αfを求める(ステップD13)。変換した加速度αmsと、IMU400で計測されているローカル座標系における加速度αmとは、同じローカル座標系上での加速度である。そして、もしも両者の加速度ベクトルにバイアス誤差がのっていたとしても、その差を求める結果、バイアス誤差は相殺することになる。また、重力加速度も相殺される。そのため、IMU400で計測されているローカル座標系における自動車自体の純粋な加速度に係るベクトルαfが得られる。
【0182】
次いで、得られた加速度ベクトルαfを用いて、ローカル座標速度ベクトルを更新する(ステップD15)。更新が初回の場合は、ステップD3でリセットしたローカル座標速度ベクトルが初めて更新されるため、停止時のローカル座標系における移動開始直後の速度ベクトルが得られる。以降、取付姿勢の判定タイミングが到来するまでステップD9〜D15の処理を繰り返す(ステップD17)。取付姿勢の判定タイミングは、図12のステップA13の取付姿勢判定発動条件の成否で判定すると好適である。
姿勢判定の判定タイミングが到来した場合、最新のローカル座標速度ベクトルをもとに、上述の式(2)及び式(3)を用いて取付姿勢を判定する(ステップD19)。
【0183】
以上の第2の取付姿勢判定処理は、ナビゲーション処理の実行中に並行して実行することとするとよい。例えば図12や図16のステップA3とA5の間に、第2の取付姿勢判定処理の実行を開始するステップを加える。この場合、第2の取付姿勢判定処理は、図12や図16のステップA15で実行される取付姿勢判定処理の代わりの処理となるため、ステップA15では取付姿勢判定処理を行わずともよい。
【0184】
また、第2の取付姿勢判定処理の効果確認試験を行った。ローカル座標系のx軸及びz軸にバイアス誤差を生じさせた場合の従来の取付姿勢判定処理の判定結果と、第2の取付姿勢判定処理の判定結果とを比較した。x軸に+1[mG]、z軸に−1[mG]のバイアス誤差を生じさせた第1試験では、従来の取付姿勢判定処理ではヨー角の誤差が−3.40[deg]、ピッチ角の誤差が+5.53[deg]であった。一方、第2の取付姿勢判定処理ではヨー角の誤差が+0.06[deg]、ピッチ角の誤差が−0.01[deg]であった。また、x軸に+100[mG]、z軸に−100[mG]のバイアス誤差を生じさせた第2試験では、従来の取付姿勢判定処理ではヨー角の誤差が+74.26[deg]、ピッチ角の誤差が−34.30[deg]であった。一方、第2の取付姿勢判定処理ではヨー角の誤差が+0.05[deg]、ピッチ角の誤差が+0.00[deg]であった。
【0185】
4−8.移動体
本発明は種々の移動体に適用可能である。好適な適用例は四輪自動車であるが、例えば移動時には縦方向や横方向に移動しないといった移動方向に関する制約を課すことができるのであれば、二輪自動車や自転車、電車、船、人間といった移動体にも本発明を適用可能である。
【0186】
4−9.電子機器
上記の実施例では、カーナビゲーション装置に本発明を適用した場合を例に挙げて説明したが、本発明を適用可能な電子機器はこれに限られるわけではない。例えば、携帯型ナビゲーション装置(ポータブルナビ)や携帯型電話機、パソコン、PDAといった他の電子機器にも本発明を適用可能である。
【符号の説明】
【0187】
1A 第1の取付姿勢判定システム、 1B 第2の取付姿勢判定システム、 2A 第1の位置算出システム、 2B 第2の位置算出システム、 3 センサー、 3A 加速度センサー、 3B 姿勢センサー、 3C ジャイロセンサー、 4A 第1の慣性航法システム、 4B 第2の慣性航法システム、 5 ローカル座標速度ベクトル算出部、 10 取付姿勢判定部、 15 絶対姿勢判定部、 20 LA座標変換行列算出部、 30 絶対座標加速度ベクトル算出部、 40 絶対座標速度ベクトル算出部、 50 絶対座標位置算出部、 60 移動状況判定部、 70 速度制約条件設定部、 80 LV座標変換行列算出部、 90 補正部
【特許請求の範囲】
【請求項1】
移動体に設置された移動ベクトルを計測するセンサーが前記移動ベクトルを計測することと、
前記移動体が移動を開始した際に前記センサーが計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定することと、
を含む姿勢判定方法。
【請求項2】
前記移動体が停止している場合に、前記移動体の速度に関する第1の制約条件を用いて、前記センサーの計測結果を補償すること、
を更に含む請求項1に記載の姿勢判定方法。
【請求項3】
前記姿勢を判定することは、前記移動体に対する前記姿勢のロール成分を判定せず、ピッチ成分及びヨー成分のうちの少なくも一方を判定することである、
請求項1又は2に記載の姿勢判定方法。
【請求項4】
前記移動ベクトルを計測することは、前記移動体の移動空間を定める座標系である絶対座標系での移動ベクトルを計測することであり、
前記姿勢を判定することは、前記移動ベクトルと、前記絶対座標系で表した前記センサーの向きとを用いて、前記センサーの前記姿勢を判定することである、
請求項1〜3の何れか一項に記載の姿勢判定方法。
【請求項5】
前記姿勢を判定することは、
前記移動体の停止時に前記センサーにより計測された移動ベクトルと、移動を開始した際に計測された移動ベクトルとを用いて、前記センサーの計測座標系であるローカル座標系における速度ベクトルを算出することと、
前記速度ベクトルを用いて前記センサーの姿勢を判定することと、
を含む、
請求項1〜3の何れか一項に記載の姿勢判定方法。
【請求項6】
前記姿勢を判定することは、前記移動体の停止が解除されて前記移動体の速度又は加速度が所定の閾値に達した時の前記移動ベクトルを用いて前記姿勢を判定することである、
請求項1〜5の何れか一項に記載の姿勢判定方法。
【請求項7】
請求項1〜6の何れか一項に記載の姿勢判定方法を用いて前記姿勢を判定することと、
前記姿勢と前記移動ベクトルとを用いて前記移動体の位置を算出することと、
を含む位置算出方法。
【請求項8】
前記位置を算出することは、
前記移動ベクトルを用いて前記絶対座標系での前記移動体の絶対座標位置を算出することと、
前記姿勢と前記絶対座標系で表した前記センサーの向きとを用いて、前記絶対座標位置を、前記移動体を基準とする移動体座標位置に座標変換することと、
前記移動体座標位置と、前記移動体の移動方向に関する第2の制約条件とを用いて、前記絶対座標位置を補正することと、
を含む、
請求項7に記載の位置算出方法。
【請求項9】
移動体に設置された移動ベクトルを計測するセンサーが前記移動体が移動を開始した際に計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定する姿勢判定装置。
【請求項1】
移動体に設置された移動ベクトルを計測するセンサーが前記移動ベクトルを計測することと、
前記移動体が移動を開始した際に前記センサーが計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定することと、
を含む姿勢判定方法。
【請求項2】
前記移動体が停止している場合に、前記移動体の速度に関する第1の制約条件を用いて、前記センサーの計測結果を補償すること、
を更に含む請求項1に記載の姿勢判定方法。
【請求項3】
前記姿勢を判定することは、前記移動体に対する前記姿勢のロール成分を判定せず、ピッチ成分及びヨー成分のうちの少なくも一方を判定することである、
請求項1又は2に記載の姿勢判定方法。
【請求項4】
前記移動ベクトルを計測することは、前記移動体の移動空間を定める座標系である絶対座標系での移動ベクトルを計測することであり、
前記姿勢を判定することは、前記移動ベクトルと、前記絶対座標系で表した前記センサーの向きとを用いて、前記センサーの前記姿勢を判定することである、
請求項1〜3の何れか一項に記載の姿勢判定方法。
【請求項5】
前記姿勢を判定することは、
前記移動体の停止時に前記センサーにより計測された移動ベクトルと、移動を開始した際に計測された移動ベクトルとを用いて、前記センサーの計測座標系であるローカル座標系における速度ベクトルを算出することと、
前記速度ベクトルを用いて前記センサーの姿勢を判定することと、
を含む、
請求項1〜3の何れか一項に記載の姿勢判定方法。
【請求項6】
前記姿勢を判定することは、前記移動体の停止が解除されて前記移動体の速度又は加速度が所定の閾値に達した時の前記移動ベクトルを用いて前記姿勢を判定することである、
請求項1〜5の何れか一項に記載の姿勢判定方法。
【請求項7】
請求項1〜6の何れか一項に記載の姿勢判定方法を用いて前記姿勢を判定することと、
前記姿勢と前記移動ベクトルとを用いて前記移動体の位置を算出することと、
を含む位置算出方法。
【請求項8】
前記位置を算出することは、
前記移動ベクトルを用いて前記絶対座標系での前記移動体の絶対座標位置を算出することと、
前記姿勢と前記絶対座標系で表した前記センサーの向きとを用いて、前記絶対座標位置を、前記移動体を基準とする移動体座標位置に座標変換することと、
前記移動体座標位置と、前記移動体の移動方向に関する第2の制約条件とを用いて、前記絶対座標位置を補正することと、
を含む、
請求項7に記載の位置算出方法。
【請求項9】
移動体に設置された移動ベクトルを計測するセンサーが前記移動体が移動を開始した際に計測した前記移動ベクトルを用いて、前記移動体に対する前記センサーの姿勢を判定する姿勢判定装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2012−194175(P2012−194175A)
【公開日】平成24年10月11日(2012.10.11)
【国際特許分類】
【出願番号】特願2011−275235(P2011−275235)
【出願日】平成23年12月16日(2011.12.16)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.INS
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
【公開日】平成24年10月11日(2012.10.11)
【国際特許分類】
【出願日】平成23年12月16日(2011.12.16)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.INS
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
[ Back to top ]