電子回路の小ネタです.分かりにくいという話をちらほら聞くシュミットトリガについて.
シュミットトリガはヒステリシスコンパレータとも呼ばれます.説明に先立って,まずヒステリシス特性のない普通のコンパレータの話から始めましょう.こんな回路です.
ただのオペアンプじゃないか,と思われた方,その通りです.$v_{\mathrm{i}}$が入力電圧,$v_{\mathrm{o}}$が出力電圧,$v_{\mathrm{ref}}$が参照電圧で,増幅率を$\mu$とするならば,$v_{\mathrm{o}}$は次式で決まります.
v_{\mathrm{o}}=\mu(v_{\mathrm{i}}-v_{\mathrm{ref}})
$\mu$は通常とても大きく,理想オペアンプでは$\mu=\infty$と仮定されます.実際には駆動電圧$V_{\mathrm{L}}\sim V_{\mathrm{H}}$で飽和しますので,入出力関係は次のようなグラフで表されます.
これは実質的に,$v_{\mathrm{i}}$が$v_{\mathrm{ref}}$よりも大きいか小さいかを判別する二値関数になっています.つまり,オペアンプは単体でコンパレータ=比較回路としての機能を持つ,と言えます.
デジタル信号処理においては,コンパレータは鈍ったデジタル信号を整形する働きがあります.
ですが,この回路では実用上不都合が生じます.$v_{\mathrm{i}}$が$v_{\mathrm{ref}}$に近い値をとっているとき,信号に通常重畳される高周波なノイズの影響で,両者の大小関係は頻繁に入れ替わります.コンパレータがこれに敏感に応答すると,出力がせわしなく切り替わってしまいます.
これを改善するのがシュミットトリガです.こんな回路です.
通常の増幅回路と異なり,出力からの帰還信号が$+$入力に入っていることに注意しましょう.抵抗$R_{1}$を流れる電流値を$i$とおき,理想的に入力間を流れる電流は$0$である(つまり$R_{1}$を流れた電流がそのまま全て$R_{2}$にも流れる)と仮定すると,次式が成り立ちます.
v_{\mathrm{i}}-(R_{1}+R_{2})i=v_{\mathrm{o}}
\quad\Leftrightarrow\quad
i=\frac{v_{\mathrm{i}}-v_{\mathrm{o}}}{R_{1}+R_{2}}
よって,$+$入力の電圧$v_{+}$は次となります.
v_{+}=v_{\mathrm{i}}-\frac{R_{1}}{R_{1}+R_{2}}(v_{\mathrm{i}}-v_{\mathrm{o}})
さて,回路はコンパレータですから,出力$v_{\mathrm{o}}$は$V_{\mathrm{L}}$か$V_{\mathrm{H}}$のどちらかとなります.今,$v_{\mathrm{o}}=V_{\mathrm{L}}$であるとしましょう.すなわち$v_{+}<v_{\mathrm{ref}}$となっているということです.これは次のように書き換えられます.
v_{\mathrm{i}}-\frac{R_{1}}{R_{1}+R_{2}}(v_{\mathrm{i}}-V_{\mathrm{L}})<v_{\mathrm{ref}}
\quad\Leftrightarrow\quad
v_{\mathrm{i}}<v_{\mathrm{ref}}+\varDelta v_{\mathrm{ref}+}
ただし,次のように定義しました.
\varDelta v_{\mathrm{ref}+}\overset{\mathrm{def}}{=}\frac{R_{1}}{R_{2}}(v_{\mathrm{ref}}-V_{\mathrm{L}})
つまり,出力$v_{\mathrm{o}}$が$V_{\mathrm{L}}$から$V_{\mathrm{H}}$に切り替わる閾値が,$v_{\mathrm{ref}}$から$\varDelta v_{\mathrm{ref}+}$だけ大きくなったと言えます($v_{\mathrm{ref}}>V_{\mathrm{L}}$と考えて良いので,$\varDelta v_{\mathrm{ref}+}>0$は自明です).
今度は$v_{\mathrm{o}}=V_{\mathrm{H}}$であるとしましょう.上記と同様に考えれば,これは$v_{+}\geq v_{\mathrm{ref}}$となっているということですから,次のように書き換えられます.
v_{\mathrm{i}}+\frac{R_{1}}{R_{1}+R_{2}}(V_{\mathrm{H}}-v_{\mathrm{i}})\geq v_{\mathrm{ref}}
\quad\Leftrightarrow\quad
v_{\mathrm{i}}\geq v_{\mathrm{ref}}-\varDelta v_{\mathrm{ref}-}
ただし,次のように定義しました.
\varDelta v_{\mathrm{ref}-}\overset{\mathrm{def}}{=}\frac{R_{1}}{R_{2}}(V_{\mathrm{H}}-v_{\mathrm{ref}})
つまり,出力$v_{\mathrm{o}}$が$V_{\mathrm{H}}$から$V_{\mathrm{L}}$に切り替わる閾値が,$v_{\mathrm{ref}}$から$\varDelta v_{\mathrm{ref}-}$だけ小さくなったと言えます($v_{\mathrm{ref}}< V_{\mathrm{H}}$と考えて良いので,$\varDelta v_{\mathrm{ref}-} >0$は自明です).
$v_{\mathrm{i}}$が増えるときと減るときとで出力の切り替わる閾値が異なることで,入出力関係は次のような変化の方向に依存するグラフで表されることになります.
その結果,$v_{\mathrm{o}}$がいちど$V_{\mathrm{H}}$に転じたら,$v_{\mathrm{i}}$が少々変動したくらいでは$V_{\mathrm{L}}$には戻らなくなります.逆もまた然りです.このように,信号変化の経路にヒステリシスを持たせることで,ノイズに対してある程度の耐性が生まれます.
ちなみに,シュミットトリガのMIL記号は,上記のヒステリシス特性を持つ入出力関数を意匠化したものです.
もしかすると,「あれ,仮想短絡によって$v_{+}=v_{\mathrm{ref}}$となるんじゃないの?その場合は
v_{\mathrm{ref}}=v_{\mathrm{i}}-\frac{R_{1}}{R_{1}+R_{2}}(v_{\mathrm{i}}-v_{\mathrm{o}})
\quad\Leftrightarrow\quad
v_{\mathrm{o}}=v_{\mathrm{ref}}+\frac{R_{2}}{R_{1}}(v_{\mathrm{ref}}-v_{\mathrm{i}})
となるよね…」と思った人がいるかも知れません.仮想短絡の考え方が使えるのは帰還信号によって出力が安定化する場合だけです.シュミットトリガは帰還信号が$+$入力に入り,出力が発散しますので,仮想短絡の考え方は使えません.注意しましょう.