Вольтметр – это устройство для измерения напряжения, которое используется для измерения напряжения в определенных точках электрической цепи. Напряжение – это разность потенциалов, которая создается между двумя точками в электрической цепи. Есть два типа вольтметров. Некоторые вольтметры предназначены для измерения напряжения в цепях постоянного тока, а другие вольтметры предназначены для измерения напряжения в цепях переменного тока. Эти вольтметры можно разделить на две категории. Один из них – цифровой вольтметр, который показывает измерения на цифровом экране, а другой – аналоговый вольтметр, в котором стрелка используется для указания на шкале точных показаний.
В этом проекте мы собираемся сделать вольтметр на Arduino Uno. В этой статье мы объясним две конфигурации цифрового вольтметра. В первой конфигурации микроконтроллер сможет измерять напряжение в диапазоне 0 – 5В. Во второй конфигурации микроконтроллер сможет измерять напряжение в диапазоне 0-50 В.
Как Чтобы сделать цифровой вольтметр?
Как мы знаем, существует два типа вольтметров: аналоговый вольтметр и цифровой вольтметр. Существуют еще несколько типов аналоговых вольтметров, которые зависят от конструкции устройства. Некоторые из этих типов включают вольтметр с подвижной катушкой с постоянным магнитом, вольтметр выпрямительного типа, вольтметр с подвижным железом и т. Д. Основная цель вывода цифрового вольтметра на рынок была связана с большей вероятностью ошибок в аналоговых вольтметрах. В отличие от аналогового вольтметра, в котором используются стрелка и шкала, цифровой вольтметр показывает показания непосредственно цифрами на экране. Это устраняет возможность нулевой ошибки . Процент ошибки снижается с 5% до 1%, когда мы перешли от аналогового вольтметра к цифровому вольтметру.
Теперь, когда мы знаем аннотацию этого проекта, давайте соберем дополнительную информацию и начнем создание цифрового вольтметра с использованием Arduino Uno.
Шаг 1. Сбор компонентов
Лучший способ начать любой проект – это составить список компонентов и пройти через краткое изучение этих компонентов, потому что никто не захочет оставаться в середине проекта только из-за отсутствия компонента. Список компонентов, которые мы собираемся использовать в этом проекте, приведен ниже:
- Arduino Uno
- Потенциометр 10 кОм
- Провода перемычки
- Резистор 100 кОм
- Резистор 10 кОм
- Адаптер 12 В переменного тока в постоянный (если питание Arduino не осуществляется от компьютера)
Шаг 2: Изучение компонентов
Arduino UNO – это плата микроконтроллера, которая состоит из микрочипа ATMega 328P и разработана Arduino.cc. Эта плата имеет набор цифровых и аналоговых контактов данных, которые могут быть подключены к другим платам расширения или схемам.. Эта плата имеет 14 цифровых контактов, 6 аналоговых контактов и программируется с помощью Arduino IDE (интегрированной среды разработки) через USB-кабель типа B. Требуется 5 В для питания ON и C-код для работы.
ЖК-дисплеи можно увидеть в каждом электронном устройстве, которое должно отображать для пользователей текст, цифру или любое изображение. ЖК-дисплей – это дисплейный модуль, в котором жидкий кристалл используется для создания видимого изображения или текста. ЖК-дисплей 16 × 2 – это очень простой электронный модуль, отображающий 16 символов в строке и всего две строки на экране одновременно. Для отображения символа на этих ЖК-дисплеях используется матрица 5 × 7 пикселей.
A Макетная плата – это беспаечное устройство. Он используется для изготовления и тестирования временных прототипов электронных схем и конструкций. Большинство электронных компонентов просто подключаются к макетной плате, просто вставив их контакты в макетную плату. В отверстия макета укладывается полоса металла и отверстия соединяются определенным образом. Соединения отверстий показаны на схеме ниже:
Шаг 3: Принципиальная схема
Первая схема с диапазоном измерения от 0 до 5 В показана ниже:
Вторая схема с диапазоном измерения от 0 до 50 В показана ниже:
Шаг 4: Принцип работы
Здесь объясняется работа этого проекта цифрового вольтметра постоянного тока на базе Arduino. В цифровом вольтметре напряжение, которое измеряется в аналоговой форме, будет преобразовано в соответствующее цифровое значение с помощью аналого-цифрового преобразователя.
В первой цепи, диапазон измерения которой составляет от 0 до 5 В , вход будет принят на аналоговый вывод 0. Аналоговый вывод будет считывать любое значение от 0 до 1024. Затем это аналоговое значение будет преобразовано в цифровое путем умножения его на общее напряжение, которое составляет 5 В, и деления на общее разрешение, равное 1024.
Во второй схеме, поскольку диапазон должен быть увеличен с 5 В до 50 В, необходимо выполнить конфигурацию делителя напряжения. Схема делителя напряжения сделана с использованием резистора 10 кОм и резистора 100 кОм. Эта конфигурация делителя напряжения помогает нам довести входное напряжение до диапазона аналогового входа Arduino Uno.
Все математические вычисления выполняются при программировании Arduino Uno.
Шаг 5: Сборка компонентов
Подключение ЖК-модуля к плате Arduino Uno одинаково в обеих схемах. Единственное отличие состоит в том, что в первой схеме входной диапазон низкий, поэтому он напрямую отправляется на аналоговый вывод Arduino. Во второй схеме на входной стороне платы микроконтроллера используется конфигурация делителя напряжения..
- Подключите выводы Vss и Vdd ЖК-модуля к земле и 5V Arduino доска соответственно. Штифт Vee – это штифт, который используется для регулировки ограничений дисплея. Он подключен к потенциометру, один вывод которого подключен к 5 В, а другой – к земле.
- Подключите выводы RS и E ЖК-модуля к контактам 2 и 3 платы Arduino соответственно . Вывод RW ЖК-дисплея подключен к земле.
- Поскольку мы будем использовать модуль ЖК-дисплея в 4-битном режиме данных, используются его четыре контакта с D4 по D7. Контакты D4-D7 ЖК-модуля подключены к контактам 4 и 7 на плате микроконтроллера.
- В первой схеме нет дополнительных цепей на стороне входа, потому что максимальное измеряемое напряжение составляет 5 В. Во второй схеме, поскольку диапазон измерения составляет от 0 до 50 В, конфигурация делителя напряжения выполняется с использованием резистора 10 кОм и резистора 100 кОм. Следует отметить, что все основания общие.
Шаг 6: Начало работы с Arduino
Если вы раньше не знакомы с Arduino IDE, не волнуйтесь, потому что ниже вы можете увидеть четкие шаги записи кода на плате микроконтроллера с использованием Arduino IDE. Вы можете загрузить последнюю версию Arduino IDE отсюда и выполнить шаги, указанные ниже:
- Когда плата Arduino подключена к вашему ПК, откройте «Панель управления» и нажмите “Оборудование и звук”. Затем щелкните «Устройства и принтеры». Найдите имя порта, к которому подключена ваша плата Arduino. В моем случае это «COM14», но на вашем компьютере он может быть другим.
- У нас будет чтобы включить библиотеку для использования ЖК-модуля. Библиотека прикреплена ниже по ссылке для скачивания вместе с кодом. Перейдите в Sketch> Включить библиотеку> Добавить библиотеку .ZIP.
- Теперь откройте IDE Arduino. В Инструментах установите для платы Arduino значение Arduino/Genuino UNO.
- В том же меню инструментов установите номер порта, который вы видели на панели управления.
- Загрузите прилагаемый ниже код и скопируйте его в свою среду IDE. Чтобы загрузить код, нажмите кнопку загрузки.
Вы можете загрузить код нажав здесь.
Шаг 7: Код
Код довольно прост и хорошо прокомментирован. Но все же кое-что это объясняется ниже.
1. Вначале используется библиотека, чтобы мы могли связать ЖК-модуль с платой Arduino Uno и соответствующим образом запрограммировать его. Затем инициализируются контакты платы Arduino, которые будут использоваться для подключения к ЖК-модулю.. Затем инициализируются различные переменные для хранения значений во время выполнения, которые будут использоваться позже в расчетах.
#include "LiquidCrystal.h"//включаем библиотеку для интерфейса ЖК-модуля с платой Arduino LiquidCrystal lcd (2 , 3, 4, 5, 6, 7); //выводы ЖК-модуля, которые будут использоваться float Voltage = 0.0; float temp = 0.0; //переменная для хранения цифрового значения inputint analog_value; //переменная для хранения аналогового значения на входе
2. void setup () – это функция, которая запускается только один раз при запуске устройства или нажатии кнопки включения. Здесь мы инициализировали ЖК-дисплей для запуска. Когда ЖК-дисплей запустится, отобразится текст «Цифровой вольтметр на базе Arduino». Скорость передачи также устанавливается в этой функции. Baud Rate – это скорость в битах в секунду, с которой Arduino обменивается данными с внешними устройствами.
void setup () {lcd.begin (16, 2); //запускаем связь с LCDlcd.setCursor (0,0); //запускаем курсор с начала lcd.print ("на базе Arduino"); //Печатать текст в первой строке linelcd.setCursor (0,1); //Перемещаем курсор к следующему linelcd.print ("Цифровой вольтметр"); //вывод текста во второй строкеdelay (2000); //ждем две секунды}
3. void loop () – это функция, которая непрерывно выполняется в цикле. Здесь аналоговое значение считывается со стороны входа. Затем это аналоговое значение преобразуется в цифровую форму. Применяется условие, и окончательные измерения отображаются на ЖК-экране
void loop () {analog_value = analogRead (A0); //Чтение аналогового значенияtemp = (analog_value * 5.0)/1024.0; //преобразование аналогового значения в цифровоеvoltage = temp/(0.0909); if (VoltageПриложения
Некоторые из приложений цифрового вольтметра включают:
- Схема, сделанная выше, может использоваться для измерения различных диапазонов напряжений с высокой точностью в любой электрической цепи.
- Если мы внесем небольшие изменения в схему, микроконтроллер сможет измерить напряжение переменного тока. схемы тоже.