logo
Published on

Arduinoに「LIS3DH」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Arduinoは様々なセンサーやモジュールを利用して、様々なプロジェクトを実現するための優れたプラットフォームです。この記事では、加速度センサー「LIS3DH」をArduinoに接続し、制御する方法について解説します。

※モジュールの価格を比較 ▶ TemuAliExpress楽天メルカリ

1. LIS3DHの概要

LIS3DHは、小型で高性能な3軸加速度センサーモジュールです。このセンサーは、XYZ軸それぞれの加速度を検知することができ、携帯電話やウェアラブルデバイスなどのアプリケーションでよく使用されています。Arduinoを使ってLIS3DHを制御すれば、振動や傾きなどの動きを検知することができます。

2. LIS3DHの接続

LIS3DHをArduinoに接続するには、通常、以下のようなピンがあります。

  • VCC(赤色): 3.3Vの電源
  • GND(茶色): 接地
  • SDA(データライン): I2C通信用のデータライン
  • SCL(クロックライン): I2C通信用のクロックライン

これらを対応するArduinoのピンに接続します。また、LIS3DHモジュールによっては、アナログピン経由での接続も可能です。

3. Arduinoライブラリのインストール

LIS3DHをArduinoで使用するためには、専用のライブラリが必要です。Arduino IDEを開いて、「スケッチ」 -> 「ライブラリをインクルード」 -> 「ライブラリマネージャ」から「LIS3DH」を検索し、インストールします。

4. Arduinoコードの作成

LIS3DHを制御するための基本的なArduinoコードを以下に示します。

#include <Wire.h>
#include <LIS3DH.h>

LIS3DH lis;

void setup() {
  Serial.begin(9600);
  if (!lis.begin()) {
    Serial.println("Unable to communicate with LIS3DH");
    while (1);
  }
}

void loop() {
  lis.read();
  Serial.print("X: "); Serial.print(lis.x); 
  Serial.print("\tY: "); Serial.print(lis.y); 
  Serial.print("\tZ: "); Serial.println(lis.z);
  
  delay(1000);
}

このコードは、LIS3DHからXYZ軸の加速度データを取得し、シリアルモニタに表示するものです。

5. コードのアップロードと動作確認

Arduinoにコードをアップロードし、シリアルモニタを開いてLIS3DHからのデータを確認します。Arduinoを傾けたり振動させると、加速度データが変化することが確認できるでしょう。

これで、ArduinoにLIS3DHを接続し、基本的な制御を行うための手順が完了しました。LIS3DHの利用を拡張して様々なアプリケーションを作成することができます。