説明

姿勢推定装置、姿勢推定方法、姿勢推定プログラム

【課題】姿勢角速度バイアスを推定する計算の効率を向上する技術を提供する。
【解決手段】姿勢推定部8は、傾斜角センサの計測結果に基づいて倒立二輪車本体の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する第1姿勢角度四元数生成部20と、ジャイロセンサの計測結果に基づいて倒立二輪車本体の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する第2姿勢角度四元数生成部21と、カルマンフィルタ係数K1を生成するフィルタ係数生成部22と、下記式(9)により姿勢角速度バイアス四元数bnを推定する姿勢角速度バイアス四元数推定部26と、を備える。ただし、bn-1は、前回の姿勢角速度バイアス四元数である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、姿勢推定装置、姿勢推定方法、及び、姿勢推定プログラムに関する。
【背景技術】
【0002】
この種の技術として、特許文献1は、チルト検出手段と角速度検出手段を有した傾動可能な物体の姿勢を推定する方法を開示している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2003−521697号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、本願出願人は、移動ロボットの姿勢を推定する技術を開発しており、具体的には、移動ロボットに、姿勢角度を計測する傾斜センサ(例えば3軸加速度センサ)と、姿勢角度の変化である姿勢角速度を計測するジャイロセンサとを設けている。そして、傾斜センサの計測結果と、ジャイロセンサの計測結果とをフィルタ処理により合成することで、移動ロボットの姿勢を精度よく推定することとしている。即ち、移動ロボットの姿勢の推定は、以下の式により行われる。以下の式(1)〜(3)は、オイラー角表現による1つの軸についてのフィルタ処理を示している。
【0005】
【数1】

【0006】
【数2】

【0007】
【数3】

【0008】
αドットmeasuredは、ジャイロセンサによる姿勢角速度の計測結果である。
αmeasuredは、傾斜センサによる姿勢角度の計測結果である。
αpredictは、ジャイロセンサによる姿勢角速度の計測結果を用いて予測した、移動ロボットの姿勢角度の予測値である。
αnは、移動ロボットの姿勢角度の予測値に、傾斜センサによる姿勢角度の計測結果を加味した、移動ロボットの姿勢角度の推定値である。
bnは、ジャイロセンサの姿勢角速度バイアスの推定値である。
bn-1は、前回のジャイロセンサの姿勢角速度バイアスの推定値である。
dtは、サンプリング周期である。
K0は、カルマンフィルタ係数である。
K1は、カルマンフィルタ係数である。
【0009】
上記式(2)は1つの軸についてのフィルタ処理を示しているので、3つの軸については、上記フィルタ処理を3回繰り返すことになり、計算コストが高い。これに対し、本願出願人は、四元数の概念を導入して、上記式(2)の計算コストを抑えることに成功している。詳しくは以下の通りである。
【0010】
上記式(2)を変形すると、下記式(4)となる。下記式(4)においてαnは、αpredictとαmeasuredという2つの角度を(1-K0):K0の比率で補間する角度に相当している。αをオイラー角による1つの軸の角度としてではなく四元数であるとすると、下記式(4)の演算は球面線形補間(slerp:Spherical linear interpolation)と同一の形として捉えることができる。
【0011】
【数4】

【0012】
ここで、q0とq1の2つの四元数の間を変数tで補間する関数slerp(q0,q1,t)は理論上、下記式(5)によって定義される。
【0013】
【数5】

【0014】
上記式(5)は、q0とq1の間の弧の長さであるωを利用して下記式(6)で代替することができる。
【0015】
【数6】

【0016】
そして、2つの四元数の間の三角関数は下記式(7)で簡単に求められる。
【0017】
【数7】

【0018】
従って、下記式(8)のようになる。
【0019】
【数8】

