Просмотр полной версии : ПЛК150-220-А-М и самодельное устройство Modbus-master
fatlortroll
21.02.2020, 08:56
Добрый день.
Случилась необходимость связать с ПЛК150-220-А-М по протоколу Modbus самодельное устройство. Устройство будет master-ом.
Вопрос в том, как подэлементы модуля Modbus-slave отображаются на модель данных самого протокола (например, подэлемент Float), и какая у подэлементов модель адресации в рамках, опять же, самого Modbus-а?
Т.е. если я самодельным устройством запрошу у ПЛК подэлемент Float (AT %QD9.4.0) -- какими функциями и по какому адресу нужно выполнять запрос?
Все переменные в Конфигураторе slave с нуля, выравнивание для 1-но и 2-х регистровых (float) учитывайте. Где-то было в документации.
A.Simonov
21.02.2020, 12:47
Добрый день.
Случилась необходимость связать с ПЛК150-220-А-М по протоколу Modbus самодельное устройство. Устройство будет master-ом.
Вопрос в том, как подэлементы модуля Modbus-slave отображаются на модель данных самого протокола (например, подэлемент Float), и какая у подэлементов модель адресации в рамках, опять же, самого Modbus-а?
Т.е. если я самодельным устройством запрошу у ПЛК подэлемент Float (AT %QD9.4.0) -- какими функциями и по какому адресу нужно выполнять запрос?
Добрый день.
Это подробно описано в руководстве
https://owen.ru/uploads/23/rp_plc100-plc150-plc154_25.pdf
Стр. 56 - 62.
fatlortroll
21.02.2020, 13:04
Правильно ли я понимаю, что принудительно задать адрес в модели данных Modbus для подэлементов Modbus-slave в ПЛК невозможно, и он (адрес) будет определяться лишь расположением подэлемента в списке?
A.Simonov
21.02.2020, 16:38
Правильно ли я понимаю, что принудительно задать адрес в модели данных Modbus для подэлементов Modbus-slave в ПЛК невозможно, и он (адрес) будет определяться лишь расположением подэлемента в списке?
Да, вы правы.
fatlortroll
10.03.2020, 16:28
А какую функцию, тогда, несёт поле Node Id в базовых параметрах подэлемента? С его изменением меняются и адреса ввода/вывода/диагностики для подэлемента.
Опять же, птица Automatic calculation of addresses во вкладке настройки ПЛК тоже для чего-то существует?
И, если мне нужно получить от ПЛК функцию Modbus-Slave с регистром по адресу, например, 100 -- как решается подобная задача?
Филоненко Владислав
10.03.2020, 17:13
Для распределения памяти, а не адресов ModBus.
А решается задача использованием библиотеки. Вариантов много
fatlortroll
10.03.2020, 19:06
> только зачем?
Эмуляция связки пары-тройки устройств одним ПЛК. А у этих устройств вот такие адреса регистров, в районе сотни.
Всё, как обычно. Задание выдали, а ты извращайся, как хочешь.
fatlortroll
10.03.2020, 19:08
> ...библиотеки. Вариантов много
А можно подробности, и ссылки? Для особо ленивых, вроде меня.
A.Simonov
12.03.2020, 15:15
> ...библиотеки. Вариантов много
А можно подробности, и ссылки? Для особо ленивых, вроде меня.
Библиотека OwenModbusSlave
https://owen.ru/product/codesys_v2/libraries
fatlortroll
15.03.2020, 08:50
Спасибо большое, буду разбираться.
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot