「0.1μF」はいつまでコンデンサか — EMI 対策部品の羅針盤 (1) コンデンサ編

  • python
  • 電子工作
  • emc
  • 回路設計
  • ノイズ対策

はじめに

「三端子コンデンサは ESL が低いからいいよ」「ノイズ対策にビーズを入れておいた」— 回路設計の現場で、先輩からこういう言葉を聞いたことはありませんか。

私も若い頃に何度も聞きました。そして正直に言うと、長いあいだ、よく分かっていませんでした。だって、効果が見えないんです。三端子コンデンサを普通のコンデンサに変えても、ビーズを外しても、たいていの回路は平然と動きます。あってもなくても動くものを「いいよ」と言われても、どこに効いているのか分からない。

この連作は、その「見えない効果」を全部グラフにして、EMI 対策部品を自分で選べるようになることを目指す、3 本立ての羅針盤です。説明は等価回路モデルと Python だけで進めます。実験設備も有償ツールも使いません。測る道具を持っていない人でも、まず「読める」ようになるための連作です。

  • 第 1 本(この記事): コンデンサ編。「0.1μF」はいつまでコンデンサでいられるのか。三端子コンデンサの「ESL が低い」はどこに効くのか
  • 第 2 本: チップビーズ編。ビーズはインダクタではなく「高周波で抵抗になる部品」だという話と、「とりあえずビーズ」が逆効果になる落とし穴
  • 第 3 本: 選定フロー編。場面別の選定フローチャートと、メーカー配布の実部品データを読み込んで買う前に検証できる無償ツール

この連作の書き方

書き始める前に、自分の中で 2 つだけ決めたことがあります。どちらも、誰かに教えるためというより、まず自分が分かりやすいように書くためのルールです。

  1. むずかしいグラフは、できるだけ使いません。 EMI の話には、S パラメータやスミスチャートのような、慣れていないと身構えてしまうグラフがよく出てきます。私自身それを前にすると一歩引いてしまうので、この連作では 「横軸 = 周波数、縦軸 = 効き目」くらいのシンプルなグラフに置き換えながら進めます。
  2. グラフは全部、自分で描きます。 メーカーのデータシートは転載せず、教科書的な等価回路モデルから Python で描き起こしました。細部の数字は実部品とは合いませんが、そのぶん種も仕掛けも全部見えます。持ち帰ってほしいのは数字ではなく、グラフの「形」と「読み方」です。

まず、ノイズには 2 つのモードがある

本題の前に、この連作のスコープをはっきりさせます。ノイズの伝わり方には大きく 2 つのモードがあります。

ディファレンシャルモードとコモンモードの電流経路

  • ディファレンシャルモード(ノーマルモード): 2 本の導体を逆向きに流れるノイズ。電源回路なら、電源ラインを行って GND(リターン)を帰ってくる、普通の電流と同じ経路を通る成分
  • コモンモード: ラインとリターンの 2 本が、筐体や大地のような「外の基準」に対して同じ向きに揺れる成分。正規の経路では帰れないので、浮遊容量などを通って帰ってきます

この連作で扱うコンデンサとビーズの使い方は、ディファレンシャルモード側の対策です。コモンモード — ケーブルにパチンと挟むあのフェライトコアや、コモンモードチョークコイルの世界 — は対策部品も考え方も別物なので、この連作のあとに改めて書きます。

なぜ効果が「見えない」のか — 周波数のメガネ

そもそも、なぜノイズ対策部品の効果はこんなに見えにくいのでしょう。

理由は、効果が周波数軸の上にしか現れないからです。試しに、3.3V の電源ラインに小さな高周波ノイズが乗っている状況を作って、対策ありとなしを比べてみます。

時間波形ではほとんど区別がつかないが、スペクトラムでは差がはっきり見える

左が時間波形です。オシロスコープでよく見る画面ですが、対策ありとなしの差は、正直ほとんど分かりません。テスターの DC 測定ならなおさらです。ところが右のスペクトラム — 「どの周波数の成分がどれだけ含まれるか」に分解した絵 — では、差は一目瞭然です。