【0020】
以上のように、αをオイラー角による1つの軸の姿勢角度ではなく四元数であるとして四元数特有の球面線形補間を利用することにより、上記式(2)を低い計算コストで実行することが可能となる。このような上記式(2)についての効率的な計算手法については、本願出願人が既に特許出願している。
【0021】
一方で、上記式(3)の演算については改善の余地が残されていた。詳しくは、上記式(3)については、上記式(2)と違って、四元数特有の球面線形補間を利用するかたちには持っていくことができない。従って、αmeasured等が既に四元数であった場合には、一度オイラー角表現に戻して演算を実行し、再度四元数に戻すといった計算が必要となる。そして、四元数とオイラー角の間の変換には、三角関数や逆関数といった時間がかかる関数を多用するため、結果として上記式(3)の演算には多くの時間を費やしていた。
【0022】
本願発明の目的は、姿勢角速度バイアスを推定する計算の効率を向上する技術を提供することにある。
【課題を解決するための手段】
【0023】
本願発明の第1の観点によれば、傾斜角センサとジャイロセンサを備えた機器本体の姿勢を前記傾斜角センサの計測結果と前記ジャイロセンサの計測結果に基づいて推定する姿勢推定装置であって、前記傾斜角センサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する第1姿勢角度四元数生成手段と、前記ジャイロセンサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する第2姿勢角度四元数生成手段と、フィルタ係数K1を生成するフィルタ係数生成手段と、下記式(9)により姿勢角速度バイアス四元数bnを推定する姿勢角速度バイアス四元数推定手段と、を備えた姿勢推定装置が提供される。ただし、bn-1は、前回の姿勢角速度バイアス四元数である。以上の構成によれば、四元数表現をオイラー角表現に変換したり、オイラー角表現を四元数表現に変換する必要がなく、四元数表現のまま前記姿勢角速度バイアス四元数bnを推定することができる。従って、前記角速度バイアス四元数bnを高い計算効率で推定することができる。
【0024】
【数9】

