Тема / Topic: МРВ в качестве OPC-клиента: есть проблемы
Dima
Forum Member / Участник форума
Участник № / Member № 839
отправлено / posted
Имеется OPC-сервер стороннего разработчика, расположен на удалённом компьютере. Сервер виден из редактора базы каналов, каналы можно "автопостроить", можно добавить вручную, ну всё замечательно. Как только проект запускается под МРВ(или в редакторе данных), в каналах сплошные нули. DrawServ пишет что "Сервер OPC0: соединение установлено", канал Диагностика->OPC благополучно показывает 0. При этом "цепляемся" к OPC-серверу своим клиентом или каким-нибудь "демо" (например Softing OPC Toolbox Demo Client)и видим что данные идут, но только не в МРВ! Где еще можно и нужно покопаться?
Сообщения / Posts 33 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
ОРС-клиент по те же самым тэгам, которые Вы привязали к каналам в ТМ показывает данные? Как Вы наблюдаете значения атрибутов каналов в РПД и МРВ и какие именно атрибуты смотрите?
Сообщения / Posts 17322 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Dima
Forum Member / Участник форума
Участник № / Member № 839
отправлено / posted
1) По первому вопросу ответ положительный. 2) Каналы смотрют через TraceMode Channel Table, для просмотра выбраны практически все атрибуты
Сообщения / Posts 33 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
А что на атрибутах Достоверность по этим всем каналам? Также рекомендую проверить атрибуты Состояние и Подключение. Точно атрибуты Вход, Выход, Реальное и Аппаратное не меняются?
Сообщения / Posts 17322 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Dima
Forum Member / Участник форума
Участник № / Member № 839
отправлено / posted
Немного покопавшись выяснили, что данные от сервера отображаются только в режиме SYNC/CACHE или SYNC/DEVICE. Но не все! Примерно 20% каналов по-прежнему в 0, достоверность этих каналов =0, всё остальные тоже, только время изменения устанавливается временем запуска МРВ, и событие меняется с 0 на 32.
Сообщения / Posts 33 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Посмотрел информацию, которую передает Ваш ОРС-сервер с помощью сторонних средств (не ТМ) и выяснилось, что: 1) Утилита ToOpc.exe - врет при показе некоторыъх данных. Некоторые тэги она показывает как равные 0, но на самом деле они в другом ОРС-клиенте явно ненулевые. 2) Передача данных Вашим ОРС-сервером идет в неизвестном формате. По ID=2 (значение тэга) выдается "Bad VARTYPE". Скорее всего из-за этого и ТМ и утилита ToOpc.exe не могут корректно считать значения по некоторым тэгам.
Сообщения / Posts 17322 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Dima
Forum Member / Участник форума
Участник № / Member № 839
отправлено / posted
Удалось разобраться и с OPC-сервером и с Trace Mode. Загвоздка была в наименовании тэга "Температура ", точнее в пробеле в конце. Убрали пробел - данные отображаются. Почему Trace Mode "споткнулся" на этом? Есть у Вас какие-либо рекомендации/комментарии по данному вопросу.
Сообщения / Posts 33 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Идентификация имен тэгов производится по их именам, а пробел - это тоже символ.
Сообщения / Posts 17322 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Dima
Forum Member / Участник форума
Участник № / Member № 839
отправлено / posted
Так в том-то и проблема, что если тэг на этапе связи канала с сервером имеет в конце имени пробел, в редакторе базы каналов он отображается, а при работе МРВ значения канала "привязанного" к этому тэгу остаются пустыми. Если пробел удалить и снова привязать канал к этому тэгу - всё Ок. Опять же повторюсь, что сторонними OPC-клиентами значения тэга с пробелом в конце названия отображаются корректно.
Сообщения / Posts 33 | Из / From: Россия
| IP / IP: IP адрес / IP address |