Найти в Дзене

Управление светом по WiFi своими руками

Оглавление

Последнее время начало раздражать вставать выключать свет в комнате перед сном. Поэтому решил сделать себе управление светом по WiFi через телефон при минимальном бюджете.

Компоненты

За основу устройства была взята плата микроконтроллера ESP8266-01 с WiFi интерфейсом самая простая:

Микроконтроллер ESP8266-01
Микроконтроллер ESP8266-01

Для включения/отключения лампы мне понадобилось реле:

Модуль реле 5 вольт
Модуль реле 5 вольт

Для питания управляющей части мне понадобился блок питания на 5 вольт и стабилизатор напряжения на 3.3 вольта.

Большинство телефонных зарядок выдают напряжение 5 вольт, если не говорить про более современные. У меня была вот такая вот простая зарядка за 100 рублей.

Обычная зарядка для телефона
Обычная зарядка для телефона

Данную зарядку я разобрал. Вытащил внутренности из корпуса, убрал USB разъем.

Плата esp8255-01 имеет напряжение питания 3.3 вольта, но рядом с лампочкой только 220 вольт, поэтому здесь я использовал зарядку от телефона. А для получения 3,3 вольт из 5, использовал вот такой вот линейный стабилизатора напряжения:

Модуль стабилизатора напряжения на 3,3 вольт
Модуль стабилизатора напряжения на 3,3 вольт

На его выходе будет 3.3 вольта как раз для питания платы ESP32-01. Собирать все буду на самой обычной монтажной плате:

Монтажная плата
Монтажная плата

Подключение и сборка

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

Схема подключения
Схема подключения

220 вольт подается на блок питания, с его выхода получается 5 вольт, далее 5 вольт подается на входы питание реле (VCC и GND) и на стабилизатор напряжения, где на выходе получается 3,3 вольта, + поступает на контакты VCC и CH_EN, GND на GND ESP8266-01. На вход IN1 подключается выход ESP8266-01 GPIO0, для управления реле. Лампочку я подключил между фазой (L) и нормально разомкнутым контактом реле (NO). Контакт COM подключил на нейтральный провод (N), контакт NC остается свободным.

Все элементы спаял на монтажной плате, получилось вот так:

Все компоненты в сборе
Все компоненты в сборе

Чтобы можно было быстро снять плату esp8266, припаял для нее вот такой разъем:

Разъем PBD-10 для ESP8266
Разъем PBD-10 для ESP8266

Пайка компонентов с обратной стороны монтажной платы:

Вид со стороны пайки
Вид со стороны пайки

Я соединил все так, чтобы контакты 220 вольт подключались в разъемы реле.

Установка компонентов на ПК и прошивка платы ESP8266

Теперь нужно залить управляющую программу в плату ESP8266-01. Для этого нужен USB - UART конвертер. Я пользовался таким:

USB-UART converter CH340E
USB-UART converter CH340E

Но есть такие, специально для этих плат:

ESP8266 CP2104 USB
ESP8266 CP2104 USB

Для прошивки мне понадобилась среда Arduino IDE: https://www.arduino.cc/en/software

Захожу на оффициальный сайт и скачиваю версию для Windows:

Скачивание среды Arduino
Скачивание среды Arduino

Устанавливаю Arduino IDE. С моего GitHub нужно скачать файлы: https://github.com/sasha1396/WiFi_Light.git

Здесь находится прошивка, библиотеки, драйвер для CH340E и прочие иллюстрации.

Открываю Arduino IDE. Там жму Файл - Открыть и выбераю скаченный файл прошивки Light_WIFI.ino или просто жмем на файл Light_WIFI.ino и Arduino IDE сама отроет проект. После выбора файла в программе может вылезти сообщение:

Сообщение при открытие файла
Сообщение при открытие файла

Просто жму ОК и программа открывает код прошивки. В коде вместо "********" пишу свои данные сети домашнего WiFi:

Прописать данные своей сети
Прописать данные своей сети

После этого жму кнопку Проверка в левом верхнем углу программы:

Кнопка проверки кода
Кнопка проверки кода

При удачной компиляции получаю сообщение внизу программы:

Сообщение об удачной компиляции
Сообщение об удачной компиляции

Теперь нужно прошить плату esp3266-01. Подключаю согласно схеме:

Соединение для прошивки платы
Соединение для прошивки платы

Порт GPIO0 во время прошивки подключается на GND, таким образом плата входит в режим загрузки.

Соединяю все через макетную плату:

Макетная плата
Макетная плата

Подключаю конвертер в USB компьютера, при необходимости, установить драйвер для UART конвертера. В Arduino выбераю Инструменты - Порт - COMn (в моем случае COM5):

Выбор COM порта
Выбор COM порта

После этого жму Загрузка:

Загрузка прошивки на плату
Загрузка прошивки на плату

Перед прошивкой после компиляции вылезет данное сообщение:

Перед прошивкой
Перед прошивкой

После соединения с платой, начнется загрузка прошивки:

Статус записи прошивки в %
Статус записи прошивки в %

После прошивки получаем сообщение:

Сообщение после прошивки
Сообщение после прошивки

В Arduino IDE выбераю Инструменты - Монитор порта:

Выбор монитора порта
Выбор монитора порта

Открывается такое окно:

Окно порта
Окно порта

Выбераю скорость 115200 бод:

Выбор скорости
Выбор скорости

Отключаю GPIO0 c GND, при этом все соединения с UART конвертером оставляю, выключаю питание и включаю снова, тем самым перезагружаю плату.

Тут нужно учесть, что после прошики, плата начнет потреблять больше тока, поэтому питания с UART конвертера может не хватать, поэтому лучше всего подать питание с внешнего источника 3,3 вольт, либо поставить в сборку реле с блоком питания и проверить там.

После включения платы, в окне монитора порта должно появится сообщение:

Получение IP адреса платы
Получение IP адреса платы

Копирую данный IP адрес и вставляю в строку браузера на телефоне или ПК и попадаю на такую страницу:

Страница управления светом
Страница управления светом

Нажимая на подчеркивающее слово Включить или Выключить, в зависимости от состояния, переключаем выход платы в ВЫСОКИЙ и НИЗКИЙ уровень, тем самым управляя реле, включая или выключая свет.

Установка и проверка на работоспособность

После прошивки вставляю ESP8266-01 в разъем на монтажную плату.

Я разместил данное устройство прям на светильник, подключив провода 220 вольт в разъемы реле:

Размещение устройства
Размещение устройства

И спрятал все это в чехле люстры:

Внешний вид с устройсвом
Внешний вид с устройсвом

Данное устройство можно разместить рядом с рубильником или внутри него, если позволяет место.

Теперь при включении рубильника, у меня подается питание на устройство и по-умолчанию плата включает лампу.

Видео как это работает:

Спасибо что дочитали до конца.

Ссылки на используемые комплектующие

Плата WiFi esp8266: http://alii.pub/5rrct6

Реле 5 вольт: http://alii.pub/5ryufu

Блок питания 220AC - 5VDC : http://alii.pub/5ryuvs

Стабилизатор напряжения: http://alii.pub/5ryv2s

USB-UART как у меня: http://alii.pub/5ryvad

USB-UART специально для esp8266: http://alii.pub/5ryvln

Монтажная плата коричневая: http://alii.pub/5ryvf8

Монтажная плата зеленая: http://alii.pub/5ryvhr