【0025】
好ましくは、前記姿勢角速度バイアス推定手段は、前記フィルタ係数K1が負である場合は、前記フィルタ係数K1の正負を反転させた上で、前記式(9)により姿勢角速度バイアス四元数bnを推定する。以上の構成によれば、四元数の累乗を問題なく演算することができる。
【0026】
好ましくは、前記姿勢角速度バイアス推定手段は、前記フィルタ係数K1の絶対値が1を超える場合は、前記フィルタ係数K1の絶対値を1にした上で、前記式(9)により姿勢角速度バイアス四元数bnを推定する。以上の構成によれば、四元数の累乗を問題なく演算することができる。
【0027】
本願発明の第2の観点によれば、傾斜角センサとジャイロセンサを備えた機器本体の姿勢を前記傾斜角センサの計測結果と前記ジャイロセンサの計測結果に基づいて推定する姿勢推定方法であって、前記傾斜角センサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する第1姿勢角度四元数生成ステップと、前記ジャイロセンサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する第2姿勢角度四元数生成ステップと、フィルタ係数K1を生成するフィルタ係数生成ステップと、上記式(9)により姿勢角速度バイアス四元数bnを推定する姿勢角速度バイアス四元数推定ステップと、を備えた姿勢推定方法が提供される。ただし、bn-1は、前回の姿勢角速度バイアス四元数である。
【0028】
また、コンピュータに、上記の姿勢推定方法を実行させるための姿勢推定プログラムが提供される。
【発明の効果】
【0029】
本願発明によれば、四元数表現をオイラー角表現に変換したり、オイラー角表現を四元数表現に変換する必要がなく、四元数表現のまま前記姿勢角速度バイアス四元数bnを推定することができる。従って、前記角速度バイアス四元数bnを高い計算効率で推定することができる。
【図面の簡単な説明】
【0030】
【図1】図1は、倒立二輪車本体のブロック図である。
【図2】図2は、姿勢推定部のブロック図である。
【図3】図3は、姿勢角速度バイアス四元数推定部のブロック図である。
【図4】図4は、倒立二輪車の制御フローである。
【発明を実施するための形態】
【0031】
以下、図1〜4を参照して、本願発明の実施形態を説明する。
【0032】
倒立二輪車1(移動ロボット、機器)は、倒立二輪車本体2(機器本体)と、図示しない台車、ハンドル、車輪等を備えて構成されている。
【0033】
倒立二輪車本体2は、傾斜角センサ3と、ジャイロセンサ4と、CPU5(Central Processing Unit)と、RAM6(Random Access Memory)と、ROM7(Read Only Memory)と、によって構成されている。ROM7には、姿勢推定プログラムと姿勢制御プログラムが記憶されている。姿勢推定プログラムと姿勢制御プログラムは、CPU5に読み込まれ、CPU5上で実行されることで、CPU5等のハードウェアに、姿勢推定部8(姿勢推定装置)及び姿勢制御部9としての機能を発揮させるようになっている。
【0034】
姿勢推定部8は、倒立二輪車本体2の姿勢を傾斜角センサ3の計測結果とジャイロセンサ4の計測結果に基づいて推定するものである。なお、「倒立二輪車本体2の姿勢」は、「倒立二輪車本体2の姿勢角度」と「倒立二輪車本体2の姿勢角速度」を含む概念である。
【0035】
姿勢制御部9は、姿勢推定部8によって推定された倒立二輪車本体2の姿勢に基づいて、倒立二輪車本体2の姿勢を制御するものである。
【0036】
図2に示すように、姿勢推定部8は、第1姿勢角度四元数生成部20(第1姿勢角度四元数生成手段)と、第2姿勢角度四元数生成部21(第2姿勢角度四元数生成手段)と、フィルタ係数生成部22(フィルタ係数生成手段)と、姿勢角度四元数合成部23と、姿勢角度四元数正規化部24と、オイラー角変換部25と、姿勢角速度バイアス四元数推定部26(姿勢角速度バイアス四元数推定手段)と、姿勢角速度バイアス四元数正規化部27と、によって構成されている。
【0037】
図3に示すように、姿勢角速度バイアス四元数推定部26は、差分演算部40(差分演算手段)と、フィルタ演算部41(フィルタ演算手段)と、積分演算部42(積分演算手段)と、によって構成されている。
【0038】
(傾斜角センサ3)
図1に戻り、傾斜角センサ3は、倒立二輪車本体2の現在の姿勢角度を計測するためのものである。本実施形態において傾斜角センサ3は、3軸加速度センサと地磁気センサの組み合わせによって構成されている。3軸加速度センサは、倒立二輪車本体2の姿勢角度のうちロール角度とピッチ角度を計測可能である。地磁気センサは、倒立二輪車本体2の姿勢角度のうちヨー角度を計測可能である。傾斜角センサ3は、計測により得られた姿勢角度信号を姿勢推定部8の第1姿勢角度四元数生成部20に出力する。
【0039】
(ジャイロセンサ4)
ジャイロセンサ4は、倒立二輪車本体2の現在の姿勢角速度を計測するためのものである。本実施形態においてジャイロセンサ4は、MEMSジャイロによって構成されている。ジャイロセンサ4は、計測により得られた姿勢角速度信号を姿勢推定部8の第2姿勢角度四元数生成部21に出力する。
【0040】
(第1姿勢角度四元数生成部20)
図2の第1姿勢角度四元数生成部20は、傾斜角センサ3の計測結果に基づいて倒立二輪車本体2の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成するものである。具体的には以下の通りである。
【0041】
(→フィルタ処理)
先ず、第1姿勢角度四元数生成部20は、傾斜角センサ3から受信した姿勢角度信号をフィルタ処理して、姿勢角度信号に含まれる望ましくない周波数帯域をカットする。
【0042】
(→取り付け角度補正処理)
次に、第1姿勢角度四元数生成部20は、倒立二輪車本体2に対する3軸加速度センサの取り付け角度に基づいて、姿勢角度信号を補正する。これにより、姿勢角度信号から、3軸加速度センサの取り付け角度による影響がキャンセルされる。
【0043】
(→自加速度キャンセル処理)
次に、第1姿勢角度四元数生成部20は、車輪の回転数を微分して得られる倒立二輪車本体2の加速度に基づいて、姿勢角度信号を補正する。これにより、姿勢角度信号から、自加速度による影響がキャンセルされる。
【0044】
(→姿勢角度行列変換処理)
次に、第1姿勢角度四元数生成部20は、姿勢角度信号(加速度センサベクトル)にヨー角(方位角)を加えた回転を姿勢角度行列に変換する。
【0045】
(→四元数変換処理)
次に、第1姿勢角度四元数生成部20は、姿勢角度行列を、姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredに変換する。
【0046】
そして、第1姿勢角度四元数生成部20は、生成した第1姿勢角度四元数αmeasuredを、姿勢角度四元数合成部23と姿勢角速度バイアス四元数推定部26に出力する。
【0047】
(第2姿勢角度四元数生成部21)
第2姿勢角度四元数生成部21は、ジャイロセンサ4の計測結果に基づいて倒立二輪車本体2の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成するものである。具体的には以下の通りである。
【0048】
(→フィルタ処理)
先ず、第2姿勢角度四元数生成部21は、ジャイロセンサ4から受信した姿勢角速度信号をフィルタ処理して、姿勢角速度信号に含まれる望ましくない周波数帯域をカットする。
【0049】
(→予測処理)
次に、第2姿勢角度四元数生成部21は、RAM6から、前回の姿勢角速度バイアスbn-1を取得した上で、姿勢角速度信号αドットmeasuredから前回の姿勢角速度バイアスbn-1を引き算し、これにサンプリング周期dtを掛け、前回の姿勢角度αn-1に積算し、結果を四元数に変換する。これにより、第2姿勢角度四元数αpredictが求められる。なお、この予測処理は、始めから四元数で演算してもよいし、とりあえずオイラー角で演算して最後に四元数変換することとしてもよい。オイラー角で演算する場合は、下記式(1)による。
【0050】
【数10】

