Стартовая страница › Форумы › Понять, как работает ПО › Как реализовать опрос архива прибора?
- В этой теме 52 ответа, 5 участников, последнее обновление 5 лет, 3 месяца назад сделано
Mikhail.
-
АвторСообщения
-
04.03.2021 в 11:32 #18573
manjey73УчастникКак вариант, если в регистрах хранится архив прошлого месяца и он сменится на следующем, то просто читать его раз в сутки и у вас месяц будут данные одни и те же.
Лишнее расходование каналов.
04.03.2021 в 12:15 #18580
a80808УчастникА прибор(ы) рассчитываете использовать в составе автоматизированной системы коммерческого учета с передачей данных Регулятору или только для себя? Если первое, то надо сертификат на средство измерения, причем в него входит весь тракт от датчика до передачи «наверх». Это большие проблемы…
Если только для себя то я бы не заморачивался, а читал только регистр 0х43 (Мгновенный расход по всем каналам м3/час) раз в минуту в дорасчетном минутном канале, делил на 60 и складывал в другом канале. Ну а на границе суток, месяца, года…переписывал в другие нужные каналы.
Вот как то так:
https://ibb.co/WFhML2T
Правда тут все считалось через время наработки, но с мгновенным расходом проще. Но придется писать формулы…04.03.2021 в 13:29 #18581ppwkh
Участникa80808, не могли бы описать, как вы вставили табличку на этот сайт. Раньше у меня получалось, но забыл.
На https://imgbb.com/ после загрузки файла каковы действия? Предыдущие мои 2 поста оказались бракованными.04.03.2021 в 14:04 #18582Romiros
УчастникСкопируйте ссылку, которую они предлагают и просто вставьте сюда
04.03.2021 в 14:15 #18583ppwkh
УчастникВ таблице показан опрос частотника и расходомера (стоят на одном объекте).
У расходомера опрашивается только мгновенный расход (текущий расход, м3/час) и накопленный объём, м3. Из базы SCADA вручную оператор берёт циферки накопленного объёма по состоянию 00:00 и отнимает эти данные предыдущих суток. Получаем расход за прошедшие сутки в м3.
Но, как я писал в 1-м посте, если связи с прибором не будет в период 00:00, то данных соответственно не будет. Поэтому нужно опрашивать АРХИВ ПРИБОРА а не скады.
Как опрашивать архив этого прибора средствами коммуникатора, согласно документации по ModBus (https://www.mzta.ru/media/kunena/attachments/3819/ModBusRTU_-1_jan15.pdf) — непонятно.-
Ответ изменён 5 лет, 3 месяца назад пользователем
ppwkh.
04.03.2021 в 14:39 #18585Romiros
УчастникАРХИВ ПРИБОРА а не скады
Так Вам об этом и говорят. Нужен драйвер для данного прибора. Либо разрабатывать самим, либо на заказ.
-
Ответ изменён 5 лет, 3 месяца назад пользователем
Romiros.
04.03.2021 в 14:42 #18587
a80808УчастникЧисто Коммуникатора без дополнительных танцев никак. Нужно или драйвер для этого расходомера писать, который будет отправлять команды на устройство, или как я уже писал отдельный опросник.
04.03.2021 в 15:28 #18588
manjey73Участникppwkh еще раз, у вас есть регистры архива, если эти регистры меняются по прошествии суток, часа, месяца и т.д. и вы не запрашиваете при этом какую-то определенную запись архива, то настройте драйвер Modbus на нужные регистры из архива и все. Вы будете иметь данные из текущего архива. Просто проверьте на приборе как ведет себя архив.
регистры 40001-40064
регистр 40065 отвечает за исправность архива.
Если регистры меняются и туда попадают записи предыдущего архива, то вы просто это увидите в каналах, в которые настроите чтение из этих регистров.
А так же состояние этого архива.
Если эти регистры не будут менять значение, а всегда хранить ту запись, запрос к которой был последний как указано далее в документе
Поддерживается команда установки даты (времени) архива для последующего чтения архивной записи – 0x43 — кстати да, этих команд в драйвере тоже нет…
То тогда придется писать драйвер под прибор, используя Modbus.dll как основу в коде. По другому никак…04.03.2021 в 15:31 #18589
manjey73УчастникДрайвер написать похоже немножко не получится, ну или придется попотеть, так как возможности отправлять ДАТУ выбором из Календаря как бы нет.
з.ы. не хватает такой возможности.
04.03.2021 в 16:05 #18591
a80808УчастникВот почему и предлагал поиграть с мгновенным расходом. Если данные нужны раз в сутки при опросе раз в минуту даже если и будут пропуски всегда можно аппроксимировать. Большой ошибки не будет. Возможно придется иногда сверять что насчитала СКАДА с тем, что хранится в приборе и корректировать константу для формулы.
Но видно что по любому надо брать прибор и экспериментировать. «Если долго мучиться что нибудь получится!» 🙂
ИМХО
04.03.2021 в 16:09 #18592
a80808УчастникP.S. Но связь должна быть надежная. Почему с ней могут быть проблемы?
04.03.2021 в 16:10 #18593ppwkh
УчастникЗдесь возникла путаница в терминах.
В документации по Modbus РУС-1 сказано:
«1. Поддерживается команда 0x03 Read Holding Registers (чтение значений из нескольких регистров хранения). Одной командой можно прочитать
максимум 32 регистра. Адреса доступные для чтения 40001 – 40286.»
— «команда 0x03» — в коммуникаторе это функция 0x03;
— «номер 0x0043» — в коммуникаторе это адрес чтения регистра.
— «Адрес 40001-40064» — вот это для меня непонятно. Когда я опрашиваю не архивные данные прибора этим «адресом» я не пользуюсь.
В шаблоне коммуникатора куда их впихивать?
Вот образец моего шаблона чтения РУС-1:https://ibb.co/3TD2VZY
https://ibb.co/s1qrwXfК тому же, в их документации указывается только о «чтение значений«, хотя насколько я понял, чтобы прочесть архив за какое-то время, нужно туда что-то записать. И прибор может быть заблокирован от записи (в нём есть два DIP-переключателя (наподобие, что стояло ещё в матричных принтерах 🙂 ), ответственных за блокировку).
Буду связываться с производителями.
-
Ответ изменён 5 лет, 3 месяца назад пользователем
ppwkh.
04.03.2021 в 17:05 #18595ppwkh
Участникa80808 «Но связь должна быть надежная. Почему с ней могут быть проблемы?»
— устройства расположены на удалённых участках и опрос ведётся посредством GPRS-модемов (TELEOFIS).
-
Ответ изменён 5 лет, 3 месяца назад пользователем
ppwkh.
04.03.2021 в 17:20 #18597
manjey73УчастникИ что, телеофис у вас же работает в режиме сквозного канала всегда, если не забыли оплатить конечно тариф.
вам бы по Modbus погуглить и понять, что адрес 40001 не что иное, как логический адрес 1 или физический адрес 0 для функции 0х03
Много бы вопросов отпало бы сразу.04.03.2021 в 18:30 #18601
MikhailМодераторДобрый день!
Бегло посмотрел тему.
Как быть, если к примеру, на начало (или конец) календарных суток не было связи с прибором. Тогда в архивных данных скады будут прочерки. В этом случае надо опрашивать архивные данные прибора. Как это сделать на уровне скады — непонятно.
Попробуйте плагин Гибкий отчёт. В нём реализована возможность расчёта разности показаний за посуточно, а также опция брать данные из соседнего часа, если не было показаний на учётный час.
-
Ответ изменён 5 лет, 3 месяца назад пользователем
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.