Стартовая страница › Форумы › Взаимодействие с устройствами › OPC › Значение каналов в OPC UA
- В этой теме 18 ответов, 5 участников, последнее обновление 9 месяцев, 3 недели назад сделано
human23.
-
АвторСообщения
-
28.08.2025 в 16:38 #40162
human23
УчастникКоллеги, добрый день!
Опробовал OPC UA сервер в Rapid Scada, работает замечательно, но передает только данные с устройств на уровне коммуникатора. Что в общем-то логично, т.к. UA сервер и находится на уровне коммуникатора.Вопрос следующий: возможно-ли передать данные из каналов во встроенный OPC UA сервер? Если да, то как?
28.08.2025 в 16:56 #40164
manjey73Участникнапример через MQTT издателя или через Modbus Slave + Modbus master штатный.
Чуть-чуть костылей 🙂29.08.2025 в 04:58 #40167human23
УчастникСпасибо.
Получается, нужно использовать внешние средства.29.08.2025 в 06:04 #40168
manjey73УчастникЯ не пробовал, но можно же издать средствами scada, и ей же прочитать. Соответственно это будет делать Коммуникатор и появится источник данных и возможность отдавать через ОРС.
29.08.2025 в 06:04 #40169
manjey73УчастникMqtt штатный. Только возможно поднять брокера.
29.08.2025 в 11:26 #40172human23
УчастникДумаю использовать экспорт/импорт c внешней БД. Каналов получится порядка 50 тысяч, с периодичностью в минуты. В модбас, наверное не пропихну, с mqtt не работал на таких масштабах
29.08.2025 в 11:41 #40173
a80808УчастникДля mqtt Москит может не справиться. Нужен будет более мощный брокер. Но попробовать можно.
29.08.2025 в 11:51 #40174
manjey73Участникэээ, а посмотрите драйвер импорта из БД действительно
Суть, OPC UA сервер поднимается как источник данных Коммуникатора. То есть любой драйвер его сможет запустить. Возможно вам не потребуется ни mqtt ни Modbus тогда закольцовывать
29.08.2025 в 16:38 #40179
MikhailМодераторДобрый день!
Можно разработать небольшой драйвер, который будет забирать текущие данные с Сервера, чтобы они были доступны Коммуникатору для передачи OPC-сервером. Но для 50 тыс. каналов такое решение вряд ли подойдёт.
Что является первоначальным источником данных?30.08.2025 в 07:10 #40194human23
УчастникИсточник — это коммуникатор на том-же сервере, он опрашивает шлюзы TCP/485 по modbus TCP. Скорее всего, в будущем, мы спустим коммуникаторы вниз, к полевому уровню.
50 тыс это теоретический максимум, в реальности будет тысяч 30, что не сильно меняет дело.
Сейчас, мы имеем дело примерно с 10 тысячами каналов (с живыми данными), интегрируемся наверх через экспорт в базу SQL. Работает это хорошо, на довольно скромной машине, узких мест пока не видно. Cтоит задача сильно увеличить количество опрашиваемых параметров с тех-же устройств, обработать это (уровень сервера) и отдать дальше, но уже через OPC UA.
Отдавать сырые данные с коммуникатора совсем не хочется, т.к. при изменении конфигурации поля, будут меняться привязки в OPC UA, масштабирование и прочее.30.08.2025 в 07:44 #40195human23
УчастникКстати, можно ведь подключить к каналам архив во внешней СУБД и завернуть как источник в коммуникатор. Или даже в отдельный коммуникатор
30.08.2025 в 12:36 #40196Romiros
УчастникМожно, как вариант. Но лучше бы конечно чтобы у скады бал встроенный OPC UA сервер уже на уровне сервера.
30.08.2025 в 17:17 #40197human23
УчастникRomiros, было бы много проще, несомненно.
30.08.2025 в 17:20 #40198human23
УчастникОпробовал вариант с подключением текущего архива в PostgreSQL к коммуникатору, работает!
Дополнительные плюсы такого решения:
— Возможность не нагружать Сервер обменом по OPC UA
— За счет представлений в PostgreSQL и комбинации запросов в драйвере, получается очень удобно и красиво представить данные в OPC UAОстановился на этом варианте, справится-ли он с нагрузкой, время покажет
01.09.2025 в 14:38 #40212
MikhailМодераторИнтересное решение. Правда с архитектурной точки зрения получается, что данные проделывают лишний путь. Однако если будет справляться с нагрузкой, то можно и так оставить.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.