PDA

Просмотр полной версии : Искажение сетевой переменной между ПР и OPC-сервером



TaPX
06.07.2023, 15:34
Всем здрасте, у меня какая-то мистика: Посылаю с Мастерскады число 2 , в ОПС-сервере оно тоже 2, но в ПР оно магическим образом превращается в 512. И наоборот, в ПР в переменной число 21,6 - на сервере отображается ноль. К слову пока набегало это значение, на сервере до какого-то момента отображалось какое-то рандомное значение. Что за чертовщина?

68682

68683

68684

1exan
06.07.2023, 15:41
Всем здрасте, у меня какая-то мистика: Посылаю с Мастерскады число 2 , в ОПС-сервере оно тоже 2, но в ПР оно магическим образом превращается в 512. И наоборот, в ПР в переменной число 21,6 - на сервере отображается ноль. К слову пока набегало это значение, на сервере до какого-то момента отображалось какое-то рандомное значение. Что за чертовщина?

68682

68683

68684

Адреса какие в ОПС и ПР? Совпадают?
Подвигайте их в ОПС на 1 вверх или вниз

TaPX
06.07.2023, 15:45
Адреса - один в один, устройство в сервер добавил через файл, созданный в ОвенЛоджике через "Расширения"-->"Экспорт устройства в OPC"... Как это - подвигать?

TaPX
06.07.2023, 15:54
Адреса какие в ОПС и ПР? Совпадают?
Подвигайте их в ОПС на 1 вверх или вниз

А какие адреса вы имеете ввиду?

melky
06.07.2023, 16:05
число float ?

TaPX
06.07.2023, 17:34
Первое - целочисленное, второе float. Искажаются оба

kondor3000
06.07.2023, 19:18
Всем здрасте, у меня какая-то мистика: Посылаю с Мастерскады число 2 , в ОПС-сервере оно тоже 2, но в ПР оно магическим образом превращается в 512. И наоборот, в ПР в переменной число 21,6 - на сервере отображается ноль. К слову пока набегало это значение, на сервере до какого-то момента отображалось какое-то рандомное значение. Что за чертовщина?


У вас байты переставлены при передаче по Модбас, в ОПС сервере есть поменять местами байты и регистры, (в Скаде тоже должно быть) добейтесь правильной передачи.
Менять местами байты (регистры)надо в Мастере. В ПР слейв галки перестановки не работают. На скрине перестановкой байт из 2 получено 512 68688

lagutin
07.07.2023, 08:32
А в чем "сакральный" смысл перестановки байт? Почему бы не сделать стандарт один. Или есть принципиальное отличие между этими 4-мя вариантами перестановок. И ведь в руководствах не пишут как идет порядок байт. И техподдержка отвечает часто, "ну поменяйте порядок":p ?? Они сами что ли не знают какой он?

imaex
07.07.2023, 08:38
Они сами что ли не знают какой он?

А откуда им это знать?


И ведь в руководствах не пишут как идет порядок байт

В нормальных пишут. Всегда.

1exan
07.07.2023, 09:47
А где это сделать в ОПС-сервере?

OwenOPC: в свойствах тега
68704

TaPX
07.07.2023, 10:03
OwenOPC: в свойствах тега
68704

Спасибо, нашел

TaPX
07.07.2023, 10:16
Просто интересно, а почему по умолчанию не одинаково выставлены в ПР и на сервере порядки слов и байтов?

melky
07.07.2023, 10:33
TaPX галочки в ПР для галочки :) (действуют только в случае, когда ПР является мастером). Когда ПР слейв, у него всегда один вариант и ему ваши галочки до галочки...

imaex
07.07.2023, 10:39
OwenOPC: в свойствах тега


Вот, кстати, вопрос: а кому-нибудь попадалось modbus-устройство, у которого часть тэгов была старший-младший, а часть - младший-старший? Просто любопытно - зачем овеновцы это в свойство тэга вынесли?

melky
07.07.2023, 10:51
imaex в стандарте не определена последовательность, все зависит от процессора. Важным фактором является только расположение и последовательность CRC, остальное вторично. Если процессор устройства слабенький, чисто под задачу, нет смысла его нагружать дополнительной работой по перестановке как нравится вам. Вот и весь секрет.

