以下に添付図面を参照して、本開示技術にかかるセンサ較正装置の好適な実施の形態を詳細に説明する。
(較正装置の外観)
まず、本実施の形態にかかるセンサ較正装置について説明する。図1は、センサ較正装置の外観の一例を示す斜視図である。図1において、センサ較正装置100は、回転台装置110と、制御装置120と、を含む構成である。なお、ここでは、3次元座標系のX軸およびY軸の軸方向を水平方向とし、Z軸の軸方向を重力方向とする。
回転台装置110は、直方体形状の筐体111を有し、モータ112と、1軸の回転軸113と、ターンテーブル114と、倒立センサ115と、を備えている。また、回転台装置110は、人手により矢印A1方向に傾けることにより、回転台装置110を略90度転倒可能である。
筐体111は、非鉄部材(たとえば、樹脂製)を用いて形成されている。また、筐体111は、回転軸113の軸方向を重力方向または水平方向に保つための可変脚116を有する。可変脚116は、回転台装置110を安定して設置可能な接地面積を有し、回転台装置110の高さを調節可能な機構を有する。
また、筐体111には、分度器117、重錘118およびマーカ119が設けられている。オペレータは、分度器117と重錘118を用いて、重錘118が指す方向を肉眼で確認して、回転軸113の軸方向が重力方向または水平方向に保たれているかを確認できる。また、オペレータは、可変脚116を調節して回転台装置110の傾きを調整することができる。
倒立センサ115は、回転台装置110の姿勢(設置向き)を検出する機能を有する。具体的には、たとえば、倒立センサ115が、回転軸113の軸方向が重力方向または水平方向のいずれの方向かを判断して、その判断結果を制御装置120に出力する。
モータ112は、制御装置120と接続されており、回転軸113に支持されたターンテーブル114を回転させる機能を有する。モータ112は、たとえば、制御装置120の制御により、ターンテーブル114の角度位置を制御可能なステッピングモータやサーボモータなどである。
ターンテーブル114は、較正対象となる複合センサSを載置するための回転台である。ターンテーブル114は、モータ112により回転軸113が回転することで矢印A2方向に回転する。複合センサSは、たとえば、ジャイロセンサ、加速度センサ、地磁気センサなどを組み合わせたものである。複合センサSは、制御装置120からのデータの入出力を制御する通信インターフェースと、較正値を記憶する記憶領域と、を含む構成である。
また、ターンテーブル114は、複合センサSを固定するための取付具119を有する。取付具119は、回転により複合センサSがぶれないように複合センサSを固定する。オペレータが複合センサSを任意の状態で取付具119に固定することにより、複合センサSの取付面と回転軸113とがなす角度を任意に変えることができる。
なお、回転台装置110では、複合センサSに対するモータ112の磁気的影響を排除するために、モータ112と複合センサSとを所定距離X(たとえば、80cm)離間させて、地磁気の向きが狂わないようにしている。
以上説明したセンサ較正装置100によれば、回転台装置110を90度転倒させて、1軸の回転運動の向きを変えて使用することにより、複数の回転運動に必要な関節機構や動力伝達機構が不要となり、装置構造を単純化することができる。また、地球の地磁気と重力とを利用して較正を行なうため、特殊な測定環境(磁気暗室、人工重力装置など)を用意する必要がない。
また、図2、図3に示す工夫により、複合センサSに対するモータ112の磁気的影響を排除することにしてもよい。図2および図3は、回転台装置の外観の一例を示す斜視図である。図2に示すように、筐体111を磁気シールドボックスとすることにより、複合センサSに対するモータ112の磁気的影響を排除することができる。
図3に示すように、モータ112として磁気を発生させない超音波モータを採用することにより、複合センサSに対するモータ112の磁気的影響を排除することができる。これにより、モータ112と複合センサSとを離間させる必要がなくなり、回転軸113を短くして回転台装置110の筐体111を小さくできる。
(制御装置のハードウェア構成)
つぎに、図1に示した制御装置120のハードウェア構成について説明する。図4は、制御装置のハードウェア構成を示すブロック図である。図4において、制御装置120は、CPU(Central Processing Unit)401と、ROM(Read‐Only Memory)402と、RAM(Random Access Memory)403と、磁気ディスクドライブ404と、磁気ディスク405と、光ディスクドライブ406と、光ディスク407と、ディスプレイ408と、I/F(Interface)409と、キーボード410と、マウス411と、スキャナ412と、プリンタ413と、を備えている。また、各構成部はバス400によってそれぞれ接続されている。
ここで、CPU401は、制御装置120の全体の制御を司る。ROM402は、ブートプログラムなどのプログラムを記憶している。RAM403は、CPU401のワークエリアとして使用される。磁気ディスクドライブ404は、CPU401の制御にしたがって磁気ディスク405に対するデータのリード/ライトを制御する。磁気ディスク405は、磁気ディスクドライブ404の制御で書き込まれたデータを記憶する。
光ディスクドライブ406は、CPU401の制御にしたがって光ディスク407に対するデータのリード/ライトを制御する。光ディスク407は、光ディスクドライブ406の制御で書き込まれたデータを記憶したり、光ディスク407に記憶されたデータをコンピュータに読み取らせたりする。
ディスプレイ408は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ408は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
インターフェース(以下、「I/F」と略する。)409は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク414に接続され、このネットワーク414を介して他の装置に接続される。そして、I/F409は、ネットワーク414と内部のインターフェースを司り、外部装置(たとえば、複合センサS、倒立センサ115)からのデータの入出力を制御する。I/F409には、たとえばモデムやLANアダプタなどを採用することができる。
キーボード410は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス411は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ412は、画像を光学的に読み取り、制御装置120内に画像データを取り込む。なお、スキャナ412は、OCR(Optical Character Reader)機能を持たせてもよい。また、プリンタ413は、画像データや文書データを印刷する。プリンタ413には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
(制御装置の機能的構成)
つぎに、制御装置120の機能的構成について説明する。図5は、制御装置の機能的構成を示すブロック図である。図5において、制御装置120は、取得部501と、検出部502と、決定部503と、駆動制御部504と、補正部505と、保存部506と、判定部507と、受付部508と、表示部509と、を含む構成である。この制御部となる機能(取得部501〜表示部509)は、具体的には、たとえば、図4に示したROM402、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されたプログラムをCPU401に実行させることにより、または、I/F409により、その機能を実現する。
取得部501は、複合センサSの出力値を取得する機能を有する。ここで、複合センサSは、ジャイロセンサ、加速度センサ、磁気センサなどを組み合わせたセンサの集合体である。各センサは、たとえば、複数の感度軸(3次元なら3軸)を有する多軸センサである。以下、多軸センサに内蔵されている感度軸ごとのセンサを「X軸センサ」、「Y軸センサ」および「Z軸センサ」と表記する。
具体的には、たとえば、取得部501が、図4に示したI/F409を介して、複合センサSが備える多軸センサごとに、X軸センサ、Y軸センサおよびZ軸センサの出力値を取得する。なお、取得された取得結果は、たとえば、図4に示したRAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶される。
検出部502は、回転軸113の軸方向を検出する機能を有する。ここで、回転軸113は、地球の重力方向または水平方向のいずれか一方の軸方向をとる軸である。具体的には、たとえば、検出部502が、倒立センサ115の判断結果に基づいて、回転軸113の軸方向を検出する。
より具体的には、たとえば、検出部502が、回転軸113の軸方向が重力方向と判断された場合、回転軸113の軸方向を重力方向として検出する。また、検出部502が、回転軸113の軸方向が水平方向と判断された場合、回転軸113の軸方向を水平方向として検出する。なお、検出された検出結果は、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶される。
決定部503は、検出された回転軸113の軸方向に基づいて、複合センサSが備える多軸センサの複数の感度軸のうち較正対象となる感度軸を決定する機能を有する。以下、多軸センサの種別(ジャイロセンサ、磁気センサ、加速度センサ)ごとに、決定部503による決定処理の具体例について説明する。
(i)ジャイロセンサ
決定部503は、回転軸113の軸方向が重力方向の場合、ジャイロセンサのX軸、Y軸およびZ軸の感度軸のうちZ軸を較正対象となる感度軸に決定する。また、決定部503は、回転軸113の軸方向が水平方向の場合、ジャイロセンサのX軸、Y軸およびZ軸の感度軸のうちY軸を較正対象となる感度軸に決定する。ただし、ジャイロセンサのY軸を重力方向とする。なお、ジャイロセンサのX軸を重力方向とすると、ジャイロセンサのX軸、Y軸およびZ軸の感度軸のうちX軸が較正対象となる感度軸に決定される。
(ii)磁気センサ
決定部503は、回転軸113の軸方向が重力方向の場合、磁気センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびY軸を較正対象となる感度軸に決定する。また、決定部503は、回転軸113の軸方向が水平方向の場合、磁気センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびZ軸を較正対象となる感度軸に決定する。ただし、磁気センサのY軸を重力方向とする。なお、磁気センサのX軸を重力方向とすると、磁気センサのX軸、Y軸およびZ軸の感度軸のうちY軸およびZ軸が較正対象となる感度軸に決定される。
(iii)加速度センサ
決定部503は、回転軸113の軸方向が重力方向の場合、加速度センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびY軸を較正対象となる感度軸に決定する。また、決定部503は、回転軸113の軸方向が水平方向の場合、加速度センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびZ軸を較正対象となる感度軸に決定する。ただし、加速度センサのY軸を重力方向とする。なお、加速度センサのX軸を重力方向とすると、加速度センサのX軸、Y軸およびZ軸の感度軸のうちY軸およびZ軸が較正対象となる感度軸に決定される。
また、取得部501は、多軸センサの複数の感度軸のうち較正対象に決定された感度軸の出力値を多軸センサから取得する。具体的には、たとえば、取得部501が、I/F409を介して、ジャイロセンサのX軸センサ、Y軸センサおよびZ軸センサのうち、較正対象に決定されたZ軸センサの出力値を取得する。
保存部506は、較正対象に決定された感度軸の出力値を保存する機能を有する。具体的には、たとえば、保存部506が、較正対象に決定された感度軸の出力値を較正データファイル(図7参照)に保存する。なお、較正データファイルについての説明は、図7を用いて後述する。
駆動制御部504は、モータ112を制御して、ターンテーブル114の角度位置を所定の角度間隔で回転させて、ターンテーブル114を停止させる機能を有する。具体的には、たとえば、駆動制御部504が、モータ112を制御して、ターンテーブル114を予め設定された基準位置から90度間隔で回転させて、ターンテーブル114を停止させる。
また、取得部501は、ターンテーブル114の角度位置が変更された変更後における較正対象に決定された感度軸の出力値を取得する。ここで、基準位置を0度とし、所定の角度間隔を90度とする。この場合、取得部501が、ターンテーブル114の角度位置が0度、90度、180度、270度での較正対象に決定された感度軸の出力値を取得することになる。
補正部505は、取得された複数の角度位置での較正対象に決定された感度軸の出力値に基づいて、当該出力値を補正する機能を有する。具体的には、たとえば、ターンテーブル114の角度位置が0度、90度、180度、270度での感度軸の出力値に基づいて、当該感度軸の出力値を補正する。
より具体的には、たとえば、補正部505が、90度ずつの位相の違う4点の静止データの統計平均値から2直線を表わす連立一次方程式を解き、多軸センサの最大・最小出力点と振り幅の中心値を求めることで較正値を算出する。なお、補正部505による補正処理の具体的な説明は後述する。
判定部507は、較正対象に決定された感度軸の出力値が所望の値か否かを判定する機能を有する。具体的には、たとえば、図6に示す性能データ600を参照して、較正対象に決定された感度軸の出力値が所望の値か否かを判定する。ここで、ジャイロセンサの性能データ600について説明する。
図6は、ジャイロセンサの性能データの記憶内容の一例を示す説明図である。図6において、性能データ600は、静止許容範囲および較正用角速度のフィールドを有する。各フィールドに情報を設定することで、ジャイロセンサの性能データがレコードとして記憶されている。
ここで、静止許容範囲とは、静止状態でのジャイロセンサの出力値の許容範囲である。ジャイロセンサの出力値が「a〜b[V]」の範囲内であれば、ジャイロセンサは正常といえる。較正用角速度は、ジャイロセンサの較正用の角速度である。なお、性能データ600は、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されている。
図5の説明に戻り、受付部508は、オペレータの各種指示を受け付ける機能を有する。ここで、各種指示とは、たとえば、較正処理の開始指示や終了指示である。具体的には、たとえば、受付部508が、キーボード410やマウス411を用いたオペレータの操作入力により各種指示を受け付ける。なお、受け付けた受付結果は、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶される。
表示部509は、各種メッセージをディスプレイ408に表示する機能を有する。ここで、各種メッセージとは、たとえば、較正対象となる複合センサSの設置を促すメッセージである。なお、各種メッセージは、RAM403、磁気ディスク405、光ディスク407などの記憶装置に予め記憶されている。
(較正データファイルの記憶内容)
ここで、任意の複合センサSiの較正データファイルFiについて説明する。図7は、較正データファイルの記憶内容の一例を示す説明図である。図7において、較正データファイルFiは、センサ種別、X軸オフセット、X軸ゲイン、Y軸オフセット、Y軸ゲイン、Z軸オフセット、Z軸ゲイン、X軸異常フラグ、Y軸異常フラグおよびZ軸異常フラグのフィールドを有する。各フィールドに情報を設定することで、センサ種別ごとの較正値がレコードとして記憶されている。
ここで、センサ種別とは、複合センサSiが備える多軸センサの種別(加速度センサ、磁気センサ、ジャイロセンサ)である。X軸オフセットおよびX軸ゲインとは、多軸センサに内蔵されたX軸センサの較正値である。Y軸オフセットおよびY軸ゲインとは、多軸センサに内蔵されたY軸センサの較正値である。Z軸オフセットおよびZ軸ゲインとは、多軸センサに内蔵されたZ軸センサの較正値である。
また、各軸(X軸、Y軸およびZ軸)異常フラグは、各軸センサの異常を示すフラグである。ここでは、各軸異常フラグが「ON」の場合にセンサ異常を示す。各軸異常フラグは初期状態では「OFF」となっている。なお、較正データファイルFiは、RAM403、磁気ディスク405、光ディスク407などの記憶装置に予め記憶されている。
(補正処理の具体的内容)
つぎに、上記補正部505による補正処理の具体的内容について説明する。ここではまず、2軸較正の基本的な考え方について説明する。
図8は、内蔵センサの向きと感度方向を示す説明図である。図8において、3軸の磁気センサ(または、加速度センサ)に内蔵されているX軸センサ、Y軸センサおよびZ軸センサの向きと感度方向が示されている。この場合、Z軸はセンサの反応源(地球の重力源、または磁北)に対して、常に一定の値となるため、X軸およびY軸の2軸についてのみ考える。
図8に示すように、X軸とY軸からなる平面上にセンサの反応源を置く。そして、X軸とY軸からなる平面に対して垂直の軸で一回転させて、X軸センサの出力値とY軸センサの出力値を取得する。これらX軸センサの出力値とY軸センサの出力値をプロットしてグラフ化すると図9のようになる。
図9は、各軸センサの出力値と回転角の関係をグラフ化して表す説明図である。なお、回転角とは、ターンテーブル114の基準位置からの回転角である。また、図9に示す結果を、X軸とY軸のそれぞれにとって、データの値を2次元平面上にプロットすると、その根軌跡は図10のような円(リサージュ)となる。
図10は、根軌跡の一例を示す説明図(その1)である。図10において、出力がセンサの値で、地球重力をセンサ反応源とすれば、その半径(各軸データの絶対値の最大値)は「1G」とできる。したがって、X軸センサおよびY軸センサの出力が描く軌跡は半径「1」の円となる。
ここで、磁気センサおよび加速度センサのゲインは、この円の半径を「1」、ゼロ点オフセットを円の中心となるような値を用いれば、センサの較正ができたことになる。図10の例では、X軸センサのゲインは『(S2x−S4x)÷2』、オフセットは『S1x(またはS3x)』、Y軸センサのゲインは『(S1y−S3y)÷2』、オフセットは『S2y(またはS4y)』となる。
しかし実際には、S1〜S4の各点は、時間とともに熱雑音などの影響を受けて値が常にばらつき、一点に求まるわけではない。したがって、S1〜S4の各点の出力が得られる状態で、ターンテーブル114の動きを止めて、必要とする精度を得るのに十分な時間の静止データを取得し、その統計的平均からS1〜S4の各点をもとめる必要がある。
以下、補正処理の詳細なアルゴリズムについて説明する。まず、センサ(2軸分)の4点の静止データを求める。図11は、根軌跡の一例を示す説明図(その2)である。ここでは、図11に示すS1〜S4の各点の座標の静止データを取得して2次元座標を求める。
具体的には、たとえば、駆動制御部504が、モータ112を制御してターンテーブル114を90度ずつ回転させて、取得部501が静止データを取得する。そして、補正部505が、下記式(1)を用いて、静止データの平均値を求めることにより、所望の値を求めることができる。
ここで、各点の座標は下記式(2)のようにベクトル化して表わすことができる。
つぎに、補正部505が、下記式(3)および(4)を用いて、S1〜S4の4点から2直線(L1,L2)の式を求める。
L1=(S3X−S1X)×Y−(S3Y−S1Y)×X
=S3X×S1Y−S3Y×S1X ・・・(3)
L2=(S4X−S2X)×Y−(S4Y−S2Y)×X
=S4X×S2Y−S4Y×S2X ・・・(4)
このあと、補正部505が、下記式(5)を用いて、2直線(L1,L2)の交点を求める。
ここで、2直線(L1,L2)の交点S(センサの出力中心点)のX座標がX軸センサのオフセット、Y座標がY軸センサのオフセットとなる。そこで、上記式(5)を定義しなおして下記式(6)とする。
そして、新たな点(OffsetX,OffsetY)を原点として、S1〜S4までのセンサの出力を、点Oを中心とした座標系に直すと、下記式(7)のようになる。
しかし、複合センサの場合、外側の筐体の形と内蔵されるセンサ素子の向きが必ずしも一致している(外形から判別の可能な)わけではない。したがって、実際に回転させて出力を見るまでは、センサがどの向きで、最大もしくは最小の値を示すかはわからない。
そこで、X軸センサのゲインをGx、Y軸センサのゲインをGyとすると、下記式(8)および(9)を用いて、中心軸を原点とした(オフセットを除いた)、X軸センサおよびY軸センサの描く根軌跡は図12に示す楕円の式で表される。図12は、根軌跡の一例を示す説明図(その3)である。
SOn(x)=Gx×sinθ ・・・(8)
SOn(y)=Gy×cosθ ・・・(9)
また、2直線(L1,L2)の傾きをa,bとすると、下記式(10)および(11)のように表わすことができる。
θa=π/2−tan^−1(a)
a=(S3Y−S1Y)÷(S3X−S1X) ・・・(10)
θb=tan^−1(b)
b=(S4Y−S2Y)÷(S4X−S2X) ・・・(11)
以上のことから、センサのゲイン(Gx、Gy)は下記式(12)および(13)を用いて表わすことができる。
Gx=SOn(x)÷sin(θa) ・・・(12)
Gy=SOn(y)÷cos(θb) ・・・(13)
ここで、X軸センサの最大値を「1」としたい場合は、X軸センサの最大値を計算し、その逆数をかければよい。同様に、Y軸センサの最大値を「1」としたい場合は、Y軸センサの最大値の逆数をかければよい。
図13は、補正の過程を示す説明図である。図13において、補正1は、センサの出力値からオフセット分を引き、ゲインの逆数をかけたものである。この状態ではゲインの不均衡による楕円変形は消えていない。具体的には、補正1は、下記式(14)を用いて表わすことができる。
(H1x,H1y)
=((1÷Gx)×Sx−OffsetX,(1÷Gy)×Sy−OffsetY)
・・・(14)
また、補正2は、補正1に対してゲイン不均衡を解消するための補正を行なったものである。不均衡を解消するには、H1xにSO2xの逆数をかければよい。同様に、H1yにも点S1のS1yの逆数をかける。この段階ではまだ、出力が正規化されていないため最大値が「1」とはならない。具体的には、補正2は、下記式(15)を用いて表わすことができる。
(H2x,H2y)=((1÷SO2x)×H1x,(1÷SO1y)×H1x)
・・・(15)
また、補正3は、最大値が「1」となるように正規化を行う。このとき、計測の開始点をX=0,Y=1としたい場合(その方向を基準方向としたい場合)、補正2の円を反時計方向に座標回転させればよい。具体的には、補正3は、下記式(16)を用いて表わすことができる。
以上により、オフセットとゲインを正規化した較正値が計算できたことになる。
図14は、較正結果の一例を示す説明図である。図14において、X軸センサ、Y軸センサの出力を模擬したデータを作成することで、較正の結果が正しく得られることが示されている。
「リサージュXY」は、ターンテーブル114に乗せたX軸およびY軸センサの出力をX−Y平面で回転させた場合に得られた10度ごとのデータ(0〜350度)を、計算機上でシミュレーションし、2次元平面上にプロットしたものである。ただし、較正値の算出は、4点の静止データのみを用いて行うことができる。
「0−180(Y軸基線)」は、0度、180度の2点の静止データから求めたY軸の傾きである。「90−270(X軸基線)」は、90度、270度の2点の静止データから求めたX軸の傾きである。これら2直線の交点座標(0.5,1)が2センサの出力中心(OffsetX、OffsetY)である。
この中心点から、X軸、Y軸にそれぞれ平行な楕円の半径(短径、長径)がそれぞれ(GainX、GainY)である。補正円1〜3は、補正の経過を示したものであり、補正円3が最終的な較正値を算出してプロットしたものである。
以下、補正処理にかかる一連の手順(1)〜(5)について説明する。
(1)センサの出力を模擬する
まず、計算元となるX軸センサとY軸センサの出力を計算機上でシミュレーションする。X軸およびY軸センサの出力は、ターンテーブル114の角度(θ)に合わせてそれぞれ「X=sin(θ)」、「Y=cos(θ)」となる。実際には、センサの正面方向とターンテーブル114の正面方向が一致しているとは限らないため、この角度のずれをα=30度とする(2軸センサX−Yの位相差は90度でずれはないものとする)。
また、各センサの感度が「1」とは限らないため、X軸センサの感度(Gain)が想定の0.5倍、Y軸の感度が想定の1.5倍とする。また、X軸の感度の中心のずれ(Offset)が+1、Y軸が+0.5とする。これらのことから、X、Yは下記式(17)および(18)を用いて表わすことができる。
X=Gain_x×Sin(θ+α)+Offset_x
=0.5×Sin(θ+30)+(−1) ・・・(17)
Y=Gain_y×Cos(θ+α)+Offset_y
=1.5×Cos(θ+30)+(−0.5) ・・・(18)
このため、較正値の算出に用いる静止データ(θ=0,90,180,270)の4点は図15のようになる。図15は、根軌跡の一例を示す説明図(その4)である。ただし、S1(θ=0)=(1.250000008,1.799038093)、S2(θ=90)=(1.433012698,−0.250000023)、S3(θ=180)=(0.749999992,−0.799038093)、S4(θ=270)=(0.566987302,1.250000023)である。
(2)オフセットを求める
つぎに、オフセットを求める。ここで、オフセットは、図15のS1およびS3を結ぶ直線L1と、S2およびS4を結ぶ直線L2の交点である。具体的には、補正部505が、上記式(6)に出力データS1〜S4を代入することで、オフセットを求めることができる。ここでは、「OffsetX=1」、「OffsetY=0.5」となる。
(3)ゲインを求める
正確なゲインを求めるには、3段階の処理(補正1〜補正3)が必要となる。まず、図15の交点S0からS1までの距離を仮のY軸ゲイン(G1y)、S0からS2までの距離を仮のX軸ゲイン(G1x)とする。
ここで、G1xは「S2−S4間の2点間の距離の1/2」である。また、G1yは「S1−S3間の2点間の距離の1/2」である。このため、2次元座標上の2点間の距離を求める数式に出力データS1〜S4を代入することで、仮のゲインGx1、Gy1を求めることができる。
ここでは、「G1x=1.154700515」、「G1y=0.755928953」となる。そして、オフセットと仮ゲイン1で(1)で求めた模擬データを変換するデータを変換すると補正円1が描ける。具体的には、補正円上の点は、下記式(19)を用いて表わすことができる。
S(x,y)=(G1x×S(x)+Offset(x),G1y×S(y)
+Offset(y)) ・・・(19)
上記式(19)によれば、出力データS1〜S4は、出力データS11〜S14に変換される。ただし、S11(θ=0)=(0.288675138,0.981980505)、S12(θ=90)=(0.499999985,−0.566946732)、S13(θ=180)=(−0.288675138,−0.981980505)、S14(θ=270)=(−0.499999985,0.566946732)である。
(4)ゲインを求める(その2)
つぎに、図14に示す補正円によれば、元のゲインのX軸とY軸のミスマッチが残っている。これは、仮ゲインをL1,L2の軸から取ったためで、さらに4点の静止データの補正円1への写像データ(3)で求めた4点(S1〜S4)を用いて正規化を行うと、半径を1とする円になりゲインを求められたことになる。
正規化は、まず楕円状を補正するために、補正円1(S11(x,y))が取りうる最大値(S12(x),S11(y))の逆数を、それぞれX,Yの算出に用いた仮ゲイン1に乗ずると仮ゲイン2(G2x,G2y)が得られる。これを用いて描ける円を補正円2(S21(x,y)とする。
ここで、G2xは、補正円1の座標S12(x)の逆数をかけた値となり、下記式(20)を用いて表わすことができる。同様に、G2yは、補正円1の座標S11(y)の逆数をかけた値となり、下記式(21)を用いて表わすことができる。
G2x=S12(x)-1 ・・・(20)
G2y=S11(y)-1 ・・・(21)
上記式(20)および(21)によれば、出力データS11〜S14は、出力データS21〜S24に変換される。ただし、S21=(0.577350292,1)、S22=(1,−0.577350292)、S23=(−0.577350292,−1)、S24=(−1,0.577350292)である。
磁気センサの場合には、各点の座標位置から角度を求めるので、大きさについては考慮する必要がない。しかし、加速度センサの場合は、静止状態で下向きに1Gという値が必要になる。このため、大きさについても補正する必要があり、補正円2の半径(原点から各点への距離)の逆数をさらに乗ずる。これを仮ゲイン3(G3:円なのでX,Y共通の値)とする。G3は、補正円2の原点から各点への距離の逆数のため、下記式(22)を用いて表わすことができる。
ここでは、たとえば「G31=0.866」となる。そして、補正円3上の点は、下記式(23)を用いて表わすことができる。
S31(x,y)=G3×(G2(x,y)×(G1(x,y)×S(x,y)
+Offset(x,y)))
=G3×((S11(x)-1,S11(y)-1)×(G1(x,y)
×S(x,y)+Offset(x,y)))・・・(23)
上記式(23)によれば、出力データS21〜S24は、出力データS31〜S34に変換される。ただし、S31=(0.500,0.866)、S32=(0.866,−0.500)、S33=(−0.500,−0.866)、S34=(−0.866,0.500)である。
(5)基準角度を定める
以上により、センサの較正は完了したことになるが、さらに一歩進めて、基準角度を定める場合について説明する。補正円3は、ターンテーブル114の基準方向と、センサの基準方向があっていない(図14の各補正円の切れ込みの場所がY軸に隣接していない)。
この場合、センサ素子そのものの基準方向を基本に算出していることになるが、センサ複合体の筐体とセンサ素子そのものの基準方向があっていないことも製造上、十分に考えられる。この状態で、較正を行ったセンサ複合体は、筐体の基準面に対して正しい角度方向を示さない可能性がある。
そこで、『構成されたセンサ複合体データの基準方向=センサ複合体の筐体の基準方向=ターンテーブル114の基準方向』となるような補正を行う。図14に示すように、センサ素子の基準方向は時計周りに30度ずれている。この値は、原点と補正円2のS21(x,y)を結ぶ直線の傾きに等しく、S21(x,y)の逆正接で求められる。したがって、基準方向のずれθは、下記式(24)を用いて表わすことができる。
θ=Atan-1(S21(x)÷S21(y)) ・・・(24)
すなわち、補正円3が反時計周りにθ回転(−θ回転)させた結果となるようにすればよい。したがって、基準方向の補正を行うためには、下記式(25)を用いて補正円2を変形する。
上記式(25)によれば、出力データS21〜S24は、出力データS41〜S44に変換される。ただし、S41=(0.000,1.000)、S42=(1.000,0.000)、S43=(0.000,−1.000)、S44=(−1.000,0.000)である。このように、静止4点(S41〜S44)が、ターンテーブル114の基準軸と合致したことが値からも読み取れる(図16参照)。図16は、根軌跡の一例を示す説明図(その5)である。
(複合センサSの較正処理手順)
つぎに、実施の形態にかかる較正処理手順について説明する。ここでは、任意の複合センサSiの較正処理手順について説明する(i=1,2,…,n)。図17〜図20は、較正処理手順の一例を示すフローチャートである。図17のフローチャートにおいて、まず、受付部508により、較正処理の開始指示を受け付けたか否かを判断する(ステップS1701)。
ここで、受付部508により、開始指示を受け付けるのを待つ(ステップS1701:No)。そして、開始指示を受け付けた場合(ステップS1701:Yes)、表示部509により、較正対象となる複合センサSiの設置を促すメッセージをディスプレイ408に表示する(ステップS1702)。
このあと、オペレータによって複合センサSiがターンテーブル114に設置されると、制御装置120により、ジャイロセンサ静止データ取得処理を実行する(ステップS1703)。そして、制御装置120により、較正対象決定処理を実行する(ステップS1704)。
つぎに、制御装置120により、ジャイロセンサ第1較正処理を実行して(ステップS1705)、磁気センサ第1較正処理を実行する(ステップS1706)。そして、表示部509により、回転台装置110の向きを変更するように促すメッセージをディスプレイ408に表示する(ステップS1707)。
このあと、オペレータによって回転台装置110の向きが変更されると、検出部502により、回転軸113の軸方向を検出する(ステップS1708)。そして、決定部503により、検出された検出結果に基づいて、回転軸113の軸方向は水平方向(X−Y平面に対して水平)か否かを判断する(ステップS1709)。
ここで、回転軸113の軸方向が重力方向の場合(ステップS1709:No)、ステップS1707に戻る。一方、回転軸113の軸方向が水平方向の場合(ステップS1709:Yes)、制御装置120により、加速度センサ第1較正処理を実行して(ステップS1710)、図18に示すステップS1801に移行する。
図18のフローチャートにおいて、まず、制御装置120により、ジャイロセンサ第1確認処理を実行して(ステップS1801)、加速度センサ第1確認処理を実行する(ステップS1802)。
つぎに、表示部509により、回転台装置110の向きを変更するように促すメッセージをディスプレイ408に表示する(ステップS1803)。このあと、オペレータによって回転台装置110の向きが変更されると、検出部502により、回転軸113の軸方向を検出する(ステップS1804)。
そして、決定部503により、検出された検出結果に基づいて、回転軸113の軸方向は重力方向(X−Y平面に対して垂直)か否かを判断する(ステップS1805)。ここで、回転軸113の軸方向が水平方向の場合(ステップS1805:No)、ステップS1803に戻る。
一方、回転軸113の軸方向が重力方向の場合(ステップS1805:Yes)、制御装置120により、磁気センサ第1確認処理を実行する(ステップS1806)。つぎに、表示部509により、較正結果一時記憶領域に記憶されている較正結果をディスプレイ408に表示する(ステップS1807)。ここでは、Z軸ジャイロセンサ、X軸、Y軸磁気センサおよびX軸、Y軸加速度センサの較正の状態が結果として表示される。
このあと、表示部509により、X−Y平面較正処理を続行するか否かの判断を促すメッセージをディスプレイ408に表示する(ステップS1808)。そして、受付部508により、較正処理の終了指示を受け付けたか否かを判断する(ステップS1809)。
ここで、終了指示を受け付けなかった場合(ステップS1809:No)、図17に示したステップS1704に戻る。一方、終了指示を受け付けた場合(ステップS1809:Yes)、図19に示すステップS1901に移行する。
図19のフローチャートにおいて、まず、制御装置120により、ジャイロセンサ第2較正処理を実行して(ステップS1901)、磁気センサ第2較正処理を実行する(ステップS1902)。つぎに、表示部509により、回転台装置110の向きを変更するように促すメッセージをディスプレイ408に表示する(ステップS1903)。
このあと、オペレータによって回転台装置110の向きが変更されると、検出部502により、回転軸113の軸方向を検出する(ステップS1904)。そして、決定部503により、検出された検出結果に基づいて、回転軸113の軸方向は水平方向(X−Y平面に対して水平)か否かを判断する(ステップS1905)。ここで、回転軸113の軸方向が重力方向の場合(ステップS1905:No)、ステップS1903に戻る。
一方、回転軸113の軸方向が水平方向の場合(ステップS1905:Yes)、制御装置120により、加速度センサ第2較正処理を実行する(ステップS1906)。そして、制御装置120により、ジャイロセンサ第2確認処理を実行して(ステップS1907)、加速度センサ第2確認処理を実行する(ステップS1908)。
つぎに、表示部509により、回転台装置110の向きを変更するように促すメッセージをディスプレイ408に表示する(ステップS1909)。このあと、オペレータによって回転台装置110の向きが変更されると、検出部502により、回転軸113の軸方向を検出する(ステップS1910)。
そして、決定部503により、検出された検出結果に基づいて、回転軸113の軸方向は水平方向(X−Z平面に対して垂直)か否かを判断する(ステップS1911)。ここで、回転軸113の軸方向が重力方向の場合(ステップS1911:No)、ステップS1909に戻る。
一方、回転軸113の軸方向が水平方向の場合(ステップS1911:Yes)、制御装置120により、磁気センサ第2確認処理を実行して(ステップS1912)、図20に示すステップS2001に移行する。
図20のフローチャートにおいて、まず、表示部509により、較正結果一時記憶領域に記憶されている較正結果をディスプレイ408に表示する(ステップS2001)。ここでは、Y軸ジャイロセンサ、X軸、Z軸磁気センサおよびX軸、Z軸加速度センサの較正の状態が結果として表示される。
このあと、表示部509により、X−Z平面較正処理を続行するか否かの判断を促すメッセージをディスプレイ408に表示する(ステップS2002)。そして、受付部508により、較正処理の終了指示を受け付けたか否かを判断する(ステップS2003)。
ここで、終了指示を受け付けなかった場合(ステップS2003:No)、図17に示したステップS1704に戻る。一方、終了指示を受け付けた場合(ステップS2003:Yes)、表示部509により、ジャイロセンサの較正処理を続行するか否かの判断を促すメッセージをディスプレイ408に表示する(ステップS2004)。
そして、受付部508により、較正処理の終了指示を受け付けたか否かを判断する(ステップS2005)。ここで、終了指示を受け付けなかった場合(ステップS2005:No)、制御装置120により、ジャイロセンサ第3較正処理を実行して(ステップS2006)、ジャイロセンサ第3確認処理を実行する(ステップS2007)。
一方、ステップS2005において、終了指示を受け付けた場合(ステップS2005:Yes)、保存部506により、較正データファイルを較正データ管理ファイル(図37参照)に保存して(ステップS2008)、本フローチャートによる一連の処理を終了する。
(ジャイロセンサ静止データ取得処理手順)
つぎに、図17に示したステップS1703のジャイロセンサ静止データ取得処理の具体的な処理手順について説明する。図21は、ジャイロセンサ静止データ取得処理の具体的処理手順の一例を示すフローチャートである。
図21のフローチャートにおいて、まず、駆動制御部504により、モータ112を制御して、ターンテーブル114を停止させる(ステップS2101)。そして、取得部501により、ジャイロセンサから各感度軸の出力値を取得する(ステップS2102)。ここでは、取得部501が、各感度軸の出力値を所定間隔で複数回取得する。
つぎに、制御装置120により、ジャイロセンサの性能データ600(図6参照)から静止許容範囲を読み出し(ステップS2103)、ジャイロセンサの各感度軸の出力値が静止許容範囲内か否かを判断する(ステップS2104)。
ここで、静止許容範囲内の場合(ステップS2104:Yes)、保存部506により、各感度軸の出力値の平均値を、ジャイロセンサの各感度軸のオフセットとして較正データファイルFiに保存して(ステップS2105)、図17に示したステップS1704に移行する。具体的には、保存部506が、各感度軸の出力値の平均値「JiOX、JiOY、JiOZ」を、各軸オフセットのフィールドにそれぞれ設定する。
一方、ステップS2104において、静止許容範囲外の場合(ステップS2104:No)、制御装置120により、較正データファイルFiを参照して、静止許容範囲外となった感度軸の異常フラグをONに設定し(ステップS2106)、図20に示すステップS2004に移行する。
(較正対象決定処理手順)
つぎに、図17に示したステップS1704の較正対象決定処理の具体的な処理手順について説明する。図22は、較正対象決定処理の具体的処理手順の一例を示すフローチャートである。図22のフローチャートにおいて、まず、表示部509により、複合センサSiの記憶領域から現在の較正値を読み出して、ディスプレイ408に表示する(ステップS2201)。
そして、表示部509により、較正面とターンテーブル114の回転面とが同一となるように複合センサSiを設置するように促すメッセージをディスプレイ408に表示する(ステップS2202)。
このあと、オペレータによって複合センサSが設置されると、検出部502により、回転軸113の軸方向を検出する(ステップS2203)。そして、決定部503により、検出された検出結果に基づいて、回転軸113の軸方向は重力方向(X−Y平面に対して垂直)か否かを判断する(ステップS2204)。
ここで、回転軸113の軸方向が重力方向の場合(ステップS2204:Yes)、決定部503により、ジャイロセンサのX軸、Y軸およびZ軸の感度軸のうちZ軸を較正対象となる感度軸に決定する(ステップS2205)。また、決定部503により、磁気センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびY軸を較正対象となる感度軸に決定する(ステップS2206)。
さらに、決定部503により、加速度センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびY軸を較正対象となる感度軸に決定して(ステップS2207)、図17に示したステップS1705に移行する。
一方、ステップS2204において、回転軸113の軸方向が水平方向の場合(ステップS2204:No)、決定部503により、ジャイロセンサのX軸、Y軸およびZ軸の感度軸のうちY軸を較正対象となる感度軸に決定する(ステップS2208)。また、決定部503により、磁気センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびZ軸を較正対象となる感度軸に決定する(ステップS2209)。
さらに、決定部503により、加速度センサのX軸、Y軸およびZ軸の感度軸のうちX軸およびZ軸を較正対象となる感度軸に決定して(ステップS2210)、図19に示したステップS1901に移行する。
(ジャイロセンサ第1較正処理手順)
つぎに、図17に示したステップS1705のジャイロセンサ第1較正処理の具体的な処理手順について説明する。図23は、ジャイロセンサ第1較正処理の具体的処理手順の一例を示すフローチャートである。
図23のフローチャートにおいて、まず、制御装置120により、ジャイロセンサの性能データ600から較正用の角速度を読み出す(ステップS2301)。このあと、駆動制御部504により、モータ112を制御して、較正用の角速度でターンテーブル114を回転させる(ステップS2302)。そして、取得部501により、Z軸ジャイロセンサの出力値を取得する(ステップS2303)。
つぎに、保存部506により、取得されたZ軸ジャイロセンサの出力値の平均値を、ジャイロセンサのZ軸ゲインとして較正データファイルFiに保存して(ステップS2304)、図17に示したステップS1706に移行する。具体的には、保存部506が、Z軸ジャイロセンサの平均値「JiGZ」をZ軸ゲインのフィールドに設定する。
(磁気センサ第1較正処理手順)
つぎに、図17に示したステップS1706の磁気センサ第1較正処理の具体的な処理手順について説明する。図24は、磁気センサ第1較正処理の具体的処理手順の一例を示すフローチャートである。
図24のフローチャートにおいて、まず、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS2401)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2402)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2403)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2404)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2405)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2406)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2407)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2408)。これにより、4点のX軸磁気センサおよびY軸磁気センサの出力値(静止データ)を取得することができる。
このあと、補正部505により、取得されたX軸磁気センサおよびY軸磁気センサの出力値に基づいて、磁気センサのX軸、Y軸オフセットおよびX軸、Y軸ゲインを算出する(ステップS2409)。そして、保存部506により、算出されたX軸、Y軸オフセット「MiOX、MiOY」およびX軸、Y軸ゲイン「MiGX、MiGY」を較正データファイルFiに保存して(ステップS2410)、図17に示したステップS1707に移行する。
(加速度センサ第1較正処理手順)
つぎに、図17に示したステップS1710の加速度センサ第1較正処理の具体的な処理手順について説明する。図25は、加速度センサ第1較正処理の具体的処理手順の一例を示すフローチャートである。
図25のフローチャートにおいて、まず、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS2501)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2502)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2503)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2504)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2505)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2506)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2507)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2508)。これにより、4点のX軸加速度センサおよびY軸加速度センサの出力値を取得することができる。
このあと、補正部505により、取得されたX軸加速度センサおよびY軸加速度センサの出力値に基づいて、加速度センサのX軸、Y軸オフセットおよびX軸、Y軸ゲインを算出する(ステップS2509)。そして、保存部506により、算出されたX軸、Y軸オフセット「AiOX、AiOY」およびX軸、Y軸ゲイン「AiGX、AiGY」を較正データファイルFiに保存して(ステップS2510)、図18に示したステップS1801に移行する。
(ジャイロセンサ第1確認処理手順)
つぎに、図18に示したステップS1801のジャイロセンサ第1確認処理の具体的な処理手順について説明する。図26は、ジャイロセンサ第1確認処理の具体的処理手順の一例を示すフローチャートである。
図26のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、ジャイロセンサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS2601)。そして、駆動制御部504により、モータ112を制御して、較正用の角速度でターンテーブル114を回転させる(ステップS2602)。そして、取得部501により、Z軸ジャイロセンサの出力値を取得する(ステップS2603)。
つぎに、判定部507により、取得されたZ軸ジャイロセンサの出力値の平均値がターンテーブル114の角速度と同じ数値を示しているか否かを判定して(ステップS2604)、図18に示したステップS1802に移行する。なお、判定結果は、較正結果一時記憶領域に記憶される。
(加速度センサ第1確認処理手順)
つぎに、図18に示したステップS1802の加速度センサ第1確認処理の具体的な処理手順について説明する。図27は、加速度センサ第1確認処理の具体的処理手順の一例を示すフローチャートである。
図27のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、加速度センサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS2701)。そして、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS2702)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2703)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2704)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2705)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2706)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2707)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2708)。そして、取得部501により、X軸加速度センサおよびY軸加速度センサの出力値を取得する(ステップS2709)。
このあと、算出部により、取得されたX軸加速度センサおよびY軸加速度センサの出力値に基づいて、加速度センサのX軸、Y軸オフセットおよびX軸、Y軸ゲインを算出する(ステップS2710)。そして、判定部507により、算出されたX軸、Y軸オフセットおよびX軸、Y軸ゲインが所望の値(オフセット:0、ゲイン:1)か否かを判定して(ステップS2711)、図18に示したステップS1803に移行する。なお、判定結果は、較正結果一時記憶領域に記憶される。
(磁気センサ第1確認処理手順)
つぎに、図18に示したステップS1806の磁気センサ第1確認処理の具体的な処理手順について説明する。図28は、磁気センサ第1確認処理の具体的処理手順の一例を示すフローチャートである。
図28のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、磁気センサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS2801)。そして、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS2802)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2803)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2804)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2805)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2806)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2807)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS2808)。そして、取得部501により、X軸磁気センサおよびY軸磁気センサの出力値を取得する(ステップS2809)。これにより、4点のX軸磁気センサおよびY軸磁気センサの出力値(静止データ)を取得することができる。
このあと、補正部505により、取得されたX軸磁気センサおよびY軸磁気センサの出力値に基づいて、磁気センサのX軸、Y軸オフセットおよびX軸、Y軸ゲインを算出する(ステップS2810)。そして、判定部507により、算出されたX軸、Y軸オフセットおよびX軸、Y軸ゲインが所望の値(オフセット:0、ゲイン:1)か否かを判定して(ステップS2811)、図18に示したステップS1807に移行する。なお、判定結果は、較正結果一時記憶領域に記憶される。
(ジャイロセンサ第2較正処理手順)
つぎに、図19に示したステップS1901のジャイロセンサ第2較正処理の具体的な処理手順について説明する。図29は、ジャイロセンサ第2較正処理の具体的処理手順の一例を示すフローチャートである。
図29のフローチャートにおいて、まず、制御装置120により、ジャイロセンサの性能データ600から較正用の角速度を読み出す(ステップS2901)。このあと、駆動制御部504により、モータ112を制御して、較正用の角速度でターンテーブル114を回転させる(ステップS2902)。そして、取得部501により、Y軸ジャイロセンサの出力値を取得する(ステップS2903)。
つぎに、保存部506により、取得されたY軸ジャイロセンサの出力値の平均値を、ジャイロセンサのY軸ゲインとして較正データファイルFiに保存して(ステップS2904)、図19に示したステップS1902に移行する。具体的には、保存部506が、Y軸ジャイロセンサの平均値「JiGZ」をY軸ゲインのフィールドに設定する。
(磁気センサ第2較正処理手順)
つぎに、図19に示したステップS1902の磁気センサ第2較正処理の具体的な処理手順について説明する。図30は、磁気センサ第2較正処理の具体的処理手順の一例を示すフローチャートである。
図30のフローチャートにおいて、まず、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS3001)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3002)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3003)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3004)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3005)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3006)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3007)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3008)。これにより、4点のX軸磁気センサおよびZ軸磁気センサの出力値を取得することができる。
このあと、補正部505により、取得されたX軸磁気センサおよびZ軸磁気センサの出力値に基づいて、磁気センサのX軸、Z軸オフセットおよびX軸、Z軸ゲインを算出する(ステップS3009)。そして、保存部506により、算出されたX軸、Z軸オフセット「MiOX、MiOZ」およびX軸、Z軸ゲイン「MiGX、MiGZ」を較正データファイルFiに保存して(ステップS3010)、図19に示したステップS1903に移行する。
(加速度センサ第1較正処理手順)
つぎに、図19に示したステップS1906の加速度センサ第2較正処理の具体的な処理手順について説明する。図31は、加速度センサ第2較正処理の具体的処理手順の一例を示すフローチャートである。
図31のフローチャートにおいて、まず、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS3101)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3102)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3103)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3104)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3105)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3106)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3107)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3108)。これにより、4点のX軸加速度センサおよびZ軸加速度センサの出力値を取得することができる。
このあと、補正部505により、取得されたX軸加速度センサおよびZ軸加速度センサの出力値に基づいて、加速度センサのX軸、Z軸オフセットおよびX軸、Z軸ゲインを算出する(ステップS3109)。そして、保存部506により、算出された加速度センサのX軸、Z軸オフセット「AiOX、AiOZ」およびX軸、Z軸ゲイン「AiGX、AiGZ」を較正データファイルFiに保存して(ステップS3110)、図19に示したステップS1907に移行する。
(ジャイロセンサ第2確認処理手順)
つぎに、図19に示したステップS1907のジャイロセンサ第2確認処理の具体的な処理手順について説明する。図32は、ジャイロセンサ第2確認処理の具体的処理手順の一例を示すフローチャートである。
図32のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、ジャイロセンサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS3201)。そして、駆動制御部504により、モータ112を制御して、較正用の角速度でターンテーブル114を回転させる(ステップS3202)。そして、取得部501により、Y軸ジャイロセンサの出力値を取得する(ステップS3203)。
つぎに、判定部507により、取得されたY軸ジャイロセンサの出力値の平均値がターンテーブル114の角速度と同じ数値を示しているか否かを判定して(ステップS3204)、図19に示したステップS1908に移行する。なお、判定結果は、較正結果一時記憶領域に記憶される。
(加速度センサ第1確認処理手順)
つぎに、図19に示したステップS1908の加速度センサ第2確認処理の具体的な処理手順について説明する。図33は、加速度センサ第2確認処理の具体的処理手順の一例を示すフローチャートである。
図33のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、加速度センサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS3301)。そして、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS3302)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3303)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3304)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3305)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3306)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3307)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3308)。そして、取得部501により、X軸加速度センサおよびZ軸加速度センサの出力値を取得する(ステップS3309)。
このあと、算出部により、取得されたX軸加速度センサおよびZ軸加速度センサの出力値に基づいて、加速度センサのX軸、Z軸オフセットおよびX軸、Z軸ゲインを算出する(ステップS3310)。そして、判定部507により、算出されたX軸、Z軸オフセットおよびX軸、Z軸ゲインが所望の値(オフセット:0、ゲイン:1)か否かを判定して(ステップS3311)、図19に示したステップS1909に移行する。なお、判定結果は、較正結果一時記憶領域に記憶される。
(磁気センサ第2確認処理手順)
つぎに、図19に示したステップS1912の磁気センサ第2確認処理の具体的な処理手順について説明する。図34は、磁気センサ第2確認処理の具体的処理手順の一例を示すフローチャートである。
図34のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、磁気センサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS3401)。そして、駆動制御部504により、モータ112を制御して、ターンテーブル114を基準位置で停止させる(ステップS3402)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3403)。
つぎに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3404)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3405)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3406)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3407)。
さらに、駆動制御部504により、モータ112を制御して、ターンテーブル114を90度回転させて停止させる(ステップS3408)。そして、取得部501により、X軸磁気センサおよびZ軸磁気センサの出力値を取得する(ステップS3409)。これにより、4点のX軸磁気センサおよびZ軸磁気センサの出力値(静止データ)を取得することができる。
このあと、補正部505により、取得されたX軸磁気センサおよびZ軸磁気センサの出力値に基づいて、磁気センサのX軸、Z軸オフセットおよびX軸、Z軸ゲインを算出する(ステップS3410)。そして、判定部507により、算出されたX軸、Z軸オフセットおよびX軸、Z軸ゲインが所望の値(オフセット:0、ゲイン:1)か否かを判定して(ステップS3411)、図20に示したステップS2001に移行する。なお、判定結果は、較正結果一時記憶領域に記憶される。
(ジャイロセンサ第3較正処理手順)
つぎに、図20に示したステップS2006のジャイロセンサ第3較正処理の具体的な処理手順について説明する。図35は、ジャイロセンサ第3較正処理の具体的処理手順の一例を示すフローチャートである。
図35のフローチャートにおいて、まず、表示部509により、較正面とターンテーブル114の回転面とが同一となるように複合センサSを設置するよう促すメッセージをディスプレイ408に表示する(ステップS3501)。
このあと、オペレータによって複合センサSが設置されると、制御装置120により、ジャイロセンサの性能データ600から較正用の角速度を読み出す(ステップS3502)。このあと、駆動制御部504により、モータ112を制御して、較正用の角速度でターンテーブル114を回転させる(ステップS3503)。
そして、取得部501により、指定軸(ここでは、X軸)ジャイロセンサの出力値を取得する(ステップS3504)。つぎに、保存部506により、取得されたX軸ジャイロセンサの出力値の平均値をジャイロセンサのX軸ゲインとして較正データファイルFiに保存して(ステップS3505)、図20に示したステップS2007に移行する。具体的には、保存部506が、X軸ジャイロセンサの平均値「JiGX」をX軸ゲインのフィールドに設定する。
(ジャイロセンサ第3確認処理手順)
つぎに、図20に示したステップS2007のジャイロセンサ第3確認処理の具体的な処理手順について説明する。図36は、ジャイロセンサ第3確認処理の具体的処理手順の一例を示すフローチャートである。
図36のフローチャートにおいて、まず、制御装置120により、較正データファイルFiを参照して、ジャイロセンサの現在の較正値を複合センサSの記憶領域に記憶する(ステップS3601)。そして、駆動制御部504により、モータ112を制御して、較正用の角速度でターンテーブル114を回転させる(ステップS3602)。そして、取得部501により、X軸ジャイロセンサの出力値を取得する(ステップS3603)。
つぎに、判定部507により、取得されたX軸ジャイロセンサの出力値の平均値がターンテーブル114の角速度と同じ数値を示しているか否かを判定する(ステップS3604)。なお、判定結果は、較正結果一時記憶領域に記憶される。
つぎに、表示部509により、較正結果一時記憶領域に記憶されている較正結果をディスプレイ408に表示して(ステップS3605)、図20に示したステップS2004に戻る。ここでは、X軸ジャイロセンサの較正の状態が結果として表示される。
(較正データ管理ファイルの記憶内容)
図37は、較正データ管理ファイルの記憶内容の一例を示す説明図である。図37において、較正データ管理ファイル3700は、センサIDおよび較正データファイルFiのフィールドを有する。各フィールドに情報を設定することで、複合センサSiごとの較正データファイルFiがレコードとして記憶されている。ここで、センサIDは、複合センサSiの識別子である。
較正データ管理ファイル3700によれば、各複合センサSiの履歴管理として使用することにより、較正データが失われた場合に該当複合センサSiに再度書き込むことができる。また、複合センサSiの製造ロットの品質管理のためのデータとして活用することもできる。なお、較正データ管理ファイル3700は、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されている。
以上説明したように、センサ較正装置100によれば、回転軸113の軸方向を検出して、検出された回転軸113の軸方向に基づいて、多軸センサの複数の感度軸の中から較正対象の感度軸を決定することができる。これにより、較正に必要となる感度軸の出力値を自動保存することができる。
また、センサ較正装置100によれば、多軸センサのセンサ種別に基づいて、多軸センサの複数の感度軸の中から較正対象の感度軸を決定することができる。これにより、各種センサの自動較正が可能となり、複数の多軸センサを備える複合センサの自動較正を行なうことができる。
また、センサ較正装置100によれば、ターンテーブル114の複数の角度位置での較正対象となる感度軸の出力値を用いて、当該出力値を補正することができる。これにより、センサ較正装置の設置誤差、統計的な揺らぎ(たとえば、電気回路の熱雑音、自然重力や地磁気の揺らぎ)にともなう出力値の誤差を低減することができる。
また、センサ較正装置100によれば、磁気的にシールドされた筐体でモータ112を密閉することにより、多軸センサに対するモータ112の磁気的影響を排除することができる。
また、センサ較正装置100によれば、モータ112として磁気を発生させない超音波モータを採用することにより、多軸センサに対するモータ112の磁気的影響を排除することができる。
これらのことから、センサ較正装置100によれば、簡易的な構成で多軸センサの較正を行なうことができる。具体的には、センサ較正装置100によれば、回転台装置110を90度転倒させて、1軸の回転運動の向きを変えて使用することにより、複数の回転運動に必要な関節機構や動力伝達機構が不要となり、装置構造を単純化することができる。また、地球の地磁気と重力とを利用して較正を行なうため、特殊な測定環境(磁気暗室、人工重力装置など)を用意する必要がない。
なお、本実施の形態で説明したセンサ較正方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本センサ較正プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本センサ較正プログラムは、インターネット等のネットワークを介して配布してもよい。