TI(テキサス・インスツルメント)社製の電流電圧モニタ専用IC、INA226を使用したモジュールです。
INA226はすばらしいICなのに、モジュールはちょっと残念な設計でした。
進行中の「マイ・パワーウォール プロジェクト」の電流電圧モニタの部分できるまでの試行錯誤を書いてみます。
#パワーウォール #powerwall
INA226というIC
- 測定可能電圧:プラスマイナス36V
- 測定可能電流と精度:シャント抵抗の値により、
100mΩ ⇨ 測定範囲=± 0.82A、分解能=0.025mA
25mΩ ⇨ ± 3.2A、0.1mA
2mΩ ⇨ ± 44.23A、1.25mA - 電流測定は、ハイサイド、ローサイドいずれでも測定可能
- 出力:I2C (アドレス設定可)
- 電源:3.3V(2.7~5.5V) / 0.42mA
- 単体の価格:1.5~2 USD
- データシート:http://www.tij.co.jp/jp/lit/ds/symlink/ina226.pdf
現在実験中のリチウムイオン電池(Li-ion)による充放電システムは、当面、21V~29V、1~2A程度となりそうなので、測定範囲は合致しています。
ただし、パッケージが VSSOP (DGS) という0.5mmピッチの10ピンなので手ハンダは難しく、なんらかのブレークアウトボードが必要となります。それでこのモジュールを入手しました。
このモジュール
機械実装されたハンダ精度のことを考えると、比較的安価(500円くらい)で入手できるので手軽です。
ところが、シャント抵抗として実装されているのが100mΩで、しかも汎用SMD(面実装)のものでした。
100mΩだと、電流測定の分解能は上がるのですが、測定範囲が狭くなります。抵抗器としての誤差はおそらく5%くらいかと思われますが、測定回路では誤差がさらに拡大する可能性があります。
実際、仮組み時に測定データが、いくつかのマルチメータの値やアナログ電流計の値と異なっていました。ソフトウエア的に補正することも考えましたが、納得できる策とはいえません。
INA226を100mΩのシャント抵抗で使用する場合は仕様上0.8A程度までしか測れないことになっているのですが、1.2Aくらい流れたとき、ICがポンと音をたて少し発煙して いとも簡単にはぜてしまいました。もう少し耐性があるかと思いましたが、入力レベルは厳密に管理する必要がありそうです。
それではと、新しいモジュールで抵抗を同じく汎用タイプの2mΩに換装したところ、ICが破壊する心配はなくなりましたが、やはり精度には不満が残りました。
ちなみに、後述のストロベリーリナックス製では、2mΩの高精度抵抗が使用されていて、基板パターンや実装方法にも配慮がされているようです。
シャント専用の抵抗
そんななか、なにやら良さげなシャント抵抗を見つけたので入手してみました。(ヤフオクにて約300円/個)
調べてみると、ドイツのイザベレンヒュッテ社製です。
・日本の代理店による テータシート
・1個売り時の国内価格は 1,800円くらい(定価?)
仕様上、ヒートシンクなしなら、1.5W(28Aくらい)、ありだと10W(70Aくらい)流せます。
今回の規模ではたぶん不要なヒートシンクも付けて実装・接続してみました。
元のSMDの抵抗は撤去して、外付けにしたシャント抵抗の電圧出力をモジュールの入力端子に接続しました。
するとどうでしょう!と言いたくなるくらい、正しく測れているようです。
オーバースペックではありますが。
表示・クラウドへ送信
私的に進めている「My Power Wall(マイパワーウォール)プロジェクト」では、IoTの考えも取り入れたいので、単体で表示する他、クラウドへも接続してみます。
I2Cで出力されたデータは、ESP8266の開発ボード(ESP8266MOD = ESP-12E とシリアルチップ CH340G 搭載の D1 mini V1、ArduinoIDEを使用するとポートに制約あるもののArduinoとプログラム互換あり)で受け取り、
- 同一I2C上に接続したOLEDディスプレイに表示
- Wi-Fiからクラウドサービスの Cayenne に送りブラウザからリアルタイムに確認
[左のインジケーター:電流(充電中ならプラス、放電中ならマイナスで表示)、右:電圧]
できるようにしました。
マイパワーウォール(実験版)の電流電圧モニタ部
バッテリー直近のプラス側で測定しています。
いつまでもブレッドボードで、というわけには行かないですが、なんとなく手が回りません。
電流電圧モニタ部の仕様
- 測定電圧範囲:±36V
- 測定電流範囲と精度:± 44.23A、1.25mA
- シャント抵抗は、70Aまで可
- 測定間隔:5秒
- 電源:5V(Micro-USB B) 約60mA
参考にした情報
このモジュールの他にも、
などがあり、こちらは製品説明など日本語で充実しているので、参考にさせていただきました。
ただ、ちょっとコスト高です。(1個 1,000円、税別・送料別)
また、先達の足跡 や
Arduino用のライブラリを書いてくれたポーランド人(?)の記事 を
見つけたので活用させていただきました。
こちら も 少し参考になりました。
購入先:aliexpress
価格:4.35 USD・shipping free
-
購入金額
483円
-
購入日
2017年06月12日
-
購入場所
Aliexpress
jakeさん
2017/07/22
やや高いのは事実ですが、結線などがしやすいのはメリットでしたね。
ちばとどさん
2017/07/22
Edison もなつかしい存在になりました。
ストロベリー・リナックスのは、よく考えて作られていて、「~だけはある」感じですよね。
今回は少々遠回りしたような気もしますが、INA226のデータシートを普段よりよく読んだり、このプロジェクトにちょうどいいシャント抵抗と出会えたりしたので、まあ、よしとしましょうか。