電源関係
  電源に関する実験的なもの、使っているもののメモはこれからここにをまとめます。

電流制限回路(定電流電源)170mA pwm 09.03.20
電流制限回路(定電流電源)100/200/300mA 09.03.13
実験用小電流サーキットブレーカ2 90S2313版 09.03.06
実験用小電流サーキットブレーカ 09.02.27
降圧型DC−DCコンバータ MC34063 08.08.01
昇圧型DC−DCコンバータ MC34063 08.07.29
緊急用5V電源 リチウム電池と三端子 08.07.26
リチウムイオン電池と充電器 08.07.05
リチウムイオン電池 過放電防止回路 08.11.07
昇圧型DC−DCコンバータ HT7750A 08.07.05
昇圧型DC−DCコンバータ HT7733A 08.06.21
昇圧型DC−DCコンバータ 2題 08.06.01



電流制限回路(定電流電源)170mA pwm 
 資源活用(?)の意味を含めて、AT90S2313のPWMを使った低電流回路を実験しました。出力電流を抵抗の電圧降下で検出して、定電圧1Vとコンパレータで比較してそれを超えるとデューティ比を下げようと考えたものです。
出力電圧から電源は9Vとします。90S2313には三端子レギュレータを使って5Vを供給します。



AIN0(非反転入力、12番ピン)の電圧がAIN1(反転入力、13番ピン)より高くなるとACSRレジスタのACOビットが1になります。

  出力電流が小さい=AIN0の電圧が低い
    ↓
  ACOビットが立たない(0)
    ↓
  pwmのデューティ比が大きくなる(OCR1Aが小さいほどデューティ比は大きい)
    ↓
  トランジスタのonが長くなる
    ↓
  FETのon時間が長くなる
    ↓
  電流が増える
のながれで電流が一定値になる、という考えです。
プログラム

検出にディレイを入れないとデューティ比が変化しない内に再度検出することになり、正しく動作しません。8ビットpwmとしていますが、10ビットにすると周期が遅くなってうまくないようです。
出力のリップルは取れませんが、できるだけ小さくなる条件を探しました。

PWMの実験がしたくて制作しましたが、電源が9Vに限られる(5Vは三端子レギュレータの関係で使えない)上に、部品点数が多く、出力波形にリップルが含まれる、など良いところはありません。放熱器の要らないところが唯一の利点でしょうか。効率はMCUの電源とスイッチングFETのわずかな発熱とインダクタの発熱(指で触ってやや熱い程度)などのために特に良いとは思えません。そのために電流の切り換えやパイロットLEDは実装していません。
実用的にはトランジスタを使った回路(電流制限回路(定電流電源)100/200/300mA)の方がいいでしょう。



電流制限回路(定電流電源)100/200/300mA 
 常用のニッケル水素電池に 単3型2本・3本・4本、単4型4本、4/3A型3本・4本 があります。5Vまたは9V電源にレオスタットのついたものを使っていますのでそれぞれの容量に合わせた電流で充電するのですが調整が面倒な上、これを使っているときは実験用の電源が使えません。
これらはおよそ200mA,100mA、300mAで半日余り充電すると良いわけで、これらの電流制限ができる電源があれば直列の数に関係なく充電できると考えました。

検索しますとなひたふさんのサイトに電流制限回路の例と説明がありました。回路図の左に示すもので、Q1の電流が増えるとRの電圧降下が大きくなり0.6VになるとQ2が導通してQ1のベース電流がバイパスされるためにRの電圧降下が0.6Vになる電流で制限がかかるというものです。



ジャンク箱に回路図のトランジスタがありましたのでブレッドボードでテストすると思いの外安定した制限電流が得られましたので組み立てることにしました。(ブレッドボードで少し大きめ以上の電流を扱うと意外な落とし穴がありますので、肝心なところはハンダ付けします。正当な評価はブレッドボードでは得られないと思っています。)

