Ограничения доступа в модели данных протокола Modbus - PullRequest
1 голос
/ 30 июня 2011

Какая разница между регистрами в модели данных протокола Modbus?

Протокол определяет следующую модель данных:

| Discretes Input   | Single bit | Read-only  |
| Coils             | Single bit | Read-write |
| Input Registers   | 16-bit     | Read-only  |
| Holding Registers | 16-bit     | Read-write |

Кому разрешено читать и писать? Это относится к ведущему (клиенту) или подчиненному (серверу). Если ограничения доступа применяются к мастеру, то слово «вход» в регистрах только для чтения не имеет для меня особого смысла. Если все наоборот, то зачем ведомому устройству иметь регистры, которые он не может изменить?

Официальный документ спецификации протокола не ясен по этому вопросу, поэтому, пожалуйста, помогите.

Спасибо

Ответы [ 3 ]

1 голос
/ 01 июля 2011

Подчиненное устройство обычно имеет несколько входных интерфейсов для какого-либо внешнего устройства, которое оно отслеживает.Вы хотите знать, каково состояние этих входов, чтобы вы могли принять какое-то решение на основе их состояния.Эти входы не могут быть изменены вами и доступны только для чтения.Подчиненный принимает входные состояния и передает их вам как значение только для чтения в регистре.Ведомое устройство создает отчет на основе физического состояния входов.

Элементы чтения-записи - это регистры, которые позволяют отправлять информацию о состоянии подчиненному устройству, которое появится на выходах контроллера.Они доступны для записи, так что вы можете контролировать их состояние и читать, чтобы вы могли проверить, что то, что вы написали, действительно получилось там.Датчики будут только для чтения, а управление освещением (красный, желтый, зеленый) будет считываться / записываться, так что вы можете установить и проверить состояние освещения.

0 голосов
/ 06 сентября 2011
  1. Дискретные входы - чтение логических входов (например, 0 В / 5 В, 0 В / 24 В, датчики с цифровым выходом, замкнутая цепь ...)
  2. Катушки - запись логических выходов (принудительное включение некоторого напряжения на выходе, включение / выключение реле ...)
  3. Входные регистры - считывание аналогового входа (считывание необработанной температуры, расхода, давления ... обычно через напряжение или ток)
  4. Удерживающие регистры - записывают аналоговый выход (форсируют некоторое необработанное выходное значение ... обычно напряжение или ток)

Помните, что вы можете иметь дело с необработанными значениями, которые вы должны масштабировать на своей стороне, или с уже масштабированными значениями, выраженными в технических единицах. Поскольку тип слова не совсем подходит для этого, обычно 2 16-разрядных регистра объединяются, чтобы получить один 32-разрядный регистр с плавающей запятой.

0 голосов
/ 06 сентября 2011

Полное объяснение модели данных Modbus можно найти в разделе 4.3 Спецификации протокола приложения Modbus, доступной по адресу modbus.org по этой ссылке: http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf

Важно отметить, что в спецификации показаны двапримеры реализации модели данных Modbus.Один, где каждый из типов регистров находится в другой ячейке памяти, а другой - где все они находятся в одной и той же памяти.В последнем случае входной регистр # 1 (16 бит) будет содержать состояние дискретных входов # 1 до # 16

...