PDA

Просмотр полной версии : Каким самым простым способом получить данные с прибора в свою базу данных?



Ridsen
03.02.2023, 22:49
Здравствуйте!
Доброго хорошего вечера!


У меня есть модуль аналогового ввода Овен с портом LAN.
К которому подключен датчик.

Ещё модуль аналогового ввода подключен к роутеру/модему 4G с SIM картой который передаёт информацию.

Есть база данных может быть в MS SQL или в Postgre SQL.

Каким можно самым простым образом передать измеряемые параметры в базу данных.

Через MasterSCADA и сервер?

Или можно более упрощённо?
Это для меня очень важно.

Я новичек но очень стараюсь как можно быстрее изучить и освоить эту тематику.
Буду премного благодарен любым подсказкам.

melky
04.02.2023, 08:57
Вы уж определитесь вам надо через MasterScada или через Телемеханику (соседняя тема)? Или вам надо вообще любым способом это сделать, лишь бы в БД?

Ridsen
04.02.2023, 11:05
Здравствуйте!

Спасибо огромное за ответ.

Я так понимаю что передать измерения с модулей Овен можно через MasterScada или Телемеханику (но там я не нашёл в списке мой модуль) ?

Хотелось бы получить величины измерений в свою базу данных - MS SQL или PostgreSQL. Любым простым способом.

melky
04.02.2023, 11:36
МВ210-101 имеет протокол Modbus TCP, по этому какой Scada его прочитать будет без разницы.

Дальше возникает другой вопрос из вашего предложения

Ещё модуль аналогового ввода подключен к роутеру/модему 4G с SIM картой который передаёт информацию.

Что за роутер? Реальный IP от оператора имеется или нет? Есть ли реальный IP со стороны принимающего сервера?

Собственно еще вопрос по БД, так какая все-таки БД используется? или просто фиолетово какая будет БД ?

ASo
04.02.2023, 11:39
Ну и задача какая?
Кто, какой процесс, будет обрабатывать информацию из БД?

Ridsen
04.02.2023, 14:19
-------------------------------------------
Что за роутер? Реальный IP от оператора имеется или нет? Есть ли реальный IP со стороны принимающего сервера?
-------------------------------------------

Телтоника RUT950 промышленный сотовый маршрутизатор GSM 2G/3G/LTE 2xSim, Wi-Fi, 4хEthernet, Wan, Lan

Буду организовывать реальный статический IP от оператора.

Есть ещё конечно сервер со реальным статическим IP адресом


-------------------------------------------
Собственно еще вопрос по БД, так какая все-таки БД используется? или просто фиолетово какая будет БД ?
-------------------------------------------
MS SQL или PostgreSQL.
Любая из двух баз данных.


-------------------------------------------
Кто, какой процесс, будет обрабатывать информацию из БД?
-------------------------------------------

Дальше процесс на сервере будет обрабатывать Django Python.

ASo
04.02.2023, 15:40
Тогда я бы установил стек MODBUS TCP на питоне, и запрашивал информацию с модуля им.

Ridsen
04.02.2023, 18:48
Спасибо огромное за информацию сейчас разбираюсь.

А нужно ли при этом устанавливать OPC Server ?

ASo
04.02.2023, 19:01
Нет, не нужно.
Зачем в совершенно конкретном случае лишний драйвер.
И начните с локального подключения.

Ridsen
04.02.2023, 20:26
Доброго хорошего вечера!

Хотел спросить можно ли отправлять данные полученные с модуля используя
OPC-сервер Lectus
в любой SQL-сервер ?

в базу данных через определённый интервал времени.
А потом уже использовать данные из этой базы данных на SQL-сервере ?

melky
04.02.2023, 20:44
OPC прокладки, не их задача отправлять данные куда-то.

Если на сервере реальный IP то много роутеров умеют быть Клиентами, то есть самостоятельно подключаться к Серверу и таким образом поднимать связь. Проверял на вариантах Телеофис.

