説明

磁気式ジャイロ

【課題】回転角速度を短時間で算出できる磁気式ジャイロを提供する。
【解決手段】磁気式ジャイロ1は、3軸磁気センサ2と、メモリ3と、回転軸決定手段10と、回転角速度算出手段11と、回転角速度出力手段12とを備える。回転角速度算出手段11は、メモリ3に蓄積された磁気ベクトルのデータと時刻データとに基づいて、回転運動の回転角速度を算出する。回転角速度算出手段11は、3軸磁気センサ2によって検出した磁気ベクトルHと、ΔH(=H−H’)と、回転軸と磁気ベクトルHとの間の角度αを、下記数式
|ω|=|H×ΔH|/(|H|・sinα・Δt)
に代入することにより、被測定体の回転角速度ベクトルωの絶対値|ω|を、回転角速度として算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3軸磁気センサを有する磁気式ジャイロに関する。
【背景技術】
【0002】
近年、例えば携帯電話等の携帯機器を傾けたり振り回したりした際の回転角速度を検出し、この携帯機器の動き(回転角速度)をゲーム等のアプリケーションに利用する技術が開発されている。この技術において、携帯機器の回転角速度を検出する手段として、携帯機器内に設けたジャイロが利用されている。
【0003】
上記ジャイロとして、例えばディレクショナルジャイロ(下記特許文献1参照)や、レートジャイロ(下記特許文献2参照)など、運動力学的な原理を利用したものが従来から知られている。しかし、このようなジャイロは複雑な機構を必要とするため、低コスト化や小型化が難しく、携帯機器に組み込むことは困難だという問題がある。
【0004】
この問題を解決するため、磁気式ジャイロが開発されている(下記特許文献3、4参照)。磁気式ジャイロは複雑な機械部品を必要としないため、低コスト化や小型化が容易であり、かつ検出精度が高いという利点がある。
【0005】
磁気式ジャイロは、携帯機器に内蔵した磁気センサを使って地磁気ベクトルを検出し、検出した地磁気ベクトルの時間的変化に基づいて、携帯機器の回転角速度を算出する。例えば下記特許文献3、4に開示されている磁気式ジャイロは、携帯機器の回転運動に伴って地磁気ベクトルの終点が描く軌跡(軌跡円)の中心点および半径を求め、さらに正弦定理を利用することにより、携帯機器の回転角度や回転角速度を算出し、出力する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国特許第3143892号公報
【特許文献2】特開平7−139951号公報
【特許文献3】国際公開第2007/099599号公報
【特許文献4】特許第4599502号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら前記した特許文献3、4に記載の磁気式ジャイロは、上記軌跡円の中心点や半径を算出し、さらに正弦定理を使って回転角度を算出した後、磁気ベクトルのデータの採取時刻の差から回転角速度を算出するため、演算処理が複雑であり、回転角速度の計算に時間がかかり、実際の被測定体の姿勢変化とジャイロの出力の間に若干の遅れ(時間のずれ)が生じるという問題があった。そのため、高い応答性が要求されるアプリケーションに適用する場合に、上記した出力の時間遅れが問題になる場合があった。
勿論いかなる手段で算出しても回転角速度の算出時間を0とすることは不可能であることから、応答遅れ時間を0とするのは困難である。しかし、計算方法の工夫により、遅れ時間を短縮することは可能と考えられる。
【0008】
本発明は、かかる背景に鑑みてなされたもので、回転角速度の算出時間を従来公知の上記磁気式ジャイロに比較して短縮化し、上記した時間遅れを大幅に短くすることが可能な磁気式ジャイロを提供しようとするものである。
【課題を解決するための手段】
【0009】
本発明の一態様は、被測定体に固定された3軸直交座標系における磁気ベクトルとして地磁気を検出する3軸磁気センサと、
該3軸磁気センサによって時系列的に検出される上記磁気ベクトルのデータを検出時の時刻データと共に蓄積するメモリと、
該メモリに蓄積された上記磁気ベクトルのデータに基づいて、上記被測定体の回転運動の基準とする回転軸を決定する回転軸決定手段と、
上記メモリに蓄積された上記磁気ベクトルのデータと上記時刻データとに基づいて、上記回転運動の回転角速度を算出する回転角速度算出手段と、
該回転角速度算出手段によって算出した上記回転角速度を出力する回転角速度出力手段とを有し、
上記回転角速度算出手段は、上記3軸磁気センサによって検出した上記磁気ベクトルHと、該磁気ベクトルHから、該磁気ベクトルHよりも微小時間Δt前の時点において測定した磁気ベクトルH’を引いたベクトルΔH(=H−H’)と、上記回転軸と上記磁気ベクトルHとの間の角度αを、下記数式
|ω|=|H×ΔH|/(|H|・sinα・Δt)
に代入することにより、上記被測定体の回転角速度ベクトルωの絶対値|ω|(以下、回転角速度|ω|と記す。)を、上記回転角速度として算出するよう構成されていることを特徴とする磁気式ジャイロにある(請求項1)。
【発明の効果】
【0010】
上記磁気式ジャイロは、上記数式を用いることにより、被測定体(携帯機器)の回転角速度を算出するが、その算出の際において前記特許文献3、4に記載されている算出方法とは異なり、軌跡円の中心点や半径を算出しなくても求めることができる。そのため、被測定体の回転角速度|ω|を算出するための演算処理を簡単にすることができ、回転角速度を短時間で算出することが可能になる。これにより、被測定体の実際の動きに対するジャイロの出力遅れ時間を短縮化することが可能になるため、上記アプリケーション等を使用する際に、被測定体の回転運動をアプリケーション等に素早く反映させることが可能になり、応答性を向上させることができる。
【0011】
特に、被測定体が一時的であっても非常に高速となる回転運動を含むような場合には、微小時間内にも回転軸、回転角速度が変化しつつ運動することになるため、被測定体の回転運動を精確かつ滑らかにアプリケーション等に反映できるようにするためには、微小時間Δtを短くし、回転角速度の演算回数を増やす必要がある。上記数式を用いて、回転角速度を演算するためのアルゴリズムを簡素化すれば、演算処理装置(CPU)の負担を低減でき、回転角速度の算出速度を向上できるため、演算回数が多い場合に特に有効である。
【0012】
以上のごとく、本発明によれば、回転角速度を短時間で算出し、応答遅れ時間を短縮できる磁気式ジャイロを提供することができる。
【図面の簡単な説明】
【0013】
【図1】実施例1における、磁気式ジャイロの概念図。
【図2】実施例1における、磁気式ジャイロのブロック図。
【図3】実施例1における、磁気式ジャイロのプログラムのフローチャート。
【図4】実施例1における、回転軸、磁気ベクトル等の説明図。
【図5】実施例1における、3軸磁気センサの斜視図。
【図6】実施例2における、磁気式ジャイロの概念図。
【図7】実施例2における、角度βと回転角速度|ω|との関係を表すグラフ。
【図8】実施例2における、磁気式ジャイロのプログラムのフローチャート。
【図9】実施例3における、回転角速度と時間の関係を表したグラフ。
【図10】実施例4における、回転角速度と時間の関係を表したグラフ。
【発明を実施するための形態】
【0014】
上記磁気式ジャイロにおいて、上記3軸直交座標系における加速度ベクトルとして重力加速度を検出する3軸加速度センサと、該3軸加速度センサによって時系列的に検出される上記加速度ベクトルのデータを検出時の時刻データと共に蓄積する加速度ベクトルデータ蓄積用メモリと、上記磁気ベクトルのデータおよび上記加速度ベクトルのデータの少なくとも一方に基づいて、上記被測定体の回転角速度又は該回転角速度と関連のあるパラメータ値が、基準となる閾値未満である第1回転状態か、又は上記閾値以上である第2回転状態であるかを判断する回転状態判断手段を備え、上記回転角速度出力手段は、上記回転状態判断手段によって、上記被測定体が上記第2回転状態であると判断された場合にのみ、上記回転角速度を出力することが好ましい(請求項2)。
この場合には、測定精度がよい場合のみ、回転角速度を出力することができる。すなわち、回転角速度又は上記パラメータ値が閾値よりも小さい場合(第1回転状態)は、微小時間Δt内における磁気ベクトルHの変化量ΔHが小さいため、上記数式を用いて回転角速度|ω|を算出すると誤差が大きくなりやすい。そのため、第1回転状態において回転角速度を出力すると、誤差の大きい回転角速度を出力することになる。
これに対して、被測定体の回転角速度又は上記パラメータ値が閾値以上である場合(第2回転状態)は、微小時間Δt内における磁気ベクトルHの変化量ΔHがある程度以上に大きくなるため、回転角速度|ω|の誤差が小さくなりやすい。したがって、閾値を適切に設定した上で、第2回転状態の場合のみ回転角速度を出力することにより、測定精度の高い場合のみ、回転角速度を出力することが可能になる。
なお、回転状態判断手段は、回転角速度|ω|を使って、回転状態を判断することもできるが、上記パラメータ、例えば磁気ベクトルの単位時間における変化割合や、磁気ベクトルの差分ベクトルの大きさが一定の大きさを越えるまでの時間や、加速度ベクトルの変化割合等のパラメータを採用することもできる。
【0015】
また、上記回転角速度算出手段によって算出した上記回転角速度に基づいて、上記微小時間Δt内における、上記回転軸を中心とした上記被測定体の回転角度を算出する回転角度算出手段と、算出された上記回転角度を出力する回転角度出力手段とを備えていてもよい。(請求項3)。
この場合には、回転角速度を用いることにより、微小時間Δt内における、被測定体の回転角度を算出することが可能となり、回転角度を必要とするアプリケーションに求めた値を利用することができる。上記磁気式ジャイロは回転角速度の算出時間が短いため、被測定体の回転角度の算出及び出力も、実際の被測定体の動きに対する出力遅れ時間を短くすることができる。
【0016】
また、上記磁気ベクトルのデータと上記加速度ベクトルのデータとに基づいて、上記被測定体の姿勢を算出する第1姿勢算出手段と、上記回転角度算出手段によって算出された上記回転角度に基づいて、上記微小時間Δt内における上記被測定体の姿勢変化量を算出し、該姿勢変化量を、上記第1回転状態において上記第1姿勢算出手段が算出した上記姿勢の初期値に積算することにより、上記被測定体の最新の姿勢を算出する第2姿勢算出手段とを備えていてもよい(請求項4)。
この場合には、磁気式ジャイロは第1姿勢算出手段と第2姿勢算出手段との2つの姿勢算出手段を備えるため、これら2つの姿勢算出手段を、被測定体の運動状態に応じてより精度の高い出力ができる方を選択することにより、使い分けることができる。これにより、状況に応じて被測定体の上記姿勢をより正確に算出することが可能となる。すなわち、第1姿勢算出手段は、3軸磁気センサと3軸加速度センサとの2種類のセンサを用いて、被測定体の姿勢を算出する。後述するように、この2種類のセンサを用いると、被測定体が静止している状態では、加速度センサの検出値は重力加速度と等しくなるため、地球座標系に対する被測定体の姿勢を直接、正確に算出することができ、被測定体の回転が静止しているか、比較的遅い場合において、大きな誤差なく姿勢を算出可能になる。その一方で、3軸加速度センサは、被測定体が回転等の運動をすると、その検出値には、被測定体自身の加速度が本来測定したい重力加速度に加算されることになる。それに対し、第2姿勢算出手段は3軸磁気センサのみを用いて姿勢を算出するため、被測定体自身の運動による加速度の影響を排除した算出をすることができる。そのため、これら2つの姿勢算出手段を使い分けることにより、被測定体の姿勢の算出精度をより高めることが可能になる。
【0017】
また、上記回転状態判断手段によって、上記被測定体の回転運動が上記第1回転状態であると判断された場合は、上記第1姿勢算出手段によって算出した上記姿勢を出力し、上記回転運動が上記第2回転状態であると判断された場合は、上記第2姿勢算出手段によって算出した上記姿勢を出力する姿勢出力手段を備えていてもよい。(請求項5)。
このようにすると、被測定体の、より正確な姿勢を出力することができる。すなわち、第1姿勢算出手段では、3軸加速度センサと3軸磁気センサとの2種類のセンサを用いるため、被測定体が静止しているか、又は比較的遅い速度で回転している場合には、被測定体の姿勢を直接、正確に算出することができる。また、被測定体自身が静止していない場合は、加速度センサの検出値に被測定体自身の加速度が加わり、測定誤差となるが、上記磁気式ジャイロは、被測定体が第1回転状態となり、前記した誤差の影響が無視できる程度に小さくなった場合のみ、3軸加速度センサを利用する第1姿勢算出手段の姿勢算出結果を出力する。そのため、被測定体自身の運動状況に応じ、適切に3軸加速度センサの検出値を被測定体の姿勢計算に利用して、正確な姿勢を出力することができる。
【0018】
また、被測定体が第2回転状態となった場合には、第2姿勢算出手段によって算出した姿勢、すなわち、第1回転状態であった際に求めた基準となる姿勢(初期姿勢)に、磁気ベクトルのデータにより算出した姿勢変化分を加算していくことにより、求めた最新の姿勢値を出力する。このようにすると、被測定体が第2回転状態となり、3軸加速度センサが被測定体自身の運動による影響で精確な重力加速度ベクトルを求めることができない状況になった場合であっても、3軸加速度センサのデータを利用しない第2姿勢算出手段の姿勢算出結果を出力するため、精度良く最新の姿勢を求めることができる。
【0019】
また、上記第1姿勢算出手段によって算出した上記被測定体の上記姿勢である第1姿勢と、上記第2姿勢算出手段によって算出した上記被測定体の上記姿勢である第2姿勢との間の中間姿勢を算出する中間姿勢算出手段を備え、
上記中間姿勢は、上記回転角速度がより遅い回転状態になるほど上記第1姿勢に近づき、上記回転角速度がより速い回転状態になるほど上記第2姿勢に近づき、かつ上記第1姿勢と上記第2姿勢との間で連続的に変化し、
上記中間姿勢算出手段によって算出された上記中間姿勢を出力する中間姿勢出力手段を備え、
上記中間姿勢算出手段は、上記回転状態判断手段において用いることが可能な上記パラメータ値を用いて、上記回転状態を定めていることが好ましい(請求項6)。
この場合には、被測定体の回転速度が変化した場合に、上記第1姿勢と上記第2姿勢との間の中間姿勢を出力できるため、姿勢の出力値が、回転角速度の閾値を境に、第1姿勢から第2姿勢に切り替わったり、又は第2姿勢から第1姿勢に切り替わった場合に、出力値が不連続に変化する不具合を防止できる。
また、第1姿勢算出手段は、被測定体の姿勢を直接、算出できるが、被測定体が静止していない場合には、第1回転状態の範囲であっても、3軸加速度センサの出力値は、重力加速度とずれが生じることになり、その影響で姿勢の算出結果に誤差が生じる原因となる。また、第2姿勢算出手段は、3軸加速度センサを用いないため、被測定体自身の運動状態による影響はないものの、姿勢の上記初期値に、微小時間内に算出される姿勢変化量を積算するため、3軸磁気センサ自身の測定誤差が累積しやすい。また、この誤差は、回転速度が遅く磁気ベクトルの変化が小さいほど顕著になる。このように、第1姿勢算出手段は被測定体の回転が遅い場合に比較的誤差が小さくなるという特徴を有し、第2姿勢算出手段は、逆に被測定体の回転が速い場合に比較的誤差が小さくなるという特徴を有しているため、瞬間瞬間の被測定体の状態から最も誤差が小さくなると考えられる第1姿勢と第2姿勢の中間姿勢を算出することにより、被測定体の回転状態がいかなる状況であっても精度の良い姿勢値を算出し、出力することができる。
【0020】
なお、中間姿勢算出手段は、回転角速度|ω|のほか、回転状態判断手段で用いることが可能なパラメータを用いて、上記回転状態を定めることができる。例えば、磁気ベクトルや加速度ベクトルの変化量等を用いることができる。このように、磁気ベクトルの変化割合をパラメータとして用いた場合には、この値が大きいほど、回転角速度が速いということを意味する。
また、ここで用いるパラメータ値は、回転状態判断手段により用いることのできるパラメータ、すなわち、後述の実施例1にて説明しているような回転状態を表現できるパラメータであれば良く、必ずしも回転状態判断手段で用いたパラメータと同一である必要はない。例えば回転状態判断手段では、加速度センサの誤差の問題を考慮して、加速度ベクトルの絶対値の変化量をパラメータ値として用い、中間姿勢を求める際には回転角速度|ω|を用いるようにすることもできる。
【0021】
また、上記第2姿勢算出手段を用いて上記姿勢を算出した後、上記被測定体の回転運動が上記第1回転状態となり、再び上記第2回転状態に戻った場合に、上記第2姿勢算出手段によって算出する際の基準となる上記姿勢のデータを、上記第1姿勢算出手段によって算出した、上記第2回転状態に戻る直前に第1姿勢算出手段により求めた上記姿勢のデータと置き換える置換手段を備え、上記第2姿勢算出手段は、置き換え後の基準となる姿勢データに第2姿勢算出手段により求めた姿勢変化量を加算していくことにより、上記姿勢の算出を行うよう構成されていてもよい(請求項7)。
この場合には、上記第2回転状態において、被測定体の姿勢の算出値に誤差が累積する不具合を防止できる。すなわち第2姿勢算出手段は、微小時間Δt毎に、3軸磁気センサを用いて検出した姿勢変化量を1ステップ前に算出済みの姿勢算出値に積算していくことにより、最新の姿勢を算出するため、1回の磁気センサの検出により生じた誤差が、姿勢変化量を積算していくことによって累積していくことになる。これに対して第1姿勢算出手段は、後述するように、磁気ベクトルのデータと加速度ベクトルのデータとを用いて、算出に用いた磁気ベクトルと加速度ベクトルの測定時刻における被測定体の姿勢を直接、算出できるため、第2姿勢算出手段のように誤差が累積されることがない。そのため、第2回転状態から第1回転状態に移った場合に、第1姿勢算出手段を用いて正確な姿勢を算出し、再び第2回転状態に移った際に、第2回転状態に移る直前の計算ステップにおいて第1姿勢算出手段を用いて算出した姿勢のデータを基準の姿勢値とし、この姿勢値に最新のステップにおける第2姿勢算出手段で算出した姿勢変化量を積算するようにする。これにより、第2姿勢算出手段において使用する、基準となる姿勢値をリセットでき、姿勢に誤差が累積して算出精度が低下することを防止できる。
【実施例】
【0022】
(実施例1)
磁気式ジャイロに係る実施例について、図1〜図5を用いて説明する。
図1に示すごとく、本例の磁気式ジャイロ1は、3軸磁気センサ2と、メモリ3と、回転軸決定手段10と、回転角速度算出手段11と、回転角速度出力手段12とを備える。3軸磁気センサ2は、被測定体に固定された3軸直交座標系100(図5参照)における磁気ベクトルとして地磁気を検出する。メモリ3は、3軸磁気センサ2によって時系列的に検出される磁気ベクトルのデータを検出時の時刻データと共に蓄積する。
【0023】
また、回転軸決定手段10は、メモリ3に蓄積された磁気ベクトルのデータに基づいて、被測定体の回転運動の基準とする回転軸を決定する。回転角速度算出手段11は、メモリ3に蓄積された磁気ベクトルのデータと時刻データとに基づいて、回転運動の回転角速度を算出する。回転角速度出力手段12は、回転角速度算出手段11によって算出した回転角速度を出力する。
【0024】
回転角速度算出手段11は、3軸磁気センサ2によって検出した磁気ベクトルHと、該磁気ベクトルHから、磁気ベクトルHよりも微小時間Δt前の時点において測定した磁気ベクトルH’を引いた差分ベクトルΔH(=H−H’)と、sinα(αは回転軸と磁気ベクトルHとの間の角度)を、下記数式
|ω|=|H×ΔH|/(|H|・sinα・Δt) ・・・(1)
に代入することにより、被測定体の回転角速度|ω|を、回転角速度として算出する。
【0025】
なお、ここで回転軸ベクトルは、最新の3時点の磁気ベクトルH,H’,H’’の差分ベクトルΔH(=H−H’)、ΔH’(=H’−H’’)の外積により算出することができる。詳細は特許文献3、4に記載されている。また、最新の磁気ベクトルHと差分ベクトルΔH、ΔH’の外積からなるベクトルの内積の式
cosα=(H,(ΔH×ΔH’))/|H||ΔH×ΔH’|(ここで(H,(ΔH×ΔH’))は、Hと(ΔH×ΔH’)の内積を意味する。)
によりcosαを求め、
sinα=√(1−cosα)によりsinαを求め、これを(1)式に代入することにより、|ω|を算出できる。
【0026】
上記被測定体は、例えば携帯電話等の携帯機器である。本例の磁気式ジャイロ1を用いて、例えば、携帯機器を回転させたり振り回したりした際の回転運動(回転角速度)を検出し、その検出値を、携帯機器において実行するゲーム等のアプリケーションに利用するよう構成することができる。
【0027】
図2に示すごとく、磁気式ジャイロ1は、マイコン6を備える。マイコン6は、CPU60と、ROM61と、RAM(メモリ3)と、I/O62と、これらの構成を繋ぐライン63とを備える。ROM61にはプログラム61pが記憶されている。このプログラム61pをCPU60が読み出して実行することにより、本例の回転軸決定手段10、回転角速度算出手段11、回転角速度出力手段12、および後述する回転状態判断手段13、回転角度算出手段14、回転角度出力手段15、第1姿勢算出手段51、第2姿勢算出手段52、姿勢出力手段53、置換手段56が実現される。
【0028】
3軸磁気センサ2は、図5に示すごとく、マグネト・インピーダンス・センサ素子20によって構成してある。即ち、3軸磁気センサ2は、3個のマグネト・インピーダンス・センサ素子20を、それぞれの感磁方向が互いに直交する3軸方向(X軸方向、Y軸方向、Z軸方向)となるように配設することにより、形成してある。なお、図5においては、マグネト・インピーダンス・センサ素子20以外の電子部品や配線は省略してある。
【0029】
次に図4を用いて、上記数式(1)の説明をする。図4において、Hは、3軸磁気センサ2によって測定した磁気ベクトルであり、H’は、磁気ベクトルHよりも微小時間Δt前に測定した磁気ベクトルである。ΔHは磁気ベクトルの2つの測定値の差(=H−H’)である。また、Cは、被測定体の回転運動に伴って磁気ベクトルHの終点が描く軌跡(軌跡円)である。rは、軌跡円Cの中心点Oから、磁気ベクトルH,H’の終点に向う半径ベクトルである。θは、微小時間Δt内において、半径ベクトルrが変化する角度である。
また、Kは、被測定体の回転運動の中心となる回転軸である。nは、上記中心点Oを始点とし、回転軸Kに平行な単位ベクトルである。αは、回転軸Kと磁気ベクトルHとのなす角度である。この場合において、回転角速度|ω|は、前記した通り(1)式で求めることができる。
|ω|=|H×ΔH|/(|H|・sinα・Δt) ・・・(1)
なお、回転角速度ベクトルωは、下記の式によって定義することができる。
ω=|ω|・n
【0030】
この式で回転角速度|ω|を求めることにより、軌跡円Cの中心点Oや半径|r|を算出しなくても|ω|を求めることができる。なお、本発明の磁気式ジャイロ1は、各時間における瞬間的な回転角速度を求められるようにすることを狙っており、その場合、被測定体が高速回転する場合であって、回転軸や回転角速度が時間とともに変化しながら回転している被測定体であっても、瞬間的な回転角速度を精度よく求めることが可能である必要がある。従って、磁気ベクトルの測定は、高速回転であってもθが小さくなるような微小時間毎に継続して行い、瞬間的な回転角速度が精度良く求められるようにする必要がある。θが大きくなると、そのθの回転の間の|ω|や回転軸ベクトルの変化を無視した計算では、精度の良い算出ができなくなるためである。そのため、精度の良い算出を可能とするために、磁気ベクトルの測定は数ms以下程度の時間間隔で連続して行うことが好ましい。このように微小な時間ごとに測定することにより、高速回転中であっても微小時間内の回転角度を十分に小さく抑えることができ、上記式により、被測定体の瞬間的な回転角速度の算出を精度良く行うことが可能となる。
【0031】
次に、本例の磁気式ジャイロ1の構成をさらに詳細に説明する。図1に示すごとく、本例の磁気式ジャイロ1は、回転状態判断手段13を備える。回転状態判断手段13は、磁気ベクトルHのデータに基づいて、被測定体の回転角速度|ω|又は該回転角速度|ω|と関連のあるパラメータ値が、基準となる閾値未満である第1回転状態か、又は閾値以上である第2回転状態であるかを判断する。回転角速度出力手段12は、回転状態判断手段13によって、被測定体の回転運動が第2回転状態であると判断された場合にのみ、回転角速度|ω|を出力する。
本例の回転状態判断手段は、回転角速度|ω|を用いて回転状態を判断している。なお、上述したように、例えば磁気ベクトルHの単位時間における変化割合や、磁気ベクトルHの差分ベクトルの大きさが一定の大きさを越えるまでの時間や、加速度ベクトルAの変化割合等のパラメータを採用することもできる。
【0032】
また、図1に示すごとく、本例の磁気式ジャイロ1は回転角度算出手段14を備える。回転角度算出手段14は、回転角速度算出手段11によって算出した回転角速度|ω|に基づいて、微小時間Δt内における、回転軸Kを中心とした被測定体の回転角度θ(=|ω|Δt)を算出する。また、本例の磁気式ジャイロ1は、算出された回転角度θを出力する回転角度出力手段15を備える。
【0033】
また、本例の磁気式ジャイロ1は、3軸加速度センサ4と、第1姿勢算出手段51と、第2姿勢算出手段52と、姿勢出力手段53とを備える。3軸加速度センサ4は、3軸直交座標系100における加速度ベクトルAとして重力加速度を検出する。検出した重力加速度のデータは、検出時の時刻データと共にメモリ3に蓄積される。第1姿勢算出手段51は、磁気ベクトルHのデータと加速度ベクトルAのデータとに基づいて、被測定体の姿勢を算出する。
第2姿勢算出手段52は、回転角度算出手段14によって算出された回転角度θに基づいて、微小時間Δt内における被測定体の姿勢変化量を算出し、該姿勢変化量を、被測定体の回転状態が第1回転状態であった際に第1姿勢算出手段51により算出した姿勢の初期値に積算することにより、被測定体の最新の姿勢を算出する。
姿勢出力手段53は、回転状態判断手段13によって、被測定体の回転運動が第1回転状態であると判断された場合は、第1姿勢算出手段51によって算出した姿勢を出力し、上記回転運動が第2回転状態であると判断された場合は、第2姿勢算出手段52によって算出した姿勢を出力する。
【0034】
次に、第1姿勢算出手段51によって被測定体の姿勢を算出する方法、すなわち磁気ベクトルと加速度ベクトルのデータを用いて上記姿勢を算出する方法について説明する。まず、例えば下記数式(2)に示すごとく、磁気ベクトルH(h,h,h)と加速度ベクトルA(a,a,a)との外積を用いて、東方向の単位ベクトルeを算出する。
また、鉛直方向の単位ベクトルeUは、加速度ベクトルAと方向が一致するため、下記数式(4)によって算出できる。
また、北方向の単位ベクトルeNは、下記数式(3)に示すごとく、東方向の単位ベクトルeEと鉛直方向の単位ベクトルeUとの外積に等しい。
【0035】
【数1】

