Инструменты пользователя

Инструменты сайта


dev:nastrojka_avtomatizacii

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
dev:nastrojka_avtomatizacii [2026/04/22 06:03] 192.168.1.70dev:nastrojka_avtomatizacii [2026/07/20 08:16] (текущий) 192.168.1.70
Строка 322: Строка 322:
   * group - группа параметров или команд   * group - группа параметров или команд
       * flow - номер потока, нумерация от 0       * flow - номер потока, нумерация от 0
 +      * index - номер группы потока при переключении через ПУК, нумерация от 0. Может отсутствовать, в этом случае всё работает как без группировки (по-умолчанию)
     * command - команда      * command - команда 
       * addr - адрес команды       * addr - адрес команды
Строка 350: Строка 351:
  
       * operator – определяет усреднение данных; если отсутствует – выдаются текущие значения. Усреднение поддерживает компоненты Component.* и расчётные параметры Property.*, а также дату и время начала и конца усреднения (см. ниже)       * operator – определяет усреднение данных; если отсутствует – выдаются текущие значения. Усреднение поддерживает компоненты Component.* и расчётные параметры Property.*, а также дату и время начала и конца усреднения (см. ниже)
-        * avg_hour – усреднение за последний час +        * avg_hour_closed – усреднение за последний закрытый час 
-        * avg_day – усреднение за последние сутки+        * avg_day_closed – усреднение за последние закрытые сутки 
 +        * avg_hour_current – усреднение с начала текущего часа 
 +        * avg_day_current – усреднение с начала текущих суток
  
  
Строка 763: Строка 766:
           * 19 - ошибка датчика           * 19 - ошибка датчика
           * 20 - выход из диапазона измерения датчика           * 20 - выход из диапазона измерения датчика
 +          * 21 - Проверка целостности неизменной части ПО не пройдена
           * 100 - Некорректное измерение           * 100 - Некорректное измерение
           * 101 - Ошибка пробоподготовки при выполнении задания           * 101 - Ошибка пробоподготовки при выполнении задания
Строка 771: Строка 775:
           * 106 - Ошибка подключения к прибору           * 106 - Ошибка подключения к прибору
           * 107 - Ошибка при переключении потока при выполнении задания           * 107 - Ошибка при переключении потока при выполнении задания
 +          * 108 - Таймаут при выполнении задания
 +          * 109 - Отклонение времени выхода компонента от времени в методе вне нормы
           * 200 - Аварийное выключение из-за достижения установленного % от НКПР водорода           * 200 - Аварийное выключение из-за достижения установленного % от НКПР водорода
 +          * 400 - Валидация неудачна
 +        * Error.Sensors - текущие ошибки датчиков, битовое поле (см. ниже)
 +        * Error.Logic - текущие ошибки автоматизации, битовое поле (см. ниже)
         * Device.Mode - код режима прибора:         * Device.Mode - код режима прибора:
           * 0 - прибор остановлен           * 0 - прибор остановлен
Строка 805: Строка 814:
         * AvgFromDate.Second - дата и время начала усреднения, секунда;         * AvgFromDate.Second - дата и время начала усреднения, секунда;
         * AvgFromDate.UnixTime - дата и время начала усреднения, в формате unix time 32 бита         * AvgFromDate.UnixTime - дата и время начала усреднения, в формате unix time 32 бита
-        * AvgToDate.Year - дата и время окончания усреднения, год; 
-        * AvgToDate.Month - дата и время окончания усреднения, месяц; 
-        * AvgToDate.Day - дата и время окончания усреднения, день; 
-        * AvgToDate.Hour - дата и время окончания усреднения, час; 
-        * AvgToDate.Minute - дата и время окончания усреднения, минута; 
-        * AvgToDate.Second - дата и время окончания усреднения, секунда; 
-        * AvgToDate.UnixTime - дата и время окончания усреднения, в формате unix time 32 бита 
         * Mixture.N.Ro — абсолютная плотность градуировочной смеси. Вместо N указывается номер активного баллона (на текущий момент 1 или 2)         * Mixture.N.Ro — абсолютная плотность градуировочной смеси. Вместо N указывается номер активного баллона (на текущий момент 1 или 2)
         * Mixture.N.HmolN – низшая теплота сгорания градуировочной смеси         * Mixture.N.HmolN – низшая теплота сгорания градуировочной смеси
         * Mixture.N.<Имя_компонента> — молярная доля компонента в градуировочной смеси. Возможные имена компонентов аналогичны Component.*         * Mixture.N.<Имя_компонента> — молярная доля компонента в градуировочной смеси. Возможные имена компонентов аналогичны Component.*
  
 +Error.Sensors и Error.Logic, в отличие от Error.Chromos/Error.Bot, держат ошибку до устранения её причины, а не до готовности приборов. Оба — битовые маски (ui32), бит = 1 => ошибка активна.
  
 +Error.Sensors — общий для прибора, номер бита = код ошибки бота:
 + 4, 5  — датчик водорода (неисправность / выход за диапазон)
 + 6, 7  — датчик температуры
 + 8, 9  — расходомер
 + 10, 11 — FASW (точка росы)
 + 12, 13 — Конг-Прима
 + 15, 16 — МИДА-15
 + 17, 18 — КОРУНД-Дх-001MRS
 + 19, 20 — произвольный датчик
 +Взводится и снимается опросом датчиков (бит 14 в этой маске не используется).
  
