Системы домашней автоматизации

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Системы домашней автоматизации » Программирование контроллера Alpha SE » Реализация функции "Выключить все"


Реализация функции "Выключить все"

Сообщений 1 страница 2 из 2

1

Техническое задание:

Имеется 1 комнатная квартира с 5 группами освещения. Требуется реализовать возможность выключения всех включенных групп освещения нажатием одной кнопки.

2

Для реализации нам потребуется контроллер, преобразователь интерфейсов,  ИБП (Источник бесперебойного питания) или БП (блок питания), 1 модуль ввода-вывода SE6i5o с функцией управления освещением.

Реализация функции "Выключить все"

К входам Point 0 - Point 4 модуля SE6i5o подключим выключатели с помощью которых будем управлять 5 группами освещения (выходы Point 8 - Point 12).
Отличительной особенностью модуля SE6i5o является возможность настройки его таким образом что бы при нажатии кнопки выключателя свет включался и выключался без участия контроллера.

Настройка модуля SE6i5o производится установкой его параметров с помощью программы Alpha SE Configurator. Продемонстрировать возможности модуля SE6i5o поможет утилита se6i5o_util.exe. Именно она позволит определить значения параметров, которые потребуется установить для задания необходимого алгоритма работы SE6i5o.

В нашем случае параметр 16 модуля необходимо установить равным 31, а параметр 17 - равным 0.
После задания параметров контроллер можно вообще выключить, SE6i5o будет самостоятельно включать и выключать освещение в зависимости от состояния подключенных к нему выключателей.

К последнему входу (Point 5) подключим кнопочный выключатель, замыкание которого и будет приводить к выключению всех групп освещения.

В решении нашей задачи контроллер будет лишь отслеживать состояние входа Point 5 и при его замыкании давать команду на отключение всех выходов Point 8 - Point 12.

Описывая человеческим языком алгоритм программы, получим следующее:

Код:
Если замкнулся вход Point5 модуля SE 6i5o, то
{
    Размыкаем выход Point 8,
    Размыкаем выход Point 9,
    Размыкаем выход Point 10,
    Размыкаем выход Point 11,
    Размыкаем выход Point 12
};

Переведя описанный нами алгоритм в программу Alpha SE Configurator получим следующее:
После символа # приведены комментарии к программе.

Код:
var[255]=Get_Points_State(1, 5); # Получаем значение входа Point 5 первого модуля и сохраняем его в пременную var[255]
if (var[255]==1) # Если вход замкнулся, т.е. нажали кнопку
{
    var[255]=Set_Relay_State(1,8,0); # Размыкаем выход Point 8,
    var[255]=Set_Relay_State(1,9,0); # Размыкаем выход Point 9,
    var[255]=Set_Relay_State(1,10,0); # Размыкаем выход Point 10,
    var[255]=Set_Relay_State(1,11,0); # Размыкаем выход Point 11,
    var[255]=Set_Relay_State(1,12,0); # Размыкаем выход Point 12,
};

Вы здесь » Системы домашней автоматизации » Программирование контроллера Alpha SE » Реализация функции "Выключить все"