【0036】
これらの単位ベクトルe,eN,eUを下記数式(5)のように組み合わせることにより、被測定体の姿勢を表す姿勢行列Pが得られる。
【0037】
【数2】

【0038】
なお、姿勢行列Pが求まれば、Pからピッチ角δ、ロール角φ、ヨー角ηは以下のように求めることができる。
δ=tan−1(Uy/Uz)
φ=sin−1(−Ux)
又はφ=tan−1(−Ux/(Uy・sinδ+Uz・cosδ))
η=tan−1(Nx/Ex)
【0039】
このように算出したピッチ角δ、ロール角φ、ヨー角ηから、被測定体が、地球座標系においてどの方向を向いているか、すなわち姿勢を判断することができる。
【0040】
次に、第2姿勢算出手段52によって被測定体の姿勢を算出する方法について説明する。まず、図4に示す単位ベクトルnの成分を(n,n,n)とすると、時刻tにおける被測定体の姿勢行列Pと、上記時刻tよりも微小時間Δt前における被測定体の姿勢行列Pk−1との関係は、下記数式(6)、数式(7)のように表される。
【0041】
【数3】

【0042】
=Pk−1・R ・・・(7)
このように、微小時間Δt毎に回転行列Rを算出し、第1姿勢算出手段51によって算出した、姿勢行列Pの初期値Pに回転行列Rを順次掛け続けることにより、被測定体の最新の姿勢を表す姿勢行列Pを算出することができる。
【0043】
なお、姿勢行列Pの上記初期値Pは、磁気式ジャイロ1を起動した後であって、被測定体が静止状態等、第1回転状態にあると判断できる際に、自動的に取得したり、ユーザが所定のボタンを押圧した際に取得したりすることができる。
【0044】
以上説明したように、被測定体の回転状態が第1回転状態である場合は、磁気ベクトルHおよび加速度ベクトルAのデータを用いて、被測定体の姿勢(姿勢行列P)を算出することができ、被測定体の回転状態が第2回転状態である場合は、磁気ベクトルHのデータと、姿勢の初期値Pとを使って、被測定体の最新の姿勢を表す姿勢行列Pを算出することができる。
【0045】
一方、図1に示すごとく、本例の磁気式ジャイロ1は置換手段56を備える。置換手段56は、第2姿勢算出手段52を用いて姿勢(姿勢行列)を算出した後、被測定体の回転運動が第1回転状態となり、再び第2回転状態に戻った場合に、第2回転状態に戻る直前に第1姿勢算出手段51によって算出した姿勢のデータ(姿勢行列Pk−1)を、第2姿勢算出手段52の計算の基準となる姿勢データとして置き換える。そして、その後の第2姿勢算出手段52は、置き換え後のデータ(姿勢行列P)に、算出した微小時間Δt毎の姿勢変化量を積算していくことにより、最新の姿勢の算出を行う。これにより、前記したとおり、算出誤差が蓄積される不具合を防止することができる。
【0046】
次に、ROM61(図2参照)に記憶したプログラム61pのフローチャートについて説明する。図3に示すごとく、プログラム61pを開始すると、まずステップS1を処理し、磁気ベクトルH及び加速度ベクトルAのデータを取得する。これらのデータは、微小時間Δtごとにそれぞれの記憶場所として確保されたメモリ3に、取得した時刻データとともに保存される。
【0047】
上記データを取得した後、ステップS2に移り、回転運動の回転軸K(図4参照)を算出する。この後、ステップS3に移り、上記数式(1)を用いて、被測定体の回転角速度|ω|を算出する。
【0048】
その後、ステップS4を処理する。ステップS4では、微小時間Δt内における被測定体の回転角度θ(図4参照)を算出する。その後、ステップS5を処理する。ステップS5では、被測定体の回転運動が第1回転状態であるか又は第2回転状態であるかを判断する。ステップS5において第1回転状態と判断された場合は、ステップS6に移り、第1姿勢算出手段51による姿勢算出、すなわち、上記数式(2)〜(5)を使って姿勢行列Pを算出する処理を行う。そして、算出した姿勢行列Pから被測定体の姿勢状態を示すピッチ角δ、ロール角φ、ヨー角ηを求め、姿勢出力手段53によって算出した姿勢のデータを出力する。なお、最初にステップS5を処理する時点において、第2姿勢算出手段52で基準姿勢となる初期の姿勢行列P0を、加速度センサの検出値に重力加速度以外の加速度の影響が生じない環境で得られた磁気ベクトルと加速度ベクトルのデータから、算出しておく必要がある。したがって、例えば図3のフローが開始され、最初のステップS5の処理段階に限っては、被測定体の画面に、「静止状態を維持して下さい。準備ができたらボタンを押し、OKの表示がされるまで静止状態を維持して下さい。」等の表示をする等の方法で意図的に第1回転状態の環境とし、加速度センサの検出値に重力加速度以外の加速度値の影響が生じない状態で、磁気ベクトルと加速度ベクトルを検出し、ステップS6を実行するようにする。なお、ステップS5では、後述のステップS7の処理で必要となるため、回転状態を判断した後にその結果を保存しておく。
【0049】
また、ステップS5の処理により第2回転状態と判断された場合は、ステップS7に移り、1ステップ前の回転状態が、どちらの回転状態であったかをステップS5で保存した情報から取得し、直前のステップまで第1回転状態であった場合には、回転状態が変化した直後であると判断し、ステップS8に移り、計算の基準となる姿勢データの置換処理、すなわち置換手段56を実行し、ステップS9に移る。また、1ステップ前の回転状態が第2回転状態であった場合は、置換手段を実行することなく、ステップS9に移る。そして、置換手段56が実行された場合は、置換により得られた基準となる姿勢行列に、置換手段56が実行されない場合は、1ステップ前の第2姿勢算出手段52にて算出された姿勢行列に、第2姿勢算出手段52により算出した姿勢変化量を積算して、最新の姿勢行列を求め、姿勢データであるピッチ角δ、ロール角φ、ヨー角ηを求め、姿勢出力手段53により姿勢のデータを出力する。
【0050】
ステップS6またはステップS9を処理した後、ステップS1に戻る。そして、ステップS1〜ステップS9を繰り返し実行する。
【0051】
なお、ステップS8にて実行する置換手段56は、被測定体が第2回転状態から第1回転状態に移り、再び第2回転状態に戻った場合に、前記した通り、第2姿勢算出手段52で計算の基準となる姿勢行列Pk−1を置換する必要がある(Yes)と判断し、その処理を行うものである。具体的には、姿勢行列Pk−1を、直前のステップ(微小時間Δt前のステップ)のステップS6において算出した姿勢行列Pに置き換える。そして、ステップS9で、置き換えた姿勢行列PにステップS9で新たに算出した回転行列Rを掛けることにより、最新の姿勢行列Pを算出する。
【0052】
また、本例では、ステップS5において、被測定体が第1回転状態であるか第2回転状態であるかを、3軸磁気センサ2の検出値に基づいて検出した回転角速度|ω|を用いて判断しているが、この判断は、回転状態を判断することができれば、他の方法(他のパラメータ)、具体的には3軸加速度センサ4による加速度ベクトルAの検出値を利用して判断することもできる。例えば、ある時点t(k)における加速度ベクトルA(k)の大きさ|A(k)|と、その時点t(k)よりも微小時間Δt前における加速度ベクトルA(k−1)の大きさ|A(k−1)|とを算出し、これらの差||A(k)|−|A(k−1)||が所定の閾値未満の場合は第1回転状態と判断し、閾値以上の場合は第2回転状態と判断してもよい。
なお、加速度ベクトルA(k)の成分を(a,a,a)とした場合、|A(k)|は、下記の式により算出することができる。
|A(k)|=√(a+a+a
【0053】
回転状態の判断は、検出した磁気ベクトルの検出値を利用した別の方法によっても行うことができる。例えば、磁気ベクトルH1とH2との差である差分ベクトルn1と、磁気ベクトルH3とH2との差である差分ベクトルn2とを算出する。この差分ベクトルn1及びn2が変化に要する時間Δt1及びΔt2を算出し、それらを用いて差分の時間変化率ベクトルv1及びv2を算出する。
ここで得られた差分の時間変化率ベクトルv1及びv2の外積をLとおく。
【0054】
ここでLは回転軸ベクトルkと同じ方向を向き、その大きさは回転軸及び回転角度算出に用いた磁気ベクトルの単位時間あたりの変化の割合の自乗に比例する。被測定体の回転速度が速くなるにつれて磁気ベクトルの単位時間あたりの変化の割合は大きくなるので、Lが所定の大きさ(例えば5000(mG/秒)〔ミリガウス毎秒の自乗〕)以上か否かによって、判別することができる。
すなわち、例えばL<5000(mG/秒)の場合には、第1回転状態であると判定し、L≧5000(mG/秒)の場合には、第2回転状態であると判定する。
【0055】
あるいは、他の方法として以下の方法もある。
まず、3軸磁気センサ2によって検出した磁気ベクトルデータについて、その変化割合を把握するために、前記した磁気ベクトルデータの取得及びメモリの保存とは別に、検出された磁気ベクトルH2と、直前に採取した磁気ベクトルH1との差(差分ベクトルn1の大きさ)が、所定の大きさ(例えば100mG)を超えたときに、次のデータとしてメモリ3に蓄積(採取)する。
そこで、磁気ベクトルのデータの今回の採取時刻t2が、前回の採取時刻t1から、所定時間(例えば500m秒)以上経過したか否かによって判別することができる。すなわち、例えばt2−t1=Δt<500m秒の場合には、第2回転状態であると判定し、Δt≧500m秒の場合には、第1回転状態であると判定する。
【0056】
あるいは、新たに採取した磁気ベクトルH2と、前回採取した磁気ベクトルH1との差(差分ベクトルn1の大きさ)が所定の大きさ以上か否かによって、判別することもできる。すなわち、例えば差分ベクトルn1の大きさが所定の大きさ以上の場合には、第2回転状態であると判定し、所定の大きさ未満の場合には、第1回転状態であると判定する。
【0057】
あるいは、上記2つの条件、すなわち、採取時間の間隔Δtが、所定時間(例えば500m秒)未満であり、かつ差分ベクトルn1の大きさが所定の大きさ以上である場合にのみ、第2回転状態であると判定し、その他の場合には第1回転状態であると判定することもできる。
【0058】
本例の作用効果について説明する。本例の磁気式ジャイロ1は、上記数式(1)を用いて、被測定体の回転角速度|ω|を算出する。
数式(1)に含まれる磁気ベクトルH、ΔH、角度αは、軌跡円の中心点や半径を算出しなくても求めることができる。そのため、被測定体の回転角速度|ω|を算出するための演算処理を簡単にすることができ、回転角速度を短時間で算出することが可能になる。これにより、アプリケーション等を使用する際に、被測定体の回転運動をアプリケーションに素早く反映させることが可能になり、応答性を向上させることができる。特に、被測定体の動きに対する出力遅れ時間をできるだけ短縮化したいアプリケーションに適用する場合、大きな効果が得られる。
【0059】
特に、被測定体の回転運動が非常に高速になる可能性がある場合には、極めて微小な時間の間に回転軸、回転速度、回転角速度が変化しつつ運動することになることから、被測定体の動きを精度良くかつ滑らかにアプリケーションに反映できるようにするためには、微小時間Δtを短くし、回転角速度の演算回数を増やす必要がある。数式(1)を用いて、回転角速度を演算するためのアルゴリズムを簡素化すれば、演算処理装置(CPU)の負担を低減でき、回転角速度の算出速度を向上できるため、演算回数が多い場合に特に有効である。
【0060】
また、本例では、回転軸と回転角速度ベクトルωの絶対値|ω|を算出することにより、回転角速度ベクトルωを算出することができ、被測定体の回転方向を容易に認識することができる。
【0061】
また、図1に示すごとく、本例の磁気式ジャイロ1は回転状態判断手段13を備える。そして回転角速度出力手段12は、回転状態判断手段13によって被測定体の回転運動が第2回転状態であると判断された場合にのみ、回転角速度を出力するよう構成されている。
このようにすると、測定精度がよい場合のみ、回転角速度を出力することができる。すなわち、被測定体の回転運動が低速(静止も含む)である場合(第1回転状態)は、微小時間Δt内における磁気ベクトルHの変化量ΔHが小さいため、数式(1)を用いて回転角速度|ω|を算出すると、誤差が大きくなりやすい。そのため、第1回転状態において回転角速度を出力すると、誤差の大きい回転角速度を出力することになる。
これに対して、被測定体が上記第2回転状態である場合は、閾値を適切に設定することにより、微小時間Δt内における磁気ベクトルHの変化量ΔHが計算上問題にならない程度に大きい値となるため、回転角速度|ω|の誤差が小さくなりやすい。したがって、第2回転状態の場合のみ回転角速度を出力することにより、測定精度の高い場合のみ、回転角速度を出力することが可能になる。なお、回転状態判断手段は、前記した通り、磁気ベクトル及び/又は加速度ベクトルの検出データから得られた、回転角速度や上記パラメータ値を用いて、被測定体が第1回転状態であるか第2回転状態であるかを判断する。
【0062】
また、図1に示すごとく、本例の磁気式ジャイロ1は、回転角度出力手段15を備える。
このようにすると、回転角速度|ω|を用いることにより、微小時間Δt内における、被測定体の回転角度θを算出することが可能となる。回転角度θが求まれば、例えば、地球座標系に対する被測定体の姿勢変化量を算出することができ、この変化量を積算することにより、被測定体の最新姿勢を算出することができる。本例の磁気式ジャイロ1は回転角速度|ω|の算出時間が短いため、被測定体の姿勢の算出時間も短くすることができ、被測定体の実際の姿勢変化に対する出力遅れ時間を短縮することができる。
【0063】
また、図1に示すごとく、本例の磁気式ジャイロ1は、3軸加速度センサ4と、第1姿勢算出手段51と、第2姿勢算出手段52とを備える。
このようにすると、磁気式ジャイロ1は第1姿勢算出手段51と第2姿勢算出手段52との2つの姿勢算出手段51,52を備えるため、これら2つの姿勢算出手段を使い分けることができる。これにより、状況に応じて被測定体の姿勢をより正確に算出することが可能となる。すなわち、第1姿勢算出手段51は、3軸磁気センサ2と3軸加速度センサ4との2種類のセンサを用いて、被測定体の姿勢を算出する。上記数式(2)〜(5)に示すごとく、この2種類のセンサを用いると、2種類のセンサによって検出したデータの測定時刻における、地球座標系に対する被測定体の姿勢行列を直接、正確に算出することができ、この姿勢行列から、ピッチ角δ、ロール角φ、ヨー角ηを求めることにより、被測定体の姿勢を算出できる。また、3軸加速度センサ4は、被測定体が静止していない場合、その動きによって生じる加速度がセンサの検出値に影響を及ぼすこととなるが、第2姿勢算出手段52は3軸磁気センサ2のみを用いて姿勢を算出するため、被測定体自身の動きによる加速度の影響を皆無にすることができる。そのため、これら2つの姿勢算出手段51,52を使い分けることにより、被測定体の姿勢の算出精度をより高めることが可能になる。
【0064】
また、本例の磁気式ジャイロ1は、姿勢出力手段53を備える。
このようにすると、被測定体の、より正確な姿勢を出力することができる。すなわち、第1姿勢算出手段51では、3軸加速度センサ4と3軸磁気センサ2との2種類のセンサを用いるため、被測定体の姿勢を直接、正確に算出することができる。また、被測定体を速く回転させると遠心力等の被測定体自身の加速度が発生し、加速度センサの検出値に、本来測定したい重力加速度以外の加速度誤差が加わることになるため、姿勢の算出結果に誤差が発生することがあるが、本例の磁気式ジャイロ1は、被測定体が第1回転状態となり、3軸加速度センサ4の検出値に対する被測定体自身の加速度の影響が小さいと判断できる場合のみ、3軸加速度センサ4を利用する第1姿勢算出手段51の姿勢算出結果を出力する。そのため、被測定体の運動状態に関係なく、3軸加速度センサ4を被測定体の姿勢計算に利用して、正確な姿勢を出力することができる。
【0065】
また、被測定体が第2回転状態となった場合には、第2姿勢算出手段52によって算出した微小時間Δtの間の姿勢変化量を1ステップ毎に算出した姿勢に積算していくことにより、磁気ベクトルのデータのみを用いて算出した姿勢を出力する。このようにすると、被測定体が第2回転状態となり、3軸加速度センサ4が遠心力等の被測定体自体の加速度の影響を受けても、この影響を受けた3軸加速度センサ4のデータを利用しない第2姿勢算出手段52の姿勢算出結果を出力するため、姿勢の出力結果に誤差が生じにくくなる。
【0066】
また、本例の磁気式ジャイロ1は、置換手段56を備える。
このようにすると、第2回転状態において、被測定体の姿勢の算出値に誤差が累積する不具合を防止できる。すなわち、第2姿勢算出手段52は、姿勢(姿勢行列)の初期値Pに、3軸磁気センサ2を用いて算出した、姿勢変化量を表現する回転行列Rを掛け続けることにより最新の姿勢を算出するため、測定した磁気ベクトルの検出値1つ1つに存在する誤差が姿勢変化量の積算によって累積していくことになる。これに対して第1姿勢算出手段51は、磁気ベクトルHのデータと加速度ベクトルAのデータとを用いて、数式(5)から、2種類のセンサの検出値の測定時刻における被測定体の姿勢を直接、算出できるため、第2姿勢算出手段52のように誤差が累積されることがない。そのため、第2回転状態から第1回転状態に移った場合に、第1姿勢算出手段51を用いて正確な姿勢(姿勢行列P)を算出し、再び第2回転状態に移った際に、第2姿勢算出手段52の算出において基準となる姿勢行列を、1ステップ前(第2回転状態に移る直前であって、第1回転状態の最後の算出)において、第1姿勢算出手段51により算出した姿勢行列に置き換え、この姿勢行列にその後の微小時間Δt毎に算出した姿勢変化量を意味する回転行列を掛け合わせることにより、最新の姿勢を算出する。これにより、姿勢に誤差が累積することを防止できる。
【0067】
以上のごとく、本例によれば、被測定体の回転角速度、回転角度、姿勢の算出時間を短縮し、被測定体の実際の動きに対する出力遅れ時間を短縮できる磁気式ジャイロを提供することができる。
【0068】
(実施例2)
本例は、図6に示すごとく、第1姿勢算出手段51によって算出した被測定体の姿勢である第1姿勢と、第2姿勢算出手段52によって算出した被測定体の姿勢である第2姿勢との間の中間姿勢を算出する中間姿勢算出手段54を設けた例である。中間姿勢は、回転角速度や上記パラメータ値が、回転が遅いことを示す値となるほど第1姿勢に近づき、回転角速度や上記パラメータ値が、回転が速いことを示す値となるほど第2姿勢に近づき、かつ第1姿勢と第2姿勢との間で連続的に変化する。また、本例の磁気式ジャイロ1は、中間姿勢算出手段54によって算出された中間姿勢を出力する中間姿勢出力手段55を備える。なお、本例の中間姿勢算出手段54は、上記中間姿勢の算出に、回転角速度|ω|を用いている。
【0069】
中間姿勢の算出方法について説明する。まず、上記第1姿勢を表す姿勢行列P1kと、上記第2姿勢を表す姿勢行列P2kとの間で、以下の数式を満たす回転差分行列Qを定義する。
2k=P1k
【0070】
【数4】

【0071】
回転差分行列Qを上記数式(8)のように表した場合、第2姿勢から第1姿勢への回転軸ベクトルm’と、第2姿勢から第1姿勢への回転軸ベクトルm’に対する回転角度αとは、下記数式のように表すことができる。
【0072】
【数5】

【0073】
m=m’/|m’|
tanα=|m’|/(q11+q22+q33−1) (但し0°≦α≦180°)
α=tan−1(|m’|/(q11+q22+q33−1))
【0074】
次に、第2姿勢と第1姿勢の間の中間姿勢を求めるための回転角度βを定義する。この角度βを定義するにあたって、被測定体の回転角速度|ω|の値によって0〜1の間の値をとる単調減少関数f(|ω|)を、予め決定しておく。f(|ω|)は以下の条件を満たし、かつ連続的に変化する関数である。
f(0)=1
f(∞)=0
【0075】
そして、β=αf(|ω|)と定義する。f(|ω|)は1〜0の間の値をとる単調減少関数なので、βは図7に示すごとく、回転角速度|ω|が増えるほど連続的に0に近づき、回転角速度|ω|が減るほど連続的にαに近づく。このように、回転角速度|ω|の変化に伴って滑らかに変化する角度βを使って、上記中間姿勢を表す中間姿勢行列P’を算出する。
すなわち、回転軸単位ベクトルm=(m,m,m)としたとき、上記第2姿勢を中間姿勢に変換するための回転行列R’は、下記数式により表される。
【0076】
【数6】

【0077】
また、下記数式(9)に示すごとく、第2姿勢を表す姿勢行列P2kに回転行列R’を掛けることにより、上記中間姿勢を表す中間姿勢行列P’を求めることができる。
P’=P2kR’ ・・・(9)
上述したように、角度βは、回転角速度|ω|が大きくなるほど連続的に0に近づき、逆に回転角速度|ω|が小さくなるほど連続的にαに近づく(図7参照)。そのため、角度βを使って中間姿勢行列P’を求めると、この中間姿勢行列P’は、回転角速度|ω|が大きくなるほど第2姿勢行列P2kに近づき、回転角速度|ω|が小さくなるほど第1姿勢行列P1kに近づく行列となる。
なお、本例では、関数fを回転角速度|ω|の関数として表現したが、このパラメータは、回転角速度以外のパラメータであっても、回転状態と関連するパラメータであれば構わない点は前記した通りである。
【0078】
次に、図8を用いて、本例におけるプログラム61pのフローチャートの説明をする。本例では、ステップS1〜ステップS4は実施例1と同様である。本例では、回転状態に関係なく、第1姿勢と、第2姿勢の両方を求めるため、回転状態の判断を行わずに算出することも可能であるが、置換手段56を全く実施することなく第2姿勢の算出を継続すると、誤差の蓄積が大きくなってしまうため、置換手段56を適切な時期に行うために、回転状態の判断を実施例と1と同様に行う。具体的に説明すると、ステップS10にてステップS5と同様に回転状態を判断し、その判断結果を保存しておく。そして、ステップS11に移り、一つ前のステップ(時刻が微小時間Δt前の計算)で保存した回転状態の判断情報を保存場所から取り出し、その結果が、第1回転状態であった場合には、ステップS12で第2姿勢算出手段52の計算の基礎となる姿勢データの置換処理を前記した説明通りに実施し、ステップS13に移る。一方、ステップS11において、一つ前のステップが、第2回転状態であった場合には、置換処理をすることなくステップS13に移る。そして、ステップS13にて第1姿勢と第2姿勢の両方の姿勢値を算出する。また、ステップS13を実行した後、ステップS14を実行する。ステップS14では、第1姿勢と第2姿勢との間の中間姿勢を表す中間姿勢行列P’を、上記数式(9)を使って求め、実施例1と同様にピッチ角δ、ロール角φ、ヨー角ηを求める。その後、ステップS15において、算出した姿勢におけるピッチ角δ、ロール角φ、ヨー角ηを出力する。
その他、実施例1と同様の構成を備える。
【0079】
本例の作用効果について説明する。本例の磁気式ジャイロ1は、第1姿勢と第2姿勢との間の中間姿勢を出力できるため、第1回転状態から第2回転状態に切り替わった場合、又は第2回転状態から第1回転状態に切り替わった場合に、姿勢の出力値が不連続に変化する可能性があることを防止することができる。また、中間姿勢を出力しない磁気式ジャイロの場合、明らかに第1姿勢算出手段51が適している回転状態であるかそれに近い状態と、明らかに第2姿勢算出手段52による算出が適していると考えられる高速回転状態では、算出誤差は比較的小さいと考えられるが、中間の回転速度領域で算出精度に問題が生じる可能性があった。本例は、その問題を解決し、閾値の適切な設定によって、中間速度領域での算出精度を向上できる効果を有する。
その他、実施例1と同様の作用効果を有する。
【0080】
(実施例3)
本例は、回転角速度|ω|が所定の範囲内にある場合のみ、中間姿勢を出力するようにした例である。本例では図9に示すごとく、回転角速度|ω|に、第1閾値Kと第2閾値Kとの2つの閾値を設定した。そして、回転角速度|ω|が0〜第1閾値Kの範囲にある場合は、第1姿勢算出手段51によって算出した第1姿勢を出力し、回転角速度|ω|が第1閾値K〜第2閾値Kの範囲にある場合は、中間姿勢算出手段54によって算出した中間姿勢を出力するようにした。さらに、回転角速度|ω|が第2閾値K以上の場合は、第2姿勢算出手段52によって算出した第2姿勢を出力するようにした。
その他、実施例2と同様の構成を備える。
【0081】
本例の作用効果について説明する。本例では、(1)式で|ω|を計算することにより計算時間の短縮を図っているが、中間姿勢を求める場合には、求めない場合と比較して計算量が増加する。一方で、ある程度以下に遅い回転状態である場合と、ある程度以上に速い回転状態である場合には、中間姿勢を求めなくても、前者は第1姿勢を、後者は第2姿勢をそのまま出力すれば問題ないと考えられる回転状態の範囲が存在すると考えられる。そこで、無条件に中間姿勢を求める構成とするのではなく、中間の速度領域のみ、中間姿勢を求めることにより、計算による負担をできるだけ小さく抑えつつ、全ての速度領域で、精度の高い姿勢計算をすることを可能にするのが実施例3の特徴である。
その他、実施例2と同様の作用効果を有する。
【0082】
(実施例4)
本例は、中間姿勢を出力する時間を変更した例である。図10に示すごとく、本例では、回転角速度|ω|に1つの閾値Kを設定した。そして、回転角速度|ω|が閾値K未満の場合は、第1姿勢算出手段51によって算出した第1姿勢を出力し、閾値K以上の時は、第2姿勢算出手段52によって算出した第2姿勢を出力するようにした。また、回転角速度|ω|が次第に速くなって閾値Kを超えた後の所定時間w1内と、回転角速度|ω|が次第に遅くなって閾値Kよりも遅くなった後の所定時間w2内は、中間姿勢を出力するようにした。
すなわち、閾値Kを超えたり遅くなった直後においては、実施例3で言う中間速度領域である確率が高くなると考えられる。したがって、計算量が多くなる中間姿勢の計算を、この時間内に限定して行うことにより、計算量の増加を最低限に抑えることができ、出力の時間遅れを短縮することができる。
その他、実施例3と同様の構成および作用効果を有する。
【符号の説明】
【0083】
1 磁気式ジャイロ
10 回転軸決定手段
11 回転角速度算出手段
12 回転角速度出力手段
2 3軸磁気センサ
3 メモリ
4 3軸加速度センサ
ω 回転角速度ベクトル
H 磁気ベクトル
α 回転軸と磁気ベクトルHのなす角度

【特許請求の範囲】
【請求項1】
被測定体に固定された3軸直交座標系における磁気ベクトルとして地磁気を検出する3軸磁気センサと、
該3軸磁気センサによって時系列的に検出される上記磁気ベクトルのデータを検出時の時刻データと共に蓄積するメモリと、
該メモリに蓄積された上記磁気ベクトルのデータに基づいて、上記被測定体の回転運動の基準とする回転軸を決定する回転軸決定手段と、
上記メモリに蓄積された上記磁気ベクトルのデータと上記時刻データとに基づいて、上記回転運動の回転角速度を算出する回転角速度算出手段と、
該回転角速度算出手段によって算出した上記回転角速度を出力する回転角速度出力手段とを有し、
上記回転角速度算出手段は、上記3軸磁気センサによって検出した上記磁気ベクトルHと、該磁気ベクトルHから、該磁気ベクトルHよりも微小時間Δt前の時点において測定した磁気ベクトルH’を引いたベクトルΔH(=H−H’)と、上記回転軸と上記磁気ベクトルHとの間の角度αを、下記数式
|ω|=|H×ΔH|/(|H|・sinα・Δt)
に代入することにより、上記被測定体の回転角速度ベクトルωの絶対値|ω|を、上記回転角速度として算出するよう構成されていることを特徴とする磁気式ジャイロ。
【請求項2】
請求項1に記載の磁気式ジャイロにおいて、上記3軸直交座標系における加速度ベクトルとして重力加速度を検出する3軸加速度センサと、該3軸加速度センサによって時系列的に検出される上記加速度ベクトルのデータを検出時の時刻データと共に蓄積する加速度ベクトルデータ蓄積用メモリと、上記磁気ベクトルのデータおよび上記加速度ベクトルのデータの少なくとも一方に基づいて、上記被測定体の回転角速度又は該回転角速度と関連のあるパラメータ値が、基準となる閾値未満である第1回転状態か、又は上記閾値以上である第2回転状態であるかを判断する回転状態判断手段を備え、上記回転角速度出力手段は、上記回転状態判断手段によって、上記被測定体が上記第2回転状態であると判断された場合にのみ、上記回転角速度を出力する磁気式ジャイロ。
【請求項3】
請求項1または請求項2に記載の磁気式ジャイロにおいて、上記回転角速度算出手段によって算出した上記回転角速度に基づいて、上記微小時間Δt内における、上記回転軸を中心とした上記被測定体の回転角度を算出する回転角度算出手段と、算出された上記回転角度を出力する回転角度出力手段とを備えることを特徴とする磁気式ジャイロ。
【請求項4】
請求項2または請求項3に記載の磁気式ジャイロにおいて、上記磁気ベクトルのデータと上記加速度ベクトルのデータとに基づいて、上記被測定体の姿勢を算出する第1姿勢算出手段と、上記回転角度算出手段によって算出された上記回転角度に基づいて、上記微小時間Δt内における上記被測定体の姿勢変化量を算出し、該姿勢変化量を、上記第1回転状態において上記第1姿勢算出手段が算出した上記姿勢の初期値に積算することにより、上記被測定体の最新の姿勢を算出する第2姿勢算出手段とを備えることを特徴とする磁気式ジャイロ。
【請求項5】
請求項4に記載の磁気式ジャイロにおいて、上記回転状態判断手段によって、上記被測定体の回転運動が上記第1回転状態であると判断された場合は、上記第1姿勢算出手段によって算出した上記姿勢を出力し、上記回転運動が上記第2回転状態であると判断された場合は、上記第2姿勢算出手段によって算出した上記姿勢を出力する姿勢出力手段を備えることを特徴とする磁気式ジャイロ。
【請求項6】
請求項4に記載の磁気式ジャイロにおいて、上記第1姿勢算出手段によって算出した上記被測定体の上記姿勢である第1姿勢と、上記第2姿勢算出手段によって算出した上記被測定体の上記姿勢である第2姿勢との間の中間姿勢を算出する中間姿勢算出手段を備え、
上記中間姿勢は、上記回転角速度がより遅い回転状態になるほど上記第1姿勢に近づき、上記回転角速度がより速い回転状態になるほど上記第2姿勢に近づき、かつ上記第1姿勢と上記第2姿勢との間で連続的に変化し、
上記中間姿勢算出手段によって算出された上記中間姿勢を出力する中間姿勢出力手段を備え、
上記中間姿勢算出手段は、上記回転状態判断手段において用いることが可能な上記パラメータ値を用いて、上記回転状態を定めていることを特徴とする磁気式ジャイロ。
【請求項7】
請求項4〜請求項6のいずれか1項に記載の磁気式ジャイロにおいて、上記第2姿勢算出手段を用いて上記姿勢を算出した後、上記被測定体の回転運動が上記第1回転状態となり、再び上記第2回転状態に戻った場合に、上記第2姿勢算出手段によって算出する際の基準となる上記姿勢のデータを、上記第1姿勢算出手段によって算出した、上記第2回転状態に戻る直前に第1姿勢算出手段により求めた上記姿勢のデータと置き換える置換手段を備え、上記第2姿勢算出手段は、置き換え後の基準となる姿勢データに第2姿勢算出手段により求めた姿勢変化量を加算していくことにより、上記姿勢の算出を行うよう構成されていることを特徴とする磁気式ジャイロ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2013−15435(P2013−15435A)
【公開日】平成25年1月24日(2013.1.24)
【国際特許分類】
【出願番号】特願2011−148931(P2011−148931)
【出願日】平成23年7月5日(2011.7.5)
【出願人】(501034106)アイチ・マイクロ・インテリジェント株式会社 (42)
【出願人】(508237823)株式会社OTSL (11)
【Fターム(参考)】