抵抗分圧の誤差:許容差と負荷で、設計値からどれだけずれるか
R1 と R2 で分圧すれば電圧は R2/(R1+R2) 倍になる、というのは計算上の話です。実物は許容差、後段の入力抵抗、温度、ADC のサンプリング容量で数 % ずれるので、ADC の分解能より大きな誤差を分圧で作っていないか確認します。
±1% の抵抗 2 本で、分圧比は最悪 ±2%
分圧比 R2 ÷ (R1 + R2) の誤差は、R1 と R2 が逆方向にずれたときに最大になります(R1 が +1%、R2 が −1% なら分圧比は下がります)。
R1 = R2(1/2 分圧)では 0.99 ÷ (1.01 + 0.99) = 0.495 で、設計値 0.5 に対して −1%。R1 = 9·R2(1/10 分圧)では 0.99 ÷ (9.09 + 0.99) = 0.0982 で −1.8% です。分圧比が小さいほど、誤差は ±2% に近づきます。式では、相対誤差 ≒ ±(R1 の許容差 + R2 の許容差)× R1 ÷ (R1 + R2) です。
12 ビット ADC の 1LSB はフルスケールの 0.024% なので、誤差 2% は 82LSB です。
対策は、許容差 0.1% の抵抗(分圧比 ±0.2%)、製造時の校正、しきい値判定のように絶対精度が要らない設計です。
| 抵抗の許容差 | 分圧比の最悪誤差 | 12 ビット ADC での LSB 換算 |
|---|---|---|
| ±5% | ±9.0% | ±370LSB |
| ±1% | ±1.8% | ±74LSB |
| ±0.5% | ±0.9% | ±37LSB |
| ±0.1% | ±0.18% | ±7LSB |
後段の入力抵抗が、R2 に並列に入る
分圧の出力につないだものの入力抵抗 RL は、R2 に並列に入って分圧比を下げます。R1 = R2 = 100kΩ に RL = 1MΩ をつなぐと、R2 ∥ RL = 90.9kΩ、分圧比は 90.9 ÷ 190.9 = 0.476 で −4.8% です。
誤差を 0.1% 以下にするには RL を R2 の 1000 倍以上にします。R2 = 100kΩ なら RL = 100MΩ で、オペアンプのバッファを入れる領域です。
SAR 型 ADC は、サンプリング時にコンデンサ(数 pF〜数十 pF)を分圧の出力につなぎます。R1 ∥ R2 が高いとサンプリング時間内に充電しきれず、低めの値が読めます。データシートの入力インピーダンスの上限に合わせて R1 ∥ R2 を下げるか、出力に 10〜100nF のコンデンサを置きます。ただし時定数が大きいと、入力電圧の変化に追従しなくなります。
消費電力と電圧定格:高い電圧を分圧するとき
48V を 1/10 に分圧して 4.8V にする場合、R1 = 90kΩ、R2 = 10kΩ なら電流は 0.48mA、R1 の消費電力は 21mW で問題ありません。R1 = 9kΩ、R2 = 1kΩ では電流 4.8mA、消費電力 207mW で、1608(0603)の定格 100mW を超え、3216(1206、250mW)でもディレーティングを考えると足りません。
電圧定格も見落としがちです。チップ抵抗の最大使用電圧は、1005 で 50V、1608 で 75V、2012 で 150V、3216 で 200V が一般的で、両端電圧が定格を超えると、抵抗値に関わらず使えません。100V を分圧する R1 に 1608 を使うと、90V がかかって超えます。
高電圧の分圧では R1 を 2〜3 本直列にするのが定石です。電圧定格と消費電力を分散でき、1 本が短絡故障しても出力電圧の跳ね上がりを抑えられます。
温度係数は「比」で効く
チップ抵抗の温度係数は ±100〜200ppm/℃ で、50℃ の変化で最大 ±1% 変わります。ただし分圧比に効くのは R1 と R2 の差で、同じシリーズ・同じ材質ならあまり変わりません。問題になるのは、R1 と R2 の種類が違うとき(厚膜と薄膜、サイズ違い)と、R1 だけが自己発熱するときです。0.1% 抵抗なら、±25ppm/℃ 以下の薄膜抵抗を R1・R2 で揃えます。
R1 と R2 が 1 パッケージの抵抗ネットワーク(比の精度 ±0.05%、温度係数の差 ±5ppm/℃ など)なら、比の精度が単体の 0.1% 抵抗より高く、温度も同じです。
高抵抗にしたときのノイズと漏れ
R1 = 1MΩ、R2 = 100kΩ のような高抵抗にすると、消費電力は下がりますが別の問題が出ます。熱雑音は 100kΩ で 40nV/√Hz、帯域 10kHz で 4µVrms で、12 ビット ADC の 1LSB(3.3V フルスケールで 0.8mV)には小さいものの、16 ビット(50µV)では効き始めます。基板の漏れ電流もあります。フラックス残渣や湿気で絶縁抵抗が下がると R2 に数十 MΩ〜数百 MΩ が並列に入り、R2 = 100kΩ に 100MΩ なら 0.1% の誤差です。
後段の入力バイアス電流も効きます。バイポーラ入力のオペアンプや 1µA 程度の ADC 入力リーク電流があると、R1 ∥ R2 = 90kΩ で 90mV の誤差です(CMOS 入力の数 pA なら無視できます)。高インピーダンスのノードは外来ノイズも拾うので、配線を短くします。
分圧の電流は 10µA〜1mA に収めるとバランスが取れます。3.3V なら合計 3.3kΩ〜330kΩ です。
よくある質問
分圧比を正確にするなら、抵抗は何 % のものを使えばよいですか。
分圧の出力をそのままマイコンの ADC につないでよいですか。
48V を分圧する R1 に 1608 の抵抗を使ってよいですか。
抵抗を高くすると省電力になりますが、上限はありますか。
参考にした規格・資料
- IEC 60115-8 — チップ抵抗の定格電力・最大使用電圧・温度係数の規定
- 各マイコンメーカのデータシート/リファレンスマニュアル — ADC の入力インピーダンスとサンプリング時間の関係、入力リーク電流
- Analog Devices, MT-004: The Good, the Bad, and the Ugly Aspects of ADC Input Noise — ADC 前段のノイズと分解能の関係