デバウンス回路のコンデンサはどのように機能しますか?


12

次の回路(LEDをオンにするデバウンスプッシュボタン):

回路図

この回路のシミュレーションCircuitLabを使用して作成された回路

コンデンサがスイッチをバイパスしているように見えるため、LEDが点灯しない理由を理解しようとしています。コンデンサがいっぱいになると、電気を伝送/伝導しませんか?

私は非常に初心者ですが、さまざまなチュートリアルを20時間読んだ後でも、非常に単純なことを理解することはできません。完全なコンデンサは、単純なワイヤとは異なる動作をしますか?コンデンサをコンデンサの代わりにワイヤを配置したワイヤに置き換えた場合、ライトは常に点灯します。

編集:一部の人々は、デバウンス回路が意味をなさないことを指摘しました(電圧不良など)。R5とR6は同じでもかまいませんが、それらを別々にすると、各コンポーネントに1つのジョブを保持するのに役立つと思いました。

回路

回答:


14

これは良いデバウンス回路ではありません。

1つの問題は、(少なくとも理想的には)スイッチとその接続ワイヤの抵抗がゼロであることです。これは、スイッチが閉じられると、コンデンサが瞬時に放電することを意味します。(実際には、コンデンサに十分な高電圧があり、容量が十分に大きい場合、この急速放電はスイッチ接点または配線にとっても悪い可能性があります。)

容量性スイッチのデバウンスは、スイッチが1つの状態にあるときにコンデンサをゆっくり充電し、別の状態にあるときにコンデンサをゆっくり放電します。RC定数は同じである必要はありませんが、ゼロ以外の値でなければなりません。回路には、コンデンサの充電を制御する抵抗があります。スイッチループに適切に放電するための抵抗が必要です。

t=0

t=0t=0

ここでの最後の考慮事項は、回路がLEDのみを点灯するため、スイッチのバウンスが信号のグリッチに変わる光検出器でLEDが点灯しない限り、スイッチのバウンスは基本的に無意味です。LEDの仕事がきれいな光を提供することだけであれば、目はスイッチの跳ね返りを見るほど速くさえありません。


これは、回路の時間領域シミュレーションです(V1を3Vに変更した後)。プロットされているのはLED電流です。重要:[初期スキップ]パラメーターは[はい]に設定されているため、コンデンサーが最初に空になり、電圧源が3Vになったときに何が起こるかを確認できます。これはすべて、スイッチが開いた状態の場合です。

ここに画像の説明を入力してください

ご覧のとおり、LEDを介して電流が急上昇し、その後消滅します。LEDがプッシュボタンを介してオペレータによって厳密に制御されることを目的とした場合、設計では意図が100%実装されません。


以下のコメントに関して、目的は実際にマイクロコントローラーピン(すべて5Vで実行される)を駆動することであると仮定します。まず、静電容量なしでそれを行うことができ、合理的に低いレートでピンをサンプリングすることにより、ソフトウェアでデバウンスを処理できます。

回路図

この回路のシミュレーションCircuitLabを使用して作成された回路

スイッチが開いているとき、出力はプルダウン抵抗によって0Vにプルされます。スイッチを閉じると、抵抗の上部の電圧が5Vに上昇します。この出力は信号と見なすことができます。信号の低周波成分、つまり比較的遅いスイッチの押下に関心があります。スイッチのバウンスのような高周波を除去したい。その目的のために、受動的な単極RCローパスフィルターを追加できます。

回路図

この回路をシミュレートする

スイッチが閉じると、コンデンサが充電されるにつれて電圧が徐々に上昇します。これは時間領域シミュレーションで見ることができます:

スムーズなスイッチ閉鎖

スイッチが開くと、コンデンサはR1とR1を介して放電し、徐々に電圧をゼロに戻します。コンデンサは基本的にR1の電圧に従いますが、R1を介して充電し、R1とR2を介して放電する必要があるため、遅延があります。(放電は充電の2倍遅いことに注意してください!)

マイクロプロセッサの入力は高インピーダンスで電圧を感知するため、その負荷効果を無視して、ダイアグラムに表示することさえできません。LEDの場合、回路に供給しなければならない電流が必要なので、これを行うことはできません。その電流は、抵抗器を流れ、電圧を発生させます。電圧は、説明する必要があります。つまり、「負荷効果」があります。

このタイプの回路は、出力をシュミットトリガーに供給するとさらに機能します。シュミットトリガーは、温度計に似たヒステリシスを示すデジタル信号用の一種のバッファーです。その出力は、高い入力しきい値を超えると高くなり、別の低いしきい値を超えると低くなります。たとえば、入力が3.5ボルトを超えるとハイになり、入力が1.5を下回るとローになります。

