三角波と矩形波を発生させる信号発生器




LTspiceドット・コマンドから学ぶアナログ回路アーカイブs

■問題
OPアンプ回路

平賀 公久 Kimihisa Hiraga

 図1は,out1に三角波,out2に矩形波を発生させるファンクション・ジェネレータです.回路は,aの電圧を生成する回路,積分回路,ヒステリシス・コンパレータ,スイッチで構成され,aの電圧で,三角波や矩形波の特性を変化させます.
 この回路で,V1の直流電圧を2.5Vから3.5Vへ変化させたとき,out2の矩形波の変化として正しいのは(a)~(d)のどれでしょうか.ただし,OPアンプは,入出力レール・ツー・レールの特性で,スイッチは,out2が「“H”でOFF」,「“L”でON」とします.


図1 三角波と矩形波を発生させるファンクション・ジェネレータ
out1が三角波,out2が矩形波になる.

(a)周波数が高くなる
(b)周波数が低くなる
(c)デューティ比が高くなる
(d)デューティ比が低くなる

■ヒント

 V1の電圧が2.5Vから3.5Vに変わると,積分回路の入力となるaの電圧(Va)が変わります.aの電圧が変わることにより,周波数とデューティ比の変化はどうなるかを検討すると分かります.

■解答


(a)周波数が高くなる

 図1のVaは,out2が“H”のとき,スイッチはOFFして「Va=+V1」になります.逆に,out2が“L”のとき,スイッチはONして「Va=-V1」になります.このようにVaは,スイッチの状態により2つの電圧を生成します.
 V1が2.5Vから3.5Vへ高くなると,Vaの2つの電圧は「Va=+2.5V,Va=-2.5V」から「Va=+3.5V,Va=-3.5V」へ変わります.Vaが高くなると,C1への充電電流と放電電流が高くなって,out1の三角波の斜辺の傾きが高くなり,周波数が高くなります.out1の三角波の周波数が高くなるので,out2の矩形波の周波数も高くなります.
 一方,out2のデューティ比は,ヒステリシス・コンパレータのしきい値で決まります.しきい値は,out2の電圧とR5とR6で決まり,V1に関係ないのでデューティ比は変わりません.
 以上の動作より,V1が2.5Vから3.5Vへ変化すると,(a)の周波数が高くなるが正解になります.

■解説

●三角波と矩形波を発生する基本回路
 図1の三角波と矩形波を発生させるファンクション・ジェネレータは,図2の三角波と矩形波を発生させる基本回路が元になっています.図2図1のaの電圧を生成する回路とスイッチが無い回路になります.図2の場合,積分回路の入力とヒステリシス・コンパレータの出力(out2)を結線しています.よってout2の“H”電圧と“L”電圧の2つの状態により,積分回路の入力は「Va=+Vo」と「Va=-Vo」の2つの電圧になります.


図2 三角波と矩形波を発生させる基本回路

●基本回路の動作
 図2の回路動作ついて,図3のプロットを用いて解説します.図3は,図2をシミュレーションしたプロットです.図3の上段が,out1の三角波,図3の下段がout2の矩形波になります.図3の上段に示した+VTHはヒステリシス・コンパレータの正のしきい値,-VTHは,ヒステリシス・コンパレータの負のしきい値です.図3の下段に示したTが,矩形波の1周期になる時間です.


図3 基本回路のout1とout2の波形をプロット
上段はout1の三角波,下段はout2の矩形波.

 out2が+Voのとき,積分回路の入力とヒステリシス・コンパレータの出力を結線しているので,図2の積分回路の入力は「Va=+Vo」になります.積分回路の入力が「Va=+Vo」のときは,R4からC1へ向かって電流が流れ,out1は時間の経過とともに電圧が低くなる三角波の斜辺となります.その電圧がヒステリシス・コンパレータの負のしきい値である-VTHと交差すると,out2は,-Voに切り替わります.
 out2が-Voに切り替わると,積分回路の入力が「Va=-Vo」になって,C1からR4へ向かって電流が流れ,out1は,時間の経過とともに電圧が高くなる三角波の斜辺に変わります.その電圧がヒステリシス・コンパレータの正のしきい値と交差すると,out2は+Voに戻ります.
 この一連の動きが1周期になり,その後は継続して繰り返されるので,out1は三角波が発生し,out2は矩形波になります.
 以上の動作より,三角波の周波数は,積分回路で発生する三角波の斜辺の傾きに関係し,傾きが高いと周波数が高くなります.具体的に,三角波の斜辺の傾きは,C1とR4で決まります.よって,周波数の調整は,積分回路のC1とR4の回路定数で調整します.デューティ比は,ヒステリシス・コンパレータのしきい値で決まります.+VTHと-VTHの絶対値が等しいとき,デューティ比は,50%になります.

