rilyのアイコン画像
rily 2025年12月11日作成 (2026年02月22日更新)
セットアップや使用方法 セットアップや使用方法 閲覧数 441
rily 2025年12月11日作成 (2026年02月22日更新) セットアップや使用方法 セットアップや使用方法 閲覧数 441

オペアンプのよく使われる増幅回路とフィルターに関する制御工学のお話

オペアンプのよく使われる増幅回路とフィルターに関する制御工学のお話

今回はオペアンプのベターな増幅回路の使い方を簡単にシミュレートしていきたいと思います。(位相特性や周波数特性は後ほど説明するかもしれません)

オペアンプ

オペアンプは電圧や電流といったアナログな値の増幅や演算を行う回路となります。
オペアンプ回路
オペアンプには以下の数式が条件として与えられています。

V+=V{V_+=V_-}

IV+IV0{I_{V_+}{\simeq}I_{V_-}{\simeq}0}

Voutやそれに接続する回路からV+-へ帰還をかけるとV+とV-は同じ電圧になりますが、その際V+とV-の端子に流れ込む電流はほぼ0となります。

ユニティーゲイン回路

電圧の増幅をしないで高インピーダンスな回路から電流を取り出す際に用いる回路となります。
キャプションを入力できます
V+とV-は同じかつ、VoutがV-に短絡されているので

V+=Vout{V_+=V_{out}}

となります。

非反転増幅回路

回路図
まず、V+とV-は同電圧になります。またR1の電圧はV+と同じ電圧がかかります。

IR1=V+R1{I_{R_1}=\frac{V_+}{R_1}}

そしてV-端子には電流が流れないため、R1に流れる電流はR2を流れます。電流はVoutからR1,2を通ってGND方向に流れます。すなわちVoutの電圧は

Vout=V++IR1×R2=V++R2×V+R1{V_{out}=V_++I_{R_1}{\times}R_2=V_++R_2{\times}\frac{V_+}{R_1}}

式を整理してゲインGを求めると

Vout=V+(1+R2R1){V_{out}=V_+(1+\frac{R_2}{R_1})}

G=1+R2R1{G=1+\frac{R_2}{R_1}}

となります。ちなみにR1=R2=1kΩとするとGは2倍になります。
波形

反転増幅回路

回路図
V+端子がGNDに接続されているので、R1に流れる電流は

IR1=Vin0R1{I_{R_1}=\frac{V_{in}-0}{R_1}}

となります。
またV-端子に電流が流れないので、この電流はR2をVoutに向けて通ります。即ちVoutは

Vout=0IR1×R2=VinR1×R2{V_{out}=0-I_{R_1}{\times}R_2=-\frac{V_{in}}{R_1}{\times}R_2}

となります。
式を整理してゲインGを求めると

Vout=VinR2R1{V_{out}=-V_{in}\frac{R_2}{R_1}}

G=R2R1{G=-\frac{R_2}{R_1}}

となります。R1=R2を1kΩとするとGは-1倍となります。
波形

電圧レギュレータ

入力電圧に対して出力電圧を一定にするレギュレータ回路が存在します。例えば三端子レギュレータが一つの例ですが、上記の増幅回路を応用し、オペアンプとトランジスタを組み合わせて作ることができます。
回路図
キャプションを入力できます
電源電圧Vccが10~14Vまで変化しているのに対して出力電圧VoutがVinを基準に5V一定で出力されているのが分かります。
非反転増幅回路ですからR1,R2=1kΩだとG=2倍、すなわち2.5VのVinの2倍の電圧がVoutから一定に出力されているのが分かります。

フィルター

周波数ごとに増幅率を変えたりすることで、余計な信号をカットしフィルターとして動作したり位相補償させたりすることができます。
制御ではごくあたり前に使われますが、オーディオだとトーンコントロールやイコライザーに当たる部分になります。
ここからは制御工学のお話になっていきます。微分と積分、ラプラス変換や三角関数と複素数,位相と微積の関係などのお話も入ってきます。

三角関数の微積分と複素数

三角関数sin(t)は微分することで

ddt(sin(t))=(ddtt)×cos(t)=cos(t){\frac{d}{dt}(sin(t))=(\frac{d}{dt}t)\times cos(t)=cos(t)}

