MIDI-MT Документация на Русском языке
Для реализации объединения сетевых технологий
ArtNet, MQTT и DMX512
в единую систему управления световыми приборами можно использовать не
только оборудование известных производителей. Гораздо дешевле,
использовать для этих целей Arduino
подобные платы с
поддержкой технологии WiFi
, спроектированные на чтпсетах
ESP
, например ESP8266
, ESP32
и
т.д.
При этом, получается получить прибор с максимальными возможностями по
минимальной цене. Бюджет такого устройства обойдется в стоимость
примерно одного трекового светильника, другими словами, его стоимость
выйдет примерно в 10-15%
от цены аналогично фирменного
оборудования.
Одна из таких конструкций, служащая для расширения охвата сети умных устройств, работает под управлением программы MIDI-MT, для которой была специально разработана. Простота исполнения и наличие в широкой продаже электронных компонентов делают её универсальной.
Схематехника «Репитера» и «Конечной точки» очень проста, в тестовом
экземпляре используется готовая плата микроконтроллера, разработки LOLIN
(Wemos) на чипсете ESP8266
и готовую плату преобразователя
TTL
уровней в интерфейс RS485
. Ограничений
нет, можно использовать любые доступные аналоги.
Устройство «Репитер»
Устройство «Конечная точка»
DE
(data enable) к контакту на микроконтроллере
(Wemos - pin D2)RE
(receive enable) к контакту на микроконтроллере
(Wemos - pin D2)DI
(data in) соединить с D4/TX1 на микроконтроллере
(Wemos - pin D4)VCC
соединить с питанием 5VA
выход DMX сигнала, к шине управления освещением
(разъем XLR pin 3, разъем Ethernet pin 1)B
выход DMX сигнала, к шине управления освещением
(разъем XLR pin 2, разъем Ethernet pin 2)GND
земля, выход DMX, к шине управления освещением
(разъем XLR pin 1, разъем Ethernet pin 7,8)Устройства «Репитер» и «Конечная точка» используют HTTP
сервер, для получения конфигурации сети DMX512 в
json
формате. Имя json
файла конфигурации
составляется по следующей схеме:
имена art-dmx-XXX-XXX
относятся к устройству
«Репитер».
имена art-ep-XXX-XXX
относятся к устройству
«Конечная точка».
общая часть наименования: art-dmx
или
art-ep
имя хоста: art-dmx-1-2
или
art-ep-1-2
полное доменное имя: art-dmx-1-2.local
или
art-ep-1-2.local
, где цифры 1 и 2 являются частью IP адреса
выданного устройству: 192.168.1.2
имя файла конфигурации: art-dmx-1-2.json
или
art-ep-1-2.json
json
файла настроек устройств «Репитер» или «Конечная
точка»sub - полное название MQTT топика.
dmx - номер канала в сети DMX512.
{"mqtt":[
{"sub":"sensor/ctrl9/av9/slider","dmx":9},
{"sub":"sensor/ctrl9/b21/onoff","dmx":10},
{"sub":"sensor/ctrl9/b22/onoff","dmx":11},
{"sub":"sensor/ctrl9/b23/onoff","dmx":12}
]}
Один из вариантов размещения конфигураций, использовать встроенный
веб сервер в MQTT демоне mosquitto
. Для этого необходимо
разрешить использование веб-сокетов и прописать путь до каталога с
json
конфигурацией.
per_listener_settings true
listener 1883
protocol mqtt
socket_domain ipv4
user mosquitto
allow_anonymous false
retain_available true
use_username_as_clientid true
allow_zero_length_clientid true
auto_id_prefix auto-
queue_qos0_messages false
sys_interval 90
autosave_interval 1800
autosave_on_changes true
persistence true
persistent_client_expiration 1m
persistence_location /var/lib/mosquitto/
password_file /etc/mosquitto/pass.cfg
acl_file /etc/mosquitto/mosquitto.acl
pid_file /run/mosquitto/mosquitto.pid
log_dest syslog
log_type warning
listener 9001
protocol websockets
# путь до каталога с `json` конфигурацией
http_dir /srv/git/linuxconfig/mqttweb
topic read $SYS/#
pattern readwrite sensor/%u/#
pattern write $SYS/broker/connection/%c/state
# !!! добавить !!!
# имя (логин) репитера (art-dmx-XXX-XXX) или конечной точки (art-ep-XXX-XXX)
# для доступа в режиме чтения!
user art-dmx-0-11
topic read #
user art-ep-0-12
topic read #
# ваши права администратора на доступ к топикам.
user admin
topic readwrite #
Основные настройки находятся в файле config.h.default
.
Вам необходимо отредактировать его и переименовать в
config.h
.
Параметры:
USING_HTTP_AS_GW
- определяет местонахождение MQTT и
HTTP сервера как IP адрес WiFi гейта (роутер).
USING_HTTP_AS_HOST
- указывается IP адрес MQTT и
HTTP сервера, цифры вводятся через запятую, без пробелов.
USING_HTTP_PORT
- определяет порт HTTP
сервера.
USING_MQTT_SUBSCRIBE
- MQTT топик для подписки и
прослушивания.
USING_MQTT_PASSWORD
- пароль для MQTT сервера,
логином является имя узла, которое генерируется автоматически.
USING_MQTT_STATE
- MQTT топик для индикации
состояния устройства.
USING_MQTT_PORT
- порт MQTT сервера.
USING_MQTT_ID
- использовать расширенный MQTT
идентификатор, используется для работы с одной учётной записи нескольких
устройств, применять не рекомендуется.
DEBUG
- сборка кода в режиме отладки, с выводом на
USB Serial
. Не следует использовать на рабочем экземпляре,
так как создаётся дополнительная нагрузка на память
микроконтроллера.
SEND_DMX_CODE_T1
- варианты формирования заголовков
DMX пакета, изменять не рекомендуется.
PIN_ERROR
- контакт для подключения индикатора
состояния (Wemos - pin D1 светодиод).
Для устройства «Репитер»:
USING_ARTNET_FILTER
- пропускать из сети ArtNet только
DMX каналы указанные в конфигурации.PIN_RS485_UP
- контакт для активации интерфейса RS485
(Wemos - pin D2).PIN_RS485_TX
- контакт TX интерфейса RS485 (Wemos - pin
D4)Для устройства «Конечная точка»:
USING_MODE_ONOF
- определяет алгоритм управления
нагрузкой: реле или ШИМ модули. При использовании реле, значение должно
быть 1
. При использовании в качестве диммера, значение
должно быть 0
.PINS_OUT
- список контактов к которым подключена
нагрузка: реле или ШИМ модули (Wemos - pins: D2, D5, D6, D7).В задачи устройства «Репитер» входит собирать управляющую информацию о состоянии включения осветительных приборов из сетей ArtNet и MQTT, далее информация суммируется и передается по протоколу DMX в проводную сеть, через которую идет реальное управление освещением. Использование подразумевает наличие проводной сети DMX512 и точки подключения к ней.
Устройство «Конечная точка» обрабатывает данные полученные из сетей ArtNet и MQTT. Эти данные используються для физического управления блоками реле или диммерами подключенными к устройству.
Управление может осуществляться по протоколам ArtNet и MQTT. Стандартный режим работы, это одновременное использование протоколов ArtNet и MQTT для формирования исходящего DMX потока, или управления конечными устройствами.
Команды управления MQTT имеют преимущество перед командами ArtNet. Если ичточник был включен с помощью MQTT управления, его отключение может быть осуществлено только им. Это относится к любым регулировкам, как к включению и выключению, так и к регулировке яркости или изменения цвета. Напротив, если осветительный прибор был включен командами из ArtNet источника, дальнейшее управление могут взять на себя управляющие сигналы по протоколу MQTT.
Схемы и прошивки можно скачать тут.