自動制御web講座

2. シミュレーション

line

2.1. シミュレータの使い方


◆ 第 1 章では、フィードバック制御の概要について、解説しました。第 2 編は、シミュレーションに関する解説です。
この第 2.1 章は、アナログ回路シミュレータと、その使い方について解説します(図 2-1-1)。シミュレーションに興味の無い読者は、この第 2 編を読み飛ばしてください。

[図 2-1-1] 第2.1章の内容

第2.1章の内容

パソコンを使い慣れた人や、電子回路の知識がある人にとっては、冗長になる部分もありますが、なるべく、ていねいに解説します。

2.1.1. シミュレータの概要

2.1.1.(1) SPICE とは

2.1.1.(1-A) SPICEの起源

◆ 制御系の解析には、アナログ回路シミュレータ が使用できます。アナログ制御は、もちろんのこと、ディジタル制御の解析にも、便利に活用できます。
アナログ回路シミュレータは、多数あります。その中で代表的なものが、SPICE系のシミュレータです。
SPICE はもともと IC の内部回路を設計するために、開発された、回路シミュレータです。1970年代中期に、カリフォルニア大学が開発した「SPICE2」が、元になっています。
SPICE2 は、誰でも自由に利用できましたが、サポートがありませんでした。

2.1.1.(1-B) SPICEの発展

◆ その後、この SPICE2 にサポートを付加した、商用ソフトウェアが多数開発され、販売されるようになりました。これが、SPICE系シミュレータと呼ばれるものです。
これらの SPICE系シミュレータには、SPICE2 の仕様そのままのものも、独自の改良を加えたものもあります。
SPICE系シミュレータは、その後、ユーザレベルの電子回路設計にも、広く使われるようになりました。
最近のアナログ回路は、アナログ素子だけでなく、ディジタルICを使用した、アナログ/ディジタル混在回路が多くなっています (図 2-1-2)。これらに対応できるように、アナログ/ディジタル混在シミュレーションが可能な製品も作られています。

[図 2-1-2] アナログ/ディジタル混在回路の例

アナログ/ディジタル混在回路の例

◆ また、シミュレータが動作するコンピュータも、メインフレーム、ワークステーション、パソコンと対象が広がっています。
シミュレータを便利に使うためには、各種の市販トランジスタやアナログICなどの素子のデバイス・モデルを用意しておくことが望まれます。デバイス・モデル とは、シミュレーションに必要な素子の特性パラメータを記述したファイルです。
デバイス・モデルを集めたものをライブラリと言います。シミュレータには一般的なデバイスのライブラリが付属しています。また、多くの半導体メーカが、自社製品のデバイス・モデルを提供しています。

2.1.1.(2) 今回使用するシミュレータ

◆ 今回使用する PSPICE は、SPICE系シミュレータ で、アナログ/ディジタル混在シミュレーション が可能です。ただし、この講座で、実際に使用するのは、アナログだけです。
この講座では、「Pspice Release 8 (機能限定版)」を使用します(まえがき6. 参照)。
機能限定と言っても、限定されているのは主に回路規模とライブラリの内容です。この講座に必要な回路規模には、十分に対応できます。
◆ SPICE の呼び名は、狭義には、シミュレータの心臓部である SPICEプログラム (図 2-1-3 の「PSPICE実行」の部分) を指します。広義には、シミュレータ・プログラム全体のことを言います。
また、「PSPICE」は、SPICE系シミュレータにおける、代表的な製品の1つに対する商品名です。

2.1.1.(3) PSPICE 内容の索引

◆ PSPICE の索引を用意してあります。講座の目次からリンクできます。


2.1.2. シミュレータのインストール

◆ 自分でシミュレーションを試みようという読者は、すでにシミュレータを用意していると思います。
まだパソコンへの、インストールが済んでいなければ、インストールしてください。
一般の Windows 系プログラムと同様に、画面の指示に従ってインストールすることができます。Sspice Release 8 (機能限定版)の場合には、途中でいくつか問い合わせてきますが、通常はデフォルトで差し支えありません。ただし、Extension Registraion のところは、「いいえ」にします。
Pspice Release 8 (機能限定版)以外のときは、夫々のマニュアルに従ってください。

2.1.3. シミュレーションの手順

(1) 概   要

◆ シミュレーションの手順を図 2-1-3 に示します。
なお、この図および以降に示す手順は、Pspice Release 8の手順です。他のシミュレータも、大筋では同じですが、個々の手順は異なります。

[図 2-1-3] シミュレーションの手順

シミュレーションの手順