になるのはご存知だと思います。またcos(t)を微分すると-sin(t)になっていきます。
"→"を微分、"←"を積分とすると

sin(t)dtddtcos(t)sin(t)cos(t)sin(t){sin(t)^{{\to}^{\frac{d}{dt}}}_{{\gets}_{\int dt}}cos(t)^{\to}_{\gets}-sin(t)^{\to}_{\gets}-cos(t)^{\to}_{\gets}sin(t)}

の関係で一周することができますね。ついでにsin(θ)とcos(θ)では位相がπ/2(90度)ずつずれているのがお分かりいただけると思います。
直交サインカーブ
そして複素平面の実軸Reと虚軸Imはそれぞれπ/2で直交しているのがお分かりいただけるかと思います。
複素平面
つまりsin(t)を別の空間で1としてcos(t)を同じく虚数jとします。1にjを掛けたらsin(t)からcos(t)になった、つまりsin(t)を微分したのと同じことになりますね。
この関係性より

1×j×jj1j1{1^{{\to}^{\times j}}_{{\gets}_{\times -j}}j^{\to}_{\gets}-1^{\to}_{\gets}-j^{\to}_{\gets}1}

sin(t)dtddtcos(t)sin(t)cos(t)sin(t){sin(t)^{{\to}^{\frac{d}{dt}}}_{{\gets}_{\int dt}}cos(t)^{\to}_{\gets}-sin(t)^{\to}_{\gets}-cos(t)^{\to}_{\gets}sin(t)}

ってすごく似てるじゃないですか。つまり複素数の商積で微積分が成り立つわけです。また複素数表現なので位相の表現もできるわけです、すごいですよね。
んでこれを弄って電気系でよく使う、sin(ωt)に合わせて作られた微分演算子sことjωが用いられます。積分はこれを逆数にして-j/ωになります。

ddtsin(ωt)=(ddt(ωt))×cos(ωt)=ωcos(ωt){\frac{d}{dt}sin(\omega t)=(\frac{d}{dt}(\omega t))\times cos(\omega t)=\omega cos(\omega t)}

これを複素平面ですると

1×jω=jω{1\times j\omega =j\omega}

jをcos(t)とするとωcos(t)になりますね。また虚数jのみがつくと言うことで位相θはπ/2ずれます。
これに近いものがラプラス変換になります。ここからはこれらの知識が必要になります。
また位相補償によく使われる、非反転型フィルタを二種類紹介していきますね。

積分型ローパスフィルター(非反転)

非反転LPF回路
さてこれとして、R2とC1の合成インピーダンスZは

Z=1sC1+1R2=R21+sC1R2{Z=\frac{1}{sC_1+\frac{1}{R_2}}=\frac{R_2}{1+sC_1R_2}}

そして非反転増幅回路の式よりゲインGは

G=1+ZR1=1+R2R111+sC1R2{G=1+\frac{Z}{R_1}=1+\frac{R_2}{R_1}\cdot\frac{1}{1+sC_1R_2}}

sが入ったので制御でよく見る伝達関数になりましたね。
このときsが分母に来たので積分だ!って思ってくれると正解です。またこのときの法則として

Gint=11+sT{G_{int}=\frac{1}{1+sT}}

Gdiff=1+sT{G_{diff}=1+sT}

の式になったときTの逆数がポール周波数(折点周波数)と呼びます。この周波数近辺で位相の遅れと周波数減衰が始まります。またこの形を一次フィルタなどと呼んだりします。
この回路のそれに当たる部分は第二項目の

11+sC1R2{\frac{1}{1+sC_1R_2}}

そしてTにあたる部分は

T=C1R1{T=C_1R_1}

よってポール角周波数ω0は

ω0=1T=1C1R1=2πf0{\omega _0=\frac{1}{T}=\frac{1}{C_1R_1}=2\pi f_0}

f0=12πC1R1{f_0=\frac{1}{2\pi C_1R_1}}

ポール周波数f0が求まりました。
f0のときのずれた位相θ0も求めましょう。
f0のときのゲインG0は

G0=1+R2R11j2=12R1((2R1+R2)jR2){G_0=1+\frac{R_2}{R_1}\cdot\frac{1-j}{2}=\frac{1}{2R_1}((2R_1+R_2)-jR_2)}

つまりθ0は

