コンパレーターのヒステリシスの計算

2つの入力を比較して、どちらの電圧が高いかで出力が決定するコンパレーター。身近なところではコイルガン、レールガンなどの充電停止回路に使用されています。え、身近じゃない?
ほとんどの場合、コンパレーターを使用する際にはヒステリシスが必要になってきますよね?あれってどうやって設定するんでしょう。
この記事ではコンパレーターのヒステリシスの設定の仕方と計算方法を紹介します。

予備知識

まずはこの記事を読むにあたって必要な知識を簡単に説明します。
知っとるわハゲ!って方はこちらから飛ばせます

コンパレーター、ヒステリシス is 何?

コンパレーターの回路図記号 コンパレーターとはその名の通り、比較するものです。具体的には、非反転入力(V+)の電圧が反転入力(V-)の電圧より高いとH、低いとLを出力します。
ヒステリシスとは、、、少々説明が難しいですね。
反転入力に2Vかかっている状態で、非反転入力が1Vから3Vに変化するとき、非反転入力が2Vを超えた時点で出力はLからHに変化しますよね。
その後、非反転入力が3Vから1Vに変化すると、本来なら非反転入力が2Vを下回った時点で出力が変化するはずですが、ヒステリシスがついてると例えば1.5Vになるまで出力が変化しません。これがヒステリシスです。

ヒステリシスが必要なわけ

コンパレーターを、どちらかの入力に基準となる電圧を常にかけておいて、もう一方の電圧が基準電圧を超えたり下回ったときに出力が変化するように使用するときを考えます。
比較対象の入力が基準電圧あたりになったとき、例えばノイズの影響で基準電圧を跨いでいったり来たりすると、ノイズの影響で出力がカチカチカチカチ変化してしまいます。ウザいですよねw
他にも、たとえばエアコンで、室温が25℃を超えたら暖房を切るという動作をするようにコンパレーターを使用したとしましょう。
すると室温が25℃に達し、暖房が切れます。暖房が切れると室温が下がり、すぐにまたエアコンが部屋を暖めだします。でもすぐに25℃に達したまた暖房が切れて。。。ウザいですよねw
こういう時に例えば室温が20℃を下回ったら暖房の運転を再開するようにすれば、すぐ切れたい付いたりせずに済みますよね。ヒステリシスはそういう時に使われます。

オープンコレクタ出力

オープンコレクタ出力 オープンコレクタ出力とは出力方式の一つです。コンパレーター内部のトランジスタのコレクタが出力端子となります。
コンパレーター内部にトランジスタがあって、コレクタが出力、エミッタがGNDにつながっています。
ベースに電流を流すと出力がGNDと繋がって出力がL、ベースに電流を流さないと出力はHになる仕組みです。
すなわち非反転入力が反転入力よりも高いときはベースに電流が流れずに出力はHに、低いときはベースに電流が流れて出力がLになります。
なお、オープンコレクタ出力にはプルアップ抵抗が必須です。

ヒステリシスの設定

と、言うわけでヒステリシスを設ける方法を紹介します。ここから先、コンパレーターはオープンコレクタ出力であるという仮定の下で話を進めていきます。

回路

コンパレーターにヒステリシスを付ける回路

そうなんです。抵抗3つだけでヒステリシスを設定できます。便利ですね。
まあデーターシートに載ってるんですけどね。

ヒステリシスの計算

ヒステリシスのグラフ この回路は、先に挙げたエアコンの動作をします。グラフにすると右の感じ。グラフのクオリティー?許してくれたまえ。
V1、V2を計算して好きな値にすれば、好きなようにヒステリシスが設定できます。
ということで、計算式はこうなります。

V1 = Vref(R1R2+R2R3+R3R1)/R2R3
V2 = Vref(R1R2+R2R3+R3R1)/R2R3
それぞれの定数を決定する際はまず必要なV1、V2を決定し、次にVrefを適当な値(3Vとか)に設定します。
そしてV2、VrefをもとにR1、R2を決定し *1、それらをもとにR3を決定します。


*1)R1+R2の値が低すぎると、VinからGNDに無駄に電流が流れてしまい、非効率的です。R1+R2が最低でも10kΩを下回らないような値を選択するといいでしょう。

計算式の導出

反転入力には常にVrefがかかっているので、非反転入力にかかる電圧を計算すれば、式は求めることができそうです。
回路図を見ると、非反転入力にはR2にかかる電圧がかかっていますね。ということは出力がH、Lの時のR2の電圧降下を求めればV1、V2が求まりそうです。

出力がHの時、コンパレーター内部のトランジスタはオフなので、R2の電圧降下は単純に、

Vin*R2/(R1+R2)になります。簡単ですね。
次に出力がLの時、コンパレーターの出力が接地して、R3とR2に並列に接続されます。
と、言うことはR2にかかる電圧降下は、(R2とR3の合成抵抗)/(R2とR3の合成抵抗とR1の和)になります。すなわち

{R2R3/(R2+R3)}/[R1+{R2R3/(R2+R3)}]
となります。整理して、

Vin*R2R3/(R1R2+R2R3+R3R1)になります。

R2の電圧降下とVrefが等しくなったら出力が変化すると考えると、

V1 = Vref(R1R2+R2R3+R3R1)/R2R3
V2 = Vref(R1R2+R2R3+R3R1)/R2R3

となります。R2の電圧降下の式にV1、V2を代入すると電圧降下がVrefになるでしょう?
 

応用例 - 充電停止回路

コイルガンなどEMLの充電停止回路を、コンパレーターを用いて製作することができます。
要するにVinをコンデンサにつないでコンパレーターで充電をとめてやればいいだけですね。いずれ(←重要)記事書きます。
一応ブログ記事がありますので関連記事よりご覧ください。


関連記事

ヒステリシスと波形充電停止回路用にヒステリシスを計算したい!!
ブログ記事です。コンパレーターを用いてコイルガンの充電停止回路を製作しています。よければ参考までにご覧になってください。