2年前にこんな記事を書きました。
suzu-ha.com
この時は、スマートメーターから消費電力データを取得してログファイルに書き出しただけですので、実用性はイマイチでした。
今回、2年越しで実用的なツールになるよう頑張ってみました。このような画面が出せるようになってます。
作ったものの概要図です。
スマートメーターからデータ取得する部分は前回のスクリプトではなく、kjmat様のkeilogを使用しています。
スマメからのデータ取得とログ出力、スレッドが止まってたら再起動までやってくれる、ありがたいコードです。
github.com
データベースにはinfluxdb、ログファイルを取り込むためのエージェントはtelegrafを使用しました。
telegrafを選んだのは「influxdbと同じ開発元の製品だから多分相性がいいだろう」程度の理由です。
グラフ表示部分はGrafanaを使用しました。
Zabbixも試しましたがなかなか思うようなグラフを作成させることができず、Grafanaに変更しました。(私がZabbixを使いこなせてないだけかもしれませんが…)
SBCはRadxa ROCK 4C+を使用しました。
手元にROCK 4C+、Raspberry Pi 4BとRaspberry Pi Zero 2 Wがあって、汎用性の高いRaspberry Piは温存しておきたいなぁという意図からROCK 4C+を選択してます。
(実際、GPIOを使うなどハード寄りのプログラムは、
ラズパイだとすんなり動くのにROCK4&Debianでは小細工しないと動かないこともあるので…)
radxa.com
なお、ROCK 4C+で動作させたときCPUは90%前後アイドル、メモリは4GB中2GB空きだったので、ラズパイ3Bでも十分動かせると思います。
Wi-SUNモジュールは2年前の記事でも使用した、テセラ・テクノロジーのRL7023 Stick-D/IPSです。 www.tessera.co.jp
4回に分けて投稿していきます。
①概要編(この記事)
②keilogでスマートメーターからデータ取得編
③influxdb&telegrafでデータ取り込み編
④Grafanaでグラフ表示編