地磁気 (コンパス) センサーを動かしてみます。
Amazon 等で購入できます。
配線は以下のようになります (I2C 接続)。
私が購入したものには 5 ピンのストレート/L字ピンヘッダが付属していましたが、これは使わずに秋月の細ピンヘッダをハンダ付けしました。
I2C | HMC5883L | Arduino |
GND | GND | GND |
VCC | VCC | 5V |
SCL | SCL | A5 |
SDA | SDA | A4 |
I2C と HMC5883L のライブラリは GitHub にあります。こちらを [スケッチ | ライブラリを使用 | ライブラリをインストール] でインストールします。
スケッチは HMC5883L のライブラリの中にあります (HMC5883L_raw.ino)。コンパイルしてシリアルモニタ (38400 bps) を開くと、
センサーの生データが表示されます。このライブラリで定義されている HMC5883L の I2C スレーブアドレスはデフォルトで 0x1E (30) です。
生データは荒ぶるので、MPU-6050 同様にカルマンフィルターを通す必要があるでしょう。また、MPU-6050 と併用すれば、三軸ジンバルを作る事ができます。三軸ジンバルのサンプルスケッチはカルマンフィルターのサンプルの中にあります。
ここにある情報が役に立って、「調べる手間が省けたからオマイに飯でもおごってやるよ」 というハートウォーミングな方がいらっしゃいましたら、下のボタンからどうぞ。