このところの「初歩の物理実験」シリーズ、前回まで力学実験でした。今回は電気回路実験ね。でも、電気回路実験するならばScilab/Xcosより適任のSPICE系シミュレータが存在します。さらに言えばXcosの中にも「電気工学」というパレットありです。まあ今回は前回までの流れでXcosでフツーに微分方程式を解いてみます。
※「ブロックを積みながら」投稿順 index はこちら
※動作確認にはWindows 11の パソコン(64bit)上にインストールしたScilabの以下バージョンを使用しています。
Scilab 2024.0.0
電気回路のシミュレーション
別シリーズでいつもお世話になっておりますのが、Analog Devices社のシミュレータ、LTspiceです。ダウンロードページ(日本語)が以下に。
https://www.analog.com/jp/resources/design-tools-and-calculators/ltspice-simulator.html
SPICEは、はるか太古の時代に遡る伝統の回路シミュレータです。業界各社各様に改良をつづけ、その系譜をひくシミュレータどもが今でも電子デバイスメーカで多用されとります。そのなかでも「アナログの権化」アナデバ様ご提供のLTspice(LTは開発元のリニア・テクノロジー、LT社の頭文字。LT社はアナデバ様が買収)は、皆大好き、一番人気のSPICE系シミュレータじゃないかと思います。上記のページより無料でダウンロード可能。LTspice自体は、トランジスタにオペアンプなど使ったアナログ電子回路のシミュレーション用ですが、受動素子からなる電気回路もお茶の子サイサイってやつです。回路を描けば、波形を出力してくれる優れもの。
一方、Xcosは「電気工学」パレットというものをもっています。これは通常のXcosのブロックどもとは異なり、Modelica スタイルのブロックを集めたパレットです。こちらでもシミュレーション可能である筈。実際にやってないので知らんけど。
今回は、「通常の」Xcosのスタイルで微分方程式を解くスタイルで
LCR直列回路
を実験してみたいと思います。そして、答え合わせにLTspiceで同じ回路をシミュレーションしてみるっと。
LCR直列回路
まず、今回シミュレーションする微分方程式を掲げます。1行目が「電荷Qに対して記述した形」です。Lがインダクタンスの値、Rが抵抗(レジスタンス)の値、Cがキャパシタンス(容量)の値です。その回路全体にEなる電位を与えてみる駆動してみるのね。
一方、2行目は1行目を変形して「Xcosモデルで表現してみる」形です。RとCの項を右辺に持って行って、dQ/dtが電流Iであることを使ってIで書き直した形です。Xcosモデルの中のQとVというコメントに対応している部分も示してあります。
例によって、C、R、Lのパラメータ変数は「コンテキスト設定」でセットしてます。Eとして時刻1sで0Vから1Vに変化するステップ波形を与えたときの挙動のグラフ(電圧)が以下に。
LTspiceで答え合わせ
上記のシミュレーション結果が以下に。