タグ: シュミットトリガー

  • シュミットトリガー、上がるときと下がるときでしきい値を変える理由

    シュミットトリガー、上がるときと下がるときでしきい値を変える理由

    センサーの電圧が境目を少し行き来するたびに、出力がオンとオフを繰り返す。信号がゆっくり変わる場面では、小さな揺れでも判定が落ち着かなくなることがあります。シュミットトリガー(Schmitt trigger)は、オンへ切り替える境目と、オフへ戻す境目を分ける回路です。一度切り替わった状態を保つ余地を設け、境目付近の揺れに振り回されにくくします。

    簡単にまとめると?

    • 一つのしきい値だけで判定すると、その付近の電圧の揺れが出力の切り替わりになります。シュミットトリガーは上側と下側の二つのしきい値を持ちます。
    • 二つのしきい値の間では、直前の出力状態を保ちます。このように過去の状態によって応答が変わる性質をヒステリシスと呼びます。
    • しきい値の間隔を広くすると小さな揺れでは切り替わりにくくなりますが、検出したい変化も見逃すことがあります。入力の振れ幅と、実際の回路の出力電圧を合わせて考えます。

    0 Vを何度もまたぐ入力

    まず、入力電圧が0 Vより高ければHigh、低ければLowを出す理想的な比較器、コンパレーターを考えます。入力が−0.1 V、+0.1 V、−0.1 Vと動くと、出力もLow、High、Lowと変わります。回路は決められた比較をしているだけですが、ゆっくり増えている信号の上にこのような揺れが重なれば、一つの変化を何度も検出することになります。

    ここで、LowからHighへ変える境目を+0.5 V、HighからLowへ戻す境目を−0.5 Vにします。Lowで始まった出力は、入力が0 Vを少し超えても変わりません。+0.5 Vを超えて初めてHighになり、その後は−0.5 Vを下回るまでHighを保ちます。入力の上昇に対して出力がHighになる、非反転形の例です。

    同じ入力でも、直前の出力によって答えが違う

    この回路へ0 Vを入れたとき、出力はHighにもLowにもなり得ます。直前に+0.5 Vを超えていればHigh、直前に−0.5 Vを下回っていればLowです。入力の現在値だけでなく、そこへ至る経路も応答を決めます。この性質がヒステリシスです。

    下図は、二つの理想的な判定を同じ入力列で比べた計算例です。最初の−1 Vで出力をLowにそろえています。0 Vを境目にする比較器は8回切り替わる一方、±0.5 Vのしきい値を持つ場合は、+0.6 Vへの上昇と−0.6 Vへの下降の2回だけ切り替わります。横軸は入力を与えた順番であり、回路の応答時間を測ったグラフではありません。

    同じ12点の入力列を、しきい値0 Vの比較器と、上下のしきい値がプラスマイナス0.5 Vのシュミットトリガーで判定した独自計算図。前者は8回、後者は2回切り替わる。横軸は入力の順番。
    独自計算。上段が入力、中段が0 Vで判定する比較器、下段が±0.5 Vで切り替わる非反転形。遅延・入力電流・雑音の追加はモデルに含めていません。

    最初の状態を決めた点も大切です。電源を入れた時点から入力が二つのしきい値の間にある場合、こうした理想的な説明だけでは最初の出力を指定できません。「間の値なら必ずLow」と読み替えることはできないのです。

    出力を戻すと、今の状態を保つ働きになる

    二つのしきい値は、出力の一部を比較器のプラス入力へ戻す正帰還で作れます。出力がHighへ動くと、その変化がプラス入力も押し上げ、Highになる方向をさらに強めます。Lowへ動くと逆の方向に働きます。出力が変わることで、次に反対側へ切り替わる条件も変わります。

    数値で確かめるため、マイナス入力を0 Vに固定し、プラス入力へ入力電圧を抵抗Rinで、出力電圧を抵抗Rfでつなぐモデルを使います。比較器の入力へ電流が流れ込まないと仮定すると、プラス入力の電圧V+は次のように決まります。

    V+ = (Vin / Rin + Vout / Rf) / (1 / Rin + 1 / Rf)

    切り替わりの境界ではV+が0 Vなので、入力側のしきい値はVin = −(Rin / Rf) × Voutです。Rin=10 kΩ、Rf=100 kΩ、出力のLowを−5 V、Highを+5 Vと仮定します。Lowの間は、−0.1 × (−5 V) = +0.5 Vが上側のしきい値になります。Highになると、−0.1 × (+5 V) = −0.5 Vが下側のしきい値になります。

    二つの境目の間隔、ヒステリシス幅は1 Vです。ここでの±5 Vは出力電圧として置いた値で、電源電圧を±5 Vにすれば必ず同じ出力になるという意味ではありません。また、入力がしきい値と厳密に等しい瞬間の決着や切り替わりの速さは、この静的なモデルでは扱っていません。

    広げるほどよいとは限らない

    しきい値を±0.1 Vに狭めれば、小さな入力変化にも反応しやすくなります。一方、境目をまたぐ揺れに対して状態を保てる余裕は小さくなります。±0.8 Vへ広げた場合は、図の入力が最初の−1 Vから+0.6 Vまでしか上がらないため、出力はLowのままです。揺れを無視できても、拾いたい変化まで届かなくなります。

    そこで選ぶべきなのは、雑音に対して十分な余裕を持ち、必要な入力変化では両方のしきい値を越えられる幅です。実装では抵抗の誤差、入力オフセット、負荷による出力電圧の変化なども境界を動かします。変化の速い信号なら、伝搬遅延や出力が変化する速さも別に確かめる必要があります。

    シュミットトリガーは、入力波形を平均して滑らかにするフィルターとは働きが異なります。波形に揺れが残っていても、反対側のしきい値へ達するまでは判定を保つ仕組みです。二つの境目を行き来するほど大きな揺れまで取り除くものではありません。「何Vで切り替わるか」に加えて、「切り替わったあと、何Vまで戻れば元の状態になるか」を見ると、回路の振る舞いを追いやすくなります。

    出典

    1. MIT OpenCourseWare, 6.071 Introduction to Electronics, Signals and Measurement, Spring 2006, Laboratory 22: Comparators and Schmitt Trigger(pp.5–9。雑音を含む比較、非反転形・反転形としきい値)。
    2. Cornell University, Physics 360, Laboratory Manual(公開ファイル名20100728、§2.8、冊子pp.43–46。正帰還、履歴による状態、回路条件)。本文と図の抵抗値・入力列は説明用に設定した計算例です。