最大で6V、300mA程度ですから電源は9V(スイッチング型ACアダプタ)を考えます。もしこの状態で電池1本を充電するとなるとトランジスタのコレクタ損失は(9-0.6-1.0V×0.3A=2.2W となりますからヒートシンクが必要になります。ヒートシンクの計算は知りませんので手持ちのヒートシンクを付けて実験を続けました。室温は低いのですが連続運転で、人差し指温度計で測定するかぎり使えそうなので続行します。

電流制限用の3.3Ωはジャンクの袋買いがあったので使いました。うまい具合に3本で3種類の切替ができるようです。
すこし悩んだのは出力電流が流れているパイロット信号です。出力端の電圧モニタは簡単ですが、電池に充電電圧をかけても端子の接触状態で通電しないことがあります。実際に流れているかどうかがわかる必要があります。考えた末に出力電流が流れるとエミッタ抵抗の電位が0.6VになりC2458がONになるのなら、もう一つのC2458をつなげばそれもONになるはずと考えて回路図の出力電流検出回路ができました。
なお、入力表示の緑LEDの1kはLEDの電流制限抵抗とC2458の負荷抵抗を兼ねています。



写真は半完成状態ですが、白色半透明のポリプロピレン板にグルーガンで貼り付けています。小物部品は生基板に溝を付けてラグ板として付けています。1枚の基板に溝切りするよりは楽です。グルーガンの固定が以外に速く、修正できなくて歪んだものもあります。最終的にはヒートシンクが縦になるように外形を整える予定です。

電流はほぼ予想通りとなっています。ニッケル水素電池の充電には問題ないようです。試しに出力を短絡してみましたが電流値に変化はありませんでした。
三端子レギュレータを後ろに付けると、電流制限付き5V/3.3V安定化電源になるかと思います。

PNPトランジスタ版
 ジャンク基板から取り出した 2SA473 と 2SA1048 がありましたので、PNPトランジスタ版をバラックで作ってみました。

実験ですから200mAタイプだけにしています。当然の事ながら、期待通りの動きをしています。



実験用小電流サーキットブレーカ2 90S2313版 
部品箱から 90S2313 が出てきました。もう製造中止の品種です。新しく回路を作るつもりのないデバイスですが、捨てるにはもったいなくてセラロックを付けてブレーカに収めようとしました。Tiny3213は微妙に拡張されているのでTinyそのままではプログラムを走らすことはできません。レジスタ設定など修正して実行したのですがどうもうまく走りません。前作ではVccに近いところでコンパレータを働かせている点が90Sではうまくいかないようです。
そこで反対にGND側で測定することにしました。電源をGND共通で使えない欠点はありますが、本来は過電流対策が不明な電源でも安心して使おうとの意図がありましたからこのところは辛抱することにします。GNDがフローティングですからFETはpCHよりポピュラーなnCHとしました。




FETのゲートに接続した1kは、出力をショートしたときに時々大電流が流れることから気がついたもので、ショートしたときにVccが下がって90S2313がリセット状態となりPD6が入力設定になるためにゲート回路がハイインピーダンスで浮いてしまうためにノイズでHとなってFETが通電するのではないかと考えました。はじめは10kとしましたがやや不安定だったのでインピーダンスを下げたところ安定した状態になりました。考えてみればゲートはいかなる状態でも浮かないようにしないといけないのでしょうね。

100mAでは連続して通電し、130mAでは確実に遮断されるようです。市販の5V電源アダプタやUSBバスパワーを利用するときに安心して使えるのではないかと思います。場合によっては1Ωを0.5Ωや0.2Ωに変更して容量の大きなブレーカにするのも良いと思います。

プログラムは90S対応のために少し変わっています。なお、ディレイルーチンは <util/delay.h> の _delay_ms() に変更しています。また、47Ω+1000μF に対応するために20msと長くしました。
/* ************************************************************************************
breaker.c サーキットブレーカー 20090306 im
約100mAで切断する。  復帰はresetで。
mcu=AT90S2313
アナログ比較器制御/ステータスレジスタ(AnalogComparatorControlandStatusRegister)ACSR  == 0b00000000
  ビット5-ACO:アナログ比較器出力(AnalogComparatorOutput  この結果で判断する
***************************************************************************************/
//#define F_CPU 10000000UL   /* 10MHz  <util/delay.h>より前に定義してください. 今回はmakefileで定義 */ 

#include <avr/io.h>
#include <util/delay.h>   

int main(void)      /* *********  main  ******** */
{
  DDRD=0xff;
  DDRB=0; PORTB=0;
  ACSR=0;
  PORTD=0xff;
  
  for(;;){                                   /* 無限ループ */
    if( (ACSR & 0b00100000) >0 ){            /* コンパレータが検出した後、10ms待って再検出 */
      _delay_ms(20);                         /* 10MHzで26.2144msまで。小数可。 */ 
      if( (ACSR & 0b00100000) >0 ){          
        PORTD=0;                             /* ゲートLでoff */
      }
    }
  }
}




実験用小電流サーキットブレーカ
試作実験中には不注意やチェックミスによって過大電流が流れてデバイスを痛めることがあります。被害を少なくするために可変抵抗(レオスタット)を直列に入れた電源を使い、電流計を見ながら通電するのですが、経験的に電流が少なければダメージも少ないようです。
そこで、mcuに特別の負荷がなければ数10mA程度の電源電流ですから、100mA程度で遮断できるブレーカを試作しました。ポリスイッチと違って規定の電流を超えるとカットオフとなり電流はゼロになります。手動で復帰するまで電流は流れません。

電源のプラス側に1Ωの抵抗を入れて、この電圧降下が0.1VになったときにTiny2313のコンパレータが働き、ポートにHを出力します。電源の出力回路にpチャンネルMOSFETを置き、ゲートをポートにつなぎますとLを入力している間は通電してHになると遮断するというもくろみです。
AIN1の電位がAIN0より低くなるとACSRレジスタのACOビットがHになりますから、電源電圧を5Vとして、抵抗分圧でAIN0に基準となる(5-0.1=4.9V)をつなぎます。近似的に1kと4.7kとしました。5V*4.7/(1+4.7)≒4.9Vとなります。遮断直前では電源が4.9Vになりますが、この程度の電圧降下で問題になることはないと思います。





100μFの電解がなくても動作するはずですが、出力をショートするとMCUの電源が下がるためか不安定な通電を繰り返します。これを入れると遮断するまでの電源が確保されるためかショートでも安定して動作します。

プログラムは下方に書いたアセンブリプログラムをサブルーチンに使っています。
/* ************************************************************************************
   breaker.c サーキットブレーカー 20090224 im
***************************************************************************************/
#include <avr/io.h>
//#include <avr/interrupt.h>
//void delay_ms1(uint16_t);

int main(void)      
{
  DDRD=0xff;
  DDRB=0; PORTB=0;
  ACSR=0;
  DIDR=3;
  PORTD=0x00;
  
  for(;;){                                    /* 無限ループ */
    if( (ACSR & 0b00100000) >0 ){             /* コンパレータが検出した後、10ms待って再検出 */
      delay_ms1(10*8);                        /* 8MHzで10ms */
      if( (ACSR & 0b00100000) >0 ){
        PORTD=255;
      }
    }
  }
}

;*******************************************************************************
;delay_ms1.S  クロック1MHzの時1msのdelayルーチン  2008.12.13 im
;呼び出しは delay_ms1(15*8); 8MHzクロックで15msのとき。引数はuint16_t。
;コンパイル時にmakefileの  ASRC =に delay_ms1.S と書く。 
;Cプログラムに void delay_ms1(uint16_t); と宣言する。なくても可。
;*******************************************************************************
				//拡張子を.SにすればCプリプロセッサにも掛けられるので、
				//C++方式のコメントが利用できる
.global delay_ms1		         //delay_ms1を外部から利用可能にする
.func delay_ms1			// 関数名の宣言。この後に書かれるアセンブラ命令が関数
				//の中身になる
delay_ms1:			//関数の開始
2:	ldi	r18,250		//r18--r25は自由に使える
1:	nop			//時間合わせ
	dec	r18
	brne	1b		//0でなければ前方の1:へ
	sbiw	r24,1		//r25,r24ペアに引数が入っている
	brne	2b		//0でなければ前方の2:へ
	ret
.endfunc
このようにMCUには申し訳ないくらいの簡単なものです。ディレイを置いて2度調べているのは、1度だけですと負荷に電解コンデンサがある場合にそのチャージだけで遮断されてしまうためです。10msの時間を待てばラッシュで切れることはありませんでした。

電源のレギュレーションによって動作電流が違いますが、およそ100mA前後で遮断されるようです。もちろんショートしても問題はありません。テストはしていませんが負荷AVRの逆接続でも働くだろうと思います。

実装は遊び心で表面の片面だけにしてみました。そのためソケットは脚を曲げてハンダ付けしています。また、プログラム変更はブレッドボードに移してすることにしてISPの配線はしていません。




降圧型DC−DCコンバータ MC34063
昇圧型で思い通りの結果が得られたので、降圧型も制作してみました。電源は三端子型と同じLi-Ion電池を2個直列にしたものを考えています。




電流制限抵抗は抵抗線を切って作ったものです。半田がつかないので端に銅線を巻き付けて、その上で抵抗線を折り曲げて強くペンチで挟み、圧着状態にして半田付けしています。なお、0.3Ωにすると500mA負荷では電圧が少し落ちます。0.2Ωにすると500mAでも電圧は下がりません。
インダクタは100μHのものしかなかったので50%程巻き足しています。ショットキーダイオードは下の昇圧型と同じ2Aのものです。
通電するとICがやや暖かくなりますが、熱いと思うほどにはなりません。室温は31℃です。三端子レギュレータのものに比べると発熱は少ないので効率はいいのでしょう。9Vの電源装置から10Ω負荷(500mA負荷)で使いますと入力側で320mA程度の電流が流れていました。三端子なら500mA流れるわけですからこれからも効率が良いことがわかります。

写真のものは実験中で、実用には電源スイッチの他電池の消耗インジケータ −−3V程度で使用をやめるため−− などが必要です。




昇圧型DC−DCコンバータ MC34063
下に書いたようにコンバータIC MC34063 をブレッドボーで実験したときは予定していた結果を得ることができませんでした。しばらくして、以前に三端子レギュレータの実験をしたときにブレッドボードでは接触抵抗などのためか十分な結果が得られなかったことを思い出しましたので、あらためて半田付けで回路を組み立てたところ実用になる結果を得ました。
モトローラのMC34063は、良く知らないままにデジットで\150で購入したものです。最近のものは末尾に"A"がつくようですが、購入品はAのないものでした。データシートはすべてAになっていて、Aのないものは探すことができませんでした。A無しは電源が2.5Vからで、A付きは3.0Vからとか。それ以外の違いはわかりません。Webで調べるとダイソーの\315車載携帯電話充電器で有名らしく多くの実験記事がでています。チョッパの電流容量が1.5Aだそうですからうまく行けば0.5Aくらいの出力が取れるのではないかと期待できます。
写真は実験中のもので、電源スイッチなどはまだ実装していません。電池はサンヨー製で公称2300mAHの18650型リチウムイオン電池です。





回路構成はデータシートどおりなのですが、部品定数は手持ちの関係でかなり値が変わっています。0.2Ωは電流制限抵抗で、両端の電圧が300mVを超えると電流制限がかかるそうです。このとおり計算しますと 0.3V/0.2Ω=1.5A で制限いっぱいのようです。この抵抗は手持ちがなかったので 10Ω/mの抵抗線を2cmの長さに切って使いました。また、電圧制御は5番端子が基準電圧の1.25Vになるように制御しますので、5V/1.25V=4ですから、1/4になる抵抗比を選ぶことになります。手持ちのもので適当なものがありませんでしたので同じ抵抗2.7kを4個直列にして途中から取り出しています。
ICの端子は大きな電流が流れるピンもありますからソケットはやめて直に半田付けしています。ショットキーダイオードは手持ちの2Aのものを使いました。ここの周波数は数10kHzですから60Hzの電源用ダイオードを使うと逆回復時間の関係で単なる抵抗、または、キャパシタと同様の振る舞いになってショート状態になるそうです。入力側のコンデンサは電池が近くにあるために0.1uFだけにしました。

通電してみる
とりあえず手持ちの電源装置の3.3V(LM317で作っている)を入力すると無負荷で5.02Vとテスタに出ました。20Ωの負荷抵抗を繋ぐと4.94Vとなり、電源の電流は460mAとなります。(まずは成功!)
電源側の電力は 3.3V*0.46A=1.518Wで、出力側電力は 4.94V*0.25A=1.235Wとなりますから、効率は 81% となります。ブレッドボードの時より良いようです。
電源を公称2300mAHのリチウムイオン充電池に変えて同じ20Ωの負荷で電流を流してみました。電源は4V強ありましたが、出力4.96Vで安定しています。20Ωをさらに追加して500mAに負荷を増やしましたが4.94Vと少し落ちるくらいで電流を取り出せます。
そのまま電流を流し続けますと電池の電圧は少しずつ落ちてきます。と同時に出力電圧も落ちてきました。通電後1時間くらいは4.8V程度でしたが次第に電圧が下がり、2時間20分ほど後に電源電圧3.5V、出力電圧4.5Vで実験を終了しました。最後には5V電源としては使いにくい程の4.5Vとなりましたが、負荷を250mAに減らすと4.96Vが得られました。250mAの軽い負荷では電池の最後まで5Vを保てると言えるようです。
放電初期にはICが少し暖かいと感じる程度の発熱で、終期には指を触れているには熱すぎる程度の発熱となりました。しかし全体に発熱は少なく、この点からも三端子レギュレータの5V電源よりは効率が良さそうです。
この様子では18650電池1本で携帯電話の充電ができそうです。

(2008.08.05) 3mmアクリル版を切り出してこのようなケースを作りました。アクリル専用の接着剤がなかったので多用途接着剤を使いましたが、以外としっかりしているようです。

白色のLEDは小信号用ダイオードを2個と1kの電流制限抵抗で点灯しています(動作時のみ)。電池の電圧が下がって3V付近になりますと薄暗くなります。とりあえずこれを目安に充電の時期を見つけます。携帯用5V電源として1000mAH位は期待できると思います。




緊急用5V電源 リチウム電池と三端子
容量が大きくメモリー効果がない点で優れたリチウムイオン電池に興味を持って、通信販売で「わけあり」の電池18650を購入しました。ソニー製で2000mAHと言うことでした。この電池は単三を二回り大きくしたような円筒形の鉄の容器に入ったものです。直径が18mmで長さが65.0mmであることからこの名前があるそうです。ノート型パソコンによく使われるものらしく電極はタブを外したあとがあります。その代わり\300/本で買うことができました。
リチウム電池は充電終期には4.2V程度の電圧になり、使用すると電圧が低下して、3V位で放電をやめます。ニッケル水素電池のように放電途中に電圧がほぼ一定の部分がないようです。
汎用のために5Vの電源を計画しました。5Vだとデジカメの充電に使ったり、携帯電話の充電にも使えます。5Vで0.5A程度の電源とするために、電池を2本使い、LDO(Low DropOut)三端子(五端子)レギュレータで安定化しました。


サンケンのSI3050MKを使っています。DropOut電圧が0.6Vですから電池のエネルギーは十分取り出せるのですが、処置をしないと過放電になります。今はなにもしていませんが3.2V/本程度になると表示する方法を考える予定です。

半端な大きさの電池ですから、電池ホルダもリン青銅板で自作しています。使わないで放置することも普通にありますから電源スイッチを付けています。なお、半田がはずれることがあっても火事にならないように保存しているときは電極に紙を挟んで大事を取るつもりです。
電力利用効率は平均電圧を3.7Vとして 3.7*2Vを5Vに落とすわけですから 5÷7.4=0.675 で、70%を少し割ることになります。昇圧型スイッチングコンバータにすると電池も1本で済み効率よくできるかと考えましたが、HT7750Aでは100mA余りしかとれず、MC34063も試しましたが、電流250mA程度で突如電源電流が800mA流れてICが熱くなるような不安定な状態であったり、また、効率が思うほど上がらず、電源電流がかなり多くなります。安定した0.5Aをコンバータから得るのはアマチュアにはかなり難しいように感じました。その点、リニアレギュレータでは電流は変わらず(電源側で多くなることはない)最大1Aまで取り出せるので装置が簡単になります。電池組み込みで5Vが必要なときには電流が200mA以下の時には上記のコンバータが使えると思います。(追記:MC34063コンバータで一部訂正があります。)



リチウムイオン電池と充電器
デジットの店頭にリチウムイオン電池と充電回路のプリント基板がおかれています。以前からおかれていましたが、尋ねることにしました。「テストにはどれくらいの費用がかかるのでしょうか、また、充電時の危険性はないのでしょうか。」
費用は全部で千数百円、充電中は目を離さないようにして欲しいが、専用ICを使うので危険度はかなり低い、という返事でした。
基板に回路図とパーツ一覧がありましたので、早速RやCを探して求めました。 基板が650円、専用ICが350円、電池が450円であとはRCが少々でした。

さすがにしっかりしたいい基板です。(少し高いかな?)

専用ICはMicrochip社のMCP73861でした。デジットの店員さんに、電源電圧は5〜12Vだが5Vの方が効率がよいこと、2kΩ半固定抵抗によって電流を制御できることなど教えてもらいました。帰宅してWebで調べるとhttp://www.picfun.com/equipj66.htmlに丁寧な記事があります。
電池の良否を判断する初期充電、定電流による主充電、規定の電圧に達すると最後は定電圧充電、そして終了とすべてを判断して実行する優れものです。

電池は型番から検索して、東芝 LAB503759C2 3.7V 1100mA と判明しました。
購入時の電圧は3.7Vでした。どのように放電するのか、4.8Vの豆球を通して放電を1時間ほど行ったところで急用ができてすぐに帰るつもりでそのまま出かけ、予定が変わって1時間後に帰宅したときは100mV程の起電力しかない状態になっていました。深い放電は禁止だったと思いますので失敗です。

電極が弱々しいので基板に半田付けで補強しようとしましたが、材質の関係で片方がどうしてもつきません。半田で付けたリン青銅板で押さえています。思いだせば、特別な半田材料があるように書いてあったようです。



急いで充電器を制作することになりました。


部品点数が少ない上に、立派なプリント基板ですから、あれよあれよの間に完成しました。電流制限の半固定抵抗をおよそ中点に置き電源を入れます。リチウム電池の端子間にはテスタを付けておきました。
スタートの電流はおよそ60mAです。2.4Vになるまではゆっくり充電します。電池の端子間電圧はなかなか上がりません。1Vを遙かに切っていますから、2.4Vになるのに20分ほどかかり、大丈夫かと不安にさえなりました。

しかし、ゆっくりながら電圧は上昇を続け、やがてテスタは2.4Vを示しました。が、相変わらず電流は増えません。と思う内に急に電圧が上昇し、同時に電流も0.5Aになりました。説明のとおりです。その後はよくは覚えていませんが、定電流充電の期間を過ぎ、定電圧充電となって徐々に電流が下がっていきました。やがて予定通り充電が終了しました。

どのように使えるのかは、いまはよくわかっていません。豆電球による放電などを繰り返して、様子を調べたいと思っています。

(2008.08.01) 5V入力で充電しますと (5V-3.8V)*0.6A=0.72W 程の熱を出す状態となり、指先で触れているのが難しいほどに温度が上がります。アルミニウムの放熱器(15*20*10mm3)を、グリスを塗って輪ゴムで止めました。放熱器に触れるとかなり熱く感じますが、触れていられない状態ではありません。室温が高くて放熱器のない時は温度制限がかかるのか若干充電電流が少なくなるようです。

リチウムイオン電池充電器 2号機 2009.11.10
中古のデジカメを購入しました。が、充電器は付属してきません。上に書いた充電器で充電できたのですが小さな電池に絞っても400mA流れます。電流調整抵抗の可変抵抗器を変更すればもっと絞れるのですが、専用のものを作ってみることにしました。

前回使用したプリント基板は大きいのとそれなりに値段が高いので例によってプラカッターで自作しています。前回のものに比べて面積が約半分になっています。もっと小さくもできたのですが発熱対策も考えてこの大きさに落ち着きました。
テフロンシートの上に配置していますが、電源側の入力の3つの端子と出力側の3つの端子は放熱を考えて銅板をリードにして基板につないでいます。
回路は前回のものと同じですが、電流調整抵抗を3.3kに固定しています。これによって充電電流は約320mAになっています。あとは入出力の10μFの電解コンデンサを積層セラミックのチップデバイスに変えましたのですっきりしました。電池の温度管理端子は使っていないので1/3の電圧を与えれば良いということであり合わせの抵抗を3本使っているところが不細工です。(抵抗器が大きすぎる)
心配した発熱は320mAでは指を触れても感じられませんでした。プリント基板を購入せず、小物は手持ちを使いましたので、今回の出費は\350だけでした。充電用の電池ホルダも例のリン青銅板で自作しています。



リチウムイオン電池 過放電防止回路
Li-ion電池は過放電すると電極が破壊されたり、充電できなくなることがあるそうです。手持ちに中古の18650がいくつかできましたので多方面に使いたいと思うのですが放電終了がわからないと不安になります。
3.3V用のreset-ICは2.6V付近でreset信号を出しますのでこれでCMOSを制御して放電を止められないかと考えて実験しました。

秋月から購入した3.3V用reset-IC TCM809-R は2.6Vで #reset(負論理)を出します。放電終了が2.6Vでは低すぎると思い、電源にシリコンダイオードを入れて0.5V程高い方にシフトさせることを実験してみました。
制御用CMOSはreset(L)でスイッチングoffとなりますから N-チャンネルのものを使います。
手持ちの関係で下の回路図となりました。


18650を使って 4.8V 0.5A の豆電球を負荷に放電テストを行いました。
電池の電圧が約3Vになりますと回路が働いて豆電球が消灯します、が、電流offとなると電池が回復して電圧が上がりますから再び点灯して、また消灯します。 かなり長時間点滅を繰り返して(次第に点灯時間が短くなりますが)放電終了に近づきます。
点滅開始から数時間放置しましたが、たまに点灯する状態で、電圧は約3Vを保持しています。結果敵に3Vよりも放電が進む心配はなさそうです。

使い勝手から言うとはじめての電源offで完全に止まってくれるとよいのですがこの回路では望めないと思います。
終期の機器動作がおかしくなりますが電源断を感じて使用をやめれば問題はありません。

基板は電池の大きさを考えて17mm×17mmにしています。


リチウムイオン電池 過放電防止回路 その2 AVR版


AVRで書けばコントロールは自由になる、と考えての試行です。Atmelから叱られそうな。プログラム量は112バイトで使用率5.5%でした。
簡単に考えましたがLED負荷ではうまく動くものの豆電球負荷(0.4A強)では動きが不安定で困りました。どうやらCMOS-FETの入力容量をチャージ・ディスチャージするために時間が必要だと感じました。適当なディレイをつけてやると安定して動くようです。
ひとたび電圧降下を検知すると電源offにしてつなぎ直すまで(リセットするまで)復帰するルーチンがありませんので、点滅を繰り返す心配はいりません。
Tiny2313は手持ちのSOICを使いました(これは\100ではありませんでした)。ソケットがありませんから、ISPリードは書き込み時にハンダ付けしています。
電圧を検出するために1/3に分圧していますが、手持ちの33kチップ抵抗を使っています。3.3k*3または10k*3くらいがいいと思うのですが少し大きすぎますがこの値になっています。電源電圧が3.1V位でoffになります。
基板の大きさは17mm×30mmです。
プログラムは次のとおりです。
/******************************************************************
  li_ion_chk.c  Li_ion電池電圧チェック  20101110 im
  電源電圧が約3VになるとPORTD6をLにする。
  電池が回復してもHに復帰しない。
  リセットで戻る。
  
  MCU=ATtiny2313
  PORTB1(AIN1) 電源電圧の1/3を入力
  PORTB0(AIN0) 内部比較電圧1.1Vに設定
  PORTD6       リセットでH、AIN1が低くなるとLに。Hに戻す機能無し。
               
  clock 内蔵RC  8MHz
  fuse  -fL11100100 -fH11011111 -fx00000001 
*******************************************************************/
#define F_CPU 8000000UL  //  include より前に定義してください 
#include <avr/io.h>
#include <util/delay.h>

/*   メインルーチン  -------------------------------------------------  */
int main (void) {
  DDRB=0x00;
  PORTB=0b11111100;
  DDRD=0xff;
  PORTD=0xff;
  
  DIDR=0b00000011;  // デジタルIO禁止
  ACSR=0b01000000;  // ACBG=1→基準内部1.1V
  
  PORTD=0xff;
  _delay_ms(10);  
  while(1){                   /* 無限ループ */
    if((ACSR & 0b00100000)>0){
      PORTD=0b00000000;
      _delay_ms(100);  
    }
  }
}
//--------------------------------------------------------------------






昇圧型DC−DCコンバータ HT7750A
下に書きました3.3Vと同じ回路の5V型です。
回路は下のものと同一ですが、定数は変更しています。
インダクタはどうせ電流が取れないなら大きなものは必要ないと考え、小型の56μHのものを使っています。電流容量は不明です。
コンデンサは深い意味はないのですが16V22μFを使っています。同様にショットキーダイオードは40V2Aとなっています。


右の82Ω2本は負荷テスト用の抵抗です。5V出力で120mA流れることになります。2度目の制作になりますから、基板のの大きさは間延びのしない程度に小さくしました。

入力電圧が2.4V程度ですとまるで電流が取れませんので、公称3.7Vのリチウムイオン充電池を繋いでみました。この電池は充電直後は4.15V程になっていましたのでしばらく豆球を点灯して電力を消費して 3.9V になったときに負荷テストをしてみました。

電源電圧が実測3.82Vで、電源側電流が200mAを示して、41Ωの負荷側の電圧は5.02Vありました。負荷電流は120mAになります。しばらく通電を続けますとICからではなく、負荷抵抗からの発熱で基板が熱くなります。
3.7V電池を使うのなら、5V出力もかなり実用になりそうです。IC、インダクタともに発熱は感じません。

(2008.07.21)このICには"A"がつくものとつかないもの(7750Aと7750)があることを知りました。Aのつくものが改良型で、最大電流が100mAから200mAに変更されています。実際に使ったものは"7750A"の方であったためこのページの記述をA付きに変更しました。



昇圧型DC−DCコンバータ HT7733A
掲示板で簡単なICが共立電子にあることを教えていただきましたので実験してみました。
このICは7750が5Vで、7733が3.3Vです。ともに\63でした。

スペックではタンタルコンデンサを使って100mA取れるようですが、わたしの組み立てたものは実用上40mA程度ではないかと思います。コイルは大きすぎるのですが購入してあったので使いました。ショットキーダイオードは流れる電流が少ないので小信号用(最大定格 平均100mA*2 並列の時は150mA max)の1SS319を使っています。 コンデンサは30年以上も前からジャンク箱に入っていたものを使っています。

5Vのものも試したのですが、この程度の電流では使い道が見つからない、NiMH電池を2〜3本使って5VのMCUを動かさなくても、3本で3.6V与えれば立派に働くと思います。 3.3Vなら電池を1〜2本使えば発光ダイオードを点灯させる程度の応用に使えそうなのでこちらを組み立ててみました。電池が弱ってくると電圧は3.1V程度に落ちるようです。




昇圧型DC−DCコンバータ 2題
デジカメの電池は液晶モニタをONにしたまま使っていますと案外早く電池切れになってしまいます。外出時に電池(NiH電池)から充電できれば用途が広がると思います。(実際には困るほどデジカメを使うことはないのですが…)
使っているデジカメの充電は5Vでおよそ0.5A程度の充電電流であったと思います。NiH電池の充電直後では4本の電圧が約5Vになりますので充電が可能です。実際に少し充電して使ってみましたが使える状態です。ただ、どれだけの量が充電されるのかは調べていません。できれば5Vで安定した電源が欲しいのですが、理想を言えば1本につき1.0Vまで使用できればと考えます。これを3端子レギュレータで賄うとすれば、LDOでも最後の1Vで使えるためには6本が必要になり、使用開始時には1.2V×6本=7.2V を5Vに落とすことになります。電源の利用率を考えると辛抱すべきでしょうが6本は多すぎるように思います。

Maximのページを見ていて、昇圧型のコンバータICがあることを知り、実験してみることにしました。



MAX1765によるDC-DCコンバータ
写真左の実験回路です。このICは800mAまで出力が取れるスペックです。回路図は手持ちの部品を使っていますので、メーカーの指定とは値が違っています。
動作原理はインダクタ3.3μHの出口をFETでGNDに落として電流を流し、磁気エネルギーとして蓄えて、次の段階で出口を出力に繋ぐと電源の電池とコイルの起電力が直列になって結果的に電圧が上がって出力されるもののようです。
FB端子は内部の基準電圧と比較して、1.25Vになるように出力電圧を調整します。 Vout=1.25×(150+50)/50=5.0V となります。

このICは昇圧だけに限定しているわけではなく、降圧型としても使えるようです。参考回路で上限5.5V入力で3.3Vも可能となっています。



ノートパソコンの電池を分解した単3より少し大きな(size 4/3A)NiH電池を4本直列にしたもので実験しました。負荷は5Vで125mA流れる白熱豆球を4個並列にして、0.5Aで電流を流してみました。 2時間後には負荷時の電池電圧が3.3V程に下がりましたが出力電圧は5Vのまま変化はありませんでした。
カメラの充電はまだ実験していませんが、これで1回分は充電できるのではないかと思います。携帯電話の充電にも使えそうです。持ち歩けるようにするとかなりかさばるとは思いますが。


MAX1703を使ったDC-DCコンバータ
写真右の基板です。スペックではNiH電池3本を使って、最大5Vで1.5Aの電流が取り出せることになっています。上記のICと違って降圧型はうたっていません。実験は5V、3Aのスイッチング電源出力をLM317で3.3Vに落としたもので行いましたが、これがいけなかったようです。詳しくはわかりませんが、9Vの電源アダプタからLM317で3.3Vに落としたものでは正常に働きました。
それを知らずに、最初に作ったものは出力が出ないままに観察していると次第に大きな入力電流が流れるようになり、ICが熱くなって、さらに完全に破壊されたのか電源入力が完全にショート状態で使えなくなりました。2台目を組み立て、恐ろしくて負荷を125mAと軽くして実験していましたが、上記のNiH電池4本を繋ぐと0.5A出力でも安定に動作しました。供給電流が弱いとインダクタにエネルギーが蓄積されずに電流が流れっぱなしになるのではないかと思います。電源インピーダンスはかなり低いものが要求されるようです。(これはMAX1765でも同じです)
こちらも、手持ちの部品の関係で定数が少し変わっています。インダクタは上記の3.3μHしかなかったので、ほどいて別のエナメル線をまき直しました。(余談ながら、3.3μHでは十分な磁束が得られないのか、無負荷時の電流が大きくなっていました。それで、すぐに巻き足しました。)
 動作原理は上記のものと変わらないようです。

スペックではずいぶん大きな電流が取り出せるようですが、現在では0.5A以上の負荷は用意できませんので試していません。もっとも1つをつぶしているので大事に使いたいところです。








データシートでは電源はNiH電池の時は3本までしか書かれていませんが、手持ちが4本組で包装していますので、最大入力が5.5Vとあることも関係して、4本で使うことにします。

安定して1A以上の電流が取り出せる3.3V電源がなかったために(電源電流を監視したかったために電池は使いませんでした)かなり回り道をしてしまったようです。今でも不思議なのは5V電源をLM317で落としたときに3.3Vの電圧があるにもかかわらず正常に動作しなかったことです。差が1.7Vあるから十分だと思ったのですが電圧計に現れない何かがあるのかもしれません。

データシートにはいくつかの点でICの端子から5mm以内に配置するよう指示がありましたが、プリント基板を作成しないアマチュアには難しいことだと感じました。製品としてはチップ部品を表面実装で密度上げて配置する技術を元にしているようです。

実験には紆余曲折がありましたが、電池による安定化5V電源が使えることになりました。苦労のかいがあったのではないかと思います。

inserted by FC2 system