◆ シミュレータの心臓部は、解析計算を行う、SPICEプログラム(図のPSPICE実行)です。これを実行する前に、準備作業として、シミュレーションの対象となる回路ファイル (*.CIR) を作成しておく必要があります。
解析計算が終了したら、結果の波形を表示したり、値を読み取ることなどが必要です。Pspice Release 8には、波形表示ツールとして PROBE が用意されています。PROBE は使いやすく、機能も豊富なので、これを利用します。

[注]  PROBE は、PSPICE に固有な波形表示ツールです。

2.1.3.(2) 回路ファイルの作成

2.1.3.(2-A) 2つの方法がある

◆ 回路ファイル の作成には二つの方法があります。

(a) テキスト形式

◆ テキスト・エディタ を使って、文字情報で回路を記述します。この講座では、テキスト形式の回路ファイルを使用して、シミュレーションを行ないます。
テキスト・エディタは、PSPICEシミュレータにも、簡単なものが付属しています。しかし、回路ファイル作成用の、特別なものでは無く、使い勝手も良くありません。
PSPICE 用として、便利に使用できる、高機能テキストエディタに、MIFES があります。フリーソフトでは、VxEditor が良いでしょう。
VxEditorは、汎用エディタですが、ほぼ完全にPSPICE 用にカスタマイズすることができます。コマンド等の色分けや、拡張子によるフィルタなども、PSPICE に合わせて行うことができます。欠点としては、タブ形で無い点ぐらいです(VxEditorの使用見本)。プログラムは、VECTOR または作者のホームページからダウンロードすることができます。
◆ 使い慣れたテキスト・エディタがあれば、そちらを使用するのも、良いでしょう。

(b) 回路図形式

◆ 回路図エディタ を使って、ビジュアルに回路を記述します。PSPICEシミュレータには、専用の回路図エディタとして SCHEMATICSプログラムを内蔵しています。
この講座では SCHEMATICS は使用しませんが、後で一つだけ見本を示します。
最近では、一般の回路解析には回路図エディタを使用することが多く、テキスト・エディタを使用することは少なくなっています。
複雑な回路では、回路構成が一目で分かりやすい回路図エディタが有利です。
しかし、この講座では、回路のシミュレーションではなく、制御系のシミュレーションです。必ずしも、回路図エディタの方が、便利とは言えません。

[注] SCHEMATICS は、現在入手可能な、新しいバージョンのPSPICEでは使用できません。SCHEMATICS だけでなく、Pspice Release 8 自体が、新しいバージョンとは、互換性がありません。

2.1.3.(2-B) 具体的な手順

◆ シミュレーション手順の基本は、テキスト・エディタでも回路図エディタでも、図 2-1-3 に示したように同じです。しかし、具体的な手順はそれぞれ異なります。
テキスト・エディタを使用するときの具体的な手順を、図 2-1-4 に示します。

[図 2-1-4] テキスト・エディタによる具体的手順

テキスト・エディタによる具体的手順

◆ SCHEMATICS (回路図エディタ) の場合を図 2-1-5 に示します

[図 2-1-5] SCHEMATICS による具体的手順

SCHEMATICS による具体的手順

◆ 説明は実例で行い、ここでは手順の図だけ示します。

2.1.3.(3) 回路ファイルのダウンロード

◆ 実際には、この講座のシミュレーションを実行する場合には、回路ファイルを新たに作成する必要はありません。読者が独自のシミュレーションを行う場合は別として、一般には、この講座で用意された回路ファイルを使用すれば十分です。実行時に、定数を変更する程度で済みます。
この講座で使用する回路ファイルとライブラリファイルとをダウンロード しておきましょう。

[注] ダウンロードする、ライブラリファイルは、デバイス・モデルのライブラリとは別のものです。この講座の回路ファイルが利用する、サブサーキット (2.2.3.(1-A)参照) のライブラリです。サブサーキットとは、コンピュータプログラムにおける、サブプログラムやサブルーチンに相当するもののことです。

2.1.3.(3-A) ダウンロードに当たって

◆ ダウンロードした回路ファイルは、図 2-1-6 に示す、ディレクトリになっています。

[図 2-1-6] シミュレーション・データ用ディレクトリ

シミュレーション・データ用ディレクトリ

cont.lib は、ライブラリファイル です。この講座専用の汎用的なサブサーキット(サブルーチンに相当するもの)を集めたライブラリです。

