いまさら聞けないデジタル電源超入門
第7回 デジタル制御 ②
デジタル電源超入門 第6回では、デジタル制御のうちP制御について解説しました。
第7回では、P制御に積分や微分成分を加えたPI制御、PID制御について解説させて頂きます。
PI制御
第6回 デジタル制御①で述べたように、P制御だけではゲインを上げるのに限界があることが分かりました。それは主回路の共振周波数と位相遅れに関係があります。
そこで、【図1】のように主回路の共振周波数より低い領域のゲインだけを上げるように、制御系を変更します。ここでは、ローパスフィルタを用いてゲインを高くします。
PI制御のIはintegral、積分を意味します。積分器を用いることでも実現できますが、ここではすでに第5回で実施したデジタルローパスフィルタを用いて実現します。
ScideamによるPI制御のシミュレーション
それではScideamでPI制御のシミュレーションをしてみましょう。
FileからDCDC_PI.sファイルを開きます。
画面上部のScriptアイコンをクリックして、画面右側のスクリプトエクスプローラに表示されるPID_GAINをダブルクリックするとプログラムが表示されます。
本モデルは、パワエレ向け高速回路シミュレータScideam(サイディーム)で動作可能です。
本記事のモデルは以下からダウンロードしてください。
今回はAMP_pのゲインを2.5、AMP_iのゲインを17.5にしてシミュレーションを行います。
次に、低い周波数のゲインを上げるために、ローパスフィルタを使って、高い周波数成分をカットします。
ローパスフィルタのプログラムは以下の記事をご覧ください。
それではサンプリング周波数100kHz、カットオフ周波数100Hzのローパスフィルタを作ってみましょう。
式に従ってパラメータを計算すると次のようになります。
$$y=\frac{1}{A1+1}(x+x_0+(A1-1)y_0)$$
$$ICON A1= \frac{f_s}{f_c×π}=318.47$$
$$ICON A2= \frac{1}{ICON A1+1}=0.00313$$
プログラムの63行目からローパスフィルタのプログラムとなりますので、正しい値が設定されていることを確認してください。
それではシミュレーションしてみましょう。
Transientを選択して実行アイコンをクリックしますと【図3】のチャートが表示されます。
定常状態の出力電圧は2.97Vと、良い結果が得られました。
次にPI制御のボード線図を描いてみましょう。
画面上部のBodeアイコンをクリックし、下記のパラメータを設定します。
右下のRunアイコンをクリックすると【図4】のようなボード線図が表示されます。
ゲイン0の時の位相余裕を見ますと37.7度です。
これは例ですので、さらに位相余裕を上げるようにPID制御にしてみましょう。
PID制御
さらに位相余裕を確保するため、D制御を入れて位相を補償してみましょう。
D制御にはデジタルフィルタの章で使用したハイパスフィルタを用います。
【図5】のように、主回路の共振周波数より高いカットオフ周波数を持つフィルタを用いて、ゲインを高くします。
Scideamを用いたPID制御のシミュレーション
FileからDCDC_PI.sを開きます。
画面上部のScriptアイコンをクリックし、画面右側のスクリプトエクスプローラに表示されるPID_GAINをダブルクリックするとプログラムが表示されます。
今回はAMP_pのゲインを2.5、AMP_iのゲインを17.5、AMP_dのゲインを5に設定します。
次に、高い周波数のゲインを上げるために、ハイパスフィルタを使って低い周波数成分をカットします。
それではサンプリング周波数100kHz、カットオフ周波数10kHzのハイパスフィルタを作ってみましょう。
式に従ってパラメータを計算すると次のようになります。
$$ y=\frac{1}{A1+1}(x-x_0-(A1-1)y_0) $$
$$DCON A1 = \frac{f_c×π}{f_s}=0.314 $$
$$DCON A2 = \frac{1}{DCON A1+1}=0.761 $$
プログラムの75行目からハイパスフィルタのプログラムとなりますので、正しい値が設定されていることを確認してください。
Transientを選び、プログラムを実行させると【図6】のチャートが表示されます。
定常状態の出力電圧は2.97VでPI制御の時と変化はありません。
それはD制御では低周波のゲイン、つまり定常状態での目標電圧との差を埋めるためのゲインには影響がない範囲を制御したためです。
それではPI制御と同じようにPID制御のボード線図を描いてみましょう。
画面上部のBodeアイコンをクリックしてPI制御と同じパラメータを入力してRunアイコンをクリックしますと、
【図7】のチャートが表示されます。ゲイン0の時の位相余裕を見ますと66度となっており、十分な位相余裕と言えます。
まとめ
P、 PI、 PID制御のとき、下記の結果が得られました。
PI、PID制御では目標電圧に対し十分な出力電圧となりました。
特にPID制御では位相余裕が66°とかなり安定した制御結果になっています。
P Gain | I Gain | D Gain | 出力電圧[V] | 位相余裕[deg] | |
P制御 | 10 | – | – | 2.94 | 36 |
PI制御 | 2.5 | 17.5 | – | 2.97 | 37 |
PID制御 | 2.5 | 17.5 | 5 | 2.97 | 66 |
過渡応答
Scideamではプログラムを使って過渡応答を確認することができます。
PID制御を使って過渡応答のシミュレーションをしてみましょう。
画面上部のScriptアイコンをクリックして、スクリプトエクスプローラを表示させます。
Load_changeをダブルクリックすると、画面にプログラムが表示されます。プログラムで2~5行目の//(コメント用シンボル)を削除してください。
次にCircuit Editorで負荷抵抗Rをクリックして、その値を10Ωから1000Ωに変更します。
実行アイコンをクリックしてシミュレーションを行います。
赤い部分で負荷が変動していますので、そこを拡大してみましょう。
このようにScdeamでは、負荷変動も簡単にシミュレーションすることができます。
おわりに
さて、7回に渡ってデジタル電源の基礎について学んできましたがいかがでしたでしょうか?
最初の概要でも解説しましたように、デジタル電源にはいろいろな要素技術が必要になります。
この演習を通して少しでも理解を深めていただければと思います。
また、制御のパラメータはこちらで設定したものなので、いろいろ変えてシミュレーションしてみてはいかがでしょうか?
本文監修:中村創一郎
▼関連投稿 ーデジタル電源超入門ー