177. Источники опорного напряжения: делитель, стабилитрон, ИОН, дрейф и шум
Всё, что измеряет АЦП, он измеряет относительно опоры: код равен
U · 4096 / Uоп. Значит, ошибка опоры целиком переходит в результат — и
никакая калибровка усиления тракта её не уберёт, если опора уплывает.
Здесь — чем отличаются три способа получить 2,5 В и что означают строки
документации на источник опорного напряжения.
Числа ниже — модель ngspice: делитель 10 кОм / 10 кОм, стабилитрон 2,5 В через 2,2 кОм и источник опорного напряжения (ИОН) с выходным сопротивлением 0,1 Ом, подавлением ухода питания 80 дБ и дрейфом 20 ppm/°C.
Как это называется в документации
Оригинал Перевод voltage reference источник опорного напряжения initial accuracy начальная погрешность temperature drift / tempco (ppm/°C) температурный дрейф line regulation уход от изменения питания load regulation уход от изменения нагрузки dropout voltage минимальный запас по входу output noise (0,1…10 Hz) шум выхода в полосе 0,1…10 Гц long-term drift долговременный уход series / shunt reference последовательный / параллельный ИОН bandgap reference опора на запрещённой зоне
177.1 Три способа получить 2,5 В
Питание 5 В, нужна опора 2,5 В. При 25 °C и без нагрузки все три дают почти одно и то же: делитель 2,500 В, стабилитрон 2,513 В, ИОН 2,500 В. Разница появляется, как только меняется хоть что-то.
Питание меняется от 4,5 до 5,5 В:
| Опора | 4,5 В | 5,5 В | Уход на 1 В питания |
|---|---|---|---|
| делитель 10 / 10 кОм | 2,250 В | 2,750 В | 500 мВ |
| стабилитрон через 2,2 кОм | 2,504 В | 2,520 В | 16,0 мВ |
| ИОН | 2,500 В | 2,500 В | 0,10 мВ |
Делитель повторяет питание один к одному — это вообще не опора, а масштабированное питание. Стабилитрон подавляет уход в 31 раз, ИОН — в 5000 раз.
177.2 Нагрузка
Опора на входе VREF+ микроконтроллера — это не «ничего»: вход берёт ток, особенно во время преобразования. Модель, питание 5 В:
| Опора | ток 50 мкА | ток 500 мкА |
|---|---|---|
| делитель | 2,250 В (−250 мВ) | 0 В — схлопнулся |
| стабилитрон | 2,511 В (−1,8 мВ) | 2,491 В (−21,5 мВ) |
| ИОН | 2,500 В | 2,500 В (−0,05 мВ) |
Делитель 10 кОм имеет выходное сопротивление 5 кОм: 50 микроампер уводят его на четверть вольта, а 500 мкА он просто не может отдать — через верхний резистор столько не проходит. Стабилитрон отдаёт ток, но платит уходом: его динамическое сопротивление в модели — десятки ом. У ИОН выходное сопротивление 0,1 Ом, и 500 мкА меняют выход на 50 микровольт.
177.3 Температура
Нагрев с 25 до 85 °C:
| Опора | 25 °C | 85 °C | Уход | В кодах 12-разрядного АЦП |
|---|---|---|---|---|
| делитель (идеальные резисторы) | 2,500 В | 2,500 В | 0 | 0 |
| стабилитрон 2,5 В | 2,513 В | 2,396 В | −117 мВ | 192 |
| ИОН, 20 ppm/°C | 2,500 В | 2,503 В | +3,0 мВ | 4,9 |
У низковольтных стабилитронов температурный коэффициент отрицательный и велик — в модели заданы типичные −2 мВ/°C, и за 60 градусов набегает почти пять процентов. Делитель в модели идеален, но у настоящего есть ТКС резисторов (раздел 166.2): пара с разным знаком ТКС ±100 ppm/°C даст 0,6 % — 25 кодов.
Отсюда простое правило: опора должна быть опорой. Делитель годится только там, где измеряют отношение (мост с тем же питанием), стабилитрон — как грубый порог или защита, а всё, что должно сохранять точность в рабочем диапазоне температур, требует ИОН.
177.4 Что читать в документации на ИОН
- Начальная погрешность — разброс от прибора к прибору при 25 °C, обычно 0,05…0,5 %. Калибруется один раз при выпуске изделия.
- Температурный дрейф в ppm/°C — не калибруется: 20 ppm/°C на 60 градусов это 0,12 %, почти 5 кодов из 4096.
- Уход от питания и от нагрузки — те самые line и load regulation из таблиц выше, обычно в ppm/В и ppm/мА.
- Шум — обычно в микровольтах размаха в полосе 0,1…10 Гц; он входит в бюджет шума тракта (раздел 165) наравне с шумом усилителя.
- Долговременный уход — десятки ppm за 1000 часов, в основном в первые сутки после пайки; для точных приборов делают прогон.
- Конденсатор на выходе — у многих ИОН он обязателен и его номинал указан: без него или с «не тем» ИОН возбуждается, как усилитель с ёмкостной нагрузкой из 163.1.
- Запас по входу — последовательному ИОН нужно на входе на 0,2…1 В больше выходного.
Отдельная строка — параллельный ИОН (две ноги, включается как стабилитрон с резистором): проще, но ток через него постоянный, и резистор считают по максимальной нагрузке и минимальному питанию.
177.5 Опора внутри микроконтроллера
У STM32 есть внутренняя опора: её напряжение (около 1,2 В) измеряется
тем же АЦП. У большинства семейств (F0, F3, F4, G0, G4, L4 и новее)
заводской код этой опоры VREFINT_CAL записан в системную область памяти,
а не во флеш-память программы. У F1 его нет: опору берут по номиналу
1,20 В, а паспортный разброс 1,16…1,24 В даёт около ±3 % на вычисленном
питании (раздел 14.9).
Это даёт неожиданно полезную вещь: измерив внутреннюю опору, программа
вычисляет фактическое напряжение питания, а значит, может мерить
абсолютные величины, даже если VREF+ соединён с питанием.
С заводским кодом точность такой схемы — десятки милливольт: внутренняя опора не предназначена быть точной, у неё свой дрейф. Для измерений «в процентах» этого достаточно, для весов или термометра на 0,1 °C — нет.
177.6 Грабли
Показания АЦП плывут вместе с питанием. Опорой служит питание или делитель от него.
Летом прибор врёт на проценты. Стабилитрон вместо ИОН: −2 мВ/°C это почти 5 % за 60 градусов.
Опора «просела» при включении АЦП. Делитель или ИОН без запаса по току: вход VREF+ берёт импульсы тока, нужен конденсатор рядом и ИОН, который держит нагрузку.
ИОН возбудился. Нет конденсатора на выходе или он не того номинала — смотреть документацию, там указан диапазон.
После пайки прибор ушёл и не вернулся. Долговременный уход и механические напряжения корпуса; калибровать после прогона.
Внутренняя опора МК даёт не то. Её используют для вычисления питания, а не как точную опору: свой дрейф и разброс, а у F1 без заводского кода — ещё ±3 % от номинала.
177.7 Итоги
- Ошибка опоры переходит в результат один к одному: код =
U · 4096 / Uоп. - Уход на 1 В питания: делитель 500 мВ, стабилитрон 16,0 мВ, ИОН 0,10 мВ.
- Нагрузка 500 мкА: делитель схлопывается, стабилитрон теряет 21,5 мВ, ИОН — 0,05 мВ.
- Нагрев 25 → 85 °C: стабилитрон −117 мВ (192 кода), ИОН 20 ppm/°C — +3,0 мВ (4,9 кода).
- В документации на ИОН читают начальную погрешность, дрейф в ppm/°C, уход от питания и нагрузки, шум 0,1…10 Гц и требования к конденсатору.
Дальше: раздел 178 «Активные фильтры».