Стартовая страница › Форумы › Понять, как работает ПО › Как реализовать опрос архива прибора?
- В этой теме 52 ответа, 5 участников, последнее обновление 5 лет, 3 месяца назад сделано
Mikhail.
-
АвторСообщения
-
03.03.2021 в 16:55 #18551
ppwkh
УчастникЗдравствуйте.
Дано: расходомер (счётчик воды).
Опрос накопленного объёма происходит по Modbus. Проблем нет.
Встала задача — создать ежесуточный отчёт об объёме пройденной воды через этот счётчик. Из архива скады это можно взять.
Но есть одно «Но».
Как быть, если к примеру, на начало (или конец) календарных суток не было связи с прибором. Тогда в архивных данных скады будут прочерки. В этом случае надо опрашивать архивные данные прибора. Как это сделать на уровне скады — непонятно.
Да, у прибора есть возможность чтения архивов (там правда используется нестандартная функция ModBus, но это уже другой вопрос).-
Тема изменена 5 лет, 3 месяца назад пользователем
ppwkh.
03.03.2021 в 18:46 #18553Romiros
УчастникКак обычно. Нужен драйвер для данного прибора
А какой расходомер? В существующих драйверах такого нет?03.03.2021 в 20:34 #18554
manjey73УчастникВ существующих драйверах Modbus не реализованы пользовательские функции, к сожалению.
Нетривиальная задача на первый взгляд, но реализовать в принципе можно было бы, особенно в свете 6-й версии Scada где появятся архивные БД.встречал подобные приборы, где есть архивы и протокол Modbus
03.03.2021 в 21:43 #18555
a80808УчастникАппроксимация не поможет? С последующей актуализацией…
03.03.2021 в 22:04 #18557Romiros
УчастникНа самом деле даже существующая бд позволяет складывать архивы. Минус то что они только часовые. И минус то, что часовой архив перезаписывает минутный за эту же метку времени. Если в 6-ой верси будет возможность архивировать сутки, и уйдет эта болячка с перезаписью минутного архива, то вообще будет красота.
Если мы говорим о коммерческом учёте, то никакая апроксимация здесь не поможет. Нужны данные непосредственно с прибора.
03.03.2021 в 23:23 #18558
a80808УчастникПо коммерческому да. Но тогда нельзя брать из архива.
04.03.2021 в 08:34 #18559ppwkh
УчастникПрибор — ультразвуковой расходомер РУС-1 (г.Чебоксары).
И учёт будет коммерческим. Объекты — скважины, с которых происходит подъём воды, от объёма которой мы платим налоги.Я тут подумал, а если создать ещё один (несколько) входных каналов, в которые будут забиваться опрашиваемые данные из архива прибора на начало и конец суток? Досконально ещё не продумывал этот вариант.
04.03.2021 в 09:10 #18560Romiros
УчастникВ идеале конечно нужен драйвер. Это более надежно с точки зрения записи в архив scada на любую глубину. С дополнительными каналами мне кажется не получится.
04.03.2021 в 09:11 #18561
a80808УчастникЯ сейчас посмотрел описание этого прибора — там нет ни слова про ModBus ни про внутренние архивы…
http://www.nponauka.com/produktsiya/raskhodomery/ultrazvukovoj-raskhodomer-rus-1.html
Импульсный выход, это значит должен стоять еще счетчик с преобразованием в Modbus.
Я такое делал для артскважин (счетчик правда с «пропеллером», умер через год от грязи), но счет импульсов и передача данных выполнялись оборудованием LoraWAN. У них счетчики настраиваются на передачу в разные периоды, и существуют разные периоды сбора. Раз речь идет о коммерческом учете, вам же достаточно раз в сутки получать данные?04.03.2021 в 09:40 #18562Romiros
УчастникВроде написано ModBus-RTU
http://www.nponauka.com/produktsiya/raskhodomery/18-ultrazvukovoj-raskhodomer-rus-1m.html04.03.2021 в 10:12 #18563ppwkh
УчастникВот описание ModBus этого прибора:
https://www.mzta.ru/media/kunena/attachments/3819/ModBusRTU_-1_jan15.pdf
-
Ответ изменён 5 лет, 3 месяца назад пользователем
ppwkh.
04.03.2021 в 10:27 #18565
a80808УчастникУ нас почему то ссылки немного разные, видимо я нашел более старую версию.
Ну что же, стандартный ModBus RTU (Slave). Придется для него сочинять конфигурационный файл — это когда вы будете подключать его в Коммуникаторе. Там вам надо как я вижу всего с десяток каналов. Ну и придумать как подключить удаленно.04.03.2021 в 10:33 #18566
manjey73УчастникНу и что вас смущает? кроме команды 0x11 там стандартные команды.
Правда простым подключением драйвера архивы просто так не вычитать. так как надо подавать несколько команд и принимать ответы…
Такой своеобразный подход у производителя, вроде и команды стандартные, но простыми способами их не обработать…
В данном случае надо писать драйвер надстройку над драйвером Modbus и посылая команды вычитывать архивы и раскладывать их как архивные значения. Тот еще геморрой.
04.03.2021 в 10:35 #18567
manjey73Участникa80808 — не поможет, чтобы прочитать архив, надо послать команду с номером записи, убедиться, что архив не поврежден по ответу и только потом читать регистры архива.
Текущий драйвер на такое не способен. Собственно текущий механизм Коммуникатора в некотором роде на такое не способен. Надо расставлять «ловушки» чтобы не происходило опроса например при простой перезагрузке Коммуникатора, чтобы он работал строго по командам и никак иначе.
-
Ответ изменён 5 лет, 3 месяца назад пользователем
manjey73.
04.03.2021 в 10:57 #18569
a80808УчастникЯ такую примерно проблему решал по опросу метеостанции МК-26 :). Написал на Python простенькую программку опроса, а читал Скадой. Опросник можно через шедулер запускать. Тоже вариант. Понятно что костыль с колхозом, но свою роль выполнял исправно :).
-
Тема изменена 5 лет, 3 месяца назад пользователем
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.