EMI 対策部品のデータシートが、時間波形ではなく 「インピーダンス vs 周波数」 のグラフを載せているのは、このためです。このグラフが読めると、部品選びの見通しがかなり良くなります。

ここで「インピーダンス」という言葉だけ、ざっくり押さえておきます。

インピーダンス |Z| = その周波数の信号にとっての「通りにくさ」(単位はΩ)。
抵抗と同じ単位ですが、周波数によって値が変わるのが特徴です。
ノイズを GND に逃がしたいコンデンサは「対策したい周波数で |Z| が低いほど良い」、
ノイズの通り道をせき止めたい部品は「対策したい周波数で |Z| が高いほど良い」。

この記事を読むうえでは、まずこれだけで十分です。複素数の話は使いません。

理想のコンデンサと、現実のコンデンサ

コンデンサのインピーダンスは、理想なら

|Z| = 1 / (2πfC)

で、周波数 f が上がるほど一直線に下がり続けます。「高い周波数ほどよく通す」、つまりノイズを GND に逃がすバイパス役にぴったり、というのが教科書の説明です。

ところが、現実の部品には製造上どうしても避けられない「おまけ」が 2 つ直列に付いてきます。

  • ESL(等価直列インダクタンス): 内部電極や端子の構造が持つ、小さなインダクタ成分。チップ積層セラミックコンデンサ(MLCC)で 0.3〜1nH 程度(この記事では 0.5nH を使います)
  • ESR(等価直列抵抗): 電極の抵抗成分。数十 mΩ 程度

理想のコンデンサ(直線)と現実の MLCC(V 字)の |Z| カーブ比較

現実のカーブは、ある周波数で下げ止まり、V 字を描いて上昇に転じます。この V 字が、データシートのインピーダンスグラフの主役です。部位ごとに名前と意味を付けると、こうなります。

V 字カーブの解剖図。左斜面=容量性、谷=自己共振(深さ=ESR)、右斜面=誘導性

  • 左斜面: 1/(2πfC)。ここではちゃんとコンデンサとして働いています
  • 谷: 自己共振周波数(SRF)。C と ESL の効果がちょうど打ち消し合い、残るのは ESR だけ。この単純な直列 RLC モデルでは、谷の深さがそのまま ESR です(実部品では損失が周波数によって変わるので「その周波数での実効的な損失」と読みます)
  • 右斜面: 2πf×ESL。外から見ると誘導性が支配的になり、ほぼ小さなインダクタとして振る舞います

以降この連作で見るのは、この 3 つの部位だけです — 左斜面、谷、右斜面。

0.1μF・ESL 0.5nH のモデルでは、SRF は約 22.5 MHz でした。それより上の周波数では、「0.1μF を付けたつもり」でも、ノイズから見ればほぼインダクタが 1 個付いている状態です。

これが、この記事のタイトルの答えです。「0.1μF」が容量として振る舞えるのは SRF まで。 SRF を超えても |Z| が十分低ければバイパスとして意味は残りますが、効き方は理想のコンデンサからどんどん離れていきます。100MHz 超のノイズに 0.1μF が期待ほど効かないのは、容量が足りないからではなく、ESL に主導権が移っているからなのです。

「大きい容量に変えれば効く」は、なぜ間違いか

ここで一つ、直感に反する大事な事実があります。容量を 0.01μF → 0.1μF → 1μF と増やしたとき、V 字はどう動くと思いますか。

容量 3 通りの V 字カーブ。左斜面は下がるが、右斜面は 3 本とも重なる

左斜面は容量に応じて下がります(低い周波数には大容量が効く)。谷は左へ移動します。ところが右斜面は 3 本とも重なります。右斜面を決めているのは ESL で、ESL は容量ではなく部品の構造とサイズでほぼ決まるからです(このグラフは「同じサイズ・同じ構造で容量だけ違う」という条件で描いています)。

つまり、同じサイズの部品なら、SRF より上の周波数では容量をいくら増やしてもほぼ改善しません。それどころか実務では、大容量品を選ぼうとするとパッケージサイズが大きくなり、ESL が増えて高周波側はかえって悪化することすらあります。「ノイズが取れないから 10μF に変えてみた」が高周波で空振りする理由がこれです。

