Академический Документы
Профессиональный Документы
Культура Документы
Modbus Delta Протокол обмена данными rev.0.2 ru
Modbus Delta Протокол обмена данными rev.0.2 ru
: +375(01771)7-13-00
e-mail: office@mechatronics.by
http://www.mechatronics.by
Приложение к руководству
ЗАО Мехатроника
1. СОДЕРЖАНИЕ
1. СОДЕРЖАНИЕ 2
2. НАЗНАЧЕНИЕ И ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ 3
2.1 Назначение 3
2.2 Технические требования 3
2.3 Специфическая терминология 3
3. ОПИСАНИЕ ПРОТОКОЛА ОБМЕНА ДАННЫХ MODBUS 4
3.1 Общие сведения 4
3.2 Описание протокола 5
3.2.1 Категории кодов функций 5
3.2.2 Модель данных 6
3.2.3 Чтение данных 6
3.2.4 Алгоритм формирования CRC-16 10
4. ЗАВОД ИЗГОТОВИТЕЛЬ И ТЕХНИЧЕСКАЯ ПОДДЕРЖКА 11
© 2016 Мехатроника
3
2.1 Назначение
Протокол обмена данных предназначен для выдачи информации датчиками серий Delta
и Direct производства ЗАО «Мехатроника» в стандартизованном виде.
© 2016 Мехатроника
4
Для передачи пакета по физическим линиям связи PDU помещается в другой пакет,
содержащий дополнительные поля. Этот пакет носит название ADU. Формат ADU зависит от
типа линии связи. Для передачи сообщений применяется Modbus RTU. Сообщения разделяются
по паузе в линии. Сообщение должно начинаться и заканчиваться интервалом тишины,
длительностью не менее 3,5 символов при данной скорости передачи. Во время передачи
сообщения не должно быть пауз длительностью более 1,5 символов. Для скоростей более 19200
бод допускается использовать интервалы 1,75 и 0,75 мс, соответственно. Проверка целостности
осуществляется с помощью CRC.
© 2016 Мехатроника
5
Общая структура ADU следующая (в зависимости от реализации, некоторые из полей
могут отсутствовать):
Табл.2. Общая структура пакета PDU
где:
1) адрес ведомого устройства — адрес подчинённого устройства, к которому адресован
запрос. Ведомые устройства отвечают только на запросы, поступившие в их адрес. Ответ также
начинается с адреса отвечающего ведомого устройства, который может изменяться от 1 до 247.
Адрес 0 используется для широковещательной передачи, его распознаёт каждое устройство,
адреса в диапазоне 248…255 — зарезервированы;
2) код функции — это следующее однобайтное поле кадра. Оно говорит ведомому
устройству, какие данные или выполнение какого действия требует от него ведущее
устройство;
3) данные — поле содержит информацию, необходимую ведомому устройству для
выполнения заданной мастером функции или содержит данные, передаваемые ведомым
устройством в ответ на запрос ведущего. Длина и формат поля зависит от номера функции,
также в поле данных может быть детализация кода функции;
4) блок обнаружения ошибок — контрольная сумма для проверки отсутствия ошибок в
кадре.
Максимальный размер ADU для последовательных сетей RS232/RS485 — 256 байт.
© 2016 Мехатроника
6
стандартными, но уже используемые в устройствах, производимых различными компаниями.
Это коды 9, 10, 13, 14, 41, 42, 90, 91, 125, 126 и 127.
© 2016 Мехатроника
7
2) 04 (0x04) — чтение значений из нескольких регистров ввода (Read Input Registers).
3) 70 (0x70) — пользовательская команда.
Запрос состоит из адреса первого элемента таблицы, значение которого требуется
прочитать, и количества считываемых элементов. Адрес и количество данных задаются 16-
битными числами, старший байт каждого из них передается первым.
В ответе передаются запрошенные данные. Количество байт данных зависит от
количества запрошенных элементов. Перед данными передается один байт, значение которого
равно количеству байт данных.
Значения регистров хранения и регистров ввода передаются начиная с указанного
адреса, по два байта на регистр, старший байт каждого регистра передаётся первым.
Структура адресного пространства протокола представляет собой:
Табл.4. Адресное пространство протокола Modbus
№
Адрес Modbus Место хранения Тип данных Описание
п/п
Регистр ввода
1 0000
(младшие 16 бит) знаковый Объем топлива от момента
Регистр ввода 32 бит включения датчика (в 0.01 л.)
2 0001
(старшие 16 бит)
знаковый Текущая скорость потока (в
3 0002 Регистр ввода
16 бит 0.1 л/ч.)
беззнаковый
4 0003 Регистр ввода Статус*
16 бит
Регистр ввода
5 0004 Объем топлива камеры подачи
(старшие 16 бит) знаковый
от момента включения
Регистр ввода 32 бит
6 0005 датчика (в 0.01 л.)
(младшие 16 бит)
знаковый Текущая скорость потока
7 0006 Регистр ввода
16 бит камеры подачи (в 0.1 л/ч.)
знаковый Температура камеры подачи в
8 0007 Регистр ввода
16 бит (в 0.1 °С)
Регистр ввода Объем топлива камеры
9 0008
(старшие 16 бит) знаковый обратки от момента
Регистр ввода 32 бит включения датчика (в 0.01
10 0009
(младшие 16 бит) л/ч.)
знаковый Текущая скорость потока
11 0010 Регистр ввода
16 бит камеры обратки (в 0.1 л/ч.)
знаковый Температура камеры обратки
12 0011 Регистр ввода
16 бит (в 0.1 °С)
Регистр ввода
13 0012 Накопленный объем топлива в
(старшие 16 бит) знаковый
режиме "Холостой ход" (в 0.01
Регистр ввода 32 бит
14 0013 л.)
(младшие 16 бит)
Регистр ввода
15 0014 Накопленный объем топлива в
(старшие 16 бит) знаковый
режиме "Номинальный" (в
Регистр ввода 32 бит
16 0015 0.01 л.)
(младшие 16 бит)
© 2016 Мехатроника
8
Регистр ввода
17 0016 Накопленный объем топлива в
(старшие 16 бит) знаковый
режиме "Перегрузка" (в 0.01
Регистр ввода 32 бит
18 0017 л.)
(младшие 16 бит)
Регистр ввода
19 0018
(старшие 16 бит) знаковый Накопленный объем топлива в
Регистр ввода 32 бит режиме "Накрутка" (в 0.01 л.)
20 0019
(младшие 16 бит)
Регистр ввода
21 0020 Накопленный объем топлива в
(старшие 16 бит) знаковый
режиме "Отрицательный" (в
Регистр ввода 32 бит
22 0021 0.01 л.)
(младшие 16 бит)
Регистр ввода
23 0022 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры подачи в режиме
Регистр ввода 32 бит
24 0023 "Холостой ход" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
25 0024 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры подачи в режиме
Регистр ввода 32 бит
26 0025 "Номинальный" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
27 0026 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры подачи в режиме
Регистр ввода 32 бит
28 0027 "Перегрузка" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
29 0028 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры подачи в режиме
Регистр ввода 32 бит
30 0029 "Накрутка" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
31 0030 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры обратки в режиме
Регистр ввода 32 бит
32 0031 "Холостой ход" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
33 0032 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры обратки в режиме
Регистр ввода 32 бит
34 0033 "Номинальный" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
35 0034 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры обратки в режиме
Регистр ввода 32 бит
36 0035 "Перегрузка" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
37 0036 Накопленный объем топлива
(старшие 16 бит) знаковый
камеры обратки в режиме
Регистр ввода 32 бит
38 0037 "Накрутка" (в 0.01 л.)
(младшие 16 бит)
Регистр ввода
39 0038
(старшие 16 бит) знаковый Время нахождения в режиме
Регистр ввода 32 бит "Холостой ход" (в сек.)
40 0039
(младшие 16 бит)
Регистр ввода
41 0040
(старшие 16 бит) знаковый Время нахождения в режиме
Регистр ввода 32 бит "Номинальный" (в сек.)
42 0041
(младшие 16 бит)
© 2016 Мехатроника
9
Регистр ввода
43 0042
(старшие 16 бит) знаковый Время нахождения в режиме
Регистр ввода 32 бит "Перегрузка" (в сек.)
44 0043
(младшие 16 бит)
Регистр ввода
45 0044
(старшие 16 бит) знаковый Время нахождения в режиме
Регистр ввода 32 бит "Накрутка" (в сек.)
46 0045
(младшие 16 бит)
Регистр ввода
47 0046
(старшие 16 бит) знаковый Время нахождения в режиме
Регистр ввода 32 бит "Отрицательный" (в сек.)
48 0047
(младшие 16 бит)
Регистр ввода
49 0048 Время нахождения камеры
(старшие 16 бит) знаковый
подачи в режиме "Холостой
Регистр ввода 32 бит
50 0049 ход" (в сек.)
(младшие 16 бит)
Регистр ввода
51 0050 Время нахождения камеры
(старшие 16 бит) знаковый
подачи в режиме
Регистр ввода 32 бит
52 0051 "Номинальный" (в сек.)
(младшие 16 бит)
Регистр ввода
53 0052 Время нахождения камеры
(старшие 16 бит) знаковый
подачи в режиме "Перегрузка"
Регистр ввода 32 бит
54 0053 (в сек.)
(младшие 16 бит)
Регистр ввода
55 0054 Время нахождения камеры
(старшие 16 бит) знаковый
подачи в режиме "Накрутка"
Регистр ввода 32 бит
56 0055 (в сек.)
(младшие 16 бит)
Регистр ввода
57 0056 Время нахождения камеры
(старшие 16 бит) знаковый
обратки в режиме "Холостой
Регистр ввода 32 бит
58 0057 ход" (в сек.)
(младшие 16 бит)
Регистр ввода
59 0058 Время нахождения камеры
(старшие 16 бит) знаковый
обратки в режиме
Регистр ввода 32 бит
60 0059 "Номинальный" (в сек.)
(младшие 16 бит)
Регистр ввода
61 0060 Время нахождения камеры
(старшие 16 бит) знаковый
обратки в режиме
Регистр ввода 32 бит
62 0061 "Перегрузка" (в сек.)
(младшие 16 бит)
Регистр ввода
63 0062 Время нахождения камеры
(старшие 16 бит) знаковый
обратки в режиме "Накрутка"
Регистр ввода 32 бит
64 0063 (в сек.)
(младшие 16 бит)
Регистр ввода
65 0064
(старшие 16 бит) знаковый Время нахождения в режиме
Регистр ввода 32 бит "Вмешательство" (в сек.)
66 0065
(младшие 16 бит)
Регистр ввода
67 0066
(старшие 16 бит) знаковый
Время работы датчика (в сек.)
Регистр ввода 32 бит
68 0067
(младшие 16 бит)
© 2016 Мехатроника
10
Регистр ввода
69 0068
(старшие 16 бит) беззнаковый
Серийный номер прибора
Регистр ввода 32 бит
70 0069
(младшие 16 бит)
беззнаковый
71 0070 Регистр ввода Тип прибора
16 бит
© 2016 Мехатроника