【0051】
そして、第2姿勢角度四元数生成部21は、生成した第2姿勢角度四元数αpredictを姿勢角度四元数合成部23と姿勢角速度バイアス四元数推定部26に出力する。
【0052】
(フィルタ係数生成部22)
フィルタ係数生成部22は、状態フィードバックを実現する際のオブザーバの一種として、カルマンフィルタ係数K0、K1を生成する。カルマンフィルタ係数K0は姿勢角の計測ノイズをフィルタして姿勢角にフィードバックするための係数であり、カルマンフィルタ係数K1は姿勢角の計測ノイズをフィルタして姿勢角速度バイアスにフィードバックするための係数である。
【0053】
(姿勢角度四元数合成部23)
姿勢角度四元数合成部23は、第1姿勢角度四元数αmeasuredと第2姿勢角度四元数αpredictをカルマンフィルタ係数K0でのフィルタ処理により合成して、倒立二輪車本体2の現在の姿勢角度αn(推定値)を生成する。この姿勢角度四元数合成部23による合成処理は、前述したように球面線形補間を利用することで効率良く実行できることを示した。必要であれば、オイラー角で表現した式(2)を参照されたい。姿勢角度四元数合成部23は、生成した倒立二輪車本体2の現在の姿勢角度αn(推定値)を姿勢角度四元数正規化部24に出力する。
【0054】
(姿勢角度四元数正規化部24)
姿勢角度四元数正規化部24は、浮動小数点演算の誤差の蓄積を回避すべく、倒立二輪車本体2の現在の姿勢角度αnを正規化する。姿勢角度四元数正規化部24は、正規化した姿勢角度αnをオイラー角変換部25に出力する。
【0055】
(オイラー角変換部25)
オイラー角変換部25は、姿勢角度αnをオイラー角表現に変換した上で姿勢制御部9に出力する。
【0056】
(姿勢角速度バイアス四元数推定部26:図3)
姿勢角速度バイアス四元数推定部26は、下記式(9)により角速度バイアス四元数bnを推定する。具体的には以下の通りである。
【0057】
【数11】

【0058】
姿勢角速度バイアスbnは、前述したように下記式(3)により求められる。
【0059】
【数12】

【0060】
上記式(3)は、前述した式(2)のようには球面線形補間を利用できるかたちに変形することができない。そこで、姿勢角速度バイアス四元数推定部26は、四元数の累乗(べき乗)という概念を導入して、上記式(3)を効率的に解く。詳しく説明すると、qtは四元数qのt乗を意味するが、t=0のときq0=1、即ち恒等四元数(1,0,0,0)を示す。また、t=1のときq1=qとなり、実数と同等の振る舞いをする。注意すべきは、t<0の場合とt>1の場合であり、四元数は360度以上の回転を示すことができないので、tを大きくして複数回転を表すようなことはできない。(as)t=astのようなスカラーの累乗に関する代数が当てはまらないことがある。しかし、今回のようなフィルタ演算の場合は、ノイズをフィルタリングして小さくするという意味からK1の絶対値は必ず1より小さい値になる上に、第1姿勢角度四元数αmeasuredも第2姿勢角度四元数αpredictもある1つの角度を示すことから累乗の乗数が0〜1の範囲で使用することができる。なお、四元数の累乗は乗数が0以上1以下の範囲で使用することが一般的である。
【0061】
さて、オイラー角表現での足し算は四元数表現では外積(演算子は×)であり、オイラー角表現での引き算は四元数表現では共役四元数(演算子は−1)との外積である。また、回転のスカラーの掛け算は、四元数表現での累乗に相当する。従って、上記式(3)は、上記式(9)に置き換えることができる。上記式(9)の意味としては、姿勢角度四元数αのノイズ成分をカルマンフィルタ係数K1でフィルタリングし、これを用いて姿勢角速度バイアス四元数bn-1を回転させて修正する、ということになる。
【0062】
従って、図3において、差分演算部40は、第1姿勢角度四元数生成部20から取得した第1姿勢角度四元数αmeasuredと、第2姿勢角度四元数生成部21から取得した第2姿勢角度四元数αpredictと、の差分を求めて姿勢角度四元数αのノイズ成分を算出する。
【0063】
次に、フィルタ演算部41は、差分演算部40が算出した姿勢角度四元数αのノイズ成分をカルマンフィルタ係数K1でフィルタ処理する。このとき、カルマンフィルタ係数K1が負である場合は、フィルタ演算部41は、カルマンフィルタ係数K1の正負を反転させた上で、姿勢角度四元数αのノイズ成分をフィルタ処理する。即ち、上記式(9)に代えて下記式(10)を用いる。
【0064】
【数13】

