Счетчик электроэнергии на Arduino своими руками

Перевёл alexlevchenko для mozgochiny.ru

Доброго времени суток. В сегодняшней статье мы поговорим о том, как сделать простой счетчик электроэнергии с поддержкой Wi-Fi своими руками.

Шаг 1: Необходимые детали и инструменты

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

  • Wemos D1 mini pro;
  • Датчик тока ACS712;
  • OLED дисплей;
  • 5В блок питания;
  • Монтажная плата 4 х 6 см;
  • Провода;
  • Гнезда под «гребенку»;
  • Перемычки;
  • Винтовые клеммы;
  • Стойки;
  • Вилка+розетка
  • Самозажимные клеммы;
  • Тумблер.

Необходимые инструменты:

  • Паяльник;
  • Клеевой пистолет;
  • Кусачки / стриппер.

Шаг 2: Как это работает?

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

Провода переменного тока расходятся в два направления:

  • К нагрузке через датчик тока (ACS712);
  • 230V AC / 5V DC к блоку питания.

Блок питания 5 В обеспечивает питание микроконтроллера (Arduino / Wemos), датчика тока (ACS712) и OLED-дисплея.

Величина тока, определяется датчиком тока (ACS712). Считанное значение подается на аналоговый вывод (A0) платы Arduino / Wemos. Как только аналоговый сигнал заходит в Arduino, расчет мощности выполняется по алгоритму приложения Arduino.

Расчетное значение отображаются на 0,96-дюймовом дисплее OLED.

Встроенный WiFi-чип Wemos подключен к домашнему маршрутизатору и связан с приложением Blynk. Таким образом, можно контролировать параметры, а также калибровать и изменять различные настройки со своего смартфона через OTA.

Шаг 3: Матчасть

В цепях переменного тока ток изменяются синусоидально со временем.

Активная мощность (P): мощность, используемая устройством для производства полезной работы. Она выражается в кВт.

  • Активная мощность = напряжение (V) * ток (I) * cosΦ

Реактивная мощность (Q): мощность, которая не была передана в нагрузку, а привела к потерям на нагрев и излучение. Не приносит никакой полезной работы. Она выражается в кВАр.

  • Реактивная мощность = напряжение (V) * ток (I) * sinΦ

Полная мощность (S): определяется, как произведение действующего значение напряжения на действующее значение тока. Также может быть определена, как сумма активной и реактивной мощности. Выражается в кВА

  • Полная мощность = напряжение (V) * ток (I)

Отношения между активной, реактивной и полной мощностью:

  • Активная мощность = полная мощность * cosΦ
  • Реактивная мощность = полная мощность * sinΦ
  • (кВА) ² = (кВт) ² + (кВАр) ²

Коэффициент мощности (пф): отношение активной мощности к полной мощности в цепи.

  • Коэффициент мощности = активная мощность / полная мощность

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

Шаг 4: Датчик тока

Величина переменного тока измеряется с помощью трансформатора тока, но для этого проекта был выбран ACS712 — датчик тока с эффектом Холла, который измеряет ток при наведении. Обнаруженное магнитное поле вокруг провода, дает эквивалентное аналоговое выходное напряжение. Затем напряжения обрабатывается микроконтроллером для измерения тока, протекающего через нагрузку.

Шаг 5: Измерение тока с помощью ACS712

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

  • Измеряем напряжения Vpp (полную амплитуду);
  • Делим напряжение Vpp на два, чтобы получить амплитудное напряжение Vp;
  • Умножаем полученное значение на 0,707, получив действующее напряжение (Vrms)

Затем умножим на чувствительность датчика тока (ACS712), чтобы получить действующее значение тока.

  • Vp = Vpp / 2
  • Vrms = Vp x 0,707
  • Irms = Vrms x Чувствительность

Чувствительность модуля ACS712:

  • 5A составляет 185 мВ / A;
  • модуля 20A — 100 мВ / A;
  • модуля 30A — 66 мВ / A.

