鉛バッテリー充電器

・寒くなってエンジンがかかりにくくなってきたのでバッテリの充電器を作る
・手抜き回路の前作をマイコン制御方式に変更する

・バッテリーの電圧より高い電圧をかけると充電できる
・充電電圧を高くするほど充電電流が大きくなり早く充電できる
・電流を流しすぎると回路の定格を超えるので電流制限する
・充電電圧を上げすぎるとバッテリーに繋がっている回路(自動車のECU等)に悪影響があるので充電電圧は14.5V程度で頭打ちにする
・バッテリーを取り外し充電すればバッテリーが耐えられる電圧まで充電電圧を上げられる(今のところこれは必要なさそうなので機能に盛り込んでいない)

充電器の仕様:
 ・充電電圧最大14.5V
 ・充電電流はロータリースイッチで可変。1,2,3,4A->4Aはパルス充電化のため廃止。小型車のバッテリーはそんなに電流流れない
 ・設計上意図していないが電源を入れずにバッテリーに接続すると電圧計として機能する。トランジスターは回路図に無いダイオードがコレクター<->エミッタ間に入っている
 ・パルス充電モードは普通の定電流、定電圧充電の出力を10kHzでON/OFFしているだけ

使い方:
 ・パルス充電モードは表示がPULになっている期間に電池に繋ぐ。守らないと過電流が流れ続けることがある
 ・定電流充電モードも表示がCCになっている期間に電池に繋ぐ。守らないと一瞬だけ過電流が流れることがある


2014-11-29

これを改造する。20年以上前に作った物だと思う。トランスの2次出力をダイオードブリッジで全波整流しバッテリと抵抗を直列接続して充電する。バッテリーは脈流で充電される。ヘロヘロになったバッテリの充電ならこんなテキトー回路で十分。トランスは16V5A

R0022654.jpg

回路図構想
-R4は電子回路部の負荷のつもり。C4の容量を決めるために入れてある。実際はLM317等を使う
-R5はデジタルポテンショメータに置き換える
-U2はLM358等を使う。5V出力ではパワートランジスターを駆動できないので非反転増幅回路を入れてある
-R7が電流検出抵抗。U3の作動増幅回路の出力をMPUのA/Dコンバーターに繋ぐ
-R3はバッテリ
-OUTの電圧も抵抗で分圧してMPUのA/Dコンバーターに繋ぐ(回路図には書いてない)

jyudenkairo1.png

2014-12-01

回路図

eaglesch.PNG

2014-12-04

基板を作る。Press-n-Peelは残り1枚。約8年で19枚使った

R0022701.jpg

2014-12-08

組み立て

R0022715.jpg

2014-12-13

正面パネルの穴開け位置決め

R0022722.jpg

2014-12-14

正面パネル完成。ロータリースイッチは充電電流設定用。このロータリースイッチはケースに組み込むと作りの安さが目立つ。なんだかグラグラしている

R0022729.jpg

パワートランジスターはヒートシンクの裏面

R0022726.jpg

制御回路。ソフトは未完成。ニッカド電池のデルタピーク充電ロジックと異なり過去の充電電圧を気にしないで良いためプログラムは簡単。
1.充電電流が最大でもXXA以上にならない範囲で出来るだけ大きな電流を流して(=充電器の出力電圧を高くして)充電する
2.充電電圧が最大でもXX.XV以上にならないようにする
という2つのロジックだけで良い。電圧が異なるだけでリチウムイオン/ポリマー充電器の物と同じ

R0022724.jpg

2014-12-16

この電流検出回路は正しく動かない。何故か出力が0.7V以下になってくれない。この時バーチャルショートも成り立っていない

R0022735.jpg

SPICEだとうまくいく。LTspiceはLM358が無いのでTINA(テキサスインスツルメンツのSPICE)を使った。opampの電源電圧は19V、入力は14Vと14.005V。マイコン制御なのでローサイド側で電流検出しても良かった。ローサイドに電流検出抵抗を入れると電流検出抵抗の電圧降下分だけ充電電圧に誤差を生じるがマイコン制御なので正味の充電電圧は計算できる。ローサイド電流検出は非反転増幅回路にすれば良いので抵抗は2本で済む。部品代は¥2の差しか無いが抵抗の誤差が増幅誤差になるので少ない方が抵抗値をテスターで調べる手間が少なくなる。LM358はオフセット電圧が意外と大きいので変更してみようか

