Raspberry Pi Pico W と CO2センサーで構築する環境モニタリング・アラートシステム
1. システム概要
Raspberry Pi Pico W と CO2センサーモジュール「MH-Z19C」を組み合わせて、ネットワーク経由で集中管理できるCO2センサーシステムを製作しました。 取得したデータは時系列データベース「InfluxDB」へ送信し、「Grafana」を用いてリアルタイムで可視化・管理を行っています。
2. ハードウェア構成と本体LEDによる簡易通知
メインマイコンにはWi-Fi内蔵の Raspberry Pi Pico W を、CO2センサーには高精度なNDIR方式の MH-Z19C を採用しています。

状態を表す3色のLEDインジケーター
PCやモニターがない場所でも一目で濃度がわかるよう、センサー本体にもLEDを実装しました。CO2の測定値に応じて以下のように色が変化します。
- 🟢 通常(〜799 PPM): 緑色 に点灯
- 🟡 注意(800〜999 PPM): 黄色 に点灯(換気を意識するレベル)
- 🔴 警告(1000 PPM〜): 赤色 に点灯(要換気レベル)
実際に運用してみると、締め切った部屋の中で複数人が会話していると、割とすぐに黄色や赤色のアラートを出すため、視覚的な効果は抜群です。

3. InfluxDB + Grafana によるデータのリアルタイム可視化
センサーから送られてきたデータは、Grafanaのダッシュボード上でリアルタイムに集計・表示されます。

Grafanaダッシュボードの設定
ダッシュボード上では、本体LEDの条件と完全に同期する形で以下のように色分け(Thresholds)を設定しました。
- 800 PPM を超えると表示が 黄色 に変化
- 1000 PPM を超えると表示が 赤色 に変化
集中管理用のモニターにこのダッシュボードを表示しておくことで、館内の「どこの場所のセンサーがアラートを出しているか」が広域から一目で把握できるようになっています。
4. 今後の展開:館内放送システムとの連動
今回のシステムは、ただ数値をグラフ化するだけにとどまりません。 CO2濃度が警告レベル(1000 PPM超)に達した際、 「館内放送システム」 と自動で連動し、音声による換気アナウンスが流れる仕組みも合わせて構築しました。
モニターを見ていない人や、作業に熱中している人にも確実に換気を促すことができる実用的なシステムになっています。
こちらの館内放送システムとの具体的な連携方法や、実装の詳細についてはまた別記事でご紹介したいと思います!