Перейти к содержимому

Платы ESP32_Relay_X4 / X8 и операция по пересадке сердца

Добрый день, уважаемый читатель! Приветствую вас на очередной странице моего блога. В минувшие выходные, кроме всего прочего, провел операцию по пересадке “сердца” электронному “пациенту”, более-менее удачно, хотя и не без некоторых косяков. Но обо всём по порядку….

 


Краткий обзор

Пришла мне посылка от дядюшки Ляо, в которой была такая вот плата для очередной поделки, называется она ESP32_Relay_X4:

Версия с 4 реле

Вместе с ней была полечена другая версия ESP32_Relay_X8, уже с 8 реле, но без сетевого блока питания, для другого проекта “умной теплицы”:

Версия с 8 реле

Обе платы можно смело рассматривать как базовые платы для различных устройств домашней (и не только) автоматизации, подключив необходимую дополнительную периферию через двухрядные разъемы.

На самом деле есть версии платы с одним реле, двумя реле, четырмя реле и восемью реле. Ссылки на Ali (только в качестве примера, вы можете выбрать другого продавца, ссылки могут устареть):

Почему-то платка с двумя реле так же поставляется без блока питания 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В, я не рискнул. Проверил, всё прошивается и отлично работает.

Эта версия платы отлично помещается в стандартный корпус на 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 платы, это позволит автоматически перезагрузить процессор после прошивки, но это не обязательно.

Для перевода контроллера в режим прошивки необходимо выполнить следующие действия:

  1. Нажать кнопки EN и IO0 одновременно
  2. Отпустить кнопку EN, удерживая IO0 нажатой
  3. Отпустить кнопку IO0

Сделать это можно в любое время, не обязательно в момент прошивки, можно и загодя. Если вы всё сделали правильно, можно нажимать UPLOAD в Arduino IDE или PlatformIO.

Перед прошивкой не забудьте подключить плату к источнику питания!

 


Операция пересадки сердца

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

Свободного “чистого” модуля ESP32-WROOM-32U у меня не оказалось, поэтому донором послужила платка ESP32-DevKitC v4. Нагрел паяльным феном, аккуратно поднимая шилом, модуль довольно легко отделился от платы – донора:

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

А вот при отпайке модуля с ESP32_Relay_X4 возникли сложности – недогрел, вследствие чего 2 дорожки “поднялись” вместе с модулем и были безжалостно покалечены. Пришлось колхозить проводком:

Но в целом, операция по “передсадке сердца” в целом прошла успешно. Теперь можно подключать периферию, программировать логику и запускать в работу.

 


На этом пока всё, до встречи на сайте и на dzen-канале!

💠 Полный архив статей вы найдете здесь


Пожалуйста, оцените статью:
[ 5 из 5, всего 1 оценок ]

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

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