R0022736.jpg

2014-12-19

オペアンプをNJM2119Dに変更してみる。0.7Vが0.15Vになった。但しこれでも使い物にはならない。回路を変更してローサイドで電流検出することにする。片面基板は部品の回収が容易なので基板は作り直し

R0022745.jpg

NJM2119Dで実験

R0022749.jpg

基板作り直し。1枚転写失敗。酸化防止剤がきれいに落ちていなかった感じ

2014-12-20

電源ICの発熱が大きいのでヒートシンクを付けた

R0022765.jpg

最大充電電圧は14Vなので車に搭載したまま充電可能。これ以上の充電電圧にするときはバッテリを外して充電する必要がある。ハードの制約上17.V以上にはならない

R0022768.jpg
最終形の回路図とプログラム
ファイル ファイルタイプ 添付ファイルの解説
jyudenkikairozu.png PNG 回路図。2つセットになっているX印はジャンパー線を配線するためのランドなので回路図上は意味が無い
jyudenki_pB_ino.zip arduino arduinoスケッチ
jyudenkiPB_eagle.zip EAGLE EAGLE4.15用 基板レイアウトは最終形とは異なる

2014-12-23

バイクのバッテリーを充電してみる

R0022784.jpg

充電電圧14Vではこれだけしか電流が流れない。シャッタースピードが速いので電圧表示の中央が抜けた。表示は13.9V

R0022779.jpg

アイドリング時の電圧は14.5Vあるので14.5Vに電圧変更してみる

R0022777.jpg
14.5V版のプログラム
ファイル ファイルタイプ 添付ファイルの解説
jyudenki_pB1223.zip arduino arduinoスケッチ 修正版

2014-12-24

車のバッテリーは12.16Vまで電圧が下がっていた。バイクがあるので荷物を運ぶとき以外に乗らなくなっている。エンジンはギリギリかかるレベル。新車の時から交換していないのでもうそろそろ寿命。来年の4月で5年目。エンジンアイドリング時の電圧は14.8V

R0022789.jpg

充電初期には3A程度流れるが10分程度で電圧が上がり2Aも流れなくなる

R0022792.jpg

2016-01-07

ヘロヘロになった電池はパルス充電すると回復することがあるらしいのでソフトを変更してみる

R0028167.jpg

周波数10kHzの時の出力はノコギリ波。オペアンプが遅い。LM358のスルーレートはデータシート上のグラフから計算して0.5V/μS。何故か数値はデータシートに掲載されていない

R0028171.jpg
R0028173.jpg

NJM4580に差し替えた。これは5V/μS。10倍速い。Arduinoの処理速度の限界は出力周波数30kHz

R0028174.jpg

2016-01-08

電池両極の充電波形。電池を繋いだ状態では電圧が大きく振れるわけでは無いのでオペアンプのスルーレートは余り関係なくなってしまった。スルーレートはON/OFFの比率(=デューティー)への影響の方が大きい。いじっていたらNJM4580が壊れたのでLM358に戻した。スルーレートの影響でデューティーが変わってしまうがソフトで変更出来るので特に問題にはならない。充電電流の最大値を2A、最大電圧を16Vに設定してしばらく充電してみる。16Vの電圧制限より2Aの電流制限の方が先に来るので電圧制限は意味なし。電流は最大値なので50%デューティーなら平均充電電圧は1Aになる

R0028181.jpg

NJM4580

R0028185.jpg

LM358。ソフトはほぼ同じ

電流波形。CTセンサーで電流->電圧変換している。センサーは3000巻き終端抵抗は10k(もう少し小さい方が良い)なのでピーク電流は1.8A程度

R0028191.jpg
R0028187.jpg
パルス充電対応プログラム
ファイル ファイルタイプ 添付ファイルの解説
jyudenki_pB_inoV2.zip arduino 4Aの定電流充電モードを廃止してパルス充電モードにした
jyudenkiPB_schv2.pdf PDF 回路図

1時間半で充電を止めた。バッテリを元に戻してエンジンをかけてみたが特に大きな変化無し。電極の状態はこのページの2016-01-08の写真を参照

R0028197.jpg