Вольтметр переменного тока на Arduino Uno: схема и программа

ZMPT101B Ардуино датчик напряжения 220 В. С помощью этого модуля можно измерять показания переменного напряжения в сети 220В и передавать их непосредственно на вход микроконтроллера. Цена: 210 руб.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. Трансформатор 12-0-12.
  3. Диод 1N4007 (купить на AliExpress).
  4. Конденсатор 1 мкФ (купить на AliExpress).
  5. Резисторы 10 кОм, 4,7 кОм (купить на AliExpress).
  6. Полупроводниковый стабилитрон 5v (диод Зенера — Zener diode) (купить на AliExpress).
  7. Соединительные провода.

Требуемое оборудование

Для изготовления простого цифрового вольтметра своими руками в домашних условиях понадобятся:

  • Arduino uno
  • 16×2 LCD жидкокристаллический дисплей
  • Резистор 100 кОм
  • Резистор 10 кОм
  • Потенциометр 10 кОм
  • Макетная плата
  • Провода (перемычки)

Датчик переменного напряжения ZMPT101B отзывы

Оставьте отзыв об этом товаре первым!

Обзор

Важное замечание! Пожалуйста, прочитайте этот материал полностью, прежде чем работать с AREF в первый раз.

Вы можете вспомнить, что вы можете использовать функцию Arduino analogRead() для измерения напряжения электрического тока от датчиков и т.п., используя один из выводов аналогового входа. Значение, возвращаемое функцией analogRead(), должно быть в диапазоне от 0 до 1023, где ноль представляет собой ноль вольт, а 1023 представляет рабочее напряжение используемой платы Arduino.

И когда мы говорим, рабочее напряжение — это напряжение, доступное Arduino после схемы питания. Например, если у вас есть типичная плата Arduino Uno и вы запускаете ее через разъем USB (для платы есть доступные 5 В через разъем USB на вашем компьютере), то напряжение немного уменьшается, поскольку ток идет через всю схему к микроконтроллеру или USB-источник может не давать абсолютное значение.

Это можно легко продемонстрировать, подключив Arduino Uno к USB и установив мультиметр для измерения напряжения на контактах 5В и GND. Некоторые платы возвращают напряжение до 4,8 В, некоторые показывают значения выше 4,8 В, ниже 5 В. Поэтому, если вы стремитесь к точности, питайте вашу плату от внешнего источника питания через разъем постоянного тока или Vin-контакт, например, 9 В постоянного тока. Затем, после этого, пройдя через цепь регулятора мощности, вы получите хорошее напряжение 5 В.

Это важно, поскольку точность любых значений analogRead() будет зависеть от отсутствия истинных 5 В. Если у вас нет никакой опции, вы можете использовать некоторые математические расчеты в своем эскизе, чтобы компенсировать падение напряжения. Например, если ваше напряжение равно 4,8 В — диапазон analogRead() от 0 до 1023 будет относиться к 0 ~ 4,8 В, а не к 0 ~ 5 В. Это может звучать тривиально, однако, если вы используете датчик, который возвращает значение в виде напряжения (например, датчик температуры TMP36) — рассчитанное значение будет неверным. Поэтому в интересах точности используйте внешний источник питания.

INA219 (CJMCU-219) – датчик силы тока и напряжения

