Piの準備ができました。2JCIE-BL01)からデータを収集する仕組みを構築します。」「騒音」「UV」の6要素*2を測定可能な優れモノです。非常にコンパクトな一体型環境センサーで、コイン電池で長期間稼働します。中身はオムロン(Omron)製の2JCIE-BL01から3軸加速度センサーを除いたもの、と思っていましたが、オムロンのサイトを再度確認すると、「6種類のセンサー」と記載されているので同じものなのかな??以前は違っていた気が...。2JCIE-BL01の値段は12,000~13,000円ぐらい。ウェザーニューズ社が販売しているWxBeacon2は4,798円(税・送料込み)。ウェザーニーズの為だけに加速度センサーを外したりしないと思うし、万が一加速度センサーが無くても室内設置用途なので、まあいらない*3ので、価格面を考慮して今回はWxBeacon2を使います。ORMONの資料の在り処GitHubに上がっているOMRONの資料・ソースを利用する。基本的にOMRONの資料に沿ってすすめる。参考サイトいろいろと先人が苦労している様子です。omron(の正式かどうかは不明ですが)のコードもpython-blueを使うようになって楽になりましたが、以前は皆様が色々なBlueZ対応ライブラリにトライされておられました。今は、下記サイトあたりを見れば大体の感触はつかめるかと。Pi側の確認(Bluetooth確認)まずはBluetoothモジュールのバージョン確認して、Bluetoothモジュール(bluz)がインストールされていることを確認します。WのBluetoothがきちんと稼働しているか確認します。RUNNING"となっていたらOKです。RUNNINGでなければ、下記のコマンドでBluetoothインタフェースを稼働させておきます。PiのBTのインターフェース番号とBluetoothデバイスアドレスを確認する。WxBeacon2の動作確認まずWxBeacon2に電池を入れます。ほんの一瞬、表側のLEDが赤色→緑色と光る、が普通は裏側で電池を入れているので見えない...スマホにウェザーニュースのアプリを入れて、[メニュー]→[みんなで作る天気:WxBeacon2のデータ]を開く。下の方の[WxBeacon2の設定]から設定画面に入る。言ってもやれることは「WxBeacon2を受信」のトグルをオンにするだけです(左の画面)。「デバイスアドレス」と「シリアル番号」をメモっておく。センサーデータではなく、「気温」と「湿度」からの計算値です。Piの接続確認まずは、WxBeacon2のBluetoothデバイスアドレスのチェックします。Env...先ほどスマホアプリで確認したデバイスアドレスが、Envという名前でスキャンに引っかかっていることを確認する。Ctrl-cで止めます。InfluxDBのインストールOMRONのサンプルスクリプトでは、データの書き出し先にファイルorデータベースが選べます。データベースには、IoT系のデータ(時系列データ)の格納に特化したInfluxDBが利用できます。これをインストールしておきましょう。基本的なやり方は下記のとおりですが、このページではStrechベースですので、そこをBusterに置き換えて進めます。InfluxDataパッケージのリポジトリを追加。/etc/apt/sources.list.d/influxdb.listinfluxDBを実際にインストールする。chronograftelegrafは、将来的にいろいろなデータソースから取り込む時用なので、今はインストールしなくて良い。chronografはinfluxDBのUIなので、今回の用途ではあまり必要ないかもしれないが、UIはあった方が良いかと思いインストール。Energy)を利用できるように設定OMRONのサンプルスクリプトは、PythonからBLE(bluez)にアクセスするモジュールとして、python-bluezを利用するので、まずはそれを入れておきます。REQEUST送信用のライブラリであるRequestsモジュールも必要なので入れておきます。--upgradeついでにinfluxdb関連のモジュールもインストールしておきます。環境センサー(WxBeacon2)をBroadcastモードに変更WxBeacon2は購入した状態では、スマホとconnectしてからセンサーデータを取得するモードになっています。このままではOMRONのサンプルスクリプトは使えません。OMRONのサンプルスクリプトは、WxBeacon2から周りにまき散らしているアドバタイジングメッセージにセンサーデータも含めた状態を想定しているからです。Energy)で接続して行います。4.0と同じもの)を導入します。ここではAndroidを使っていますが、iOSにも同様のものがあるはずです。このアプリを立ち上げるとBLEデバイスを探しに行きます。左の画面の一番下「Env」が今回設定を変更しようとしているWxBeacon2です。Bluetoothのデバイスアドレスで確認した上で、「CONNECT」をタップします。C4C3042-7700-....」展開されます。Settingに現在書き込まれている値が表示されます(左画面)。(スペースは読みやすさのために入れました)です。Beaconとなっています。(スペースは読みやすさのために入れましたので入力しないでください)を設定します(右画面)。「Env」だったデバイスが「EP」に変わっていれば、設定変更は成功です。本命のOMRON社(の公式かは不明ですが)のサンプルスクリプト(Python)の入手です。omron~piディレクトにomronというディレクトリが出来ていたらOK。展開したサンプルスクリプトのディレクトに移って、中核となるPythonのコードに実行権限を付与する。conf.pyの設定(influxDBの設定)サンプルスクリプトのディレクトリにあるconf.pyが設定ファイル。envsensor_observer.pyの自動起動設定/etc/systemd/systemに、自動起動の為のサービス設定ファイルenvsensor_observer.serviceを作る。Zeroの起動時に自動起動するように設定。環境センサーデータ取得スクリプト(envsensor_observer.py)の稼働を確認する。temperature)・湿度(humidity)が記録されていれば、スクリプトは順調に動いていると言えるでしょう。つづくこれで環境センサーデータ収集サーバ側は完了で、センサーデータはこのサーバに蓄積されてゆきます。Assistantを繋ぎます。リモコンを接続スマートプラグを接続UIを改善*1:ウェザーニーズ社的には、WxBeacon2は観測ポイントでの交換が主だと思う。一方で観測点も増やしたい、という目論見から販売もしている(申し訳ないが、私は何個買っても観測点増加には貢献出来ていません。そのうち売ってくれなくなるかな...)。計算してくれて、これらもデータとして取得可能です*3:加速度センサーは地震の測定に使う、ってオムロンのサイトに書かれていました。ううむ、それはそれで惹かれる...でも常時監視してないとダメか。中編Tweet広告を非表示にする関連記事2019-09-28【Nabaztag】うさぎ復活計画(その2)前回うさぎを一応生き返らせることが出来ました。Assistant(Hass.io)でホームオートメーション】クリスマスツリー点灯!!月別アーカイブはてなブログをはじめよう!maky_Baさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。