АПК Синапс v1.0. ПО. Спецификации на разработку
Последнее изменение: 14.12.2025, 13:26 МСК
Оперативное управление - действия пользователя для изменения состояния и работы освещения здесь и сейчас.
При оперативном управлении выполнение команд, идущих в линию DALI, не проверяется. В режиме "выстрелил - забыл" после отправки команды прошивка сразу вносит измениеня в USM и отправляет ответную телегу приложению.
1. Изменение яркости, цвета, температуры светильника
1.1. Приложение отправляет телеграмму с изменением полей светильника:
- LUMINAIRES[i].VAL_BRIGHT = значение яркости;
- LUMINAIRES[i].VAL_TW = температура белого;
- LUMINAIRES[i].VAL_R, VAL_G, VAL_B, VAL_W = цвета.
1.2. Прошивка отправляет DALI-команду установки параметров светильнику.
1.3. Прошивка должна обновить вверх по иерархии выставленные сцены у:
- LUMINAIRES[i].SCENE_NUM
- GROUPS[].SCENE_NUM - куда входит светильник (если входит)
- LOCATIONS[].SCENE_NUM - куда входит светильник (если входит)
- CONTROLLERS.SCENE_NUM
Если выставленная в таблице сцена неактуальна, поле сбрасывается в -1 (сцена не определена)
1.3. Если светильник находится в локации с включённым АВТО, оперативное управление временно переводит LOCATIONS[loc].IS_AUTO = 0.
1.4. Возврат в режим АВТО происходит при срабатывании датчика присутствия в этой локации. Но это уже другая история.
2. Включение сцены
2.1. Включение сцены может быть:
- У отдельного светильника;
- У группы светильников (=> всех светильников группы);
- У локации (=> всех групп и светильников локации);
- У всего контроллера (=> всех светильников, групп и локаций).
2.2. Приложение отправляет телеграмму с изменением:
- LUMINAIRES[i].SCENE_NUM = N (для светильника);
- GROUPS[i].SCENE_NUM = N (для группы);
- LOCATIONS[i].SCENE_NUM = N (для локации);
- CONTROLLERS.SCENE_NUM = N (для контроллера).
2.3. Прошивка при включении сцены у:
- Светильника:
- ставит LUMINAIRES[i].SCENE_NUM в своем USM
- меняет у светильника в USM параметры VAL_...
- проверяет сцены вверх по иерархии: не надо ли у группы —> локации —> контроллера тоже поменять .SCENE_NUM (выставить конкретную сцену вместо -1, если у всех детей эта кнокретная сцена)
- Группы:
- ставит GROUPS[i].SCENE_NUM и соотв. LUMINAIRES[].SCENE_NUM в своем USM
- меняет у светильников группы в USM параметры VAL_...
- проверяет сцены вверх по иерархии: не надо ли у локации —> контроллера тоже поменять .SCENE_NUM (выставить конкретную сцену вместо -1, если у всех детей эта кнокретная сцена)
- Локации:
- ставит LOCATIONS[i].SCENE_NUM и соотв. GROUPS[].SCENE_NUM и соотв. LUMINAIRES[].SCENE_NUM в своем USM
- меняет у светильников локации в USM параметры VAL_...
- проверяет сцены вверх по иерархии: не надо ли у контроллера тоже поменять .SCENE_NUM (выставить конкретную сцену вместо -1, если у всех детей эта кнокретная сцена)
- Контроллера:
- ставит CONTROLLERS.SCENE_NUM (также в LOCATIONS => GROUPS => LUMINAIRES) в своем USM
- меняет у светильников в USM параметры VAL_...
2.4. Если у группы есть привязанный датчик освещённости, включение сцены переводит группу в режим поддержания целевой освещённости.
3. Включение/выключение режима АВТО
3.1. У локации: приложение отправляет телеграмму с изменением LOCATIONS[i].IS_AUTO = 1 или 0.
3.2. У контроллера: приложение отправляет телеграмму с изменением CONTROLLERS.IS_AUTO = 1 или 0.
3.3. Если АВТО выключается — датчики перестают влиять на освещение. Если АВТО включается — датчики начинают отрабатывать действия.