電源回路の製作3(Simulation)

長いこと更新できていなかった。

というのも燃え尽きていたからだ。(長すぎる)

何もしていなかったわけではないがブログに関しては完全に面倒で手も付けていなかった。

なので、一応進捗をざっくりと書いていくことにした。

 

まず、製作2の記事では間違っている点が一つあって、それはスイッチングMOSの向きである。

SourceとDarinが逆向きになっている。

するとどうなるかというと直流電圧が落ちてしまう。

前回の記事の最終アウトプットの波形を見ると実際にそうなっていることが分かる。

f:id:Rightblue9:20210511183510p:plain

上記でV1が電源電圧、V2がMOS後段の電圧である。

3Vもドロップしてしまっている。

これは私がまだその辺をよくわかっていなかったためにこのような結果になってしまっている。

 

上記を踏まえたうえで保護回路を追加してさらなるシミュレーションを実施した。

追加した回路はそれぞれ以下の通り。

・逆接続保護回路

・UVLO(Under Voltage Lock Out)

・過電流保護回路

の三種類である。

UVLOというのは入力電圧がある一定値を下回ると出力電圧を自動的にシャットダウンする機能をいう。

また、電源投入時と電源シャットダウン時には動作する電圧が変わるように設定されている。

詳細はまた別の機会に記事にしようと思う。

ひとまずそれぞれの回路を見ていくことにする。

f:id:Rightblue9:20210813182806p:plain

回路左側のMOS(Q1)に接続されている各種回路が逆接続保護回路である。

また、右側のMOS(Q5)に接続されている回路がUVLO回路である。

それぞれの動作をみていく。

■逆接続保護回路

これはP-MOSFET(2SJ681)を使用している。

P-MOSFETの接続は実際の使用用途からすると逆向きになっているが、Source-Drain間にはボディーダイオードを通じて電流が流れるためそのままでも問題なく動作する。

これによってGate-Source間の電位差が生じ、MOSがオン動作に入る。

それによって出力を自己的にオン動作で固定するので入力電圧が0Vになるまで出力を止めることはない。(厳密には違うが省略)

したがって通常動作はOKである。

逆電圧が加わった際にはどうなるか。

Gate-Source間に逆電圧が加わるのでP-MOSFETはオンせず電流が流れない。

この回路で逆接続耐圧はGate-Source間電圧で規定されている電圧値が耐圧MAXの値となる。

したがって耐圧の高いMOSを選定しなければあまり保護として成立しない場合がある。(そのあたりをうまく想定して選定する必要がある)

■UVLO

この回路は一見複雑に見えるが、動作を理解するだけならそこまで難しくはない。

まず、LM193(U1A)はコンパレータである。

コンパレータというのは二つの入力端子の電位差を見て出力を正負(High/Low)のいずれかを出力するものである。

具体的には+端子(V+)とー端子(V-)の電圧をそれぞれ引き算して(V+ーV-)その答えが正ならHigh、負ならLowを出力する。

上記回路ではコンパレータの+端子に入力されている電圧は基準電圧である。

この電圧を基準としてー端子に入力されている値に応じてHigh/Lowの出力を切り替える。

+端子に加わっている電圧は前段の回路で定電流回路(2個のTr)により生成される。

ー端子に加わる電圧は単純に抵抗分圧された電圧値が印加される。

基準電圧は常に一定なので入力電圧が上昇していくにしたがってあるところで分圧値が上回る。

その時コンパレータの出力はLowに切り替わるが、それによって出力のP-MOSFET(2SJ681)がオンして電源供給を開始する。

また、コンパレータの出力は分圧抵抗の一部をN-MOSFET(2SK4017)にも並列接続しているため、これがオフして分圧値が上昇する。

その上昇分をもって、電源が切れる電圧が下がる。

(細かく説明するにはここでは足らないので後で記事をまとめます)

■過電流保護回路

下図の負荷抵抗(R1)の下についている100mΩ(R2)の抵抗によって電流を電圧換算して過電流検出し電源ラインのP-MOSFET(M3:AO6407)をシャットダウンさせる。

この100mΩ(R2)の抵抗のことをシャント抵抗という。

シャント抵抗にはオームの法則(E=IR)より電流は抵抗に比例した電圧の値を常に示すので、この電圧値を制御回路で扱うことで任意の電流値を検出し後段の回路に算出結果を受け渡すことが可能である。

一番簡単な例を示す。

もし仮に1Ωの抵抗があったとする。

