LTspiceでシュミットトリガ・オシレータ

まずはじめに断っておきますが、シュミットトリガ・オシレータというのは私がシュミットトリガ・インバータを使った矩形波発振回路をそう呼んでいるだけで、一般的な名称ではありません。以下この回路を便宜上シュミットトリガ・オシレータと呼びます。

さて、鉄道模型に関する電子工作を行っているちださんのブログ「怪盗列車/Sailors Presents」にて、踏み切りの警報音を作成する回路が紹介されています。


上記の記事中で、シュミットトリガ・インバータを用いた発振回路は、実測した周波数と計算値の間に大きな誤差があるという指摘がなされています。
ちださんは、発振周波数の計算に趣味の電子回路工作ページ内の矩形波発振器(1)に書いてある式を用いたとのことです。
この計算式は以下のとおりです。

f = 1/T = 1/CR

結論から言うとこの誤差は、シュミットトリガ・インバータのヒステリシス幅のばらつきに起因するものです。
また、ヒステリシス幅の中心と電源電圧の中心とのずれは、出力論理がHの時間とLの時間の比(Duty比)のアンバランスに影響します。
今回は、LTSpiceを用いてその点を検証してみました。
以下に、シュミットトリガ・オシレータの基本回路とシミュレーション結果を示します。






グラフ中の黄緑のラインが出力電圧波形で、青のラインがU1の入力端子における電圧波形です。
出力からR1を通じて電流が流れることにより、C1が充放電されています。
青のグラフの最大値が、U1の上のしきい値で最小値が下のしきい値になります。シュミットトリガ・オシレータは、入力電圧が上下のしきい値を行ったり来たりすることにより発振する弛張発振回路の一種です。

この上下のしきい値の値ですが、個体によりかなりのばらつきがあるようです。
前述したとおり、しきい値のばらつきが発振周波数やDuty比に影響を与えます。




上の表は、東芝セミコンダクタのTC74HC14AP,TC74HC14AFページからダウンロードしたデータシートより抜粋しました。
上のしきい値Vp、下のしきい値Vn、ヒステリシス幅Vhすべてに関してかなりのばらつきがあることが読み取れます。

さて、それではしきい値の変化が発振周波数の変化にどのように影響するのかをLTspiceでみてみましょう。シュミットトリガ・インバータはしきい値を自由に設定することが出来ないので、同等の動作をする反転出力型ヒステリシス・コンパレータでシュミットトリガ・オシレータを構成します。






最初は、上下のしきい値の中心と電源電圧の中心が一致しているケース。グラフ中の黄緑のラインが出力電圧波形、青のラインがシュミットトリガ・インバータを使っていたときの入力端子に相当する反転入力端子の電圧波形、赤のラインはしきい値電圧をあらわす非反転入力端子の電圧波形です。






次は、R3とR4の値を変更してしきい値の中心電圧を下げたもの。発振周波数は大して変わっていませんがDuty比が50%より減少する方向に変化しているのがわかります。






最後がR2を変更してヒステリシス幅を大きくしたもの。Duty比はほぼ50%のままですが、発振周波数が下がっているのが分かります。

これら3つの例では、はじめのほうに挙げた発振周波数を計算する式で変数となっているR1,C1は変更されていません。
しかし、発振周波数にはこの式に現れない上のしきい値Vpと下のしきい値Vnが影響してきます。

実を言うと、ナショナルセミコンダクタのデータシートCD4093BM/CD4093BC Quad 2-Input NAND Schmitt Trigger(PDF,158KB)に上下のしきい値電圧VpとVnを含んだ周波数を求める式が載っています。P4のTypical Applicationsの最初Gated Oscillatorです。




このデータシート上では、CONTROL端子を含んだ発振回路となっていますが、CONTROL端子をHに固定すれば今まで見てきたシュミットトリガ・オシレータとなります。データシート中では上のしきい値VpをVt+、下のしきい値VnをVt-と表記されています。適宜読み替えてください。
画像だけでは、鮮明でないので計算式を記します。

t1 = R1 * C1 * ln{(Vdd-Vn)/(Vdd-Vp)}
t2 = R1 * C1 * ln(Vp/Vn)
f = 1/(t1+t2)

ここで、t1は出力がLの時間、t2は出力がHの時間、fは発振周波数です。lnは自然対数で、Vddは電源電圧です。データシート上ではt0も定義されていますが、過渡領域なので今回は割愛します。
それでは、この式に沿って実際に周波数を計算をしてみましょう。ちださんは電源電圧を12VといっていたのでおそらくCMOS標準ロジックの4584を利用したのでしょう。まずは、東芝セミコンダクタのTC4584BP,TC4584BFページからダウンロードした4584のデータシートからVp、Vnを求めます。




電源電圧が5V、10V、15Vのときしか記述が無いので間は線形補完して考えます。しきい値のばらつきも大きいのですが、さしあたって25℃における標準値を利用することにします。




x=12のときはそれぞれ、Vp=7.81,Vn=4.35

最終的な抵抗値を求める式は、

R = 1/{f*C*ln{(Vp*(Vdd-Vn))/(Vn*(Vdd-Vp))}}

