Модуль управления освещением

Web site


Модуль управления освещением

Модуль предназначен для установки в контролер SLS DIN Mini.

Модуль добавляет следующую функциональность:

  • DALI-мастер интерфейс

  • DALI блок питания шины

  • Выход 0-10В (2шт)

  • Выход 0-20mA (2шт)

Внешние клеммы

1) CH1 OUT 0-10V (IO32) 2) CH2 OUT 0-10V (IO35) 3) CH3 OUT 0-20mA (IO26) 4) CH4 OUT 0-20mA (IO27) 5) DALI + 6) DALI -

DALI интерфейс

Для инициализации интерфейса достаточно добавить в скрипт init.lua следующий вызов:

dali.begin()

Инициализация (сброс) устройств DALI и раздача коротких адресов:

dali.init()

Сканирование шины DALI для поиска устройств (с короткими адресами), результат поиска с типами устройств выводится в консоль и как возвращаемое значение:

dali.scan()

Отправка команды на выключение всех устойств:

dali.off()

Смена адреса устройства с 1 на 36:

dali.setaddr(1, 36)

Отправка команд реализована через функцию dali.cmd(cmd, params)

где:

  • cmd (string) - содержит имя команды из таблицы ниже
  • params (table) - параметры команды

Параметры:

  • addrtype (string) - тип адреса, необходимо для адресуемых команда, возможные значения: short, group, broadcast
  • address (number) - короткий адрес или группа
  • value (number) - параметр

Возвращаемый результат

Если команда не возвращает результат, то возвращает true, если должна возвращать, но произошла ошибка, возвращает nil и код ошибки.

Коды ошибок:

  • -4 receive timeout
  • -3 unknown command
  • -2 unknown addrType
  • -1 ok, no return
  • 0-255 return

Команды

Команда Описание Адресуемая С ответом Диапазон
- arc Прямое управление яркостью *   0..254
0 off Выключает устройство *    
1 up   *    
2 down   *    
3 stepup   *    
4 stepdown   *    
5 recallmax Устанавливает максимальную яркость *    
6 recallmin Устанавливает минимальную яркость *    
7 stepdownoff   *    
8 stepupon   *    
16-31 gotoscene Запускает сцену *   0..15
32 reset Сбрасывает сохраненные параметры, кроме адреса *    
42 storemax Задает максимальный лимит яркости из DTR *    
43 storemin Задает минимальный лимит яркости из DTR *    
44 storesystemfailure Задает яркость при аварии шины DALI из DTR *    
45 storepoweron Задает яркость при подаче питания из DTR *    
64-79 storescene Сохраняет значение DTR как сцену *   0..15
80-95 removescene Удаляет сцену *   0..15
96-111 addtogroup Добавляет устройство в группу *   0..15
112-127 removefromgroup Удаляет устройство из группы *   0..15
128 storeshortaddress   *    
144 querystatus   * *  
152 querydtr   * *  
153 querydevicetype Возвращает тип устройства * *  
160 queryactual Возвращает текущую яркость * *  
161 querymax Возвращает максимальный лимит яркости * *  
162 querymin Возвращает минимальный лимит яркости * *  
163 querypoweron Возвращает яркость при подаче питания * *  
164 querysystemfailure Возвращает яркость при аварии шины DALI * *  
176-191 queryscene Возвращает значение сцены * * 0..15
192 querygroupslow Возвращает битовую маску групп в которых состоит 0-7 * *  
193 querygroupshigh Возвращает битовую маску групп в которых состоит 8-15 * *  
- setdtr Сохраняет значение в DTR     0..255

Отправка команды изменения яркости на 30 на устройство с коротким адресом 5:

dali.cmd('arc', { addrtype = 'short', address = 5, value = 30 })

Получает значение яркости для устройства с адресом 1:

print(dali.cmd('queryactual', { addrtype = 'short', address = 1 }))

Если на шине только одно устройство, назначает ему адрес 42:

address = 42
dali.cmd('setdtr', { addrtype = 'broadcast', value = address * 2 + 1 })
dali.cmd('storeshortaddress', { addrtype = 'broadcast' })

Устанавливает минимальное значение яркости 100 для устройства с адресом 1:

dali.cmd('setdtr', { addrtype = 'broadcast', value = 100 })
dali.cmd('storemin', { addrtype = 'short', address = 1 })

Управление через MQTT (с версии 2021.11.21d12)

Топик: xxx/dali/{addrtype}/cmd/{cmd}

Сообщение (опционально): value

где xxx - префикс шлюза

Результат отправки команды публикуется в топике xxx/dali/result

Отправка команды изменения яркости на 30 на устройство с коротким адресом 5:

Topic: xxx/dali/5/cmd/arc 
Payload: 30

Отправка команды выключения на все устройства в группе 0:

Topic: xxx/dali/g0/cmd/off 
Payload:

Отправка команды выключения на все устройства:

Topic: xxx/dali/broadcast/cmd/off 
Payload: