Функция определяет операцию (чтение/запись) и область памяти, с которой эта операция будет
произведена.
Таблица 4.2 – Основные функции протокола Modbus
Код функции
Имя функции
Выполняемая команда
1 (0x01)
Read Coil Status
Чтение значений из нескольких регистров флагов
2 (0x02)
Read Discrete Inputs
Чтение значений из нескольких дискретных входов
3 (0x03)
Read Holding
Registers
Чтение значений из нескольких регистров хранения
4 (0x04)
Read Input Registers
Чтение значений из нескольких регистров ввода
5 (0x05)
Force Single Coil
Запись значения в один регистр флага
6 (0x06)
Preset Single Register Запись значения в один регистр хранения
15 (0x0F)
Force Multiple Coils
Запись значений в несколько регистров флагов
16 (0x10)
Preset Multiple
Registers
Запись значений в несколько регистров хранения
В различных документах идентичные обозначения могут иметь разный смысл в зависимости от
контекста. Например, префикс 0x часто используют как указание на шестнадцатеричную систему
счисления, поэтому в одном случае 0x30 может обозначать «30-й бит области памяти coils», а в
другом – «адрес 30 в шестнадцатиричной (HEX) системе счисления» (при этом данный адрес может
относиться к любой области памяти).
Опрос Slave может быть одиночным или групповым. При одиночном опросе Master считывает
каждый из параметров Slave отдельной командой.
При групповом опросе Master считывает одной командой сразу несколько параметров, чьи адреса
в карте регистров расположены строго последовательно и не имеют разрывов. Групповой опрос
позволяет уменьшить трафик в сети и время, затрачиваемое на опрос устройства, но в некоторых
случаях его применение невозможно (или возможно с ограничениями) из-за индивидуальных
особенностей прибора.
Достарыңызбен бөлісу: |