では、高周波側を良くするにはどうするか。方法は大きく 2 つあります。容量違いを並べて帯域を広げるか、ESL そのものを下げるか。まず前者 — 昔ながらの知恵と、その落とし穴 — から見ていきます。

先輩の知恵「0.1μF と 0.01μF を並べろ」

容量違いの MLCC を並列にすると、V 字が 2 つ並んで、広い周波数帯で |Z| を低く保てます。先輩の「0.1μF と 0.01μF を並べろ」はこの作戦です。

0.1μF と 0.01μF 並列の |Z|。2 つの谷のあいだに反共振の山が立つ

ただし、タダでは済みません。2 つの谷のあいだに、反共振と呼ばれる山ができます。片方のコンデンサがすでに誘導性(右斜面)、もう片方がまだ容量性(左斜面)になる帯域では、L と C の並列共振が起きて、その周波数だけ局所的に |Z| が跳ね上がるのです。今回のモデルでは 53 MHz 付近に山ができました。高さは 0.47Ω — 谷の |Z|(= ESR 0.02Ω)の 20 倍以上です。

この山の高さは、主に ESR に左右されます。ESR の低い MLCC 同士の組み合わせほど、共振を抑えるものがなくて山が高く育ちます。逆に、あえて ESR が少し高めの品種を混ぜて山をなだらかにする(ダンピングする)という設計テクニックもあるくらいです。

運悪くノイズの周波数がこの山に重なると、「コンデンサを足したのにノイズが増えた」が起きます。並列作戦は有効ですが、山がどこに立つかをグラフで確かめてから使う — これが「読めると選べる」の最初の実例です。

三端子コンデンサ — 「ESL が低い」はグラフのここに効く

ようやく主役の一人、三端子コンデンサです。言葉より先に、構造の違いを絵で見てください。

2 端子 MLCC と三端子コンデンサの電流経路の違い(断面模式図)

普通の MLCC は 2 端子で、電源ラインから部品へ寄り道する形で接続されます。この寄り道 — 部品内部の電極構造に加えて、ランドやビアまで含めた電流ループ — がまるごと ESL として効きます。三端子コンデンサは発想が違って、電源ラインそのものを部品の中に貫通させ、貫通電極のすぐ脇から GND 電極に落とします。寄り道がないうえ、GND 電極が幅広で両側に取られている構造のおかげで、実効 ESL が 1 桁〜2 桁小さくなります。

使い方も 2 端子とは少し違います。三端子はラインに直列に挿入する部品(フィードスルー型)なので、実装には向きがあり、ラインの電流が全部この部品を通ります。選定時は容量だけでなく、ラインの全電流に耐えられる定格電流の確認が必要です。

|Z| カーブで見ると、効果はこう現れます。

普通の MLCC vs 三端子コンデンサの |Z| 比較。谷が右へ移動し、右斜面が大きく下がる

  • 谷(SRF)が右へ移動する
  • 右斜面がまるごと下がる

同じ 0.1μF でも、100MHz での |Z| は普通の MLCC が 0.30Ω に対して、三端子(ESL を 1/10 の 0.05nH としたモデル)は 0.025Ω。約 12 倍の差です。冒頭の先輩の「三端子は ESL が低いからいいよ」は、グラフの言葉に翻訳すると 「V 字の右半分が使い物になるよ」 という意味だったわけです。

逆に言うと、対策したい周波数が SRF より十分下(左斜面)なら、三端子の出番はありません。普通の MLCC で同じ効果が出ます。値段と実装面積のぶんだけ損です。部品の善し悪しではなく、周波数との相性 — この連作で何度も出てくる結論の、最初の一回です。

「何 dB 下がるか」で見る — 挿入損失のやさしい版

データシートには |Z| グラフのほかに、挿入損失(insertion loss)というグラフもよく載っています。「その部品を回路に入れると、各周波数のノイズが何 dB 小さくなるか」を表す、効き目の直接表現です。