●三角波と矩形波の周波数
 図2の周波数について,図3の波形も用いながら机上計算します.図3のT/2の時間において,コンデンサ(C1)の電流をIC1とすると,IC1は,積分回路の入力電圧Vaと抵抗R4で決まるので式1になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(1)

 図3の上段のプロットのように,積分回路のコンデンサの電圧(VC1)は,T/2の時間で2VTHの電圧変化になります.この関係は式2になります.

・・・・・・・・・・・・・・・・・・・・・・・・・(2)

 式1と式2のIC1が等しく,また,1周期の逆数が周波数であることより,三角波の周波数は式3になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(3)

 次に,ヒステリシス・コンパレータの正のしきい値(+VTH)と負のしきい値(-VTH)を求めます.ヒステリシス・コンパレータの2つのしきい値はR5とR6の抵抗値と,out2の電圧で決まります.図2のout2の負側の電圧を-Voとすると,正のしきい値は式4になります.
 具体的に,図2の抵抗は「R5=2kΩ」,「R6=10kΩ」です.そして,使用しているOPアンプは,入出力レール・ツー・レールなので,OPアンプ出力の-Voは負の電源と同じ-5Vになり「-Vo=-5V」です.これらを式4に入れると,「+VTH=1V」になります.図3の上段の+VTHも1Vになっているのが分かります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(4)

 同じように,図2のout2の正側の電圧を+Voとすると,負のしきい値は,式5になります.式5に「R5=2kΩ」,「R6=10kΩ」,「+Vo=+5V」を入れると,「-VTH=-1V」になります.図3の上段の-VTHも-1Vになっているのが分かります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(5)

 式3の周波数を使いやすい式にします.積分回路の入力とヒステリシス・コンパレータの出力を結線しているので「Va=Vo」になること,式4と式5よりしきい値の絶対値は「VTH=(R5/R6)*Vo」になることを用い,これらを式3に入れると,式6の周波数の式に書き換えられます.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(6)

 式6に図2の「C1=0.01μF」,「R4=124kΩ」,「R5=2kΩ」,「R6=10kΩ」を入れると,「f=1kHz」になります.図3のプロットでカーソルを用いて周波数を調べると,机上計算と同じ1kHzの結果になります.
 ヒステリシス・コンパレータのしきい値の導出については,過去のメルマガ「ヒステリシス・コンパレータのしきい値」で詳しく解説していますので,そちらを参照してください.

●V1の電圧で周波数を変える
 図2を元に,三角波と矩形波の周波数を電圧で変える回路が図1になります.図2から図1への変更点は,aの電圧を生成する回路を追加し,out2の電圧で切り替わるスイッチのON/OFFにより,積分回路の入力になる2つのVaをV1の電圧源から供給します.具体的には,図1のaの電圧を生成する回路は,スイッチがOFFになると,U1のOPアンプの反転端子と非反転端子がバーチャル・ショートになります.このときのaの電圧は,式7になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(7)

 次に,スイッチがONになると,R1とR2,U1による反転アンプになります.このときのaの電圧は,R1とR2は同じ抵抗値なので,式8になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(8)

 このように,図1のスイッチはout2の状態で切り替わり,aの電圧は式7と式8の2つの状態になります.

●具体的なスイッチを使ってシミュレーションする
 図4は,図1をシミュレーションする回路で,図1のスイッチをLTspiceで使える部品で具体化しています.U5のアナログ・スイッチは,DとS間がスイッチになり,INは,スイッチの状態をコントロールする端子です.U4のコンパレータは,アナログ・スイッチのINの入力レベルに合わせるために使います.周波数を変えるV1の電圧は,変数{in}で値を変えられるようにしています.「.meas」ステートメントの4行はout2の矩形波の周波数とデューティ比を自動で計算します.


