PFCコンバータむずいっすねぇ。
本記事は勉強がてらAC100Vを200Vへ昇圧するCCMモードPFCコンバータを設計してみようという記事です
前回はとりあえず電流ループの設計をして(1回目)、力率の計算方法を勉強しました(2回目)。
今回は前回の回路の改善と電流ループの追従性の改善をしたいと思います。
ではやってみましょう。
前回の回路(動作モデル)の問題点と改善
前回の回路図↓で条件を振ってシミュレーションをしていたら、まともに動かなくなる条件がありました。
原因は補償器が理想的な伝達関数モデルであるためです。
過去記事↓でも悩まされたのですが、LAPLACEブロックのゼロ点はが負に吹っ飛んでしまって、まともに動作しないときがあります。
なので、LAPLACEブロックを使うのを辞めて、実回路にしました。
Type3補償器を回路化すると以下のようになります。
この回路のゼロ点やポール周波数やDCゲインは以下の計算式で計算できます。
$$\small{ω_1=\frac{1}{C_{z1}R_{z2}},ω_{z1}=\frac{1}{C_{z1}R_{z1}},ω_{p1}=\frac{1}{C_{p1}R_{z1}},ω_{p2}=\frac{1}{C_{z2}R_{p2}},ω_{z2}=\frac{1}{C_{z2}R_{z2}}}$$
ω1がDCゲイン、ωp1,ωp2がポール周波数、ωz1,ωz2がゼロ点周波数です。
なぜそうなるのか?は以下の記事で解説しておりますので、良かったら読んでみて下さい。
つまり、DCゲインやポール周波数やゼロ点周波数を決めたらほぼ自動的に抵抗や容量値は決定できます。今回は以下のようにシミュレータが計算してくれるようにしています。
- DCゲインω1とfz1~fp2まで制御する折れ点周波数を決める。
- Rz2を100kΩと決める。
- あとはCz1->Rz1->Cp1->Cz2->Rp2の順番に計算していく。
というように制御パラメータを回路定数へ落とし込んでいきます。
あと補償器の手前部分は以下のようになっています。
オペアンプは単一の5V電源で動作します。なので、0~10Aくらいの電流がフィードバックしてきたときにちゃんと動作できるように2.5Vを中心に2V~3Vを入力にするように変換しています。
回路の修正点の説明は以上です。
電流追従性の改善
前回、電流ループを設計しました。その結果以下のようにコイル電流が追従している波形が確認できました。
下:出力電圧
電流波形がちょっとずれてますよね。赤い線に対して緑の電流波形が。これを改善します。
2pole1zeroの補償器でDCゲイン=20と設定していました。オープンループ周波数特性が以下の通りです。
このDCゲインが低いことが追従性が悪い原因なので、一旦上げまくりつつ、位相余裕度を確保するためにゼロ点を高域に持っていきます。
位相余裕度が確保できないですね。確保するためにはもっと早めにゼロ点を置いて90degの進みを作っといて、そこらへんにゼロクロス周波数が来るようにDCゲインを落とせばいいのですが、そうすると電流波形の追従性が悪くなります。
今回はDCゲインを維持しつつ、位相進みをもう一つ追加して、3pole2zero補償器(=Type3補償器)を使います。
シミュレーションをした結果は以下です。
緑:コイル電流値
ん~多少良くはなった感じでしょうか。前回ちゃんと力率を計算していなかったので、正確に比較はできないですが、、、
指令電流値が昇り始めたときに追従が遅れていた箇所がモコッとなってますね。
まぁ今回は昇圧回路の入力は100VDCを入れいているので、100VACを入れるとここは電圧が小さくなっているので、モコっとなっているのはマシになるのではないでしょうか。
最後らへんが適当ですが、まぁヨシとします。
次回こそ電圧ループの設計をします。
以上です。終わります。最後までお読みいただきありがとうございました!!!!