730303_ja-JP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

730303_ja-JP

730303_ja-JP

磁力計測定の形状に起因する磁力計チップ依存の校正問題に対するパッチ<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

読者の皆様
センサ フュージョン アルゴリズム (バージョン 7.10) の磁力計キャリブレーションを、起動後に数回繰り返すと、一貫性のない結果が得られることに気付きました。コードを詳しく調べたところ、磁力計のキャリブレーション手順はセンサー チップに依存していることがわかりました。私のセンサーの場合、キャリブレーションに使用される測定値を含む磁力計バッファがすぐにいっぱいになりました。これにより、磁力計測定の形状が制限され、適切な固定測定では不正確な適合が生じました。

手順センサチップを独立させる次のパッチを提案します。
magnetic.hの場合:

59 - #define MESHDELTACOUNTS 50 ///< magnetic buffer mesh spacing in counts (here 5uT)
59 + #define MESHDELTACOUNTS 5.0F//50 ///< magnetic buffer mesh spacing in uT‍‍

そしてmagnetic.cでは:

230 - if (idelta < MESHDELTACOUNTS)
230 + if (idelta < (int32_t)(MESHDELTACOUNTS*pthisMag->fCountsPeruT))
268 - if (idelta < MESHDELTACOUNTS)
268 + if (idelta < (int32_t)(MESHDELTACOUNTS*pthisMag->fCountsPeruT))‍‍‍‍

さらに、アルゴリズムのコメントでは磁場の強度は22~67 uTの範囲であるべきと記載されていたが、 magnetic.hでは最小値と最大値はそれぞれ 10 uT と 90 uT と定義されました。以下の変更を提案します。

56 - #define MINBFITUT 10.0F ///< minimum acceptable geomagnetic field B (uT) for valid calibration
57 - #define MAXBFITUT 90.0F ///< maximum acceptable geomagnetic field B (uT) for valid calibration
56 + #define MINBFITUT 22.0F ///< minimum acceptable geomagnetic field B (uT) for valid calibration
57 + #define MAXBFITUT 67.0F ///< maximum acceptable geomagnetic field B (uT) for valid calibration‍‍‍‍

できれば、NXP の誰かがこれらのパッチが正しいことを確認してくれるといいのですが。

よろしくお願いいたします。

ウーター

センサ・フュージョンRe: Patch for magnetometer chip dependent calibration problem caused by geometry of magnetometer measurements<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

ウーター、

人々がコードを詳しく調べているのを見るといつも嬉しくなります。今後のリリースに向けてレビューする項目のリストにこれを追加します。

よろしくお願いいたします。

Mike

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎02-04-2026 04:32 AM
更新者: