【第9回】部品を一つにまとめるSubcircuitとは?
準備中です……
複雑な回路を一つにまとめてシミュレーションすることが出来れば、回路図の見通しが良くなります。今回は、そんなことが出来るSubcircuitという部品について解説します。
Subcircuitとは?
Subcircuit(サブサーキット)とは、いくつかの部品をまとめて一つの部品にしてしまう機能のことです。 例えば、次のような全波整流回路があったとします。(公式Subcircuitマニュアルより引用)
Subcircuitの機能を使えば、次の図のように複数の部品を一つの部品にまとめてシミュレートさせることが出来ます。(公式Subcircuitマニュアルより引用)
Subcircuitの作り方
元となる回路を作る
例として、次のような回路を用意しました。
これは第6回に作成した多数決回路を、MOSFETで改めて作り直したものです。 左側にあるA1,A2,A3が入力、右側にあるのが多数決回路の出力となっています。
MOSFETは、Active Components-Add MOSFET(P-Channel)、もしくはAdd MOSFET(N-Channel)から追加出来ます。
自分でこの回路を作っても構いません。ですが、今回は部品の量が多いため、下のリンクから多数決回路MOSFET版.txtをダウンロードして、回路を読み込むことをおすすめします。
Subcircuitを作成するには、外に出す端子を置く必要があります。 端子(ラベル付きノード)は、Outputs and Labels-Add Labeled Nodeから追加出来ます。
追加した端子のEdit画面を開くとラベルの名前を入力する欄があります。ここで、入力したラベルの名前は外に出す端子の名前になります。
今回は、入力と出力、電源を外に出す端子として設定します。
設定した回路のデータは、下のリンクからダウンロードできます。
端子のEdit画面には、もう一つInternal Node(内部端子)という項目があります。
この項目にチェックを付けると、端子を置いても外部の端子として表示されなくなります。先ほど作成した回路の端子A1のInternal Nodeにチェックを付けると、端子A1は外部の端子として表示されなくなります。
なぜ、こんな項目が用意されているのでしょうか。実は、この部品にはもう一つ機能があり、同じ名前の端子同士は、配線でつながっているものとして、シミュレータ上で扱われるのです。これを使うと、電源の配線や共通の出力などの配線を省くことが出来ます。
ですが、普通に端子を置いてしまうと外部の端子としてみなされてしまい、端子をこの用途で使うことが出来ません。そこで、Internal Nodeという項目が用意されているのです。
Subcircuitを作成する
Subcircuitを作成します。作成した回路をSubcircuitにするには、画面上のFileメニューから、Create Subcircuitをクリックします。
モデルの名前を入力する画面が表示されます。ここでは、MajorCircuitを入力しておきます。OKボタンを押すと、Subcircuitが作成されます。
Subcircuitを使ってみる
作成したSubcircuitを回路に追加するには、Subcircuit Instanceを選択します。Subcircuit Instanceは、Active Building Blocks-Add Subcircuit Instanceから追加できます。
Subcircuit Instanceの、Edit画面を開きます。
Model Nameの下にある、プルダウンメニューをクリックすると、先ほど作成した、MajorCircuitが表示されるはずです。MajorCircuitをクリックすると、作成したSubcircuitが表示されます。
これを使って、改めて多数決回路を作成すると、MOSFETだけで多数決回路を作成したときと、同じように動作していることがわかります。
この回路は、下のリンクからダウンロード出来ます。
2020年11月28日現在、CircuitSimulatorAppletでは、Subcircuitだけを保存する機能は存在しません。そのため、通常の回路保存機能を使ってSubcircuitを保存しておく必要があります。
注意が必要なのは、Subcircuitを作っただけでは保存する回路ファイルデータに反映されない、ということです。せっかく、多数決回路、全波整流回路などのSubcircuitを作成して、ファイルに保存しても、Subcircuit Instanceを使って、回路に多数決回路、全波整流回路のSubcircuitを実際に配置しない限り、ファイルに反映されません。
次回予告
今まで、部品はいちいちクリックしたり、メニューを選択したりして追加してきました。ですが、ショートカットキーを使えばそんなことをしなくても、一瞬で部品を追加することが出来ます。次回は、ショートカットキーや、CircuitSimulatorAppletのオプションについて解説していく予定です。
次回で最終回になります。
う-ん、よく分からん!
この記事を読んで、疑問に思うことがあったときは、気軽にコメント欄や私のTwitterから質問してください。
参考文献
CircuitSimulatorApplet 全電子部品対訳表
CircuitSimulatorApplet上に表示される電子部品の名前は、全て英語です。
英語で書かれた電子部品の名前を見て、すぐに実際の電子部品が思い浮かぶ人はいいかもしれませんが、そうでない人が大半でしょう。
下の記事では、CircuitSimulatorAppletにある全ての部品の日本語訳を載せてあります。
「日本語では○○っていう部品なんだけど、英語では何ていうんだろう?」「この部品、CircuitSimulatorAppletのどこにあるんだ?」という時にお使いください。
Subcircuit公式マニュアル
http://www.falstad.com/circuit/subcircuits.htmlwww.falstad.com
準備中です……