Далее либо программа Виртуального COM порта в режиме Сервер, либо сама Scada умеет быть Сервером линии связи (например RapidScada, которая может данные сразу положить в PostgreSQL) но у вас выбор вроде или МастерScada или Телемеханика.
Если выбора пока нет, то RapidScada может выполнить все действия и при этом потребует реальный IP только со стороны Сервера. Ставьте 6-ю версию, в ней есть вариант настроить архивы на Postgre
Modbus (мастер) в ней уже встроен.

capzap
04.02.2023, 20:47
Облако owencloud такая же сущность как и БД, модуль спокойно сохраняет показания в облаке, питон прекрасно через API получает данные из облака

ASo
04.02.2023, 20:56
Я бы ещё MQTT рассмотрел.

melky
04.02.2023, 22:14
У Облака Овен есть ограничение - 90 дней. Плюс роутер уже есть как понимаю, для Облака потребуется дополнительная железка - шлюз.
з.ы. для RapidScada и MQTT не проблема, один фиг потом в БД надо закидывать.

В случае с MasterScada я так понимаю принцип тот же. Только не знаю, сможет ли OPC Инсат выступить в роли "сервера" для соединения. Но в БД вроде как тоже умеет, бесплатно правда только до 32 тегов.

capzap
04.02.2023, 22:29
У Облака Овен есть ограничение - 90 дней. Плюс роутер уже есть как понимаю, для Облака потребуется дополнительная железка - шлюз.

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

melky
04.02.2023, 22:32
capzap кого я ввел в заблуждение? что облако хранит данные не более 90 дней? Разве что модуль MB210 самостоятельно может подключиться к облаку и не потребует шлюза. Тут да, лоханулся...

И простите толку, вы предлагаете автору топика писать опрос из облака по API, вместо простой настройки.

У автора есть основная задача и нюансы, связанные с ней.

1. Связь. В лучшем случае это не добавлять реальный IP на GSM ка_нал (странно, но к заднице слово не относится никак :) ) но принимающая сторона должна уметь и позволять это. То есть выступить в роли сервера соединения. Иначе оплачивать реальный IP за дополнительные деньги

2. Данные кидать в БД. Тут либо писать на питоне и чем угодно, либо ПРОСТО настроить.

Выбор за автором. Делать себе мозги или пойти по готовому пути, причем в некоторых вариантах бесплатно

capzap
04.02.2023, 22:45
capzap кого я ввел в заблуждение? что облако хранит данные не более 90 дней? Разве что модуль MB210 самостоятельно может подключиться к облаку и не потребует шлюза. Тут да, лоханулся...

И простите толку, вы предлагаете автору топика писать опрос из облака по API, вместо простой настройки.

У автора есть основная задача и нюансы, связанные с ней.

1. Связь. В лучшем случае это не добавлять реальный IP на GSM ка_нал (странно, но к заднице слово не относится никак :) ) но принимающая сторона должна уметь и позволять это. То есть выступить в роли сервера соединения. Иначе оплачивать реальный IP за дополнительные деньги

2. Данные кидать в БД. Тут либо писать на питоне и чем угодно, либо ПРОСТО настроить.

Выбор за автором. Делать себе мозги или пойти по готовому пути, причем в некоторых вариантах бесплатно

Давно стали спецом по питону? Откуда уверенность что брать данные из базы проще чем с api работать, а в базу ещё и положить надо. Если бы ТС умел модбас ТСР на питоне, то и прокладка бы не понадобилась. И про ограничение по времени речи не шло
Облако и есть готовое решение из коробки и защищённое в отличии от получать статический адрес и держать открытм порт протокола

melky
04.02.2023, 22:56
capzap ну для начала порт где-то и какой-то открыт по любому. Даже https при запросе у облака. Дело безопасности тут не рассматривается тоже.
При этом если некий сервер принимает TCP клиента gsm роутера, то порт там далеко не протокольный а от фонаря, который защищается достаточно легко разрешенными соединениями по сотовому оператору сетью вида 185.75.0.0/16 (в зависимости какой оператор используется и какой диапазон адресов он имеет в том или ином регионе (пример)) и порт там TCP соединения двух железок сервер-роутер и протокольным портом 502 даже не пахнет.

Тут наверное правильнее было бы так... Если бы ТС умел .... на питоне, то и вообще бы вопросов никаких не возникало в принципе.

