Ресурсы контроллера
К ресурсам контроллера относятся:
- пользовательские регистры;
- события;
- аварии;
- цифровые входы и выходы;
- аналоговые входы и выходы.
Все ресурсы контроллера могут быть настроены вручную (например, через веб-интерфейс) или программно — с помощью сценариев.
Регистры
Пользовательский регистр — это энергонезависимая область памяти контроллера, предназначенная для хранения значений определённого типа. Регистр доступен для чтения и записи через сценарии, веб-интерфейс или внешние службы (такие как Modbus, SNMP).
Совокупность пользовательских регистров определяет интерфейсы:
- “Человек - контроллер” (панель управления);
- “Внешняя служба - контроллер”.
Общие параметры
- Количество регистров: В тестовом образце контроллера доступно 16 пользовательских регистров. Разработчик может ограничивать число используемых регистров, чтобы избежать перегрузки интерфейса панели управления.
- Доступ: Каждый регистр идентифицируется порядковым номером, через который к нему осуществляется обращение из сценариев или внешних служб.
- Тип данных: На низком уровне значение регистра хранится в виде 32-битного числа. Данные сохраняются при перезагрузке контроллера или отключении питания.
Конфигурация
Конфигурация регистра включает следующие параметры:
- Наименование: Имя, отображаемое в панели управления.
- Тип: Определяет допустимый диапазон значений, а также элемент интерфейса панели управления, используемый для отображения и редактирования данных.
- Режим доступа: Определяет уровень доступа (нет доступа, только чтение, чтение/запись) для веб-интерфейса и внешних служб.
Типы данных регистров
Тип данных | Описание | Диапазон значений | Элемент панели управления |
---|---|---|---|
bool | Логическое значение | Истина/ложь (True/False ) |
Переключатель |
int | Целое число | [-2,147,483,647 … 2,147,483,647] | Текстовое поле |
uint | Целое число без знака | [0 … 4,294,967,295] | Текстовое поле |
float | Вещественное число | Диапазон, настроенный конфигурацией | Поле ввода числа с дробной частью |
list | Число из заданного списка | Генерируемый список значений | Раскрывающийся список |
enum | Перечисление строк | Индексы строк (2 ≤ max ≤ 10) | Раскрывающийся список |
Дополнительные параметры для типов данных:
- Для
int
,uint
иfloat
можно задать минимальные и максимальные значения, а также шаг изменения. - Для
float
можно установить точность (количество знаков после запятой). - Для
enum
задаётся упорядоченный список строк, где значение регистра соответствует порядковому номеру строки.
Цифровые входы (DI)
Цифровой вход — это интерфейсный порт контроллера, принимающий двоичные сигналы от внешних устройств или датчиков. Сигналы имеют два состояния: включено/выключено (1/0
).
Каждый вход обозначается как DI#
, где #
— порядковый номер, начиная с 0.
Конфигурация
- Наименование: Имя, отображаемое в панели управления.
- Режим доступа: Определяет уровень доступа (нет доступа, только чтение).
- Тип контакта:
- Нормально открытый (НО);
- Нормально закрытый (НЗ).
Дополнительно входы оснащены аппаратной защитой от дребезга.
Цифровые выходы (DO)
Цифровой выход позволяет контроллеру передавать двоичные сигналы посредством замыкания или размыкания цепи.
Выходы обозначаются как DO#
, где #
— порядковый номер, начиная с 0.
Особенности
- Для выходов с твердотельными реле (SSR) поддерживается ШИМ (широтно-импульсная модуляция) с задаваемым периодом. При этом скважность ШИМ выражается в диапазоне 0…1000.
Конфигурация
- Наименование: Имя, отображаемое в панели управления.
- Режим доступа: Определяет уровень доступа (нет доступа, только чтение, чтение/запись).
- ШИМ: Если доступно, задаётся скважность (0…1000) и период в секундах.
Аналоговые входы (AI)
Аналоговый вход предназначен для приёма аналоговых сигналов от внешних устройств.
Поддерживаемые датчики
- NTC10K: Датчик температуры.
- 0–10 В: Датчик с выходным напряжением до 10 В.
Входы обозначаются как AI#
, где #
— номер, начиная с 0.
Конфигурация
- Наименование: Имя, отображаемое в панели управления.
- Режим доступа: Определяет уровень доступа (нет доступа, только чтение).
- Тип датчика: Выбор между
NTC10K
и0–10 В
. - Корректировка: Поправочное значение для входного сигнала.
Аналоговые выходы (AO)
Аналоговый выход преобразует цифровые сигналы в аналоговые (диапазон 0–10 В).
Выходы обозначаются как AO#
, где #
— номер, начиная с 0.
Конфигурация
- Наименование: Имя, отображаемое в интерфейсе.
- Режим доступа: Определяет уровень доступа (нет доступа, только чтение, чтение/запись).
События
Контроллер ведёт журнал событий (хранится в ПЗУ). Также события могут дублироваться на сервер. Журнал доступен для просмотра в веб-интерфейсе.
Типы событий
- Системные: Указываются прошивкой контроллера.
- Пользовательские: Задаются в конфигурации и вызываются из сценариев (не более 8 в тестовом образце).
Запись о событии
Каждое событие содержит:
- Метка времени: Указывает дату и время происшествия.
- Источник: Может быть системным (контроллер) или пользовательским (сценарий).
- Тип события: Авария, изменение конфигурации, выполнение сценария и др.
- Причина: Например, ошибка пользователя, успешное выполнение, срабатывание по расписанию и т. д.
- Код: Уникальный идентификатор события.
- Параметры: Один или два числовых параметра (опционально).
Аварии
Контроллер переходит в аварийный режим при срабатывании аварийного события. В этом режиме:
- Статусный светодиод мигает красным.
- В веб-интерфейсе отображается сообщение об аварии.
- Если подключён сервер, отправляется уведомление на смартфон пользователя.
Типы аварий
- Системные: Предопределены прошивкой.
- Пользовательские: Настраиваются через конфигурацию (до 8 событий для тестового образца).