37. C・C++言語で Raspberry Pi Sense Hat の情報を収集する
はじめに
前回の記事では、Azure IoT SDK for C を使って、C言語による IoT デバイスアプリケーション開発を試しました。
今回は、その応用として、Raspberry Pi のドーターボードの Sense Hat からセンサーデータを計測して Azure IoT Hub に送信する IoT デバイスアプリケーションを C言語で開発してみることにします。
Sense Hat
Sense Hat の詳細は、
Buy a Sense HAT – Raspberry Pi
をご覧ください。
Raspberry Pi にアドオンして使える、8×8 フルカラー LED マトリクスがついた、電源入れると結構きれいに光るボードです。
以下の物理データを計測できるセンサーが装備されています。
温度、湿度、大気圧
加速度
角速度
磁気
このボードの配置方法の為、温度はほぼ、Raspberry Pi のボードの温度が計測できます。
セットアップ
セットアップは簡単で、Raspberry Pi の電源を切って、購入した Sense Hat を Raspberry Pi に装着し電源を入れます。
起動したら、Raspberry Pi の Shell 上で、
$ sudo apt-get update
$ sudo apt-get install sense-hat
を実行して、必要なファームウェアをインストールし、一旦リブートを行います。
$ sudo reboot -h now
あ、I2C で Sense Hat にアクセスするので、Raspberry Pi の Configuration 設定で、I2C のインターフェース利用を Enable にするのを忘れずに。
利用可能な API
sense-hat パッケージをインストールすると、Python、C++ でアプリを開発するのに必要なファイル群がインストールされます。
Python の場合は、
Sense Hat on Raspberry Pi – The Ultimate Tutorial (Part 1) – RaspberryTips
等が参考になります。リブート後にシェル上で、python3 を実行して、
pi@raspi-agu:~ $ python3
Python 3.9.2 (default, Mar 12 2021, 04:06:34)
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from sense_hat import SenseHat
>>> sense = SenseHat()
WARNING:root:Failed to initialise TCS34725 colour sensor. (sensor not present)
>>> dir = sense.get_compass()
>>> dir
143.8349319953042
>>>
ここから先は
¥ 300
この記事が気に入ったらチップで応援してみませんか?