Home > 電子コンパス > 電子コンパス・アプリケーションノート>
電子コンパス組み込み製品のテスト/較正/トラブルシュート
電子コンパスのテスト方法
電子コンパスICを組み込んで製造した機器のテスト手順を示します。
I2Cのテスト → センサ出力値のテスト → コンパスのテストという順にテストを行います。
(1) I2Cのテスト
I2Cのドライバでコマンドに対する応答は正しく返ってくるかテストします。
まず、WHOAMI?コマンドと応答をチェックします。
応答が無い場合、ICの周辺回路のハードの故障かI2Cのソフトのアドレス指定などが合っているか調べます。
特に注意することは、計測値を1byte(8bit)単位で読み出すため、見かけ上のレジスタのアドレスが偶数番地と奇数番地の2byteにまたがっているところを1回のセッションで2byteを読み出すことです。
つまり、StartCondition送信 →アドレス送信→1byteデータ受信→1byteデータ受信→StopCondition送信という順番にすることです。
(2) センサー出力値のテスト
センサーの計測値を観測します。
X軸,Y軸の磁気を見ながら、センサーを水平回転させてみてセンサーの計測値に変化があるかどうか見ます。
もし、センサーの値が変化しなかった場合には、ICの故障か磁気的に飽和していないかどうか調べて原因を切り分けます。
注意点として、Androidスマートフォンの場合、提供しているドライバーを用いた場合にセンサーの生の計測値が出てこないため、動かなかった場合の原因が、ハード要因なのか、ソフト要因なのかの判断が難しいです。
デバッグ用のAPIの機能が内蔵されたドライバの提供を受けて、センサーICの生の計測値を観察することで、ハード要因かどうかを検証することができます。
(3) コンパスとしてのテスト
端末を水平回転させて、方位が0~360°変化することを確認します。一定速度でゆっくり回転させ、方位が同じように変化するかどうか見ます。
方位が正しく動かない場合、センサー近傍にセンサーの出力を乱すノイズ源が存在します。
調べるために、センサーの計測値を記録しながら、センサーを水平回転させる。X軸,Y軸の磁気の計測値を2次元のグラフにプロットしてみます。
プロットしたグラフが綺麗な円になれば正常な状態と確認できます。
綺麗な円にならない場合には、自動較正で補正が充分できないか、別途手動での較正が必要なのかを判断するために、以下の手順を試します。
地磁気が乱れていない環境で、端末を8の字に振って自動較正をかけ、その後で再度プロットし、これを何回か繰り返します。
その結果、まったく円にならなければ、別途手動での較正が必要と考えられます。