330 В корзину

  • Трехпроводной цифровой мини-вольтметр 0.28" (DC 0V ~ 100V)

    В наличии

    Общие сведения:

    Trema-модуль Датчик тока — это аналоговый модуль, позволяющий определять силу как постоянного, так и переменного тока до 5А. Для определения силы тока протекающего по исследуемой цепи, нужно один из её проводов подключить через клеммник на плате модуля. Потенциал на выходе модуля «S» (Signal) будет меняться в соответствии с направлением и силой измеряемого тока.

    Работа схемы

    Схема рассматриваемого нами цифрового вольтметра на основе платы Arduino представлена на следующем рисунке.

    Схема вольтметра переменного тока на Arduino UnoВ схеме необходимо сделать следующие соединения:

    1. Соедините высоковольтную часть трансформатора (220V) с источником напряжения, а его низковольтную часть (12v) — с делителем напряжения в схеме.
    2. Соедините резистор 10 кОм последовательно с резистором 4,7 кОм. Убедитесь в том, что на вход схемы напряжение будет поступать с именно с резистора 4,7 кОм (не перепутайте резисторы).
    3. Соедините диод как показано на схеме.
    4. Подсоедините конденсатор и стабилитрон как показано на схеме.
    5. Соедините отрицательный вывод диода с контактом A0 платы Arduino.

    Примечание: обязательно соедините землю Arduino с точкой, показанной на рисунке, иначе схема не будет работать.

    Зачем нужен делитель напряжения

    Поскольку мы используем трансформатор 220/12 это значит что на его низковольтной стороне будет напряжение 12 В, которое не подходит для питания платы Arduino (не подходит в качестве ее входного напряжения). Поэтому мы и используем делитель напряжения чтобы получить подходящее напряжение для платы Arduino.

    Зачем нужны диод и конденсатор

    Поскольку плата Arduino не может работать с отрицательными значениями напряжения мы должны удалить отрицательные циклы напряжения из поступающего напряжения переменного тока, чтобы остались только положительные циклы. Поэтому для выпрямления поступающего входного напряжения и используется диод.

    Но напряжение на выходе диода не будет “гладким” (ровным) и будет содержать большие пульсации, которые нежелательно (в нашем случае) подавать на аналоговый вход платы Arduino. Поэтому в схему и включен конденсатор чтобы сглаживать пульсации напряжения на выходе диода.

    Назначение стабилитрона

    Можно повредить плату Arduino если на ее контакт подать напряжение более 5 В. Поэтому, чтобы напряжение на контакте Arduino не превысило 5 В, в схеме и используется стабилитрон.

    Arduino измерение напряжения

    Верхний предел аналоговых выводов Arduino составляет 5 вольт. Для измерения напряжения до 5 В можем напрямую подключить источник напряжения к аналоговому выводу Arduino. В случае измерения напряжения выше 5 В необходимо использовать делитель напряжения. Он защитит от перегрузки по напряжению выходы микроконтроллера. Схема делителя напряжения состоит из двух резисторов, в нашем случае 100 кОм и 10 кОм.

    Схема делителя напряженияДелитель напряжения

    Номиналы резисторов берутся в зависимости от необходимого верхнего предела измерения. Если быть точными, то нас интересует не столько номиналы резисторов, сколько их отношение. Номиналы подбираются по формуле:

    R1/R2=Uin/Uout1

    Где R1 и R2 — это номиналы необходимых нам сопротивлений.
    Uout — это напряжение на выходе делителя. В нашем случае 5 Вольт. Как уже писалось выше, это максимальное значение, которое мы сможем скормить Ардуино.
    Uin — это напряжение на входе делителя, который является верхним пределом измерения вольтметра. В нашем случае 55В.
    В качестве примера возьмём равенство для нашего делителя:

    100000/10000=55/51

    Равенство выполняется, значит всё верно. Если вам нужен вольтметр с другим верхним пределом, можете подставить своё значение Uin. И подобрать свои резисторы с необходимым отношением.

    Важные страницы

    • Набор GyverKIT – большой стартовый набор Arduino моей разработки, продаётся в России
    • Каталог ссылок на дешёвые Ардуины, датчики, модули и прочие железки с AliExpress у проверенных продавцов
    • Подборка библиотек для Arduino, самых интересных и полезных, официальных и не очень
    • Полная документация по языку Ардуино, все встроенные функции и макро, все доступные типы данных
    • Сборник полезных алгоритмов для написания скетчей: структура кода, таймеры, фильтры, парсинг данных
    • Видео уроки по программированию Arduino с канала “Заметки Ардуинщика” – одни из самых подробных в рунете
    • Поддержать автора за работу над уроками
    • Обратная связь – сообщить об ошибке в уроке или предложить дополнение по тексту (alex@alexgyver.ru)

    Применение:

    • Амперметры, системы учёта электричества;
  • Понравилась статья? Поделиться с друзьями:
    Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: