組み込み回路 03 · 過渡応答とフィルタ — RC の時定数がすべての「なまり」の正体

Chapter 03

過渡応答とフィルタ — RC の時定数がすべての「なまり」の正体

この章がなぜ必要なのか——「波形がなまる」の原因はほぼ RC である.

RC の時定数 1 つを理解すれば、これら全部が説明できる。

この章で使う既出の用語(定義は各リンク先). 寄生インダクタンス(01 章 7 節)、アンチレゾナンス(02 章 6 節)、コンデンサ(02 章 7 節)

1. RC 回路の過渡応答

VinRVoutC
ローパス。高周波ほどコンデンサのインピーダンスが下がり、出力が GND に落とされる

入力が 0 V から \(V_0\) にステップ変化したときの出力は

\[ v_{out}(t) = V_0 \left( 1 - e^{-t/\tau} \right), \qquad \tau = RC \]

導出

コンデンサに流れる電流は \(i = C \, dv_{out}/dt\)。 抵抗を流れる電流も同じなので

\[ \frac{V_0 - v_{out}}{R} = C \frac{dv_{out}}{dt} \]

整理すると

\[ RC \frac{dv_{out}}{dt} + v_{out} = V_0 \]

これは 1 階の線形微分方程式で、初期条件 \(v_{out}(0) = 0\) の解が上式である。

時定数の感覚

経過時間到達率残り
\(1\tau\)63.2 %36.8 %
\(2\tau\)86.5 %13.5 %
\(3\tau\)95.0 %5.0 %
\(4\tau\)98.2 %1.8 %
\(5\tau\)99.3 %0.7 %
\(7\tau\)99.91 %0.09 %

実務で覚えるべき数値は 3 つ.

ADC のサンプリング(17 章)では、 必要な分解能に応じて何 τ 待つかが決まる。 12 bit なら 1 LSB = 1/4096 ≈ 0.024 % なので、

$$e^{-t/\tau} < \frac{1}{4096} \quad \Rightarrow \quad t > \tau \ln 4096 \approx 8.3\tau$$

12 bit の精度で確定させるには 8.3τ 以上必要、と計算できる。

立ち上がり時間 \(t_r\)

10 % から 90 % までの時間は

\[ t_r = \tau \ln 9 \approx 2.2\,\tau \]

これが I2C のプルアップ抵抗の計算に直結する(20 章)。

RC の過渡応答を見る

R・C・入力波形を変えて、出力がどう変化するかを確かめられる。

2. RC ローパスフィルタ

同じ回路を、周波数領域で見る。

\[ \frac{V_{out}}{V_{in}} = \frac{Z_C}{R + Z_C} = \frac{1/(j\omega C)}{R + 1/(j\omega C)} = \frac{1}{1 + j\omega RC} \]

大きさ(振幅特性)は

\[ \left| \frac{V_{out}}{V_{in}} \right| = \frac{1}{\sqrt{1 + (\omega RC)^2}} \]

カットオフ周波数

利得が \(1/\sqrt{2}\)(−3 dB)になる周波数をカットオフ周波数という。

\[ \omega_c RC = 1 \quad \Rightarrow \quad f_c = \frac{1}{2\pi RC} \]
\(f\)利得dB
\(0.1 f_c\)0.995−0.04 dB
\(f_c\)0.707−3 dB
\(10 f_c\)0.0995−20 dB
\(100 f_c\)0.0100−40 dB

1 次のフィルタは、カットオフより上で −20 dB/decade(−6 dB/octave)で落ちる。

時定数とカットオフの関係

\[ f_c = \frac{1}{2\pi \tau} \qquad \tau = \frac{1}{2\pi f_c} \]

そして立ち上がり時間との関係は

\[ t_r \cdot f_c \approx \frac{2.2}{2\pi} \approx 0.35 \]

\(t_r \cdot f_c \approx 0.35\) は非常に有用な経験則である.

「立ち上がり 1 ns の信号は、どこまでの周波数成分を持つか」

$$f \approx \frac{0.35}{1\ \text{ns}} = 350\ \text{MHz}$$

クロック周波数が 10 MHz でも、立ち上がりが速ければ数百 MHz の成分がある。 これが 23 章(シグナルインテグリティ)と 24 章(EMC)の出発点になる。