この式に
C=0.01*10^-6
Vdd=12
Vp=7.81
Vn=4.35
をそれぞれ代入すると

f=329.62 つまり「ミ」の音のとき R=256kΩ
f=391.99 つまり「ソ」の音のとき R=215kΩ

一応、ちださんが二つの方法で見積もった値よりは実測値(207kΩ@329.62Hz,161.3kΩ@391.99Hz)に近づいた模様ですが、やはりそのまま実用になる値ではありません。




ほとんど負け惜しみですが、全温度領域におけるVp,Vnのとりうる値の範囲を図示してみました。これだけ、誤差範囲があるんだから計算から正確な発振周波数を求めるのは無理です。
もちろん、ヒステリシス電圧の範囲にも制限があるので色が付いている部分すべての組み合わせが同時に取り得るわけではないですが。

74HC14についても同様の電源電圧‐しきい値電圧特性のグラフを描いてみました。




結論を言うと、シュミットトリガ・オシレータの発振周波数はしきい値のばらつきにより大きく変化するため、正確な発振周波数やDuty比を必要とする用途には適さない。一方、インバータひとつで構成できるので非常に手軽であり、大まかな発振周波数はf=1/(CR)で求められる。半固定抵抗を用いればある程度の微調整は可能。

なお、LTspiceシミュレーションに用いた74HC14のモデルは、LTspiceユーザーグループのものを、LM393のモデルはテキサス・インスツルメンツの物をそれぞれ利用しました。

参考文献
踏切警報音 テスト回路図 - 怪盗列車/Sailors Presents
踏切音の定数を計算する - 怪盗列車/Sailors Presents
矩形波発振器(1) - 趣味の電子回路工作
TC4584BP,TC4584BF - 東芝セミコンダクタ
CD4093BM/CD4093BC Quad 2-Input NAND Schmitt Trigger(PDF,158KB) - ナショナルセミコンダクタ
LTspiceユーザーグループ
LM393 - テキサス・インスツルメンツ


comment

Secret

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性CPAPICOPアンプecalj常微分方程式モンテカルロ解析状態密度トランジスタodeDOSインターフェース定電流スイッチング回路PDS5022半導体シェルスクリプト分散関係レベルシフト乱数HP6632AR6452A可変抵抗トランジスタ技術温度解析ブレッドボードI2C反強磁性確率論数値積分セミナーバンドギャップバンド構造偏微分方程式非線形方程式ソルバ熱設計絶縁ISO-I2Cカオス三端子レギュレータLM358GW近似マフィンティン半径A/DコンバータフォトカプラシュミットトリガLEDPC817C発振回路数値微分直流動作点解析サーボカレントミラーTL431アナログスイッチUSB74HC4053bzqltyVESTA補間電子負荷アセンブライジング模型BSch量子力学単振り子2ちゃんねるチョッパアンプLDA開発環境基本並進ベクトルFFT標準ロジックブラべ格子パラメトリック解析抵抗SMPMaxima失敗談ラプラス方程式繰り返し位相図スイッチト・キャパシタ熱伝導状態方程式キュリー温度gfortranコバルトTLP621不規則合金Quantum_ESPRESSO六方最密充填構造ランダムウォーク相対論ewidthスピン軌道相互作用FETQSGWVCAcygwinスレーターポーリング曲線GGA仮想結晶近似PWscfシュレディンガー方程式LM555ハーフメタル固有値問題NE555最小値ガイガー管QNAPUPS自動計測ダイヤモンドマントルTLP552格子比熱最適化MCU井戸型ポテンシャル最大値xcrysdenCIF条件分岐詰め回路フェルミ面差し込みグラフスーパーセルfsolveブラウン運動awk過渡解析起電力三角波第一原理計算FXA-7020ZRWriter509Ubuntuテスタ熱力学データロガーTLP521OpenMPubuntu平均場近似MAS830LトランスCK1026PIC16F785PGA2SC1815EAGLEノコギリ波負帰還安定性ナイキスト線図MBEOPA2277P-10フィルタCapSenseAACircuitLMC662文字列固定スピンモーメントFSMTeX結晶磁気異方性全エネルギーc/a合金multiplotgnuplot非線型方程式ソルバL10構造正規分布等高線ジバニャン方程式初期値interp1fcc面心立方構造ウィグナーザイツ胞半金属デバイ模型電荷密度重積分SIC二相共存磁気モーメント不純物問題PWgui擬ポテンシャルゼーベック係数ZnOウルツ鉱構造edeltquantumESPRESSOフォノンリジッドバンド模型スワップ領域BaO岩塩構造ルチル構造ヒストグラム確率論マテリアルデザインフラクタルマンデルブロ集合キーボードRealforceクーロン散乱三次元疎行列縮退化学反応関数フィッティング最小二乗法Excel直流解析PCTS-110TS-112日本語パラメータ・モデル等価回路モデルcif2cell入出力陰解法熱拡散方程式HiLAPW両対数グラフCrank-Nicolson法連立一次方程式specx.fifort境界条件片対数グラフグラフの分割円周率ヒストグラム不規則局所モーメントGimpシンボル軸ラベル凡例線種トラックボール

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