tthRelay — делаем полоумное WiFi реле на ESP8266
- Цена: $4
Хотите реле которое умеет контролировать нагреватели, холодильники, увлажнители, осушители, включать электроприборы по расписанию и много чего еще? Тогда прошу под cut…
За $4 вы получите:
— ручной режим, включение/выключение
— по времени от чч: мм до чч: мм
— по температуре (охлаждение/обогрев) с регулируемым гистерезисом и приоритетом по времени от чч до чч
— по влажности (увлажнитель/осушитель) с регулируемым гистерезисом и приоритетом по времени от чч до чч
— поддержка нормально разомкнутого/нормально замкнутого реле
— режим эмуляции кнопки без фиксации, с регулируемым временем нажатия от 150 миллисекунд до 500 миллисекунд и шагом 50 миллисекунд
— поддержка сенсоров AHT1x/AHT2x и HTU2xD/SHT2x/Si70xx
— регистратор температуры и влажности на флэш-память SPI с графиками, до 400 КБ (этого достаточно для хранения годового отчета с шагом 30 минут)
— при выходе из строя датчика, реле переходит в выключенное состояние и рабочими остаются только режим по времени и ручной
— если подключены два датчика с разными адресами и один выходит из строя, то во время перезагрузки второй датчик будет использован автоматически
— hostname WiFi клиента используется в качестве ID реле, в сети может находиться не ограниченное количество реле при условии, что все они имеют разные hostname
— web интерфейс (Bootstrap + jQuery)
— автоматическая синхронизация с NTP серверами или в ручную со временем из браузера
— автоматически переход с летнего на зимнее и обратно
Реле предоставляется «КАК ЕСТЬ» без каких-либо гарантий. Не оставляйте без присмотра. Автор, не несет ни какой ответственности если у вас что-то пошло не так.
Для сборки нам понадобятся:
— Один модуль на ESP8266. Например WeMos Mini D1 за $1.83
— Реле на 5в с обвязкой, например Single channel relay module 5v, за $0.54
— Цифровой датчик температуры и влажности AHT1x/AHT2x или HTU2xD/SHT2x/Si70xx, например AHT10 за $0.97
Качаем мой проект с GitHub и соединяем весть зоопарк по схеме.
Чтобы реле не давало помехи при переключении, питать устройство лучше по топологии звезда (не используя USB порт WeMos Mini D1). У ESP8266 только два нормальных пина ведущих себя адекватно во время загрузки — это GPIO4/D2 и GPIO5/D1. Все остальные меняют свое состояние. Подробно об этом тут. Чтобы предотвратить ложные срабатывания реле, во время старта ESP8266, нужно добавить RC фильтр 680Ом/220мФ с постоянной времени длиннее чем переходные процессы на GPIO.
Прошиваем ESP8266 с помощью Flash Download Tools. Предварительно выставив:
— SPI speed 80MHz
— SPI Mode QIO
— Flash Size 32Mbit
— поставить галку DoNotChgBin
— адрес для fw_latest.bin 0x00000
— адрес для fs_latest.bin 0x200000
Если вы все сделали правильно, то после прошивки и нажатия reset у вас должна появится новая точка доступа tthRelay. Подключитесь к ней введя пароль 12345678. После удачного подключения введите в браузере 192.168.4.1 и в появившемся окне User name: admin и Password: 12345678.
Про базовые настройки Access Point Config, Server Config, Station Config и NTP Config читаем в обзоре моих WiFi часов — MatrixClock. В конце не забываем нажать на Save и Reboot.
После того как реле подключится к вашему роутеру — WiFi точка доступа tthRelay пропадет. Если у вас Windows 10, то в браузере набираем tthRelay.local/. На Android и Win7 используйте IP-адрес реле вместо mDNS. Его можно найти в логах UART на скорости 115200 бит/с или в админке вашего роутера.
Идем в Sensor или Settings -> Sensor Config выбираем тип сенсора, порты и скорость обмена согласно схеме. Жмем Save и Reboot. Внимание — чем выше скорость, тем короче должны быть провода от сенсора до ESP8266. Рекомендуемые частоты 100KHz..400KHz, на очень длинных проводах допускается 10KHz. Учтите, что на низких скоростях датчику приходится работать дольше и он начинает разогревать сам себя искажая результаты.
Если вы все сделали правильно на главной странице появится информация о текущей температуре, относительной влажности, точки росы и абсолютной влажности.
Заходим во вкладку Relay или Settings -> Relay Config выбираем режим — ручной, по времени, по температуре или по влажности. Дальше выбираем время и дни недели для Time mode, желаемую температуру, гистерезис, время для Temperature mode и желаемую влажность, гистерезис, время для Humidity mode. В подменю Advance настраиваем порт к которому подключено реле, полярность сигнала для срабатывания реле, выбираем длительность импульса если нужна эмуляции кнопки без фиксации. Жмем Save и Reboot.
Если нужен журнал с графиками изменения температуры и влажности идем в Settings -> Recorder Config выбираем частоту выборки, жмем Save и Reboot. Максимальный размер журнала 400КБ. Этого достаточно для хранения годового отчета с шагом 30 минут. После его заполнения он автоматический стирается и на его место пишется новый. Для тех кто любит все хранить есть кнопка Backup data. Формат записи очень простой и не является секретом, если будет нужно расскажу.
Для просмотра графиков кликаем на Settings -> Recorder Data
Данная прошивка также должна работать на Sonoff Basic R1 (первой ревизии) и Sonoff TH10/TH16 с сенсором Si7021. С небольшой доработкой можно использовать WiFi Relay module на ESP-01S. Нужно заменить флеш с 1МВ на 4МБ и добавить RC фильтр. Как и куда подключать датчик смотри readme на Github.
- Nitecore NU25. Налобник для легкохода.
- Генератор сигналов UNI-T UTG932E и его апгрейд до UTG962E
- Простенький тестер автомобильного аккумулятора
- Мини ПК Bmax B2 Plus. Компактный, тихий, холодный.
- Часы с NTP синхронизацией, 6 режимами отображения, датчиком освещенности.
- Складной нож HUOHOU за 7,99$
- 50.99$ Фонарь CONVOY L6 3500LM High CRI
- Электронная книга ONYX BOOX Faust 4
- 2 шт. SSD-дисков на 128Гб за 2280 руб. ($31)
- 11.49$ за 2 шт. литиевых аккумулятора 1,5В АА