θ0=tan1(R22R1+R2){\theta_0=tan^{-1}(\frac{-R_2}{2R_1+R_2})}

ちなみに|G0|は以下になります。

G0=12R1(2R1+R2)2+R22{|G_0|=\frac{1}{2R_1}\sqrt{(2R_1+R_2)^2+{R_2}^2}}

今度は実際にシミュレーションしてみました。R1,R2=10[kΩ],C1=0.1[μF]として
試験回路
この回路の周波数特性は
ボード線図
計算すると

f0=12πC1R1=12π×0.1×106×10000=159[Hz]{f_0=\frac{1}{2\pi C_1R_1}=\frac{1}{2\pi \times0.1\times 10^{-6}\times 10000}=159[Hz]}

G0=12R1(2R1+R2)2+R22=110(2×10+10)2+102=1.5820×log(1.58)=3.97[dB]{|G_0|=\frac{1}{2R_1}\sqrt{(2R_1+R_2)^2+{R_2}^2}=\frac{1}{10}\sqrt{(2\times 10+10)^2+10^2}=1.58\to 20\times log(1.58)=3.97[dB]}

θ0=tan1(R22R1+R2)=tan1(102×10×10)=0.322[rad]18.4[]{\theta_0=tan^{-1}(\frac{-R_2}{2R_1+R_2})=tan^{-1}(\frac{-10}{2\times 10\times 10})=-0.322[rad]\to -18.4[^\circ]}

ちょっと大雑把ですが、図と計算と大体合ってると思います。

微分型ハイパスフィルタ

非反転HPF回路
今度はCがR1に並列になった回路です。
R1とC1の合成インピーダンスZは

Z=R11+sC1R1{Z=\frac{R_1}{1+sC_1R_1}}

つまりゲインG非反転増幅回路の式にしたがって

G=1+R2Z=1+R2R1(1+sC1R1){G=1+\frac{R2}{Z}=1+\frac{R_2}{R_1}(1+sC_1R_1)}

sが分数ではないので微分型になりましたね。
先のローパスフィルタで話した通り

Gdiff=1+sT{G_{diff}=1+sT}

の形になったときのTの逆数がポール周波数になると言いました。つまりこれにあたる部分は

1+sC1R1{1+sC_1R_1}

T=C1R1{T=C_1R_1}

なので

ω0=1T=1C1R1=2πf0{\omega_0=\frac{1}{T}=\frac{1}{C_1R_1}=2\pi f_0}

f0=12πC1R1{f_0=\frac{1}{2\pi C_1R_1}}

ポール周波数f0が求まりました。
f0のときのゲインは

G0=1+R2R1(1+j)=1R1((R1+R2)+jR2){G_0=1+\frac{R_2}{R_1}(1+j)=\frac{1}{R_1}((R_1+R_2)+jR_2)}

つまりθ_0は

θ0=tan1(R2R1+R2){\theta_0=tan^{-1}(\frac{R_2}{R_1+R_2})}

ちなみに

G0=1R1(R1+R2)2+R22{|G_0|=\frac{1}{R_1}\sqrt{(R_1+R_2)^2+{R_2}^2}}

ではシミュレーションしてみますね。R1=R2=10[kΩ]、C1=0.1[μF]とすると
試験回路
周波数特性は
ボード線図
計算すると

f0=12πC1R1=12π×0.1×106×10000=159[Hz]{f_0=\frac{1}{2\pi C_1R_1}=\frac{1}{2\pi \times0.1\times 10^{-6}\times 10000}=159[Hz]}

G0=1R1(R1+R2)2+R22=110(10+10)2+102=520×log(5)=6.99[dB]{|G_0|=\frac{1}{R_1}\sqrt{(R_1+R_2)^2+{R_2}^2}=\frac{1}{10}\sqrt{(10+10)^2+10^2}=\sqrt{5}\to 20\times log(\sqrt{5})=6.99[dB]}

θ0=tan1(R2R1+R2)=0.464[rad]26.6[]{\theta_0=tan^{-1}(\frac{R_2}{R_1+R_2})=0.464[rad]\to 26.6[^\circ]}

こんなもんですかね。

rilyのアイコン画像
直感でアナログ回路を主体に設計してま〜す。 作った回路,プログラム等が正しく動く補償はできないのでご注意を
ログインしてコメントを投稿する