JP2014149211A - オフセット推定装置及びプログラム - Google Patents

オフセット推定装置及びプログラム Download PDF

Info

Publication number
JP2014149211A
JP2014149211A JP2013017747A JP2013017747A JP2014149211A JP 2014149211 A JP2014149211 A JP 2014149211A JP 2013017747 A JP2013017747 A JP 2013017747A JP 2013017747 A JP2013017747 A JP 2013017747A JP 2014149211 A JP2014149211 A JP 2014149211A
Authority
JP
Japan
Prior art keywords
offset
vector
posture
variable
magnetic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013017747A
Other languages
English (en)
Other versions
JP6191145B2 (ja
Inventor
Ibuki Handa
伊吹 半田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2013017747A priority Critical patent/JP6191145B2/ja
Priority to US14/166,014 priority patent/US20140214364A1/en
Priority to CN201410043656.1A priority patent/CN103969700B/zh
Publication of JP2014149211A publication Critical patent/JP2014149211A/ja
Application granted granted Critical
Publication of JP6191145B2 publication Critical patent/JP6191145B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R33/00Arrangements or instruments for measuring magnetic variables
    • G01R33/0023Electronic aspects, e.g. circuits for stimulation, evaluation, control; Treating the measured signals; calibration

Landscapes

  • Physics & Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Measuring Magnetic Variables (AREA)

Abstract

【課題】3次元磁気センサのオフセットの推定値を算出する。
【解決手段】3次元磁気センサ50と3次元角速度センサ60とを備える携帯機器1に設けられ3次元磁気センサ50のオフセットの推定値cを算出するオフセット推定装置100であって、3次元角速度センサ60の出力値に基づいて姿勢Aからの携帯機器1の姿勢変化量を演算する姿勢演算部110と、携帯機器1の姿勢が姿勢演算部110の演算した姿勢変化量だけ姿勢Aから変化したときに3次元磁気センサ50に固定された座標系から地磁気Bgを表す変数である第1変数ベクトルgと推定値cを表すための変数であるオフセット変数ベクトルcを3次元磁気センサ50からの出力値から減算した第2変数ベクトルdとの誤差の大きさを表す目的関数fを最小化するオフセット変数ベクトルcを推定値cとして算出するオフセット算出部140とを備える。
【選択図】図5

Description

本発明はオフセット推定装置及びプログラムに関する。
近年、携帯電話等の携帯機器や自動車等の移動体に搭載され、地磁気を検出する3次元磁気センサが開発されている。一般に、3次元磁気センサは、磁界のベクトルを3方向の成分に分解してスカラー量を検知するための3つの磁気センサモジュールを備え、3つの磁気センサモジュールが各々出力するスカラー量を3つの成分とする3次元のベクトルデータである磁気データを出力する。
ところで、3次元磁気センサが搭載される携帯電話等の機器は、着磁性を有する各種金属や、電気回路等、磁界を発生させる部品が備えられることが多い。この場合、3次元磁気センサが出力する磁気データは、地磁気を表すベクトルの他に、機器に搭載された部品が発する内部磁界等を表すベクトルも含む値となる。
従って、地磁気の値を正確に知るためには、3次元磁気センサが出力する磁気データから、機器の部品が発する内部磁界等の外乱成分を表すベクトルを取り除く補正処理が必要となる。このように、検出対象である地磁気の正確な値を得るために、補正処理において3次元磁気センサから出力される磁気データから取り除かれる外乱成分を、3次元磁気センサのオフセットと呼ぶ。
機器の部品が発する磁界である内部磁界は、機器に対して一定の方向を向き、一定の大きさを有する磁界である。よって、内部磁界は、機器に搭載された3次元磁気センサから見た場合には、機器をどのような姿勢に変化させた場合であっても、一定の方向と一定の大きさを有するベクトルとして表される。
一方、地磁気は、磁極北に向かう水平成分と伏角により定められる鉛直成分とを有する磁界であり、地面に対して一定の方向と一定の大きさとを有する一様な磁界である。従って、地面に対して機器の姿勢を変化させる場合には、機器から見た地磁気の方向も変化することになる。すなわち、機器に搭載された3次元磁気センサから見た場合、地磁気は、機器の姿勢の変化に伴い向きが変化する一定の大きさを持ったベクトルとして表される。
特許文献1には、このような地磁気及び内部磁界の性質を利用することで、機器の姿勢、すなわち、3次元磁気センサの姿勢を変化させつつ取得した複数の磁気データを、磁気センサから見て一定の方向及び大きさを有する内部磁界を表す成分と、3次元磁気センサの姿勢変化に伴って方向が変化する一定の大きさを有する地磁気を表す成分とに分離し、分離された内部磁界を表す成分をオフセットとして算出する方法が開示されている。
特開2012−198112号公報
しかし、従来の方法により3次元磁気センサのオフセットを算出する場合、3次元磁気センサの姿勢を十分に変化させつつ複数の磁気データを取得する必要があった。そのため、3次元磁気センサの姿勢変化が十分でない場合には、正確なオフセットを算出できないという問題があった。
本発明は、上述した点に鑑みてなされたものであり、従来の方法によりオフセットを算出する場合に必要とされる3次元磁気センサの姿勢変化に比べて小さい姿勢変化であっても、オフセットを推定することができるオフセット推定装置を提供することを解決課題とする。
上述した課題を解決するため、本発明に係るオフセット推定装置は、3方向の角速度を周期的に検出し、検出結果を角速度データとして順次出力する3次元角速度センサと、地磁気を含む3方向の磁気成分を周期的に検出し、検出結果を3軸の直交座標系におけるベクトルデータである磁気データとして順次出力する3次元磁気センサと、を備える機器に設けられ、前記3次元磁気センサのオフセットの推定値を算出するオフセット推定装置であって、前記角速度データに基づいて、基準姿勢からの前記機器の姿勢変化量を周期的に算出する姿勢演算部と、前記機器が前記基準姿勢から前記姿勢変化量だけ姿勢変化したときに前記直交座標系において前記地磁気を表すための変数ベクトルを第1変数ベクトルとし、前記オフセットの推定値を表すための変数ベクトルであるオフセット変数ベクトルを前記磁気データから減算した変数ベクトルを第2変数ベクトルとして、前記姿勢演算部が生成した所定数の姿勢変化量に対応する所定数の前記第1変数ベクトルと、前記3次元磁気センサから出力された所定数の磁気データに対応する所定数の前記第2変数ベクトルと、の誤差を表す目的関数を最小化する前記オフセット変数ベクトルを、前記オフセットの推定値として算出するオフセット算出部と、を備える、ことを特徴とする。
本発明に係るオフセット推定装置は、磁気データ及び角速度データに基づいてオフセットの推定値を算出する。角速度データは、機器の姿勢変化そのものを表すデータであり、機器の姿勢変化が正確に表されたデータである。
機器が姿勢変化する場合、当該姿勢変化は、3次元磁気センサから出力された複数の磁気データが3次元磁気センサの検出結果を表現するための3軸の直交座標系において示す複数の点の分布として表現される。そして、3次元磁気センサのオフセットの推定値は、当該複数の点の分布形状に基づいて統計的な手法により求められる。すなわち、3次元磁気センサのオフセットの推定値は、機器の姿勢変化に基づいて定められる複数の点の分布形状に基づいて算出される。そのため、機器の姿勢変化を正確に検出することができ、当該検出結果をオフセットの推定値を算出する演算において正確に反映させることができれば、正確なオフセットの推定値の算出が可能である。
本実施形態に係るオフセット推定装置は、磁気データに加えて角速度データを用いてオフセットの推定値を算出する。よって、本実施形態に係るオフセット推定装置は、磁気データのみに基づいてオフセットの推定値を算出する場合に比べ、オフセットの推定値を算出する演算に対して機器の姿勢変化を正確に反映させることができ、そのため、機器の姿勢変化が小さい場合であっても正確なオフセットの推定値を算出することができる。
なお、この発明において、3次元磁気センサのオフセットは、例えば、前記直交座標系において前記地磁気を表すベクトルと、前記3次元磁気センサの出力値との差分である。
また、この発明において、目的関数は、前記機器の姿勢が前記基準姿勢であるときに前記直交座標系において前記地磁気を表すための変数である基準変数ベクトルの各要素と、前記オフセット変数ベクトルの各要素と、を要素に含む変数ベクトルを変数とする関数であってもよい。
また、この発明において、第1変数ベクトルは、前記機器の姿勢が前記基準姿勢であるときに前記直交座標系において前記地磁気を表すための変数を基準変数ベクトルとして、前記機器の姿勢が前記基準姿勢から前記姿勢変化量だけ変化したときに前記直交座標系において前記基準変数ベクトルを表すベクトルであってもよい。
本発明に係るオフセット推定装置は、3方向の角速度を周期的に検出し、検出結果を角速度データとして順次出力する3次元角速度センサと、地磁気を含む3方向の磁気成分を周期的に検出し、検出結果を3軸の直交座標系におけるベクトルデータである磁気データとして順次出力する3次元磁気センサと、を備える機器に設けられ、前記3次元磁気センサのオフセットの推定値を算出するオフセット推定装置であって、前記角速度データに基づいて、基準姿勢からの前記機器の姿勢変化量を周期的に算出する姿勢演算部と、前記機器の姿勢が前記基準姿勢であるときに前記直交座標系において前記地磁気を表すための変数ベクトルを基準変数ベクトルとし、前記基準変数ベクトルを、前記姿勢変化量だけ姿勢変化させた変数ベクトルを第1変数ベクトルとし、前記第1変数ベクトルと、前記オフセットを表すための変数ベクトルであるオフセット変数ベクトルとを加算した変数ベクトルを検出磁気変数ベクトルとして、前記姿勢演算部が算出した所定数の前記姿勢変化量のそれぞれに対応する所定数の前記検出磁気変数ベクトルが示す前記直交座標系における所定数の点と、前記3次元磁気センサから出力された所定数の磁気データが示す前記直交座標系における所定数の点と、の誤差を最小化する前記オフセット変数ベクトルを、前記オフセットの推定値として算出するオフセット算出部と、を備える、ことを特徴とするものであってもよい。
また、上述したオフセット推定装置は、前記機器が前記基準姿勢のときに、前記直交座標系において前記地磁気を表すための変数ベクトルを基準変数ベクトルとし、前記目的関数を最小化する前記基準変数ベクトルを基準推定地磁気ベクトルとし、前記基準推定地磁気ベクトルを、前記姿勢変化量だけ姿勢変化させたベクトルを推定地磁気ベクトルとして、前記姿勢演算部が算出した所定数の姿勢変化量のそれぞれに対応する所定数の前記推定地磁気ベクトルが示す前記直交座標系における所定数の点の分布形状と、前記3次元磁気センサから出力された所定数の磁気データが示す前記直交座標系における所定数の点の分布形状との、相違の程度が、所定の範囲内であるか否かを判定する第1判定部と、前記第1判定部の判定結果が肯定の場合、前記オフセットの推定値を、前記オフセットとして採用する、オフセット採用部と、を備える、ことを特徴とすることが好ましい。
また、上述したオフセット推定装置は、前記機器が前記基準姿勢のときに、前記直交座標系において前記地磁気を表すための変数ベクトルを基準変数ベクトルとし、前記目的関数を最小化する前記基準変数ベクトルを基準推定地磁気ベクトルとし、前記基準推定地磁気ベクトルを、前記姿勢変化量だけ姿勢変化させたベクトルを推定地磁気ベクトルとして、前記姿勢演算部が算出した所定数の姿勢変化量のそれぞれに対応する所定数の前記推定地磁気ベクトルの分散を表す推定地磁気データ分散行列の有する成分と、前記3次元磁気センサから出力された所定数の磁気データの分散を表す磁気データ分散行列の有する成分との、相違の程度が、所定の範囲内であるか否かを判定する第1判定部と、前記第1判定部の判定結果が肯定の場合、前記オフセットの推定値を、前記オフセットとして採用する、オフセット採用部と、を備えることを特徴とする、ことが好ましい。
また、上述したオフセット推定装置は、前記機器が前記基準姿勢のときに、前記直交座標系において前記地磁気を表すための変数ベクトルを基準変数ベクトルとし、前記目的関数を最小化する前記基準変数ベクトルを基準推定地磁気ベクトルとし、前記基準推定地磁気ベクトルを、前記姿勢変化量だけ姿勢変化させたベクトルを推定地磁気ベクトルとして、前記姿勢演算部が算出した所定数の姿勢変化量のそれぞれに対応する所定数の前記推定地磁気ベクトルの分散を表す推定地磁気データ分散行列を演算する、第1行列演算部と、前記3次元磁気センサから出力された所定数の磁気データの分散を表す磁気データ分散行列を演算する、第2行列演算部と、前記推定地磁気データ分散行列が有する固有値及び固有ベクトル、並びに、前記磁気データ分散行列が有する固有値及び固有ベクトルが、前記推定地磁気データ分散行列の最大固有値に対応する固有ベクトル、及び、前記磁気データ分散行列の最大固有値に対応する固有ベクトルが平行であること、または、当該2つの固有ベクトルのなす角が所定の角度以下であることを表す第1条件と、前記推定地磁気データ分散行列の中間固有値に対応する固有ベクトル、及び、前記磁気データ分散行列の中間固有値に対応する固有ベクトルが平行であること、または、当該2つの固有ベクトルのなす角が所定の角度以下であることを表す第2条件と、前記推定地磁気データ分散行列の最小固有値に対応する固有ベクトル、及び、前記磁気データ分散行列の最小固有値に対応する固有ベクトルが平行であること、または、当該2つの固有ベクトルのなす角が所定の角度以下であることを表す第3条件と、前記推定地磁気データ分散行列の最大固有値、及び、前記磁気データ分散行列の最大固有値の近似の程度を表す指標値が、所定の値以上であることを表す第4条件と、前記推定地磁気データ分散行列の中間固有値、及び、前記磁気データ分散行列の中間固有値の近似の程度を表す指標値が、所定の値以上であることを表す第5条件と、前記推定地磁気データ分散行列の最小固有値、及び、前記磁気データ分散行列の最小固有値の近似の程度を表す指標値が、所定の値以上であることを表す第6条件と、のうち、一部または全部の条件を充足するか否かを判定する類似度判定部と、前記類似度判定部の判定結果が肯定の場合、
前記オフセットの推定値を、前記オフセットとして採用する、オフセット採用部と、を備えることを特徴とするものであってもよい。
また、上述したオフセット推定装置は、前記オフセット算出部が行う前記オフセットの推定値を算出する演算の精度を表す精度指標を生成する指標生成部と、前記精度指標が、正の実数である所定の閾値以上であるか否かを判定する第2判定部と、を備え、前記目的関数は、前記機器の姿勢が前記基準姿勢であるときに前記直交座標系において前記地磁気を表すための変数である基準変数ベクトルの各要素と、前記オフセット変数ベクトルの各要素と、を要素に含む変数ベクトルを変数とする関数であり、前記精度指標は、前記目的関数を前記変数ベクトルの各要素を変数とする二次形式によって表す場合の係数行列の最小固有値であり、前記オフセット算出部は、前記第2判定部の判定結果が肯定である場合には、前記オフセットの推定値を算出し、前記第2判定部の判定結果が否定である場合には、前記オフセットの推定値を算出しない、ことを特徴とする、ことが好ましい。
本態様に係るオフセット推定装置は、精度指標に基づいて、オフセット算出部が行う演算の精度を予め評価することができる。よって、オフセット算出部が行う演算の精度が低いと予想される場合には、当該演算が実行されることを防止することができる。これにより、本実施形態に係るオフセット推定装置は、真のオフセットから大きく乖離した不正確なオフセットの推定値が算出されることを防止することができる。
また、本発明に係るオフセット推定装置のプログラムは、3方向の角速度を周期的に検出し、検出結果を角速度データとして順次出力する3次元角速度センサと、地磁気を含む3方向の磁気成分を周期的に検出し、検出結果を3軸の直交座標系におけるベクトルデータである磁気データとして順次出力する3次元磁気センサと、を備える機器に設けられ、前記3次元磁気センサのオフセットの推定値を、コンピュータを用いて推定するオフセット推定装置のプログラムであって、前記コンピュータを、前記角速度データに基づいて、基準姿勢からの前記機器の姿勢変化量を周期的に算出する姿勢演算部と、前記機器が前記基準姿勢から前記姿勢変化量だけ姿勢変化したときに前記直交座標系において前記地磁気を表すための変数ベクトルを第1変数ベクトルとし、前記オフセットの推定値を表すための変数ベクトルであるオフセット変数ベクトルを前記磁気データから減算した変数ベクトルを第2変数ベクトルとして、前記姿勢演算部が生成した所定数の姿勢変化量に対応する所定数の前記第1変数ベクトルと、前記3次元磁気センサから出力された所定数の磁気データに対応する所定数の前記第2変数ベクトルと、の誤差を表す目的関数を最小化する前記オフセット変数ベクトルを、前記オフセットの推定値として算出するオフセット算出部と、として機能させる、ことを特徴とする。
本発明の実施形態に係る携帯機器1の構成を示すブロック図である。 本発明の実施形態に係る携帯機器1の外観を示す斜視図である。 地磁気Bg及び内部磁界Biを説明するための説明図である。 地磁気Bg及び内部磁界Biを説明するための説明図である。 本発明の第1実施形態に係るオフセット推定装置100の機能を表すブロック図である。 ノイズ磁界Bxを説明するための説明図である。 本発明の第2実施形態に係るオフセット推定装置100の機能を表すブロック図である。
<A.第1実施形態>
本発明の第1実施形態について図面を参照して説明する。
<1.機器構成及びソフトウェア構成について>
図1は、本発明の実施形態に係る携帯機器のブロック図であり、図2は携帯機器の外観を示す斜視図である。携帯機器1(以下、「機器」と称する場合がある)は、携帯機器1が備える3次元磁気センサ及び3次元角速度センサからの出力に基づいて、携帯機器1から見た地磁気Bgの向きを推定する。
携帯機器1は、各種の構成要素とバスを介して接続され装置全体を制御するCPU10、CPU10の作業領域として機能するRAM(蓄積部)20、オフセット推定プログラム200等の各種のプログラムやデータを記憶したROM30、各種情報を表示する表示部40、及び、通信を実行する通信部(図示省略)を備える。
また、携帯機器1は、単位時間ΔT毎に地磁気等の磁界を検出して磁気データMを出力可能な3次元磁気センサ50、及び、単位時間ΔT毎に角速度を検出して角速度データWを周期的に出力可能な3次元角速度センサ60を備える。
表示部40は、例えば、携帯機器1が磁気データM及び角速度データWに基づいて推定した地磁気Bgの向きを、矢印等の画像で表示することができる。
3次元磁気センサ50は、X軸磁気センサ51、Y軸磁気センサ52、及びZ軸磁気センサ53を備える。各センサは、MI素子(磁気インピーダンス素子)、MR素子(磁気抵抗効果素子)などを用いて構成することができる。磁気センサI/F54は、X軸磁気センサ51、Y軸磁気センサ52、及び、Z軸磁気センサ53からの出力信号をAD変換して磁気データMを出力する。この磁気データMは、x軸、y軸およびz軸の3成分によって表される3次元のベクトルである「磁気ベクトルm」を表すデータである。より具体的には、磁気ベクトルmは、3次元磁気センサ50に固定された3軸の直交座標系(以下、「センサ座標系Σ」と称する)において、X軸磁気センサ51からの出力値をx軸成分として表し、Y軸磁気センサ52からの出力値をy軸成分として表し、Z軸磁気センサ53からの出力値をz軸成分として表す3次元ベクトルである。
なお、以下では、例えばある時刻T=kにおいて3次元磁気センサ50が検出した磁界に基づいて出力される磁気データMを、添え字「k」を付して「磁気データM」と表記し、磁気データMの表す3次元のベクトルを、「磁気ベクトルm」と表記する。
3次元磁気センサ50が検出する磁界には、地磁気Bg及び内部磁界Biが含まれる。以下、図3及び図4を参照しつつ、地磁気Bg及び内部磁界Biの性質について説明する。
図3は、地上に固定された3軸の直交座標系(以下、「地上座標系Σ」と称する)において、地磁気Bg及び内部磁界Biを表した説明図である。なお、図3に示す姿勢Aは、地上座標系Σにおけるセンサ座標系Σの各軸の向き(すなわち、地上座標系Σにおける、3次元磁気センサ50の姿勢)を表す。また、図3に示す位置Pは、地上座標系Σにおけるセンサ座標系Σの原点の位置(すなわち、地上座標系Σにおける、3次元磁気センサ50の位置)を表す。
地磁気Bgは、一般的に、磁極北に向かう水平成分と伏角により定められる鉛直成分とを有する磁界であり、地上座標系Σにおいて、一定の向き及び大きさを有するベクトルBgとして表される(なお、以下において、ベクトルの符号の左上に示す添え字「G」は、当該ベクトルが地上座標系Σにおいて表されたベクトルであることを意味する)。すなわち、携帯機器1の姿勢A及び位置Pが変化しても、地磁気Bgを表すベクトルBgの向き及び大きさは変化しない。
内部磁界Biは、携帯機器1から見て一定の向き及び一定の大きさを有する磁界であり、例えば、携帯機器1に備えられた部品の発する磁界である。そのため、内部磁界Biを地上座標系Σにおいて表すベクトルは、携帯機器1の姿勢Aの変化に連動してその向きを変えるベクトルであり、姿勢Aの関数であるベクトルBi(A)として表現することができる。
図4は、携帯機器1の姿勢AをA〜Aと変化させつつ磁界を測定した場合に、3次元磁気センサ50が出力するN(所定数)個の磁気データM〜Mが表すN個の磁気ベクトルm〜mが指し示すセンサ座標系Σ上の複数の点を表した図である。
センサ座標系Σにおいて、内部磁界Biは、携帯機器1の姿勢A及び位置Pが変化する場合であっても、一定の向き及び大きさを有するベクトルBiとして表される(なお、ベクトルの符号の左上に示す添え字「S」は、当該ベクトルがセンサ座標系Σにおいて表されたベクトルであることを意味する)。
センサ座標系Σにおいて、地磁気Bgは、携帯機器1の姿勢Aに連動して向きを変える一定の大きさのベクトルBg(A)として表される。このベクトルBg(A)は、センサ座標系Σから見た地磁気Bgの向き、つまり、携帯機器1から見た地磁気Bgの向きを表す。
3次元磁気センサ50が地磁気Bg及び内部磁界Biのみを検出する場合には、磁気ベクトルmは、内部磁界Bi及び地磁気Bgを合計した磁界を表す。すなわち、この場合、センサ座標系Σにおいて磁気ベクトルmは、ベクトルBi及びベクトルBg(A)の和を表す。
ここで、ベクトルBiの起点(始点)がセンサ座標系Σの原点と一致するようにベクトルBiを配置した場合に、当該ベクトルBiの終点を点Cとする。また、点Cを中心として地磁気Bgの大きさを半径とする球面を球面Sとする。
このとき、携帯機器1の姿勢AをA〜Aと変化させつつ磁界を測定すると、3次元磁気センサ50から出力される複数の磁気データM〜Mが表す複数の磁気ベクトルm〜mは、図4に示すように、球面S上の座標を示す。よって、磁気ベクトルm(k=1、2、…N)の各々が示す座標から、点Cの座標を減算することにより、ベクトルBg(A)、つまり、地磁気Bgの向き及び大きさを算出することができる。
このように、検出対象である地磁気Bgの正確な向きを得るために、磁気ベクトルmの示す座標から、球面Sの中心点Cの示す座標を減算する処理を、補正処理と呼ぶ。また、補正処理において磁気ベクトルmから取り除かれるべきベクトルを、3次元磁気センサ50のオフセットcOFFと呼ぶ。図4に示す例では、オフセットcOFFは内部磁界Biを表すベクトルBiであり、換言すれば、センサ座標系Σにおける球面Sの中心点Cの座標を表すベクトルである。
なお、実際には、3次元磁気センサ50の出力する磁気データMは測定誤差を有するため、複数の磁気ベクトルm〜mにより表される複数の点は、厳密には球面Sの近傍に確率的に分布する。
説明を図1に戻す。図1に示す3次元角速度センサ60は、X軸角速度センサ61、Y軸角速度センサ62、及びZ軸角速度センサ63を備える。角速度センサI/F64は、各センサからの出力信号をAD変換して角速度データWを出力する。この角速度データWは、携帯機器1に固定された3軸の直交座標系において、3方向に延在する各軸の周りの角速度を示す3次元ベクトルである「角速度ベクトルω」を表すデータである。
なお、以下では、ある時刻T=kにおいて3次元角速度センサ60が検出した角速度に基づいて出力される角速度データWを、添え字「k」を付して「角速度データW」と表記し、角速度データWの表す3次元のベクトルを、「角速度ベクトルω」と表記する。
CPU10は、ROM30に格納されているオフセット推定プログラム200を実行することによって、3次元磁気センサ50のオフセットcOFFを推定する。すなわち、CPU10は、オフセット推定プログラム200を実行することにより、オフセット推定装置100として機能する。
図5は、オフセット推定装置100の機能を表した機能ブロック図である。
オフセット推定装置100は、姿勢演算部110、精度判定部130、オフセット算出部140、分布形状判定部150、及び、採用部160を備える。
このオフセット推定装置100は、磁気データM及び角速度データWに基づいて、3次元磁気センサ50のオフセットcOFFの推定値cを生成する。より具体的には、オフセット推定装置100は、時刻T=1から時刻T=Nにかけて単位時間ΔTごとに3次元磁気センサ50及び3次元角速度センサ60からそれぞれ出力される、N個の磁気データM〜M及びN個の角速度データW〜Wがそれぞれ表す磁気ベクトルm〜m及び角速度ベクトルω〜ωに基づいて、オフセットcOFFの推定値cを生成する。
なお、図5に示す機能ブロック図には、説明の便宜上、オフセット推定装置100の他に、3次元磁気センサ50、3次元角速度センサ60、及び、記憶部300を記載している。
また、以下では、分布形状判定部150を「第1判定部」と称し、精度判定部130を「第2判定部」と称する場合がある。
姿勢演算部110は、時刻T=1における携帯機器1の姿勢Aを基準姿勢としたうえで、3次元角速度センサ60から出力される角速度データWの示す角速度ベクトルωに基づいて、基準姿勢(姿勢A)から、各時刻T=k(k=1、2、…、N)における携帯機器1の姿勢Aに姿勢変化するときの姿勢変化量を演算し、演算した姿勢変化量を表すデータである姿勢データを周期的に出力する。
本実施形態では、姿勢A及び姿勢変化量を、3行3列の回転行列(例えば、Direct Cosine Matrix)を用いて表現する。以下では、基準姿勢(姿勢A)から姿勢Aへの姿勢変化量を表す回転行列を、姿勢回転行列Rと称する。
姿勢演算部110は、以下に示す式(1)及び式(2)に基づいて、各時刻T=k(k=1、2、…、N)における姿勢回転行列Rを算出し、算出した姿勢回転行列Rを出力する。なお、式(1)に現れる行列I3×3は、3行3列の単位行列である。また、式(2)に表される演算子Ωは、式(3)に示すように、式(4)に示す3次元ベクトルpを、式(3)の右辺に示す3行3列の交代行列に変換するための演算子である。
Figure 2014149211
なお、本実施形態では、姿勢Aを基準姿勢としているが、基準姿勢は、各時刻T=k(k=1、2、…、N)における姿勢Aと基準姿勢との姿勢変化量を角速度データWに基づいて算出可能な姿勢であれば、どのような姿勢であってもよい。
例えば、基準姿勢は、姿勢A乃至姿勢Aのうちいずれかであってもよい。
姿勢演算部110は、生成したN個の姿勢データ(つまり、N個の姿勢回転行列R〜RN)を、記憶部300に記憶させる。この記憶部300は、図1に示すRAM20に相当する。
また、この記憶部300には、N個の姿勢回転行列R〜Rの他に、3次元磁気センサ50から出力されるN個の磁気データM〜M(つまり、N個の磁気ベクトルm〜m)も記憶される。
精度判定部130は、記憶部300に記憶されている姿勢回転行列R〜Rを用いて、精度判定処理を実行する。
精度判定処理とは、オフセット算出部140が、記憶部300に記憶されている姿勢回転行列R〜RN及び磁気ベクトルm〜mに基づいてオフセットcOFFの推定値cを算出する演算を実行する場合に、当該演算の精度が高いものであるか否かについて判定する処理である。この精度判定処理の詳細については後述する。
オフセット算出部140は、精度判定部130が行う判定の結果が肯定である場合に、記憶部300が記憶する姿勢回転行列R〜R及び磁気ベクトルm〜mに基づいて、オフセットcOFFの推定値c及び基準推定地磁気ベクトルrE1を算出する。なお、基準推定地磁気ベクトルrE1については、後述する。
なお、オフセット算出部140が行うオフセットの推定値cを算出する処理を、「オフセット算出処理」と称する場合がある。
分布形状判定部150は、記憶部300に記憶されている姿勢回転行列R〜RN及び磁気ベクトルm〜m、並びに、オフセット算出部140が算出する基準推定地磁気ベクトルrE1を用いて、分布判定処理を実行する。
分布判定処理とは、オフセット算出部140が、記憶部300に記憶されている姿勢回転行列R〜R及び磁気ベクトルm〜mに基づいてオフセットcOFFの推定値cを算出する場合に、オフセット算出部140により算出されるオフセットcOFFの推定値cが、オフセットcOFFを正確に表すものであるか否かについて判定する処理である。この分布判定処理の詳細については後述する。
採用部160は、分布形状判定部150が行う判定の結果が肯定である場合には、オフセット算出部140が算出したオフセットcOFFの推定値cを、オフセットcOFFとして採用し、否定である場合には、当該推定値cをオフセットcOFFとして採用しない、という制御を実行する。
なお、本実施形態では、オフセット算出部140は、精度判定部130が行う判定の結果が肯定である場合に限り、オフセットcOFFの推定値c及び基準推定地磁気ベクトルrE1を算出するが、本発明はこのような態様に限定されるものでは無い。
例えば、オフセット算出部140は、精度判定部130が行う判定の結果に関わらずオフセットcOFFの推定値c等を算出するものであってもよい。この場合、採用部160は、精度判定部130が行う判定の結果が肯定であり、且つ、分布形状判定部150が行う判定の結果が肯定である場合に限り、オフセット算出部140において算出されたオフセットcOFFの推定値cを、オフセットcOFFとして採用することが好ましい。
以下において、上述したオフセット算出処理、分布判定処理、及び、精度判定処理について、詳細に説明する。
<2.オフセット算出処理について>
上述のとおり、オフセット算出部140が実行するオフセット算出処理とは、オフセットcOFFの推定値cを算出するための処理である。以下では、まず、オフセット算出部140が実行するオフセット算出処理の詳細について説明する。
図4に示すように、地磁気Bgを表すベクトルBg(A)は、3次元磁気センサ50からの出力される磁気データMが示す磁気ベクトルmから、3次元磁気センサ50のオフセットcOFFを減算したベクトルであり、以下の式(5)で表すことができる。なお、以下では、センサ座標系Σにおいて観測される地磁気Bgを表すベクトルBg(A)のことを、「観測地磁気ベクトルr」と表現する場合がある。また、オフセット推定装置100が基準姿勢であるときに、センサ座標系Σにおいて観測される地磁気Bgを表すベクトルBg(A)のことを「基準観測地磁気ベクトルr」と表現することがある。観測地磁気ベクトルrは、携帯機器1の姿勢が姿勢Aであるときに、地磁気Bgをセンサ座標系Σにおいて表した3次元のベクトルであり、基準観測地磁気ベクトルrは、携帯機器1の姿勢が姿勢Aであるときに、地磁気Bgをセンサ座標系Σにおいて表した3次元のベクトルである。よって、観測地磁気ベクトルrは、以下に示す式(6)のように、基準観測地磁気ベクトルrを、姿勢Aから姿勢Aへの姿勢変化を表す姿勢回転行列Rの転置行列により回転させたベクトルとして表される。
これら式(5)及び式(6)から、以下の式(7)を導くことができる。
Figure 2014149211
なお、式(7)は、3次元磁気センサ50が磁界を誤差なく検出することができ、且つ、3次元磁気センサ50から出力される磁気ベクトルmが検出した磁界と完全に一致するという、理想的な場合にのみ成立する。そして、式(7)が成立する場合には、式(7)により定められる連立一次方程式の解として、オフセットcOFFを算出することができる。
しかし、3次元磁気センサ50の出力する磁気データMは測定誤差を有しており、通常、式(7)の左辺と右辺とは一致しない。よって、式(7)に基づいて定められる連立一次方程式の解として、オフセットcOFFを算出することはできない。
そこで、本実施形態におけるオフセット算出処理では、以下の式(8)に示す目的関数f(x)を導入することで、式(7)の左辺と右辺とができるだけ近い値になるような、オフセットcOFFの推定値(近似値)及び基準観測地磁気ベクトルrの推定値(近似値)を、統計的な手法により算出する。
目的関数f(x)は、第1変数ベクトルg〜gと、第2変数ベクトルd〜dと、の誤差の大きさの程度を表す関数である。具体的には、目的関数f(x)は、以下の式(8)に示すように、第1変数ベクトルgから第2変数ベクトルdを減算したベクトルの大きさの二乗値の平均を表す。
ここで、目的関数f(x)の変数である変数ベクトルxは、以下の式(9)に示すように、オフセットcOFFを表すための3次元の変数ベクトルc(以下、「オフセット変数ベクトルc」と称する場合がある)と、基準観測地磁気ベクトルrを表すための3次元の変数ベクトルr(以下、「基準変数ベクトルr」と称する場合がある)と、を要素とする、6次元の変数ベクトルである。また、第1変数ベクトルgは、式(10)に示すように、ベクトルBg(A)を表すための3次元の変数ベクトルである。また、第2変数ベクトルdは、式(11)に示すように、磁気ベクトルmからオフセット変数ベクトルcを減算したベクトルを表すための3次元の変数ベクトルである。
このような目的関数f(x)を最小化する変数ベクトルx(つまり、目的関数f(x)を最小化するような、オフセット変数ベクトルc、及び、基準変数ベクトルr)を求めることで、オフセットcOFFとして尤らしい値、及び、基準観測地磁気ベクトルrとして尤らしい値を求めることができる。
なお、以下では、オフセット変数ベクトルcと、第1変数ベクトルgとを加算したベクトルを、「検出磁気変数ベクトル」と称する場合がある。
Figure 2014149211
以下において、式(8)に示す目的関数f(x)を最小化する変数ベクトルxの算出方法を、具体的に説明する。
本実施形態では、まず、目的関数f(x)を、以下の式(12)に示す目的関数g(x)に変形する。この、目的関数g(x)は、目的関数f(x)を、変数ベクトルxの各要素を変数とする二次形式で表現し、且つ、目的関数f(x)の最小化問題に影響を及ぼさない定数項を削除した関数である。このような目的関数g(x)を最小化する変数ベクトルxは、目的関数f(x)を最小化する変数ベクトルxと等しくなる。つまり、目的関数f(x)を最小化する最小化問題は、目的関数g(x)を最小化する最小化問題に帰着させることができる。
ここで、式(12)に現れる行列Qは、二次形式である目的関数g(x)の係数行列であり、具体的には、式(13)で表される6行6列の正定値対称行列である。式(12)に現れるベクトルbは、式(15)で表される6次元ベクトルである。式(13)に現れる行列RAVEは、式(14)で表される3行3列の行列である。式(15)に現れるベクトルbは、式(16)で表される3次元ベクトルである。式(15)に現れるベクトルmAVEは、式(17)で表される3次元ベクトルである。
Figure 2014149211
以下では、式(12)に示す目的関数g(x)を最小化する変数ベクトルxを最適解xOPTと称する場合がある。この最適解xOPTは、式(13)が正定値行列の場合、以下の式(18)により求めることができる。また、この最適解xOPTは、以下の式(19)に示すように、基準推定地磁気ベクトルrE1と、オフセットcOFFの推定値cとを要素とする。ここで、基準推定地磁気ベクトルrE1とは、基準磁気ベクトルrの推定値である
従って、オフセット算出部140は、式(18)により算出される最適解xOPTから、式(19)に示される推定値cに対応する要素を抽出することにより、オフセットcOFFの推定値cを算出することができる。
Figure 2014149211
なお、オフセット算出部140は、後述する精度判定部130の判定結果が否定である場合には、上述した演算、つまり、オフセットの推定値cを算出するための一連の演算を実行しない。
このように、結局、オフセット算出処理は、角速度データに基づいて機器が基準姿勢から所定数の姿勢に姿勢変化したときの地磁気を直交座標系において表すための所定数のベクトルを設定し、また、磁気データに基づいて前記姿勢変化に対応する所定数の地磁気を表すための所定数のベクトル(オフセットを含まない)を設定し、各々の地磁気を表すための所定数のベクトルの誤差を小さくすることでオフセットを算出するものである。
<3.分布判定処理について>
次に、分布判定処理について説明する。
上述のとおり、分布形状判定部150が実行する分布判定処理は、オフセット算出部140が記憶部300に記憶されている磁気ベクトルm〜mに基づいてオフセットcOFFの推定値cを算出する場合に、当該推定値cがオフセットcOFFを正確に表すものであるか否かを判定する処理である。換言すれば、分布判定処理は、記憶部300に記憶されている磁気ベクトルm〜mがオフセットcOFFの推定値cの算出に適したデータであるか否かを判定する処理である。
上述したオフセット算出処理は、図4に示すように、センサ座標系Σにおいて、補正磁気ベクトルr〜rが点Cを起点(始点)とした長さの等しいベクトルであること、すなわち、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が球面であると看做すことができること、を前提とした処理である。オフセット算出処理がこのような前提のもとに実行されることは、式(6)に示すように、観測地磁気ベクトルrが、基準観測地磁気ベクトルrを回転行列である姿勢回転行列Rにより回転したベクトルとして表されることからも明らかである。
しかし、実際には、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が、球面とは異なる歪んだ形状となる場合がある。この場合、仮に、オフセット算出部140が磁気ベクトルm〜mに基づいてオフセットcOFFの推定値cを算出しても、当該推定値cは、オフセットcOFFから大きく乖離した値である可能性が高い。
例えば、図6に示すように、地磁気Bg及び内部磁界Biの他に、携帯機器1の姿勢A及び位置Pの変化に連動してその向き及び大きさを変化させるベクトルBx(A、P)として表現される磁界(以下、「ノイズ磁界Bx」と称する場合がある)が、3次元磁気センサ50により検知される場合がある。この場合、磁気ベクトルmは、ベクトルBi、ベクトルBg(A)、及び、ベクトルBx(A、P)の和を表す。位置PをP〜Pと変化させるとき、ベクトルBx(A、P)により示される曲面SXは、図6に示すように、球面とは異なる歪んだ形状となる可能性が高い。よって、この場合、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点は、球面Sの近傍には分布せず、球面とは異なる形状の立体Sの表面近傍に分布する可能性が高い。
そして、図6に示す例のように、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点が球面とは異なる形状の立体Sの表面近傍に分布する場合であっても、オフセット算出部140は、これら複数の点がある球面Sの近傍に分布すると仮定し、且つ、当該球面Sと上述した球面Sとが一致すると仮定することで、当該球面Sの中心点Cの座標を、球面Sの中心点Cの座標であるオフセットcOFFの推定値cとして算出する。
しかし、図6に示される磁気ベクトルm〜mは、実際には、内部磁界Bi及び地磁気Bgの他に、ノイズ磁界Bxを合計した磁界を表す。よって、ノイズ磁界Bxが存在する場合、すなわち、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点が立体Sの表面近傍に分布する場合、これら複数の点を近傍に有する球面Sは、球面Sとは異なる球面である可能性が高く、球面Sの中心点Cは、球面Sの中心点Cとは異なる座標を有する可能性が高い。
つまり、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点が立体Sの表面近傍に分布する場合、球面Sの中心点Cの座標として算出される推定値cは、オフセットcOFFを正確に表さない可能性が高い。
そこで、分布形状判定部150は、磁気ベクトルm〜m及び姿勢回転行列R〜R、並びに、オフセット算出部140が算出する基準推定地磁気ベクトルrE1に基づいて、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が球面と看做すことができるか否か(つまり、分布形状が歪んだ形状をしていないか否か)を判定することで、当該磁気ベクトルm〜mに基づいてオフセット算出部140が算出するオフセットcOFFの推定値cが、オフセットcOFFを正確に表すものか否かについて判定を行う。
これにより、オフセットcOFFの推定値cの算出に適さない磁気ベクトルm〜m、つまり、ノイズを含んだ磁気ベクトルm〜mに基づいて、オフセット算出部140がオフセットcOFFの推定値cを算出した場合に、これがオフセットcOFFを正確に表すものではないことを判定することができる。
以下、分布形状判定部150が行う分布判定処理について、具体的に説明する。
図5に示すように、分布形状判定部150は、第1行列演算部152、第2行列演算部154、及び、類似度判定部156を備える。
第1行列演算部152は、記憶部300に記憶されている磁気ベクトルm〜mに基づいて、以下の式(20)に示す行列Sを演算する。ここで、式(20)に現れるベクトルsは、以下の式(21)に示す3次元のベクトルであり、行列Sは、センサ座標系Σにおいて磁気ベクトルm〜mの分散を表す3行3列の対称行列である。以下では、行列Sを「磁気データ分散行列」と称する場合がある。
Figure 2014149211
第2行列演算部154は、記憶部300に記憶されている姿勢回転行列R〜Rと、オフセット算出部140が算出する基準推定地磁気ベクトルrE1と、に基づいて、以下の式(25)に示す行列Eを演算する。
具体的には、まず、以下の式(22)に示すように、基準推定地磁気ベクトルrE1を姿勢回転行列Rにより回転させることで、3次元のベクトルである推定地磁気ベクトルrEkを算出する。次に、以下の式(23)に示すように、推定地磁気ベクトルrE1〜rENの平均を演算することで、3次元のベクトルあるベクトルrEAVEを算出する。また、以下の式(24)に示すように、ベクトルrEAVE及び推定地磁気ベクトルrEkに基づいて、3次元のベクトルであるベクトルeを算出する。そして、以下の式(25)に示すように、ベクトルeに基づいて、3行3列の対称行列である行列Eを算出する。
ここで、行列Eは、以下の式(23)〜式(25)からも明らかなように、推定地磁気ベクトルrEkの分散を表す行列である。以下では、行列Eを「推定地磁気データ分散行列」と称する場合がある。
Figure 2014149211
ノイズ磁界Bxの影響が無視できる程度に小さい場合、オフセットcOFFの推定値cの表すベクトルと基準推定地磁気ベクトルrE1とを加算したベクトルにより示されるセンサ座標系Σ上の点は、磁気ベクトルmにより示されるセンサ座標系Σ上の点と一致すると看做すことができる。
また、推定地磁気ベクトルrEkは、基準観測地磁気ベクトルrの推定値である基準推定地磁気ベクトルrE1を姿勢回転行列Rにより回転させたベクトルであり、基準観測地磁気ベクトルrを姿勢回転行列Rにより回転させたベクトルである観測地磁気ベクトルrの推定値(近似値)である。よって、ノイズ磁界Bxの影響が無視できる程度に小さい場合、オフセットcOFFの推定値cの表すベクトルと推定地磁気ベクトルrEkとを加算したベクトルにより示されるセンサ座標系Σ上の点は、磁気ベクトルmにより示されるセンサ座標系Σ上の点と一致すると看做すことができる。
すなわち、ノイズ磁界Bxの影響が無視できる程度に小さく、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が球面であると看做すことができることができれば、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と、磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状とは、一致すると看做すことができる。
また、ノイズ磁界Bxの影響が大きい場合には、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状は、球面とは異なる歪んだ形状となる可能性が高い。一方、この場合であっても、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状は、球面となる。
すなわち、ノイズ磁界Bxの影響が無視できる程度に小さい場合には、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と、磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状とが、一致すると看做すことができるが、ノイズ磁界Bxの影響が大きい場合には、当該2つの分布形状は異なるものとなる。
よって、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と、磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状との相違の程度に基づいて、ノイズ磁界Bxの影響の大きさの程度を推定することができる。すなわち、当該2つの分布形状の相違の程度が所定の範囲内にあるか否かを判定すること、換言すれば、当該2つの分布形状が一致していると看做すことができるか否かを判定することにより、磁気ベクトルm〜mに基づいてオフセット算出部140により算出されるオフセットcOFFの推定値cがオフセットcOFFを正確に表すものであるか否かを判定することができる。
なお、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と、磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状との相違の程度が所定の範囲内にあるか否かの判定は、どのような方法により求めてもよい。
本実施形態では、一例として、当該2つの分布形状が一致していると看做すことができるか否かの判定を、行列E及び行列Sが一致していると看做すことができるか否かを判定することにより、実行する。
具体的には、類似度判定部156において、推定地磁気ベクトルrEkの分散を表す行列Eの成分と、磁気ベクトルm〜mの分散を表す行列Sの成分の、相違の程度が、所定の範囲内にあるか否かを判定(行列Eと、行列Sとが一致または類似しているか否かを判定)することで、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と、磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状の相違の程度が所定の範囲内にあるか否かを判定し、これにより、オフセット算出部140により算出されるオフセットcOFFの推定値cがオフセットcOFFを正確に表すものであるか否かを判定する。
以下、具体的な判定の方法について説明する。
行列Eの有する3つの固有値を、大きい順番に、最大固有値λE,MAX、中間固有値λE,MID、最小固有値λE,MINとし、これらに対応する正規化された3つの固有ベクトルを、それぞれ、固有ベクトルuE,MAX、固有ベクトルuE,MID、固有ベクトルuE,MINとする。
また、行列Sの有する3つの固有値を、大きい順番に、最大固有値λS,MAX、中間固有値λS,MID、最小固有値λS,MINとし、これらに対応する正規化された3つの固有ベクトルを、それぞれ、固有ベクトルuS,MAX、固有ベクトルuS,MID、固有ベクトルuS,MINとする。
行列E及び行列Sが一致すると看做すことができる場合には、最大固有値λE,MAX、中間固有値λE,MID、最小固有値λE,MINは、それぞれ、最大固有値λS,MAX、中間固有値λS,MID、最小固有値λS,MINと等しいと看做すことができ、また、固有ベクトルuE,MAX、固有ベクトルuE,MID、固有ベクトルuE,MINは、それぞれ、固有ベクトルuS,MAX、固有ベクトルuS,MID、固有ベクトルuS,MINと平行であると看做すことができる。
すなわち、行列E及び行列Sが、以下の式(26)に示す第1判定条件、以下の式(27)に示す第2判定条件、以下の式(28)に示す第3判定条件、以下の式(29)に示す第4判定条件、以下の式(30)に示す第5判定条件、及び、以下の式(31)に示す第6判定条件を満たす場合には、行列E及び行列Sが一致すると看做すことができる。
ここで、式(26)〜式(28)に現れる第1閾値α、第2閾値α、及び、第3閾値αは、「0」よりも大きく且つ「1」よりも小さい実数であり、式(29)〜式(31)に現れる第4閾値α、第5閾値α、及び、第6閾値αは、「1」以上の実数である。
なお、第1乃至第3判定条件は、2つの固有ベクトルの示す方向が平行または当該2つの固有ベクトルのなす角度が所定の角度以下であることを表す条件であれば、以下の式(26)〜式(28)に示す条件以外の条件であっても構わない。
また、第4乃至第6判定条件は、2つの固有値が、同一、若しくは、同一であると看做せること、または、当該2つの固有値の近似の程度を表す指標値が所定の閾値以上であることを表す条件であれば、以下の式(26)〜式(28)に示す条件以外の条件であっても構わない。例えば、2つの固有値の差分値の絶対値が、所定の閾値以下であることを条件としても良い。
Figure 2014149211
類似度判定部156は、まず、行列Eの有する3つの固有値λE,MAX、λE,MID、及び、λE,MINと3つの固有ベクトルuE,MAX、uE,MID、及び、uE,MIN、並びに、行列Sの有する3つの固有値λS,MAX、λS,MID、及び、λS,MINと3つの固有ベクトルuS,MAX、uS,MID、及び、uS,MINを算出する。そして、算出した固有値及び固有ベクトルが、式(26)〜式(31)に示す第1判定条件〜第6判定条件の全てを充足するか否かを判定する。
判定結果が肯定である場合には、行列E及び行列Sが一致すると看做すことができる。この場合、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と、磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状とが一致すると看做すことができ、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が球面と看做すことができるため、オフセット算出部140により算出されるオフセットcOFFの推定値cが、オフセットcOFFを正確に表すものであると看做すことができる。
一方、判定結果が否定である場合、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が、球面とは異なる歪んだ形状となるため、オフセット算出部140により算出されるオフセットcOFFの推定値cが、オフセットcOFFを正確に表さない可能性が高い。
このように、類似度判定部156は、行列E及び行列Sが第1判定条件〜第6判定条件を充足するか否かを判定することにより、記憶部300に記憶されている磁気ベクトルm〜mに基づいてオフセット算出部140が算出したオフセットcOFFの推定値cが、オフセットcOFFを正確に表すものであるか否かを判定することができる。
なお、本実施形態では、類似度判定部156は、行列E及び行列Sが、式(26)〜式(31)に示す第1判定条件〜第6判定条件の全てを充足するか否かを判定するが、本発明はこのような態様に限定されるものではなく、類似度判定部156は、行列E及び行列Sが、第1乃至第6条件のうち少なくとも一部の条件を満たすか否かを判定するものであってもよい。
行列E及び行列Sが、第1乃至第6条件のうち少なくとも一部の条件を満たす場合であっても、行列E及び行列Sが一致すると看做すことができるため、類似度判定部156は、オフセット算出部140により算出されるオフセットcOFFの推定値cがオフセットcOFFを正確に表すものであるか否かを判定することができる。
なお、以下では、行列E及び行列Sが一致すると看做すことができるか否かの判定、すなわち、推定地磁気ベクトルrE1〜rENの示すセンサ座標系Σ上の複数の点の分布形状と磁気ベクトルm〜mの示すセンサ座標系Σ上の複数の点の分布形状が一致すると看做すことができるか否かについての判定を、「第1の判定」と称する場合がある。
<4.精度判定処理について>
次に、精度判定処理について説明する。
上述のとおり、精度判定部130が実行する精度判定処理は、オフセット算出部140が記憶部300に記憶されている姿勢回転行列R〜Rに基づいてオフセットcOFFの推定値cを算出する演算を実行する場合に、当該演算の精度が高いものであるか否かについて判定する処理である。換言すれば、精度判定処理は、記憶部300に記憶されている姿勢回転行列R〜RがオフセットcOFFの推定値cの算出に適したデータであるか否かを判定する処理である。
上述のとおり、オフセット算出部140は、式(18)に示す連立一次方程式を解くことで最適解xOPTを求め、当該最適解xOPTに基づいて推定値cを算出する。
一般的に、連立一次方程式の解を求める演算において、当該連立一次方程式の係数行列が有する固有値のうち最小の固有値が小さな値となる場合には、大きな値となる場合と比較して、当該演算の精度は劣る。従って、連立一次方程式の係数行列の最小固有値に基づいて、当該演算の精度を評価することができる。
本実施形態の精度判定処理では、式(18)に示す連立一次方程式の係数行列である正定値対称行列Qが有する固有値のうち最小の固有値λQ,MINを、当該連立一次方程式の解を求める演算の精度の高さの程度を表す「精度指標」と定義する。そして、精度判定部130は、「精度指標」である固有値λQ,minに基づいて、式(18)に示す演算の精度が所定の精度以上の精度を有するか否か判定する。
以下、精度判定部130が行う精度判定処理について、具体的に説明する。
図5に示すように、精度判定処理は、指標生成部132、及び、条件判定部134を備える。
指標生成部132は、記憶部300に記憶されている姿勢回転行列R〜Rに基づいて、行列Qの有する固有値のうち最小の固有値λQ,MIN(つまり「精度指標」)を生成する。
条件判定部134は、指標生成部132が生成した固有値λQ,MINが、以下の式(32)に示す条件を満たすか否かを判定することで、式(18)に示す連立一次方程式の解を求める演算の精度の高さが、所定の精度以上の精度を有するか否かについて判定する。ここで、式(32)に現れる閾値βは、予め定められた正の実数である。
Figure 2014149211
条件判定部134の判定結果が肯定の場合、すなわち、固有値λQ,MINが式(32)に示す条件を満たす場合、式(32)に示す連立一次方程式の解を求める演算が所定の精度以上の精度を有していると看做すことができるため、式(18)により算出される推定値c(最適解xOPT)は、オフセットcOFFを正確に表す値と看做すことができる。よって、この場合、オフセット算出部140は、記憶部300に記憶されている姿勢回転行列R〜Rに基づいて、オフセットcOFFの推定値cを算出する。
一方、条件判定部134の判定結果が否定の場合、推定値cは、オフセットcOFFを正確に表さない可能性が高い。よって、この場合、オフセット算出部140は、オフセットcOFFの推定値cを算出する演算を実行しない。
このように、精度判定部130は、固有値λQ,MINが式(32)に示す条件を充足するか否かを判定することにより、オフセット算出部140が記憶部300に記憶されている姿勢回転行列R〜Rに基づいてオフセットcOFFの推定値cを算出することが、適切であるか否かを判定する。
<5.まとめ>
以上において説明したように、本実施形態に係るオフセット推定装置100は、記憶部300が記憶する姿勢回転行列R〜R及び磁気ベクトルm〜mに基づいてオフセットcOFFの推定値cを算出するオフセット算出部140を備える。
オフセットcOFFの推定値は、例えば、特開2012−198112に示すように、3次元磁気センサからの出力結果のみに基づいて算出することも可能である。
しかし、1種類の物理量を検出する1のセンサからの出力結果に基づいてオフセットcOFFの推定値を算出するよりも、異種の物理量を検出する複数のセンサからの出力結果を統合してオフセットcOFFの推定値を算出する方が、より正確にまたはより短時間で算出することが可能であり、更には、より悪条件下においてもオフセットcOFFの推定値を正確に算出することができる。
ここで、「悪条件」とは、携帯機器1の姿勢変化が小さい場合、例えば、姿勢A〜Aがいずれも姿勢Aとほぼ同一の姿勢であり、姿勢回転行列R〜Rの各々と単位行列I3×3とが同一の行列であると看做される場合や、または、姿勢回転行列R〜Rが表すN個の姿勢変化におけるN個の回転軸が同一の軸であると看做される場合等である。
携帯機器1の姿勢変化は、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布として表現することができる。そして、オフセットcOFFの推定値は、当該複数の点の分布形状に基づいて、統計的な手法により算出される。そのため、磁気ベクトルm〜mのみに基づいてオフセットcOFFの推定値を算出する場合、携帯機器1の姿勢変化が小さい悪条件下においては、センサ座標系Σにおいて磁気ベクトルm〜mが広範囲に分布しないので、その磁気ベクトルm〜mの分布が携帯機器1の姿勢変化に起因する場合であっても、磁気ベクトルm〜mが有する「ノイズ」に埋もれてしまう。そのため、当該携帯機器1の姿勢変化が、算出されるオフセットcOFFの推定値に対して正確に反映されない。つまり、この場合、オフセットcOFFの推定値を正確に求めることができない。
これに対して、本実施形態では、3次元磁気センサ50から出力される磁気データM〜Mの表す磁気ベクトルm〜mに加え、3次元角速度センサ60から出力される角速度データW〜Wの表す角速度ベクトルω〜ωを用いて生成される姿勢回転行列R〜Rに基づいて、オフセットcOFFの推定値cを算出する。角速度ベクトルω〜ωは、携帯機器1の姿勢変化を直接的に表すため、携帯機器1の姿勢変化が小さい場合であっても、当該姿勢変化を正確に表すことができる。そのため、携帯機器1の姿勢変化が小さい悪条件下においても、当該姿勢変化を「ノイズ」と看做すことを防止して、オフセットcOFFの推定値cの算出に活用することができる。よって、本実施形態に係るオフセット推定装置100は、磁気ベクトルm〜mのみに基づいてオフセットcOFFの推定値を算出する場合と比較して、携帯機器1の姿勢変化をより正確且つ鋭敏に反映したオフセットcOFFの推定値cを算出することができる。
このように、本実施形態に係るオフセット推定装置100は、3次元磁気センサからの出力結果のみに基づいてオフセットcOFFの推定値を算出する場合に比べて、
悪条件下であっても、より正確なオフセットcOFFの推定値cを算出することができる。
また、本実施形態に係るオフセット推定装置100は、記憶部300に記憶されている磁気ベクトルm〜mがオフセットcOFFの推定値cの算出に適したデータであるか否かを判定する処理である分布判定処理を実行する分布形状判定部150を備える。
従って、記憶部300に記憶されている磁気ベクトルm〜mが、ノイズの影響等により、オフセットcOFFの推定値cの算出に適さないデータである場合に、オフセット算出部140が算出したオフセットcOFFの推定値cが、オフセットcOFFを正確に表さない値であることを判断することができる。
なお、記憶部300に記憶されている磁気ベクトルm〜mがオフセットcOFFの推定値cの算出に適したデータであるか否かを判定、すなわち、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が球面であると看做すことができるか否かについての判定は、例えば、特開2012−198112に示すように、3次元磁気センサからの出力結果のみに基づいて行うことも可能である。
しかし、当該判定は、1種類の物理量を検出する1のセンサからの出力結果に基づいて行うよりも、異種の物理量を検出する複数のセンサからの出力結果を統合して行う方が、より正確且つ短時間に行うことができる。
本実施形態に係る分布形状判定部150は、3次元磁気センサ50から出力される磁気データM〜Mの表す磁気ベクトルm〜mに加えて、3次元角速度センサ60から出力される角速度データW〜Wの表す角速度ベクトルω〜ωを用いて定められる姿勢回転行列R〜Rに基づいて、分布判定処理を実行する。従って、本実施形態に係るオフセット推定装置100は、3次元磁気センサからの出力結果のみに基づいて分布判定処理を実行する場合に比べ、より短時間且つ正確に分布判定処理を実行することができる。
また、本実施形態に係るオフセット推定装置100は、記憶部300に記憶されている姿勢回転行列R〜Rに基づいてオフセットcOFFの推定値cを算出する演算を実行する場合に、当該演算の精度が高いものであるか否かについて判定する処理である精度判定処理を実行する精度判定部130を備える。
従って、記憶部300に記憶されている姿勢回転行列R〜Rに基づいて推定値cを算出する演算の精度が低いと想定される場合には、オフセット算出部140がオフセット算出処理を実行すること、つまり、推定値cを算出する処理を実行することを防止することができる。このため、オフセットcOFFを正確に表さない推定値cが算出されることを防止することが可能となる。
<B:第2実施形態>
上述した第1実施形態において、分布形状判定部150は、オフセット算出部140が算出する基準推定地磁気ベクトルrE1を用いて、分布判定処理を行った。
これに対して、第2実施形態では、オフセット算出部からの出力値を用いずに、記憶部300に記憶されている姿勢回転行列R〜RN及び磁気ベクトルm〜mのみに基づいて分布判定処理を行う点で、第1実施形態と相違する。
なお、以下に例示する各形態において作用や機能が第1実施形態と同等である要素については、以上の説明で参照した符号を流用して各々の詳細な説明を適宜に省略する(以下で説明する実施形態及び変形例についても同様)。
図7は、第2実施形態に係るオフセット推定装置100Aの機能を表した機能ブロック図である。
オフセット推定装置100Aは、分布形状判定部150の代わりに分布形状判定部120を備える点、オフセット算出部140の代わりにオフセット算出部140Aを備える点、及び、採用部160を備えない点を除き、第1実施形態に係るオフセット推定装置100と同様に構成されている。
オフセット算出部140は、分布形状判定部120が行う判定の結果が肯定であり、且つ、精度判定部130が行う判定の結果が肯定である場合に、オフセットcOFFの推定値cを算出する。なお、オフセット算出部140Aが行うオフセット算出処理は、第1実施形態に係るオフセット算出部140が行うオフセット算出処理と同様である。
分布形状判定部120は、記憶部300に記憶されている姿勢回転行列R〜RN及び磁気ベクトルm〜mを用いて、分布判定処理を実行する。
図7に示すように、分布形状判定部120は、第1ベクトル演算部122、第2ベクトル演算部124、及び、条件判定部126を備える。
第1ベクトル演算部122は、記憶部300に記憶されている磁気ベクトルm〜mに基づいて、式(20)に示す行列Sが有する固有値のうち最小の固有値λS,MINに対応する正規化された固有ベクトルuS,MINを演算する。
第2ベクトル演算部124は、記憶部300に記憶されている姿勢回転行列R〜Rに基づいて、以下の式(33)に示す行列Dが有する固有値のうち最大の固有値λD,MAXに対応する正規化された固有ベクトルuD,MAXを演算する。なお、第2ベクトル演算部124は、オフセット算出部140が算出した行列RAVEを用いて行列Dを算出することで固有ベクトルuD,MAXを演算しても構わない。
Figure 2014149211
条件判定部126は、第1ベクトル演算部122が演算した固有ベクトルuS,MIN、及び、第2ベクトル演算部124が演算した固有ベクトルuD,MAXが、平行であると看做すことができるか否かについて判定する。
具体的には、条件判定部126は、固有ベクトルuS,MIN及び固有ベクトルuD,MAXが、以下の式(34)に示す条件を満たすか否かを判定することで、両者が平行であると看做すことができるか否かを判定する。ここで、式(34)に現れる値γは、0<γ<1を満たす、予め定められた実数である。
条件判定部126の判定結果が肯定の場合、すなわち、固有ベクトルuS,MIN及び固有ベクトルuD,MAXが平行であると看做せる場合、記憶部300に記憶されている磁気ベクトルm〜mに基づいて算出される推定値cが、オフセットcOFFを正確に表すものと看做すことができる。一方、条件判定部126の判定結果が否定の場合、記憶部300に記憶されている磁気ベクトルm〜mに基づいて算出される推定値cは、オフセットcOFFを正確に表さない可能性が高い。
このように、分布形状判定部120は、固有ベクトルuS,MIN及び固有ベクトルuD,MAXが式(34)をに示す条件を充足するか否かを判定することにより、オフセット算出部140が記憶部300に記憶されている磁気ベクトルm〜mに基づいてオフセットcOFFの推定値cを算出することが、適切であるか否かを判定する。
Figure 2014149211
<C.変形例>
本発明は上述した実施形態に限定されるものではなく、例えば、以下の変形が可能である。また、以下に示す変形例のうちの2以上の変形例を、矛盾しない範囲で適宜組み合わせることもできる。
(1)変形例1
上述した第1実施形態において、分布形状判定部150は、第1の判定を行うことにより、分布判定処理を行うが、分布判定処理は、磁気ベクトルm〜mにより示されるセンサ座標系Σ上の複数の点の分布形状が球面であると看做すことができるか否かについての判定を行うことができるものであれば、どのような処理であってもよい。
例えば、特開2012−198112に示す方法を用いて分布判定処理を実行してもよい。
(2)変形例2
上述した実施形態及び変形例において、オフセット推定装置100は、姿勢演算部110、精度判定部130、オフセット算出部140、分布形状判定部150、及び、採用部160を備えるが、オフセット推定装置100は、少なくとも姿勢演算部110、及び、オフセット算出部140を備えるものであればよい。
(3)変形例3
上述した実施形態及び変形例において、オフセット推定プログラム200は、ROM30に格納されているが、携帯機器1で読み取り可能な記録媒体、または、携帯機器1と通信可能なサーバ装置が備える記憶装置等に記録されているものであってもよい。
1…携帯機器、10…CPU、20…RAM、30…ROM、50…3次元磁気センサ、60…3次元角速度センサ、100…オフセット推定装置、110…姿勢演算部、130…精度判定部、132…指標生成部、134…条件判定部、140…オフセット算出部、150…分布形状判定部、152…第1行列演算部、154…第2行列演算部、156…類似度判定部、200…オフセット推定プログラム、300…記憶部。

Claims (5)

  1. 3方向の角速度を周期的に検出し、検出結果を角速度データとして順次出力する3次元角速度センサと、
    地磁気を含む3方向の磁気成分を周期的に検出し、検出結果を3軸の直交座標系におけるベクトルデータである磁気データとして順次出力する3次元磁気センサと、
    を備える機器に設けられ、
    前記3次元磁気センサのオフセットの推定値を算出するオフセット推定装置であって、
    前記角速度データに基づいて、基準姿勢からの前記機器の姿勢変化量を周期的に算出する姿勢演算部と、
    前記機器が前記基準姿勢から前記姿勢変化量だけ姿勢変化したときに前記直交座標系において前記地磁気を表すための変数ベクトルを第1変数ベクトルとし、
    前記オフセットの推定値を表すための変数ベクトルであるオフセット変数ベクトルを前記磁気データから減算した変数ベクトルを第2変数ベクトルとして、
    前記姿勢演算部が生成した所定数の姿勢変化量に対応する所定数の前記第1変数ベクトルと、
    前記3次元磁気センサから出力された所定数の磁気データに対応する所定数の前記第2変数ベクトルと、
    の誤差を表す目的関数を最小化する前記オフセット変数ベクトルを、
    前記オフセットの推定値として算出するオフセット算出部と、
    を備える、
    ことを特徴とする、オフセット推定装置。
  2. 前記機器が前記基準姿勢のときに、前記直交座標系において前記地磁気を表すための変数ベクトルを基準変数ベクトルとし、
    前記目的関数を最小化する前記基準変数ベクトルを基準推定地磁気ベクトルとし、
    前記基準推定地磁気ベクトルを、前記姿勢変化量だけ姿勢変化させたベクトルを推定地磁気ベクトルとして、
    前記姿勢演算部が算出した所定数の姿勢変化量のそれぞれに対応する所定数の前記推定地磁気ベクトルが示す前記直交座標系における所定数の点の分布形状と、
    前記3次元磁気センサから出力された所定数の磁気データが示す前記直交座標系における所定数の点の分布形状との、
    相違の程度が、所定の範囲内であるか否かを判定する第1判定部と、
    前記第1判定部の判定結果が肯定の場合、
    前記オフセットの推定値を、前記オフセットとして採用する、
    オフセット採用部と、
    を備えることを特徴とする、請求項1に記載のオフセット推定装置。
  3. 前記機器が前記基準姿勢のときに、前記直交座標系において前記地磁気を表すための変数ベクトルを基準変数ベクトルとし、
    前記目的関数を最小化する前記基準変数ベクトルを基準推定地磁気ベクトルとし、
    前記基準推定地磁気ベクトルを、前記姿勢変化量だけ姿勢変化させたベクトルを推定地磁気ベクトルとして、
    前記姿勢演算部が算出した所定数の姿勢変化量のそれぞれに対応する所定数の前記推定地磁気ベクトルの分散を表す推定地磁気データ分散行列の有する成分と、
    前記3次元磁気センサから出力された所定数の磁気データの分散を表す磁気データ分散行列の有する成分との、
    相違の程度が、所定の範囲内であるか否かを判定する第1判定部と、
    前記第1判定部の判定結果が肯定の場合、
    前記オフセットの推定値を、前記オフセットとして採用する、
    オフセット採用部と、
    を備えることを特徴とする、請求項1に記載のオフセット推定装置。
  4. 前記オフセット算出部が行う前記オフセットの推定値を算出する演算の精度を表す精度指標を生成する指標生成部と、
    前記精度指標が、正の実数である所定の閾値以上であるか否かを判定する第2判定部と、
    を備え、
    前記目的関数は、
    前記機器の姿勢が前記基準姿勢であるときに前記直交座標系において前記地磁気を表すための変数である基準変数ベクトルの各要素と、
    前記オフセット変数ベクトルの各要素と、
    を要素に含む変数ベクトルを変数とする関数であり、
    前記精度指標は、
    前記目的関数を前記変数ベクトルの各要素を変数とする二次形式によって表す場合の係数行列の最小固有値であり、
    前記オフセット算出部は、
    前記第2判定部の判定結果が肯定である場合には、
    前記オフセットの推定値を算出し、
    前記第2判定部の判定結果が否定である場合には、
    前記オフセットの推定値を算出しない、
    ことを特徴とする、請求項1乃至3のうちいずれか1項に記載のオフセット推定装置。
  5. 3方向の角速度を周期的に検出し、検出結果を角速度データとして順次出力する3次元角速度センサと、
    地磁気を含む3方向の磁気成分を周期的に検出し、検出結果を3軸の直交座標系におけるベクトルデータである磁気データとして順次出力する3次元磁気センサと、
    を備える機器に設けられ、
    前記3次元磁気センサのオフセットの推定値を、コンピュータを用いて推定するオフセット推定装置のプログラムであって、
    前記コンピュータを、
    前記角速度データに基づいて、基準姿勢からの前記機器の姿勢変化量を周期的に算出する姿勢演算部と、
    前記機器が前記基準姿勢から前記姿勢変化量だけ姿勢変化したときに前記直交座標系において前記地磁気を表すための変数ベクトルを第1変数ベクトルとし、
    前記オフセットの推定値を表すための変数ベクトルであるオフセット変数ベクトルを前記磁気データから減算した変数ベクトルを第2変数ベクトルとして、
    前記姿勢演算部が生成した所定数の姿勢変化量に対応する所定数の前記第1変数ベクトルと、前記3次元磁気センサから出力された所定数の磁気データに対応する所定数の前記第2変数ベクトルと、の誤差を表す目的関数を最小化する前記オフセット変数ベクトルを、前記オフセットの推定値として算出するオフセット算出部と、
    として機能させる、
    ことを特徴とする、オフセット推定装置のプログラム。
JP2013017747A 2013-01-31 2013-01-31 オフセット推定装置及びプログラム Expired - Fee Related JP6191145B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013017747A JP6191145B2 (ja) 2013-01-31 2013-01-31 オフセット推定装置及びプログラム
US14/166,014 US20140214364A1 (en) 2013-01-31 2014-01-28 Method of estimating offset of magnetic sensor
CN201410043656.1A CN103969700B (zh) 2013-01-31 2014-01-29 估计磁传感器的偏移量的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013017747A JP6191145B2 (ja) 2013-01-31 2013-01-31 オフセット推定装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2014149211A true JP2014149211A (ja) 2014-08-21
JP6191145B2 JP6191145B2 (ja) 2017-09-06

Family

ID=51223853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013017747A Expired - Fee Related JP6191145B2 (ja) 2013-01-31 2013-01-31 オフセット推定装置及びプログラム

Country Status (3)

Country Link
US (1) US20140214364A1 (ja)
JP (1) JP6191145B2 (ja)
CN (1) CN103969700B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105388441B (zh) * 2015-11-18 2018-04-06 深圳怡化电脑股份有限公司 一种磁性传感器的检测方法及系统
JP6511406B2 (ja) * 2016-02-10 2019-05-15 クラリオン株式会社 キャリブレーションシステム、キャリブレーション装置
CN107421523B (zh) * 2017-06-19 2021-05-28 深圳市万普拉斯科技有限公司 方位角校准方法、装置、存储介质和计算机设备
JP6620796B2 (ja) * 2017-07-28 2019-12-18 Tdk株式会社 オフセット推定装置および方法、磁気センサの補正装置ならびに電流センサ
CN109029459B (zh) * 2018-07-24 2023-07-21 南京信息工程大学 一种运动目标轨迹追踪系统及基于该系统的计算方法
DE112020001559T5 (de) * 2019-03-28 2022-01-13 Sony Group Corporation Informationsverarbeitungseinrichtung, programm und informationsverarbeitungsverfahren
KR20220060105A (ko) * 2020-11-04 2022-05-11 주식회사 해치텍 비접촉식 자기 센싱 시스템 및 센싱 방법
CN112797985B (zh) * 2021-02-08 2024-01-23 上海第二工业大学 基于加权扩展卡尔曼滤波的室内定位方法及室内定位系统
CN115839726B (zh) * 2023-02-23 2023-04-28 湖南二零八先进科技有限公司 磁传感器和角速度传感器联合标定的方法、系统及介质
CN116644281B (zh) * 2023-07-27 2023-10-24 东营市艾硕机械设备有限公司 一种游艇船体偏移检测方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59218914A (ja) * 1983-05-27 1984-12-10 Honda Motor Co Ltd 方向センサのハイブリツド補正方法
JP2012198112A (ja) * 2011-03-22 2012-10-18 Yamaha Corp 地磁気測定装置、オフセット決定方法、及びオフセット決定プログラム
JP2013002908A (ja) * 2011-06-15 2013-01-07 Yamaha Corp 地磁気測定装置、オフセット決定方法、及びオフセット決定プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100535593C (zh) * 2002-07-01 2009-09-02 旭化成电子材料元件株式会社 方位角测量装置和方位角测量方法
JP4412381B2 (ja) * 2007-10-02 2010-02-10 トヨタ自動車株式会社 方位検出装置
US9031805B2 (en) * 2011-03-22 2015-05-12 Yamaha Corporation Geomagnetic field measurement device, offset determination method, and computer readable recording medium therefor
CN102607562B (zh) * 2012-04-12 2014-10-29 南京航空航天大学 基于载体飞行模态判别的微惯性参数自适应姿态确定方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59218914A (ja) * 1983-05-27 1984-12-10 Honda Motor Co Ltd 方向センサのハイブリツド補正方法
JP2012198112A (ja) * 2011-03-22 2012-10-18 Yamaha Corp 地磁気測定装置、オフセット決定方法、及びオフセット決定プログラム
JP2013002908A (ja) * 2011-06-15 2013-01-07 Yamaha Corp 地磁気測定装置、オフセット決定方法、及びオフセット決定プログラム

Also Published As

Publication number Publication date
CN103969700A (zh) 2014-08-06
JP6191145B2 (ja) 2017-09-06
CN103969700B (zh) 2017-01-18
US20140214364A1 (en) 2014-07-31

Similar Documents

Publication Publication Date Title
JP6191145B2 (ja) オフセット推定装置及びプログラム
US9031805B2 (en) Geomagnetic field measurement device, offset determination method, and computer readable recording medium therefor
JP6019504B2 (ja) 移動体の進行方向推定装置及び進行方向推定方法
JP5706576B2 (ja) オフセット推定装置、オフセット推定方法、オフセット推定プログラムおよび情報処理装置
JP2013064695A (ja) 状態推定装置、オフセット更新方法およびオフセット更新プログラム
KR101576424B1 (ko) 실내 측위를 위한 지자기 센서 자동 보정 방법
US11709056B2 (en) Method and device for magnetic field measurement by magnetometers
US11946986B2 (en) Magnetic detector, detection method, and non-transitory computer readable storage medium
JP2013096724A (ja) 状態推定装置
JP6019585B2 (ja) 端末装置
JP5899726B2 (ja) 地磁気測定装置、地磁気測定方法、及び地磁気測定プログラム
JP5772265B2 (ja) 地磁気測定装置、オフセット決定方法、及びオフセット決定プログラム
JP2013057551A (ja) 地磁気測定装置
JP2012189323A (ja) 磁気データ処理装置、磁気データ処理方法及び磁気データ処理プログラム。
JPWO2015105146A1 (ja) 進行方向推定装置及び進行方向推定方法
US20170059324A1 (en) Method for calculating the angle of inclination of magnetic field in a sensor coordination system
Salehi et al. A practical in-field magnetometer calibration method for IMUs
JP5375394B2 (ja) 磁気データ処理装置、磁気データ処理方法および磁気データ処理プログラム
JP5641236B2 (ja) 地磁気測定装置、オフセット決定方法、及びオフセット決定プログラム
JP2013122384A (ja) カルマンフィルタ、及び、状態推定装置
Li et al. An efficient method for tri-axis magnetometer calibration
KR101352245B1 (ko) Mems 지자기 센서의 방위각 보정 방법 및 장치
JP5475873B2 (ja) 地磁気検知装置
JP2013088162A (ja) 状態推定装置
KR20170092356A (ko) 3축 지자기 센서의 방위각 보정 시스템

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150410

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170711

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170724

R151 Written notification of patent or utility model registration

Ref document number: 6191145

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees