各部屋の環境測定(温度・湿度・気圧)は現在ラズパイとI2Cセンサ(主にBME280)を用いて行っています。 I2Cは電源と信号線計4本をラズパイGPIOと接続が必要です。それと半田付け・ケーブル処理・ケーシングでちょっとやっかいです。
Bluetooth接続としたくラズパイ内でCSV作成までをWxBeacon2のOEM元OMORONのサンプルプログラム動作確認まで行いました。最終的にはZABBIXサーバにデータを送り可視化をしたいです。
【BLE】
Bluetooth LE(ブルートゥースLE)は、Bluetooth Low Energy の略。さらに略して、BLE と表記することも多い。Low Energy は、「省電力」といった意味。
NTT PC Communication https://www.nttpc.co.jp/yougo/BLE.html
ブルートゥースは、最大10メートル程度の距離で機器と機器を相互接続するための無線通信の規格。たとえば、ワイヤレスのキーボードやマウス、ヘッドホンなどで使われている。
当初は、パソコンと携帯電話との接続や家電製品同士の接続など多く用途が想定されていた。しかし、無線LAN(いわゆるWi-Fi)など他の無線通信方式の普及が進み、期待されたほど用途が広がっていない。
ブルートゥースLE は、このブルートゥースのバージョン4.0 から採用された消費電力が低い通信方式。そのため、ボタン電池など簡単な電源で数年間、使い続けることができる。
具体的には、健康管理機能を搭載した腕時計型の端末からスマートフォンへデータを送ったり、逆にスマートフォンから電話やメールの着信を腕時計型端末に知らせるといったことができる。
同様に、各種医療機器が監視しているデータを逐次送信したり、さまざまなセンサーが収集した情報を監視装置に送るといった用途でも利用拡大が期待されている。
今後ますます、M2M や IoT と呼ばれる機器同士の相互通信が増えていく。そのため、省電力で長く使える無線通信方式の需要が高まっている。ブルートゥースLE も、そうした技術のひとつといえる。
◇OSイメージ
https://www.raspberrypi.org/downloads/raspbian/
2018-11-13-raspbian-stretch-lite.zip
解凍してmicroSDにimgをWrite
2018-11-13-raspbian-stretch-lite.img
◇OSのアップデート
$ sudo apt-get update
$ sudo apt-get upgrade
◇OS環境構築各種
$ sudo raspi-config
◇準備
git
$ sudo apt-get install git
◇Python関連
$ sudo apt-get install python-bluez
$ sudo apt-get install python-dev
$ sudo apt-get install python-pip
$ sudo pip install --upgrade pip
$ sudo pip install requests
◇OMRONリポジトリをクローン
$ git clone https://github.com/OmronMicroDevices/envsensor-observer-py.git
Beacon Modeの変更
Environment Sensor (2JCIE-BL01) must be configured as a beacon broadcaster (IM/EP).
In this mode of operation, sensor data is included in the advertisement packet to be transmitted.
Please refer to User's Manual for more details.
→
環境センサー(2JCIE-BL01)はビーコンブロードキャスター(IM / EP)として設定する必要があります。
この動作モードでは、送信されるアドバタイズメントパケットにセンサデータが含まれています。
詳しくはユーザーズマニュアルを参照してください。
OmronMicroDevices/envsensor-observer-py README.md 抜粋
◇Beacon Modeの変更
iPhoneにBLE Scannerを入れて行いました。
マニュアル
1.3.1データ保存有り 1.3.2データ保存無しより抜粋
iPhone BLE Scannerからの設定は下記の変更後のBeaconModeの通り
変更 | Beacon Mode | Name | Shortened Device Name | Device Name |
前 | 0x08 | Event Beacon(ADV) | Env | EnvSensor-BL01 |
後 | 0x04 | General Broadcaster 2 | EP | EP-BL01 |
$ sudo ./envsensor_observer.py
envsensor_observer.py の測定間隔300sec毎にsensor statusが標準出力されます。
conf.pyに指定されたlogフォルダにCSVファイルが生成されています。レイアウトの都合でX-Y軸を入れ替えております。
すでに心はZABBIXサーバに!カンファレンスで頂戴したステッカーを貼り付けて準備中です。環境測定をグラフで可視化と電池消耗閾値設定でイベントメールを生成して送信を実現させたいです。
コメント