Добрый день, уважаемый читатель! Приветствую вас на очередной странице моего блога. В минувшие выходные, кроме всего прочего, провел операцию по пересадке “сердца” электронному “пациенту”, более-менее удачно, хотя и не без некоторых косяков. Но обо всём по порядку….
Краткий обзор
Пришла мне посылка от дядюшки Ляо, в которой была такая вот плата для очередной поделки, называется она ESP32_Relay_X4:
Вместе с ней была полечена другая версия ESP32_Relay_X8, уже с 8 реле, но без сетевого блока питания, для другого проекта “умной теплицы”:
Обе платы можно смело рассматривать как базовые платы для различных устройств домашней (и не только) автоматизации, подключив необходимую дополнительную периферию через двухрядные разъемы.
На самом деле есть версии платы с одним реле, двумя реле, четырмя реле и восемью реле. Ссылки на Ali (только в качестве примера, вы можете выбрать другого продавца, ссылки могут устареть):
- версия с 1 реле и блоком питания 220в
- версия с 2 реле
- версия с 4 реле и блоком питания 220в
- версия с 8 реле
Почему-то платка с двумя реле так же поставляется без блока питания 220в. Видимо из-за соображений компактности.
Платы поставляются в обычном антистатическом пакете, обернутом пупыркой, без каких-либо коробок и уплотнителей. Бюджетный вариант, так сказать. От флюса отмыты достаточно плохо, но не смертельно, просто пришлось “пройтись” еще раз ацетончиком:
Инструкции к ним никакой, да она, в общем-то и не требуется. Платы судя по всему, одного производителя, очень похожи, поэтому нет смысла рассказывать про них по отдельности. Но всё же отличия имеются.
Итак, что мы имеем?
- Сердцем плат является достаточно современная версия модуля ESP32-WROOM-32E с печатной антенной.
- Четыре или восемь реле с индикацией их состояния миниатюрными светодиодами. Схема управления реле не содержит оптронов, но на мой лично взгляд, она и не нужна вовсе, так что не буду записывать это в недостатки.
- Кнопка перевода контроллера в режим программирования, как обычно на выводе GPIO 0.
- Статусный светодиод, подключенный к GPIO 23. Его можно использовать для индикации состояния платы.
- Все выводы модуля ESP32 выведены на двухрядные разъемы 2 x 10 контактов плюс 6 – контактный разъем для прошивки. То есть вы сможете задействовать все выводы, которые возможно. Кроме, разумеется тех, что задействованы в управлении реле, “статусным” светодиодом и кнопкой прошивки.
- На обеих платах имеется стабилизатор на чипе LM2596S, поэтому плату можно запитать от любого источника напряжением от 7 до 30В.
- Более мелкая версия, кроме этого, имеет на борту встроенный блок питания от сети 220В. На версии с 8 реле потребляемый ток для такого БП слишком велик и его не стали проектировать.
- Клемники достаточно приличного качества, по крайней мере существенно лучше самых дешевых версий.
- Для прошивки потребуется любой конвертор уровней USB <-> TTL, у меня например такой:

К сожалению, у меня была самая что ни на есть бомжатская версия программатора, которая не умеет выдавать 3.3В на сигнальные выводы, поэтому пришлось приколхозить преобразователь уровней. Зато я спокоен за здоровье пациентов
По умолчанию в платы залита какая-то автономная прошивка, которая только и умеет, что щелкать релюшками по очереди, демонстрируя готовность к работе.
ESP32_Relay_X4
Все выводы подписаны с обратной стороны платы (нажмите для увеличения):
Задействованные “по умолчанию” выводы:
- GPIO 0 – кнопка “IO 0”
- GPIO 23 – светодиод
- GPIO 32 – реле 1
- GPIO 33 – реле 2
- GPIO 25 – реле 3
- GPIO 26 – реле 4
Остальное вы можете использовать по своему разумению, не забывая о некоторых ограничениях ESP32.
Не совсем только понятно, для чего на разъем прошивки выведено 5В вместо положенных 3,3В, и я не рискнул подключать его к адаптеру USB-TTL. Проверил, всё прошивается и отлично работает.
Эта версия платы отлично помещается в стандартный корпус на DIN-рейку, который можно относительно недорого заказать на том же Ali, но вот с подключением дополнительной периферии уже могут быть сложности:
ESP32_Relay_X8
Здесь, как и следовало ожидать, задействовано больше выводов:
- GPIO 0 – кнопка “IO 0”
- GPIO 23 – светодиод
- GPIO 32 – реле 1
- GPIO 33 – реле 2
- GPIO 25 – реле 3
- GPIO 26 – реле 4
- GPIO 27 – реле 5
- GPIO 14 – реле 6
- GPIO 12 – реле 7
- GPIO 13 – реле 8
Более “крупная” версия не имеет встроенного блока питания от сети 220В переменного тока, поэтому вам понадобится достаточно мощный, но можно не стабилизированный, источник питания от 7 до 30В.
Прошивка
Платы не имеют интерфейса USB, только UART0, только хардкор. Поэтому для прошивки потребуется любой преобразователь интерфейса USB <-> TTL, чтобы можно было подключить контроллер к контуперу. Главное – чтобы ваш преобразователь имел поддержку 3.3В на линиях данных, мой не умеет этого, поэтому пришлось припаять устройство согласования уровней TTL:
Подключить необходимо как минимум 3 провода:
- GND преобразователя – GND платы
- RX преобразователя – TX платы
- TX преобразователя – RX платы
Можно еще подключить вывод DTR к контакту EN платы, это позволит автоматически перезагрузить процессор после прошивки, но это не обязательно.
Для перевода контроллера в режим прошивки необходимо выполнить следующие действия:
- Нажать кнопки EN и IO0 одновременно
- Отпустить кнопку EN, удерживая IO0 нажатой
- Отпустить кнопку IO0
Сделать это можно в любое время, не обязательно в момент прошивки, можно и загодя. Если вы всё сделали правильно, можно нажимать UPLOAD в Arduino IDE или PlatformIO.
Перед прошивкой не забудьте подключить плату к источнику питания!
Операция пересадки сердца
Как я уже говорил большая версия у меня планируется для управления теплицей – два электропривода крыши и окна для проветривания, измерение влажности почвы, автоматический полив и наполнение поливочной емкости и т.д. Но теплица находится на значительном расстоянии от роутера и устойчивой связи не будет совершенно точно. Поэтому мне требовалась версия с внешней антенной. К сожалению, в продаже таких не было, и я решился на “пересадку сердца”.
Свободного “чистого” модуля ESP32-WROOM-32U у меня не оказалось, поэтому донором послужила платка ESP32-DevKitC v4. Нагрел паяльным феном, аккуратно поднимая шилом, модуль довольно легко отделился от платы – донора:
Затем вставил отпаянный модуль в специальную плату для прошивки чистых модулей, проверил работу, все хорошо. Можно припаивать на место.
А вот при отпайке модуля с ESP32_Relay_X4 возникли сложности – недогрел, вследствие чего 2 дорожки “поднялись” вместе с модулем и были безжалостно покалечены. Пришлось колхозить проводком:
Но в целом, операция по “передсадке сердца” в целом прошла успешно. Теперь можно подключать периферию, программировать логику и запускать в работу.
На этом пока всё, до встречи на сайте и на dzen-канале!
💠 Полный архив статей вы найдете здесь
Пожалуйста, оцените статью:
-= Каталог статей (по разделам) =- -= Архив статей (подряд) =-