ТРИМ
Протокол обмена
(руководство по программированию)
2.574.007 Д
СОДЕРЖАНИЕ
1 ПРОТОКОЛ MODBUS 3
1.1 Введение 3
1.2 Формат сообщения 3
1.3 Маркер начала сообщения 3
1.3.1 Поле адреса 4
1.3.2 Поле команды 4
1.3.3 Поле данных 4
1.3.4 Поле контрольной суммы (КС)
4
1.3.5 Пример расчета КС 4
2 КОМАНДЫ 5
2.1 Команда 0х03. Считать значения регистров настроек 5
2.2 Команда 0х04. Считать информацию регистров данных 6
2.3 Команда 0x10. Установить значение регистров настроек 7
3 ТИПЫ ПЕРЕМЕННЫХ и структуры данных 8
3.1 Типы переменных 8
3.1.1 Тип float 8
3.1.2 Тип int 9
3.1.3 Тип byte 9
3.2 Структура записи архива 9
3.3 Структура программы регулирования 10
Приложение А СОДЕРЖАНИЕ РЕГИСТРОВ ПАМЯТИ ПРИБОРА 13
Приложение Б Коды ошибок прибора 22
Настоящий протокол обмена 2.574.007 Д является приложением к 2.574.007 РЭ и содержит описание модификации протокола MODBUS для связи измерителя-регулятора ТРИМ (далее просто прибор) с персональным компьютером.
В описании переменных протокола во всем документе применяются следующие сокращения:
0х
YY
– адрес в шестнадцатиричной системе исчисления. Например 0х3А соответствует десятичному числу 58
.
Запись 0
x
1
AB
LO
, означает, что указанный параметр содержится в младшем (LO) байте регистра 0x1AB. Запись 0
x
1
AB
HI
, означает, что указанный параметр содержится в старшем (HI) байте регистра 0x1AB.
Введение
Протокол обмена предназначен для связи между приборами, объединенными в сеть с организацией обмена по принципу «MASTER - SLAVE» («Ведущий – ведомый»). При этом лишь MASTER может инициировать операции, называемые ЗАПРОС. SLAVE на ЗАПРОС формируют сообщение ОТВЕТ.
Обмен осуществляется в режиме последовательной передачи. Параметры последовательного обмена должны быть одинаковы для всех приборов в сети MODBUS и иметь следующий формат: 1 старт-бит, 8 бит данных, 1 стоп-бит.
Протокол MODBUS определяет структуру сообщений ЗАПРОС и ОТВЕТ. Каждый байт в сообщении посылается как два знака ASCII. Главным преимуществом данного режима является то, что он позволяет иметь различные интервалы времени между посылками, без появления ошибки.
Ф
ормат Сообщения
Формат сообщения представлен на рисунке 1. Любой байт адреса, команды или данных представляется в виде двух ASCII знаков: в числе 0х62 знаки «6» и «2» представляются и передаются, как 0х36 и 0х32.
Старт
|
Адрес
|
Команда
|
Данные
|
КС
|
Стоп
|
1 знак
|
2 знака
|
2 знака
|
N знаков
|
2 знака
|
2 знака
|
Рисунок 1
- Формат сообщения
Маркер начала сообщения
Сообщения начинаются маркером начала сообщения - знаком двоеточия (:
) (0х3A), заканчиваются маркером конца сообщения - двумя байтами (0хD и 0хA).
1.3.1Поле адреса
Поле адреса содержит два знака. Адреса SLAVE находятся в десятичном диапазоне 0-127. Адрес 0 присваивается SLAVE, которые должны отвечать на ЗАПРОС с любым адресом.При формировании запроса MASTER в поле адреса сообщения устанавливает адрес запрашиваемого SLAVE, в ответе в поле адреса возвращается адрес SLAVE.
1.3.2 Поле команды
Поле команд содержит два знака - код команды. В ЗАПРОСЕ поле кода команды указывает устройству SLAVE, какое действие предпринять. В ОТВЕТЕ поле команды служит для подтверждения приема ЗАПРОСА. В случае приема без ошибок поле команды повторяет код команды.
При ошибке поле команды содержит признак ошибки, сформированный, как код команды, в старшем бите которого значение 1, дополнительно в поле данных ОТВЕТА помещается уникальный код ошибки.
Коды ошибок приведены в приложении Б.
Например, в поле команды запроса содержится код команды
03h (0000 0011 b
) – “Считать информацию регистров настроек”.
Если SLAVE без ошибок принял ЗАПРОС, то в поле адреса ОТВЕТА повторяется исходный код команды 03 (0000 0011 b
), в случае ошибки ОТВЕТ содержит признак ошибки и код ошибки (см. рисунок 2).
ОТВЕТ
|
Название поля
|
Поле адреса SLAVE
|
0х5 (0000 0101 b)
|
Поле команды
|
0х83 (1000 0011 b)
|
Поле данных
|
0х20 (0010 0000 b)
|
КС
|
---
|
Рисунок 2 - Структура ОТВЕТА в случае ошибки
1.3.3 Поле данных
Поле данных содержит:
· в ЗАПРОСЕ – дополнительную информацию, которую использует SLAVE для выполнения команды.
· В ОТВЕТЕ, при отсутствии ошибок – запрашиваемые данные, в случае ошибки – код ошибки (смотри - рисунок 2).
1.3.3 Пример расчета КС
а)сложить все байты в сообщении, за исключением маркеров начала и конца сообщения в однобайтном поле, исключая перенос.
б)выполнить операцию “дополнение до единицы” (вычесть полученное значение из числа 0хFF).
в)выполнить операцию “дополнение до двух”, прибавив число 01 к полученному результату п.б). Пример такой операции показан в таблице1.
Таблица 1
Адрес
|
02h
|
0000 0010 b
|
Поле команды
|
01h
|
0000 0001 b
|
Поле данных 1
|
00h
|
0000 0000 b
|
Поле данных 2
|
00h
|
0000 0000 b
|
Поле данных 3
|
00h
|
0000 0000 b
|
Поле данных 4
|
08h
|
0000 1000 b
|
Результат п.1)
|
0Bh
|
0000 1011 b
|
Результат п.2)
|
F4h
|
1111 0100 b
|
КС (Результат п.3)
|
F5h
|
1111 0101 b
|
2.1 Команда 0х03
. Считать значения регистров настроек
Команда 0х03
служит для чтения регистров настроек.
ЗАПРОС
определяет адрес SLAVE, начальный адрес и число регистров настроек, значение которых необходимо считать.
Адреса регистров настроек приведены в приложении А
(таблица А1).
На рисунке 3 приведен пример “ЗАПРОСА” на чтение регистров настроек 2-4 SLAVE c адресом 17 (0х11).
ЗАПРОС
|
Название поля
|
|
Адрес SLAVE
|
0х11
|
Код команды
|
0x03
|
Начальный адрес HI
|
0x00
|
LO
|
0x01
|
Число регистров HI
|
0x00
|
LO
|
0x03
|
КС
|
--
|
Рисунок 3 - Структура ЗАПРОСА команды 03
.
ОТВЕТ
содержит адрес SLAVE, код команды, поле регистров настроек и число байт в поле регистров настроек. Содержимое регистра является шестнадцатиразрядным числом (два байта). На рисунке 4 приведен пример “ОТВЕТА” на ЗАПРОС.
ОТВЕТ
|
Название поля
|
|
Адрес SLAVE
|
0x11
|
Код команды
|
0x03
|
Число байт
|
0x06
|
Регистр настроек 02h HI
|
0x00
|
LO
|
0x0A
|
Регистр настроек 03h HI
|
0x00
|
LO
|
0x0B
|
Регистр настроек 04h HI
|
0x00
|
LO
|
0x0C
|
КС
|
--
|
Рисунок 4 – Структура ОТВЕТА команды 03
Команда 0х04. Считать информацию регистров данных
Команда 0х04
служит для чтения регистров данных.
ЗАПРОС
определяет адрес “SLAVE”, начальный адрес и число регистров данных, значения которых необходимо считать. Адреса регистров данных приведены в приложении А (таблица А2). На рисунке 5 приведен пример запроса на считывание регистров данных 2-4 “SLAVE” c адресом 17 (0х11).
ЗАПРОС
|
Название поля
|
|
Адрес SLAVE
|
0х11
|
Код команды
|
0х04
|
Начальный адрес HI
|
0х00
|
LO
|
0х01
|
Число регистров HI
|
0х00
|
LO
|
0х03
|
КС
|
--
|
Рисунок 5 - Структура “ЗАПРОСА” команды 0
x
04.
ОТВЕТ
содержит адрес “SLAVE”, код команды, поле регистров данных и число байт в поле регистров данных. Содержимое регистра является шестнадцатиразрядным числом и содержит два байта.
На рисунке 6 приведен пример “ОТВЕТА” на “ЗАПРОС”.
ОТВЕТ
|
Название поля
|
|
Адрес SLAVE
|
0х11
|
Код команды
|
0х04
|
Число байт
|
0х06
|
Регистр данных 02h HI
|
0х00
|
LO
|
0х0А
|
Регистр данных 03h HI
|
0х00
|
LO
|
0х0B
|
Регистр данных 04h HI
|
0х00
|
LO
|
0х0C
|
КС
|
--
|
Рисунок 6 - Структура “ОТВЕТА” команды
0х04
Команда 0
x10. Установить значение регистров настроек.
Команда 0
x
10
служит для установки значений регистров настроек.
Регистры настройки SLAVE могут иметь статус “только чтение”, при попытке установить в них новое значение остаются без изменений.
ЗАПРОС
определяет адрес SLAVE, начальный адрес, число регистров настроек, поле регистров настроек и число байт в поле регистров настроек.
Адреса регистров настроек приведены в приложении А (таблица А1).
На рисунке 7 приведен пример ЗАПРОСА на установку значений регистров настроек 2-4 “ SLAVE ” c адресом 17 (0x11).
ЗАПРОС
|
Название поля
|
|
Адрес SLAVE
|
0x11
|
Код команды
|
0x10
|
Начальный адрес HI
|
0x00
|
LO
|
0x01
|
Число регистров HO
|
0x00
|
LO
|
0x03
|
Число байт
|
0x06
|
Регистр настройки 02h HI
|
0x00
|
LO
|
0x0А
|
Регистр настройки 03h HI
|
0x00
|
LO
|
0x0B
|
Регистр настройки 04h HI
|
0x00
|
LO
|
0x0C
|
КС
|
--
|
Рисунок 7- Структура ЗАПРОСА команды 0
x
10.
ОТВЕТ
cодержит адрес SLAVE, код команды, начальный адрес и число регистров в поле регистров настроек. На рисунке 8 приведен пример ОТВЕТА на ЗАПРОС.
ОТВЕТ
|
Название поля
|
|
Адрес slave
|
11h
|
Код команды
|
10h
|
Начальный адрес HI
|
00h
|
LO
|
01h
|
Число регистров HI
|
00h
|
LO
|
03h
|
КС
|
--
|
Рисунок 8 – Структура ОТВЕТА команды 10
h
.
Типы переменных
Данный протокол поддерживает операции чтения / записи переменных следующих форматов:
- float
– формат с плавающей запятой, длина 4 байта;
- int
–
целое число, длина 2 байта;
- byte
–
число, длиной 1 байт.
3.1.1 Тип float
Пример чтения / записи float -числа -12.5
, расположенного по адресам 0x31 - 0x32 регистров настроек:
Регистр:
|
0х32 (
LO
)
|
0х32 (
HI
)
|
0х31 (
LO
)
|
0х31 (
HI
)
|
Адрес:
|
+3
|
+2
|
+1
|
+0
|
Формат
:
|
SEEEEEEE
|
EMMMMMMM
|
MMMMMMMM
|
MMMMMMMM
|
Двоичный вид:
|
11000001
|
01001000
|
00000000
|
00000000
|
Hex
вид
:
|
C1h
|
48h
|
00h
|
00h
|
S – Бит знака числа с плавающей точкой:
1 – отрицательное число, 0 – положительное число;
E – Показатель экспоненты числа с плавающей точкой;
M – Показатель мантиссы числа с плавающей точкой;
- Читаем / записываем 2 регистра, начиная с адреса 0х31 (HI).
- Полученное значение: 0xC1480000.
- Показатель мантиссы числа 10000010 = 130dec. Вычитанием 127 из этого числа получаем реальное значение экспоненты: 3.
- Мантисса представлена следующим двоичным числом: 10010000000000000000000.
- Дописываем 1 слева от мантиссы, отделяя ee десятичной точкой: 1.10010000000000000000000.
- Сдвигаем десятичную точку на значение экспоненты (вправо, если значение положительное, иначе влево). В результате получаем двоичное представление числа с плавающей точкой: 1100.10000000000000000000.
- Переводим целую и дробную часть в десятичный вид, учитывая знак числа. Получаем число с плавающей точкой: 0xC1480000= -12.5.
3.1.2 Тип
int
Пример считывания переменной, расположенной по адресу 0x26, имеющей тип Int:
а) читаем один регистр по адресу 0x26.
б)считанное значение 0х3Е7 = 999.
Регистр:
|
0
x
26
(
LO
)
|
0
x
26
(
HI
)
|
Адрес:
|
+1
|
+0
|
Двоичный вид:
|
11101110
|
00101010
|
Hex
вид:
|
0х03
|
0хЕ7
|
3.1.3 Тип
byte
Пример считывания переменной, расположенной по адресу 0х24, имеющей тип Byte:
Регистр:
|
0х24
(
HI
)
|
0х24
(
LO
)
|
Адрес:
|
+1
|
+0
|
Двоичный вид:
|
01000100
|
00110011
|
Hex
вид:
|
0x44
|
0xFF
|
Читаем один регистр по адресу 0х24. Значение переменной, согласно протоколу, находится в старшем разряде считанного слова - 0x44.
3.2 Структура записи архива
Данные процесса измерения периодически записываются в энерго-независимую память (Flash) – архив. Период записи данных в секундах определяется содержимым регистра 0х33 (смотри - таблицу А1). Длина архива составляет 2097153 байта, что соответствует 190650 записям. Длина одной записи – 11 байт (таблица 2).
Таблица 2
0
|
1
|
2
|
3
|
4
|
5
|
6 7 8 9
|
10
|
час
|
мин
|
с
|
дата
|
месяц
|
год
|
Flot - данные
|
Регистр состояния
реле
|
младший
байт
|
старший байт
|
Архив организован по кольцевому принципу. Это означает, что в случае его заполнения новая (последняя) запись будет размещена на месте старой, начиная с первой записи. Распределение номеров байт записи по адресам регистров рассмотрены на примере группы регистров данных 0x10 - 0x15 «Получить последнюю запись архива» (см. таблицу A2).
0x10 - HI
|
0x10 - LO
|
0x11 - HI
|
0x11 - LO
|
0x12 - HI
|
0x12 - LO
|
час
|
мин
|
с
|
дата
|
месяц
|
год
|
0x13 – HI 0x13 – LO 0x14 – HI 0x14 - LO
|
0x15 - HI
|
0x15 - LO
|
данные float*
|
Регистр состояния реле
|
резерв
|
* - в случае ситуации обрыва датчика
в поле «данные» записывается число 1010
. При этом факт самого первого
обнаружения обрыва фикси-руется в архиве, независимо от значения периода записи.
В случае копирования архива на SD-карту создается файл с уникальным именем и расширением ARH. Имя файла содержит информацию о дате и времени его создания. Например, файл “14111351.ARH” означает, что копирование архива производилось 14 ноября в 13 час, 51 мин.
Вся информация записывается в файл в двоичном виде и представляет собой последовательность 11-байтных записей (смотри - таблицу 2). Все записи в файле расположены в строгой хронологической последовательности.
3.2 Структура программ регулирования
Программа регулирования позволяет реализовать программный режим управления объектом. В энергонезависимой памяти прибора хранится четыре программы. Количество циклов перепрограммирования не ограничено.
Каждая программа регулирования состоит из шагов, максимальное количество которых не должно превышать 32. Данные о шагах последовательно размещаются в регистрах 4-х программ регулирования, начиная с адреса 0x52
(см. таблицу А1).
Структура программы
регулирования имеет следующий вид:
1 байт
|
7 байт
|
7 байт
|
7 байт
|
1 байт
|
1 байт
|
Масштаб
|
Шаг 1
|
Шаг 2
|
… Шаг 32
|
Программа перехода
|
шаг перехода
|
Масштаб
–
параметр, определяющий
временной масштаб каждого шага программы и принимающий значения
: 0 – час:мин
. 1 – м ин:сек.
Один шаг программы содержит информацию о значениях параметра регулирования, времени и типе шага. Ниже приведена структура одного шага.
Программа перехода
– номер программы (0 - 3), на которую
осуществляется переход
.
Шаг перехода
– номер шага (0 - 31) программы, на который осуществляется переход.
Структура шага программы:
1 байт
|
1 байт
|
4 байта
|
1 байт
|
Час(мин)
|
Мин (с)
|
данные
|
Р егистр шага
|
Время
(2 байта) – длительность текущего шага программы. В зависимости от выбранного масштаба может принимать значения: час:мин или мин:с.
Данные
– значение параметра во float- формате в конечной точке шага.
Регистр шага
– определяет тип шага и логику перехода на следующий шаг. Описание регистра шага приведено в таблице 3.
Таблица
3
№ разряда
|
Описание разрядов регистра шага
|
0-3
|
Тип шага:
0 – обычный шаг с переходом на следующий;
1 – шаг с переходом на любой другой шаг программ;
2 – конец программы.
|
4-7
|
Логика перехода на следующий шаг:
0 – по значению;
1 – по времени;
2 –
по значению И
по времени
;
3 – по значению ИЛИ
по времени.
|
Примечание
. В каждой программе регулирования допускается только один шаг
с переходом на любой другой шаг программ (см. структуру программы).
На рисунке 8 в качестве примера показан график программы изменения температуры объекта. Все шаги программы обычного типа, логика перехода – по времени. Данные для каждого шага по регистрам программы регулирования №1 приведены в таблице 4. Отсчет времени происходит от момента запуска программы регулирования (переход в автоматический режим регулирования).
Рисунок 8
Таблица 4
Номер шага
|
Номер регистра
|
Данные
|
Масштаб
|
0х52 HI
|
1
|
1
|
0х52 LO
|
0
|
0х53 HI
|
10
|
0x53 LO - 0x55 HI
|
50,0
|
0x55 LO
|
0x10
|
2
|
0x56 - HI
|
0
|
0x56 - LO
|
11
|
0x57 - 0x58
|
150,0
|
0x59 HI
|
0x10
|
3
|
0x59 – LO
|
0
|
0x5A - HI
|
9
|
0x5A LO - 0x5C HI
|
150,0
|
0x5C LO
|
0x10
|
4
|
0x5D - HI
|
0
|
0x5D - LO
|
10
|
0x5E - 0x5F
|
100,0
|
0x60 HI
|
0x12
|
0x60 LO
|
*
|
- байт не несет никакой информации и добавлен только для четности.
Приложение А.
(Справочное)
СОДЕРЖАНИЕ РЕГИСТРОВ ПАМЯТИ ПРИБОРА
Таблица А1
.
Регистры настройки
Адрес
|
Описание регистра
|
0x00
|
HI - Версия ПО; LO - тип прибора (23);
Номер версии ПО определяется делением на 100 содержи-мого младшего байта. Регистр запрещен для записи.
|
0x01
|
Параметры обмена:
LO – адрес устройства в сети; HI - скорость обмена:
0 – 9600
|
3 –57600
|
1 –19200
|
4 115200
|
2 –38400
|
|
0x02
|
HI – Закон регулирования; LO –. Регистр управления интерфейса RS-485.
Код
|
Закон регулирования
|
0
|
регулирование выключено
|
1
|
ON/OFF
|
2
|
ПИД – С
|
3
|
ПИД – S
|
4
|
ПИД – H/С
|
№ разряда
|
Описание разряда регистра управления интерфейса
|
0-1
|
Длина слова: 2 - 7 бит, 3 – 8 бит
|
2
|
Количество стоп-битов:
0 - 1стоп-бит; 1 - 2стоп-бита.
|
3
|
Контроль четности: 0 – запрещен.
|
4
|
Тип контроля четности:
0- нечетность; 1- четность
|
7
|
Тип протокола: 0 - ASCI(0), 1 - RTU
|
|
0
x03
|
Пароль калибровок, int – число.
|
0x04-0x05
|
Резерв
|
0x06
|
Режим измерения прибора.
HI – тип сигнала (датчика); LO – конфигурация прибора
|
Продолжение таблицы А1.
Адрес
|
Описание регистра
|
0x06
|
Тип сигнала (датчика)
,
диапазон
|
Код
|
Входной ток (0…5) мА
Входной ток (0…20) мА
Входной ток (4…20) мА
|
0
1
2
|
Вх. напряжение - (0…10) мВ
Вх. напряжение - (0…100) мВ
Вх. напряжение - (0…1) В
|
3
4
5
|
термопара S (100…1600)°C
термопара К (-200…1300)°C
термопара L (-200…800)°C
термопара B (500…1800)°C
термопара A1 (0…2500)°C
|
6
7
8
9
10
|
термопара N (-200…1300)°C
термопара J (-200…1200)°C
термопара T (-200…400)°C
|
11
12
13
|
ТСП50, W100
= 1.391 (-200…750)°C
|
14
|
ТСМ50, W100
= 1.426 (-50…200)°C
|
15
|
ТСМ50, W100
= 1.428 (-190…200)°C
|
16
|
Pt100, W100
= 1.385 (-200…750)°C
|
17
|
ТСП100, W100
= 1.391 (-200…750)°C
|
18
|
ТСМ100, W100
= 1.426 (-50…200)°C
|
19
|
ТСМ100, W100
= 1.428 (-190…200)°C
|
20
|
ТСН100, W100
= 1.617 (-60…180)°C
|
21
|
Pt500, W100
= 1.385 (-200…650)°C
|
22
|
ТСП500, W100
= 1.391 (-200…650)°C
|
23
|
ТСМ500, W100
= 1.426 (-50…200)°C
|
24
|
ТСМ500, W100
= 1.428 (-190…200)°C
|
25
|
ТСН500, W100
= 1.617 (-60…180)°C
|
26
|
Pt1000, W100
= 1.385 (-200…650)°C
|
27
|
ТСП1000, W100
= 1.391 (-200…650)°C
|
28
|
ТСМ1000, W100
= 1.426 (-50…200)°C
|
29
|
ТСМ1000, W100
= 1.428 (-190…200)°C
|
30
|
ТСН1000, W100
= 1.617 (-60…180)°C
|
31
|
ТСП21, W100
= 1.391 (-200…750)°C
|
32
|
ТСМ23, W100
= 1.426 (-50…200)°C
|
33
|
|
Продолжение таблицы А1
Адрес
|
Описание регистра
|
0x06
|
Тип сигнала (датчика)
,
диапазон
|
Код
|
R100 (0…100) Ω
R1000 (0…1000) Ω
R2000 (0…2000) Ω
|
34
35
36
|
PK15 (700…1500)°C
PK20 (800…1900)°C
PС20 B (900…2000)°C
|
37
38
39
|
№ разряда
|
Описание разрядов регистра конфигурации прибора
|
0
|
Наличие архивной (Flash) памяти прибора:
0 – память отсутствует.
|
1-2
|
Тип реле.
0 – нет реле; 1 – 2 э/магнитных реле;
2 – 4 полупроводниковых реле;
3 – 4 поляризованных реле.
|
3
|
Выход (4-20) мА.
0 – выход отсутствует.
|
|
0x07-0x08
|
Полоса фильтра, float – число.
|
0x09-0x0A
|
Постоянная вр. RC-фильтра, float – число.
|
0x0B - 0x0C
|
Значение уставки реле №1, float – число.
|
0x0D - 0x0E
|
Значение уставки реле №2, float – число.
|
0x0F - 0x10
|
Значение уставки реле №3, float – число.
|
0x11 - 0x12
|
Значение уставки реле №4, float – число.
|
0x13 - 0x14
|
Гистерезис уставки реле №1, float – число.
|
0x15 - 0x16
|
Гистерезис уставки реле №2, float – число.
|
0x17 - 0x18
|
Гистерезис уставки реле №3, float – число.
|
0x19 - 0x1A
|
Гистерезис уставки реле №4, float – число.
|
0x1B - 0x1С
|
Порог срабатывания реле №1, float – число.
|
0x1D - 0x1E
|
Порог срабатывания реле №2, float – число.
|
0x1F - 0x20
|
Порог срабатывания реле №3, float – число.
|
0x21 - 0x22
|
Порог срабатывания реле №4, float – число.
|
0x23
|
HI - Тип логики компаратора №1.
LO - Тип логики компаратора №2.
|
0x24
|
HI - Тип логики компаратора №3.
LO - Тип логики компаратора №4.
|
0x25 - 0x26
|
Сдвиг характеристики датчика, float – число.
|
Продолжение таблицы А1
Адрес
|
Описание регистра
|
0x27 - 0x28
|
Наклон характеристики датчика, float – число.
|
0x29 - 0x2A
|
Начало диапазона масштабирования, float – число.
|
0x2B - 0x2C
|
Конец диапазона масштабирования, float – число.
|
0x2D - 0x2E
|
Начало диапазона преобразования выходного тока 4..20 мА, float – число.
|
0x2F - 0x30
|
Конец диапазона преобразования выходного тока 4..20 мА, float – число.
|
0x31
|
HI – Номер компаратора ускоренной регистрации (1..4, 0 - нет ускоренной регистрации).
LO – Регистр состояния реле.
Описание регистра состояния реле:
№ разряда
|
Описание разряда
|
0
|
Состояние контактов реле №1.
1 – контакты реле замкнуты.
|
1
|
Состояние контактов реле №2.
|
2
|
Состояние контактов реле №3.
|
3
|
Состояние контактов реле №4.
|
4
|
Состояние уставки №4.
|
5
|
Состояние уставки №3.
|
6
|
Состояние уставки №2.
|
7
|
Состояние уставки №1.
1 - уставка сработала.
|
|
0x32
|
HI – Положение десятичной точки
при масштабировании
входного сигнала (количество
цифр
дробной части): 0 – 3;
LO – Яркость индикаторов (0 - 4).
|
0х33
|
Период сохранения информации во Flash-памяти (0 - 999 сек., 0 – функция архивирования выключена), int – число.
|
0x34..0x35
|
Коэффициент пропорциональности Кп для ПИД или зона возврата в ON/ OFF – закона, float – число.
|
0x36..0x37
|
Коэффициент интегрирования Ки для ПИД-законов, float – число.
|
0x38..0x39
|
Коэффициент дифференцирования Ки для ПИД-законов, float – число.
|
0x3A..0x3B
|
Задание на регулирование, float – число.
|
0x3C..0x3D
|
Переходное запаздывание То ОУ, float – число.
|
0x3E..0x3F
|
Коэффициент эффективности Ко, float – число.
|
0x40..0x41
|
Транспортное запаздывание Тz, float – число.
|
Продолжение таблицы А1
Адрес
|
Описание регистра
|
0x42..0x43
|
Минимальная длительность управляющего импульса (сек., ПИД-S, ПИД-H/C) или минимальное ограничение сигнала управления (%, ПИД-С), float – число.
|
0x44..0x45
|
Время перемещения исполнительного механизма (сек., ПИД-S) или максимальное ограничение сигнала управления (%, ПИД-С), float – число.
|
0x46..0x47
|
Регистр настроек прибора CSR.
№ разряда
|
Описание разряда
|
0-1
|
Режим работы реле №1:
0 – реле выключено;
1 – управление в регулировании;
2 – сигнализация по уровню сигнала;
3 – сигнализация по скорости измене-ния сигнала;
|
2-3
|
Режим работы реле №2
|
4-5
|
Режим работы реле №3
|
6-7
|
Режим работы реле №4
|
8-9
|
Тип реле:
0 - нет реле;
1 – электромагнитные реле (2 шт.);
2 - полупроводниковые реле (4 шт.);
3 - поляризованные реле (4 шт.);
|
10
|
0 - "Прямой ход" регулирования
1 - "Обратный ход" регулирования.
|
11
|
Резерв
|
12
|
1 - Включение термокомпенсации
|
13
|
1 - Разрешение Iвых = (4..20)мА
|
14
|
0 - Регулирование по заданию;
1 - Регулирование по программе.
|
15
|
0 - 4-х проводный датчик ТС;
1 - 3-х проводный датчик ТС.
|
16
|
0 - Автоматический режим регулирования
1 - Ручной режим регулирования.
|
17
|
1 – Включено масштабирование
|
18
|
1 – Включено корнеизвлечение
|
19
|
1- Измерение разрешено
|
|
Продолжение таблицы А1.
0x46..0x47
|
№ разряда
|
Описание разряда
|
20-21
|
Состояние прибора после восстановления питания:
0 – возврат в тот же режим;
1 – старт с шага №1 текущей программы;
2 – переход в «СТОП». Режим измерений, регулирование выключено;
|
22
|
1- Включена функция "лупы" для Iвых = (4..20)мА
|
23
|
Резерв
|
24
|
Исходное состояние реле №1 при включении прибора:
0 – контакты реле разомкнуты;
1 – контакты реле замкнуты.
|
25
|
Исходное состояние реле №2 при включении прибора:
0 – контакты реле разомкнуты;
1 – контакты реле замкнуты.
|
26
|
Исходное состояние реле №3 при включении прибора:
0 – контакты реле разомкнуты;
1 – контакты реле замкнуты.
|
27
|
Исходное состояние реле №4 при включении прибора:
0 – контакты реле разомкнуты;
1 – контакты реле замкнуты.
|
Запись «0» в разряды регистра CSR означает выключение или запрещение функции.
|
0x48..0x51
|
Зарезервировано для расширения системы.
|
0x52..0xC3
|
Программа регулирования №1.
|
0xC4..0x135
|
Программа регулирования №2.
|
0x136..0x1A7
|
Программа регулирования №3.
|
0x1A8..0x219
|
Программа регулирования №4.
|
0x21A
|
HI – Регистр клавиатуры; LO – Регистр состояния ошибок.
Регистр клавиатуры
служит для дистанционного управле-ния прибором (дополнительно см. регистр 0x21B).
|
Продолжение таблицы А1
Адрес
|
Описание регистра
|
0x21A
|
Коды клавиатуры:
Код клавиши
|
Описание клавиши
|
0
|
Клавиши не нажаты
|
1
|
«Вверх»
|
2
|
«Вправо»
|
4
|
«Сброс»
|
8
|
«Ввод»
|
При одновременном нажатии двух и более клавиш код в регистре клавиатуры формируется, как арифметическая сумма кодов нажатых клавиш.
Описание регистра состояния ошибок:
№ разряда
|
Описание разряда
|
0
|
Ошибка АЦП (нет готовности данных).
|
1
|
Ошибка чтения/записи энергонезависимой Flash-памяти архива.
|
2
|
Ошибка чтения/записи EEPROM-памяти настроек и коэффициентов.
|
3
|
Обрыв датчика.
|
4
|
Разряжена или отсутствует батарея.
|
5 - 7
|
Заняты системой.
|
Примечание
Регистр сос-тояния оши-бок доступен только для чтения. Все попытки за-писи в дан-ный регистр игнорирую-тся.
|
0x21B
|
HI – регистр режима работы; LO – резерв
Регистр режима работы служит для дистанционного управления прибором.
Коды режима
|
Тип режима
|
0
|
Режим измерения/регулирования
|
1
|
Главное меню параметров (установка режимов)
|
2
|
Работа с Flash-картой
|
3
|
Калибровка прибора
|
4
|
Режим тестов (поверка прибора)
|
5
|
Редактирование задания для регулирования
|
6
|
Редактирование программы регулирования
|
7
|
Автонастройка ПИД-регулятора
|
|
Продолжение таблицы А1.
Адрес
|
Описание регистра
|
0x21С - 0x21E
|
Регистры часов реального времени. Предназначены для чтения – записи показаний текущего времени и даты. Показания часов используются при сохранении данных в архив.
0x21С HI
|
0x21С LO
|
0x21D HI
|
0x21D LO
|
0x21E HI
|
0x21E LO
|
Секунды
|
Минуты
|
Час
|
Дата
|
Месяц
|
Год
|
0 - 59
|
0 - 59
|
0 - 23
|
1 - 31
|
1 - 12
|
0 - 99
|
|
Таблица А2.
Регистры данных
Адрес
|
Описание регистра
|
0x00 - 0x 01
|
Данные последнего измерения, float – число..
|
0x02
|
HI –
регистр состояния ошибок
(см. Таблицу А1, регистр 0x21A); LO –
Регистр состояния реле
.
Описание регистра состояния реле:
№ разряда
|
Описание разряда
|
0
|
Состояние контактов реле №1.
1 – контакты реле замкнуты.
|
1
|
Состояние контактов реле №2.
|
2
|
Состояние контактов реле №3.
|
3
|
Состояние контактов реле №4.
|
4
|
Состояние уставки №4.
|
5
|
Состояние уставки №3.
|
6
|
Состояние уставки №2.
|
7
|
Состояние уставки №1.
1 - уставка сработала.
|
|
0x03
|
HI – Номер исполняемой программы регулирования (0..3);
LO – Номер текущего шага программы (0..31)
|
0
x04 - 0x06
|
Время и дата проведения последней калибровки прибора
0x04
HI
|
0
x04
LO
|
0x05
HI
|
0x05
LO
|
0x06
HI
|
0x06
LO
|
мин
|
ч
|
Дата
|
Месяц
|
Год
|
0 - 59
|
0 - 59
|
1 - 31
|
1 - 12
|
2000 - 2099
|
|
0x07 - 0x0F
|
Зарезервировано для возможных расширений.
|
0x10 - 0x15
|
Получить последнюю запись архива (смотри п.3.2).
|
0x16 - 0x1B
|
Получить самую первую запись архива.
|
0x1C - 0x21
|
Получить предыдущую запись архива.
|
0x22 -
0
x27
|
Получить последующую запись архива.
|
Приложение Б.
(Справочное)
КОДЫ ОШИБОК ПРИБОРА
При ошибке обмена данными поле команды содержит признак ошибки, сформированный как код команды, в старшем бите которого 1. Дополнительно в поле данных “ОТВЕТА” помещается уникальный код ошибки. Разряды 0 – 4 кода ошибки совпадают с соответствующими разрядами регистра состояния ошибок
0x21A (смотри таблицу А1).
Структура кода ошибки
|
Номер разряда
|
Описание
|
0
|
Ошибка АЦП (нет готовности данных)
|
1
|
Ошибка чтения/записи энергонезависимой Flash-памяти архива.
|
2
|
Ошибка чтения/записи EEPROM-памяти настроек и коэффициентов.
|
3
|
Обрыв датчика
|
4
|
Разряжена или отсутствует батарея.
|
5
|
Обращение к неизвестному регистру
|
6
|
Неизвестная команда
|
7
|
Ошибка КС
|
|