4-канальний вольтметр з ЖК-індикатором на базі Arduino
Четырехканальный "Arduino-вольтметр" может измерять четыре независимых напряжения постоянного тока в диапазоне от 0 до 50В. Аналоговые каналы с A2 по A5 на Arduino Uno используются для измерения четырех различных напряжений. Измеренные значения напряжений отображаются на 16-символьном, двухстрочном ЖК-индикаторе.
Напряжения отображаются в виде значения с одной цифрой после запятой, напр., 5.3В, 12.8В и т.д.
На видео ниже показана работа вольтметра на базе Arduino, который измеряет напряжение четырех батарей с различным уровнем напряжения.
Принцип работы вольтметра
Каждый канал вольтметра на базе Arduino имеет пару резисторов, которые образуют делитель напряжения. Делитель напряжения уменьшает входное напряжение до уровня, который может быть измерен микроконтроллером Arduino. Запущенный код на Arduino вычисляет действительное значение напряжения и отображает результат на ЖК-дисплее.
Электрическая схема вольтметра на базе Arduino
Перед началом сборки схемы убедитесь в том, что ваш ЖК-дисплей имеет такое же количество выводов, что и дисплей, указанный на схеме. При неправильном подключении ЖК-дисплей может выйти из строя.
В данном учебном материале Arduino LCD показано, как подключить ЖК-дисплей к плате Arduino Uno.
Напряжение измеряется между точками A, B, C или D и землей или 0В. Не забудьте отрегулировать уровень контрастности с помощью потенциометра, чтобы показания на ЖК-дисплее были видимыми.
Резистор R1 обеспечивает ограничение тока для опциональной задней подсветки и позволяет ей быть постоянно включенной.
Скетч вольтметра на базе Arduino
Переменные sum и voltage объединяются в массив, что позволяет сохранять значения показаний от четырех аналоговых каналов.
Калибровка
Процесс калибровки подробно описан в статье Измерение напряжения постоянного тока с использованием Arduino, но в нашем случае нужно вычислить коэффициент деления 4 делителей напряжения.
Значения калибровки могут быть легко изменены в верхней части кода:
// voltage divider calibration values #define DIV_1 11.1346 #define DIV_2 11.1969 #define DIV_3 11.0718 #define DIV_4 11.0718 // ADC reference voltage / calibration value #define V_REF 4.991
Калибровка опорного напряжения
Измерьте напряжение 5В и измените значения константы V_REF в соответствии с измеренным значением. Измерьте напряжение в схеме с подключенным ЖК-дисплеем и при запущенном скетче, поскольку напряжение может измениться при подключении ЖК-дисплея. Например, при подключенной схеме, значение напряжения с величины 5.015В при отключенном ЖК-дисплее может упасть до 4.991В при подключенном ЖК-дисплее на том же «железе».
Калибровка делителя напряжения
Измените значения делителя напряжения для каждого делителя напряжения от DIV_1 до DIV_4 в верхней части скетча. DIV_1 - DIV_4 соответствуют аналоговым выводам A2 - A5.
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание |
---|---|---|---|---|
Плата Arduino |
Arduino Uno
|
1 | ||
R1 | Резистор |
47 Ом
|
1 | |
R2, R4, R6, R8 | Резистор |
1 МОм
|
4 | |
R3, R5, R7, R9 | Резистор |
100 кОм
|
4 | |
RV1 | Подстроечный резистор | 10 кОм | 1 | |
LCD | LCD-дисплей | 16x2 HD44780 | 1 | |
Прикрепленные файлы:
- arduino145.ino (3 Кб)