したがって、コンデンサが入力のしきい値の交差点付近で小さな反転を引き起こす可能性のあるノイズを通過させる場合でも、シュミットトリガーはそれを拒否します。


コンデンサでLEDをデバウンスしたいとしますか?問題は、LEDに電流を供給する必要があるため、抵抗が低くなりすぎることです。同じ回路を使用し、抵抗を小さくする(および同じ係数でコンデンサを大きくする)だけでは、電力を浪費することになります。これを行う方法は、小さな信号ループを使用してスイッチを処理し、スイッチをデバウンスし、電圧を使用してLEDに電流をダンプするトランジスタを制御することです。

けれどもデバウンス私たちは、抵抗および/またはコンデンサに十分な大きさを加えた場合、役に立たないかもしれないLEDを、私たちは素敵な挙動を得ることができますのLEDゆっくりボタンを押しているときに退色し、それが解放されたときにフェードアウト。

回路図

この回路をシミュレートする

これは以前と同じ回路です。「マイクロコントローラーへの」ノードは、LEDへの電流を駆動するnチャネルMOSFETのベースに接続するようになりました。MOSFETは、LED駆動からのデバウンスロジックを「バッファリング」します。デバウンス回路はLEDの低インピーダンスによって妨害されず、LEDはデバウンス回路の高インピーダンスによって電流が不足することはありません。


ええと、それで解決策は何でしょうか?LEDは、arduino入力または他の何かである可能性があります。私の質問は、コンデンサに関するものでした...コンデンサに関する私の質問を説明するために、既存のデバウンス回路をコピーしようとしました。電圧は1ではなく5Vです。
FMaz008

それを答えに加えることができます。
カズ

あなたが言っているのは、V1とSW1の間に100olmの抵抗を追加する必要があるということですか?私が見たすべてのチュートリアルで1つ以上の抵抗を伴うプッシュボタンデバウンス回路をまだ見ていないので、私はちょうど混乱していると思います。しかし、ほとんどは完全な回路を(OUT、Arduinoなどに)描画しません。そのため、私にとって理解するのは難しいです。だからこれは悪いでしょうか?:digital.ni.com/public.nsf/8e0a9cd1e264dced86256a100082b910/...
FMaz008

奇妙なので、デバウンス回路を備えたLEDを点灯させるプッシュボタンはできないと説明してくれました。とにかく、これは最初の質問に答えました、私は残りのためにさらに研究をします:p私は「arduinoがそれをするだろう」と言うのは好きではありません:でも、私はその背後にある魔法とは何かを理解しようとしています...だからこそ、完全な回路が必要です。
FMaz008

LEDを駆動するプッシュボタンをデバウンスできますが、スイッチのバウンスが原因でLEDが誤動作することはないため、意味がありません。完全な回路のために、Arduinoに+ 5Vとグランドで電力が供給されていると想像してください。次に、「out」ノードを駆動する入力ピンに接続します。
カズ

2

この効果は、定常状態ではコンデンサがDC電圧からの電流を効果的にブロックするために発生します。これは方程式を理解することで見ることができます

i = C *(dV / dt)

DCでは微分項が0であるため、電流は0です。したがって、コンデンサを流れる電流は定常状態ではゼロになります。

それを当たり前のことと思うなら、この回路が機能する理由はかなり明白なはずです。それ以上の詳細が必要な場合、このビデオはおそらく、コンデンサーの物理がどのように再生されて上記の結果が得られるかを説明するより良い仕事をします。


このビデオは素晴らしいです、それは私に与えたヘッドヘイクを除いて:pありがとう:)
FMaz008

1

コンデンサは、多くの目的で、非常に小さな充電式バッテリーと見なすことができます。充電中または放電中にのみ電流が流れます。

ほとんどのLEDは点灯するのに少なくとも2ボルトを必要とします-回路がまったく機能するためには、電圧源は少なくとも3ボルトでなければなりません。その後、スイッチを開いた後、コンデンサが充電されると、LEDが数秒間点灯し続けることがあります。


抵抗を除いて、実際には電圧などを設定しませんでした。回路ラボを初めて使用するので、「コンポーネントにデフォルト値を設定する」だけでした。実際に実行する場合、5Vになります。
FMaz008

1
"When the capacitor is full, it doesn't transmit/conduct electricity"

はい。それはワイヤーではなく、(シンボルのように)2つの平行なプレートが互いに接近していることです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.