Стартовая страница › Форумы › Разработка и интеграция › DrvOPCClassicJP
- В этой теме 37 ответов, 3 участника, последнее обновление 1 год, 1 месяц назад сделано Mikhail.
-
АвторСообщения
-
11.05.2023 в 14:00 #28503MikhailМодератор
Наверное, OPC-сервер проверяет стоимость приложения и отдаёт данные в порядке приоритета 🙂
На самом деле, странно конечно. Если другое приложение выключить, то ответ не становится быстрее?11.05.2023 в 14:03 #28504MikhailМодераторЕсли я правильно понимаю, то в этом топике под асинхронным чтением понимается ожидание данных по подписке, а синхронное — чтение в режиме запрос-ответ. То есть не важно, используются ли какие-то асинхронные команды на уровне языка C#.
Есть ли инструменты, чтобы посмотреть трафик между OPC клиентом и сервером?11.05.2023 в 14:54 #28511JurasskParkУчастникИз интересного.
Взял старый OPCClient 2011 года…
На нём синхронное чтение произошло за 30 секунд.
Уже прогресс…
Почему-то мне кажется, что исходники выложили неспроста… Типо часть функционала работает, а часть нет. Поэтому не страшно.Мне кажется просто вещь банальная… Раз ты не знаешь, как и что в какой-то последовательности вызывать… То нихрена не поймешь.
Я просто подумал что в источниках что я взял… Просто это не реализовано ???????????
P.S. Ваши вопросы и сообщения видел… Не знаю, что пока ответить.
Пока ради интереса попробую другие клиенты. Если такая же лажа… Значит будет опрос 1 раз в минуту. И забью. ?
P.P.S. это именно что касается удаленного с Windows 2019.
На 2008R2 проверю какая скорость и отпишусь.12.05.2023 в 11:40 #28515JurasskParkУчастникУРААААААААААААААААААААА!!!
ПОБЕДИЛ!!!Дело было в кривых ручках и не желание курить мануалы. Шутка.
1. Проблема была в оптимизации.
В первых роликах я делал на основе кода рпзрпботчиков. Потом лишнее стал удалять, оптимизировать. До оптимизировался.
2. Группа. В начале я ее создавал, а потом подумал, а зачем группа еслм нет подписки. И для синхронного чтения её не было.
3. В странно логике от самих разработчиков.
Есть теги. Есть теги без значения. Есть теги со значением.
Я передавал теги и получал теги со значением. А у разработчика не так.
Создал теги. Создай группу. В группу добавь теги и получишь теги без значения. И вот их читай!!!
А в функции Read написано передать теги, а то что она хавает и тег без значения кто ж знал!Ура товарищи!
12.05.2023 в 15:10 #28520MikhailМодераторСоздал теги. Создай группу. В группу добавь теги и получишь теги без значения.
Поздравляю!
Прийти к этому с помощью логического мышления, по-моему, невозможно. Только методом упорных экспериментов. Возможно, данная проблема не проявилась бы на другом OPC-сервере, т.к. кто знает, что в этом конкретном OPC-сервере внутри.17.05.2023 в 12:50 #28558JurasskParkУчастникКороче… Мы строили, строили… И устали.)
Долго бился пока смог понять что и как…
Из текущих проблем.
При перезапуске коммуникатора, канал через dll во время создания клиента, умудряется увидеть свойства другого канала…
Пока думаю, что еще из 100500 условий channelhandle OPC DA нужно делать.
Пока думаю ему давать номер девайса…17.05.2023 в 14:08 #28560JurasskParkУчастникДействительно…
Система правильно показывает и указывает, что за файл считала и с какими настройками, а вот при создании клиента получает чужие и продолжает с ними работать… ?
Понятно, что типо защиту поставить… Но первый раз такой вижу 🙂17.05.2023 в 18:13 #28564MikhailМодераторПри перезапуске коммуникатора, канал через dll во время создания клиента, умудряется увидеть свойства другого канала…
Нужно изучать подробности.
17.05.2023 в 20:03 #28568JurasskParkУчастникНужно изучать подробности.
https://www.youtube.com/watch?v=7EI5r-bVltU
Дома тоже самое.
Я сначала создаю клиенты и добавляю в list, а потом через for их читаю.
Хотел, чтобы несколько OPC серверов можно было добавлять.Пока думаю, что упростить драйвер до 1 устройства и точка. 🙂
Убрать все деревья и посмотреть что будет.17.05.2023 в 23:17 #28569manjey73Участника не может библиотека подхватывать до сих пор открытого клиента?
Может в Терминат линии добавить закрытие всех клиентов?18.05.2023 в 07:40 #28571JurasskParkУчастникКороче…
Я в шоке…
В логах добавил все все параметры.
Имя драйвер генерирует правильно, я его отправляю в Project.Load, а вот эта уже сволочь (прошу прощения) возвращается настройки из другого конфигурации…
Ищу чего там нахимичил.18.05.2023 в 07:44 #28572JurasskParkУчастникЕщё раз… После перезапуска (Перезапустить Линию) — он читает правильный конфиг, а когда стартует коммуникатор чужой…
18.05.2023 в 09:23 #28574JurasskParkУчастникУдалил конфигурацию. Снова добавил.
Такая же проблема.
Только Перезапустить линию помогает корректно считать конфигурацию.18.05.2023 в 10:04 #28576JurasskParkУчастникСейчас обнаружил (^__^) что у меня переменные публичные и сам проект. И список клиентов тоже. Перевёл их в private. Сейчас закончится часовня, заменяю библиотеку и смотрю что будет.
18.05.2023 в 10:13 #28577JurasskParkУчастникНе помогло! ???
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.