Вопрос уже стоит так. Django Python будет обрабатывать информацию из БД - есть готовые решения прочитать модуль МВ210 и положить данные из него в БД?

Да, есть. В том или ином варианте. Выбирайте, который вам проще и лучше подходит.
Можно сэкономить деньги не покупая выделенный IP у оператора сотовой связи? - Да, можно.

capzap
04.02.2023, 23:59
Даже https при запросе у облака. Дело безопасности тут не рассматривается тоже.Да с какого, было время Вы постоянно расхваливали впн, что изменилось, защищенное соединение оно и в Африке защищенное

При этом если некий сервер принимает TCP клиента gsm роутерасервером здесь выступает кто, если Ваши нелепые варианты с различных СКАД, ОРС и т.п. что то вычитывать и ложить в БД, то это модуль который имеет пару открытых портов для модбас и москита, перекидывать в роутере на другие номера, ни фига не коробочное решение. Облако защищено, Вам же вот в голову не приходит что можно шлюзу вместо адреса овенклоуда подставить адрес локального компа со своим личным облаком, как Вы вечно плачетесь, видимо есть трудности распарсить обмен

Ridsen
05.02.2023, 01:13
Спасибо огромное за информацию.

Посмотрел варианты по подключению напрямую через дополнение ModBus_Python. Пока не совсем всё понятно, но буду пробовать.

Наверное намного проще подключать пока временно через RapidScada.

или ещё вариант, если возможно настроить интервал передачи данных из Owen Cloud в базу данных, если данные хранятся 90 дней, то при отправке пополнению другой основной БД это наверное не критично, т.к. главная функция OwenCloud отправка данных в основную БД.

EFrol
05.02.2023, 09:33
Доброго хорошего вечера!

Хотел спросить можно ли отправлять данные полученные с модуля используя
OPC-сервер Lectus
в любой SQL-сервер ?

в базу данных через определённый интервал времени.
А потом уже использовать данные из этой базы данных на SQL-сервере ?

Уже несколько лет так и делаю! Десятки различных приборов, сотни параметров протоколируются в Microsoft SQL.
Lectus самостоятельно может опрашивать как устройства Modbus (через COM или ModbusTCP, включая Modbus-подобные)
так и любые устройства через OPC (как OPC-клиент). Он так же может из SQL передавать данные в прибор.
Притом чтение/запись в/из SQL настраивается на уровне Transact-SQL (можно вызывать хранимые процедуры и т.д.)

melky
05.02.2023, 09:58
capzap OwenCloud нельзя установить на локальный собственный сервер, вы об чем ? У меня с ним вся загвоздка с этим, уже не раз писал, сегодня облако можно, а завтра нельзя и все шлюзы пойдут в мусорку...

Если кратко, учитывая что там роутер и прибор с Ethernet

1. OwenCloud -> Owen OPC сервер -> любая scada с сохранением или экспортом в БД
Возможно использование OPC UA сервера самого OwenCloud, тогда scada должна иметь OPC UA клиента
Минусы: зависим от каналов связи OWEN, "ой, у нас технические работы", "ой, у нас очередная DDOS атака", в бесплатном варианте опрос не чаще раз в 60 секунд
Не уверен, что от роутера нужен только интернет, опрос же ведет непосредственно Облако...

2. VPN канал со стороны роутера до сервера, настройка маршрутизации и т.д. Опрос Scada системой прибора по Modbus TCP самостоятельно, сохранение в БД
Минусы: ну либо привлекать Администраторов, чтобы все настроили, либо тратить самому время на настройку
Плюсы: любой период опроса менее 60 секунд, каналы связи только свои, без посредников

3. Получение реального IP от оператора связи, ну и далее аналогично п.2

Минусы: оплата реального IP адреса со стороны роутера GSM, остальное так же как и в 2, включая плюсы

Ну вместо Scada может быть и питоновское или иное, это уже как проще.

melky
05.02.2023, 10:00
EFrol вы про Lectus что? сам OPC Lectus или что-то другое от них ?

EFrol
05.02.2023, 10:07
EFrol вы про Lectus что? сам OPC Lectus или что-то другое от них ?

