コンテンツにスキップ
ショップ

加速度センサ読み取り

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

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

TypeNameQ’ty
AZ62Connector Cover2
AI014-Sensors1
AX07Back to back1
AP02ESP32 MCU1
AV042V~4.5V1
AZ63Nut Plate2
AAA battery holder1
AAA battery3
M2*8mm screw2
M2*12mm screw2
φ10x2mm magnet1

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

assemble1

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

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

//=====================================================================
// Accelerometer
//
// (c) 2021 LEAFONY SYSTEMS Co., Ltd
// Released under the MIT license
// https://opensource.org/licenses/MIT
//
// Rev.00 2021/04/01 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とすると、加速度と傾きが表示されます。