その抵抗に1Aの電流が流れたらその両端に生じる電圧降下分は1Vになる。

2Aならば2V、10Aならば10V、といった具合である。

であれば、1Ωが一番扱いやすいのでは?と思われるかもしれない。

しかし、シャント抵抗というのは実負荷に必ず直列接続された状態で使用しなければならないため負荷とシャント抵抗とで供給電力を折半する関係性にある。

そのため、無駄に大きい抵抗値の場合たとえば1Ωだと1Aで1V、つまり1Wもの電力を奪ってしまう。

この1Wの電力はすべて熱に変わって消え失せるだけなので非常に効率が悪い。

なので小さければ小さいほど良い、というのが理論的な話。

ただ、あまりにも小さすぎると今度は検出電圧が小さくなりすぎてノイズの影響を如実に受けてしまいまともに検出できなくなってしまう。

これらのトレードオフをうまく考慮しながら現実的な落としどころを探してやらねばならないのだ。

 

以上のような保護回路の動作により実製品に近い回路設計になったのではなかろうか。

また、保護回路の他に主回路についてもいろいろと改造を加えた。

テーマは「すべてアナログ回路で構成する」である。

それが以下である。

f:id:Rightblue9:20210813190042p:plain

この回路にUVLOはついていないが、つけるとSimがとてつもなく重くなってしまうため省略している。

つけても問題なく動作する。

で、この回路はいったい何をしているかというと次のようなことをしている。

出力電圧値を常にモニタして既定の電圧値になるようにPWM制御のオン時間を常に調整する。

具体的に見ていく。

 まずこの回路のキャリア周波数は100kHzである。(たぶん。わすれた。)

で、その周波数のなかでオン時間を調整するわけだがどのようにしているのかというとキャリア周波数と同じ周波数の三角波を生成してその三角波とフィードバック電圧をコンパレータで比較し、オン時間を調整しているのだ。

まずPWM生成しているMOSFETはM1である。

M1のGateのおおもとにつながっているのはAD8030というコンパレータである。

で、このコンパレータのー端子には出力電圧を分圧した値がオペアンプを通して印加されている。

また、+端子にはLM555とオペアンプを用いた三角波生成器による三角波が印加されている。

これらの動作をSim上で描くとどうなるか、それが以下の波形である。

f:id:Rightblue9:20210813195124p:plain

薄い緑色が分圧抵抗の値を反転増幅した電圧値で三角波は+端子に入力されている。

それらを比較した結果、出力されている電圧がピンク色の電圧である。

そしてその電圧に従って濃い緑色の電圧が徐々に上昇しているのが分かる。

これが出力電圧である。

M1の動作はコンパレータの出力がLowの時はオンしてHighの時はオフする。

したがって徐々に上がっていく電圧はオンDutyを下げていき、最終的にある均衡の取れた値に収束する。

その様子を示したのが以下である。

f:id:Rightblue9:20210813195641p:plain

緑色の波形が出力電圧である一定の電圧に収束しているのが分かるだろう。

このようにして既定の電圧値を出力できるようにセッティングされた回路の設計が進められている、というのが現状である。

 

一見、ものすごい進歩したように見えるかもしれないがまだ改善しなければならないことがいくつかある。

その一つが指定の電圧値設定が不明瞭なことにある。

上記の回路の場合、フィードバックのための分圧抵抗がすべてのカギを握っているがその分圧値から算出される出力電圧の値が今のところ不明瞭である。

Simを繰り返して適応する電圧値に対する分圧値を早見表として作成してもいいのだが、それは数式に従ったリニアな動作説明とはかけ離れている。

ということはどういうことかというと回路動作についての理解がまだ不十分であるということだ。

そのような観点も盛り込んで設計してやらねば完全とは言えないのではないか。

また、これはあくまでもSim上での結果を反映したものに過ぎないので実際に回路を同じ乗数で組んでも果たしてうまく動作するかはわからない。

結局、まだまだ不完全なのだ。

とは言えSimを繰り返すことで実機でのTri&Errorの回数をギュッと凝縮することはできた。(ネイティブでは”トライアルアンドエラー”というらしい)

そこがSimのいいところであり、実機に落とし込む際は各種パッシブ乗数を微調整してやればいいのだ。

そのための可変抵抗器などの設置も含めて基板設計するのが一次試作での腕の見せ所でもあると思っている。

次回は実際に基板発注して動作させた結果を更新できるといいなと考えている。