Я про OPC-сервер Lectus (https://owen.ru/product/modbus_opc_dde_server)
65712

melky
05.02.2023, 11:45
EFrol да, я почитал, у него есть функционал передачи данных в SQL (на сайте, в том числе не Овен указано в "любой")

Но он должен сам опрашивать устройство, так как МВ210 не может быть мастером. Так что тут либо VPN на роутере, либо реальный IP.

из минусов, требуется Windows для установки OPC сервера, так как OPC DA.

SCADAMaster
05.02.2023, 15:17
Есть база данных может быть в MS SQL или в Postgre SQL.
Каким можно самым простым образом передать измеряемые параметры в базу данных.
Через MasterSCADA и сервер?

Модуль у вас с протоколом Modbus?
Графический интерфейс нужен или задача просто перегнать данные в БД и все?
Если второй вариант, то можно использовать Modbus Universal - он может без проблем перегоднять данные в БД через ODBC:
https://insat.ru/blog/odbc-klient-novaya-funktsionalnost-masteropc/
Инструкции тут:
https://support.mps-soft.ru/ModbusHelpRus/index.html?biblioteka_odbc.html
https://support.mps-soft.ru/ModbusHelpRus/index.html?zapis_v_bazu_opc_hda_arkhiva.html

Можно пробовать на Trial версии:
https://insat.ru/products/?category=1666

ASo
05.02.2023, 16:46
Это конечно замечательно, но доступно только в безлимитной по тэгам версии.
Или уже не так?

SCADAMaster
05.02.2023, 16:57
Уже нет.
Доступна начиная с версии M - от 2500 тысяч тегов.

melky
05.02.2023, 23:00
у модуля МВ210 наберется параметров на 2500 тегов чтобы это было оправданным ?

ASo
06.02.2023, 08:10
Время и, соответственно, стоимость работы.

melky
06.02.2023, 08:33
ASo тут не совсем ясно к чему Время и Стоимость? то есть бесплатные решения требуют по вашему больше затрат? особенно учитывая, что и работать с БД планируется на питоне по сути...

ASo
06.02.2023, 09:24
Вот именно поэтому я и предлагал установить пакет модбас для питона и опросить на нем.
А дальше - вопрос компетенций. Если для человека это сугубо чуждая вещь, я имею ввиду промэлектронику - то чем мучаться условно неделю, но за бесплатно по контрагентам - лучше и дешевле что-то купить и решить проблему за день, особенно с шаблонами.

Ridsen
12.03.2023, 23:15
Что за роутер? Реальный IP от оператора имеется или нет? Есть ли реальный IP со стороны принимающего сервера?

Собственно еще вопрос по БД, так какая все-таки БД используется? или просто фиолетово какая будет БД ?


capzap

2. VPN канал со стороны роутера до сервера, настройка маршрутизации и т.д. Опрос Scada системой прибора по Modbus TCP самостоятельно, сохранение в БД
Минусы: ну либо привлекать Администраторов, чтобы все настроили, либо тратить самому время на настройку
Плюсы: любой период опроса менее 60 секунд, каналы связи только свои, без посредников


Есть роутер - модем
4G-роутер Teltonika RUT950

Возьму ip адрес от провайдера и будет ip адрес от сервера.

Можно ли использовать только это и SCADA систему для получения данных с прибора в базу данных?
Какую SCADA систему лучше использовать чтобы была более менее понятная - какая более эффективная и на русском языке?

melky
13.03.2023, 09:19
Ridsen если получите реальный ip со стороны сервера, то подойдет RapidScada V6.
Modbus мастер бесплатный в составе системы.
Ядро системы бесплатное, нет ограничений на количество каналов
Можно настроить сохранение каналов сразу в Postgre а не во встроенную БД, хотя не знаю, может будет быстрее писать во встроенную и импортировать, надо будет тестировать.
Да, линия связи настраивается как TCP сервер, то есть модем настраивается как TCP клиент. Проверяли на роутерах Teleofis (возможно ip адрес на модем и не потребуется, то есть модем будет стучаться в сервер и настраивать канал)

русский язык присутствует. Собственно разработчик русский, г.Воронеж.