マイコン工作実験日記

Microcontroller を用いての工作、実験記録

ちっとも充電できない!

2010-10-09 20:59:02 | Weblog
WT32のLiPo電池充電機能を実際に使ってみると、ここにもワナが待っていました。USBからの5Vで充電可能にしてある状態でも、本体が動作していると電池の電圧は順調に減っていくばかりです。本体が消費している電流を充電では補いきれていないようです。LCDのバックライトを落とすとかの対策を講じないと、それもしょうがないかと思い、本体の電源を切断して一晩待ってみると。。電圧は3.6V程度から3.8V程度に増えただけ。まだ充電完了していません!こんな、調子ではいったいフル充電(4.2V)まで何時間かかることやら。。

電池電圧が2.9V以上、4.2V以下では定電流での充電動作になっているハズなのですが、どうやらその充電電流が少なすぎるようです。しかし、ハードウェア的には充電電流を設定する抵抗なんかありません。WT32のデータ・シートを読み直してみると、充電機能の説明のところに充電電流を16段階で設定できるようなことが書いてあります。ところが、それをどのように設定するのかが説明されていません。iWRAPのマニュアルを読み直しても、電圧監視に関わるコマンドはあっても、充電電流に関わるコマンドはありません。

これはもうBluegigaに問い合わせるしかないのかとも思いましたが、そもそも充電機能はCSRのBlueCore5(以下、BC5)の機能のようなのでBC5の資料にあたるべきであることに気が付きました。BC5のデータシートをダウンロードして読んでみると、充電関連の記述にはWT32のデータシートと同じ文面が並んでいます。WT32のデータシートの記述は、BC5のデータシートからのコピペだったんですね。ところが、BC5のデータシートを読んでも充電電流の設定方法については書かれていませんでした。その代わり、充電機能の詳細については、別途アプリケーションノートが用意されていると明記されていました。ようやく情報源を見つけられたと喜んでアプリケーション・ノートのダウンロードにいったのですが、アクセス権限がなくて入手できません(泣)。 なんか登録してあるメアドのドメイン名で判定してはじかれているようです。

まぁ相手にしてもらえない身分ではありますんで、アクセス権限がもらえなくても当然かもしれません。しかし、答えはもうちょっとのところにあるハズなので、もう少し自分で調べてみることにしました。BC5の機能として充電電流が選択/設定可能であるならば、その値はI2Sの動作モードの設定でも使ったPSTOOLで設定可能であるに違いありません。そこでPSTOOLで表示される沢山の項目をひとつひとつ確認していくと、次の項目が見つかりました。
   Set the charger current -- PSKEY_CHARGER_CURRENT
ずばり充電電流設定です。0から15の16段階の値が指定できるところ、初期値は0になっていました。おそらくは、これが原因で充電電流が最低値の設定で動作していたと推察されます。そこで、この値を10に設定したところ、順調に充電が進むようになりました。BATTというコマンドで電圧を見ていると着実に増えていくのが確認できます。ところが、この電圧値が4.2Vを過ぎても、まだ上がり続けていき、ついには4.3Vに到達。これは、ちょっとヤバいんじゃないかということで、あわてて充電中止。

データシートには、充電完了電圧も16段階で設定可能であると書かれていたのですが、WT32ではあらかじめ4.2Vになるように調整済みという記載もあったので安心していました。充電電流を変更すると、充電完了電圧の設定値の解釈が影響を受けるのでしょうか。ふたたびPSTOOLでパラメータを探すと
   Trim value for the current charger -- PSKEY_CHARGER_TRIM
という値があり12に設定されていたので、10に変更してみました。しばらく様子を見ている状況ですが、どうやらおよそ4.2Vになると電圧が安定するようですし、充電中を示すLEDの点滅も止まります。充電関連らしいパラメータとしては、
   Turn off voltage for charger adjustments -- PSKEY_CHARGER_MONITOR_END_VOLT
というのもあったんですが、こちらは設定値が16進4桁になっておりちょっと想像がつきませんので、いじらないでおいてあります。

こんな調子で、ようやくと充電はできるようになりました。まだ良く分からないのが充電状態表示のLED動作です。電源スイッチを入れている状態では充電中を示すLEDが点滅しているのですが、電源スイッチを切るとなぜかLEDは点滅しなくなってしまいます。