2017年3月6日月曜日

aitendoのリチウムポリマー電池を使ってみる

お久しぶりです。

最近、ふと思い立ってリチウムポリマー電池を買ってみることにしました。
リチウムポリマー電池とは、 リチウムイオン電池の一種です。電池の電解質にポリマー高分子を使っているため、リチウムイオン電池に比べて比較的安全なようです。

リチウムイオン電池の最大の魅力と言えば、そのエネルギー密度です。ニッケル水素電池などと比べると、非常に小型軽量で高容量の電池が作れるため、最近のパソコン、スマートフォン等の持ち運び性が重要な電子機器の電池はたいていリチウムイオン電池ですよね。

しかし、リチウムイオン電池はそのエネルギー密度の大きさや電解液が可燃性などの理由から、ニッケル水素電池などに比べてかなり危険です。よく燃えます。最近ではSamsung Galaxy Note 7のバッテリー発火事故は記憶に新しいですし、そのちょっと前にはボーイング787のバッテリー発火事故なんていうのもありました。



特に過充電は非常に危険で、上記の動画のように勢いよく火を噴きます。

過充電による発火メカニズムなどの詳しいことは省きますが、このような事故を起こさないためには充放電をしっかり管理してあげる必要があります。

というわけで、世の中にはリチウムイオン電池の充電を管理するICというのも出回っています。それを使えば、下手に自分で回路を作ったりプログラムで制御するより安全にリチウムイオン電池が扱えるでしょう。

比較的入手性の良さそうなリチウムイオン電池(リチウムポリマー電池)と充電制御モジュールは、aitendoで売っています。
上に挙げたのは300mAhの電池ですが、aitendoでは3種類(110/300/850mAh)のリチウムポリマー電池を売っているようです。

ちなみに、実際に買ってみて驚いたのですが、この電池思っていた以上にコンパクトでした。すげえ。


さて、肝心の充電制御モジュール「CHR4056-MCU1A」ですが、aitendoのサイトには具体的なことが「TP4056使用」としか書いてなくて、「過電流出力保護チップ搭載」と言うもののその具体的な型番も書いていなければ、モジュールの回路図も使い方も書いていません。さすがaitendoクオリティとでも言うところでしょうか…。せっかくですので、買ってみて回路図を起こしてみました。



たぶんこんな感じです。コンデンサの容量はわかりませんが、容量が重要なコンデンサはあまりなさそうです。

TP4056の周辺はTP4056でググるとよく出てくる感じの回路です。電源5Vとバッテリー陽極の間に入って充電電流をコントロールしてくれます。データシートを見ると詳しく書いてありますが、電圧が低いうちは定電流制御をし、電池の電圧が4.2Vに達すると定電圧制御をしてくれるようです。
定電流制御をする電流はR3で決まります。最大1Aで、その時の抵抗値は1.2kΩになります。私はUSBを想定して400mAの3kΩに取り換えました。

さて、問題の過電流出力保護についての回路です。
これには2つのチップが使われていますが、DW01というICのほうがその頭脳になります。FS8205AはただのFETです。
ただのFETではあるのですが、2つFETが、しかもドレイン同士がつながっているへんてこな回路になっています。ここでポイントになってくるのがこのFETに存在する寄生ダイオードです。DW01がOC端子をHigh(>Vth)、OD端子をLow(<Vth)出力すると、上記回路図の左側のFETがONになり、右側のFETはOFFとなります。しかし、寄生ダイオードを経由して2,3番ピンから6,7番ピンへの電流ならばは流すことができます(逆方向は無理)。すなわち、充電する方向のみへの電流を流すことができる状態になっていると言えます。
逆にOCをLow、ODをHighとした場合は放電する方向のみに電流を流せまし、両方Highにすれば両方向へ電流が流せます。もちろん両方Lowにすれば両方向電流を止められますよね。なかなか面白い回路です。

OCのみHighになった場合の電流方向

充電や放電を止めたり許可したりする方法はわかりました。では、どうやって電流を検出しているのでしょうか。
ヒントはCS端子にありました。
FETにはON抵抗がありますから、両方のFETがONになっていると仮定すると、CS端子は放電時にはGND+2×R_on×Iの電圧がかかります。この電圧を測ることで過電流を検出しているようで、GNDとの電位差が150mV以上を10ms、または1.35mVを300usで電流を遮断するように作ってあるそうです。
データシートを見るとFS8205AのR_onは20mΩ程度なので、およそ3.75Aの電流で過電流検知をしてくれる、といったところでしょうか。

ついでに、このICはVCCを測ることで過充電と過放電も監視してくれているようです。4.25Vで過充電検知、2.40Vで過放電検知をするようです。
なかなかに賢いICですね。

ちなみにですが、R5とC2の回路はリプル除去(ローパスフィルター)が目的のようです。負荷変動などで電池の出力電圧が変わっても、DW01に与える電源電圧の変化をできるだけ抑えるようにするために付けていると解釈できます。


なかなか素晴らしいモジュールだということがわかりました。
リチウムイオン電池をいじってみたければ、とりあえず電池とセットでこのモジュールを買うとよいでしょう。

しかし、自分の回路に組み込もうとなると、モジュールをそのまま載せたのでは見栄えが悪くなりますよね。あと重要なことなのですが、このモジュールのOUT+、B+などの端子は2.54mmピッチではありません。ピンヘッダなどを付けてユニバーサル基板やブレッドボードに取り付けようと思ってた皆さん、残念でした。

そうすると、皆さんは自前でカッチョイイ充電モジュールを作ろうと考えますよね。大丈夫です、私もそう考えます。ですが、TP4056DW01はaitendoで見つかりますが、FS8205Aはなかなか扱っている場所は無さそうです。
そんなあなたに、代替としてBR8205というFETモジュールがaitendoで売っているのでオススメしておきます。FS8205Aと同じようにFETが縦に2つつながったもので、使用目的も同じく充電制御に使うためのもののようです。R_onはFS8205に比べたらほんの少しだけ高そうですが、まあ問題になるほどではないでしょう。ピン配置やパッケージが違うことにさえ注意すれば、十分に使えそうです。


最初説明した通り、リチウムイオン電池はその容量密度は非常に魅力的であるものの、扱いを誤ると発火などの危険があり、どうしても敷居が高い電池です。

今回は、aitendoの充電制御モジュールを解剖することによって、リチウムイオン電池の充放電管理の回路やICを学びました。これをうまく使いこなせば、より電子工作ライフが充実してきそうです。