-Пример:+Error.Logic — по потоку той группы, в которой размещён (в группе без атрибута flow — объединение по всем потокам, т.е. общий для прибора): 
 + биты  0..9  — логические ошибки, код = 100 + номер бита: 
 + 0 — 100 некорректное измерение   (снимается успешным измерением) 
 + 1 — 101 пробоподготовка          \ 
 + 2 — 102 внешние параметры         | 
 + 3 — 103 файлы хроматограмм        | снимаются получением хроматограммы 
 + 4 — 104 нет методов/каналов       | (независимо от её корректности) 
 + 5 — 105 нет активной градуировки 
 + 6 — 106 связь с прибором          | 
 + 7 — 107 переключение потока       | 
 + 8 — 108 таймаут задания          / 
 + 9 — 109 отклонение времён выхода компонентов (переоценивается каждым измерением) 
 + биты 10..28 — резерв под коды 110..128 (то же правило: код = 100 + номер бита) 
 + бит  29     — код 21: контрольные суммы неизменной части ПО изменились 
 +               (снимается установкой новых эталонных сумм; всегда общий для прибора) 
 + бит  30     — код 14: неудачная градуировка (снимается только удачной градуировкой) 
 + бит  31     — код 400: неудачная валидация (снимается записью ValidationResult = 0 или 1) 
 +Данные ошибки остаются активными в т.ч. после перезагрузки прибора, до момента их устранения 
 + 
 +**Пример карты:**
 <code xml> <code xml>
 ?xml version="1.0" encoding="utf-8" ?> ?xml version="1.0" encoding="utf-8" ?>
Строка 837: Строка 869:
          
     <param addr="200" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float"  name="Mixture.1.Ro" />     <param addr="200" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float"  name="Mixture.1.Ro" />
-    <param addr="202" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float" operator="avg_hour name="Component.propane" /> +    <param addr="202" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float" operator="avg_hour_closed name="Component.propane" /> 
-    <param addr="204" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float" operator="avg_day name="Component.neopentane" /> +    <param addr="204" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float" operator="avg_day_closed name="Component.neopentane" /> 
-    <param addr="206" data_type="InputRegister" reverse_bytes="false"  reverse_words="false" type="ui16" operator="avg_hour name="AvgFromDate.Hour" /> +    <param addr="206" data_type="InputRegister" reverse_bytes="false"  reverse_words="false" type="ui16" operator="avg_hour_closed name="AvgFromDate.Hour" /> 
-    <param addr="207" data_type="InputRegister" reverse_bytes="false"  reverse_words="false" type="ui16" operator="avg_day name="AvgFromDate.Day" /> +    <param addr="207" data_type="InputRegister" reverse_bytes="false"  reverse_words="false" type="ui16" operator="avg_day_closed name="AvgFromDate.Day" /> 
-    <param addr="208" data_type="InputRegister" reverse_bytes="false"  reverse_words="false" type="ui16" operator="avg_day name="AvgToDate.Minute" />+    <param addr="208" data_type="InputRegister" reverse_bytes="false"  reverse_words="false" type="ui16" operator="avg_day_closed name="AvgToDate.Minute" />
     <param addr="212" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float"  name="Mixture.1.HmolN" />     <param addr="212" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float"  name="Mixture.1.HmolN" />
     <param addr="214" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float"  name="Mixture.1.n_butane" />     <param addr="214" data_type="InputRegister" reverse_bytes="false"  reverse_words="true" type="float"  name="Mixture.1.n_butane" />
dev/nastrojka_avtomatizacii.1776837824.txt.gz · Последнее изменение: 192.168.1.70