Из-за этого вот попалось уже два устройства, где производитель неправильно выставил CRC

imaex
07.07.2023, 10:57
imaex в стандарте не определена последовательность

Спасибо, кэп. Вопрос был не про это.

1exan
07.07.2023, 11:31
Вот, кстати, вопрос: а кому-нибудь попадалось modbus-устройство, у которого часть тэгов была старший-младший, а часть - младший-старший? Просто любопытно - зачем овеновцы это в свойство тэга вынесли?

ТТТ, мне не попадалось таких девайсов.
Но всё равно лучше пусть будет такая возможность, мало ли

melky
07.07.2023, 11:32
полно таких девайсов, обычно что-то маленькое на слабых контроллерах типа PIC, Atmega и так далее.

a_lex
09.07.2023, 09:55
Интересная картина получается, или я чего-то не правильно понял? У Овен в лоджике есть инструмент для переноса данных сетевых переменных в ОРС сервер от Овен. Т.е. я экспортировал файл из лоджика, скормил его ОРС серверу и дальше вынужден ручками в каждой переменной менять порядок? А если переменных много? Прикольный инструмент для облегчения жизни...

1exan
09.07.2023, 11:09
Интересная картина получается, или я чего-то не правильно понял? У Овен в лоджике есть инструмент для переноса данных сетевых переменных в ОРС сервер от Овен. Т.е. я экспортировал файл из лоджика, скормил его ОРС серверу и дальше вынужден ручками в каждой переменной менять порядок? А если переменных много? Прикольный инструмент для облегчения жизни...

В ОПС должна быть возможность группового изменения свойств тегов

kondor3000
09.07.2023, 20:51
Интересная картина получается, или я чего-то не правильно понял? У Овен в лоджике есть инструмент для переноса данных сетевых переменных в ОРС сервер от Овен. Т.е. я экспортировал файл из лоджика, скормил его ОРС серверу и дальше вынужден ручками в каждой переменной менять порядок? А если переменных много? Прикольный инструмент для облегчения жизни...

Вы не правильно поняли, прочитайте самое первое сообщение. Передавали с Мастерскады, принимали ОПС сервером и ПР от Овен, это разные производители.
Кроме того, прежде чем создавать много тегов, читаете один, настраиваете правильное отображение и копипастите, сколько надо. Это вполне нормально.
И кстати очень редко бывают переставлены байты, чаще надо переставлять регистры в переменной Float.

TaPX
10.07.2023, 13:44
Вы не правильно поняли, прочитайте самое первое сообщение. Передавали с Мастерскады, принимали ОПС сервером и ПР от Овен, это разные производители.
Кроме того, прежде чем создавать много тегов, читаете один, настраиваете правильное отображение и копипастите, сколько надо. Это вполне нормально.
И кстати очень редко бывают переставлены байты, чаще надо переставлять регистры в переменной Float.

Ну вообще, я действительно использовал - цитата от a_lex - "инструмент для переноса данных сетевых переменных в ОРС сервер от Овен". И почему они перенеслись некорректно, я так и не понял. Вот сейчас в новом проекте, но на ПР-102 (а там было ПР-103), перенос отработал корректно. Возможно, это баг именно при использовании ПР-103.

melky
10.07.2023, 14:03
если не ошибаюсь, у ПР103 просто другой порядок байт, по отношению к ПР200 и он просто совпадает с настройками по умолчанию в OPC. Так что не обольщайтесь сильно.

Еще раз, OPC не знает порядок байт подключаемого устройства.
А вот экспорт для OPC как бы должен знать.

TaPX
11.07.2023, 15:22
если не ошибаюсь, у ПР103 просто другой порядок байт, по отношению к ПР200 и он просто совпадает с настройками по умолчанию в OPC. Так что не обольщайтесь сильно.

Еще раз, OPC не знает порядок байт подключаемого устройства.
А вот экспорт для OPC как бы должен знать.

Получается, что экспорт для ПР-103 не знает.