Повышает ли снижение аналогового эталона Arduino точность измерения низкого напряжения?
Аналоговое опорное значение определяется следующим образом: опорное напряжение, используемое для аналогового ввода (т. е. значение, используемое в качестве верхнего предела входного диапазона).
По умолчанию у вас есть аналоговое опорное напряжение 5 В. Таким образом, точность AnalogRead составляет 5/1023 = 0,0048875.
Что произойдет, если я уменьшу аналоговое задание, скажем, до 1 В? Означает ли это, что точность теперь составляет 1/1023 (и Arduino не может измерять напряжения выше 1 В) или это та же точность, что и раньше, с той лишь разницей, что Arduino не может измерять напряжения выше 1 В? больше?
@user3071028, 👍3
Обсуждение2 ответа
Лучший ответ:
Первое, т.е. точность теперь будет 1/1023, но точность АЦП составляет 4/1024 или 1 часть на 256, т.е. 0,25%.
Также имейте в виду, что сами внутренние опорные напряжения не очень точны:
ПО УМОЛЧАНИЮ: зависит от источника питания вашего компьютера USB2 Vbus = 4,4–5,25 В, Vint 1 = 1,1 В, фактически 1,0–1,2 В, Vint 2 = 2,56 В, фактически 2,4–2,8 В
Спасибо за быстрый и очень полезный ответ! Таким образом, лучшая точность, которую вы можете получить от аналоговых выводов Arduino, — это 4/1024 из-за точности АЦП, верно?, @user3071028
Точность и аккуратность связаны, но различны. С преобразователем 1 к 1024 точность составляет 0,000977, но из-за недостаточной точности последние несколько битов могут быть бессмысленными. Если бы у нас была резиновая линейка, размеченная в миллиметрах, и мы растянули бы ее, точность не изменилась бы, но точность изменилась бы., @JRobert
Вы можете измерить известное напряжение и использовать его для калибровки АЦП. Или вы можете измерить внутреннее опорное напряжение 1,1 В, измерив напряжение на Aref с помощью мультиметра., @Gerben
АЦП просто выдает двоичное значение от 0 до 1023. Это значение поровну делится между опорным значением и заземлением. Поскольку это регистр последовательного приближения, который начинает отсчет с нуля и ведет счет последовательными шагами до тех пор, пока не будет достигнуто опорное напряжение, этот счет сохраняется и представляется как показание. Если ваше входное напряжение находится в этом диапазоне, вы получите показания количества шагов от нуля, где оно совпало (от 0 до 1023). При измерении более высоких напряжений вы просто используете резистивный делитель и умножаете показания на этот коэффициент.
- Отправка значения с одного Arduino на другой
- Arduino непрерывно считывает значение АЦП с помощью прерывания
- Колебания показаний датчика температуры LM35 (+- 5°C) с Arduino UNO
- Проблема с открытием нескольких текстовых файлов одновременно/по порядку с использованием <SD.h>
- Динамически обновить масштаб виджета Tkinter из портов Arduino с помощью python и firmata
- Считанное значение не меняется при вращении потенциометра в Arduino?
- Отправка аналоговых входных данных из последовательного порта в Google Таблицы
- Проблема с мультиплексором CD74HC4067 при высоких значениях.
«Значит ли это, что теперь точность составляет 1/1023?» - это правильно., @Mikael Patel
Имейте в виду, что минимальное напряжение для Vref составляет 1 В, поэтому не начинайте планировать понижение его до 0,5 В., @Nick Gammon