Подключение NB3Q к NX1P через RS422

У Omron есть давно известная серия панелей NB3, а именно самый доступный вариант - NB3Q размером в 3 дюйма. Она исторически легко и просто программировалась в паре контроллерами серий CJ или CP производства Омрон, а также с контроллерами другими производителей.

Где-то в 2016 году компания Omron начала переход на новые серии - NJ и NX соотвественно. Эти серии, конечно, гораздо более полно отвечают современным требованиям. Более удобное программное обеспечение, человеческая работа через Ethernet, скорость работы, автоматизации работы с памятью и... стоп, работа с памятью? Здесь поясним.

Любой контроллер состоит из набор чипов, каждый со своей памятью. Соответственно, программисту приходилось выбирать сектор (чип) - W, D, E и так далее. И уже внутри сектора выбирать адресацию и размер - например, бит по адресу W0.00 или целое число по адресу W12. Сейчас речь не про то, на сколько это удобно и на сколько лучше это автоматизировать. Речь про следующее.

Сама панель человеко-машинного интерфейс NB3Q настраивается с помощью программы NB-Designer. Внутри программы логика работы строится на следующем, не хитром принципе. Например, надо включить или выключить предупреждение на экране. Для этого в контроллере по адресу, например, W53.09 есть бит. Он равен единице - надо выводить предупреждение. Не равен единице - не надо выводить. Пока всё просто.

Дальше панель NB через штатный кабель подключается в штатный разъём на контроллере CJ/CP. Под штатным здесь подразумевается то, что производитель по-умолчанию рекомендует.

И вот для современного контроллера NX1P мы берём и чуть более модный разъём для работы с NB - NX1W-CIF11. По стандарту у него и скорости выше, и рабочая длина кабеля больше. Всё включаем и ничего не работает, панель не горит, светодиоды не моргают. Но это даже не первая проблема. Сначала мы видим что на NX1W-CIF11 нет разъёма типа D9. Там просто 5 пружинных контакта.

Как это всё собрать?

Сначала быстро вспоминаем спецификация стандарта RS422 (NX1W-CIF11 работает и как RS422, и как RS485). В большинстве случаев речь идёт о 4-х проводном подключении плюс общий. У Omron-а есть инструкция V108 где есть "распиновка" выходов во встроенном разъёме COM1. Кстати, такие инструкции есть и по другим продуктам Omron, а также у других производителей по своим продуктам.

У нас получается:

- У NB3Q контакт №1 - положительный на отправку, SDB+. Значит его заводим в положительный на приём у NX1P, RDB+.

- [аналогично] №6 у NB3Q - SDB+ у NX1P.

- [аналогично] №7 у NB3Q - RDA- у NX1P.

- [аналогично] №8 у NB3Q - SDA- у NX1P.

- Корпус у NB3Q - на SHLD. Мы, правда, туда вывели №9 с NB3Q.

Таким образом мы подключили NB3Q к NX1P через RS422.

Осталось несколько мелочей. RS485 и RS422 имеют возможность работы более чем с одним устройством. Значит в нашем случае на NB3Q сзади на DIP переключателе включаем контакт 3, а на NX1P - первый контакт. Это окончательные резисторы.

Как настроить программу?

В Sysmac Studio надо сначала добавить плату NX1W-CIF11. Для этого в Option Board Settings можно просто кликнуть Apply Actual Configuration.

Дальше, имея уже автоматизацию работы с памятью, нам требуется симулировать адресный подход а-ля CX/CJ. Для этого в разделе Memory Settings надо выбрать нужные нам области - CIO в контроллере равно CIO в NB-Designer, WR равно W, HR равно H, DM равно D. Если у Вас большое количество переменных, то можно глянуть на колонку Size, но это не наш случай.

Дальше заходим в глобальные переменные и создаем для примера выше бит по старому адресу W53.09. В Sysmac он уже обозначается как %W53.09 и тип как Bool.

В NB-Designer нам надо изменить единственную настройку. У HMI панели в свойствах в закладе COM1 выбрать тип порта как RS422.