[ラズパイ] 電圧・電流をラズパイで計測する(INA226・INA260)[コーディング編]

前回は、センサーとラズパイの接続まで紹介した。

ここからはやっと、コードを使って電圧・電流を読み取っていこうとおもう。

この辺が参考になるかなぁと思って、まずは上のサイトの通りに接続して電圧表示までしてみた。Muを起動して、Python3で

たぶん、Python2で書かれたコードなのでprintをカッコでくくって変更しただけで動作した。正しい電圧をかえしている様子。しかし、電流値がわからない。計算が必要かぁ。もう、ビット演算とか覚えてないし、何をしているのかよくわからない。リファレンスを読んでみると

このあたりがヒントになりそうだけど、この後の説明がよくわかんない。というか、まじめに読んでたんだけど、だんだんこれ読むならライブラリ探したほうがはやくね?」と手抜き悪魔のささやきが・・・w

やっぱりというか・・・次の瞬間、リファレンスを読むのをやめて、上の2サイトを読んでました。上の方のサイトを読むと、adafruit-circuitpython-ina260のパッケージをPython3にインストールして以下のテストコードを動かすと書いてある。おそらくPython3のみの対応となっているみたいだが、そっちのほうが好都合~。

言われた通り、PyPIによるインストールを指示通りに進める(理解してないw)

↑コマンドを叩いて(叩いてすらないコピペw)インストールできた。とくにエラーもなく進み下のコードをPythonエディッタに入れて実行してみる

電流、電圧、電力が表示された。手抜きで申し訳ないけどライブラリってほんと便利(感謝)。これに手を加えて、csvに記録できるように書いたコードがこれ。CSVの処理とか文字列フォーマット処理は調べた。他言語でも似たような処理なのでささっと書いた。

雑なコードで申し訳ない。日毎にCSVファイルを作り、8時~18時までの計測値を一秒ごとに記録するスクリプト。お弁当箱に入れて、ずっとZeroで動かしているけど特に問題なく動いてる様子。

で、取得したデータをエクセルで処理した結果がこれ。一日中晴天時の計測結果で良好に取れている様子。モバイルバッテリー側で充電を制御しているし、流れた電流がすべて充電で蓄えられているわけではないけど、目に見えるようになったのは、とても分かりやすい。データをためて色々見ていきたいと思う。

2 thoughts on “[ラズパイ] 電圧・電流をラズパイで計測する(INA226・INA260)[コーディング編]

Comments are closed.