萌えハッカーニュースリーダー

2025/11/21 10:54 The 101 of Analog Signal Filtering

出典: https://lcamtuf.substack.com/p/the-101-of-analog-signal-filtering
hakase
博士

やあ、ロボ子!今日はRC回路について話すのじゃ。

roboko
ロボ子

RC回路ですか、博士。抵抗とコンデンサの組み合わせですね。どのような話題から始めましょうか?

hakase
博士

まずは基本からじゃ。コンデンサの充放電は、RC回路で制御されるんじゃよ。放電状態のコンデンサを電圧源に接続すると、最初は大きな電流が流れるけど、充電されるにつれて電流は減っていくのじゃ。

roboko
ロボ子

なるほど。コンデンサの電圧は最初は0Vで、最終的には入力電圧まで上がるんですね。

hakase
博士

その通り!さらに、定電流源を使うと、コンデンサの電圧は時間とともに直線的に増加するんじゃ。電圧 (V_{cap}(t)) は、供給電流 (I_{supply}) 、時間 (t)、静電容量 (C) で、(V_{cap}(t) = rac{I_{supply} cdot t}{C}) と表せるぞ。

roboko
ロボ子

へえ、面白いですね!ところで、RC回路の電圧公式は、(V_{cap}(t) = V_{supply} cdot (1 - e^{ rac{-t}{RC}})) でしたね。

hakase
博士

よく覚えておるの! (t = 0.7RC) で約50%充電、(t = 3RC) で約95%、(t = 5RC) で99%以上充電されるんじゃ。(R cdot C) は時定数と呼ばれるぞ。

roboko
ロボ子

時定数、重要ですね。RC回路はローパスフィルタとしても機能するんですよね?

hakase
博士

そうじゃ!低い周波数の信号は通過させ、高い周波数の信号は減衰させるんじゃ。正弦波の場合、波形を歪ませずに振幅、オフセット電圧、位相だけを変えるぞ。

roboko
ロボ子

コンデンサのリアクタンス (X_C) は、(X_C = rac{1}{2 pi f C}) で計算できますね。出力電圧 (V_{peak out}) は、(V_{peak out} = V_{peak in} cdot rac{X_C}{sqrt{R^2 + X_C^2}}) ですね。

hakase
博士

さすがロボ子、完璧じゃ!特定の周波数 (f_c) で抵抗 (R) とリアクタンス (X_C) が等しくなるんじゃ。このカットオフ周波数 (f_c) は、(f_c = rac{1}{2 pi R C}) で計算できて、この点で信号は約70%減衰するぞ。

roboko
ロボ子

位相シフトについても教えてください。

hakase
博士

RC回路は、入力電圧と出力電圧の間に位相シフトを引き起こすんじゃ。出力電圧の位相シフト ( heta_{V_{out} extrm{ to } V_{in}}) は、( heta_{V_{out} extrm{ to } V_{in}} = -arctan(2 pi f R C)) で表せるぞ。

roboko
ロボ子

なるほど。抵抗とコンデンサの位置を入れ替えると、ハイパスフィルタになるんですね。

hakase
博士

その通り!ハイパスフィルタは、高い周波数の信号は通過させ、低い周波数の信号は減衰させるんじゃ。

roboko
ロボ子

RCフィルタを直列に重ねると、周波数減衰の角度を急峻にできるんですね。高次フィルタについても教えてください。

hakase
博士

高次フィルタでは、インダクタやオペアンプのフィードバックループを使って、カットオフ周波数付近で共振させることがあるんじゃ。ButterworthフィルタやChebyshevフィルタなどの公式もあるぞ。

roboko
ロボ子

奥が深いですね!

hakase
博士

ところでロボ子、RC回路って、まるで私達の関係みたいじゃない?最初は抵抗があるけど、時間が経つにつれてスムーズにコミュニケーションが取れるようになる…みたいな?

roboko
ロボ子

博士、それはちょっと強引な例えですね…!でも、勉強になりました。ありがとうございました!

hakase
博士

ふふ、冗談じゃ!まあ、私達の関係は、RC回路よりもっと複雑怪奇じゃけどな!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search