Table of Contents

promauto.termo5

Модуль опроса платы термометрии производства «ПромАвтоматика».

К одной плате можно подключить до 12 термоподвесок. На каждой подвеске может быть установлено до 6 датчиков температуры.

Для обмена данными используется протокол Modbus.

Температура и сопротивление сохраняются в тегах с одним знаком после запятой: фактическое значение умножается на 10.

Основные возможности

Конфигурация

Пример конфигурации модуля:

plugin.peripherial:

  module.TRM1:
    netaddr:  1
    type:     promauto.termo5
    modeResetCntMax: 3600
    params:
      p0:  p  53  0
      p1:  p  53  0
      p2:  p  53  0
      p3:  p  53  0
      p4:  p  53  0
      p5:  p  53  0
      p6:  p  53  0
      p7:  p  53  0
      p8:  p  53  0
      p9:  p  53  0
      p10: p  53  0
      p11: p  53  0

Параметры

Параметр Умолчание Описание
netaddr 1 Сетевой адрес платы.
modeResetCntMax 60 Максимальное значение счетчика ModeResetCnt. Также используется для автоматической инициализации счетчика при переключении в режим Force или Silent.
params.p0params.p11 c 53 0 Параметры соответствующей подвески.

Параметры подвески задаются в следующем формате:

pN: type Rzero Rwire

где:

Поддерживаются следующие типы подвесок:

Значение Тип Описание
c Classic Классическая подвеска. При вычислении температуры учитываются сопротивление линии и индивидуальная поправка канала.
p Compensate Компенсированная подвеска. При вычислении температуры учитывается сопротивление линии без индивидуальной поправки канала.

Значения по умолчанию:

Параметр Значение
Тип подвески c
Rzero 53
Rwire 0

Например:

params:
  p0: c 53 0
  p1: p 53 1.5

В данном примере:

Теги

Для каждой подвески создается отдельная группа тегов:

PdvN

где N — номер подвески от 0 до 11.

Номер датчика обозначается буквой M и принимает значения от 0 до 5.

Теги датчиков

Имя тега Тип Доступ Описание
PdvN.T0PdvN.T5 INT RO Температура датчика, умноженная на 10.
PdvN.R0PdvN.R5 INT RO Расчетное сопротивление датчика, умноженное на 10.
PdvN.U0PdvN.U5 INT RO Измеренное значение напряжения соответствующего канала.

Например:

Значение тега Фактическое значение
Pdv3.T2 = 254 25,4 °C
Pdv3.R2 = 537 53,7 Ом

Общие теги подвески

Имя тега Тип Доступ Описание
PdvN.Umin INT RO Нижнее опорное значение напряжения.
PdvN.Umax INT RO Верхнее опорное значение напряжения.
PdvN.Time INT RO Значение времени измерения, полученное от платы.
PdvN.TMax INT RO Максимальная температура датчиков подвески, умноженная на 10.

В актуальной реализации тег максимальной температуры называется PdvN.TMax — с заглавной буквой M.

Управляющие теги

Имя тега Тип Доступ Умолчание Описание
Mode INT RW 0 Режим работы модуля.
ModeForcePdv INT RW 0 Номер подвески для принудительного опроса.
ModeResetCnt INT RW 0 Счетчик автоматического возврата в штатный режим.

Режимы работы

Mode

Тег Mode определяет режим обмена с платой.

Значение Режим Описание
0 Normal Штатный опрос всех 12 подвесок.
1 Force Опрос только одной подвески, указанной в теге ModeForcePdv.
2 Silent Обмен данными с платой не выполняется.

Normal

В режиме Normal модуль:

Для включения штатного режима необходимо записать:

Mode = 0

Force

В режиме Force модуль опрашивает только одну выбранную подвеску.

Номер подвески задается тегом ModeForcePdv.

Допустимые значения:

0...11

Например:

ModeForcePdv = 5
Mode = 1

После этого модуль будет опрашивать только подвеску Pdv5.

Если при переключении в режим Force значение ModeResetCnt равно нулю, счетчик автоматически устанавливается равным modeResetCntMax.

Режим может использоваться при диагностике, настройке или для увеличения частоты обновления данных выбранной подвески.

Значение ModeForcePdv необходимо установить до переключения тега Mode в значение 1.

Silent

В режиме Silent модуль не отправляет запросы плате и не обновляет измерительные теги.

Для включения режима необходимо записать:

Mode = 2

Если при переключении в режим Silent значение ModeResetCnt равно нулю, счетчик автоматически устанавливается равным modeResetCntMax.

Режим может использоваться для временной остановки обмена данными без отключения модуля.

Обработка тега ModeResetCnt в режиме Silent продолжается.

ModeResetCnt

Тег ModeResetCnt позволяет автоматически вернуть модуль в режим Normal.

Максимальное допустимое значение счетчика определяется параметром конфигурации modeResetCntMax.

Например:

modeResetCntMax: 3600

