Premium P57 5634M + MOXA MGate3270 + ТРМ

Прочие PLC и HMI на русском
Post Reply
behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Fri Aug 09, 2013 11:03 am

Доброго времени суток.

Подскажите пож-та, не могу сообразить. Требуется организовать обмен данными м/у Premium P57 и Овен ТРМ через шлюз Mgate. ПЛК подключен к шлюзу по modbus tcp шлюз, в свою очередь, подключен к ТРМ modbus rtu. Использовал программу routechecker настроил обмен данными м/у компьютером и ТРМ. Теперь требуется вместо компьютера считывать данные в ПЛК.

Вопрос, какой функцией пользоваться для формирование обмена? Мне необходимо задавать адрес moxa 192.168.0.33 и адрес ТРМ - 16.

Подскажите как грациознее решит данную проблему?

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Fri Aug 09, 2013 12:17 pm

Можно использовать I/O Scaning, но для этого нужно, чтобы все нужные данные Слейва находились в зоне HoldingRegisters. Если это не так, тогда нужно использовать функции Read_Var и Write_Var. Тут есть пример для М340
Для функций есть ньюансы с заданием адреса. Нужно обязательно задать адрес в XWay таблице, причем Sta должен быть >100. Тут надо с хелпом Unity PRO поработать.
Так что узнавайте, в какой зоне ТРМ находятся нужные Вам данные.

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Fri Aug 09, 2013 12:24 pm

Не совсем понятно, как задается RTU-адрес. Вход Address - ip-адрес, ПЛК стучится до шлюза (МОХА), а как он дальше ищет rtu-устройство?

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Fri Aug 09, 2013 12:40 pm

pupena_san, не могу добавить в X-WAY TABLE. Подскажите как добавить адреса.

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Fri Aug 09, 2013 12:43 pm

behemot wrote:Не совсем понятно, как задается RTU-адрес. Вход Address - ip-адрес, ПЛК стучится до шлюза (МОХА), а как он дальше ищет rtu-устройство?
Для комм. функций я сейчас точно синтаксис не помню, но в таблицу XWAY вставляется только пара Net.Sta и IP, а в адрес процедуры ADDR вставляется что-то такого {Net.Sta}0.0.16. Сейчас нет при себе ни Юнити, ни доки, так что надо внимательно изучить хелп. А Modbus шлюзование - дело стандартное, независимое от производителя.
Для I/O Scaning есть поле специальное, не помню как называется. По умолчанию там стоит 255, что означает обращение к самому устройству с заданным IP, если вставить туда 16, то обращение будет к слейву с номером 16, для которого шлюз является мастером.

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Fri Aug 09, 2013 12:47 pm

behemot wrote:pupena_san, не могу добавить в X-WAY TABLE. Подскажите как добавить адреса.
Пардон, не туда Вас послал. Вкладка Messaging.

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Fri Aug 09, 2013 12:58 pm

HoldingRegister - переменные которые читаются функцией №3

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Fri Aug 09, 2013 1:02 pm

behemot wrote:HoldingRegister - переменные которые читаются функцией №3
Да и писаться должны функцией 10hex. Тогда заморочек с комм. функциями вроде как не надо, можно I/O Scaningэом все побить.

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Fri Aug 09, 2013 3:54 pm

чем отличаются modbus от index?

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Fri Aug 09, 2013 3:57 pm

behemot wrote:чем отличаются modbus от index?
Это про тип адресации? Это как вам удобно указывать адреса. 40001 и %MW0 это одно и то же.

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Mon Aug 12, 2013 3:38 pm

Получилось, но не со всех ТРМ считывать. Сложность возникла с ТРМ-138. Unity PRO использует 4ю функцию для записи/чтения IO Scanning. Скорее всего придутся использовать другую функцию. Смогу ли я использовать IO scanning, вместо modbus использовать index? Или из моей задумки ничего не выйдет?

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Mon Aug 12, 2013 7:33 pm

behemot wrote:Получилось, но не со всех ТРМ считывать. Сложность возникла с ТРМ-138. Unity PRO использует 4ю функцию для записи/чтения IO Scanning. Скорее всего придутся использовать другую функцию. Смогу ли я использовать IO scanning, вместо modbus использовать index? Или из моей задумки ничего не выйдет?
На сколько я знаю, I/O Scaning использует 3-ю функцию (считывание Holding Register), если нужно использовать 4-ю функцию (считывание Input Registers) надо уже пользоваться функцией READ_VAR, и в качестве типа переменной указывать "%IW". Если нужно еще какую-то функцию (не 3,4,16), тогда уже надо функции DATA_EXCH или SEND_REQ.

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Tue Aug 13, 2013 8:13 am

Опять же мне не понятно, куда задавать адрес rtu/
В поле adr - ip-адрес сервера
obj - адрес переменной
num - кол-во байт
Где указать rtu-адрес не понятно.

