В протокол Modbus можно выделить несколько подмножеств команд ( Таблица 3-1).
Подмножество команд
Диапазон кодов команд
Стандартные команды
1-21
Резерв для расширенных функций
22-64
Пользовательские
65-119
Резерв для внутренних нужд
120-255
Таблица 3-1
X10 Preset Multiple Registers (Установка значений в несколько регистров)
Тип адресации 4x
Значения регистров передаются в линию начиная с указанного адреса, следующие значения регистров передаются после него (см. поле "Данные"). Ниже приведены примеры команды ведущего устройства (таблица 3-2) и ответа ведомого (таблица 3-3):
Направление передачи
00 адрес подчиненного устройства
01 номер функции
02 Адрес ст. байт
03 Адрес мл. байт
04 Кол. регистров ст. байт
05 Кол. регистров мл. байт
06 Кол. байт
07 Данные ст. байт
08 Данные мл. байт
09 CRC мл. байт
10 CRC ст. байт
Master→Slave
0x01
0x10
0x00
0x01
0x00
0x01
0x02
0xFF
0xFF
0xA6
0x31
Таблица 3-2. Пример установки значения в один регистр
Направление передачи
00 адрес подчиненного устройства
01 номер функции
02 Адрес ст. байт
03 Адрес мл. байт
04 Кол. регистров ст. байт
05 Кол. регистров мл. байт
06 CRC мл. байт
07 CRC ст. байт
Slave→Master
0x01
0x10
0x00
0x01
0x00
0x01
0x1C
0x08
Таблица 3-3.Ответ на команду установки значения в один регистр