◆ PSPICEでは、シミュレータの中に DESIGN MANAGER と呼ばれるプログラムがあり、この DESIGN MANAGER がシミュレータの実行を管理しています。
PSPICE を実行すると、実行結果を収容する、数種類のファイルが、DESIGN MANAGER によって、自動的に作成されます。これらのファイルは、実行対象の回路ファイル (*.cir)が収容されているフォルダに作られます。
したがって、ダウンロードしたディレクトリを、そのままの形で保存しておきたい場合には、プログラム実行用の、別のディレクトリを作り、そこで実行した方が良いでしょう。

[注1] ダウンロードした回路ファイルの多くは、ライブラリファイル cont.lib を使用します。ライブラリファイルが、回路ファイルの1段上のディレクトリに置かれているものとして、回路ファイルを作ってあります。
したがって、実行用ディレクトリを作るときは、実行する回路ファイルの 1 段上のディレクトリに、ライブラリファイル cont.lib を置く構造に、してください。
[注2] 実行時に作られるファイル(*.dat ファイル)は、かなりのサイズになります(この講座でも、100kB 以上のものが多数あります)。
これらの実行時に作られるファイルは、保存の必要はありません。こまめに削除すれば膨大な量に膨れ上がることはありません。
それでも、実行用のディレクトリは、かなりの余裕を見ておく必要があります。

2.1.3.(3-B) ダウンロードの実行

◆ 先ず、右記のファイル「cnt.exe」をダウンロードし、それを解凍して、ディスクに保存してください。
ダウンロードして、それを解凍するのは、下記の手順によります。
(1)  上のフォルダ名「cnt.exe」のところを、マウスの右ボタンでクリックしてメニューを開きます。
Netscape Communicator の場合は下記左側の「リンクを名前を付けて保存(S)」、Internet Explorerの場合は下記右側の「対象をファイルに保存(A)」を選んでクリックしてください。

Netscape Communicatorの場合    Internet Explorerの場合
Netscape              Internet Explorer

(2)  すると、「ファイル名を付けて保存」ダイアログボックスが開きますから、「保存する場所(I)」に保存したい場所(下記の例ではフォルダ Control になっています)を選び、「ファイル名(N)」は cnt.exe を指定して、「保存(S)」をクリックします。

ファイル名を付けて保存

他のブラウザの場合でも、同様の方法でファイルを保存できます。
(3) このダウンロードしたファイル cnt.exe は、圧縮ファイルですから、解凍する必要があります。

[注] 圧縮とは、データの伝送量を減らすなどの目的で、元のデータを加工してデータ量を減らすことです。圧縮したものを元のデータに戻すことを、解凍と呼んでいます。

◆ 解凍は、上記のダウンロードし保存したファイル cnt.exe を、マウスでダブルクリックします。すると、同じ場所に、解凍されたフォルダ cnt が現れます (cnt を取り出せば、cnt.exe は不要ですから、削除して差し支えありません)。

2.1.4. テスト回路-1 を動かしてみる

       ―― トランジェント解析の例 ――

2.1.4.(1) 回路ファイル

◆ テスト回路を実際に動かしてみましょう。この章で使用する回路ファイルは、フォルダ cnt のサブディレクトリ sec21 に入っています。先ずテスト回路 tst01.cir を使います。
tst01.cir の内容をリスト 2-1-1 に示します。この回路の回路図は、図 2-1-7 です。簡単な回路ですから、回路図と対照すれば、リストの回路部分は、読み取ることができると思います(リストの詳細解説は2.1.5.参照)。

[リスト 2-1-1] トランジェント解析 TST01.CIR

トランジェント解析 TST01.CIR

◆ リストには、本文との参照が容易なように、行番号(赤色)を付け加えてあります。元の回路ファイルには、行番号はありません。

[図 2-1-7] TST01の回路図

TST01の回路図


2.1.4.(2) PSPICEを動かしてみる

◆ Windows のスタートメニューから、「プログラム」→「MicroSim Eval 8」→「PSPice A_D」でシミュレータを起動します。

spice画面

◆ ここで、「File」→「Open」とクリックして、「開く」ダイアログボックスを表示させ、

spice open画面

tst01.cir 指定して「開く(O)」をクリックすると、SPICEを実行します。
◆ SPICE の実行中には、進行状況が表示されます。ただし、演算時間が短いときは、実行がすぐ終わってしまうので、最終結果だけしか読めません。
エラーがなく実行が終了したときは、成功を通知してきます。成功の通知はしばらくすると自動的に消えます (OKをクリックして消すこともできます)。
図 2-1-8 は、実行後のSPICE画面です。

[図 2-1-8] 実行後のSPICE画面

