以前に設計された回路基板に出くわしたり、古いテレビやコンピューターから取り出して修理しようとしたりしたとき。また、障害を排除するために、ボード内の特定のコンデンサの静電容量を知る必要がある場合もあります。次に、特に表面実装デバイスの場合、ボードからコンデンサの正確な値を取得する際に問題が発生します。静電容量を測定するための機器を購入することはできますが、これらのデバイスはすべて高価であり、すべての人に適しているわけではありません。そのことを念頭に置いて、未知のコンデンサの静電容量を測定するための単純なArduino静電容量計 を設計します。
このメーターは簡単に作ることができ、費用効果もあります。Arduino Uno、シュミットトリガーゲート、555ICタイマーを使用して静電容量計を作成します。
必要なコンポーネント:
- 555タイマーIC
- IC74HC14シュミットトリガーゲートまたはNOTゲート。
- 1KΩ抵抗(2個)、10KΩ抵抗
- 100nFコンデンサ、1000µFコンデンサ
- 16 * 2 LCD、
- ブレッドボードといくつかのコネクタ。
回路の説明:
Arduinoを使用し た静電容量計の回路図を下図に示します。回路はシンプルで、LCDはArduinoとインターフェースして、測定されたコンデンサの静電容量を表示します。方形波発生器回路(非安定モードでは555)がArduinoに接続されており、静電容量を測定する必要のあるコンデンサが接続されています。シュミットトリガーゲート(IC 74LS14)を使用して、方形波のみがArduinoに供給されるようにします。ノイズをフィルタリングするために、電力全体にいくつかのコンデンサを追加しました。
この回路は、10nFから10uFの範囲の静電容量を正確に測定できます。
555タイマーICベースの方形波発生器:
まず、555タイマーICベースの方形波ジェネレーターについて説明します。555AstableMultivibratorと言えばいいのですが。コンデンサの静電容量をデジタル回路で直接測定することはできません。つまり、UNOはデジタル信号を処理し、静電容量を直接測定することはできません。そのため、コンデンサをデジタル世界にリンクするために555方形波発生器回路を使用します。
簡単に言えば、タイマーは方形波出力を提供し、その周波数はそれに接続された静電容量に直接関係します。したがって、最初に、周波数が未知のコンデンサの静電容量を表す方形波信号を取得し、この信号をUNOに供給して適切な値を取得します。
次の図に示すように、非安定モードの一般構成555:
出力信号の周波数は、RA、RB抵抗、およびコンデンサCに依存します。式は次のように与えられます。
頻度(F)= 1 /(期間)= 1.44 /((RA + RB * 2)* C)。
ここで、RAとRBは抵抗値、Cは静電容量値です。上記の式に抵抗と静電容量の値を入れることにより、出力方形波の周波数が得られます。
RAとして1KΩ、RBとして10KΩを接続します。したがって、式は次のようになります。
頻度(F)= 1 /(期間)= 1.44 /(21000 * C)。
私たちが持っている用語を再配置することによって、
静電容量C = 1.44 /(21000 * F)
プログラムコード(以下を参照)では、静電容量値を正確に取得するために、取得した結果(ファラッド単位)に「1000000000」を掛けてnFで結果を計算しました。また、RAとRBの正確な抵抗は0.98Kと9.88Kであるため、21000の代わりに「20800」を使用しました。
したがって、方形波の周波数がわかれば、静電容量の値を取得できます。
シュミットトリガーゲート:
タイマー回路によって生成された信号は、ArduinoUnoに直接与えるのに完全に安全ではありません。UNOの感度を考慮して、シュミットトリガーゲートを使用します。シュミットトリガーゲートはデジタル論理ゲートです。
このゲートは、入力電圧レベルに基づいて出力を提供します。シュミットトリガーの電圧レベルはTHERSHOLDであり、ゲートに印加されるINPUT信号の電圧レベルが論理ゲートのTHRESHOLDよりも高い場合、OUTPUTはHIGHになります。INPUT電圧信号レベルがTHRESHOLDより低い場合、ゲートのOUTPUTはLOWになります。通常、シュミットトリガーを個別に取得することはないため、シュミットトリガーの後には常にNOTゲートがあります。シュミットトリガーの動作については、こちらで説明しています:シュミットトリガーゲート
74HC14チップを使用します。このチップには、6つのシュミットトリガーゲートがあります。これらのSIXゲートは、下図に示すように内部で接続されています。
反転シュミットトリガーゲートの真理値表を下の図に示します。これにより、端子で正と負の期間を反転するようにUNOをプログラムする必要があります。
タイマー回路で生成された信号をSTゲートに接続すると、UNOに安全に渡せる出力に逆周期の矩形波が発生します。
Arduinoは静電容量を測定します:
Unoには特別な関数 pulseIn が あり、特定の矩形波の正の状態の持続時間または負の状態の持続時間を決定できます。
Htime = pulseIn(8、HIGH); Ltime = pulseIn(8、LOW);
pulseInは 関数測定HighまたはLowレベルが宇野のPIN8に存在する時間を。 pulseInの マイクロ秒単位の機能策このハイ時間(HTIME)とロータイム(LTIME)。HtimeとLtimeを足し合わせると、サイクル持続時間が得られ、それを反転することにより、周波数が得られます。
周波数を取得したら、前に説明した式を使用して静電容量を取得できます。
要約とテスト:
要約すると、未知のコンデンサを555タイマー回路に接続します。555タイマー回路は、周波数がコンデンサの静電容量に直接関係する方形波出力を生成します。この信号はSTゲートを介してUNOに与えられます。UNOは周波数を測定します。周波数がわかっているので、前述の式を使用して静電容量を計算するようにUNOをプログラムします。
私が得たいくつかの結果を見てみましょう、
1uF電解コンデンサを接続すると、1091.84 nF〜1uFになります。そして、0.1uFポリエステルコンデンサでの結果は107.70 nF〜0.1uFです
次に、0.1uFのセラミックコンデンサを接続すると、100.25 nF〜0.1uFになります。また、4.7uFの電解コンデンサでの結果は4842.83 nF〜4.8uFです。
これが、コンデンサの静電容量を簡単に測定できる方法です。