| Both sides previous revision Previous revision Next revision | Previous revision |
| doc:jroboplc:modules:arctrm [2026/07/22 21:48] – denis | doc:jroboplc:modules:arctrm [2026/08/01 11:25] (current) – [События] denis |
|---|
| Модуль сохраняет: | Модуль сохраняет: |
| |
| * температурные срезы по каждой подвеске; | * температурные срезы по подвескам с актуальными данными; |
| * сведения о подвесках; | * сведения о подвесках; |
| * события запуска архива и изменения состояния связи с устройствами. | * события запуска архива, изменения состояния связи с устройствами и потери актуальности данных подвесок. |
| |
| Сам модуль не выполняет обмен с оборудованием. Данные и состояние связи он получает через ссылки ''Ref'' на теги других модулей. | Сам модуль не выполняет обмен с оборудованием. Данные и состояние связи он получает из тегов других модулей. |
| |
| [[doc:jroboplc:modules:arctrm_dev]] | [[doc:jroboplc:modules:arctrm_dev]] |
| <deviceName>:Pdv<podvesNum>.T<sensorCount-1> | <deviceName>:Pdv<podvesNum>.T<sensorCount-1> |
| </code> | </code> |
| | |
| | Актуальность данных подвески определяется по тегу: |
| | |
| | <code text> |
| | <deviceName>:Pdv<podvesNum>.Time |
| | </code> |
| | |
| | Данные считаются актуальными, если ссылка на тег существует, а его значение находится в диапазоне от ''0'' до ''600'' включительно. |
| |
| Состояние связи с устройством определяется по тегу: | Состояние связи с устройством определяется по тегу: |
| - записывает событие запуска архива. | - записывает событие запуска архива. |
| |
| На каждом рабочем цикле модуль считывает текущие значения датчиков. Время берётся с сервера базы данных и округляется вниз до границы периода ''period''. | На каждом рабочем цикле модуль сначала проверяет ''Pdv<podvesNum>.Time'' каждой подвески. Значения датчиков считываются только для подвесок с актуальными данными. Время архивного среза берётся с сервера базы данных и округляется вниз до границы периода ''period''. |
| |
| Если наступил новый период, в ''TEMPER'' записывается по одной строке для каждой подвески. При превышении лимита ''size'' удаляются строки с наименьшими значениями ''ID''. | Если наступил новый период, в ''TEMPER'' записывается по одной строке для каждой подвески с актуальными данными. Для подвески с отсутствующим тегом ''Time'' или значением вне диапазона ''0...600'' строка не создаётся. При превышении лимита ''size'' удаляются строки с наименьшими значениями ''ID''. |
| |
| ===== База данных ===== | ===== База данных ===== |
| | ''PODVES'' | Справочник подвесок: имя и описание. | | | ''PODVES'' | Справочник подвесок: имя и описание. | |
| | ''TEMPER'' | Архив температурных срезов. Содержит ''PODVES_ID'', ''DT'' и динамические колонки ''T0...Tn''. | | | ''TEMPER'' | Архив температурных срезов. Содержит ''PODVES_ID'', ''DT'' и динамические колонки ''T0...Tn''. | |
| | ''EVENTLOG'' | Журнал запуска архива и изменения состояния связи с устройствами. | | | ''EVENTLOG'' | Журнал запуска архива, изменения состояния связи с устройствами и потери актуальности данных подвесок. | |
| |
| Основные связи: | Основные связи: |
| |
| ^ Значение ^ Состояние ^ | ^ Значение ^ Состояние ^ |
| | ''3000'' | Тег датчика не найден — ''NOLINK''. | | | ''3010'' | Значение ниже допустимого диапазона — короткое замыкание. | |
| | ''3010'' | Значение ниже допустимого диапазона — обрыв датчика. | | | ''3011'' | Значение выше допустимого диапазона — обрыв. | |
| | ''3011'' | Значение выше допустимого диапазона — короткое замыкание. | | | ''3013'' | Тег датчика не найден — ''NOLINK''. | |
| |
| Допустимый диапазон обычного значения: от ''-1000'' до ''2000'' включительно. | Допустимый диапазон обычного значения: от ''-1000'' до ''2000'' включительно. |
| |
| ^ Код ^ Событие ^ | ^ Код ^ Событие ^ |
| | ''0'' | Инициализация архива. | | | ''0'' | Ссылка на ''SYSTEM.ErrorFlag'' не найдена. | |
| | ''1'' | Связь с устройством установлена. | | | ''1'' | Связь с устройством потеряна: ''SYSTEM.ErrorFlag = true''. | |
| | ''2'' | Связь с устройством потеряна: ''SYSTEM.ErrorFlag = true''. | | | ''3'' | Данные подвески неактуальны: ссылка на ''Pdv<podvesNum>.Time'' не найдена или значение находится вне диапазона ''0...600''. | |
| | ''3'' | Ссылка на ''SYSTEM.ErrorFlag'' не найдена. | | | ''99'' | Связь с устройством установлена. | |
| | | ''100'' | Инициализация архивации. | |
| | |
| | Для событий состояния устройства в поле ''MESSAGE'' записывается имя устройства, для события неактуальных данных — имя подвески в формате ''<deviceName>.<podvesNum>'', для события инициализации — пустая строка. |
| |
| Событие состояния устройства записывается только при изменении его состояния. | Событие состояния устройства записывается только при изменении его состояния. Событие неактуальных данных формируется при первой потере актуальности, записывается при наступлении следующего архивного периода и не повторяется до восстановления актуальности и её следующей потери. |
| |
| ===== Теги модуля ===== | ===== Теги модуля ===== |