Вопрос, который задавался в самом начале обсуждения: "два контроллера CJ1 с модулями CJ1W-PNT21. Можно ли и как организовать связь между ними?"...
Недавно сам столкнулся именно с этой задачей, и могу сказать, что ДА, организовать обмен возможно. Т.к. подключился к проекту я почти на "финишной прямой", оборудование уже было закуплено, и в наличие были именно модули CJ1W-PNT21. Нужно было организовать обмен данными исходя из того что имеем, и результаты консультаций с представителем Омрон не очень обнадежили, они рекомендовали заменить их на модули CJ1W-EIP21.
Поэтому был собран стенд на базе 2х ПЛК с CJ1M-CPU13 + CJ1W-PNT21 и проведены ряд экспериментов. Обмен данными при помощи команд SEND/RECV. В результате я добился обмена 6 слов запись/чтение, период обновления у меня получился ~50 ms.
Понятно, что подружить их как Profinet master/slave не получиться они могут быть только master. Поэтому СX-ConfiguratorFDT был использован только для того, чтобы поднять на этих модулях Ethernet, задать IP адрес, и т.п. Слейвов по факту вообще не было, но в конфигурации я добавил "GRT1-PNT SmartSlice I/O Coupler", т.к. иначе он бы не запустился. После этого, в одном из ПЛК, я организовал вызов команд SEND/RECV. Вопрос только в том, как правильно составить управляющее слово. Каждая команда привязывалась на свой логический порт, например 6 и 7-й, чтобы можно было их выполнять параллельно. По большому счету, все в соответствии с инструкцией W340. Но есть ряд нюансов, которые учел из других инструкций. А именно: Адрес сети назначения = 2 (возможно и 0 подошел бы, но у меня в таблице маршрутизации я указал и загрузил в ПЛК модуль #0 в сеть #2); Номер посл. порта = 0, это не HostLink, понятно; Адрес модуля назначения = 0 (у меня он стоял в стойке сразу за CPU, судя по всему, именно из этого надо исходить, хотя в нем переключатель стоял на 6 и указан в таблице I/O unit 6); Адрес узла назначения = последний октет IP адреса.
Надеюсь, данная информация будет кому-то полезна.
|