回路の素101 054 サンプル・ホールド ボルテージ・フォロワ型
入力電圧の保持が可能
AD変換の前段や、DA変換の後段などで、アナログ信号を固定したいときに使用する
回路図作成
- 基本的な構成
カットオフ周波数は と アナログスイッチのON抵抗で決まる
応答性確認
シミュレーションを tranモード(デフォルト) で実行し、応答を見る
import matplotlib.pyplot as plt import numpy as np from PyLTSpice import RawRead fig = plt.figure(figsize=(6, 4)) ax1 = fig.add_subplot(2, 1, 1) ax2 = fig.add_subplot(2, 1, 2, sharex=ax1) fname = 'PrimaryCircuit5-054.raw' LTR = RawRead(fname) x = LTR.get_trace('time').get_time_axis(0) tmp1 = LTR.get_trace('V(vin+)').get_wave(0) ax1.plot(x * 1000, tmp1, label='Vin+') tmp1 = LTR.get_trace('V(vout)').get_wave(0) ax1.plot(x * 1000, tmp1, label='Vout') tmp1 = LTR.get_trace('V(vctrl)').get_wave(0) ax2.plot(x * 1000, tmp1, label='Vctrl') ax1.legend(); ax1.grid() ax1.set_xlabel('[ms]'); ax1.set_ylabel('[V]') ax2.legend(); ax2.grid() ax2.set_xlabel('[ms]'); ax2.set_ylabel('[V]') fig.tight_layout() fig.savefig('PrimaryCircuit5-054_Graph1.png')
Vctrlに5Vが入っているときに、出力信号がホールドされていることが分かる
周波数特性
周波数解析用の回路図を作成して、周波数特性を解析する
仕様では、オン抵抗が120Ωなので、カットオフ周波数は下記のように3.3MHzほどになる
fc = 1.0 / (2.0 * 3.14 * 220 * 1e-12 * (100 + 120)) / 1000 / 1000 print('fc = %6.2fMHz' % fc)
fc = 3.29MHz
from PyLTSpice import RawRead fig = plt.figure(figsize=(6, 4)) ax1 = fig.add_subplot(2, 1, 1) ax2 = fig.add_subplot(2, 1, 2, sharex=ax1) fname = 'PrimaryCircuit5-054-2.raw' LTR = RawRead(fname) freq = np.abs(LTR.get_trace('frequency').get_wave(0)) Vout = LTR.get_trace("V(vout)").get_wave(0) ax1.plot(freq, 20*np.log10(np.abs(Vout))) ax2.plot(freq, np.angle(Vout) / np.pi * 180) ax1.grid() ax1.set_xlabel("[Hz]"); ax1.set_ylabel("Gain[dB]") ax1.set_xscale('log') ax1.set_ylim(-35, 5) ax2.grid() ax2.set_xlabel("[Hz]"); ax2.set_ylabel("Phase[deg]") ax2.set_xscale('log') ax2.set_ylim(-190, 190) fig.tight_layout() fig.savefig('PrimaryCircuit5-054_Graph2.png')
シミュレーションでもカットオフ周波数は3.3MHzほどになっている
参考文献
この記事は以下の書籍を参考にしましたが、
私の拙い知識で書いておりますので、誤り等ありましたらご指摘ください