※2022年12月14日更新
Node-REDで可視化する形態に変更しました。
<講座内容>
Arduino互換WiFiマイコン「ESP32」を搭載したM5Stackの「ATOM Lite」をメインモジュールとして、NDIR(非分散型赤外)方式の二酸化炭素のセンサとしては安価な「MH-Z19C」で計測したCO2濃度を有機ELディスプレイに表示するCO2濃度計を作ります。
このCO2濃度計はIoT標準のプロトコルであるMQTTに対応しており、ドイツのMQTTブローカーサービス「HiveMQ Cloud」を使ってセキュアにデータを送受信できる環境を作ります。
MQTTのデータの可視化にはNode-REDを使用します。PCにNode-REDをインストールし、ダッシュボード機能を使ってブラウザでビジュアルに見ることができるようにします。また、localtunnelというツールを使うことで、PCが家にあっても外出先から簡易的にダッシュボードを見ることができるようにします。
<デモビデオ>
https://youtu.be/QrbdfXuGees◆IoT CO2濃度計の特徴
・マイコンモジュールにはESP32を搭載したM5Stackの「ATOM Lite」を使います。
・CO2センサには「MH-Z19C」(検出範囲:400〜※10,000ppm)を使います。
※デフォルトでは5,000ppmですが、コマンドで10,000ppmに拡張しています。
・明るい有機ELディスプレイ(OLED)を使っているので視認性が抜群です。
・Cdsセルを利用して、暗くすると有機ELディスプレイ(OLED)も消えるようになっています。
・MQTTブローカーには、ドイツのMQTTブローカーサービス「HiveMQ Cloud」の無料枠を利用します。
・Node-REDをPCにインストールして、ブラウザでCO2濃度を見ることができるようにします。
・プログラムは私が用意したものを使いますが、ソースコードを提供していますので後で自分の好きなように変更することができます。
◆使用する機器・サービス・アプリのサイト
・M5Stack ATOM Lite
https://akizukidenshi.com/catalog/g/gM-17209/・CO2センサーモジュール MH-Z19C
https://akizukidenshi.com/catalog/g/gM-16142/・HiveMQ Cloud
https://www.hivemq.com/mqtt-cloud-broker/・Node-RED
https://nodered.jp/about/・localtunnel
https://theboroer.github.io/localtunnel-www/◆Arduinoについて
Arduinoはワンボードマイコンの1種で、Arduino IDEというプログラム開発環境をパソコンに入れてプログラミングを行います。
今回は私が用意したプログラムを使用するのでC++の知識が無くても大丈夫ですが、プログラミングを勉強すると色々な応用を行うことができるようになります。
<教え方>
マンツーマンで行います。
わからないことは恥ずかしがらず、レッスン中にどんどん聞いてください。
<持ち物>
・PC(USB Type Aが必要です。アダプターでも可。)
Windowsは10か11
MacはVenturaかMonterey、Big Sur、Catalina
<時間制相談で深掘りできます>
●講座のフォローアップ!回路やプログラムを解説します。
https://www.street-academy.com/onetime/services/2547
マンツーマンなのでこちらの進捗に合わせて丁寧に説明いただきました。
センサー値でTapoをON・OFFできるということでいろいろと応用が利きそうだと思います。
非常に面白い講座をありがとうございました。
受講にあたっては
2.4GHz無線のSSIDとパスワード
Tapo登録時のメールアドレス、パスワードを手元に置いておくとよいでしょう。