Приветствую всех посетителей этой страницы. Если вы тут значит вы точно знакомы с МД проектом и хотите найти для себя правильные технологии. Я к сожалению на стадии написания данной статьи не могу ответить вам, что лучше. Готовые модули купленные на али или самодельные устройства которые я предпочитаю в виде ESP8266. Предпочитал… До этого момента. Использование WiFi это утопия в области управления и передачи данных по воздуху. Я о ненадёжности этого вида протокола познакомился уже как года два назад но всё думал, что ничего страшного не будет. Некоторые глюки WiFi модулей не сильно скажутся на работоспособности проекта МД. Как же я ошибался. Всё чем я занимался в последнее время это затыкал дырки в модулях WiFi. Придумывал костыли. И вот долго вынашивая идею ZigBee я решился на написание этой статьи и одновременного конструирования ZigBee шлюза и ZigBee реле взамен тех которые у меня собраны на WiFi ESP8266. Свой выбор я сделал на проекте, который очень активно развивается в сети Smart Logic System SLS. Всю данную статью я буду описывать из источников в которых уже чего то добились. Нет не чего то а очень много добились. Все ссылки на источники будут в низу страницы.Но давайте всё же попробуем понять что такое протокол ZigBee. И обратимся мы с вами вот к этому видео.
Я надеюсь данной вводной информации было достаточно для общего понимания ZigBee технологии. Автору данного видео отдельная благодарность.
И так предлагаю разделить этого огромного слона на много частей и заниматься каждой частью в отдельности но в рамках одной страницы. Так нам легче будет занести этого слона в нашу пещеру. И так примерный план действий который каждый из вас сможет разделить ещё на мелкие подзадачи.
- Конструирование SLS шлюза
- Конструирование ZigBee реле на 8 каналов.
Конструирование SLS шлюза
План действий по этому направлению будет следующий:
- Изучение принципиальной схемы.
- Разработка печатной платы
- Программирование модулей
И так представляю тут оригинальную принципиальную схему шлюза которую я буду дорабатывать путём исключения из неё всех невостребованных модулей в схеме.
Давайте разберём, что нам понадобиться оставить в схеме для построения шлюза в минимальной конфигурации.
- ESP-23-Wrover-B
- cc2538+cc2592 PA Zigbee
- USB-UART CH340E и его обвязка
- Блок аудио усилителя на SSM221
Для создания схемы и печатной платы я использую DipTrace. Архив со схемой и печатной платой + корпуса модулей я прилагаю. Скачать его можно вот тут. Ниже можно ознакомиться с моей облегчённой схемой.
Я надеюсь, что те кто может повторить всё выше описанное – может и гербер и плату изготовить. Если же нет тогда вам прямая дорога к вашим друзьям, которые помогут вам в этом. Как бы то ни было группа в телеграмм канале которая отмечена в верху странице всегда к вашему распоряжению. На этом этап схемотехники можно завершить. Переходим к программированию модулей.
Программирование модулей.
Для программирования модуля сс2538+сс2592 нам потребуется вот такой программатор:
Купить его можно вот по этой ссылке. Теперь нужно разобраться как же им пользоваться. Подключаем программатор к нашему модулю согласно приведённой схеме.
На выходе VTref присутствуют необходимые нам 3,3 вольта (внутри программатора установлен джампер) используем этот пин для питания модуля. Далее на сайт производителя и скачиваем ПО Далее запускаем J-Link Configurator и проверяем, что бы программа увидела программатор. У меня были танцы с бубном около суток пока я разобрался по какой причине у меня не устанавливаются драйвера для программатора. Все оказалось очень просто. Да же в новом, с виду отличном кабеле USB A/B бывают браки. В итоге подключив другой кабель, толстый, экранированный, всё очень замечательно заработало.
Далее загружаем программу J-Link Flash
выбираем создать новый проект…
выбираем интерфейс JTAG и устройство наш контролер CC2538SF53
Жмём OK. Должно быть примерно вот так как на скрине внизу.
Теперь открываем наш файл с прошивкой который можно скачать с GitHab. Последняя версия прошивки на момент написания статьи вот эта JH_2538_2592_ZNP_UART_20201010.hex
далее подключаем наш программатор из меню target->connect
Ну и завершающий этап это непосредственно программирование. Нажимаем F4 тем самым сотрём контроллер, далее жмём F5 и записываем *.hex в контроллер. Всё это есть в меню Target.
Вот мы и закончили программирование модуля CC2538. Теперь переходим к программированию модуля ESP32. Скачиваем с GitHab вот этот архив 20200724_16mb_full.rar
- Распаковываем его
- Нажимаем кнопку BOOT, держим её нажатой и включаем питание (втыкаем USB).
- Запускаем из распакованного архива файл сброса Clear.bat
- Перезагружаем наш шлюз. Можно нажать Reset можно передёрнуть питание. Так же с нажатой кнопкой BOOT подключаем питание и запускаем из архива файл Flash.bat
- Перегружаем наш шлюз уже без нажимания на кнопку BOOT и проверяем в списке WiFi сетей, должна появиться сеть с именем ZGWxxx
Ну вот и запрограммировали мы все модули. Теперь переходим к конфигурации нашего шлюза. Инструкция по которой я это делал находиться вот тут. Но я продублирую настройку на базе своего шлюза. После подачи питания на шлюз, он создаст сеть с именем ZGWxxx. Подключаемся к ней и не даем нашему телефону или компьютеру возможности подключиться к другой сети. Так как при подключении к сети ZGWxxx у нас не будет интернета.
далее в строке адреса вашего браузера вводим IP адресс 192.168.1.1 и попадаем в WEB интерфейс нашего шлюза.
в меню переходим в раздел настройки вашей домашней WiFi сети Settings -> WiFi
Вводим тут данные вашей сети и сохраняем. Перед дальнейшими действиями вам нужно перегрузить ваш шлюз дав ему возможность подключиться к вашей домашней WiFi сети. После перезагрузки шлюза, любым удобным для вас способом определите какой IP адрес предоставил ваш роутер вашему шлюзу. Я для этого использовал данные самого роутера. Вы можете использовать любую удобную программу для сканирования IP адресов к примеру Advanced IP Scanner. Узнав адрес вашего шлюза переходим по нему и продолжаем настройку.
Далее переходим к настройке устройств вашего шлюза, а именно конфигурации связи между ESP32 и CC2538. А так же конфигурация подключения RGB светодиода. Настраиваем так как у меня. Я надеюсь, что логику тут все поймут. Кстати в своей схеме я не использовал светодиод. После полной и окончательной настройки SLS я его подпаяю проводами.
Сохраняемся и переходим непосредственно к настройке подключения шлюза к нашему MQTT серверу.
Я привёл типовые настройки для примера. Вы по аналогии сможете всё повторить.
Ну вот и всё. Теперь идем в MQTT брокер вашего MD и продолжаем настройку. К сожалению я ещё не подключил ни одно устройство в SLS шлюзу так как не собрал ещё ZigBee реле. Поэтому не могу вам предоставить информацию в картинках как к шлюзу подключаются различные виключатели, лампочки, термометры и так далее. В этой статье я продолжу рассказывать о том как собрать ZigBee реле на 8 каналов. Мы научимся подключать собранное реле к нашему шлюзу. И не только реле но и различные умные устройства. На этом первая часть закончена. Всем спасибо за внимание. И с наступающим всех Новым 2021 Годом. Ура товарищи. 🙂
Ссылка на источник. https://modkam.ru/?p=1188