はじめに
岡山の鋳物メーカー、アサゴエ工業株式会社 製造部の小野です。
エンタープライズIoTLTなどで、度々弊社の取り組みを発表させていただいています。
・エンタープライズIoTLT vol18 @オンライン
https://www.youtube.com/live/eOYEZn5X5ns?si=GbeGidhT7TYD-SRb
せっかくIoTLT Advent Calendarに参加させていただいたので、今回は完全私用の、自宅寝室のIoT化について紹介しようと思います!
経緯
妻が「睡眠時間は確保しているのに、なんとなく疲れが取れない」と話していたのがきっかけで、まずは寝室の環境情報を取得してみようと思いました。
最近はApple Watchなどスマートデバイスで睡眠の質を測定する話もよく聞きます。
「IoTセンシングでもできるんじゃね?」と思い、いろいろ考えてみることにしました。
準備
購入したものは以下です。
計2万円ほど…
今回は自宅で余っていたRaspberryPi4も使いました。
構成
ざっくりのイメージ図です。
■Raspberry Pi
寝室の各所にセンサーを設置するため、データの収集・管理に使用しました。
データ収集にはMQTTを使用し、ラズパイ上にブローカーを立てています。
また、データ管理用にInfluxDBを、可視化用にGrafanaサーバーもセットアップしました。
■ATOM Lite
M5シリーズの中で安価なこちらを使用。
各種センサーからI2Cやアナログ出力を取得し、MQTTクライアントとしてラズパイにデータを送信します。
■ESP32 PSRAM Timer Camera F (OV3660)
画像認識で寝相データを取得できたら面白そうと思い購入しました。
Webカメラサーバーを立て、ラズパイで映像を取得できるようにしています。
■各種センサー
・環境系
温度、湿度、CO2濃度、気圧
・マイクユニット
いびきも記録したい
・6軸IMUユニット
枕の下に設置して寝相データ取得
・赤外線送受信ユニット
エアコンと照明の制御用(環境情報や時刻と組み合わせて自動制御予定)
制作で特にこまったところ
赤外線で制御可能な照明を探し、ニトリでそれっぽいものを見つけて購入しました。
リモコンで操作できるLED電球 リモコン付(LE-01)
https://www.nitori-net.jp/ec/product/8371134s/?srsltid=AfmBOorW3HGdKXhd0Esuy1UTsV7_EWdx5Jm3TgPTYyze9a1Box-aa2eG
しかし、赤外線ユニットで信号を取得しようとしたところ、エアコンの信号は問題なく受信できるのにコレはできず…。
いろいろ調べてみると、赤外線ではなく独自規格の無線通信で制御されているそうで、赤外線送受信ユニットは使えませんでした。
2個購入し5000円近く使っていたのでそのまま引き下がることもできず、
仕方なくリモコンを分解してタクトスイッチをラズパイで直接制御できるようにハンダ付けしました。
↓リモコン
無理やり感はありますが、無事制御できました。
その他、6軸IMUユニットのライブラリで指定されているピン情報がATOM LiteのGroveポートと異なって沼にはまったり、
赤外線送受信センサー用のライブラリがESP32の最新ボード情報に対応しておらず沼にはまったり、
Type-Cケーブルが足りなくなって買いに行ったりしましたが、無事動作するところまで持っていけました。
作成物
↓寝相データ収集用カメラ
お見苦しくて恐縮ですが、映像中で動きがあった個所とその方向、大きさをデータとして蓄積するようにしています。
↓6軸IMUユニット
↓マイクユニット
↓赤外線送受信ユニット

ON、OFF信号をラズパイ→ATOM LiteへMQTTで飛ばして制御しています。
↓環境データ含めてGrafanaで可視化

気圧って室内だとこんなもん?など疑問は多々ありますが、ひとまずデータ取りできています。

DB登録するプログラムは、ひとまず手動起動しています。
systemdで自動起動できればと思ってます。
まとめ
センサーの数が多く、作ったり設置したりが大変でしたが、ひとまず動いてよかったです。
センサーで取得したデータの中で、睡眠の質に直結していると感じたのはCO2濃度でした。
二人で1時間ほど部屋にいるだけで、あっという間に2000ppm以上になってしまいます。
換気については今後検討したいと思います。
その他、エアコンや照明の自動制御や、環境データと寝相データの分析も進めていきたいです。
ここまで読んでいただき、ありがとうございました!
追加
iPadで寝っ転がりながらGrafana観れるのが便利だと思いました…。











