PSOC4 電池容量チェッカー作成

画像

















PSOC4 KIT(CY8CKIT-049-42XX)を使って電池容量チェッカーを作成しました。
回路ブロックは以下の通りです。


画像















■回路構成を説明します。
電池フォルダと動作状況を示すLCDとUSBケーブルと制御基板で構成されています。
回路はPSOCで2KHzのPWM信号を生成し、それを100KΩと1uFにてローパスフィルタを通してDCに変換して、NチャネルMOS FETのゲート電圧を制御して電池に負荷をかけます。負荷電流は電流センス抵抗(0.5Ω 2W)にかかる電圧をPSOCのADコンバータに接続して検出し、フィードバック制御でPWM幅を変更して電流を一定に合わせます。MOSFETの特性上、印可するゲート電圧に応じてドレイン電流が流れるので、電圧を制御することでドレイン電流が制御できます。バイポーラトランジスタの場青はベース電流が必要なので電流計測で誤差がでますが、MOSFETを使うことでこの誤差が発生しないので、適しています。
■回路素子について
自分は手持ちの関係でFAIRCHILD製 FQP4N20L   VGS=2.5V 1Aを選定していますが、秋月に以下の代替え品があるようです。ゲート電圧3Vでドレイン電流2A以上流せるFETなら使えると思います。

FKI06051 サンケン VGS=3.0V 10A(秋月販売有)
2SK2232 東芝 VGS=3.0V 10A(秋月販売有)

放熱器は秋月の30PC030-01030 (5Wで+60℃換算) を使用
■あと、短絡保護で、電池のケーブルの間に4A程度のヒューズを入れた方が安全。
 リセッタブルヒューズでもOK.
 

■仕様は以下の通り
PWM周波数 :2KHz
PWM分解能 :0.5mV
LPF時定数 :100KOHM+1uF
電流センス抵抗値 :0.5OHM
電池電圧分圧:約1/10 :11/111(最大読み取り電圧10Vまで)
VREF:PSOC4内蔵VREF :1.024V設定
ADコンバータ 12ビット :8回加算平均
USBシリアルボーレート :115.2Kbps
I2C LCD :動作状態確認用(秋月AQM0802A-RN-GBW)
LED :動作状態確認用(放電中1秒毎に点滅)
放電停止電圧
Ni-H 2CELL :1.75V
Ni-H 4CELL :3.40V
Li-ion 1CELL :2.60V
Li-ion 2CELL :5.20V(角型のNI-Hも一応このモードで確認可能)
放電電流設定 100mA-1000mA /100mAステップ  50mA / 1200mA/1500mA/1800mA/2000mA

プログラムでの補正について
電圧については分圧抵抗の補正を入れています。
また、電流については実測値から補正を追加しています。
電流が低いところが、高めになっているので、電流設定で補正をかけています。

■操作方法
1)USBケーブルを接続するとすぐに初期化され、USBシリアルからのコマンド待ち状態になります。
2)デフォルトではLi-ion 1CELL 電流設定1A設定となっています。Rを入力すると放電開始されますが、他の電池の場合は、電池種別 A:Li-ion 1セル / B:Li-ion 2セル /C:Ni-H 2セル D:Ni-H4セルを選択します。
3)次に電流設定は I を入力すると電流モードとなるので、数字を入力すると 100mA~1A設定されます。
4)Rを押すと放電開始します。1秒毎にUSBシリアルに時間(秒)と電圧、電流を出力します。
5)設定した電池種類毎に終止電圧がきまっています。終止電圧以下になると放電を停止します。

■設定値と実測
●電流値実測
テスターの電流計で電流を測定しました。
50mA  測定値:50mA±1mA
100mA 測定値:100mA±1mA
200mA 測定値:200mA±1mA
300mA 測定値:300mA±1mA
400mA 測定値:400mA±1mA
500mA 測定値:500mA±1mA
600mA 測定値:600mA±1mA
700mA測定値:700mA±1mA
800mA 測定値:800mA±1mA
900mA 測定値:900mA±1mA
1A 測定値:1000mA±1mA
容量測定の実用上は問題ない安定度です。

●電池容量測定実測(単三 NI-H 2本 900mAh 半年使用後)
公称容量より少しすくなかったが、通常のNI-Hの放電特性がとれた。
teratermのログファイルより抜粋
時間(秒),電圧(mV),電流(mA)の形式
3秒で安定電流になる。(INT表示なので小数点以下切り捨て。四捨五入表示の方がよいかも)
START
1,2820,30
2,2734,295
3,2732,299
4,2731,299
5,2734,299
6,2735,299
7,2736,299
8,2734,299
9,2734,299
(略)
9942,1738,299
9943,1734,299
9944,1732,299
9945,1731,299
9946,1728,299
END
画像
















●電池容量測定実測(単三 NI-H 2本)

画像

















●電池容量測定実測(Li-ion 1セル NEC  MR04LN用)
モバイルルータの電池パックの容量をしらべてみました。
約1年つかって公称2300mAhが実測2171mAhで少し劣化はあるけど、まだまだ現役の電池です。
画像














●まとめ
このように、複雑な回路を組まずに、MOSFETと抵抗、コンデンサを接続するだけで電池容量チェッカーがつくれました。PSOC4のKITは$5ドルボード(CY8CKIT-049-42XX)ですが、USBシリアルも付属しているので、これだけで作れてしまいます。国内では秋月か、mouser(海外発送)経由で購入できます。(ただし、書き込みはPSOC5 KIT CY8CKIT-059 1500円 秋月 のUSBデバック部miniprog相当で使える を切り離して書き込みに使っています)
あと、今回は、ADコンバータで電流値を読んでFETのゲート電圧制御しましたが、PSOCはオペアンプ内蔵しているので、回路構成を変更して、PWMで設定電流に相当する電圧をつくって、電流センス抵抗と比較回路にしてFETのゲート電圧を制御するとプログラム制御は不要になります。次は回路変更してこちらに作り直してみます。


■ソースコードダウンロード先
あまり、きれいなソースではありませんが、今回作ったプログラムです。
よろしければ無保証ですが、参考にしてください。

PSOC4ソースコードダウンロード  






この記事へのコメント

この記事へのトラックバック