Real-time Energy Usage Monitoring
https://github.com/Miraium/nature-remo-streamlit

Nature Remo E lite ✕ Streamlit ✕ LINE Notifyを活用した電力モニタリング&通知アプリを作りました。Streamlitが周りで流行っている中、データ可視化のお試し用の題材を探していたのが一番のきっかけです。

元々、家に時短系家電がそこそこある都合で、考えなしにあれこれ使っていると停電してしまうのが地味なストレスでした。エアコン、洗濯乾燥機、レンジ、食洗機、電気調理器、電気ケトル、、、時間がない時ほど同時使用しがちですが、電力の使いすぎで停電すると再始動のためのあれこれでかえって手間が増えてしまうという。
そこでNature Remo E liteを設置して、消費電力をモニタリングしておくことで停電しそうな状況になったら通知する環境を整えていました。Nature Remo Eの純正スマホアプリを使用すれば、モニタリングや通知の仕組みは整うのですが、みたい時間軸でグラフを見られなかったり通知も簡素だったりしたので、Streamlit試したいのもあるし、少し手を加えてリッチにしてみよう、という軽い気持ちで開発しました。

作ってみると意外に面白く、つまみを操作してみると、毎日の周期性を確認できたり、家電の挙動が見えたりで、謎の発見がありました。
また、LINEの通知は普通に便利で、実際に2,3度停電予防にも繋がったので作ってみて良かったです。

3日分(72時間分)の消費電力を見てみると周期性が確認できる。朝8~9時頃電力使いがち。
短時間(4時間分)の消費電力を見ていたら、食洗機の洗浄と乾燥の挙動が見えた。
しきい値を超えた際にはグラフと共にLINE Notifyで通知が飛んでくる。適当な熱源を一時停止したりして、しきい値以下になると危険が去ったことも教えてくれる。結構便利。

余談ですが、Streamlitのお試しのついでに、このアプリ開発にはChatGPTを活用しました。自然言語でやりたいことを書いて、ソースコードのベースは基本コピペ。Streamlitで用意されている機能が素晴らしいのもありますが、AIの支援で1日2日でとりあえず動くものが出来上がってしまう体験はなかなかインパクトが有りました。こんな感じでまた何か作っていきたいです。