logo
Published on

Arduinoに「AE-BNO055-BO」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

「AE-BNO055-BO」は、Bosch社のBNO055センサーモジュールで、Arduinoを含む様々なプラットフォームで使用できる優れた慣性計測ユニット(IMU)です。この記事では、「AE-BNO055-BO」をArduinoに接続し、制御する方法について解説します。

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

1. AE-BNO055-BOの概要

AE-BNO055-BOは、3軸加速度計、3軸ジャイロスコープ、3軸地磁気センサーを統合した9軸IMUセンサーモジュールです。これにより、ユーザーは姿勢の検出や動きの追跡などのアプリケーションを簡単に開発することができます。

2. AE-BNO055-BOの接続

AE-BNO055-BOは通常、I2C(アイ・スクエア・シー)通信プロトコルを使用して接続されます。以下は、AE-BNO055-BOをArduinoに接続するための基本的な配線例です。

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

これらの線を対応するArduinoのピンに接続します。

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

ArduinoでAE-BNO055-BOを制御するには、Boschのライブラリを利用します。Arduino IDEを開いて、メニューバーから「スケッチ」 -> 「ライブラリをインクルード」 -> 「ライブラリを管理」を選択し、BNO055を検索してライブラリをインストールします。

4. Arduinoコードの作成

以下は、AE-BNO055-BOをArduinoで動作させるための基本的なコード例です。

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BNO055.h>

Adafruit_BNO055 bno = Adafruit_BNO055();

void setup(void) {
  Serial.begin(115200);
  Serial.println("AE-BNO055-BO Test");

  if (!bno.begin()) {
    Serial.println("AE-BNO055-BO not detected. Check your connections or I2C address.");
    while (1);
  }

  delay(1000);
}

void loop(void) {
  sensors_event_t event;
  bno.getEvent(&event);

  Serial.print("Orientation: ");
  Serial.print(event.orientation.x, 4);
  Serial.print(" ");
  Serial.print(event.orientation.y, 4);
  Serial.print(" ");
  Serial.println(event.orientation.z, 4);

  delay(100);
}

このコードはAE-BNO055-BOからの姿勢データをシリアルモニタに表示するものです。

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

最後に、書いたコードをArduinoにアップロードし、AE-BNO055-BOが正しく動作しているか確認します。アップロードが成功したら、シリアルモニタにAE-BNO055-BOからの姿勢データが表示されるはずです。

これで、ArduinoにAE-BNO055-BOを接続し、基本的な制御を行うための手順が完了しました。AE-BNO055-BOのデータを活用して、様々なプロジェクトを開発することができます。