図4 図1をシミュレーションする回路
図1のスイッチは,U4のコンパレータとU5のアナログ・スイッチで置き換えている.

 図4の三角波と矩形波が発生する原理は,図2の基本回路と同じなので,先程の式1~式5の机上計算が使えます.図4のV1が2.5Vのときの周波数は,式3から求められます.aの電圧を生成する回路より,式3のVaは「Va=2.5V」,VTHは,式4と式5より「VTH=1V」なので,式9の504Hzになります.

・・・・・・・・・・・・(9)

 V1が3.5Vになると,同じ計算により「Va=3.5V」,「VTH=1V」なので,式10の706Hzになります.このようにV1が高くなると周波数が高くなります.

・・・・・・・・・・・・(10)

●周波数とデューティ比の確認
 図5は,図4のV1の変数{in}を「.param in=2.5」で2.5Vにしたときのシミュレーション結果です.上段がaの波形,中段がout1の三角波の波形,下段がout2の矩形波の波形になります.


図5 V1=2.5Vのときの波形をプロット
上段はa点の波形.
中段はout1の三角波の波形.
下段はout2の矩形波の波形.

 V1が2.5Vなので,上段のaの電圧は,スイッチOFFで2.5V,スイッチONで-2.5Vになります.中段の三角波と下段の矩形波の周波数は,式9で求めた504Hzとほぼ同じ周波数になります.デューティ比は,V1の電圧に関係せず,ヒステリシス・コンパレータの2つのしきい値である+VTHと-VTHで決まります.+VTHと-VTHの絶対値が等しいときは,デューティ比は50%になります.

 図6は,図4のコメントにしていた「.step param in 1 4 0.1」をSPICE directiveにし,V1の変数{in}を1V~4Vを0.1Vステップでスイープしたときの,「.meas」で計算した周波数とデューティ比をプロットしました.図6の上段はV1を変化させたときの周波数の変化,下段はV1を変化させたときのデューティ比の変化になります.このプロットより,V1が変化すると周波数が変わります.先程の式10で計算したV1が3.5Vのときの周波数706Hzはシミュレーションとほぼ一致します.デューティ比は,V1に関係ないので,50%で一定になります.図6より,問題の答えは,(a)の周波数が高くなるが正解になるのが分かります.


図6 V1の直流電圧をスイープしたときの特性
上段は矩形波の周波数でV1に比例して変化する.
下段は矩形波のデューティ比でV1に依存せずに一定になる.

■データ・ファイル

解説に使用しました,LTspiceの回路をダウンロードできます.
LTspice8_044.zip

●データ・ファイル内容
Function Generator 1.asc:図2の回路
Function Generator 1.plt:図2のプロットを指定するファイル
Function Generator 2.asc:図4の回路
Function Generator 2.plt:図4のプロットを指定するファイル

■LTspice関連リンク先


(01) LTspice ダウンロード先
(02) LTspice Users Club
(03) LTspice メール・マガジン全アーカイブs
(04) ◆LTspice電子回路マラソン・アーカイブs
(05) ◆LTspiceアナログ電子回路入門アーカイブs
(06) ◆LTspice電源&アナログ回路入門アーカイブs
(07) ◆IoT時代のLTspiceアナログ回路入門アーカイブs
(08) ◆オームの法則から学ぶLTspiceアナログ回路入門アーカイブs
(09) ◆LTspiceエデュケーショナル・ファイルで学ぶアナログ回路アーカイブs
(10) ◆LTspiceドット・コマンドから学ぶアナログ回路アーカイブs

トランジスタ技術 表紙

CQ出版社オフィシャルウェブサイトはこちらからどうぞ

CQ出版の雑誌・書籍のご購入は、ウェブショップで!


CQ出版社 新刊情報



トライアルシリーズ

高精度cm級GPS測位キット実験集

計測器BASIC

改訂新版 ディジタル・オシロスコープ実践活用法

ボード・コンピュータ・シリーズ

MicroPythonプログラミング・ガイドブック

データサイエンス・シリーズ

Pythonが動くGoogle ColabでAI自習ドリル

アナログ回路設計オンサイト&オンライン・セミナ