みなさま、お疲れ様です。
LTspiceでsimulinkのような制御設計が出来る”contraille”ライブラリをご存知でしょうか。以下が作者様の方のページです。
とても素晴らしいライブラリで感動しました。
LTspiceでもsimulinkみたいな制御設計がしたい!
と考えている人向けに導入方法と試しにシミュレーションをしてみた結果を報告します。
contrailleライブラリの導入方法
まず、作者様のGit Hubでライブラリをダウンロードします。(<>code->Download Zipでダウンロード可能です。)
ダウンロードしたらzipファイルを解凍して、subやsym内にあるcontrailleフォルダをそのままコピーして、LTspiceのsubやsymフォルダ内に貼り付けます。
これでLTspiceを開いて、部品配置ウィンドウを開くと、以下の通りContrailleが見えます。
例えば、Contraille\ContinuousにはPI制御器などの連続時間系の伝達関数ブロックがあります。
端子の意味が分からない場合は.libファイルにNodesの意味が書いてあります。
これで準備は完了です。
試しに使ってみる
以前、設計したピーク電流モード制御非絶縁降圧スイッチングレギュレータをcontrailleライブラリに置き換えてシミュレーションを流してみます。
ちなみに設計したときに書いた記事はこちらです。興味があれば、是非読んでみて下さい。
そして、そのときの回路図は以下の通りです↓。
ビヘイビア電圧源Bや電圧制御電圧源Eなどを使っているため、回路図があまり綺麗ではありません。
これをcontrailleライブラリに変更しました↓。
だいぶすっきりしました。
制御器は以下のPI制御器でK=1,ゼロ周波数fz=100Hzと設定しておりました。(wz=2*Π*fz)
$$\small{
K\frac{1+\frac{s}{w_z}}{\frac{s}{w_z}}
}$$
これを一般的なPI制御器のKp,Kiに当てはめようとすると
$$\small{
K_P+\frac{K_I}{s}=\frac{sK_P+K_I}{s}=K_P\frac{s+\frac{K_I}{K_P}}{s}
}$$
となるので、
$$\small{
K_P=K\\
K_I=K_P*w_z
}$$
となります。
シミュレーションを流した結果が以下の通りです。
良いですね。
これでLTspiceでも分かりやすい回路を引けますね。素晴らしすぎて感動しました。
作者の方に感謝です。
はい、これで本記事は終わります。誰かの参考になれば幸いです。
最後までお読みいただきありがとうございました!!!