Как реализовать опрос архива прибора?

Стартовая страница Форумы Понять, как работает ПО Как реализовать опрос архива прибора?

Просмотр 15 сообщений - с 16 по 30 (из 53 всего)
  • Автор
    Сообщения
  • #18573
    manjey73
    Участник

    Как вариант, если в регистрах хранится архив прошлого месяца и он сменится на следующем, то просто читать его раз в сутки и у вас месяц будут данные одни и те же.

    Лишнее расходование каналов.

    #18580
    a80808
    Участник

    А прибор(ы) рассчитываете использовать в составе автоматизированной системы коммерческого учета с передачей данных Регулятору или только для себя? Если первое, то надо сертификат на средство измерения, причем в него входит весь тракт от датчика до передачи «наверх». Это большие проблемы…
    Если только для себя то я бы не заморачивался, а читал только регистр 0х43 (Мгновенный расход по всем каналам м3/час) раз в минуту в дорасчетном минутном канале, делил на 60 и складывал в другом канале. Ну а на границе суток, месяца, года…переписывал в другие нужные каналы.
    Вот как то так:
    https://ibb.co/WFhML2T
    Правда тут все считалось через время наработки, но с мгновенным расходом проще. Но придется писать формулы…

    #18581
    ppwkh
    Участник

    a80808, не могли бы описать, как вы вставили табличку на этот сайт. Раньше у меня получалось, но забыл.
    На https://imgbb.com/ после загрузки файла каковы действия? Предыдущие мои 2 поста оказались бракованными.

    #18582
    Romiros
    Участник

    Скопируйте ссылку, которую они предлагают и просто вставьте сюда

    https://ibb.co/XWwDWhr

    #18583
    ppwkh
    Участник

    https://ibb.co/9wdjJw5

    В таблице показан опрос частотника и расходомера (стоят на одном объекте).
    У расходомера опрашивается только мгновенный расход (текущий расход, м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.
    #18585
    Romiros
    Участник

    АРХИВ ПРИБОРА а не скады

    Так Вам об этом и говорят. Нужен драйвер для данного прибора. Либо разрабатывать самим, либо на заказ.

    • Ответ изменён 5 лет, 3 месяца назад пользователем Romiros.
    #18587
    a80808
    Участник

    Чисто Коммуникатора без дополнительных танцев никак. Нужно или драйвер для этого расходомера писать, который будет отправлять команды на устройство, или как я уже писал отдельный опросник.

    #18588
    manjey73
    Участник

    ppwkh еще раз, у вас есть регистры архива, если эти регистры меняются по прошествии суток, часа, месяца и т.д. и вы не запрашиваете при этом какую-то определенную запись архива, то настройте драйвер Modbus на нужные регистры из архива и все. Вы будете иметь данные из текущего архива. Просто проверьте на приборе как ведет себя архив.

    регистры 40001-40064

    регистр 40065 отвечает за исправность архива.

    Если регистры меняются и туда попадают записи предыдущего архива, то вы просто это увидите в каналах, в которые настроите чтение из этих регистров.
    А так же состояние этого архива.
    Если эти регистры не будут менять значение, а всегда хранить ту запись, запрос к которой был последний как указано далее в документе
    Поддерживается команда установки даты (времени) архива для последующего чтения архивной записи – 0x43 — кстати да, этих команд в драйвере тоже нет…
    То тогда придется писать драйвер под прибор, используя Modbus.dll как основу в коде. По другому никак…

    #18589
    manjey73
    Участник

    Драйвер написать похоже немножко не получится, ну или придется попотеть, так как возможности отправлять ДАТУ выбором из Календаря как бы нет.

    з.ы. не хватает такой возможности.

    #18591
    a80808
    Участник

    Вот почему и предлагал поиграть с мгновенным расходом. Если данные нужны раз в сутки при опросе раз в минуту даже если и будут пропуски всегда можно аппроксимировать. Большой ошибки не будет. Возможно придется иногда сверять что насчитала СКАДА с тем, что хранится в приборе и корректировать константу для формулы.

    Но видно что по любому надо брать прибор и экспериментировать. «Если долго мучиться что нибудь получится!» 🙂

    ИМХО

    #18592
    a80808
    Участник

    P.S. Но связь должна быть надежная. Почему с ней могут быть проблемы?

    #18593
    ppwkh
    Участник

    Здесь возникла путаница в терминах.
    В документации по 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.
    #18595
    ppwkh
    Участник

    a80808 «Но связь должна быть надежная. Почему с ней могут быть проблемы?»

    — устройства расположены на удалённых участках и опрос ведётся посредством GPRS-модемов (TELEOFIS).

    • Ответ изменён 5 лет, 3 месяца назад пользователем ppwkh.
    #18597
    manjey73
    Участник

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

    вам бы по Modbus погуглить и понять, что адрес 40001 не что иное, как логический адрес 1 или физический адрес 0 для функции 0х03
    Много бы вопросов отпало бы сразу.

    #18601
    Mikhail
    Модератор

    Добрый день!

    Бегло посмотрел тему.

    Как быть, если к примеру, на начало (или конец) календарных суток не было связи с прибором. Тогда в архивных данных скады будут прочерки. В этом случае надо опрашивать архивные данные прибора. Как это сделать на уровне скады — непонятно.

    Попробуйте плагин Гибкий отчёт. В нём реализована возможность расчёта разности показаний за посуточно, а также опция брать данные из соседнего часа, если не было показаний на учётный час.

Просмотр 15 сообщений - с 16 по 30 (из 53 всего)
  • Для ответа в этой теме необходимо авторизоваться.