【0065】
また、フィルタの方式としてカルマンフィルタなどの係数が変化するタイプが存在する。例えば逐次カルマンフィルタではK0及びK1の絶対値が一時的に1より大きな値になることがある。この場合、フィルタ演算部41は、カルマンフィルタ係数K1の絶対値を1にした上で、前記の式(9)又は(10)により姿勢角速度バイアス四元数bnを推定すればよい。カルマンフィルタ係数K0についても同様である。
【0066】
次に、積分演算部42は、フィルタ処理後の値を、前回の姿勢角速度バイアス四元数bn-1に積算して、現在の姿勢角速度バイアス四元数bnを求める。積分演算部42は、求めた姿勢角速度バイアス四元数bnを姿勢角速度バイアス四元数正規化部27に出力する。
【0067】
(姿勢角速度バイアス四元数正規化部27)
姿勢角速度バイアス四元数正規化部27は、浮動小数点演算の誤差の蓄積を回避すべく、姿勢角速度バイアス四元数bnを正規化する。そして、姿勢角速度バイアス四元数正規化部27は、正規化した姿勢角速度バイアス四元数bnをRAM6に保存する。
【0068】
次に、図4を参照して、主として姿勢推定部8の作動を説明する。
【0069】
(傾斜角センサによる計測ステップ)
倒立二輪車1の電源を投入すると(S300)、傾斜角センサ3は、倒立二輪車本体2の現在の姿勢角度を計測して、姿勢角度信号を第1姿勢角度四元数生成部20に出力する(S310)。次に、ジャイロセンサ4は、倒立二輪車本体2の現在の姿勢角速度を計測して、姿勢角速度信号を第2姿勢角度四元数生成部21に出力する(S320)。次に、第1姿勢角度四元数生成部20は、傾斜角センサ3から受信した姿勢角度信号に基づいて倒立二輪車本体2の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する(S330)。次に、第2姿勢角度四元数生成部21は、ジャイロセンサ4から受信した姿勢角速度信号に基づいて倒立二輪車本体2の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する(S340)。次に、フィルタ係数生成部22は、カルマンフィルタ係数K0、K1を生成する(S350)。なお、S310とS320の処理は可換であり、S330〜S350の処理は適宜順番を入れ替えても良い。次に、姿勢角速度バイアス四元数推定部26は、下記式(9)により姿勢角速度バイアス四元数bnを推定する(S360)。そして、処理をS310に戻して次の周期に備える。
【0070】
【数14】

【0071】
以上に本願発明の好適な実施形態を説明したが、上記実施形態は、要するに、以下の特長を有している。
【0072】
姿勢推定部8(姿勢推定装置)は、傾斜角センサ3とジャイロセンサ4を備えた倒立二輪車本体2(機器本体)の姿勢を傾斜角センサ3の計測結果とジャイロセンサ4の計測結果に基づいて推定するものである。姿勢推定部8は、傾斜角センサ3の計測結果に基づいて倒立二輪車本体2の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する第1姿勢角度四元数生成部20(第1姿勢角度四元数生成手段)と、ジャイロセンサ4の計測結果に基づいて倒立二輪車本体2の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する第2姿勢角度四元数生成部21(第2姿勢角度四元数生成手段)と、カルマンフィルタ係数K1(フィルタ係数K1)を生成するフィルタ係数生成部22(フィルタ係数生成手段)と、下記式(9)により姿勢角速度バイアス四元数bnを推定する姿勢角速度バイアス四元数推定部26(姿勢角速度バイアス四元数推定手段)と、を備える。ただし、bn-1は、前回の姿勢角速度バイアス四元数である。
【0073】
【数15】

