加速度センサ読み取り

概要

4-Sensorsリーフに搭載された加速度センサの値を読み取って、シリアルモニタに表示するサンプルです。

使用するリーフ

以下のリーフを使用します

Type Name Q’ty
AZ62 Connector Cover 2
AI01 4-Sensors 1
AX07 Back to back 1
AP02 ESP32 MCU 1
AV04 2V~4.5V 1
AZ63 Nut Plate 2
AAA battery holder 1
AAA battery 3
M2*8mm screw 2
M2*12mm screw 2
φ10x2mm magnet 1

リーフの組み立て

下図を参考にリーフを組み立ててみましょう。

assemble1

ソースコード

Arduino IDEで下記のプログラムを書きましょう。

このスケッチを動かすためには、ライブラリのインストールが必要です。 まだインストールしていない場合は開発環境設定ページを参考にライブラリをインストールしてください。

//=====================================================================
//  Accelerometer
//
//    (c) 2020 Trillion-Node Study Group
//    Released under the MIT license
//    https://opensource.org/licenses/MIT
//
//      Rev.00 2020/05/05  First release
//=====================================================================
#include <Adafruit_LIS3DH.h>

#define LIS3DH_ADDRESS 0x19

Adafruit_LIS3DH accel = Adafruit_LIS3DH();

void setup() {
  // initialize serial communication at 115200 second per second:
  Serial.begin(115200);
  // initialize i2c communication with LIS3DH:
  accel.begin(LIS3DH_ADDRESS);

  accel.setClick(0, 0);                      // Disable Interrupt
  accel.setRange(LIS3DH_RANGE_2_G);          // Full scale +/- 2G
  accel.setDataRate(LIS3DH_DATARATE_10_HZ);  // Data rate = 10Hz

  delay(100);
}

void loop() {
    accel.read();

    Serial.print("X [g] = " + String(accel.x_g));
    Serial.print(", ");
    Serial.print("Y [g] = " + String(accel.y_g));
    Serial.print(", ");
    Serial.print("Z [g] = " + String(accel.z_g));
    Serial.println("");

    delay(100);
}

Accelerometer.ino

実行結果

Arduino IDEのシリアルモニタを開き、ボーレートを115200bpsとすると、加速度と傾きが表示されます。


最終更新 August 21, 2020