シリーズレギュレータを作るぞ(シミュレーション編) [電子工作]
scilabで遊ぼうで、PID制御を調べました。 今回は、その成果を生かして、シリーズ・レギュレータを作ってみます。
レギュレータ第一号
まず、最初に試してみるのは、エミッタ出力型のレギュレータです。 OPアンプによる誤差増幅装置とエミッタ・フォロワで構成される回路です。 トランジスタには、2SD2531のシミュレーション・モデルを作るで作成したモデルを使用しています。
この回路でループ・ゲインを測定すると、位相余裕が40°あることがわかりました。 でも、実際に電源として使うときには、こんな状態では使わせてもらえません。
現実に近いモデルにする
少しでもモデルを現実に近づけるために現実との違いを列挙してみます。
- 無負荷である
この回路図では、レギュレータの出力には何もつながっていません。 つまり、無負荷の状態でのシミュレーションです。 負荷をつながないレギュレータというのは、いくらなんでもナンセンスです。 何らかの負荷を接続した状態で安定になることを確認しなくてはなりません。
- 良くある出力のコンデンサが無い
この回路図では、レギュレータの回路によく見られる出力部のコンデンサがありません。 ここには、比較的容量の大きい電解コンデンサなどが座っている場合が多くみられます。
シリーズ・レギュレータは、OPアンプで誤差を増幅して出力電圧を安定化させるので、どうしても高速な変動に対しては遅れをとります。 そのため、出力にコンデンサを付けて高速な変動にはコンデンサに対処してもらいます。
- 基準電源は、どうする?
OPアンプの+入力には、2.7Vの基準電源をつないでいます。 ここには、2.7Vのツェナー・ダイオードでもつなごうと思っていますが、適当なツェナー・ダイオードのモデルがありません。 まあ、後で考えることにします。
レギュレータ第二号は、発振器
実際に使う時の状態をふまえて、500mAの負荷と330µFのコンデンサを出力につけたのが、この回路です。 また、負荷は、過渡解析を考えて、500mAと10mAの間を急速に変動させるモデルにしてあります。
周波数特性は、こうなりました。 ループ・ゲインは、緑のグラフです。 32kHz付近で利得0dB、位相0°になっている所があります。 位相余裕わずかに0.3°、利得余裕も1.2dBです。
青のグラフがトランジスタ部分の、赤のグラフがOPアンプ部分の周波数特性です。
過渡シミュレーションにかけると、出力がみごとに発振していることがわかります。 振幅は、14mVP-Pです。 きっと、この程度の電源でもマイコンは動作するんだろうな。 10mA負荷の時の周波数が6kHz、500mA負荷の時の周波数が30kHzになっていました。
レギュレータ第三号で限界感度を調べる
ここからは、PID制御のパラメータを決めていきます。 まずは、限界感度を調べるために、OPアンプ部分のゲインを可変できるように変更します。 そして、安定して発振を始めるゲインを求めようとしましたが、LM358では、そこまでゲインが上げられないということがわかりました。
ゲインを75倍の設定にしたとき、周波数特性は、こんなになりました。 OPアンプのゲイン(赤いグラフ)を見てわかるように、31kHz付近はOPアンプの生の特性が出てしまっています。 そのため、抵抗値でゲインを変更しようとしても位相が 0° になる周波数での特性に影響が無いため、いくら抵抗値を変えても発振には至らなかったというわけです。
ところが、この状態でもレギュレータの出力は完全に安定とはいえない状態です。 この過渡シミュレーションを見てわかるように、負荷の変動によって、出力が発振ぎみになっています。 しかも、負荷によって出力電圧が変わっています。 500mA負荷の時の電圧が3.2298V、 10mA負荷の時の電圧が3.2328V、なので、出力インピーダンスは、6.1mΩ相当ということがわかります。
限界感度法の第一歩は、発振の条件を探ることだったのですが、安定して発振する条件が出せないと計算ができません。 そこで、ここでは、位相余裕が10°になる Kc=75, Tc=32usec を仮の発振条件として計算してみます。
PID制御器のパラメータを計算する
仮に求めた発振条件からPID制御器のパラメータを計算します。
Kc=75 Tc=32u Kp=Kc*0.6=45 Rs=10k Rf=Kp*Rs/2=220k Cs=Tc/(4*Rs)=680p Cf=Tc/(2*Kp*Rs)=33p
抵抗値とコンデンサの値は、E6系列の値に合わせこんでいます。 このパラメータを使って、レギュレータ第四号を作りました。
周波数特性は、こうなりました。 位相余裕が19°、利得余裕が17dBと、リンギングが激しく出る事が予想されます。
過渡シミュレーションは、こうなりました。 積分制御を取り入れたおかげで、10mAと500mAのどちらの負荷条件でも同じ電圧を示しています。 1m秒の間、4.5mVP-Pのリンギングを発生しているのは、10mA負荷の条件です。 500mA負荷でパラメータの計算をしていたため、10mA負荷の時の周波数特性が悪くなったようです。 また、500mA負荷の場合でも0.2m秒の間、4.5mVP-Pのリンギングを発生しています。
負荷条件の違いを吸収する
同じ回路なのに、負荷の条件で位相補償が効きません。 そこで、レギュレータ第三号にもどって、10mA負荷の時の周波数特性を調べました。 上が500mA負荷の時、下が10mA負荷のときです。 OPアンプの特性(赤いグラフ)は、ほぼ同じなのですが、トランジスタの特性(青いグラフ)は、カットオフ周波数が異なっています。
この違いを吸収するために、レギュレータ第三号でトランジスタにベース抵抗を入れてみました。 値は、青いグラフが似たような特性になる220Ωを選びました。
再び、周波数特性を調べます。 上が500mA負荷の時、下が10mA負荷の時です。 これで、再度挑戦します。
PID制御器なんて、いらなかった
さあ、もう一度PID制御器を設計しようと思ったのですが、このレギュレータは、ゲインをいくら上げても発振しやしない。 さすがにフィードバック抵抗を開放にすると発振しますが、100倍(1MΩ)ではリンギングが出る程度です。 そうか、この回路は、こんなに安定だったんだ。
位相余裕を優先したレギュレータ
Tc=1900µ秒、 Kp=45で計算すると、位相余裕60°を確保した回路になります。
Tc=1900u Kp=45 Rs=10k Rf=Kp*Rs/2=220k Cs=Tc/(4*Rs)=2200p Cf=Tc/(2*Kp*Rs)=220p
確かに安定かもしれませんが、20mVもふらつくし、収束まで時間がかかります。
追従性を改善したレギュレータ
Tc=200µ秒、 Kp=66で計算すると、追従性が改善された回路になります。
Tc=200u Kp=66 Rs=10k Rf=Kp*Rs/2=330k Cs=Tc/(4*Rs)=4700p Cf=Tc/(2*Kp*Rs)=150p
まだ、20mVP-Pのリンギングが残っています。
リンギングを抑えるためには、Csを大きくして微分成分だけ増強します。 Cs=15000pF にすると、リンギングは10mVP-Pになりました。
周波数特性を見てみます。 上が500mA負荷の時の周波数特性で、位相余裕は54°あります。 下が10mA負荷の時の特性で、位相余裕は69°あるのですが、600Hzあたりに30°まで位相が回ったところがあります。 ここが弱点になるかもしれませんね。
リンギング幅を抑えたレギュレータ
Tc=32µ秒、 Kp=94で計算すると、リンギングの周期は増えますが、リンギングの振幅が抑えられた回路になります。
Tc=32u Kp=94 Rs=10k Rf=Kp*Rs/2=470k Cs=Tc/(4*Rs)=680p Cf=Tc/(2*Kp*Rs)=15p
リンギングの振幅は、8mVP-Pになりました。
次回は、実験編の予定です。
参考文献
私が持っているのは、ハードカバーです。
定本 OPアンプ回路の設計―再現性を重視した設計の基礎から応用まで
- 作者: 岡村 廸夫
- 出版社/メーカー: CQ出版
- 発売日: 1990/09
- メディア: 単行本
OPアンプ回路の設計 改訂版―再現性の重視と統計的手法による回路設計
- 作者: 岡村 廸夫
- 出版社/メーカー: CQ出版
- 発売日: 1981/08
- メディア: 単行本
コメント 0