コンテンツにスキップ

#201 3Axis I2C Brick

Overview

3軸加速度センサーを使用したBrickです。

I2Cで3軸の加速度データを取得することがきます。

センサー取得データについて

このBrickでは下の図の3軸の値を取得します。

それぞれ矢印の方向に力がかかるとプラス、逆方向ではマイナスとなります。

なお、このBrickを水平に置いた場合、重力がZ軸にかかっている状態となるので、X軸、Y軸が0に近く、Z軸のみ高い値となります。

接続

4Pinケーブルで、OUT/INシールドのI2Cコネクタへ接続します。

※4Pinケーブル、各種OUT/INシールド、各種ケースは別売です。

写真はArduinoでの接続例です。

写真はRaspberry Piの接続例です。

ADXL345 Datasheet

Document
ADXL345 Datasheet

Register

I2C Slave Address
0x53

回路図

Library

  • pipからインストール

1
$ sudo pip install FaBo3Axis_ADXL345

Sample Code

I2Cコネクタに接続した3Axis I2C Brickより3軸の加速度情報を取得し、コンソールに出力します。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# coding: utf-8
import FaBo3Axis_ADXL345
import time
import sys

adxl345 = FaBo3Axis_ADXL345.ADXL345()

try:
    while True:
        axes = adxl345.read()
        sys.stdout.write("\rx = %f, y = %f, z = %f" % (axes['x'],  axes['y'], axes['z']))
        sys.stdout.flush()
        time.sleep(0.1)
except KeyboardInterrupt:
    sys.exit()

import smbusに失敗する場合はraspi-configでI2C有効化してください。

1
sudo raspi-config

メニューから[7 Advanced Options]>[P5 I2C]を選択して有効化します

構成Parts

  • Analog Devices ADXL345

GitHub

  • https://github.com/FaBoPlatform/FaBo/tree/master/201_3axis