測定原理#
参考下面网站的方案
参考 LCR テスター、基本的な動作原理は DUT に正弦波励起信号を加え、その後 DUT の両端の電圧と DUT を流れる電流を測定することで、DUT の特性とパラメータを計算して得ることができます。
理想的なコンデンサの場合、電流の位相はコンデンサの両端の電圧に対して 90° 先行するはずです。しかし、実際のコンデンサには損失が存在し、理想的なコンデンサ $C_p$ と理想的な抵抗 $R_p$ の並列として等価化できます。そのため、電流が電圧に対して先行する位相は 90° 未満になり、この角度差が損失角となります。
DUT の両端の電圧を $\dot {V}=V\cos (\omega t)$、DUT を流れる電流を $\dot {I}=I \sin (\omega t - \varphi)$ と仮定すると、電流の虚軸上の投影は理想的なコンデンサを流れる電流であり、実軸上の投影は損失抵抗を流れる電流です。
したがって、並列コンデンサの容量抵抗は $X_{Cp}=\frac {V}{I \cos\varphi}$、容量 $C_P=\frac {1}{\omega X_{Cp}}=\frac {I \cos \varphi}{\omega V}$ と計算できます。
損失抵抗の値は $R_p=\frac {V}{I \sin\varphi}$ です。
元件が消費する無効電力と有効電力の比を元件の Q 値と定義し、Q 値の逆数を D 値(損失角の正接)とします。
上記の必要なパラメータは直交アルゴリズムを用いて求めることができます:
相乗した後、低通フィルタを通すことで直流成分 $-\frac {1}{2} VI \sin\varphi$ と $\frac {1}{2} VI \cos\varphi$ を得ることができ、問題で要求される損失角の正接を求めることができます。
同時に以下のパラメータも求めることができます。
パラメータシミュレーション#
現在の ADC の入力電圧範囲は 0~2V、入力バイアスは 1V;DAC の出力電圧範囲は 1V ピーク - ピーク値で、バイアスを加えることもできます。
コンデンサの容量は 1nF-100nF、シャント抵抗が 0.33Ω のとき、出力電圧のピーク - ピーク値は 4-200mV です。インダクタを測定する際の周波数は 1MHz で、インダクタの感値は 10uF-100uF のとき、出力電圧のピーク - ピーク値は 15-150mV です。ADC モジュールの入力範囲が 0~2V であるため、信号を 9 倍に増幅し、ピーク - ピーク値を約 1.8V にします。
デバッグ記録#
DAC 出力の信号と LC フィルタのインピーダンスが不一致で、LC フィルタの入力端の信号振幅が低くなっています。
待測元件の検出回路が電源投入後、入力端に - 500mV のバイアスがあります。
LC フィルタは以下のように設計されており、DAC が 1MHz の信号を出力する際、高次の高調波がかなり深刻であるため、通過帯域が 1.2MHz の LC 低通フィルタを設計して高次の雑音を除去します。
PCB 設計#
初代#
R8 はテスト治具を接続するためのもので、励起信号は P1 から入力され、R8 上の待測コンデンサまたはインダクタを経て、電流が C5 に流入し、次段の電流検出回路に入ります。
このように設計すると、回路の入力インピーダンスは測定治具上の待測元件の特定周波数でのインピーダンス値となり、前段の増幅器の出力インピーダンスは 50Ω で、入力信号の振幅が期待される振幅ではなくなります。
改善#
前段増幅器の出力端でインピーダンスマッチング用の 50Ω 抵抗を取り外し、オペアンプの出力インピーダンスが非常に低い特性を利用して、出力信号の電圧をすべて上記回路の入力端に加えます。
この改善の理由は、オペアンプの後段が容量性負荷を持たず、LC フィルタや長い同軸ケーブルの場合、出力端にマッチング抵抗を接続する必要がないからです。
FPGA プログラム設計#
上記の原理に基づき、2 つの ADC で電流と電圧信号を収集し、1 つの DAC で励起信号を生成する必要があります。したがって、DE0nano を選択し、2 つの拡張 40 ピンヘッダを接続できる ADDA モジュールを接続します。
FPGA のクリスタル振動子の周波数は 50MHz で、PLL で 20MHz と 80MHz に分周され、そのうち ADC のクロックは 20M、DAC のクロックは 80M です。次に、それぞれ ADC_Interface と DAC_Interface に接続します。
ADC 部分で収集された信号のビット幅は 10 で、後続の信号処理のために下位 2 ビットを捨て、1024 個のサンプルを収集した後、0.5 秒間停止し、次の収集を行います。
DAC 部分では、NCO を使用して正弦波信号を生成し、ダイヤルスイッチで周波数ワードを切り替え、DAC_interface に出力した後、1 ビット左にシフトして出力し、次に同相増幅器を通して 2 倍に増幅し、信号の駆動能力を強化します。
ADC で収集された電流と電圧のデータは RAM に保存され、開始アドレスを変更することで位相を移動させます。使用される ADC のサンプリングレートは 20M で、100K の信号を収集する際、各周期で 200 ポイントを収集します。したがって、だけ位相を移動させたい場合、50 から RAM のデータを読み始めれば、読み出された信号は 0 から読み出された RAM の信号をだけ位相移動させたものになります。
ADC で収集されたデータは符号なし数であり、乗算フィルタリングを行うと計算結果と一致しないため、符号なしから符号あり数への変換モジュールを追加し、符号あり数に変換した後、乗算を行い、低通フィルタに送信して必要な値を得ます。低通フィルタの出力を切り捨て、高位 16 ビットのデータのみを保持し、ジッターのある直流信号が結果に与える影響を低減します。
測定結果#
最初の Lowpass の出力は、2 番目の Lowpass の出力は、3 番目の Lowpass の出力はで、容量抵抗の計算過程は以下の通りです:
シミュレーションの入力電流と出力電圧のフィッティング関係から、出力収集された電圧の振幅は電流 ÷0.305 に等しいことがわかります。したがって、容量抵抗は 3 番目の出力 ÷2÷ 最初の出力 ÷0.305 です。
回路展示#
今後の計画#
SPI 通信を追加し、サンプリング計算されたデータを TI の開発ボードに転送して、さらなる計算と表示を行います。