Не обновляются данные Меркурий 206

Стартовая страница Форумы Ошибки в работе Ошибки Коммуникатора Не обновляются данные Меркурий 206

Просмотр 15 сообщений - с 1 по 15 (из 19 всего)
  • Автор
    Сообщения
  • #9448
    NeZl0i
    Участник

    День добрый. Подключен счетчик Меркурий 206. Библиотека KPMercury20x.dll. При запуске сервера текущие данные тегов КП получают правильные значения и таблица тегов их отображает. На этом все. Значения больше не обновляются, хотя в журнале линий связи явно видно в пакете ответа от устройства, что приходят новые двнные, ну к примеру текущее напряжение. В веб таблице тоже тишина, текущие значения стоят те, которые получил после запуска (рестарта) коммуникатора. ОС Win7. Пробовал полностью переустановить скаду, результат тот же. Установил на Win10 с теми же настройками, все работает корректно, данные меняются согласно интервалу опроса. В чем может быть проблема?

    • Эта тема была изменена 5 лет, 10 месяцев назад от Mikhail.
    #9450
    Mikhail
    Модератор

    Добрый день!
    Надеюсь, Вам поможет manjey73 — он разработчик драйвера Меркурий. Если manjey73 не увидит Ваше сообщение здесь, напишите через пару дней, я отправлю ему ссылку на почту.

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

    В Коммуникаторе значения тоже не обновляются?

    #9456
    manjey73
    Участник

    Увидел. Если я правильно понял то на Win10 все работает корректно ?
    У меня к сожалению нет ПК с Windows 7, драйвер писал вроде на 8-ке, потом нам обновили ОС до 10-й версии.
    На следующей неделе возьму счетчик на работу, проверю с новой версией Scada, если возникнут проблемы, пересоберу драйвер.

    И я так понимаю, что в Коммуникаторе тоже все корректно меняется ?
    Выложите на обменник лог линии связи, где видно посылка и прием данных от счетчика.

    • Этот ответ был изменен 5 лет, 10 месяцев назад от manjey73.
    #9460
    NeZl0i
    Участник

    Нет, в коммуникаторе, данные в таблице текущих тегов отображаются корректно только при запуске/перезапуске. Т.е. перезапустили коммуникатор, появились данные и на этом все. Опрос идет непрерывно, по пакетам в ответе видно, что напряжение меняется, а вот в тегах висят те значения, которые были получены при старте. В веб соответственно то же самое. Даже ради эксперимента оставил сбор данных на 2 часа. Каждый час на веб сервере данные в таблице заносятся на каждый час, но они дублируются, т.е. остаются статическими, хотя сбор идет. На Win10 я опрашивал М230, все работает корректно. 206 на 10-ке не пробовал.

    Ну и по поводу самого драйвера. Там нужно сделать разделение на М200 и М206. Поскольку в 200 нет 81 команды. Реактивной энергии тоже нет. Косинус угла тоже отсутствует. Вообщем различия в протоколе существенные. Если нужно, я могу вам расписать различия протокола 200 и 206. Библиотеку я могу помочь поправить. Ну и хотелось бы немного расширить функционал библиотек как для 20х, так и 23х.

    • Этот ответ был изменен 5 лет, 10 месяцев назад от NeZl0i.
    #9462
    manjey73
    Участник

    По поводу различий 200 и 206 пишите различия. У меня нет 200-ки на руках, только 206-й
    Сейчас подключил свой счетчик на Win10, значения меняются и в Web и в Коммуникаторе. Возможно пересобирал библиотеку в какой-то момент.

    Ну нет команд, но на остальное счетчик должен реагировать? просто снять галочки с того, что нет будет работать ?

    Постараюсь сегодня пересобрать драйвер, а то у меня уже различия есть, и эти различия умерли вместе с жестким диском недавно 🙁

    https://cloud.mail.ru/public/DKpL/FEfHGoBi9

    Попробуйте этот драйвер, я пытался чуть продолжить над ним работу, но исходники погибли, сейчас пытаюсь восстановить. Он у мена меняет значения при опросе на Win10

    • Этот ответ был изменен 5 лет, 10 месяцев назад от manjey73.
    #9466
    NeZl0i
    Участник

    С этим драйвером вообще не работает. Сетевой адрес непонятно куда писать, пробовал строку типа 123456;17; , в запросах нет сетевого, нули.

    #9467
    manjey73
    Участник

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

    Просто вызовите настройку снова и нажав ОК у вас будет новая командная строка. А адрес пропишите согласно указанному выше.

    #9468
    manjey73
    Участник

    А что на счет расширения функционала ? о чем именно речь ?

    #9469
    manjey73
    Участник

    https://cloud.mail.ru/public/8nAP/g3MKj5xUb

    Собрал c версией Коммуникатора 5.1.0.2, сейчас установлю последнюю версию Scada и проверю работу.

    #9474
    NeZl0i
    Участник

    Ты уже опередил )) В новой версии драйвера гляжу поболее функционала. Попробую все собрать, отладить, потом отпишу

    #9475
    manjey73
    Участник

    Поболее, но возможно не полностью рабочий 🙂 восстанавливал путем декомпиляции dll, так как промежуточные исходники погибли. Мог тогда что-то не доделать.
    Ну и пока еще нормально с xml не умею работать и web плагины еще ни разу не делал, месячные срезы кидать в базу глупо, это как раз для плагина планировалось вычитывать по команде.

    #9476
    NeZl0i
    Участник

    Собрал проект, все работает, данные меняются в текущем срезе. Сомневаюсь в правильности сборки, делал так:
    1. В типы КП прописал библиотеку KpMercury20x.dll, обозвал Меркурий 20х
    2. В самом КП указал новый тип «Меркурий 20х» (до этого был Modbus), в поле адреса прописал сетевой адрес счетчика.
    3. В коммуникаторе в командной строке оставил только 17;
    И таким образом проблема решилась. Я так понял, если в КП не указывать адрес, то его нужно будет прописывать в командной строке. Как правильно сделать?

    #9477
    manjey73
    Участник

    Нет, адрес указывается либо в КП, либо если подключаем драйвер без настроек базы в Коммуникаторе, сняв галочку «Привязка» в выбранном КП в соответствующем поле Адрес Коммуникатора.

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

    #9478
    NeZl0i
    Участник

    Еще хотелось бы добавить чтение журналов. Можно сделать событие на вкл/выкл, если вдруг произошло отключение энергии. Но с другой стороны событие можно повесить и на само напряжение. Теперь в команды управления. Может добавить произвольную строку для отправки пакета в счетчик? Ну к примеру нужно сбросить наработку батарейки, в управлении пишем что-то типа [00 00 00 00] 0C 04 00 [CRC].

Просмотр 15 сообщений - с 1 по 15 (из 19 всего)
  • Вы должны авторизироваться для ответа в этой теме.