2016.02.20
2016年の物欲その11「INA226 I2Cデジタル電流・電圧・電力計モジュール」を使ってRaspberry Piで測定してみた
購入したのは↓I2C接続で電圧&電流測定出来るINA226というチップを使いやすいようにモジュール化したものです。電圧は0~36Vまで、電流は±20Aまで測定出来ます。
INA226 I2Cディジタル電流・電圧・電力計モジュール - INA226 - ネット販売 6 users1イイネ
↓データシート23ページに情報がありますが8か所のアドレス設置部分を2か所ハンダ付けしてショートさせることでI2Cアドレスを0x40~0x4Fまで選べます、今回は0x41に設定しました。↓i2cdetectで確認。

コマンドが通らない時はRaspberry piがI2Cが使う準備が出来ていないのかも
sudo apt-get install i2c-tools
して
sudo raspi-config
の5 Interfacing OptionsでI2CをEnablesに
実際に測定してみました。とりあえずこの前にRaspberry PiでLEDを点灯させてみたのを流用して下記のような回路にしました。↓

ちなみに回路は下記のフリーソフトで作っています。
水魚堂の回路図エディタ 133 users2イイネ

細かいことはよく分かりませんがこのチップは電圧は直接測定して、電流はモジュール内に配置してある0.002Ωの抵抗の電圧を測定することでオームの法則を利用して電流を算出しているみたいです。そのため使用する時にこの抵抗に応じた数値を入力してやる必要があります。下記にLEDをON、OFFして電流と電圧を測定するPythonのスクリプトを示します。
import RPi.GPIO as GPIO import time import commands #電圧測定部分の関数 def GetV(): ?check = commands.getoutput("i2cget -y 1 0x41 0x02 w") ?return (int(check[4:6],16)*256+int(check[2:4],16))*1.25/1000 #電流測定部分の関数 def GetA(): ?check = commands.getoutput("i2cget -y 1 0x41 0x04 w") ?if int(check[4:6],16)<128: ??return (int(check[4:6],16)*256+int(check[2:4],16)) ?else: ??return (int(check[4:6],16)*256+int(check[2:4],16)-256*256) #LEDを点灯するためのセットアップ、GPIO5を出力に設定 GPIO.setmode(GPIO.BCM) GPIO.setup(5,GPIO.OUT) #測定モジュールをセットアップ、0x05にa00を書き込むと電流測定時の値が1→1mAになる check = commands.getoutput("i2cset -y 1 0x41 0x05 0x0a 0x00 i") time.sleep(1) #念のため1秒待つ print str(GetV())+" V, "+str(GetA())+" mA " #LED点灯 GPIO.output(5,GPIO.HIGH) print "LED-on" time.sleep(1) #念のため1秒待つ print str(GetV())+" V, "+str(GetA())+" mA " #LED消灯 GPIO.output(5,GPIO.LOW) print "LED-off" time.sleep(1) #念のため1秒待つ print str(GetV())+" V, "+str(GetA())+" mA " #GPIOを開放 GPIO.cleanup() exit |
電圧は0x02、電流は0x04をi2cgetで読めば帰ってくるのですが値が0xABCDみたいな4バイトの16進数で帰ってきます。しかもリトルエンディアンとのことで上位2バイトと下位2バイトが逆らしいので色々と入れ替えて計算しています。あと電圧は1.25倍したものがmVとのこと。
電流はそのままでmAらしいのですが、4バイト(32ビット)の一番上はプラスマイナスのフラグらしいのでその処理をしています。このへんの変換はunpackを使って出来そうなのですがよく分からなかったので文字列とintで誤魔化しています。
↓出力結果。

