STEMMAで広がるArduinoの世界⑳Step1 3軸加速度センサMSA301
MEMSSensing Microsystemsの3軸加速度センサMSA301は、低価格が特徴で±16gまでを測定できます。
IC自体が3.3V電源で使うデバイスのため、5V->3.3VのレギュレータとI2Cの信号レベル変換回路が入っています。Arduino UNOのような5Vで動作するボードでも正しく動作します。SDA/SCL信号のプルアップ抵抗は10kΩが入っています。
●Adafruitのブレークアウト・ボード
STEMMA QT(JST SH 4ピン)コネクタは2か所に装着されていて、どちらにつないでもかまいません。このコネクタを使ってI2Cで制御する場合、特に、ジャンパ線をつなぐなどは不要です。割り込み出力のピンが用意されています。
Adafruit MSA301 Triple Axis Accelerometer
●3軸加速度センサMSA301のおもなスペック
- 動作電圧 3.3/5V
- 測定範囲 ±2g/±4g/±8g/±16gの選択可能なスケーリング
- インターフェース I2C(最大400kHz)
- I2Cアドレス 固定0x26
●環境
- Arduino UNO R3
- Arduino IDE 1.8.13
- Windows10 20H2
●接続
電源は5Vを使いました。Arduino UNO R3のI2Cは、専用のSCLとSDA端子がありますが、SCLはA5に、SDAはA4につながっています。どちら側につないでもかまいません。白色のリード線は見えないので、黄色で配線図を描きました。
●スケッチ
利用手順は、Adafruit MSA301 Triple Axis Accelerometer Overviewに書かれています。
ライブラリを導入します。メニューのツールから、「ライブラリを管理」を選び、検索欄にMSA301を入力します。見つけてきたAdafruit MSA301のインストールをクリックします。
同時にサンプル・スケッチも導入されます。
メニューのファイルからサンプルの入っているスケッチ例を選択します。Adafruit_MSA301から、acceldemoを選択します。
実行中の様子です。
plotdemoを読み込んで実行します。
●回転実験
回転する椅子の座面中心にセンサを置いて、椅子を回転します。1回転2秒くらいです。あまり変化しませんでした。
椅子の座面の端(中心から約30cm)にセンサを置いて、椅子を回転します。1回転2秒くらいですが、ほとんど変化しません。
いづれも等速運動では、加速でセンサは反応しないことが確認できました。微妙に波形が振動しているのは、回転時の機械的振動です。
くいっと、速く回してみました。