Насколько точен ADS1115?
Обновлено Редакция GAW
16 бит — это разрешение, то есть шаг шкалы. На диапазоне ±2,048 В шаг ADS1115 — 4,096 В / 65 536 = 62,5 мкВ. Но точность определяется не шагом, а ошибками, которые TI нормирует в разделе 5.5 даташита.
16 бит — для дифференциального входа. При измерении относительно земли ADS1115 выдаёт только положительные коды от 0000h до 7FFFh (0–32 767) — фактически 15 бит, шаг тот же 62,5 мкВ на 0–2,048 В; отрицательных напряжений на входах микросхема не принимает. Диапазоны ±4,096 и ±6,144 В не позволяют подать на вход больше VDD + 0,3 В, а наибольшую ошибку усиления 0,15 % TI нормирует только для диапазона ±2,048 В.
Бюджет ошибок
Наш расчёт для сигнала 2,000 В на диапазоне ±2,048 В, наибольшие значения по даташиту:
| Источник ошибки | По даташиту | В милливольтах | В отсчётах по 62,5 мкВ |
|---|---|---|---|
| Ошибка усиления при 25 °C | до 0,15 % | 3,0 мВ | 48 |
| Смещение | до ±3 LSB | 0,19 мВ | 3 |
| Нелинейность (INL) | до 1 LSB | 0,06 мВ | 1 |
| Дрейф усиления, +30 °C от 25 °C | до 40 ppm/°C | 2,4 мВ | 38 |
Без калибровки главная ошибка — ошибка усиления: 0,15 % соответствуют примерно 1/670 шкалы, то есть около 9,4 бита абсолютной точности. Типичное значение ошибки усиления — 0,01 %, и у большинства экземпляров будет лучше, но гарантирован только максимум.
После калибровки
Если измерить два известных напряжения — ноль и около верха шкалы — и пересчитывать коды по прямой, смещение и ошибка усиления уходят. Остаются нелинейность (до 1 отсчёта), шум и дрейфы: смещение плывёт на 0,005 LSB/°C, усиление — на 7 ppm/°C типично и до 40 ppm/°C. При стабильной температуре точность тогда приближается к разрешению, при колебаниях в десятки градусов — снова к единицам милливольт.
Сложить ошибки для своего случая поможет калькулятор бюджета ошибок АЦП, адреса, режимы и подключение ADS1115 — на странице ADS1115 и MCP3008. Сравнение со встроенным АЦП — в ответе «С какой точностью Arduino измеряет напряжение?».
Похожие вопросы
Сколько выборок в секунду можно брать без потери битов?
По таблице TI при диапазоне ±2,048 В и питании 3,3 В шум не съедает ни одного из 16 бит до 128 выборок в секунду. На 860 выборках в секунду разрешение без шума падает примерно до 15 бит. Для медленных датчиков выгодна низкая скорость: шум меньше.
Нужно ли внешнее опорное напряжение для ADS1115?
Нет: опорный источник встроен, и его погрешность уже входит в ошибку усиления 0,15 %. Если нужна точность лучше, ADS1115 калибруют по известному напряжению — внешнего опорного у этой микросхемы нет.
Точнее ли ADS1115, чем АЦП Arduino?
Да, и заметно: у ATmega328P 10 бит и абсолютная погрешность около 2 отсчётов из 1024, плюс ошибка опорного — питания платы. У ADS1115 в 64 раза больше кодов (при несимметричном входе — в 32 раза), а встроенный опорный с ошибкой усиления до 0,15 % стабильнее питания от USB.
Источники
- Texas Instruments. ADS111x Ultra-Small, Low-Power, I2C-Compatible, 860SPS, 16-Bit ADCs (SBAS444E, revised December 2024) — разд. 7 (Code Transition Diagram) — при несимметричном входе используются только коды 0000h–7FFFh; входы не принимают отрицательных напряжений, допустимо от GND − 0,3 до VDD + 0,3 В; разд. 5.5 (FSR ±2,048 В) — разрешение 16 бит без пропущенных кодов; INL не больше 1 LSB (8 SPS, по наилучшей прямой на 99 % шкалы); смещение ±1 LSB тип., до ±3 LSB (дифференциальный вход); дрейф смещения 0,005 LSB/°C; ошибка усиления 0,01 % тип., 0,15 % макс. при 25 °C (включает встроенный источник опорного); дрейф усиления 7 ppm/°C тип., 40 ppm/°C макс.; долговременный дрейф усиления ±0,05 % за 1000 ч при 125 °C; табл. 6-2 — разрешение без шума 16 бит до 128 SPS при ±2,048 В и 3,3 В, 15,07 бит при 860 SPS
- Microchip. ATmega48A/PA/88A/PA/168A/PA/328/P Data Sheet (DS40002061B, 2020) — табл. 29-15 — для сравнения: АЦП ATmega328P 10 бит, абсолютная погрешность 2 LSB при тактовой 200 кГц (типично, VREF = VCC = 4 В)
Нашли ошибку?
Смотрите также
- ADS1115 и MCP300816 бит I²C с усилителем против 10 бит SPI на 8 каналов: выводы, диапазоны, точность
- Бюджет ошибок АЦППолная погрешность измерения АЦП: сумма и RSS в LSB, мВ и битах
- Ошибка смещения и усиления АЦПСдвиг и наклон характеристики АЦП, их калибровка
- С какой точностью Arduino измеряет напряжение?АЦП — около 0,2 %, опорное — до 7–9 % без калибровки