Подключение датчика (ACS712 Arduino / Wemos)

  • VCC = 5 В
  • OUT = A0
  • GND = GND

Шаг 6: Расчет мощности

Причина не использовать датчик напряжения связана с ограниченным количеством аналоговых выводов Wemos (только один). Хотя дополнительный датчик можно подключить с помощью АЦП, такого как ADS1115.

Коэффициент мощности нагрузки можно изменить во время программирования или из приложения для смартфона.

  • Активная мощность (Вт) = Vrms x Irms x Pf
  • Vrms = 230 В (известно)
  • Pf = 0,85 (известно)
  • Irms = чтение с текущего датчика (неизвестно)

Шаг 7: Приложение Blynk

Так как на плате Wemos есть встроенный чип WiFi. Преимущества использования платы Wemos: калибровка датчика и изменение значения параметров со смартфона через OTA без физического повторного программирования микроконтроллера.

Blynk — это приложение, которое обеспечивает полный контроль над Arduino, ESP8266, Rasberry, Intel Edison и многими другими аппаратными средствами. Приложение совместимо как с Android, так и с iPhone. В Blynk все работает на «Energy». Когда вы создаете новую учетную запись, вы получаете 2000 фунтов стерлингов, чтобы начать эксперимент; Каждый виджет нуждается в энергии для работы. Для этого проекта вам нужно 2400 фунтов стерлингов, поэтому вы должны приобрести дополнительную энергию 400 фунтов стерлингов (стоимость менее 1 доллара США)

  • Датчик — 2 х 200 = 400;
  • Отображение маркировки — 2 x 400 = 800;
  • Ползунки — 4 х 200 = 800;
  • Меню — 1x 400 = 400.

Общая энергия, необходимая для этого проекта = 400 + 800 + 800 + 400 = 2400

Выполним следующие шаги:

Загружаем приложение Blynk
Авторизация

Чтобы подключить приложение Blynk к оборудованию, нужно авторизироваться.

  • Создаем новую учетную запись в приложении Blynk.
  • Нажмём значок QR в верхней строке меню. Создадим клон этого проекта, отсканировав QR-код, показанный выше. Как только он будет успешно обнаружен, весь проект будет немедленно загружен на телефоне.
  • После создания проекта будет выслано письмо на электронную почту.
  • Проверим свою электронную почту и пройдём авторизацию.
Подготовка Arduino IDE для Wemos Board

Чтобы загрузить код Arduino на Wemos, вы должны следовать этим инструкциям

Устанавливаем библиотеки

Импортируем библиотеку в Arduino IDE

Скачать Blynk Library

Загрузим библиотеки для дисплея OLED:

Эскиз Arduino

После установки вышеуказанных библиотек вставим код Arduino, приведенный ниже.

Введем код авторизации с шага 1, ssid и пароль вашего роутера.

Затем загрузим код.

Шаг 8: Подготовка монтажной платы

Чтобы сделать поделку аккуратной и красивой, соберем схему на макетной плате 4×6 см.

  • Плата Wemos (2 x 8-контактный гнездовой разъем);
  • Плата питания 5 В постоянного тока (3-контактный гнездовой разъем);
  • Модуль датчика тока (3-контактный гнездовой разъем);
  • OLED-дисплей (4-контактный гнездовой разъем).

Припаиваем 2-контактную винтовую клемму для подачи питания переменного тока на блок питания.

ACS712 —> Wemos

  • Vcc—-> 5V;
  • Gnd —-> GND;
  • Vout—->A0.

OLED—> Wemos

  • Vcc—-> 5V
  • Gnd—-> GND
  • SCL—-> D1
  • SDA—->D2

Модуль питания:

  • Провода переменного тока (2 контакта) модуля питания подключен к винтовой клемме.
  • Выход V1 подключен к Wemos 5V, а вывод GND подключен к выводу Wemos GND.

Шаг 9: 3D-печатный корпус

Чтобы придать самоделке привлекательный вид, специально был спроектирован корпус (Autodesk Fusion 360). Он состоит из двух частей: основы и крышки. Шаблон.

