2024年3月2日土曜日

地磁気センサ(電子コンパス)ATD5883Lを試す2

前の投稿の続き(https://matsu-log.blogspot.com/2024/03/atd5883l.html)

aitendoのATD5883Lを試したが、うまくいかなかったのでリトライ。
結論、i2cアドレスと周波数設定と電圧ミスが原因だった。
センサ1個目は、うかつにportAにつないだせいで5Vで焼けてしまったよう…無念。安くない勉強料だ。
2個買っておいたので何とか助かった。
これ、シルクをよく見るとGY-271という基板名っぽい。この名前だとAmazonで安いコピー品が大量にヒットする。

私の買ったデバイスは、100kHz 3.3Vでアクセスすると30, 104という二つのIDがヒットする。
104ではうまく動かず、30でA/B/CのWHO AM Iを読むと、以下の値が読みだされる。
 b'H', b'4', b'3'

ハネウェルの正規品とは異なるので、要注意。

出力結果だが、以下のように、x,y,zを読み取っていい感じにプロットできた。

※ちなみに、この3次元プロットにはhttps://qiita.com/yo16/items/b5af6d2e9d1bf5e8ab51を活用させていただいた


焼けていないほうのチップをm5atomの3.3V, G, 21, 25につなぎ直して、上記のプログラムを走らせれば無事動いた。

x,y,zの生値を見ると、以下の範囲になっている。
 x: -435~649
 y: -556~540
 z: -585~409

乱暴だが、それぞれ中点を取ると107, -8, -88となるので、これをオフセットとして使う。
それなりの精度になっていそうなので、オモチャレベルではこれでよしとしておく。

0 件のコメント:

コメントを投稿