Инструкция по эксплуатации KROHNE Summit 8800 RU
Страница 50
Summit 8800, справочное руководство
Стр 50 из 127
Изд. 005 Ред. 13.02/12
ОПРЕДЕЛЕНИЯ КОММУНИКАЦИОННОГО ПАКЕТА MODBUS RTU
Чтение данных
Запросы на чтение
[T1‐T2‐T3‐T4]KKFCssssnnnn<CRC>[T1‐T2‐T3‐T4]
Ответы на допустимые запросы на чтение:
[T1‐T2‐T3‐T4]KKFCbb<DATA><CRC>[T1‐T2‐T3‐T4]
Ответы на недопустимые запросы на чтение
[T1‐T2‐T3‐T4]KK8FCcc<CRC>[T1‐T2‐T3‐T4]
Значения отсутствуют
Ответ не будет получен в том случае, если запрос не будет содержать допустимые символы,
либо контрольная сумма будет неверной.
Где
a)
[T1‐T2‐T3‐T4] время ожидания, соответствующее периоду следования 3,5 символов
b)
KK – номер идентификации, который должен использоваться в качестве
идентификационного номера устройства
c)
FC – код функции чтения; поддерживаются следующие коды:
01hex – код Modbus «Read Coil Status»
02hex – код Modbus «Read Input Status»
03hex – код Modbus «Read Holding registers»
04hex – код Modbus «Read Input registers»
d)
8FChex – код Modbus «Ответ "исключение"» для неверного сообщения, где старший бит
поля кода функции получает значение 1, поэтому код функции 03 будет возвращен
в виде числа 83.
e)
ssss – начальный адрес в диапазоне от 0000 до FFFF (от 0 до 63535 в десятичном
формате).
f)
nnnn – количество регистров в диапазоне от 0001 до 00FF (от 1 до 255 в десятичном
формате).
g)
bb – количество передаваемых байт.
h)
<CRC> Контрольная сумма, которая рассчитывается как 16‐битная контрольная CRC
следующим образом
1. Загрузите 16‐битный регистр с 0000H (все нули), назовите его CRC register (регистр
CRC).
2. Выполните операцию EX‐OR (исключающее «ИЛИ») над первым байтом сообщения
и младшим байтом 16‐битного регистра CRC, и разместите результат в регистре CRC.
3. Сместите регистр CRC на один бит вправо (по направлению к самому младшему
биту), заполнив старший бит нулем. Выделите и проверьте самый младший бит.
4. (Если самый младший бит равен 0), повторите шаг 3 (еще одно смещение), (если
самый младший бит равен 1), выполните операцию исключающее ИЛИ (EX‐OR) над
регистром CRC и множественным значением A001H
5. Повторяя шаги 3 и 4, сделайте 8 смещений. После этого обработка 8‐битного байта
заканчивается.
6. Повторите шаги от 2 до 5 для следующего байта сообщения. Обработайте все байты,
выполняя описанные выше действия.
7. В результате в регистре CRC окажется значение CRC.
i)
<DATA> элементы данных nnnn
j)
cc – код ошибки:
i)
01 Неправильная функция
ii)
02 Неправильный адрес данных
iiI)
03 Неправильное значение данных