Dmx-Priest: Проигрыватель И Рекордер Dmx-Пресетов Для Осветительного Оборудования.



Ситуация Я волонтер в небольшой организации, мы организуем вечеринки, концерты и т. д. У нас дорогой пульт управления освещением (Аволитес Титан Кварц).

Используем его только для больших выступлений и ручного управления.

Пульт подключается к устройству LAN2DMX (dmXLAN Buddy), которое преобразует протокол Art-Net в сигнал, понятный устройствам DMX. Нам нужно было устройство, которое могло бы записать программу с основной консоли, а потом бесконечно проигрывать этот пресет. Он должен быть простым в использовании без необходимости вынимать и обслуживать дорогостоящее и сложное оборудование.



Решение



Железо

  • Raspberry Pi. Наверное любая версия подойдет. Я использовал второй, который у меня был
  • ЖК-экран.

    Я использовал 16x2 с уже прикрепленным экраном I2C.

  • Роторный энкодер.

    Что-то, что можно крутить и нажимать в качестве инструмента ввода.

    Купил в готовом виде, со всеми резисторами.

  • Джемперы.

    Или просто провода, если намертво припаять к гребенке RPi

  • Мелочи: чехол, микрокабель USB, кнопка включения.



Подключение

Отображать :
  • Земля к контакту 6 (земля)
  • VCC к контакту 4 (питание 5 В)
  • SDA на контакте 3 (GPIO 2)
  • SLC на контакте 5 (GPIO 3)
Вращаться :
  • CLK на контакте 12 (GPIO 18)
  • DT на контакте 13 (GPIO 27)
  • SW на контакте 11 (GPIO 17)
  • + на контакте 1 (питание 3V3)
  • Земля к контакту 14 (земля)
Питание : Я просто отсоединил кабель микро USB и припаял кнопку.

Разъем питания круглый вынес, так удобнее пользоваться.



Программное обеспечение



Ось

Берем стандартную ОС Raspberry Pi (32-бит) Lite и устанавливаем ее на SD с помощью Etcher. Добавьте файл «ssh» в /boot, чтобы включить SSH, поскольку вы не хотите подключать монитор и клавиатуру.

SSH к RPi:

  
  
  
  
  
  
  
  
  
  
  
   

youruser@homepc:~ $ ssh pi@[Pi-IP-address]

Обновим на всякий случай:

pi@raspberrypi:~ $ sudo apt-get update pi@raspberrypi:~ $ sudo apt-get dist-upgrade



Открытая архитектура освещения

Устанавливаем пакеты для сборки сердца нашего устройства — Open Lightning Architecture.

pi@raspberrypi:~ $ sudo apt-get install git autoconf libtool bison flex uuid-dev libcppunit-dev python-protobuf python-numpy protobuf-compiler libmicrohttpd-dev libprotoc-dev i2c-tools python3-smbus python3-gpiozero python3-pip3 pi@raspberrypi:~ $ git clone https://github.com/OpenLightingProject/ola.git pi@raspberrypi:~ $ cd ola

скомпилировать и установить.

Мне лень собирать пакеты, и я надеюсь, что после окончания проекта никто и никогда не заглянет внутрь.

займет много времени.

Я оставил его на RPi 2 и медленной SD-карте на ночь.



pi@raspberrypi:~/ola $ autoreconf -i pi@raspberrypi:~/ola $ .

/configure --enable-rdm-tests pi@raspberrypi:~/ola $ make pi@raspberrypi:~/ola $ sudo make install

Загрузите библиотеки и проверьте их работоспособность:

pi@raspberrypi:~/ola $ sudo ldconfig pi@raspberrypi:~/ola $ olad -l 3

пойдем http://[Pi-IP-address]:9090/ola.html и увидеть, что все открывается.

На самом деле нам не нужен веб-сервер; мы можем обмануть его в файле конфигурации сборки и собрать без него.

давайте создадим сервис для systemd

pi@raspberrypi:~ $ sudo nano /etc/systemd/system/olad.service [Unit] Description=OLA daemon After=network.target StartLimitIntervalSec=0 [Service] Type=simple Restart=always RestartSec=1 User=pi ExecStart=olad [Install] WantedBy=multi-user.target

и поставь в автозагрузку

pi@raspberrypi:~ $ sudo systemctl start olad pi@raspberrypi:~ $ sudo systemctl enable olad



I2C

вам нужно включить I2C для взаимодействия с дисплеем

pi@raspberrypi:~ $ sudo raspi-config

Внутри «Параметры интерфейса» > «I2C» > «включить», а затем перезагрузиться.

Смотрим адрес дисплея на шине I2C, он нам понадобится

pi@raspberrypi:~/dmx-priest $ sudo i2cdetect -y 1

У меня был 3f, его нужно будет прописать в RPi_I2C_driver.py. По идее, лучше было бы прочитать системную переменную из программы, но мне было лень доделывать это после того, как всё заработало.



Статический IP

Какие-то приставки я могу транслировать, какие-то нужно прописывать вручную, поэтому сделаем статический IP по адресу, понятному и доступному для всех dmx-устройств.



pi@raspberrypi:~ $ sudo nano /etc/dhcpcd.conf # Example static IP configuration: interface eth0 static ip_address=2.150.43.69/24 static routers=2.124.1.1 static domain_name_servers=2.124.1.1



DMX-священник

Самописная программа для работы с дисплеем, спиннером и олой.

Python не знаю, пиар приветствуется.

Тянет ola_patch, чтобы настроить его на ввод (для записи с консоли) или вывод (для самостоятельной работы).

Использует ola_recorder для записи и воспроизведения.

Установить:

pi@raspberrypi:~ $ sudo pip3 install git+ https://github.com/Virusmater/dmx-priest

Добавить в автозагрузку:

pi@raspberrypi:~ $ nano /etc/systemd/system/dmx-priest.service [Unit] Description=dmx-priest Requires=olad.service After=network.target olad.service StartLimitIntervalSec=0 [Service] Type=simple Restart=always RestartSec=1 User=pi ExecStart=dmx-priest [Install] WantedBy=multi-user.target pi@raspberrypi:~ $ sudo systemctl start dmx-priest pi@raspberrypi:~ $ sudo systemctl enable dmx-priest



Давайте использовать это



dmx-priest: проигрыватель и рекордер DMX-пресетов для осветительного оборудования.
</p><p>

  • Поверните вправо 20 раз, чтобы найти режим записи.

    20 раз, чтобы пользователи случайно ничего не записали.

    Надпись на дисплее: «Режим записи – нажать ручку».

  • Нажмите: «Готовы к записи – нажмите, чтобы начать»
  • Подготавливаем основную консоль к воспроизведению.

    Мы настаиваем на правильном освещении

  • Нажмите, чтобы начать запись: «Идет запись – нажмите, чтобы остановить»
  • Ждем некоторое время, в зависимости от программы на главной консоли.

  • Нажмите, чтобы остановить запись.

    Возвращает нас обратно в меню: «Режим воспроизведения – нажать ручку»

  • Нажмите, чтобы войти в меню воспроизведения.

    Свежий записанный пресет будет иметь формат ГГГГ.

    мм.

    дд ЧЧ:ММ.

  • Нажмите на пресет или нажмите 99_blackout, чтобы выйти и выключить весь свет.


Источники

https://github.com/Virusmater/dmx-priest Теги: #Сделай сам или Сделай сам #Raspberry Pi #Разработка на Raspberry Pi #dmx-512 #dmx #открытая архитектура освещения
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.