В IO scanning разобрался, там все просто и понятно. Но не все функции читаются(

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Tue Aug 13, 2013 8:35 am

behemot wrote:В поле adr - ip-адрес сервера
Modbus Messaging on the TCP/IP Profile wrote: Introduction
The communication functions are the same as those described in the communication functions on Modbus.
Installation Principle
Although a remote Modbus station does not have an X-Way format address, each communication function will use an X-Way format address to designate a remote IP station.
For each remote Modbus station, you must configure the pair in the correspondence table (IP address, {network.station} X-Way) where:
network: network number of the local X-Way station
station: 100 to 164 = logical number of the X-Way station
For example, the X-Way address {2.108} is associated with the IP address 139.160.2.8.
This address will only be used by the local Premium module. It is not sent over the network.
In the case of a remote Premium station configured with the Modbus protocol, you should give an X-Way station address that takes the number of the local station and increments it by 100.
Sending Communication Functions
When the application sends communication functions to a remote device connected to Modbus via a serial-link Ethernet/Modbus gateway, the function address must be one of the following:
ADDR(’{network number. station number}0.0.Modbus destination address’) where:
network number and station number correspond to the X-Way address of the Ethernet/Modbus gateway
Modbus destination address corresponds to the Modbus slave address
This syntax supports Modbus addresses in the range 0...253. On the Ethernet network, the Modbus TCP/IP frame will be sent to the gateway with the Modbus address coded in the Unit_Id field.
In the case the Unit_Id code is 254 or 255, for example to address TSX ETG100 gateway, the following syntax should be used:
or
ADDR(’{network number. station number}0.0.254.Modbus destination address’)

Schtiel
Site Admin
Posts: 1121
Joined: Wed Sep 06, 2006 12:03 pm
Location: CIS

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by Schtiel » Tue Aug 13, 2013 8:57 am

behemot wrote:Опять же мне не понятно, куда задавать адрес rtu/
В поле adr - ip-адрес сервера
obj - адрес переменной
num - кол-во байт
Где указать rtu-адрес не понятно.
Насколько я помню, для Modbus TCP как-то так:

Image

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Tue Aug 13, 2013 9:04 am

Пошел пробовать.

Не совсем понимаю X-WAY( Для чего составлять пару IP и X-Way? В messaging нашел XWay profile это и есть X-Way адрес? Или необходимо еще добавить 100?

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Tue Aug 13, 2013 9:39 am

Schtiel wrote:Насколько я помню, для Modbus TCP как-то так:
Image
Не совсем. Это в М340 так а в Premium надо составлять пару XWAY-IP.

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Tue Aug 13, 2013 9:49 am

behemot wrote:Пошел пробовать.
Не совсем понимаю X-WAY( Для чего составлять пару IP и X-Way? В messaging нашел XWay profile это и есть X-Way адрес? Или необходимо еще добавить 100?
Особенности Премиума. Давайте по порядку.
Допустим у Вас есть шлюз с адресом 192.168.1.15 и смодбас лейв с адресом 17. Тогда прописываем следующее.
1. Во вкладке Messaging забиваем пару, например: XWAY Address = 5.115 и соответствующий ему IP=192.168.1.15. При этом Net будет = 5 а Station=115. Обязательное условие, чтоб Station был >100.
2. В комм. функции ADDR (не ADDM, так как ADDM для М340 а ADDR для Премиум) указываем адрес '{5.115}0.0.17'

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Tue Aug 13, 2013 10:05 am

Проверить работоспособность сейчас не могу.
Где-то так:
Show
Image

behemot
Posts: 115
Joined: Wed Jul 28, 2010 9:06 am

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by behemot » Tue Aug 13, 2013 12:19 pm

Можно еще раз, как получилось 5.115?

pupena_san
Posts: 392
Joined: Fri Dec 18, 2009 3:02 pm
Location: Киев
Contact:

Re: Premium P57 5634M + MOXA MGate3270 + ТРМ

Post by pupena_san » Wed Aug 14, 2013 9:43 pm

behemot wrote:Можно еще раз, как получилось 5.115?
По старинке в Премиум во всех функциях используется X-WAY адресация, которая включает Network, Station и т.д. Но если нужно обмениваться по Modbus/TCP, то там нет никаких XWAY, но формат комм. функций такой же.
В любом случае, для того чтоб по сети поверх TCP/IP создать клиентское соединение надо прописать пару XWAY и IP. Если Station<100 это будет для протокола XWAY (+UNITE) on TCP/IP, а если Station>100 (не важно какой, в Вашем случае например 115) то это будет виртуальный адрес устройства Modbus/TCP созданный только для возможности его указания в комм.функциях.
Таким образом, указав в ADDR XWAY адрес 5.115, UNITY полезет в таблицу, зная что это будет Modbus/TCP (Sta>100) обратится по IP, стоящий напротив записи 5.115. Где-то так...

Post Reply