Радиоуправление нагрузкой c обратной связью[готовое решение]

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Ответить
zoz
Сообщения: 74
Зарегистрирован: Чт авг 11, 2016 1:19 am
Откуда: Киев
Благодарил (а): 6 раз
Поблагодарили: 41 раз

Радиоуправление нагрузкой c обратной связью[готовое решение]

Сообщение zoz » Пт дек 15, 2017 11:12 pm

Радиоуправление нагрузкой c обратной связью без изменения проводки или noolite для бедных

ВНИМАНИЕ! СТАТЬЯ УТРАТИЛА АКТУАЛЬНОСТЬ.
для обратной связи радио реле рекомендую использовать отдельный модуль (мк + 433 передатчик)
viewtopic.php?f=23&t=5035



Внешний вид на фото

Элементы системы:
Радиореле (должно иметь 3 режима работы).
Радио-выключатель сделанный из пульта.
Приемо-передающий модуль ESP8266 + приемник 433 + передатчик 315, прошивка wifi-iot. (антена для 433-17см, для 315- 24см)

Установка (как и noolite)
Замыкаем в коробке выключателя провода, реле монтируем в люстру(предварительно обучив всем сигналам), радио-выключатель клеим на стену.

Логика работы:
Пульт НЕ управляет напрямую реле, код принимает ESP и его передает в МД. Прошивка позволяет при получении одного RC кода сразу отправить другой код переключения на реле Code01(реализовано в прошивке: нужно назначить ремап GPIO140 и при получении кода его вызвать, а в настройках ремапа GPIO140 прописать код переключения реле Code01). После отработки метода выключателя в МД также прилетает код включенного code02 (или выключенного реле code03) для уверенности и коректировки статуса.


Настройка:
-в радиореле нужно настроить 3 команды:
код переключения Code01, код включения Code02, код выключения Code03
-В мд на команду с пульта code2001 прописать метод обработки:

Код: Выделить всё

$rc=gg('ESP10.rcdata');
DebMes("RC  command:".$rc);
if ($rc == '2001') 
{callMethod("Relay03.switch"); }
также прописать метод выключателя ON OFF
или через GPIO /gpio?st=1&pin=141 (удобно если уже есть метод для реле подключенных напрямую к ESP)
или через гет запрос отправки кода /rcremote?cmd=code1

-коды с пульта и для реле прописать в настройках ESP
RCswitch options: GPIO 140 KEY 2001 (код выключателя)
RCswitch TX options: (настройка ремапа GPIO)
GPIO 140 OFF: Code01 ON: Code01
также указать еще один ремап на вкл выкл и тогда с МД можно управлять через гет запрос /gpio?st=2&pin=141
GPIO 141 OFF: code03 ON: code02

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

Желательно не использовать дешевый приемник (такой как на первом фото) они ловят много помех от самого ESP. Приемник как на картинке со схемой работает намного лучше

Отдельно желательно еще привязать какой-то пульт для управление напрямую реле на те случаи когда ESP не будет работать.

Прошивка wifi-iot позволяет одним модулем управлять 10ю реле и принимать кода с 20ти выключателей.

ИЗ недостатков:
-не кодированный сигнал, но для управления светом вполне подходит (и вы всегда можете поменять все кода (если пульт обучаемый))
-для работы нужен постоянно работающий ESP модуль (плата за обратную связь)
-есть небольшая задержка которая связана с передачей и детектированием кода (но это у всех радиовыключателей)
Вложения
DSCN20803.jpg
DSCN20803.jpg (497.65 КБ) 2474 просмотра
relay.jpg
relay.jpg (173.39 КБ) 2474 просмотра
Домик Алисы - Orange Pi PC, DietPi | +BroadlinkRM+esp8266(espEasy)+zigbee(sonoff,Aqara)
Ответить