PDA

Просмотр полной версии : ПЛК100 Modbus TCP Master реализация



Xalik
10.02.2019, 19:52
Добрый день!

Есть ПЛК100. Задача следующая, опрашивать устройства Modbus RTU. Управлять дискретными выходами через МУ110. Устройства Modbus RTU опрашиваются через конвертер протокола Modbus TCP -> Modbus RTU. МУ110 управляются напрямую по RS485 с ПЛК100.

Проблема - ПЛК100 не может "прожевать" конфигурацию из ~20 устройств. Половину опрашивает на одной линии (1 физическая линия RS485 подключенная к порту конвертера, в ПЛК100 10 устройств на 1 IP адресе), половину нет. Устройства по одному, доступны на прямую все. Modbus TCP сконфигурирован через "Конфигурацию ПЛК". В чем может быть проблема? физические ограничения ПЛК? пример проекта прикладываю.

Так же заметил при вводе команды "?" в PLC конфигураторе, где то по середине текста половина хелпа отображается сбитой кодировкой. А при записи такой программы, появляется ошибка Module not initialized Error! Device Id=2000

melky
10.02.2019, 23:23
ПЛК100 какая буква ? ограничения в документации читали ?

Xalik
11.02.2019, 03:51
I
ПЛК100 какая буква ? ограничения в документации читали ?
R.M
Про какие ограничения вы говорите?

melky
11.02.2019, 08:47
На объем переменных для L и M версий, связанных с лицензией CodeSys.
По РЭ на М нет ограничения, но лучше уточнить, ибо на заборе тоже многое пишут.
Хотя указано что ограничение есть на внутренние переменные, связанные с количеством памяти самого ПЛК.

Xalik
11.02.2019, 10:03
На объем переменных для L и M версий, связанных с лицензией CodeSys.
По РЭ на М нет ограничения, но лучше уточнить, ибо на заборе тоже многое пишут.
Хотя указано что ограничение есть на внутренние переменные, связанные с количеством памяти самого ПЛК.

"Не приобретая контроллер, но установив на компьютере CoDeSys и Target-файл, вы можете создать проект и в окне PLC_Configuration подключить все необходимые модули. Если памяти достаточно, компиляция проекта пройдет успешно, если же нет – CoDeSys выдаст ошибку. При компиляции будут учтены все особенности, в том числе требования по выравниванию переменных. Для осуществления подобной проверки собственно программу контроллера писать не требуется." - написно на сайте. COdesys же ошибку мне про память не выдает, все компилируется. Кажется какая-то проблема самого контроллера.

capzap
11.02.2019, 12:05
если попробуете удалять по одному UMD и заливать программу в контроллер и например он "зальется" без пары-тройки модулей, значит дело в физическом ограничении памяти конкретного плк. Можете поискать на форуме как сделать опрос слейвов через библиотеки, тогда не будет проблем с ошибками конфигурации

Xalik
20.02.2019, 07:00
если попробуете удалять по одному UMD и заливать программу в контроллер и например он "зальется" без пары-тройки модулей, значит дело в физическом ограничении памяти конкретного плк. Можете поискать на форуме как сделать опрос слейвов через библиотеки, тогда не будет проблем с ошибками конфигурации

Спасибо, способ через библиотеки действительно помог.