기준전압 — 정확도의 상한
한 줄 요약 — ADC 가 재는 것은 전압이 아니라 기준전압에 대한 비율입니다. 기준이 0.5 % 틀리면 12비트 ADC 를 써도 8비트만큼도 못 믿습니다.
왜 여기가 상한인가
ADC 의 출력은 이렇게 나옵니다.
N개수countV_in입력 전압input voltageVV_ref기준 전압reference voltageV전압을 재는 것이 아니라 비율을 셉니다. 그래서 가 흔들리면 입력이 가만히 있어도 코드가 움직입니다.
Delta V전압 변화량voltage changeVV_ref기준 전압reference voltageV이 자료가 분해능분해능 resolutionADC 가 구분할 수 있는 가장 작은 전압 차이로, 비트 수와 기준전압으로 정해집니다.자세히 보기 →과 잡음열잡음 thermal noise모든 저항이 온도 때문에 내는 피할 수 없는 잡음으로, 측정의 바닥을 정합니다.자세히 보기 →을 그렇게 따져 온 이유는, 그것들이 아래에서 정확도를 갉아먹기 때문입니다. 기준전압은 위에서 자릅니다 — 아무리 조용한 회로를 만들어도 기준보다 정확해질 수는 없습니다.
| 오차 | 실질 비트 수 | 12비트 ADC 에서 |
|---|---|---|
| 0.02 % (200 ppm) | 12.3 | 다 씀 |
| 0.1 % (1000 ppm) | 10.0 | 2비트 손해 |
| 0.5 % (5000 ppm) | 7.6 | 4비트 넘게 손해 |
| 1 % | 6.6 | 12비트를 살 이유가 없음 |
💡 MCU 내장 기준(V_DD) 이 대개 이 마지막 줄입니다. 3.3 V 레귤레이터의 초기 오차가 ±1~2 % 이고 부하에 따라 더 움직입니다.
무엇이 기준을 흔드나
기준전압 하나에 오차가 넷 있습니다. 데이터시트가 따로따로 적어 두는 이유는 각각 다른 방식으로 대응해야 하기 때문입니다.
| 오차 | 전형값 | 언제 나타나나 | 교정으로 지울 수 있나 |
|---|---|---|---|
| 초기 오차 | ±0.05 ~ ±0.5 % | 사자마자 | ✅ 한 번 재서 빼면 끝 |
| 온도계수 | 3 ~ 100 ppm/°C | 온도가 바뀔 때 | △ 온도를 같이 재야 함 |
| 장기 드리프트 | 20 ~ 100 ppm/√khr | 몇 달~몇 년 | ❌ 주기적 재교정뿐 |
| 잡음 | 1 ~ 30 µV p-p (0.1~10 Hz) | 늘 | ❌ 대역을 좁히는 것뿐 |
ppm/°C 를 실제 오차로
Delta V전압 변화량voltage changeVT온도 또는 주기temperature or periodV전압voltageV25 ppm/°C 부품을 0 ~ 50 °C 에서 쓰면 (기준 온도 25 °C 에서 ±25 °C):
5 V 기준이면 3.1 mV. 12비트 ADC 의 1 LSB 가 1.22 mV 이므로 2.5 LSB 가 온도로만 날아갑니다.
⚠️ 데이터시트의 ppm/°C 는 대개 박스 방식(전 온도 범위의 최대·최소를 범위로 나눈 것)입니다. 어느 한 온도에서의 기울기가 아니라 최악값이라, 실제로는 이보다 나은 경우가 많습니다. 그래도 설계는 최악값으로 합니다.
장기 드리프트의 √ 단위
ppm/√khr 는 1000시간의 제곱근당 ppm 입니다. 시간이 지날수록 느려집니다.
| 경과 | √khr | 50 ppm/√khr 부품의 누적 |
|---|---|---|
| 1000 시간 (6주) | 1 | 50 ppm |
| 1만 시간 (1년) | 3.16 | 158 ppm |
| 10만 시간 (11년) | 10 | 500 ppm |
첫 6주에 가장 많이 움직입니다. 그래서 정밀 장비는 번인(burn-in) 을 거친 뒤 교정합니다.
두 갈래 — 밴드갭과 매몰 제너
밴드갭 (bandgap)
원리: 실리콘의 밴드갭 전압(≈1.22 V)은 온도에 거의 안 변합니다. 그걸 만들어 내는 것이 밴드갭 회로입니다.
두 개를 더합니다.
n비트 수 또는 개수number of bits or countV_BE베이스–이미터 전압base-emitter voltageVV_ref기준 전압reference voltageVV_T열전압 (≈26 mV)thermal voltageV는 온도가 오르면 내려갑니다 (5-06). 두 트랜지스터의 차이는 에 비례해 올라갑니다. 계수 를 맞춰 더하면 서로 상쇄됩니다.
- 장점: 낮은 전압(1.2 V 부터)에서 동작, 저전력, 싸다
- 단점: 잡음이 상대적으로 큼, 장기 드리프트가 큼
매몰 제너 (buried zener)
원리: 제너 항복을 칩 표면이 아니라 속에서 일으킵니다.
표면에는 결함과 오염이 많아 1/f 잡음1/f 잡음 flicker noise주파수가 낮을수록 커지는 잡음으로, DC 근처를 재는 측정에서는 이것이 지배합니다.자세히 보기 →과 드리프트의 원인이 됩니다. 접합을 표면에서 떼어 놓으면 그게 크게 줍니다.
- 장점: 잡음이 낮고 장기 드리프트가 10배 좋음
- 단점: 7 V 근처가 필요해 최소 전원이 높다(보통 12 V 이상), 전류를 많이 먹음, 비쌈
| 밴드갭 | 매몰 제너 | |
|---|---|---|
| 최소 전원 | 1.8 V | 12 V |
| 소비 전류 | 50 µA ~ 1 mA | 1 ~ 5 mA |
| 온도계수 | 3 ~ 50 ppm/°C | 0.5 ~ 5 ppm/°C |
| 잡음 (0.1~10 Hz) | 10 ~ 30 µV | 1 ~ 3 µV |
| 장기 드리프트 | 50 ~ 100 ppm/√khr | 6 ~ 20 ppm/√khr |
| 값 | 싸다 | 5~20배 |
전지로 도는 것은 밴드갭밖에 못 씁니다. 매몰 제너는 전원이 높아야 하고 전류를 많이 먹습니다.
⚖️ 트레이드오프
1. 정확도 vs 값
| 등급 | 초기 오차 | TC | 값 | 언제 |
|---|---|---|---|---|
| MCU 내장 (V_DD) | ±2 % | 100+ | 0원 | 비율 측정만 |
| 보급형 (LM4040) | ±0.5 % | 100 | 300원 | 대략 재도 되는 것 |
| 중급 (REF3025) | ±0.2 % | 30 | 1500원 | 12비트 대부분 |
| 정밀 (ADR4525) | ±0.02 % | 2 | 6000원 | 16비트 이상 |
| 매몰 제너 (LTZ1000) | 교정 필요 | 0.05 | 5만원+ | 계측 표준기 |
ADC 값보다 기준전압이 비싼 것이 흔합니다. 그게 자연스럽습니다 — 정확도의 상한을 정하는 쪽이니까요.
2. 잡음 vs 전류
기준전압의 잡음은 대개 출력 커패시터로 줄입니다. 그런데 그러면 켜지는 시간이 늘어납니다.
C정전용량capacitanceFR_out출력 저항output resistanceΩt_settle정착 시간settling times10 µF 를 달면 잡음은 좋아지지만, 간헐 동작(low-power 모드에서 깨어나 재고 다시 자는) 설계에서는 매번 그만큼 기다려야 합니다. 그 대기 시간에 쓰는 전력이 절약분보다 클 수도 있습니다.
3. 비율 측정이면 기준이 필요 없습니다
★ 여기가 이 문서에서 가장 값어치 있는 부분입니다.
휘트스톤 브리지나 분압식 센서분압 voltage divider직렬로 이은 두 저항은 입력 전압을 저항비대로 나눠 갖습니다.자세히 보기 →를 ADC 와 같은 기준으로 여자(excite) 하면, 기준이 흔들려도 비율은 그대로입니다.
기준이 1 % 움직여도 브리지 출력과 ADC 기준이 함께 움직여 코드는 안 바뀝니다. 이것을 ratiometric 측정이라고 합니다.
공짜로 정확도를 얻습니다. 브리지·포텐쇼미터·서미스터 분압처럼 여자 전압에 비례하는 센서라면 반드시 이렇게 하세요.
안 되는 경우: 열전대(자기 기전력), 전류 출력 센서(4~20 mA), 절대 전압을 재야 하는 경우.
🔌 실제 쓰임새
기준전압을 고르는 순서
- 비율 측정으로 바꿀 수 있는가? → 되면 여기서 끝. 기준 정확도가 안 중요해집니다.
- 필요한 유효 비트가 몇인가? → 총 오차 예산을 아래로.
- 온도 범위는? → TC × ΔT 를 계산해 예산에 넣습니다.
- 교정을 할 수 있는가? → 되면 초기 오차는 무시하고 TC 와 드리프트만 봅니다.
- 전원과 전류가 되는가? → 매몰 제너는 12 V 와 몇 mA 가 필요합니다.
배선
기준전압은 ADC 의 기준 핀까지 따로 갑니다.
- ADC 의 REF 핀은 변환 순간 수 mA 를 순간적으로 당깁니다 (내부 커패시터를 충전). 배선 저항이 있으면 그만큼 기준이 처집니다.
- 그래서 REF 핀 바로 옆에 0.1 µF + 1~10 µF 를 둡니다 (8-04).
- 기준의 접지는 ADC 의 아날로그 접지에 한 점에서 만납니다 (12-03).
켜자마자 재면 안 됩니다
| 항목 | 시간 |
|---|---|
| 기준 자체 기동 | 50 µs ~ 10 ms |
| 출력 커패시터 충전 | |
| 열 평형 | 수 분 |
전원을 넣자마자 재면 자기 발열로 값이 움직이는 중입니다. 정밀 측정은 워밍업을 기다립니다.
⚠️ 이상과 실제의 차이
| 이상 | 실제 | 왜 |
|---|---|---|
| 기준은 고정된 전압 | 초기 오차 + TC + 드리프트 + 잡음 | 네 가지가 따로 논다 |
| 데이터시트 TC 가 기울기 | 박스 방식 최악값 | 전 범위 최대-최소를 범위로 나눔 |
| 부하가 늘어도 그대로 | 부하 조정률 ×수십 ppm/mA | 출력 임피던스가 0 이 아님 |
| 전원이 흔들려도 그대로 | 라인 조정률 ×수십 ppm/V | PSRR 이 무한이 아님 |
| 켜면 바로 정확 | 수 분의 워밍업 | 자기 발열 |
| 기판에 붙여도 같은 값 | 납땜 후 수백 ppm 이동 | 패키지 스트레스 |
| MCU 내장 기준이면 충분 | ±2 %, 부하에 따라 흔들림 | V_DD 는 기준이 아니라 전원 |
⚠️ 패키지 스트레스 — 납땜의 열과 기판 휨이 칩에 응력을 줘 값이 수백 ppm 움직입니다. 교정은 반드시 조립 후에 하세요. 부품 단품으로 교정한 값은 붙이는 순간 틀립니다.
⚠️ MCU 의 V_DD 를 기준으로 쓰면, USB 전원의 전압 변동(4.75~5.25 V)이 그대로 측정값에 들어갑니다. 같은 신호를 다른 날 재면 다른 값이 나옵니다.
시뮬레이션으로 확인
# examples/13-signal-chain/reference-loading.yaml
meta:
name: 기준전압의 부하 조정률
lesson: docs/13-signal-chain/08-voltage-reference.md
note: |
ADC 의 REF 핀은 변환 순간 전류를 당깁니다. 기준의 출력 임피던스와
배선 저항이 있으면 그만큼 기준이 처지고, 그 처짐이 곧 측정 오차입니다.
RREF 를 밀어 보세요 — 출력 임피던스가 커질수록 부하 전류에 따른
처짐이 커집니다. 0.5 Ω 은 흔한 값이고, 1 mA 를 당기면 0.5 mV,
2.5 V 기준에서 200 ppm 입니다. 12비트 1 LSB(0.61 mV) 와 같은 크기입니다.
components:
- {ref: VREF, type: vdc, value: 2.5, label: 이상적인 기준}
- {ref: RREF, type: r, value: 0.5, label: 출력 임피던스 + 배선, sweep: {min: 10m, max: 50}}
- {ref: ILOAD, type: idc, value: 1m, label: ADC 가 당기는 전류}
- {ref: RIN, type: r, value: 10MEG, label: 누설}
nets:
RAW: [VREF.p, RREF.1]
REF: [RREF.2, ILOAD.n, RIN.1]
GND: [VREF.n, ILOAD.p, RIN.2]
analyses:
- {type: op}
expect:
# 2.5 V − 1 mA × 0.5 Ω = 2.4995 V. 200 ppm 처짐.
- {measure: v, node: REF, value: 2.4995, tol: 0.1%}돌려 보면 REF 가 2.4995 V — 0.5 mV 처졌습니다. 2.5 V 기준에서 200 ppm 이고, 이는 12비트 ADC 의 1 LSB 에 육박합니다. 기준 자체가 아무리 좋아도 배선에서 잃습니다.
RREF 를 밀어 보면 왜 REF 핀 바로 옆에 커패시터를 두라고 하는지 보입니다 — 커패시터가 순간 전류를 대신 대 주어 배선 저항을 안 지나게 합니다.
연습문제
문제 1. 3.3 V MCU 의 내장 ADC(12비트)로 0~3 V 센서를 읽습니다. V_DD 를 기준으로 쓰면 유효 비트는 몇인가? (V_DD 정확도 ±2 %)
풀이
±2 % 는 전체 스케일의 1/50 입니다.
N개수count12비트 ADC 를 쓰고 5.6비트를 얻습니다.
다만 이것은 절대 정확도입니다. 구분은 여전히 12비트로 됩니다 — 같은 순간의 두 측정값 차이는 정확합니다. 그래서
- “지금 값이 몇 V 인가” → 5.6비트
- “아까보다 얼마나 늘었나” → 12비트 (기준이 그 사이에 안 변했다면)
대책: 외부 기준(REF3025, ±0.2 %)을 쓰면 비트. 여기에 한 번 교정하면 초기 오차가 지워져 TC 만 남아 11비트 이상이 됩니다.
문제 2. 25 ppm/°C 기준을 −40 ~ +85 °C 산업 범위에서 씁니다. 16비트 ADC 의 몇 LSB 가 온도로 날아가는가? (기준 5 V, 25 °C 교정)
exercises/13-08-ref-tempco.yaml풀이
최악 편차는 교정점에서 가장 먼 −40 °C 입니다.
T온도 또는 주기temperature or periodDelta V전압 변화량voltage changeVV전압voltageVDelta V전압 변화량voltage changeVV전압voltageV16비트 1 LSB:
mu이동도mobilitym²/V·smu이동도mobilitym²/V·s16비트를 쓰는데 하위 7비트가 온도로 날아갑니다 (). 실질 9비트입니다.
대책 셋:
| 방법 | 얻는 것 | 잃는 것 |
|---|---|---|
| 2 ppm/°C 로 교체 (ADR4525) | 8.5 LSB 로 개선 | 값 4배 |
| 온도를 같이 재서 보정 | 실측 TC 곡선만큼 | 교정 공정, 메모리 |
| ★ 비율 측정으로 전환 | TC 가 약분됨 | 센서가 여자형이라야 함 |
세 번째가 가능하면 그게 답입니다. 브리지 센서라면 10 브리지·RTD 를 보세요.
문제 3. 데이터시트에 초기 오차 ±0.05 %, TC 3 ppm/°C, 장기 드리프트 20 ppm/√khr, 잡음 1.5 µV p-p (0.1~10 Hz) 라고 적힌 5 V 기준이 있습니다. 1년 뒤, 20~30 °C 에서 총 오차 예산은?
exercises/13-08-error-budget.yaml풀이
각 항을 ppm 으로 맞춥니다.
| 항 | 계산 | ppm |
|---|---|---|
| 초기 오차 | 0.05 % | 500 |
| 온도 (±5 °C) | 3 × 5 | 15 |
| 장기 (1년 = 8.76 khr) | 59 | |
| 잡음 | 1.5 µV / 5 V | 0.3 |
교정을 안 하면:
초기 오차가 압도적이라 RSS입력환산잡음 input-referred noise회로 곳곳의 잡음을 입력단 하나로 몰아 표현한 값으로, 신호와 직접 견줄 수 있어 판정에 씁니다.자세히 보기 → 로 합쳐도 거의 그대로입니다.
★ 교정을 하면 (조립 후 한 번):
초기 오차가 지워집니다.
8배 좋아집니다. 그리고 남은 것의 대부분(59)은 장기 드리프트이므로, 더 좋게 하려면 재교정 주기를 줄여야 합니다 — 부품을 바꾸는 게 아니라.
여기서 배울 것: 교정 전에는 초기 오차가, 교정 후에는 드리프트가 지배합니다. 비싼 부품을 사기 전에 교정을 할 수 있는지 먼저 보세요 (09 교정).
이전 ← 07 락인 검출 개요 | 다음 → 09 교정 — 무엇을 지울 수 있고 무엇을 못 지우나