Нижняя часть проектировалась под плату (4 х 6 см), датчик тока и держатель предохранителей.

Крышка предназначена для установки розетки переменного тока и OLED-дисплея.

Шаг 10: Схема подключения переменного тока

Шнур питания переменного тока имеет 3 провода: фазный (красный), нейтральный (черный) и заземляющий (зеленый).

Красный провод от шнура питания подключен к одной клемме предохранителя. Другая клемма предохранителя подключена к подпружиненным 2-контактному разъему. Черный провод напрямую подключен к подпружиненному разъему.

Затем красный провод подключаем к клемме «L» разъема переменного тока, а зеленый провод (заземление) подключается к центральной клемме (обозначается буквой G).

Клемма нейтрали подключена к одной клемме датчика тока ACS712. Другая клемма ACS712 подключена обратно к подпружиненному разъему.

После завершения всех внешних подключений тщательно осмотрим плату и очистим ее от остатков паяльного флюса.

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

Шаг 11: Устанавливаем компоненты

Монтируем компоненты (розетку, тумблер и OLED-дисплей) в слоты верхней крышки, как показано на рисунке. Затем крепим все винтами. Нижняя часть имеет 4 стойки для крепления основной платы.

Установим держатель предохранителя и датчика тока в гнездо в нижней части корпуса. Затем укладываем все провода.

Наконец, устанавливаем крышку.

Шаг 12: Финальные испытания

Подключим шнур питания счетчика к розетке.

Изменим следующие параметры из приложения Blynk:

  • Ползунок CALIBRATE, регулирует значение нулевого тока, когда нагрузка не подключена;
  • Измерим напряжение в доме с помощью мультиметра и установим значение ползунка VOLTAGE;
  • Устанавливаем коэффициент мощности;
  • Введём тариф на электроэнергию в регионе.

Затем подключим прибор к розетке счетчика.

На этом все, спасибо за внимание!

(A-z Source)

>Купить в подарок или заказать уникальную вещь<


ПОДЕЛИТЕСЬ С ДРУЗЬЯМИ!


About alexlevchenko

Ценю в людях честность и открытость. Люблю мастерить разные самоделки. Нравится переводить статьи, ведь кроме того, что узнаешь что-то новое - ещё и даришь другим возможность окунуться в мир самоделок.

3 Replies to “Счетчик электроэнергии на Arduino своими руками”

  1. Полностью с тобой согласен. Иногда стоимость модулей для поделки, в разы больше, чем цена готовой китайской «безделушки».
    Такие статьи, скорее учебные задачи для получения практических навыков, которые теоретически могут пригодится в дальнейшем

    1. в самого іноді заради спортивної цікавості виникає бажання щось зробити, іноді роблю, частіше спиняє ціна 🙁

      сьогодні зібрав настінний годинник з китайского модуля з плавним ходом, tp4056, літієвим аккумулятором, лінійним стабілізатором *dc-dc жирно, і зарядкою від старої мобілки. здох механічний годинник, а модулі вже були. плавний хід за кілька місяців алкалайнову батарейку в 0. а так літій як буфер, бп в розетці

  2. датчик хола на змінний струм може єресь показувать.
    ідея хороша на жальне не дуже рентабельно 🙁 модулі коштують дорожче ніж китайська розетка з віфі та ватметром.
    зараз перед тим як щось зробити дивлюсь а не дешевше купити готове. якщо більша частина досталась на халяву — чом б й ні.
    лабораторнік збирав ,бо подарували блок живлення на 1.5 квт -він сам просився, і подарували ДС, і амперметр. а якщо купити його, ардуіну, екран, ДС, ампермерт на ефекті холла, 2 проволочні підстроєчники …… то зовсім не рентабельно. результат лабораторний 30в 10А при потужнішому ДС-ДС можна було 52В 30А *бюджет би зашкалив

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

* Copy This Password *

* Type Or Paste Password Here *