電源の近くに 10 μF のコンデンサを配置していても、負荷が急変した際に電圧が低下することがあります。また、あるコンデンサはより高い周波数ではインダクタのように振る舞うこともあります。「直流を遮断し、交流を通す」というのは、理想モデルの簡略表現に過ぎません。本稿では、電荷と電圧変化の関係から始め、有効容量、ESR、ESL、および実際の接続を解析に組み込みます。
現象またはタスク 重要な関係式 参照箇所
電圧がなぜゆっくり変化するのか i = C·dv/dt 電荷、エネルギーと連続性
高周波デカップリングでなぜインピーダンスが残るのか C、ESR、ESL の共同作用 自己共鳴と実際のインピーダンス
公称容量がなぜ不十分なのか 電圧依存性、温度、許容差、経年劣化 有効容量に基づく選定
コンデンサはどのようにフィルタリングや直流遮断を行うのか ブランチの位置と両側のインピーダンス ローパス、結合、デカップリング
過渡電圧降下を推定できるか 電荷の欠損、ESR、インダクタンス 負荷ステップの例
電荷、エネルギーと連続性
理想コンデンサは、互いに絶縁された2つの導体によって形成されます。充電により両端に等量異符号の電荷が蓄積され、電界中にエネルギーが保存されます。ポート電流は、自由電子が理想誘電体を横切って一方の極板から他方の極板へ流れることを意味しません。外部回路が両端に電荷を移動させ、極板間の変化する電界は変位電流に対応します。
線形でパラメータが固定されたモデルでは、q = Cv であり、C の単位は F = C/V です。これは、同じ電圧変化に対してどれだけの電荷変化が生じるかを記述します。電流が電圧の正端に入るという規約を採用し、時間を微分すると i = C·dv/dt が得られます。C が電圧に依存して変化する場合は、q/v と微分容量 dq/dv を区別する必要があり、固定された C の公式を条件なしに大信号全体に適用することはできません。
10 μF のコンデンサに一定の 1 mA の充電電流が流れるとき、dv/dt = 100 V/s となり、つまり1ミリ秒あたり 0.1 V 上昇します。抵抗を介して固定電圧源に接続すると、電流は残りの電圧差が減少するにつれて減少するため、線形なランプ波形ではなく指数関数的に変化します。具体的な RC 解法については、直流回路解析 を参照してください。
「電圧は不連続に変化できない」という正確な条件は、有限の容量を持つコンデンサにインパルス電流が流れない限り、電圧が連続的に保たれることです。理想電圧源が理想コンデンサに電圧のステップ変化を強要すると、インパルス電流が必要になります。現実には、ソースインピーダンスや寄生パラメータが変化を制限します。コンデンサの外部端子電圧は、ESR による電圧降下のために急速に変化することがありますが、これは内部の理想 C の電圧連続性と矛盾しません。
保存エネルギー E = ½Cv² は v·dq の積分から導かれ、固定された線形 C に適用できます。5 V における 10 μF のコンデンサは 125 μJ を保存します。電圧が2倍になると、保存エネルギーは4倍になります。並列接続された理想コンデンサは同じ電圧がかかるため、容量は加算されます。直列接続では 1/C_eq = Σ1/C_i となります。実際の直列コンデンサの直流電圧分割は、漏れ電流の影響も受けるため、容量比だけで各コンデンサが定格電圧を超えないことを保証することはできません。
同じ電流なのに電圧の傾きが違う?
時刻を直接動かせる。I と t を固定して C を変えると、電荷は同じでも電圧とエネルギーは変わる。定電流を維持する電源なので、抵抗を介した定電圧充電にこの直線は使えない。
Δ q = I Δ t , d t d v = C I , E = 2 1 C v 2
図を準備しています 再読み込み
同じ電流なのに電圧の傾きが違う? 定電流で電荷は線形に増え、電圧傾斜は I/C。エネルギーは電圧の二次関数。
{"id":"capacitor-charge-slope","title":"同じ電流なのに電圧の傾きが違う?","summary":"定電流で電荷は線形に増え、電圧傾斜は I/C。エネルギーは電圧の二次関数。","height":1000,"html":"<h2 data-i18n=\"heading\"></h2><p class=\"intro\" data-i18n=\"intro\"></p><div class=\"control\"><label for=\"c\" data-i18n=\"c\"></label><output for=\"c\" id=\"c-value\"></output><input id=\"c\" type=\"range\" min=\"1\" max=\"20\" value=\"1\" step=\"1\"></div><div class=\"control\"><label for=\"i\" data-i18n=\"i\"></label><output for=\"i\" id=\"i-value\"></output><input id=\"i\" type=\"range\" min=\"0\" max=\"5\" value=\"5\" step=\"0.1\"></div><div class=\"control\"><label for=\"time\" data-i18n=\"time\"></label><output for=\"time\" id=\"time-value\"></output><input id=\"time\" type=\"range\" min=\"0\" max=\"5\" value=\"1\" step=\"0.01\"></div><div class=\"chart-wrap\"><div class=\"chart-label\" data-i18n=\"plot\"></div><svg id=\"plot\" class=\"curve\" viewBox=\"0 0 360 210\" role=\"img\" data-i18n-label=\"plot\"></svg></div><div class=\"metrics\"><div><span data-i18n=\"voltage\"></span><strong id=\"voltage\"></strong></div><div><span data-i18n=\"charge\"></span><strong id=\"charge\"></strong></div><div><span data-i18n=\"energy\"></span><strong id=\"energy\"></strong></div><div><span data-i18n=\"slope\"></span><strong id=\"slope\"></strong></div></div><p id=\"eq\" class=\"formula\"></p><details class=\"scope\"><summary data-i18n=\"scopeLabel\"></summary><p data-i18n=\"scope\"></p></details>","css":".intro{margin:8px 0 18px;color:var(--muted);font-size:14px}.caption,.hint{font-size:12px;color:var(--muted);margin-top:12px}.control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;margin:14px 0;font-size:13px}.control label{font-size:13px}.control output{color:var(--accent);min-width:5em;text-align:right;font-variant-numeric:tabular-nums}.control input{grid-column:1/-1;width:100%;margin:0}.presets{display:flex;gap:4px;align-items:stretch}.presets button{flex:1 1 0;min-width:0;overflow-wrap:anywhere;font-size:13px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.actions button{flex:1;min-width:0;font-size:13px;min-height:42px}.copy{display:grid;font-size:14px;margin:16px 0}.copy>*{grid-area:1/1;margin:0}.reserve{visibility:hidden}.scope{margin-top:14px;color:var(--muted);font-size:12px}.scope summary{padding:8px 0;cursor:pointer}.scope p{margin-top:10px}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.card{border:1px solid var(--rule);border-radius:9px;padding:14px;min-width:0}.card header{font-size:14px;font-weight:600;margin-bottom:10px}.card button{font-size:12px;width:100%;min-width:0}.card small{display:block;font-size:12px;color:var(--muted)}.card code{font-size:12px;overflow-wrap:anywhere}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.metrics>div{border-left:2px solid var(--accent);padding-left:10px;min-width:0}.metrics span{display:block;min-height:3.2em;color:var(--muted);font-size:12px}.metrics strong{font-size:23px;display:block;font-weight:550;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.formula{border-top:1px solid var(--rule);padding-top:12px;margin-top:14px;font-size:13px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.value{font:550 20px ui-monospace,monospace}.legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted);margin:12px 0}.legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--accent);margin-right:6px}.legend .second:before{background:var(--second)}.check{display:flex;align-items:center;gap:8px;font-size:13px;margin:12px 0}.check input{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent)}select,input[type=text],input[type=number]{background:var(--paper);color:var(--ink);font:inherit;font-size:13px;padding:10px;border:1px solid var(--rule);border-radius:7px;max-width:100%;min-width:0}select{width:100%;min-height:42px}.band{height:20px;display:flex;background:var(--surface);border-radius:4px;overflow:hidden}.band i{height:100%;display:block;background:var(--accent);transition:width .25s}.band i.second{background:var(--second)}button:disabled{cursor:default}.status{font-size:13px;min-height:4.8em}.mono{font-family:ui-monospace,monospace;font-variant-numeric:tabular-nums}.muted{color:var(--muted)}\n@media(max-width:480px){.two{gap:8px}.card{padding:12px 9px}.actions button,.presets button{font-size:12px}.metrics strong{font-size:20px}.metrics{gap:8px}}\n@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}\n.track-row{margin:16px 0}.track-row>span{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}.track{display:flex;gap:5px;min-width:0}.cell{flex:1;min-width:0;min-height:48px;border:1px solid var(--rule);border-radius:5px;background:var(--surface);display:flex;align-items:center;justify-content:center;text-align:center;padding:5px 3px;font-size:12px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.cell.on{background:var(--accent-soft);border-color:var(--accent)}.cell.gold{background:var(--second-soft);border-color:var(--second)}.cell.empty{border-style:dashed;color:var(--muted)}.cell.error{border-color:var(--second);text-decoration:line-through}.choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:14px 0}.choices button{min-width:0;padding:10px 4px;font-size:12px;overflow-wrap:anywhere}.choices button[aria-current=true]{border-color:var(--accent);background:var(--accent-soft)}.relation{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:6px;margin:12px 0}.relation .cell{min-height:72px}.relation>i{text-align:center;font-style:normal;color:var(--accent)}.readout{font-size:13px;white-space:pre-line;min-height:6.4em;overflow-wrap:anywhere}.plot{position:relative;border-left:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:8px 0;margin:18px 0}.plot-row{height:28px;position:relative;margin:4px 0;background:var(--surface)}.plot-row i{position:absolute;inset-block:5px;background:var(--accent);min-width:2px;transition:width .2s,left .2s}.plot-row b{position:relative;padding:4px 6px;font:11px/28px ui-monospace,monospace;background:var(--paper);border-radius:3px}.axis{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}\n\n/* Action labels must remain readable across locales and narrow embeds. */\n.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}\n.actions button{overflow-wrap:anywhere;white-space:normal;min-height:58px;padding:8px}\nbutton{overflow-wrap:anywhere}\n@media(min-width:640px){.actions{grid-template-columns:repeat(3,minmax(0,1fr))}}\n\n.metrics span{overflow-wrap:anywhere}\n.panel{border:1px solid var(--rule);border-radius:9px;padding:12px;margin:14px 0;min-width:0}.panel h3{font-size:13px;margin:0 0 10px;color:var(--muted)}.source{font:13px/1.8 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.source mark{background:var(--accent-soft);color:var(--ink);border-bottom:2px solid var(--accent)}.source .fault{background:var(--second-soft);border-color:var(--second)}.diagram{display:block;width:100%;height:auto;max-height:320px;margin:14px 0;overflow:visible}.diagram text{fill:var(--ink);font:12px ui-monospace,monospace}.diagram .edge{stroke:var(--muted);stroke-width:1.5;fill:none}.diagram .edge.on{stroke:var(--accent);stroke-width:3}.diagram .node{fill:var(--surface);stroke:var(--rule);stroke-width:1.5}.diagram .node.on{fill:var(--accent-soft);stroke:var(--accent)}.diagram .node.gold{fill:var(--second-soft);stroke:var(--second)}.log{font:12px/1.8 ui-monospace,monospace;white-space:pre-line;overflow-wrap:anywhere;min-height:7.2em}.table{display:grid;gap:5px;margin:14px 0}.table .tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.table .tr>*{padding:8px 5px;background:var(--surface);border-radius:4px;min-width:0;overflow-wrap:anywhere;font-size:12px}.table .tr .on{background:var(--accent-soft)}.table .tr .gold{background:var(--second-soft)}.choices button{min-height:44px}.metrics strong{min-height:1.6em}.code-line{display:block}.code-line.on{background:var(--accent-soft);border-left:2px solid var(--accent);padding-left:6px}.status-badge{font-size:12px;color:var(--accent)}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.tile-grid .cell{min-height:40px}.actions button{min-height:48px}.form-field{display:grid;gap:8px;margin:14px 0;font-size:13px}.form-field input{width:100%;font-family:ui-monospace,monospace}.metrics.three{grid-template-columns:repeat(3,minmax(0,1fr))}.formula{min-height:3.2em}.presets{flex-wrap:wrap}.presets button{flex-basis:25%;min-height:44px}\n\n.budget{display:flex;height:28px;margin:16px 0;background:var(--surface);border-radius:5px;overflow:hidden}.budget i{display:block;background:var(--accent);transition:width .2s}.budget i.gold{background:var(--second)}.intervals{margin:16px 0}.interval{position:relative;height:36px;background:var(--surface);margin:6px 0;border-radius:4px;overflow:hidden}.interval i{position:absolute;height:100%;background:var(--accent-soft);border-left:2px solid var(--accent)}.interval i.gold{background:var(--second-soft);border-color:var(--second)}.interval span{position:relative;z-index:1;font:12px/36px ui-monospace,monospace;padding-left:7px}.table .tr>*{min-height:4.8em}.formula{white-space:pre-line;min-height:7.2em}.actions:has(>button:only-child){grid-template-columns:1fr}.metrics strong{min-height:3.2em}.rangegrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin:14px 0}.rangegrid .cell{min-height:30px;padding:3px 1px;font-size:10px}.message{min-height:7.2em;white-space:pre-line;font:13px/1.8 ui-monospace,monospace;overflow-wrap:anywhere}\n/* Allow CJK hanging punctuation without overflowing a metric's border box. */\n.metrics>div{padding-right:4px}.metrics span{line-break:anywhere}\n\n.chart-wrap{margin:18px 0}.chart-label{font-size:12px;color:var(--muted);min-height:3.2em}.curve{display:block;width:100%;height:auto;max-height:320px;overflow:visible}.curve text{font:11px ui-monospace,monospace;fill:var(--muted)}.gridline{stroke:var(--rule);stroke-width:1}.metrics strong{font-size:20px;min-height:3.2em}.formula{font:12px/1.8 ui-monospace,monospace;min-height:9em}.readout{min-height:8em}.presets button{flex-basis:30%}.scope p{overflow-wrap:anywhere} .unit-note{font-size:12px;color:var(--muted);margin:10px 0}\n\n.metrics span{word-break:break-all;line-break:strict}.metrics>div{padding-right:6px}\n\n","js":"const $=s=>document.querySelector(s);const set=(id,v)=>$('#'+id).textContent=v;const t=k=>viz.t(k);function cells(id,values){$('#'+id).replaceChildren(...values.map(v=>{const e=document.createElement('div');e.className='cell '+(v.cls||'');e.textContent=v.text;e.title=v.title||v.text;return e;}));}function pressed(mode){document.querySelectorAll('[data-mode]').forEach(e=>e.setAttribute('aria-pressed',String(e.dataset.mode===mode)));}const esc=s=>String(s).replace(/[&<>\"']/g,c=>({'&':'&','<':'<','>':'>','\"':'"',\"'\":'''}[c]));const fmt=s=>'{'+[...s].sort().join(', ')+'}';function graph(id,nodes,edges){const el=$('#'+id);el.setAttribute('viewBox','0 0 360 200');el.innerHTML='<defs><marker id=\"arrow-'+id+'\" viewBox=\"0 0 10 10\" refX=\"8\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 10 5 L 0 10 z\" fill=\"var(--muted)\"/></marker></defs>'+edges.map(e=>{const a=nodes[e[0]],b=nodes[e[1]],dx=b.x-a.x,dy=b.y-a.y,d=Math.hypot(dx,dy)||1;if(edges.some(r=>r[0]===e[1]&&r[1]===e[0])){const nx=-dy/d,ny=dx/d;return '<path class=\"edge '+(e[2]?'on':'')+'\" d=\"M '+(a.x+dx/d*22+nx*12)+' '+(a.y+dy/d*22+ny*12)+' Q '+((a.x+b.x)/2+nx*38)+' '+((a.y+b.y)/2+ny*38)+' '+(b.x-dx/d*25+nx*12)+' '+(b.y-dy/d*25+ny*12)+'\" marker-end=\"url(#arrow-'+id+')\"/>';}return '<line class=\"edge '+(e[2]?'on':'')+'\" x1=\"'+(a.x+dx/d*25)+'\" y1=\"'+(a.y+dy/d*25)+'\" x2=\"'+(b.x-dx/d*28)+'\" y2=\"'+(b.y-dy/d*28)+'\" marker-end=\"url(#arrow-'+id+')\"/>';}).join('')+nodes.map(n=>'<g><circle class=\"node '+(n.cls||'')+'\" cx=\"'+n.x+'\" cy=\"'+n.y+'\" r=\"25\"/><text x=\"'+n.x+'\" y=\"'+(n.y+4)+'\" text-anchor=\"middle\">'+esc(n.name)+'</text>'+(n.sub?'<text x=\"'+n.x+'\" y=\"'+(n.y+43)+'\" text-anchor=\"middle\">'+esc(n.sub)+'</text>':'')+'</g>').join('');}function table(id,rows){$('#'+id).classList.add('table');$('#'+id).replaceChildren(...rows.map(r=>{const row=document.createElement('div');row.className='tr';row.style.gridTemplateColumns='repeat('+r.length+',minmax(0,1fr))';r.forEach(x=>{const c=document.createElement('div');if(typeof x==='object'){c.textContent=x.text;c.className=x.cls||'';}else c.textContent=x;row.append(c)});return row;}));}function band(id,parts,total){$('#'+id).replaceChildren(...parts.map((p,i)=>{const e=document.createElement('i');e.style.width=(100*p.value/total)+'%';e.className=i%2?'gold':'on';e.title=p.name+': '+p.value;return e}));}function intervals(id,items,total){$('#'+id).replaceChildren(...items.map(p=>{const row=document.createElement('div');row.className='interval';const bar=document.createElement('i');bar.style.left=(100*p.start/total)+'%';bar.style.width=(100*(p.end-p.start)/total)+'%';bar.className=p.cls||'';const label=document.createElement('span');label.textContent=p.label;row.append(bar,label);return row;}));}function plot(id,series,xr,yr,opts={}){const e=$('#'+id),X=x=>42+(x-xr[0])/(xr[1]-xr[0])*298,Y=y=>175-(y-yr[0])/(yr[1]-yr[0])*148;let out='<defs><clipPath id=\"clip-'+id+'\"><rect x=\"42\" y=\"27\" width=\"298\" height=\"148\"/></clipPath></defs>';for(let i=0;i<3;i++){let x=xr[0]+i*(xr[1]-xr[0])/2,y=yr[0]+i*(yr[1]-yr[0])/2;out+='<path class=\"gridline\" d=\"M '+X(x)+' 27V175M42 '+Y(y)+'H340\"/><text x=\"'+X(x)+'\" y=\"194\" text-anchor=\"middle\">'+esc(opts.xfmt?opts.xfmt(x):Number(x.toFixed(2)))+'</text><text x=\"36\" y=\"'+(Y(y)+4)+'\" text-anchor=\"end\">'+esc(opts.yfmt?opts.yfmt(y):Number(y.toFixed(2)))+'</text>';}out+='<g clip-path=\"url(#clip-'+id+')\">';for(const s of series){out+='<path fill=\"none\" stroke=\"'+(s.color||'var(--accent)')+'\" stroke-width=\"2.5\" '+(s.dash?'stroke-dasharray=\"5 4\"':'')+' d=\"'+s.pts.map((p,i)=>(i?'L':'M')+X(p[0]).toFixed(2)+','+Y(p[1]).toFixed(2)).join(' ')+'\"/>';}for(const p of opts.points||[])out+='<circle cx=\"'+X(p[0])+'\" cy=\"'+Y(p[1])+'\" r=\"4\" fill=\"var(--second)\" stroke=\"var(--paper)\" stroke-width=\"1.5\"/>';if(opts.cursor!==undefined)out+='<path d=\"M'+X(opts.cursor)+' 27V175\" stroke=\"var(--muted)\" stroke-dasharray=\"3 3\"/>';e.innerHTML=out+'</g>';e.dataset.curves=JSON.stringify(series.map(s=>s.pts));}const curve=(fn,lo,hi,n=120)=>Array.from({length:n+1},(_,i)=>{const x=lo+(hi-lo)*i/n;return[x,fn(x)]});function inputs(draw){document.querySelectorAll('input,select').forEach(e=>{e.addEventListener('input',draw);e.addEventListener('change',draw)});draw()}const n=id=>+$('#'+id).value;const show=(id,v,d=3)=>set(id,Number(v.toFixed(d)));function draw(){let c=n('c'),i=n('i'),time=n('time'),v=i*time/c;['c','i','time'].forEach(k=>show(k+'-value',n(k)));plot('plot',[{pts:[[0,0],[5,i*5/c]]}],[0,5],[0,25],{cursor:time,points:[[time,v]]});show('voltage',v);show('charge',i*time);show('energy',.5*c*v*v);show('slope',i/c);set('eq','q = It = '+(i*time).toFixed(3)+' μC\\nv = q/C = '+v.toFixed(3)+' V\\nE = ½Cv² = '+(.5*c*v*v).toFixed(3)+' μJ');}inputs(draw);","audio":false,"strings":{"c":"容量(μF)","charge":"電荷(μC)","energy":"蓄積エネルギー(μJ)","heading":"同じ電流なのに電圧の傾きが違う?","i":"充電電流(mA)","intro":"定電流と容量を変え、時刻ごとの電荷とエネルギーを見る。","plot":"横軸 ms、縦軸 V","reset":"リセット","scope":"初期 0 V、理想電流源と固定 C、0–5 ms。実際の定格や電流源の出力範囲は含まない。","scopeLabel":"モデルの範囲と前提","slope":"傾き(V/ms)","time":"時刻(ms)","voltage":"電圧(V)"}}
自己共鳴と実際のインピーダンス
理想コンデンサの正弦定常状態インピーダンスは Z_C = 1/(jωC) です。ここで j² = −1、ω = 2πf です。よく書かれる 1/(2πfC) はコンダクタンスの大きさ(容抗の大きさ)であり、位相的には電流が電圧より 90° 進みます。インピーダンスを正の実数としてのみ表記すると、位相情報が失われ、インダクタや抵抗との組み合わせを正しく解析できません。
理想コンデンサは、一定の直流定常状態では電流がゼロですが、現実には漏れ電流が存在します。ある非ゼロ周波数において、他のブランチのインピーダンスと比較して十分に小さいかどうかによって、短絡とみなせるかどうかが決まります。「高周波」という言葉だけで判断するものではありません。
実際のデバイスの一般的な簡化モデルには、直列 ESR、直列 ESL、理想 C、および漏れ電流を表す並列抵抗が含まれます。漏れ電流を無視し、パラメータがほぼ一定とみなせる周波数帯域において:
Z ≈ ESR + j(ωESL − 1/(ωC)) 。
低周波では容量性項が優位になり、インピーダンスは周波数の上昇とともに低下します。f₀ ≈ 1/(2π√(ESL·C)) に達すると、誘導性リアクタンスと容量性リアクタンスが打ち消し合い、インピーダンスは約 ESR まで低下します。さらに周波数が上昇すると誘導性項が優位になり、インピーダンスは再び上昇します。これが「周波数が高くなるほど短絡に近づく」という境界です。Murata:コンデンサのインピーダンスと ESR の周波数特性
0.01 0.1 1 10 100 |Z| / Ω 10 kHz 100 kHz 1 MHz 10 MHz 100 MHz C = 100 nF、ESR = 30 mΩ、ESL = 1 nH 容量性領域 誘導性領域 約 15.9 MHz 実際のコンデンサの簡易モデル:自己共鳴を過ぎると、インピーダンスが再び上昇 する 固定パラメータの教育用曲線;実際の ESR、ESL および実装環境は周波数とともに変化するため、デバイスモデルと実測 値を参照してください。
例えば、C = 100 nF、ESL = 1 nH の場合、自己共鳴周波数は約 15.9 MHz になります。この例の ESL には、選択したモデル内のインダクタンスが含まれます。実際の基板のパターン、パッド、リターンパスはループインダクタンスを追加するため、データシートのデバイス曲線をそのままチップの電源ピンで見えるインピーダンスとして扱うことはできません。
複数のコンデンサを並列接続しても、すべての周波数で優れているわけではありません。異なるブランチの容量性と誘導性の挙動が、逆共鳴ピークを形成する可能性があります。電源配分ネットワーク、損失、およびレイアウト解析を組み合わせる必要があり、「すべての容量値を1つずつ配置する」ことを普遍的な最適解として扱うことはできません。
コンデンサのインピーダンスはなぜ再び上がる?
青線は複素インピーダンスの絶対値で、下に位相と逆向きのリアクタンスも示す。C または ESL を増すと共振は低周波へ動くが、高周波側は主に ESL で決まる。
∣ Z ∣ = ES R 2 + ( ω ES L − ω C 1 ) 2
図を準備しています 再読み込み
コンデンサのインピーダンスはなぜ再び上がる? 直列の誘導性・容量性リアクタンスが共振で相殺され、最小値は ESR、高周波側は誘導性となる。
{"id":"capacitor-impedance-minimum","title":"コンデンサのインピーダンスはなぜ再び上がる?","summary":"直列の誘導性・容量性リアクタンスが共振で相殺され、最小値は ESR、高周波側は誘導性となる。","height":1000,"html":"<h2 data-i18n=\"heading\"></h2><p class=\"intro\" data-i18n=\"intro\"></p><div class=\"control\"><label for=\"c\" data-i18n=\"c\"></label><output for=\"c\" id=\"c-value\"></output><input id=\"c\" type=\"range\" min=\"10\" max=\"500\" value=\"100\" step=\"10\"></div><div class=\"control\"><label for=\"l\" data-i18n=\"l\"></label><output for=\"l\" id=\"l-value\"></output><input id=\"l\" type=\"range\" min=\"0.2\" max=\"5\" value=\"1\" step=\"0.1\"></div><div class=\"control\"><label for=\"f\" data-i18n=\"f\"></label><output for=\"f\" id=\"f-value\"></output><input id=\"f\" type=\"range\" min=\"4\" max=\"9\" value=\"7.2\" step=\"0.01\"></div><div class=\"chart-wrap\"><div class=\"chart-label\" data-i18n=\"plot\"></div><svg id=\"plot\" class=\"curve\" viewBox=\"0 0 360 210\" role=\"img\" data-i18n-label=\"plot\"></svg></div><div class=\"metrics\"><div><span data-i18n=\"res\"></span><strong id=\"res\"></strong></div><div><span data-i18n=\"z\"></span><strong id=\"z\"></strong></div><div><span data-i18n=\"phase\"></span><strong id=\"phase\"></strong></div></div><p id=\"eq\" class=\"formula\"></p><details class=\"scope\"><summary data-i18n=\"scopeLabel\"></summary><p data-i18n=\"scope\"></p></details>","css":".intro{margin:8px 0 18px;color:var(--muted);font-size:14px}.caption,.hint{font-size:12px;color:var(--muted);margin-top:12px}.control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;margin:14px 0;font-size:13px}.control label{font-size:13px}.control output{color:var(--accent);min-width:5em;text-align:right;font-variant-numeric:tabular-nums}.control input{grid-column:1/-1;width:100%;margin:0}.presets{display:flex;gap:4px;align-items:stretch}.presets button{flex:1 1 0;min-width:0;overflow-wrap:anywhere;font-size:13px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.actions button{flex:1;min-width:0;font-size:13px;min-height:42px}.copy{display:grid;font-size:14px;margin:16px 0}.copy>*{grid-area:1/1;margin:0}.reserve{visibility:hidden}.scope{margin-top:14px;color:var(--muted);font-size:12px}.scope summary{padding:8px 0;cursor:pointer}.scope p{margin-top:10px}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.card{border:1px solid var(--rule);border-radius:9px;padding:14px;min-width:0}.card header{font-size:14px;font-weight:600;margin-bottom:10px}.card button{font-size:12px;width:100%;min-width:0}.card small{display:block;font-size:12px;color:var(--muted)}.card code{font-size:12px;overflow-wrap:anywhere}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.metrics>div{border-left:2px solid var(--accent);padding-left:10px;min-width:0}.metrics span{display:block;min-height:3.2em;color:var(--muted);font-size:12px}.metrics strong{font-size:23px;display:block;font-weight:550;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.formula{border-top:1px solid var(--rule);padding-top:12px;margin-top:14px;font-size:13px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.value{font:550 20px ui-monospace,monospace}.legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted);margin:12px 0}.legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--accent);margin-right:6px}.legend .second:before{background:var(--second)}.check{display:flex;align-items:center;gap:8px;font-size:13px;margin:12px 0}.check input{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent)}select,input[type=text],input[type=number]{background:var(--paper);color:var(--ink);font:inherit;font-size:13px;padding:10px;border:1px solid var(--rule);border-radius:7px;max-width:100%;min-width:0}select{width:100%;min-height:42px}.band{height:20px;display:flex;background:var(--surface);border-radius:4px;overflow:hidden}.band i{height:100%;display:block;background:var(--accent);transition:width .25s}.band i.second{background:var(--second)}button:disabled{cursor:default}.status{font-size:13px;min-height:4.8em}.mono{font-family:ui-monospace,monospace;font-variant-numeric:tabular-nums}.muted{color:var(--muted)}\n@media(max-width:480px){.two{gap:8px}.card{padding:12px 9px}.actions button,.presets button{font-size:12px}.metrics strong{font-size:20px}.metrics{gap:8px}}\n@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}\n.track-row{margin:16px 0}.track-row>span{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}.track{display:flex;gap:5px;min-width:0}.cell{flex:1;min-width:0;min-height:48px;border:1px solid var(--rule);border-radius:5px;background:var(--surface);display:flex;align-items:center;justify-content:center;text-align:center;padding:5px 3px;font-size:12px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.cell.on{background:var(--accent-soft);border-color:var(--accent)}.cell.gold{background:var(--second-soft);border-color:var(--second)}.cell.empty{border-style:dashed;color:var(--muted)}.cell.error{border-color:var(--second);text-decoration:line-through}.choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:14px 0}.choices button{min-width:0;padding:10px 4px;font-size:12px;overflow-wrap:anywhere}.choices button[aria-current=true]{border-color:var(--accent);background:var(--accent-soft)}.relation{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:6px;margin:12px 0}.relation .cell{min-height:72px}.relation>i{text-align:center;font-style:normal;color:var(--accent)}.readout{font-size:13px;white-space:pre-line;min-height:6.4em;overflow-wrap:anywhere}.plot{position:relative;border-left:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:8px 0;margin:18px 0}.plot-row{height:28px;position:relative;margin:4px 0;background:var(--surface)}.plot-row i{position:absolute;inset-block:5px;background:var(--accent);min-width:2px;transition:width .2s,left .2s}.plot-row b{position:relative;padding:4px 6px;font:11px/28px ui-monospace,monospace;background:var(--paper);border-radius:3px}.axis{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}\n\n/* Action labels must remain readable across locales and narrow embeds. */\n.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}\n.actions button{overflow-wrap:anywhere;white-space:normal;min-height:58px;padding:8px}\nbutton{overflow-wrap:anywhere}\n@media(min-width:640px){.actions{grid-template-columns:repeat(3,minmax(0,1fr))}}\n\n.metrics span{overflow-wrap:anywhere}\n.panel{border:1px solid var(--rule);border-radius:9px;padding:12px;margin:14px 0;min-width:0}.panel h3{font-size:13px;margin:0 0 10px;color:var(--muted)}.source{font:13px/1.8 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.source mark{background:var(--accent-soft);color:var(--ink);border-bottom:2px solid var(--accent)}.source .fault{background:var(--second-soft);border-color:var(--second)}.diagram{display:block;width:100%;height:auto;max-height:320px;margin:14px 0;overflow:visible}.diagram text{fill:var(--ink);font:12px ui-monospace,monospace}.diagram .edge{stroke:var(--muted);stroke-width:1.5;fill:none}.diagram .edge.on{stroke:var(--accent);stroke-width:3}.diagram .node{fill:var(--surface);stroke:var(--rule);stroke-width:1.5}.diagram .node.on{fill:var(--accent-soft);stroke:var(--accent)}.diagram .node.gold{fill:var(--second-soft);stroke:var(--second)}.log{font:12px/1.8 ui-monospace,monospace;white-space:pre-line;overflow-wrap:anywhere;min-height:7.2em}.table{display:grid;gap:5px;margin:14px 0}.table .tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.table .tr>*{padding:8px 5px;background:var(--surface);border-radius:4px;min-width:0;overflow-wrap:anywhere;font-size:12px}.table .tr .on{background:var(--accent-soft)}.table .tr .gold{background:var(--second-soft)}.choices button{min-height:44px}.metrics strong{min-height:1.6em}.code-line{display:block}.code-line.on{background:var(--accent-soft);border-left:2px solid var(--accent);padding-left:6px}.status-badge{font-size:12px;color:var(--accent)}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.tile-grid .cell{min-height:40px}.actions button{min-height:48px}.form-field{display:grid;gap:8px;margin:14px 0;font-size:13px}.form-field input{width:100%;font-family:ui-monospace,monospace}.metrics.three{grid-template-columns:repeat(3,minmax(0,1fr))}.formula{min-height:3.2em}.presets{flex-wrap:wrap}.presets button{flex-basis:25%;min-height:44px}\n\n.budget{display:flex;height:28px;margin:16px 0;background:var(--surface);border-radius:5px;overflow:hidden}.budget i{display:block;background:var(--accent);transition:width .2s}.budget i.gold{background:var(--second)}.intervals{margin:16px 0}.interval{position:relative;height:36px;background:var(--surface);margin:6px 0;border-radius:4px;overflow:hidden}.interval i{position:absolute;height:100%;background:var(--accent-soft);border-left:2px solid var(--accent)}.interval i.gold{background:var(--second-soft);border-color:var(--second)}.interval span{position:relative;z-index:1;font:12px/36px ui-monospace,monospace;padding-left:7px}.table .tr>*{min-height:4.8em}.formula{white-space:pre-line;min-height:7.2em}.actions:has(>button:only-child){grid-template-columns:1fr}.metrics strong{min-height:3.2em}.rangegrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin:14px 0}.rangegrid .cell{min-height:30px;padding:3px 1px;font-size:10px}.message{min-height:7.2em;white-space:pre-line;font:13px/1.8 ui-monospace,monospace;overflow-wrap:anywhere}\n/* Allow CJK hanging punctuation without overflowing a metric's border box. */\n.metrics>div{padding-right:4px}.metrics span{line-break:anywhere}\n\n.chart-wrap{margin:18px 0}.chart-label{font-size:12px;color:var(--muted);min-height:3.2em}.curve{display:block;width:100%;height:auto;max-height:320px;overflow:visible}.curve text{font:11px ui-monospace,monospace;fill:var(--muted)}.gridline{stroke:var(--rule);stroke-width:1}.metrics strong{font-size:20px;min-height:3.2em}.formula{font:12px/1.8 ui-monospace,monospace;min-height:9em}.readout{min-height:8em}.presets button{flex-basis:30%}.scope p{overflow-wrap:anywhere} .unit-note{font-size:12px;color:var(--muted);margin:10px 0}\n\n.metrics span{word-break:break-all;line-break:strict}.metrics>div{padding-right:6px}\n\n","js":"const $=s=>document.querySelector(s);const set=(id,v)=>$('#'+id).textContent=v;const t=k=>viz.t(k);function cells(id,values){$('#'+id).replaceChildren(...values.map(v=>{const e=document.createElement('div');e.className='cell '+(v.cls||'');e.textContent=v.text;e.title=v.title||v.text;return e;}));}function pressed(mode){document.querySelectorAll('[data-mode]').forEach(e=>e.setAttribute('aria-pressed',String(e.dataset.mode===mode)));}const esc=s=>String(s).replace(/[&<>\"']/g,c=>({'&':'&','<':'<','>':'>','\"':'"',\"'\":'''}[c]));const fmt=s=>'{'+[...s].sort().join(', ')+'}';function graph(id,nodes,edges){const el=$('#'+id);el.setAttribute('viewBox','0 0 360 200');el.innerHTML='<defs><marker id=\"arrow-'+id+'\" viewBox=\"0 0 10 10\" refX=\"8\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 10 5 L 0 10 z\" fill=\"var(--muted)\"/></marker></defs>'+edges.map(e=>{const a=nodes[e[0]],b=nodes[e[1]],dx=b.x-a.x,dy=b.y-a.y,d=Math.hypot(dx,dy)||1;if(edges.some(r=>r[0]===e[1]&&r[1]===e[0])){const nx=-dy/d,ny=dx/d;return '<path class=\"edge '+(e[2]?'on':'')+'\" d=\"M '+(a.x+dx/d*22+nx*12)+' '+(a.y+dy/d*22+ny*12)+' Q '+((a.x+b.x)/2+nx*38)+' '+((a.y+b.y)/2+ny*38)+' '+(b.x-dx/d*25+nx*12)+' '+(b.y-dy/d*25+ny*12)+'\" marker-end=\"url(#arrow-'+id+')\"/>';}return '<line class=\"edge '+(e[2]?'on':'')+'\" x1=\"'+(a.x+dx/d*25)+'\" y1=\"'+(a.y+dy/d*25)+'\" x2=\"'+(b.x-dx/d*28)+'\" y2=\"'+(b.y-dy/d*28)+'\" marker-end=\"url(#arrow-'+id+')\"/>';}).join('')+nodes.map(n=>'<g><circle class=\"node '+(n.cls||'')+'\" cx=\"'+n.x+'\" cy=\"'+n.y+'\" r=\"25\"/><text x=\"'+n.x+'\" y=\"'+(n.y+4)+'\" text-anchor=\"middle\">'+esc(n.name)+'</text>'+(n.sub?'<text x=\"'+n.x+'\" y=\"'+(n.y+43)+'\" text-anchor=\"middle\">'+esc(n.sub)+'</text>':'')+'</g>').join('');}function table(id,rows){$('#'+id).classList.add('table');$('#'+id).replaceChildren(...rows.map(r=>{const row=document.createElement('div');row.className='tr';row.style.gridTemplateColumns='repeat('+r.length+',minmax(0,1fr))';r.forEach(x=>{const c=document.createElement('div');if(typeof x==='object'){c.textContent=x.text;c.className=x.cls||'';}else c.textContent=x;row.append(c)});return row;}));}function band(id,parts,total){$('#'+id).replaceChildren(...parts.map((p,i)=>{const e=document.createElement('i');e.style.width=(100*p.value/total)+'%';e.className=i%2?'gold':'on';e.title=p.name+': '+p.value;return e}));}function intervals(id,items,total){$('#'+id).replaceChildren(...items.map(p=>{const row=document.createElement('div');row.className='interval';const bar=document.createElement('i');bar.style.left=(100*p.start/total)+'%';bar.style.width=(100*(p.end-p.start)/total)+'%';bar.className=p.cls||'';const label=document.createElement('span');label.textContent=p.label;row.append(bar,label);return row;}));}function plot(id,series,xr,yr,opts={}){const e=$('#'+id),X=x=>42+(x-xr[0])/(xr[1]-xr[0])*298,Y=y=>175-(y-yr[0])/(yr[1]-yr[0])*148;let out='<defs><clipPath id=\"clip-'+id+'\"><rect x=\"42\" y=\"27\" width=\"298\" height=\"148\"/></clipPath></defs>';for(let i=0;i<3;i++){let x=xr[0]+i*(xr[1]-xr[0])/2,y=yr[0]+i*(yr[1]-yr[0])/2;out+='<path class=\"gridline\" d=\"M '+X(x)+' 27V175M42 '+Y(y)+'H340\"/><text x=\"'+X(x)+'\" y=\"194\" text-anchor=\"middle\">'+esc(opts.xfmt?opts.xfmt(x):Number(x.toFixed(2)))+'</text><text x=\"36\" y=\"'+(Y(y)+4)+'\" text-anchor=\"end\">'+esc(opts.yfmt?opts.yfmt(y):Number(y.toFixed(2)))+'</text>';}out+='<g clip-path=\"url(#clip-'+id+')\">';for(const s of series){out+='<path fill=\"none\" stroke=\"'+(s.color||'var(--accent)')+'\" stroke-width=\"2.5\" '+(s.dash?'stroke-dasharray=\"5 4\"':'')+' d=\"'+s.pts.map((p,i)=>(i?'L':'M')+X(p[0]).toFixed(2)+','+Y(p[1]).toFixed(2)).join(' ')+'\"/>';}for(const p of opts.points||[])out+='<circle cx=\"'+X(p[0])+'\" cy=\"'+Y(p[1])+'\" r=\"4\" fill=\"var(--second)\" stroke=\"var(--paper)\" stroke-width=\"1.5\"/>';if(opts.cursor!==undefined)out+='<path d=\"M'+X(opts.cursor)+' 27V175\" stroke=\"var(--muted)\" stroke-dasharray=\"3 3\"/>';e.innerHTML=out+'</g>';e.dataset.curves=JSON.stringify(series.map(s=>s.pts));}const curve=(fn,lo,hi,n=120)=>Array.from({length:n+1},(_,i)=>{const x=lo+(hi-lo)*i/n;return[x,fn(x)]});function inputs(draw){document.querySelectorAll('input,select').forEach(e=>{e.addEventListener('input',draw);e.addEventListener('change',draw)});draw()}const n=id=>+$('#'+id).value;const show=(id,v,d=3)=>set(id,Number(v.toFixed(d)));function draw(){let c=n('c')*1e-9,l=n('l')*1e-9,logf=n('f'),f=10**logf,w=2*Math.PI*f,x=w*l-1/(w*c),z=Math.hypot(.03,x),res=1/(2*Math.PI*Math.sqrt(l*c));['c','l','f'].forEach(k=>show(k+'-value',n(k)));const y=lf=>{let w=2*Math.PI*10**lf;return Math.log10(Math.hypot(.03,w*l-1/(w*c)))};plot('plot',[{pts:curve(y,4,9,240)}],[4,9],[-2,4],{cursor:logf,points:[[logf,y(logf)]]});show('res',res/1e6);show('z',z,4);show('phase',Math.atan2(x,.03)*180/Math.PI,1);set('eq','f = '+(f/1e6).toFixed(4)+' MHz\\nXL = '+(w*l).toFixed(4)+' Ω; XC = '+(1/(w*c)).toFixed(4)+' Ω\\nZ = 0.03 + j('+x.toFixed(4)+') Ω');}inputs(draw);","audio":false,"strings":{"c":"容量(nF)","f":"観測周波数 log₁₀(Hz)","heading":"コンデンサのインピーダンスはなぜ再び上がる?","intro":"C と ESL を変え、対数周波数軸上の谷の移動を見る。","l":"ESL(nH)","phase":"位相(°)","plot":"横軸 log₁₀(Hz)、縦軸 log₁₀(Ω)","res":"共振周波数(MHz)","reset":"リセット","scope":"ESR=30 mΩ、C と ESL は定数。実部品の周波数依存や基板の並列回路は省略。","scopeLabel":"モデルの範囲と前提","z":"インピーダンス絶対値(Ω)"}}
有効容量に基づく選定
タイプ 一般的な利点 個別に確認すべき条件
C0G/NP0 セラミック 温度と電圧依存性が良く、精密な小容量用途に適している 容量、パッケージ、周波数、および実際の利用可能な型番
高誘電率 MLCC(X5R/X7R など) 体積あたりの容量が高く、デカップリングに広く使用される DCバイアス、温度、経年劣化、機械的応力
アルミ電解 大容量およびエネルギー保存用途に適している 極性、漏れ電流、リップル電流、温度と寿命
ポリマーコンデンサ 一部のシリーズでは低い ESR を実現 定格電圧、漏れ電流、サージおよび故障条件
タンタルコンデンサ 体積と容量の組み合わせに特定の利点がある 極性、サージおよび型番の要件。精密用途と同等には扱えない
フィルム 一部のシリーズでは低損失、パルスまたは安定性の要件に適している 体積、構造、定格波形および周波数制限
タイプ名だけで具体的な曲線を代替することはできません。X7R は対応する温度分類を示し、通常、−55°C から +125°C の範囲で規定されたテスト条件下で容量変化が ±15% 以内であることを意味します。これは、直流バイアス、経年劣化、および初期許容差が重畳された後でも、公称値の ±15% 内に収まることを保証するものではありません。Murata:コンデンサの基本特性
高誘電率 MLCC は、直流バイアス下で有効容量が大幅に低下する可能性があります。低下の幅は、誘電体、サイズ、定格電圧、および特定の型番によって異なります。「動作電圧が耐圧以下であれば容量が落ちない」と想定することはできず、すべての X7R に一律の固定割引率を適用することもできません。Murata:MLCC の電圧、温度、および経年劣化に関する注意事項
例えば、設計で動作点において少なくとも 10 μF が必要であり、ある候補品が所定のバイアス下で公称容量の 60% しか残っておらず、初期の負の許容差が −20% であるとします。この2つの単純化された要素を組み合わせた場合のみでも、公称値は少なくとも 10/(0.6×0.8) ≈ 20.83 μF 必要となります。これは温度やその他の影響を考慮していません。これは予算策定手法の仮定を示すものであり、すべてのデバイスに 60% の係数を規定するものではありません。実際には、動作条件をカバーするメーカーのモデルやデータを優先して使用し、同じ影響を重複して減額しないようにしてください。
耐圧も一律に「1.5 倍を選べばよい」わけではありません。最大直流電圧、電圧リップル、起動/故障過渡現象、およびデバイスの定格条件を比較し、タイプおよびアプリケーションのルールに従って余裕度を決定する必要があります。交流や安全規格用途には、対応する定格および認証要件があり、通常の直流耐圧値だけで代替することはできません。
ローパス、結合、デカップリングは同じ接続ではない
ローパス:コンデンサ両端から取り出す ハイパス:抵抗両端から取り出す R C Vin Vout C R Vin Vout 基準ノード 基準ノード 「フィルタリング」は接続場所による:基準ノードへの並列接続と信号パスへの直 列接続は異なる これらの一次式は、理想の入力ソースと無視できる追加の出力負荷を仮定しています。実際のインターフェースでは、両側 のインピーダンスを考慮する必要があります。
RC ローパスの出力は並列コンデンサから取り出す
理想の入力ソースが直列 R を介して出力に接続され、出力 C が基準ノードに接続されている場合、追加の負荷を無視すると H(jω) = 1/(1+jωRC)、遮断周波数 f_c = 1/(2πRC) となります。f_c において、振幅は低周波利得の 1/√2 倍、約 −3 dB となり、この周波数からすべての信号が遮断されるわけではありません。
もし出力に負荷 R_L が接続されると、直流利得はまず R_L/(R+R_L) になり、極は (R∥R_L)C によって決まります。図と数式はセットで使用する必要があり、直列コンデンサを描いて電源平滑化用のローパスと呼ぶことはできません。
結合コンデンサには直流ループが必要
直列 C を接続した後、受信側は抵抗を介して必要なバイアスポイントに戻り、ハイパスを形成します。最も単純な理想ソースと接地負荷 R のモデルでは、H(jω) = jωRC/(1+jωRC) となります。受信側は、正しい直流バイアスを空中から得るわけではありません。適切なループがない場合、電位は浮遊するか、漏れ電流や保護構造によって決定されます。
実際のソースに出力抵抗 R_s がある場合、コンデンサが見る抵抗と通過帯域の利得が変化します。起動時のバイアス確立は過渡現象を形成する可能性があり、「直流を遮断する」ことを、接続されている瞬間に電流が流れないことと理解してはいけません。
デカップリングは過渡電流に対する短いループを提供する
電源デカップリングコンデンサは通常、電源とリターンノード間に跨って配置され、上流の給電が一時的に追いつかない場合に局部電圧を維持するのに役立ちます。負荷電流の変化が速いほど、パスインダクタンスの L·di/dt の影響が大きくなります。したがって、関連する電源/リターンピンに近づけ、実際の電流ループを縮小することは、単なるレイアウトの美しさではなく、明確な電気的な意味を持ちます。
容量は一定時間内に補給できる電荷量を決定し、ESR は電流変化に伴う急速な電圧降下を決定し、ESL および実装インダクタンスはより急速なエッジに影響を与えます。これらは異なる時間スケールに対応しており、単に μF を増やしても、最も急速なピークを必ずしも低減できるわけではありません。
負荷ステップの例:まず電圧予算を配分する
電源が短時間中に供給電流を増やしていないと仮定し、コンデンサが 100 mA を 10 μs にわたって補給する必要があり、コンデンサ自身の放電による電圧変化が 50 mV 以内であるとします。ΔQ = IΔt、ΔV = ΔQ/C に従い、最低有効容量は 20 μF です。
有効容量が 10 μF しかない場合、この部分の電圧変化は約 100 mV になります。ESR が 50 mΩ と仮定すると、100 mA のステップにより約 5 mV の ESR 電圧降下が発生します。総電圧降下予算 50 mV のうち、まず ESR に 5 mV を割り当て、残りの 45 mV に対応する必要な有効容量は約 22.22 μF となります。実際の電源は電流を徐々に引き受けるため、「電源が全く応答しない」と一直線に仮定するのではなく、「負荷電流からソース供給電流を引いたもの」を積分する必要があります。
同様に、1 nH のループインダクタンスで 100 mA が 10 ns 内で変化する場合、L·di/dt は約 10 mV になります。これらの推定は制限要因を識別するために使用され、各項のピークが必ずしも同時に加算されることを保証するものではありません。実際の波形は、完全なネットワークモデルまたは適切な測定によって検証する必要があります。
from math import pi , sqrt , isclose
current , duration , budget = . 1 , 10e-6 , . 05
cap_min = current * duration / budget
assert isclose ( cap_min , 20e-6 )
esr = . 05
esr_drop = current * esr
cap_with_esr = current * duration / ( budget - esr_drop )
assert isclose ( cap_with_esr , 22. 22222222222222e-6 )
f0 = 1 / ( 2 * pi * sqrt ( 1e-9 * 100e-9 ) )
assert 15. 9e6 < f0 < 16e6
print ( f " 最低有効容量 { cap_min * 1e6 :.2f } μF;ESR 分を预留後 { cap_with_esr * 1e6 :.2f } μF" )
print ( f " 簡化モデル自己共鳴 { f0 / 1e6 :.3f } MHz" )
容量の選択からシステム検証へ
リップル電流が ESR を通ると熱損失が発生します。単一周波数で ESR がほぼ固定できる場合は I_rms²·ESR を使用できますが、広帯域波形では異なる周波数での損失を考慮する必要があります。電解系デバイスでは、特に容量が十分かどうかだけでなく、リップル定格、温度、および寿命モデルと組み合わせる必要があります。
低い ESR は通常、電圧降下と損失を低減するのに役立ちますが、安定化回路が任意の低い ESR の出力コンデンサを歓迎するわけではありません。一部の制御ループでは特定の容量と ESR 範囲が必要であり、他のものは低い ESR のセラミック用に設計されています。使用している安定化回路の安定性要件に対照する必要があります。TI:ESR と LDO の安定性
最終確認項目 回答できる質問
動作点での容量および許容差 電荷予算が本当に満たされているか
ESR、インピーダンス、実装パス どの周波数帯域と時間スケールで依然として電圧降下が発生するか
最大電圧、極性、リップル 対応するデバイスの使用条件内か
安定化回路の容量/ESR 要件 出力ネットワークが制御ループと互換性があるか
レイアウトと負荷ステップ測定 実際のループがモデルの期待どおり実現されているか
単位換算:1 μF = 1000 nF = 10⁶ pF;一般的な3桁のマーキング 104 は通常 pF でエンコードされており、10×10⁴ pF = 100 nF です。極性と専用マーキングについては、デバイスの資料を基準としてください。次の記事 インダクタとトランス では、磁界エネルギー保存から過渡現象、電源変換、および結合をさらに説明します。