STEMMAで広がるArduinoの世界⑲Step1 3軸加速度センサLIS331HH

 STMicroelectronicsの3軸加速度センサLIS331HHは、3軸それぞれで±24gまでを測定できます。

 IC自体が3.3V電源で使うデバイスのため、5V->3.3VのレギュレータとI2Cの信号レベル変換回路が入っています。Arduino UNOのような5Vで動作するボードでも正しく動作します。SDA/SCL信号のプルアップ抵抗は10kΩが入っています。

Adafruitのブレークアウト・ボード

 STEMMA QT(JST SH 4ピン)コネクタは2か所に装着されていて、どちらにつないでもかまいません。このコネクタを使ってI2Cで制御する場合、特に、ジャンパ線をつなぐなどは不要です。割り込み出力、SPI用のピンが用意されています。

  Adafruit H3LIS331 and LIS331 High-g 3-Axis Accelerometers

3軸加速度センサLIS331のおもなスペック

  データシート

  • 動作電圧 3.3/5V
  • 測定範囲 ±6g/±12g/±24gの選択可能なスケーリング
  • インターフェース I2C(最大400kHz)、SPI(最大10MHz)
  • I2Cアドレス デフォルト0x18、裏面のジャンパで0x19に設定できる

環境

  • Arduino UNO R3
  • Arduino IDE 1.8.13
  • Windows10 20H2

接続

 電源は5Vを使いました。Arduino UNO R3のI2Cは、専用のSCLとSDA端子がありますが、SCLはA5に、SDAはA4につながっています。どちら側につないでもかまいません。白色のリード線は見えないので、黄色で配線図を描きました。

スケッチ

 利用手順は、Adafruit H3LIS331 and LIS331 High-g 3-Axis Accelerometers Overviewに書かれています。

 ライブラリを導入します。メニューのツールから、「ライブラリを管理」を選び、検索欄にLIS331を入力します。見つけてきたAdafruit LIS331のインストールをクリックします。

 同時にサンプル・スケッチも導入されます。

 メニューのファイルからサンプルの入っているスケッチ例を選択します。そこから、h3lis331_accel_demoを選択します。

 実行中の様子です。

 h3lis331_accel_plotterを読み込んで実行します。

 h3lis331_filter_demoです。z軸だけの描画です。enableHighPassFilter(true, LIS331_HPF_0_0025_ODR)という関数を呼んでいます。

●落下実験

 Loop()の最後にあるdelayを1000から1へ変更したh3lis331_accel_demoを動かし、シリアルモニタの「出力をクリア」をクリックしたと同時に、床から1m上から手を放して落下させました。

  Y軸とZ軸に0.00が現れています。

 h3lis331_accel_plotterを動かしています。床から1m上から落下させました。

 3軸とも0になる時間帯があり、その直後に床にぶつかって大きな加速度が生じています。

 自由落下時、9.8m/s2になることが知られています。これはSI単位系で、加速度センサではMKS重力単位のG(ジー)が使われます。1[g] = 9.8[m/s2]の関係です。

前へ

Groveで広がるArduinoの世界-Step2-⑥ Grove IR Distance Interrupter

次へ

STEMMAで広がるArduinoの世界⑳Step1 3軸加速度センサMSA301