dB に馴染みがない方は、ここだけ覚えてください。

20dB = ノイズの電圧(振幅)が 1/10、40dB = 1/100、60dB = 1/1000

dB は電圧比か電力比かで換算が変わります(電力比だと 20dB = 1/100)。この連作のグラフは全部、電圧比で読んでください。−20dB のようにマイナス付きで書く流儀もありますが、同じ「1/10」の意味です。

各コンデンサの挿入損失。縦軸に「ノイズ電圧が 1/10」「1/100」の目盛りを併記

このグラフでも結論は同じです。普通の MLCC は SRF を過ぎると効き目が頭打ちになり、三端子は高い周波数まで効き続けます。

この 2 つのグラフ、実は同じものです

ここで、私もしばらく分かっていなかったことを白状します。|Z|–周波数グラフと挿入損失グラフは、測定条件(相手のインピーダンス)を決めれば、片方からもう片方を計算で出せる関係にあります。 いわば、同じ部品の実力の、別の見せ方です。

コンデンサを GND との間に入れる(シャント)使い方なら、挿入損失はざっくりこんな式になります。

挿入損失[dB] ≒ 20 × log10( 1 + Rsys / |Z| )

Rsys は「そのコンデンサが相手にしている回路側のインピーダンス」です。データシートの 50Ω 測定系では、信号源 50Ω と負荷 50Ω が並列に見えるので Rsys = 25Ω。式に入れると、|Z| が小さいほど挿入損失(=効き目)が大きい、という当たり前の関係が出てきます。

(この式は |Z| の大きさだけを使った近似です。厳密にはインピーダンスの向き=位相も効くので、Rsys が小さい場面では 1〜2dB ほどずれます。本筋 — 相手のインピーダンス次第で効き目が変わる — は同じなので、ここでは大きさだけで話を進めます。)

つまり「挿入損失 40dB」は、Rsys / |Z| ≒ 100、すなわち |Z| がだいたい 25Ω / 100 = 0.25Ω まで下がっている、と言い換えただけなのです。|Z| グラフを 50Ω のメガネで見直したもの、それが挿入損失グラフです。

「40dB 減衰!」に喜んでいいのか — 50Ω と実電源ラインのギャップ

ここが、この記事で一番伝えたいところです。

データシートに「100MHz で 40dB」とあったら、ノイズ電圧が 1/100 になる、と読めます。電源ラインに入れて「40dB も減った!」と喜びたくなる。でも、それはぬか喜びになることがあります。

さっきの式をもう一度見てください。挿入損失は Rsys / |Z| で決まります。データシートの 40dB は Rsys = 25Ω の世界の話です。ところが実際の電源ラインは、しっかり設計された電源ほど インピーダンスが低い(数Ω〜サブΩ)。電源ライン側の Rsys が小さいということは、コンデンサが「勝つべき相手」が最初から小さいということです。

同じ 0.1μF を、Rsys = 25Ω(50Ω ベンチ)と Rsys = 1Ω(わりとしっかりした電源ラインの例)に入れて比べてみます。

同じ 0.1μF でも、50Ω ベンチでは約 38dB、1Ω の電源ラインでは約 11dB。挿入損失は相手のインピーダンス次第でしぼむ

きちんと(位相まで入れて)計算すると、100MHz で、50Ω ベンチの 38dB が、1Ω の電源ラインでは 11dB まで縮みました。部品は何も変えていないのに、です。「データシートの 40dB」をそのまま実機の電源ラインに期待すると、肩透かしを食らう — これがぬか喜びの正体です。

ただし、全部がぬか喜びというわけではありません。 相手のインピーダンスが変わっても変わらないものがあります。

  • |Z| の値そのもの:これは部品固有の性質なので、信じていい。データシートの |Z| グラフこそ、相手によらない素の実力です
  • 部品同士の優劣:50Ω ベンチで良かった部品は、あなたの回路でも(たいてい)良い。相対比較は生きています
  • 効く周波数の形:谷の位置や右斜面の傾きは、メガネを変えても動きません

逆に、当てにできないのは「絶対の dB 値」だけです。しかもこの話は電源ラインの宿命でもあって、50Ω に近いインピーダンスで使う場面(RF や、50Ω 終端された信号線など)では、データシートの dB はもっと素直に出ます。

そんなわけで、実務での落としどころはこうだと思っています。電源デカップリングを考えるときは、挿入損失の dB ではなく |Z| で考える。 「この電源ラインのインピーダンスを ◯Ω 以下に抑えたい(目標インピーダンス)」を決めて、部品の |Z| がそこに届くかを見る。50Ω 前提の dB は、そのままでは電源ラインの通信簿になりません。

最後に表記の流儀も 1 つ。同じデータが、データシートによって「挿入損失 40dB」(減衰量を正の数で書く)と「S21 = −40dB」(通過率をそのまま書く)の 2 通りで載っています。符号が違うだけで中身は同じです。この連作では「挿入損失◯◯dB(大きいほどよく効く)」で統一します。S21 については第 3 本で改めて触れます。

この記事のモデルと、実回路のギャップ

公開前に正直に書いておきます。

  • 全部、等価回路モデルです。実部品の C・ESR は周波数や DC バイアスで変わります(MLCC は直流電圧をかけると容量が目減りします)。実設計ではメーカー提供の実測データを使ってください。第 3 本でその読み込み方を扱います。
  • 基板側のインダクタンスを省いています。実機ではビアやパターンの引き回しの L が部品の ESL と同程度に効きます。「三端子を使ってもパターンが長ければ台無し」は本当で、特に三端子の性能を引き出すには、GND ビアを部品のすぐ脇に打って基板側のインダクタンスを抑える実装設計が命です。
  • 挿入損失は 50Ω 系の定義通りで、実回路の絶対値とは一致しません(本文「40dB 減衰!に喜んでいいのか」で詳しく扱いました)。Rsys = 1Ω のような電源ライン側のインピーダンスも、説明用に置いた例の値です。

第 1 本のまとめ — データシートはここを見る

コンデンサ編の羅針盤として、見るべき点を 3 つに絞ります。

  1. V 字の谷(SRF)は、対策したい周波数より上にあるか。 右斜面に入っていたら、容量ではなく ESL が支配的になっている
  2. 高周波を良くしたいなら、容量ではなく ESL。 右斜面は容量を増やしても動かない。三端子はそのための部品
  3. 複数並列は反共振の山の位置を確かめてから。 谷と谷のあいだの山にノイズが重なると逆効果

おまけ: 自分でグラフを描いてみたい方へ

この記事の計算とグラフ生成に使ったコードは、連作の伴走ツール emi-compass として公開しています。読まなくても本文は追えますが、手元の部品の値で V 字を描いてみたい方はどうぞ。コマンド一発で、この記事と同じ流儀の |Z| グラフが出ます。

pip install git+https://github.com/logicia32/emi-compass
emi-compass cap --c 0.1u --esl 0.5n --esr 0.02   # V 字カーブと SRF を即描画
emi-compass cap --c 0.1u --c2 0.01u              # 並列の反共振チェック

第 3 本では、このツールにメーカー配布の実部品データを読み込ませて「買う前に検証する」ところまで持っていきます(プロ向けグラフの代表・スミスチャートもそこで 1 回だけ登場しますが、読めなくて大丈夫な構成にします)。

おわりに

「0.1μF はいつまでコンデンサか」— 答えは「SRF まで」でした。たった一つの V 字カーブが読めるだけで、「大容量に変えても直らない理由」「並列に並べる知恵とその副作用」「三端子コンデンサの存在意義」まで、全部つながって見えてきます。

次回・第 2 本は、もう一人の主役、チップビーズです。「インダクタの仲間」と思われがちなあの部品が、実は高周波でノイズを熱に変えて捨てる抵抗だという種明かしと、「とりあえずビーズ」がときどき事態を悪化させる理由を、同じ流儀のグラフで観察します。

ここまで読んでくださった方、ありがとうございました。

この記事は Zenn に初出したものを加筆・補足したものです ── Zenn の元記事を見る