PDA

Просмотр полной версии : Имитация.



BSA
15.03.2023, 07:23
Здравствуйте, уважаемые знатоки!
Имеется контролер спк 105 2011 г.в, стоит задача на основе этого контролера сделать 'имитацию нескольких устройств Modbas Slave с нужными номерами регистров читаемых другим ПЛК по 485 работающему в режиме Master. Суть вопроса , как со стороны СПК 105( Slave) организовать имитацию чтобы master брал данные с регистра с например с 50.т.е интересует как создать регистр именно с номером 50 на СПК 105 Slave/.

capzap
15.03.2023, 07:49
с помощью библиотек

Евгений Кислов
15.03.2023, 08:06
Здравствуйте, уважаемые знатоки!
Имеется контролер спк 105 2011 г.в, стоит задача на основе этого контролера сделать 'имитацию нескольких устройств Modbas Slave с нужными номерами регистров читаемых другим ПЛК по 485 работающему в режиме Master. Суть вопроса , как со стороны СПК 105( Slave) организовать имитацию чтобы master брал данные с регистра с например с 50.т.е интересует как создать регистр именно с номером 50 на СПК 105 Slave/.

Добрый день.
См. п. 7:
https://ftp.owen.ru/CoDeSys3/11_Documentation/01_SPK/SPK_Modbus_v.1.1.pdf

BSA
15.03.2023, 09:30
Правильно я понял:
Для нескольких имитируемых устройств создаем несколько ФБ ( MB_SLAVE) j они могут иметь одинаковый ComHandle порта, но разные DevAddr.
Необходимо обеспечить асинхронную т.е исключение одновременной работы ФБ для каждого имитируемого Slave устройства.
BufSize будет определять максимальное кол-во регистров.
pBuffer через него будет определяться номер регистра имитируемого устройства.
?

Евгений Кислов
15.03.2023, 09:34
Думаю, что так не получится. В каждый момент времени можно использовать только один экземпляр ФБ MB_Slave, насколько я помню.