【0074】
以上の構成によれば、四元数表現をオイラー角表現に変換したり、オイラー角表現を四元数表現に変換する必要がなく、四元数表現のまま姿勢角速度バイアス四元数bnを推定することができる。従って、角速度バイアス四元数bnを高い計算効率で推定することができる。
【0075】
また、姿勢角速度バイアス姿勢推定部8は、カルマンフィルタ係数K1が負である場合は、カルマンフィルタ係数K1の正負を反転させた上で、前記式(9)により姿勢角速度バイアス四元数bnを推定する。以上の構成によれば、四元数の累乗を問題なく演算することができる。
【0076】
また、姿勢角速度バイアス姿勢推定部8は、カルマンフィルタ係数K1の絶対値が1を超える場合は、カルマンフィルタ係数K1の絶対値を1にした上で、前記式(9)により姿勢角速度バイアス四元数bnを推定する。以上の構成によれば、四元数の累乗を問題なく演算することができる。
【0077】
なお、角速度バイアスbnの推定を始めるに際し、角速度バイアスbnの初期値は「回転しない」ことを表す恒等四元数(1,0,0,0)とすることが考えれる。この場合、倒立二輪車1の状態(温度や各角速度センサのバイアス固有値)によりいずれある値に収束していくことになる。好ましくは、倒立二輪車1を起動し、姿勢推定のフィルタ演算を開始するときに姿勢角速度バイアスbnの初期値を恒等四元数から開始することに代えて、前回の起動後に収束した値を初期値として採用すれば、一層安定した姿勢角速度バイアスbnの推定を行うことができる。
【符号の説明】
【0078】
1 倒立二輪車
2 倒立二輪車本体
3 傾斜角センサ
4 ジャイロセンサ
8 姿勢推定部
9 姿勢制御部
26 姿勢角速度バイアス四元数推定部

【特許請求の範囲】
【請求項1】
傾斜角センサとジャイロセンサを備えた機器本体の姿勢を前記傾斜角センサの計測結果と前記ジャイロセンサの計測結果に基づいて推定する姿勢推定装置であって、
前記傾斜角センサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する第1姿勢角度四元数生成手段と、
前記ジャイロセンサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する第2姿勢角度四元数生成手段と、
フィルタ係数K1を生成するフィルタ係数生成手段と、
下記式(9)により姿勢角速度バイアス四元数bnを推定する姿勢角速度バイアス四元数推定手段と、
を備えた姿勢推定装置。

ただし、bn-1は、前回の姿勢角速度バイアス四元数である。
【請求項2】
請求項1に記載の姿勢推定装置であって、
前記姿勢角速度バイアス推定手段は、前記フィルタ係数K1が負である場合は、前記フィルタ係数K1の正負を反転させた上で、前記式(9)により姿勢角速度バイアス四元数bnを推定する、
姿勢推定装置。
【請求項3】
請求項1又は2に記載の姿勢推定装置であって、
前記姿勢角速度バイアス推定手段は、前記フィルタ係数K1の絶対値が1を超える場合は、前記フィルタ係数K1の絶対値を1にした上で、前記式(9)により姿勢角速度バイアス四元数bnを推定する、
姿勢推定装置。
【請求項4】
傾斜角センサとジャイロセンサを備えた機器本体の姿勢を前記傾斜角センサの計測結果と前記ジャイロセンサの計測結果に基づいて推定する姿勢推定方法であって、
前記傾斜角センサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第1姿勢角度四元数αmeasuredを生成する第1姿勢角度四元数生成ステップと、
前記ジャイロセンサの計測結果に基づいて前記機器本体の姿勢角度の四元数表現である第2姿勢角度四元数αpredictを予測して生成する第2姿勢角度四元数生成ステップと、
フィルタ係数K1を生成するフィルタ係数生成ステップと、
下記式(9)により姿勢角速度バイアス四元数bnを推定する姿勢角速度バイアス四元数推定ステップと、
を備えた姿勢推定方法。

ただし、bn-1は、前回の姿勢角速度バイアス四元数である。
【請求項5】
コンピュータに、請求項4に記載の姿勢推定方法を実行させるための姿勢推定プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2013−54009(P2013−54009A)
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願番号】特願2011−194246(P2011−194246)
【出願日】平成23年9月6日(2011.9.6)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【Fターム(参考)】