実行後のSPICE画面


2.1.4.(3) PROBEで波形を見る

◆ PROBE は、SPICEによって作成された、波形データファイル *.dat を、画面に表示する、プログラムです。
PROBEは、SPICE 画面から直接呼び出せます。図 2-1-8 の画面で、「File」→「Run Probe」とクリックします。すると、ブランクの PROBE画面(下記)が表示されます。
SPICE から PROBE を呼び出したときは、そのとき SPICE が実行した xx.cir の波形データファイル xx.dat が自動的に選択されています。

probe画面上部 _

◆ PROBE画面では、まず必要な波形を呼び出します。ツールバーの「Add Trace」をクリック (または「Trace」→「Add」)すると、「Add Traces」ダイアログボックスが開きます。

Add Traceダイアログボックス _

「Add Traces」ダイアログボックスには、信号 (Simulation Output Variables)の一覧が表示されます。
◆ この中から、表示したい信号を、表示したい順にクリックします。その名称が、このダイアログボックス下部の「Trace Expression」に表示されます。

trce expession

◆ ここでは、V(1) と V(2) を選択してみましょう。選択して、「OK」をクリックすると、その波形が PROBE画面に表示されます(図 2-1-9)。

[図 2-1-9] tst01の PROBE画面

tst01のPROBE画面

[注1] 図 2-1-9 は、第1章 に示した波形画面とは、画面構成が異なります。第1章では、PROBE 画面を加工してあったからです。この図 2-1-8 は、PROBE画面そのままです。
[注2] 画面の表示形式は、「Tools」→「Options」によって変えることができます。図 2-1-9 のように、信号線上に□や◇などのシンボルを表示させる方が見やすくなります。
「Tools」→「Options」で「Use Symbols」の中にある「Auto」を「Always」に変えると、このシンボルが常時表示されるようになります。「Never」では、シンボルが表示されません。デフォルトは「Auto」です。「Auto」では、線の数が多く同一色が複数あるなど、必要なときのみ、シンボルが、表示されます。図 2-1-9 では、「Always」を使用しています。
[注3] PROBEプログラムは、直接起動することもできます。Windows のスタートメニューから、「プログラム」→「MicroSim Eval8」 →「Accessories」→「Probe」で起動します。
PROBE を直接起動したときは、次にツールバーの「Open」をクリックし、波形データファイル (*.dat) を、選択する必要があります。

2.1.4.(4) 検   討

2.1.4.(4-A) 値の読み取り (カーソルの使用)

◆ カーソル を用いることによって、波形上の各部の値を、正確に読み取ることができます。ツールバーの「Toggle Cursor」(または「Tools」→「Cursor」→「Display」)で、カーソルを表示させます (図 2-1-10)。

[図 2-1-10] カーソルを表示した画面

カーソルを表示した画面

カーソルを表示している信号名のところに、四角のマークが表示されます。
◆ カーソルは 2組あります。カーソルを表示させた初期画面では、2組とも 1番左の信号のところにあります。
カーソルを表示する信号名を移動するには、No.1カーソルは「Ctrl + 方向キー」、No.2カーソルは「Ctrl + Shift + 方向キー」を使います。図では、No2カーソルを V(2)に移動させてあります。
カーソルを信号波形上で移動するには、No.1カーソルは「方向キー」、No.2カーソルは「Shift + 方向キー」を使います。
カーソル座標点の値は Probe Cursor(図.2-1-10 の右下にあるボックス)に表示されます。No.1 と No.2 のそれぞれの値 (時刻、変数値) 、および No.1 と No.2 の差が表示されます。

[注] キー操作の「+」は複数のキーを同時に押す操作を表します。

2.1.4.(4-B) 画面のプリント

◆ PROBE で表示した画面は、プリント することができます。PROBE におけるプリントとは、PROBE画面の図形を、プリンタで印刷することです。
プリントは、ハードコピーではありません。PROBE画面は、任意の大きさに拡大/縮小して表示させることができますが、PROBE 画面が縮小されていたとしても、プリントは、フルサイズのフォーマットで精密に出力されます。
プリント出力はカラー・プリンタを使えばカラーで、モノクロ・プリンタを使えばモノクロで得られます。モノクロの場合、シンボルを表示しないと信号を識別することができません。
プリントを実行するにはツールバーで「Print」をクリックします。また「File」→「Print」でも実行でき、ツールバーの「Print」には無い、制御が可能です。
なお「File」→「Printer Setup」によって、あらかじめプリント条件を設定することが、できます。


目次に戻る   前に戻る   次に進む