Takeyuta Lab

マイクロマウスを中心にいろいろ楽しいと思ったことを好きにやるBlogです。Labっぽいこと書きたい。

リチウムポリマー電池の放電特性を学ぶ①

マイクロマウス界隈ほど、リチウムポリマー電池を過酷に使用しつつ、正確に自立制御をかけようとしているところはないのではないでしょうか。

おそらく、DCモータを使ったマウスを作っている方は、Lipoの電圧を監視し、モータに印加したい電圧をPWMのDutyに変換して使用していると思います。
この時、暗黙の前提は、Lipoの電圧を監視した時のLipoの電圧と、モータに電圧を印加しているときのLipoの電圧が同一であること、だと思います。

…さて、本当にそうでしょうか???

今回、真面目に実験と検討をしました。
おそらく、実験してみたいなと思いつつできていない方は多いと思います。
めんどくさがりな皆様に代わって実験しましたのでご報告します。感謝しろください。

  • 試験系

試験系の写真と図を以下に示します。

f:id:Neophile:20190216202425p:plain
リチウムポリマー電池定電流負荷装置

f:id:Neophile:20190216201320p:plain
Analog Discovery2から定電流負荷装置(詳細は後述)にPWM信号を送り、入力されたPWMの振幅とDutyに応じて、定電流負荷装置がLipoに負荷を与えます。
この際のLipoの電圧と、電流値を記録し、Lipoの特性を把握します。
測定は、PWM信号を与えてから3~4秒後くらいに測定しています。

  • 定電流負荷装置回路

回路図を以下に示します。
f:id:Neophile:20190216202133p:plain
試験系の写真を見てわかるように、プリント基板ではなくユニバーサル基板で作りました。
特に理由はありません。久々にユニバーサル基板ではんだ付けしたくなったからです…。
(ただ、やってみて思ったのは、やっぱりプリント基板で作った方が絶対に楽だった…。)
当初は高速のOPAMP使っていたのですが、発振に悩まされて諦めました。
ですので、後ほど電流波形見て頂ければわかりますが、応答が少し遅いです。
矩形派で入力していますが、負荷波形は矩形ではありません。

  • 試験条件

試験したLipoは8種類です。
意味があるのかは分かりませんが、No.2以外は使用前に0.1Aで充電と放電を5回行いました。

供試体一覧

No. 名前 備考
1 Hyperion G5 70mAh 25-50C 新品。最近購入したもの
2 Turnigy nano-tech 60mAh 45-90C 多少使用したもの。2年間放置で膨らんでいない
3 Turnigy nano-tech 60mAh 45-90C 新品。2年間放置で膨らんでいない
4 Turnigy 138mAh 10C 新品。2年間放置で膨らんでいる。開封後電圧を測ったら2.68Vだった
5 Hyperion G3 100mAh 25-45C 新品。最近購入したもの
6 Hyperion G3 100mAh 25-45C 新品。最近購入したもの
7 Hyperion G5 100mAh 25-50C 新品。最近購入したもの
8 Hyperion G5 100mAh 25-50C 新品。最近購入したもの

試験条件表

No. 1 2 3 4 5 6 7 8 9 10 11 12
電流[A] 0.5 0.5 1.5 1.5 1.5 2.5 2.5 2.5 2.5 0.5 1.5 2.5
Duty[%] 100 70 100 70 70 100 70 70 30 50 50 50
周波数[Hz] 0 100k 0 100k 200k 0 100k 200k 200k 1 1 1
  • 試験結果

全て載せるのがとても大変なので、代表例としてNo.1の電池の試験No.4の結果を掲載します。

f:id:Neophile:20190216204139p:plain
リチウムポリマー電池の放電波形

f:id:Neophile:20190216204224p:plain
リチウムポリマー電池のVI特性

  • 考察

つまり、100kHz, 1.5A, Duty70%の時の波形です。
1.5Aというと、放電レートで言えば1500/70=21.4Cです。

電流を流しているときに、内部抵抗の影響で、電圧が落ちているのがわかります。具体的には0.1229V低下しており、内部抵抗に換算すると0.0819Ωとなります。

また、(モータを単純な抵抗負荷だとみなすなら)以下のような電圧がAD変換されることになります。
f:id:Neophile:20190223175306p:plain

RX631を例にとると、12ビットA/D変換特性にはアナログ入力容量30pFと記載があり、サンプリング時間は0.4usとのことです。つまり、AD変換のタイミング次第で、高い電圧のところを変換するか、低い電圧を変換するかが変わるということですね。
(ちなみに、話は逸れますが、データシートを見ると許容信号源インピーダンスが1kΩと書いてあってアレ…コレダメなやつなのでは…という気持ち)

PWM周波数とADサンプリング周波数がぴったり100倍、というような人でない限りは、時々高い電圧が見えたり、低い電圧が見えたりするのではないかと思います。
ちなみに自慢ではないですが、自分は走行中の電圧ログをまともに取ったことが無いので上記が正しそうかどうかわかりません…。(取ったことある方コメント頂けたら嬉しい)

PWM周波数に同期させてADサンプリング周波数を決定してみたりすると、また面白いかもしれません。
なんにせよ、AD変換した電池の値から「モータに4VでDuty50%で2V相当をかけるで」と思っても、実際は3.9VのDuty50%というようなことが起こるというのは解りました。

他の実験結果の内容も整理して、新作マウスではこの辺り考慮しながらPWM Duty決定したいと思います。


元気があれば追って報告します。