Стартовая страница › Форумы › Разработка и интеграция › Запись в базу всех считанных значений
- В этой теме 15 ответов, 5 участников, последнее обновление 7 лет, 9 месяцев назад сделано
manjey73.
-
АвторЗаписи
-
27.08.2018 в 15:26 #10196
scmember
УчастникДобрый день!
У нас стоит задача по мониторингу сложного техпроцесса. Несколько датчиков и поворотных механизмов опрашиваются коммуникатором несколько раз в секунду. Однако в срезы/тренды считанные данные записываются всего лишь раз в минуту. В конфигурации сделали раз в секунду, но появились некоторые побочные эффекты, плюс раз в секунду для этих техпроцессов слишком много, надо чаще. Вопрос, как наиболее оптимально будет «присосаться» к данным, которые считывает с КП коммуникатор, чтобы запоминать их например в сторонней базе, и дальше уже анализировать с помощью всяких отчетов?
27.08.2018 в 16:40 #10197
manjey73УчастникВроде как Текущие данные поступают в базу сразу после их получения.
Настроить модуль экспорта в БД в нужную вам базу.Сомневаюсь, что Коммуникатор успеет считать все ваши данные меньше, чем раз в секунду.
27.08.2018 в 18:15 #10201
MikhailМодераторДобрый день!
Инструкция по настройке модуля экспорта в БД http://doc.rapidscada.net/content/ru/modules/mod-db-export.html
Оптимизация быстродействия системы в целом — отдельная задача, которая каждый раз имеет свои особенности. Если нужна будет помощь — обращайтесь.
27.08.2018 в 18:17 #10202
MikhailМодераторЕсли много параметров и нужно писать их очень часто, то быстродействия обычной БД может не хватить. В этом случае нужно будет разработать индивидуальное решение. Нужны цифры и испытания, чтобы более определенно сказать.
28.08.2018 в 07:24 #10203Kazam
УчастникБыла подобная задача.
Быстрый экспорт данных в PostgreSQL, 18 тысяч каналов. Штатного модуля экспорта было недостаточно.
Решил так:
Модуль к ScadaServer при старте заполняет таблицу входных каналов в базе данных статистической информацией (имена каналов, типы и тд). Так же заполняются таблицы:
КП
Unit
Param
CtrlКаждые 100 мс происходит сброс текущих значений каналов в PostgreSQL.
Работает быстро.
Если интересно, можно сделать под ваши задачи.28.08.2018 в 18:34 #10204
MikhailМодераторЗа каждые 100 мс успевают записаться 18000 каналов?
Какие параметры сервера?
БД и SCADA на одном компьютере?29.08.2018 в 06:50 #10205Kazam
УчастникСервер Dell Power Edge R620
Intel Xeon 6C E5-2640 2.50GHz- 2 шт
24 GB DDR3
2*SSD 512 GB Raid
NET 1 GBScada и PostgresSQL на этом же сервере. Там же Frontend.
Используется прямая запись в базу данных, минуя ORM или прямые запросы на вставку.
Пользуюсь методом COPY.
В Scada 752 Линии связи и столько же КП. Каждый отдает от 22 до 24 каналов.
Опрос тепловычислителей СПТ и немного сторонних. В драйвере есть логика работы с архивами: по факту их формирования в приборе происходит считывание и запись в SQL.Постоянно занято ресурсов: ЦПУ — 25-30 %, RAM — 30-40 %
В моменты формирования отчетности в Excel бывает, что RAM заполняется до 70 %, но на работе не сказывается….29.08.2018 в 16:24 #10206
MikhailМодераторСпасибо. Можете кинуть ссылку на документацию по прямой записи в Postgre?
30.08.2018 в 08:25 #10207Kazam
Участникhttps://postgrespro.ru/docs/postgresql/9.6/sql-copy пожалуйста =)
30.08.2018 в 18:20 #10208
MikhailМодераторСпасибо!
25.10.2018 в 12:01 #10492
TawУчастникА модуль экспорта в БД является бесплатным?
26.10.2018 в 17:56 #10505
MikhailМодераторДа. Он входит в дистрибутив, нужно только его подключить в SCADA-Сервере.
02.11.2018 в 09:50 #10609
TawУчастникА как называется этот модуль (эта dll)?
02.11.2018 в 09:57 #10610
manjey73УчастникTaw От вы иногда вопросы бахаете 🙂
Запустите Сервер — Модули — нажмите +, там кому угодно будет понятно что ModDBExport.dll относится к экспорту в БД 🙂Да даже в папку модули заглянуть хватило бы….
-
Ответ изменён 7 лет, 9 месяцев назад пользователем
manjey73.
03.11.2018 в 04:37 #10622
TawУчастникБолее того, там только единственный модуль для подключения в папке. Выбора и нет.
-
Ответ изменён 7 лет, 9 месяцев назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.