Стартовая страница › Форумы › Понять, как работает ПО › Совместный доступ к одному прибору
- В этой теме 16 ответов, 5 участников, последнее обновление 3 года, 2 месяца назад сделано
RX9COZ.
-
АвторЗаписи
-
14.06.2023 в 10:59 #28877
RX9COZ
УчастникДобрый день !
Есть небольшой парк приборов СПТ 944 НПФ «Логика», подключенные через Ethernet конвертер к сети интернет со статическим IP. Данные приборы опрашиваются как ресурсо-снабжающими организациями, так и другими клиентами, формирующими суточные/месячные отчёты.
Так же есть необходимость выводить текущие значения с данных приборов в схему. Архивные не надо, это не моя задача, а моя это вывести именно текущие значения с этих приборов.
Поставил OPC Сервер Логика, настроил соответствующим образом RapidScada v5 для работы с ним, данные приходят, всё хорошо. Но при этом закрывается доступ у всех остальных к этим приборам.
Если остановить линию связи — все другие клиенты могут коннектиться к прибору, запускаю линию связи — нет ответа у других клиентов, но данные в скаду поступают.Я понимаю, что по всей видимости проблема совместного использования одного и того же порта.
Но можно ли как-то сделать так, чтоб линия связи поднималась на время опроса и после опроса останавливалась. Опрос текущих значений нет смысла производить очень часто, раз в минуту-две достаточно, в остальное время могут успеть подключиться другие клиенты к прибору для своих нужд, а они подключаются в среднем раз в час. Кто успел тот и занял порт, освободился, прочитал данные. Главное чтоб он освобождался. В данной конфигурации он занят всегда.
Может надо правильно настроить конфигурацию в «Опрос КП», где настраивается Таймаут/Пауза/Время/Период. Мне не совсем понятна работа этих настроек. Но похоже что в данном случае это не влияет.
Была мысль может быть через модуль автоматического управления делать опрос КП с определённой периодичностью.Есть какие-то пути решения данной проблемы ?
14.06.2023 в 12:00 #28880
JurasskParkУчастникПоставил OPC Сервер Логика
Если у OPC сервера есть возможность через системные того останавливать опрос, значит линия Скады, должна отправить команду на включение опроса в OPC сервера, почитать текущие параметры, потом команду на останов опроса.
P. S. Ваша проблема что OPC сервер блокирует опрос, заняв все сессии. Вы должны его периодически включать на опрос и выключать.
14.06.2023 в 12:37 #28881
manjey73УчастникПопробуйте мой драйвер. Правда на 6-ю версию я его еще не портировал, а в 5-й версии максимум что можно настроить это раз в Х минут с отключением от канала связи.
Убрать галку — Оставаться на линии14.06.2023 в 12:37 #28882Romiros
УчастникВам правильно написали, что отключение — подключение порта должно регулироваться opc сервером логика. OPC клиент RapidScada получает данные по подписке и никак не влияет на частоту опроса через com порт.
Если в opc сервере настроек периодического отключения-подключения порта нет, то только увеличивать одновременное количество Tcp клиентов в самом IP-RS конверте, обычно они такое позволяют. Правда при таком подходе периодически будет происходить замес пакетов и ошибки при получении данных. Если у Вас только не moxa серии 6000.14.06.2023 в 12:38 #28883
manjey73УчастникВозможно OPC занимает порт конвертера и не освобождает его. А максимум подключений одно по TCP
14.06.2023 в 19:49 #28885RX9COZ
УчастникПопробуйте мой драйвер.
Я вот хотел попробовать, но видимо пока не понял, как им пользоваться, да и я если правильно понимаю, в приборе используется протокол М4, который пока не поддерживается.
14.06.2023 в 19:58 #28886RX9COZ
УчастникВам правильно написали, что отключение — подключение порта должно регулироваться opc сервером логика. OPC клиент RapidScada получает данные по подписке и никак не влияет на частоту опроса через com порт.
Меня смутило то, что если в коммуникаторе остановить линию связи, то канал связи освобождается, несмотря на запущенный OPC Логика и доступ до прибора открывается всем остальным. Запускаешь линию связи, даже если опрос происходит один раз в минуту, то канал для всех остальных закрывается.
Если в opc сервере настроек периодического отключения-подключения порта нет, то только увеличивать одновременное количество Tcp клиентов в самом IP-RS конверте, обычно они такое позволяют.
Настройки штатного OPC Логика довольно скудные. Что на мой взгляд могло мешаться, например функция keepalive, которая типа должна поддерживать непрерывное соединение, тоже отключена. Интервал опроса ещё есть, вот его не пробовал, зачем то там 10 сек стоит, когда в самой скаде 1 минута. Но не думаю, что это повлияет, но попробую.
Если у Вас только не moxa серии 6000
Самая обычная 5110 насколько помню.
Возможно, можно попробовать рассмотреть вариант замены Моксы на штатную приблуду от Логики, называется АДС99, тоже что-то типа Моксы, но оно само стучит на сервер, а не ждёт когда к нему постучат.
-
Ответ изменён 3 года, 2 месяца назад пользователем
RX9COZ.
15.06.2023 в 09:15 #28893
MikhailМодераторСмысл OPC-сервера в том, чтобы предоставлять данные всем своим клиентам, а не блокировать подключения. Но Логика не будет переделывать свой OPC-сервер, конечно.
Если у Вас получится подключиться к приборам из Rapid SCADA 6, то Вы можете предоставить данные другим приложениям через OPC UA-сервер Коммуникатора.
На Rapid SCADA 6 можно запускать и останавливать линии связи программно, но это не самое хорошее решение.15.06.2023 в 15:44 #28899Romiros
УчастникСамая обычная 5110 насколько помню.
Если она у Вас настроена как TCP-сервер или Real Com Mode, поставьте ей в OperationSettings параметр Max connection больше 1. У OPC-сервера логика сделайте опрос раз в минуту, все клиенты смогут подключаться к прибору одновременно.
15.06.2023 в 16:00 #2890015.06.2023 в 16:03 #28901
manjey73УчастникНу подключаться одновременно к прибору не получится, тогда коллизии пойдут.
Немного не понял схему. OPC сервер Логика установлен только у вас для опроса, остальные опрашивают прибор не через ваш OPC сервер же ?15.06.2023 в 16:18 #28902
manjey73УчастникЕсли правильно понимаю, то линия связи имеет настройки «Не задан» и пока есть доступ к OPC серверу, всегда удерживается соединение, а тот в свою очередь удерживает линию к преобразователю и не дает подключаться остальным.
15.06.2023 в 19:34 #28903RX9COZ
УчастникOPC сервер Логика установлен только у вас для опроса, остальные опрашивают прибор не через ваш OPC сервер же ?
Да, всё верно. Я не знаю каким образом другие службы опрашивают прибор раз в час, но канал связи они навсегда не занимают, поэтому есть возможность у меня опросить прибор через OPC сервер, т.к. драйвера для М4 ещё нет (может имеет смысл рассмотреть вариант пусть на возмездной основе его всё же сделать, т.к. приборы такие стоят чуть ли не в каждом втором подвале дома и не только). Но когда Scada коннектится к OPC , тот сразу запускает линии связи до приборов (их 4 на самом деле) и все их держит. Если остановить линию связи в коммуникаторе — то и OPC так же останавливается (держится в фоне как служба, но канал связи при этом свободен).
Если правильно понимаю, то линия связи имеет настройки «Не задан» и пока есть доступ к OPC серверу, всегда удерживается соединение, а тот в свою очередь удерживает линию к преобразователю и не дает подключаться остальным.
Линия связи имеет настройки «не задан», всё верно.
Но как уже выше написал, даже если опрос OPC сервера скадой не происходит, точнее получение данных по подписке, но с самим сервером установлена связь, то тот удерживает линии связи до приборов (преобразователей) и больше никого не пускает.
Настроек самого OPC Логика не много и те что есть особо никак не влияют.15.06.2023 в 19:50 #28904RX9COZ
УчастникЕсли у Вас получится подключиться к приборам из Rapid SCADA 6, то Вы можете предоставить данные другим приложениям через OPC UA-сервер Коммуникатора.
Такой вариант вполне допустим. Через OPC сервер то получится подключиться, куда оно денется. Как потом предоставить эти данные другим службам через OPC UA сервер я ещё не знаю, ниразу не пробовал. Поставлю на другом ПК тестовый образец, помучаю. Но наверное вопросы тоже возникнут ))
На Rapid SCADA 6 можно запускать и останавливать линии связи программно, но это не самое хорошее решение.
Если это будет работать, как надо, то почему бы и не попробовать. Но у меня пока нет понимания, каким образом линии связи можно запускать и останавливать программно.
Вообще я попросил чтобы в Моксе настроили так, как описал выше @Romiros, т.к. доступа до Моксы у меня нет. Может быть и будут иногда коллизии возникать, но не постоянно ведь, я думаю, в данном случае это не жизненно важно, один раз и ста данные могут криво прочитаться, ну ничего не случится страшного, это не управление каким-то производственным процессом. Проверю как будет работать.
15.06.2023 в 23:11 #28905 -
Ответ изменён 3 года, 2 месяца назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.