2021年02月20日

Node-Redを用いたCO2センサ SenseAir S8 データ取得

今回は旭化成 CO2センサ S8 004-0-0053をNode-Redを用いて取り込んでみました。S8センサはNDIR方式のCO2センサで他の方式に比べて精度よく検出することが可能です。通信はUART接続となっており、Node-Redのnode-red-node-serialportとUSB-UARTシリアル変換アダプタを使用して簡単に接続することができます。なお、S8センサは3.3Vでなく、5V電源入力のため、5V出力があるUSB-UARTシリアル変換アダプタが便利です。

serialノードを使用する場合はクラウド版のnode-redでなく、rapberrypiやWindowsの場合、オンプレミス版のnode-redが必要です。

S8-0.jpg



S8-2.jpg

node-redのフロー全体は上記です。injectionノード、functionノード2つ、serialノード、デバッグノードを配置します。dashboardに表示させる場合は下半分のfunctionノード、ボタンとチャートを追加します。


S8-1.jpg

injectionノードは2秒ごとにイベントを発生させるように設定しました。


S8.jpg

測定指令としてS8センサに送るシリアルデータを設定します。

S8-4.jpg
serialノードは9600bpsに設定します。COMポートの番号はデバイスマネージャ等から番号を確認して選択します。

S8-5.jpg

functionノードでserialノードから受信したデータをCO2値に変換します。

S8-7.jpg

dashboardに表示させる場合は値をそのままpayloadに入れるため、functionノードで上記のような値変換を行います。



S8-6.jpg

実際にこのような感じでS8センサの値変化を可視化できました。
今回のnode-redフローファイルは
です。

S8センサを使ってみて、非常に感度が高く、微小な変化にも大きく反応するため、室内環境等を継続監視するためには平均化やローパスフィルタ等を通した方がよいと思いました。方式が異なるため、単純比較できませんが、以前に紹介したZMOD4410ではそのような処理含めて実装されているため、簡易的に室内環境を継続監視する目的では向いていると思いした。今後はS8含めて複数のCO2センサを同時比較してみたいと思います。
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする