環境センサによる自動制御

最終更新日:2020年4月1日

CO2センサとしてAMS社の“CCS811”に興味を持ちました。

室内の炭酸ガス濃度を監視して、一定濃度(例えば1000ppm)を超えたら換気を促す或いは強制換気するという仕組みをデモンストレーションとして構築してみたいと思いました。
WebBrowserのパタンを発展させてもいいと思いますが、ブラウザでグラフ表示するというのがなかなかうまくゆかないので、Modbusのパタンを発展させて構築してみたいと思います。

使用するセンサモジュールはCJMCU-8128を検討します。I2Cのチップが3つ搭載されています。
※他社のモジュールではCCS811+BME280という組み合わせモジュールもあります。多分BME280とBMP280の価格差が大きくHDC1080が十分安いのだと思われます。

情報としては上記5つの情報を扱い、CO2濃度が閾値を超えたら、換気のためにサーキュレータを起動、平常値に戻ったらサーキュレータを停止という仕組みを設けます。サーキュレータの代わりに窓を開けるとかいろいろ応用が出来ます。農業ハウス内であれば換気扇とかに代替できそうです。
事務所内であればエアコン操作も検討したいです。赤外線リモコン制御を行うことになります。Arduinoのサンプルスケッチには学習リモコンの仕組みを示すモノがあり、対象エアコンのリモコンから必要なコマンドをリバースエンジニアリングしてプログラム内に納め、入力情報を元にコマンド送信出来るようにすることになるのかと思います。
※エアコンのリモコンコマンドはテレビのコマンドのような単純なモノでは無い事が先人の記事から判っています。リモコンが内部で保管している情報(表示している情報)を変更点と共に数値データ一式として送信している様です。そのためコマンド列が長いです。


このコードを実行するに当たり追加が必要なライブラリは、


オブジェクト自体はベクター殿のストレージをお借りしています。

https://www.vector.co.jp/vpack/browse/person/an051501.html



免責事項

本ソフトウエアは、あなたに対して何も保証しません。本ソフトウエアの関係者(他の利用者も含む)は、あなたに対して一切責任を負いません。
あなたが、本ソフトウエアを利用(コンパイル後の再利用など全てを含む)する場合は、自己責任で行う必要があります。

本ソフトウエアの著作権はToolsBoxに帰属します。
本ソフトウエアをご利用の結果生じた損害について、ToolsBoxは一切責任を負いません。
ToolsBoxはコンテンツとして提供する全ての文章、画像等について、内容の合法性・正確性・安全性等、において最善の注意をし、作成していますが、保証するものではありません。
ToolsBoxはリンクをしている外部サイトについては、何ら保証しません。
ToolsBoxは事前の予告無く、本ソフトウエアの開発・提供を中止する可能性があります。

商標・登録商標

Microsoft、Windows、WindowsNTは米国Microsoft Corporationの米国およびその他の国における登録商標です。
Windows Vista、Windows XPは、米国Microsoft Corporation.の商品名称です。
LabVIEW、National Instruments、NI、ni.comはNational Instrumentsの登録商標です。
I2Cは、NXP Semiconductors社の登録商標です。
その他の企業名ならびに製品名は、それぞれの会社の商標もしくは登録商標です。
すべての商標および登録商標は、それぞれの所有者に帰属します。