АПК Синапс v1.0. ПО. Спецификации на разработку
Последнее изменение: 14.12.2025, 13:26 МСК
1. Датчики присутствия
1.1. Прошивка ждёт сигнала от датчиков присутствия в линии DALI по прерываниям.
1.2. При регистрации события присутствия на датчике i:
- Прошивка проверяет CONTROLLERS.IS_AUTO. Если 0 — игнорирует событие.
- Прошивка проверяет, в какой локации находится датчик (PRES_SENSORS[i].LOCATION_ID).
- Если датчик в локации — проверяет LOCATIONS[loc].IS_AUTO. Если 0 — игнорирует событие.
- Если датчик в корне — событие обрабатывается при CONTROLLERS.IS_AUTO = 1.
- Прошивка выполняет действие PRES_SENSORS[i].ACTION_OCCUPANCY_ID.
1.3. При регистрации события отсутствия на датчике i:
- Аналогичные проверки флагов АВТО;
- Прошивка выполняет действие PRES_SENSORS[i].ACTION_VACANCY_ID.
1.4. Действие отсутствия срабатывает через задержку PRES_SENSORS[i].HOLD_TIME.
1.5. Если есть желание деактивировать отдельный датчик — у него убираются действия (ACTION_OCCUPANCY_ID = -1, ACTION_VACANCY_ID = -1).
2. Датчики освещённости
2.1. Прошивка ждёт сигнала от датчиков освещённости в линии DALI по прерываниям.
2.2. Если у датчика i назначена группа (BRIGHT_SENSORS[i].GROUP_ID != -1):
- Прошивка проверяет флаги АВТО аналогично п. 1.2;
- Прошивка считывает текущую освещённость с датчика;
- Прошивка сравнивает с целевой освещённостью для текущей сцены группы;
- Если отклонение больше порога — прошивка корректирует яркость светильников группы (DALI-команды). Размер и частота корекции будут опрделены позже экспериментально.
2.3. Подкрутка яркости работает только если у группы включена одна из сцен 0-4: GROUPS[i].SCENE_NUM != -1.
2.4. Подкрутка яркости работает только если целевая яркость у сцены в датчике BRIGHT_SENSORS[i].SCENE_BRIGHTNESS_x не выствлениа в -1.
2.5. В подкрутке яркости участвуют только диммируемые светодиодные (тип 6) светильники.
2.6. Любое изменение яркости группы, отличное от включения сцены, отключает подкрутку до следующего включения сцены.
2.7. Если есть желание деактивировать датчик — у него убирается привязка к группе (GROUP_ID = -1).
3. Логика режима АВТО
3.1. Главный флаг АВТО (CONTROLLERS.IS_AUTO):
- Если
0— все датчики игнорируются; - Если
1— работают флаги АВТО локаций.
3.2. Флаг АВТО локации (LOCATIONS[i].IS_AUTO):
- Если
0— датчики этой локации игнорируются; - Если
1— датчики локации отрабатывают действия.
3.3. Устройства в корне (без локации):
- Работают при CONTROLLERS.IS_AUTO =
1.
3.4. Временное отключение АВТО при оперативном управлении:
- Оперативное управление хотя бы одним светильником в локации переводит LOCATIONS[i].IS_AUTO =
0; - Возврат в АВТО при срабатывании датчика присутствия в этой локации (событие присутствия);
- При возврате в АВТО датчик сразу отрабатывает действие на присутствие.