「遅いクロックだから高周波の対策は要らない」は誤りである。

フィルタの周波数特性を見る

フィルタの種類・次数・カットオフを変えて、ボード線図と時間応答を確かめられる。

3. ハイパスフィルタ

R と C を入れ替える。

VinCVoutR
ハイパス(AC 結合)。直流はコンデンサで切られ、交流だけが通る
\[ \frac{V_{out}}{V_{in}} = \frac{R}{R + 1/(j\omega C)} = \frac{j\omega RC}{1 + j\omega RC} \]

カットオフは同じく \(f_c = 1/(2\pi RC)\)。

用途内容
AC カップリング直流成分を除去して交流だけ通す
ドリフト除去センサの直流オフセットを取る
微分回路\(f \ll f_c\) では \(v_{out} \approx RC \, dv_{in}/dt\)

AC カップリングコンデンサの容量は、下限周波数から決める.

「オーディオで 20 Hz まで通したい。入力インピーダンス 10 kΩ」

$$C > \frac{1}{2\pi \times 20 \times 10000} = 0.8\ \mu\text{F} \quad \rightarrow \quad 1\ \mu\text{F 以上}$$

実際は余裕を見て 4.7 µF や 10 µF を使う。

4. フィルタの次数と種類

次数を上げると急峻になる

次数減衰素子
1 次−20 dB/decRC 1 段
2 次−40 dB/decRC 2 段、または LC、またはアクティブ
3 次−60 dB/dec
\(n\) 次\(-20n\) dB/dec

RC を単純に 2 段カスケードしても、きれいな 2 次にはならない.

2 段目が 1 段目の負荷になり、互いに干渉する。 カットオフがずれ、減衰も理論どおりにならない。

対策:

代表的なフィルタ特性

特性通過域遷移位相用途
バターワース最大平坦中中汎用。迷ったらこれ
チェビシェフリプルあり急峻悪い遷移の急峻さ重視
ベッセルなだらか緩い最良(群遅延平坦)パルス波形を保ちたい
楕円(カウアー)リプルあり最も急峻最悪帯域制限が厳しい場合

組み込みでは「ベッセル」が有用な場面が多い.

矩形波やパルスを通すとき、位相特性が悪いと波形が崩れる(リンギング・オーバーシュート)。 ベッセルは群遅延が平坦なので、波形の形が保たれる。

一方、アンチエイリアシングフィルタ(17 章)では 遷移の急峻さが重要なので、バターワースやチェビシェフを選ぶ。

5. RLC 回路と共振

VinRLVoutCR が小さいほど Q が高く、よく振動する(リンギング)
2 次系。L と C がエネルギーをやりとりし、R がそれを減衰させる

共振周波数は

\[ f_0 = \frac{1}{2\pi \sqrt{LC}} \]

Q 値(尖鋭度)は

\[ Q = \frac{1}{R}\sqrt{\frac{L}{C}} \]
Q挙動
\(Q < 0.5\)過減衰。振動しない。ゆっくり収束
\(Q = 0.5\)臨界減衰。最速で収束(オーバーシュートなし)
\(Q = 0.707\)バターワース。−3 dB でカットオフ、平坦
\(Q > 1\)不足減衰。リンギング(振動)が出る
\(Q \gg 1\)大きく振動。共振周波数でピークが出る

減衰係数との関係

\[ \zeta = \frac{1}{2Q} \]

オーバーシュート量は

\[ \text{OS} = \exp\left( \frac{-\pi \zeta}{\sqrt{1-\zeta^2}} \right) \times 100\ \% \]
\(Q\)\(\zeta\)オーバーシュート
0.51.00 %
0.7070.7074.3 %
1.00.516 %
2.00.2544 %
5.00.173 %

RLC の共振とリンギングを見る

L・C・R を変えて、Q 値・共振・過渡波形がどう変わるかを確かめられる。

リンギングは至るところで現れる.

場所原因
配線の反射(23 章)配線のインダクタンスと負荷容量
MOSFET のスイッチング(05 章)寄生インダクタンスと \(C_{oss}\)
LDO の出力(14 章)フィードバックループの位相余裕
デカップリングのアンチレゾナンス(16 章)複数コンデンサの LC

どれも「LC があって、減衰が足りない」という同じ構造である。 対策も同じ——抵抗(損失)を入れて Q を下げる(ダンピング)。

6. 実務でのフィルタ設計

用途別の考え方

用途カットオフの決め方
アンチエイリアシングサンプリング周波数の 1/2 より十分下(17 章)
ノイズ除去信号帯域より上、ノイズ帯域より下
チャタリング除去数 ms〜数十 ms(機械的な振動の周期より長く)
デバウンス(RC + シュミット)10〜50 ms 程度
リセット遅延電源が安定するまでの時間(数 ms〜数百 ms)

スイッチのチャタリング対策

VCCR 10kシュミット入力スイッチC 100nFτ = R·C ≈ 1 ms でエッジを鈍らせ、シュミットで整形する
RC とシュミットトリガの組合せ。ただし機械接点の跳ね返り自体は消せないので、最終的にはソフトで確定させる

\(\tau = R_1 C = 10\text{k} \times 100\text{n} = 1\) ms。 \(3\tau = 3\) ms なので、3 ms 以下のチャタリングは除去できる。

必ずシュミットトリガ入力で受けること(12 章)。

なまった波形を通常のロジック入力に入れると、 閾値付近で発振する(貫通電流も流れる)。 シュミットトリガはヒステリシスを持つので、これを防げる。

MCU の GPIO は、多くがシュミット入力になっている。 データシートで確認すること。

RC の値の選び方

同じ τ でも、R と C の組み合わせは無数にある。 何で決めるか。

制約内容
ソースインピーダンスR が小さすぎると、前段が電流を出せない
入力インピーダンスR が大きすぎると、次段の入力電流やリーク電流で誤差が出る
ノイズ抵抗は熱雑音を出す。\(v_n = \sqrt{4kTRB}\)
サイズとコスト大容量コンデンサは大きく高い
精度C0G は容量が小さい。大容量では X7R しか選べない

目安: R は 1 kΩ〜100 kΩ、C は 100 pF〜1 µF の範囲で組む。

抵抗の熱雑音(ジョンソンノイズ):

$$v_n = \sqrt{4 k T R B}$$

\(k\) はボルツマン定数、\(T\) は絶対温度、\(B\) は帯域幅。

常温(300 K)での目安:

$$v_n \approx 0.13 \sqrt{R \cdot B}\ \ [\text{nV}]$$

例: 10 kΩ、帯域 10 kHz なら \(0.13 \times \sqrt{10^4 \times 10^4} = 1.3\ \mu\)V。

16 bit ADC(3.3 V 範囲)の 1 LSB は 50 µV なので、この程度なら問題ない。 だが 1 MΩ、帯域 1 MHz なら 130 µV となり、1 LSB を超える。 高精度アナログでは、抵抗値を大きくしすぎないこと。

7. この章のまとめ

ポイント内容
時定数\(\tau = RC\)。1τ で 63 %、3τ で 95 %、5τ で 99.3 %
分解能と待ち時間\(n\) bit の確定には \(\tau \ln 2^n\) 必要(12 bit で 8.3τ)
立ち上がり時間\(t_r \approx 2.2\tau\)
カットオフ\(f_c = 1/(2\pi RC)\)。1 次は −20 dB/decade
重要な経験則\(t_r \cdot f_c \approx 0.35\)。立ち上がり 1 ns なら 350 MHz 成分がある
ハイパスR と C を入れ替える。AC カップリングは下限周波数から容量を決める
多段 RC単純にカスケードすると干渉する。バッファか、インピーダンス比 10 倍以上
フィルタ特性バターワース(平坦)/チェビシェフ(急峻)/ベッセル(波形を保つ)
Q 値\(Q > 1\) でリンギング。\(Q = 0.707\) が平坦かつ 4.3 % OS
リンギング対策至るところで LC 共振が起きる。抵抗でダンピングする
抵抗の熱雑音\(v_n \approx 0.13\sqrt{RB}\) nV。高精度では抵抗値を大きくしすぎない

次章では、能動素子の入口——ダイオードと PN 接合を扱う。