電流ゼロがたまにマイナスの値を示すようです。
さて、準備はそろったのでソーラーパネルで遊ぼうかな。
参考にしたサイト
INA226 | SPACE LABORATORY西東京 ロボット研究所 太陽光発電の電力計をラズベリーパイで作ってみた - 太陽光発電の電力計をラズベリーパイで作ってみた - マイブーム 5 users6イイネ BeagleBone Black で作るロギング機能付き電力計 (ソフト編) - Rabbit Note 1 users
Category:#電子工作 Raspberry Pi、Arduinoなど
Follow @fetuin
■ ■ ■ コメント ■ ■ ■
いいっすね!=23
001 [02.20 19:12]あ:課題は絶縁ですね。 ↑(4)
002 [02.23 08:27]j:電気製品のあるセンサーを横取りして電圧見ようと思ってたので、これが使えると思ったけど、意外にインピーダンス低いんですね… 830kΩなんですね。 I2Cだと、測定部位と離したらノイズでうまく読めなさそうだし、信号線引っ張ったら、リード線の抵抗無視できないですね。なんかいまいちな気が… ↑(5)
003 [02.23 10:51]ふぇちゅいん(パパパパ) TW★57:>>002 I2C試してみたら5メートルぐらい余裕だったよ。 ↑(4)
004 [02.23 20:47]j:>>003 それは居間から屋上とか建屋内ですかね? 車とかバイクとかノイズ源がいっぱいあるところだときついかな? 情報どもです ↑(5)
本カテゴリーで直近コメントが書かれた記事
12/12 00:58:「M5Stamp Fly」をドローン初心者が自宅で飛ばしてファームウェア更新から宙返り、UnitCam付けたりとか158001分前
11/29 08:19:おうち秋月電子かよ!自宅の積み電子キットがすごい量に・・・122日前
11/27 09:16:「Raspberry Pi Pico 2 W」は7ドル(1000円)でBluetoothもWifiも使える124日前
07/01 21:34:Arduinoで航空無線が聴ける。Arduino Nanoで制御するエアバンド受信シールド「SCARP」が9500円。2024年10月出荷開始272日前
12/06 16:22:赤外線カットフィルター無しのラズパイ公式カメラv2にフィルター追加481日前
11/03 10:39:オープンソースの家庭用地震計「EQIS-1」(PRIORIS)の完成品が8580円で登場514日前
09/29 11:31:Raspberry Pi 5が発表。4から2倍高速化、M2ストレージおよびPCI-Express2.0対応。外付けでGPUがつなげちゃう?1万円~549日前
08/28 00:48:Raspberry pi zero 2Wが本当に3500円で来た!zeroとの比較581日前
08/22 09:42:Raspberry zero 2Wが送料込み3500円587日前
06/24 23:21:今月の「トランジスタ技術」はラズパイカメラ特集。凄いこの雑誌セミプロの寄稿を集めた同人誌だ645日前
05/06 22:29:Raspberry PiでCPU温度を測定する方法694日前
04/24 23:54:何日間持つか実験。ラズパイzeroにUSBカメラとモバイルバッテリーをつないでリアルタイム配信706日前
04/08 09:45:『これが届く頃、俺の畑は既に死んでいるだろう』ラズベリーを地植えして超絶後悔した人の手記723日前
→カテゴリー:#電子工作 Raspberry Pi、Arduinoなど(記事数:240)
本カテゴリーの最近の記事(コメント数)
2025.03.05ラズパイ公式!ポメラ的な文章作成用ハンドヘルドPC「Micro Journal Rev.2 ReVamp」。Zero 2W搭載
2025.02.27理系フリマ8が3月1日開催
2024.12.10「M5Stamp Fly」をドローン初心者が自宅で飛ばしてファームウェア更新から宙返り、UnitCam付けたりとか32コメ
2024.12.05SeeedのRaspberry Pi zero用Grove Base(HAT)がベストフィットで良い感じ11コメ
2024.12.04Raspberry Piのカメラで静止画を撮る時のオプションメモ:fswebcam/USBカメラ時とraspistill/公式カメラ9コメ
2024.11.28おうち秋月電子かよ!自宅の積み電子キットがすごい量に・・・30コメ
2024.11.26「Raspberry Pi Pico 2 W」は7ドル(1000円)でBluetoothもWifiも使える46コメ
2024.11.17Raspberry Piベースの立体視カメラを作るためのオープンソースボード「StereoPi」15コメ
2024.11.03Raspberry Piとディスプレイでお手軽デジタルサイネージを作れるオープンソースソフト「Anthias」5コメ
2024.10.08Raspberry piは電源ぶつ切りするとすぐにカーネルパニック起こして起動しなくなる。改善方法と復旧方法27コメ
最近の常連さん 10年選手★48 京ポン3B(意地でもエッジ)★40 すきやき★77 ☆★45 ふぇいちゅん★2 F★52 ななしさそ★72 orz★38 らむ★32 ポコ★346 とくめい★82 τ(はじめてのすまほ) TW★52 うにゃ(emでネクサス5→�)★38 ω★105 ふぇちゅいん(年度末まったり) TW★95 名古屋関西人 TW★25 トクメー★17 umomo★2 匿名?★28 JP★26 ふぇちゅいんさんふぁん(ゆるりゆラリー)★101 白★53 特命さん★79 さてさて★30 knob★2 うぃ(滅茶苦茶久しぶり)★70 774(←半角のひと)★83 Dcd★83 謎★80 酔もぐら★41 |