Универсальный дистанционный пульт
Wemos D1 mini.

Модифицированный универсальный пульт на базе модулей Wemos D1 mini.
Ранее я описывал универсальный пульт, и эти описания подходят для этого проекта, изменена только аппаратная часть и улучшена сама программа.

rarIR_pult_wemos (V11.0) - все в одном архиве 642 kb.

 


Описанию универсального пульта посвящены 6 страниц:

В проекте реализовано:

  • - формирование различных html страничек с функциями пультов управления;
  • - размещение единого пульта управления для разных однотипных устройств;
  • - сканирование и хранение IR команд для различных бытовых устройств;
  • - генерация IR кодов и передача со встроенного излучателя;
  • - ретрансляция IR кодов через WiFi на другие ESP модули;
  • - управление WiFi модулями;
  • - получение информации от других ESP8266 модулей через WiFi;
  • - возможность формирования макро команд управления устройствами;
  • - исполнение команд по расписанию на любой день года.
  • Добавлено

  • - редактор макрокоманд и расписания
  • - индикация управляющих команд и нажатых клавиш на пультах

Аппаратные средства и библиотеки:

Hardware/железо Software/программы Описание
Wemos D1 mini #include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <pgmspace.h> //PROGMEM
 
IR приемник
см. схему
#include <IRremoteESP8266.h> (pin D3)
IR излучатель
см. схему
#include <IRremoteESP8266.h> (pin D4)
SD card модуль
для Wemos
#include <SD.h>
#include <SPI.h>
  PIN GPIO
sck d5 14
miso d6 12
mosi d7 13
cs d8 15
RTC_DS3231 #include <Wire.h>
#include "RTClib.h"
скачать

Измененные html страницы


На рисунках отображены два пульта:
- MACRO, пульт для вызова макрокоманд;
- и пульт плеера MP3.

На пульте MACRO добавлена кнопка "РЕДАКТОР" для вызова странички с редактором , на которой можно редактировать и макрокоманды и расписание.

Добавлено поле с переключателями. Каждый переключатель относится к отдельному WiFi модулю с закрепленным IP адресом. Как правило, это WiFi розетки.
У переключателя есть три состояния:
- невидимый, если модуль выключен или с ним не поддерживается связь.
- выключен (движок слева);
- включен (движок справа).

Для определения состояния переключателей на текущий момент имеется кнопка "опрос". При первом нажатии опрашиваются все зарегистрированные IP адреса и информация заносится в память универсального пульта. При повторном нажатии информация отображается на страничке пульта.

При каждом нажатии кнопки "опрос" переключатели будут отображать состояние модулей на момент предыдущего нажатия кнопки "опрос".

В зависимости от количества модулей и общего состояния WiFi сети на получение информации от модулей может потребоваться несколько секунд или даже десятков. Поэтому для каждой конфигурации это будет свое значение и легко проверяется при соединении универсального пульта с COM терминалом.

Опция "обратная связь" обеспечивает опрос состояния WiFi модулей при каждом нажатии на переключатель. При этом реакция системы замедлится, так как необходимо время для установления связи с каждым модулем.

В пульте плеера MP3 добавлена кнопка записи текущего компьютерного времени в DS3231, поскольку в модуле MP3 отслеживается время и имеется бой часов. Кроме того имеется возможность установить будильник. Для сброса будильника необходимо установить время 00:00.

Для разгрузки WiFi сети можно отключить обратную связь - checkbox "ответ".

 

На всех пультах имеется информационное панно для отображения генерируемых команд и получаемой информации от других устройств системы.

В новой редакции, когда все html страницы загружаются с SDcard, для корректного обмена данными между сервером и браузером,
пришлось изменить формат записи макрокоманд и, как следствие, формат записи расписания.

Пульт редактора позволяет выбирать режимы:
- редактор расписаний:
   - на каждый день
   - на день недели
   - на произвольную дату
- редактор макрокоманд



DAILY - пульт расписания.
Описание основных функций смотрите здесь. На пульте DAILY дополнительно размещены кнопки для записи текущего компьютерного времени в DS3231 (SET TIME), и для обновления расписания (REFRESH) - это требуется после внесения изменений в редакторе расписания, который можновызвать кнопкой "РЕДАКТОР".

 

Включение модуля.

Как видно из схемы, в цепи ножек D3 и D4 модуля Wemos внедрен переключатель. При включении питания цепи должны быть разорваны, иначе уровень сигнала на этих выводах не позволит модулю произвести загрузку программы.
Включить переключатель можно сразу после запуска программы, когда загорится (или моргнет) индикатор на модуле Wemos (2-3 sec. после подачи питания).
Hosted by uCoz