Если значение Mode изменяется с Normal на Force или Silent, а значение ModeResetCnt равно нулю, модуль автоматически устанавливает:

ModeResetCnt = modeResetCntMax

Таким образом для включения режима на максимальное количество циклов необязательно предварительно записывать значение в ModeResetCnt.

Если в тег ModeResetCnt записано значение, превышающее modeResetCntMax, модуль ограничивает его значением modeResetCntMax.

Если значение тега больше нуля и не превышает modeResetCntMax, после каждого цикла выполнения модуля оно уменьшается на единицу.

Когда значение ModeResetCnt становится равным нулю, модуль автоматически устанавливает:

Mode = 0

Если в тег ModeResetCnt записано отрицательное значение, модуль устанавливает:

Mode = 0
ModeResetCnt = 0

Таким образом режимы Force и Silent можно включать на ограниченное количество циклов.

Чтобы включить режим Force или Silent на максимальное количество циклов, достаточно изменить тег Mode. Если ModeResetCnt равен нулю, он будет автоматически установлен равным modeResetCntMax.

Пример автоматической установки счетчика для подвески Pdv3:

ModeForcePdv = 3
Mode = 1

При переключении в режим Force модуль автоматически устанавливает ModeResetCnt равным modeResetCntMax.

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

Пример принудительной установки продолжительности режима:

ModeForcePdv = 3
ModeResetCnt = 20
Mode = 1

В этом случае подвеска Pdv3 будет опрашиваться в течение заданного количества циклов, после чего модуль автоматически вернется в режим Normal.

Пример автоматической установки счетчика в режиме Silent:

Mode = 2

Если перед переключением значение ModeResetCnt было равно нулю, счетчик автоматически устанавливается равным modeResetCntMax.

После окончания отсчета будет восстановлен режим Normal.

Пример принудительной установки продолжительности режима Silent:

ModeResetCnt = 50
Mode = 2

В течение заданного количества циклов модуль не будет выполнять обмен данными с платой. После окончания отсчета будет восстановлен режим Normal.

Если в ModeResetCnt записать значение больше modeResetCntMax, продолжительность работы выбранного режима будет ограничена значением modeResetCntMax.

Карта каналов

В карту каналов CHANNELMAP модуля добавляются теги температуры.

Формат номера канала:

N.M

где:

Примеры:

Канал Тег
0.0 Pdv0.T0
0.5 Pdv0.T5
3.2 Pdv3.T2
11.5 Pdv11.T5

Принцип работы

Опрос в штатном режиме

В режиме Normal сначала одним запросом считываются значения времени всех 12 подвесок.

Затем выполняется чтение основных данных подвесок. За один запрос считываются данные двух подвесок. Для опроса всех 12 подвесок выполняется шесть запросов.

Для каждой подвески плата передает:

После получения ответа модуль вычисляет сопротивления и температуры всех датчиков.

Вычисление сопротивления

Сопротивление датчика вычисляется по измеренному напряжению и опорным значениям Umin и Umax.

Полученное сопротивление записывается в тег PdvN.RM после умножения на 10.

Вычисление температуры

Температура рассчитывается по сопротивлению датчика, значению Rzero и температурному коэффициенту:

T = ((R / Rzero) - 1) / 0.0043

Перед вычислением температуры из общего сопротивления вычитается сопротивление линии Rwire.

Для классической подвески дополнительно учитывается индивидуальная поправка сопротивления соответствующего канала.

Результат умножается на 10 и записывается в тег PdvN.TM.

После расчета всех шести температур наибольшее значение записывается в тег PdvN.TMax.

Примеры использования

Штатная работа

Mode = 0
ModeResetCnt = 0

Модуль постоянно опрашивает все подвески.

Диагностика одной подвески с автоматическим счетчиком

ModeForcePdv = 7
Mode = 1

Если значение ModeResetCnt равно нулю, модуль автоматически устанавливает его равным modeResetCntMax.

До окончания отсчета модуль опрашивает только подвеску Pdv7, после чего автоматически возвращается к опросу всех подвесок.

Диагностика одной подвески с заданным счетчиком

ModeForcePdv = 7
ModeResetCnt = 50
Mode = 1

В течение заданного количества циклов модуль опрашивает только подвеску Pdv7, после чего автоматически возвращается к опросу всех подвесок.

Значение ModeResetCnt не должно превышать параметр modeResetCntMax. Если оно превышает допустимый максимум, модуль ограничивает его значением modeResetCntMax.

Временная остановка обмена с автоматическим счетчиком

Mode = 2

Если значение ModeResetCnt равно нулю, модуль автоматически устанавливает его равным modeResetCntMax.

До окончания отсчета модуль не выполняет обмен данными, после чего автоматически возвращается в штатный режим.

Временная остановка обмена с заданным счетчиком

ModeResetCnt = 50
Mode = 2

В течение заданного количества циклов модуль не выполняет обмен данными, после чего автоматически возвращается в штатный режим.

Ограничения