Значения прыгают.

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

    Добрый день.
    Настроил коммуникатор, получил 2 косяка.
    1. Не могу получить корректное значение 4 байтовое состоящее из 2ух слов. Т.о. вместо значения 123456 получаю 57920 (т.е. только второе слово), порядок байт 01. Сделал костыль: статичное значение 65536 в базе + значение которе получаю. Если подскажите как исправить, то будет приятно.
    2. Значения завел в веб и обратил внимание, что значения по срезу в час скачат. Т.е. после ручного запуска коммуникатора показывает 19 значений верно, через определенное время показывает первые 6 верно, вторые 6 (копия первых 6), третьи 6 (копия первых 6 либо вторых 6). Последнее значение всегда верно. В шаблоне настроенно 4 группы input registers (uint порядок 01), 3 группы. по 6 элементов и 1 гр. 1 эл.
    После ручного перезапуска, значения показываются корректные.

    • Эта тема была изменена 4 года, 3 месяца назад от iKasperiKasper.
    • Эта тема была изменена 4 года, 3 месяца назад от iKasperiKasper.
    #4406
    MikhailMikhail
    Модератор

    Добрый день!
    1. Если у Вас 4 байта, то порядок должен быть хотя бы 0123 (это значение по умолчанию), т.е. из 4 цифр.

    2. Корректность значений лучше проверять в Коммуникаторе — это первоисточник. Веб должен показывать то же самое, что и Коммуникатор. Поэтому желательно добиться корректной работы по п.1.

    #4407
    MikhailMikhail
    Модератор

    Желательно приложить скриншоты.

    #4410
    Аватарmanjey73
    Участник

    Как вариант увеличить timeout ответа прибора.
    Есть такое иногда, даже когда подключаешься родным ПО с коротким таймаутом.

    #4412
    iKasperiKasper
    Участник

    Я неверно выразился. Все значения смотрю в коммуникаторе, просто визуально скачки заметил с помощью веба.
    Сейчас подключился и вновь увидел в коммуникаторе скачки, скрин прилагаю:
    https://cloud.mail.ru/public/32vY/24n7CewxJ
    Создал еще одну группу с 1 элементом для первого значение (20 сигнал) и установил порядок 0123, результат 59219. На заднем фоне по первому елементу значение которое я должен получить = 124755.
    Перезапустил и значения вернулись в нормальное состояние. Скрин прилагаю:
    https://cloud.mail.ru/public/A4Kd/vcMuUYoge

    Норм
    https://cloud.mail.ru/public/A4Kd/vcMuUYoge
    С ошибкой
    https://cloud.mail.ru/public/32vY/24n7CewxJ

    #4413
    iKasperiKasper
    Участник

    Поставил таймаут 2500, пауза по умолчанию 200.
    Смотрю на результаты.

    #4414
    Аватарmanjey73
    Участник

    У вас из OPC или откуда-то забирается только один word (16 бит), а значение должно занимать два регистра DWORD (32 бита)
    То есть в настройках KpModbus на данную переменную вы должны указать не ushort 2 байта, а беззнаковые 4 байта uint, если у вас целочисленная переменная.

    • Этот ответ был изменен 4 года, 3 месяца назад от Аватарmanjey73.
    #4415
    iKasperiKasper
    Участник

    1. Так и не знаю, что делать с первым элементом.
    2. Не помогло, значения вновь начали скакать.

    #4417
    Аватарmanjey73
    Участник

    Они и скачут у вас, потому что вы пропустили 1 байт в опросе.

    число 124755 занимает 17 бит, что выходит за рамки одного регистра.

    #4418
    iKasperiKasper
    Участник

    Manjey73
    Я это знаю, но не знаю как исправить, прикладываю скрин шаблона устройств с настройками этого элемента. 32 бита — 4 байта.
    https://cloud.mail.ru/public/9XbX/LYLNErMve

    #4419
    iKasperiKasper
    Участник

    Как я мог пропустить 1 байт?

    #4420
    Аватарmanjey73
    Участник

    странно, если проверить в калькуляторе, то один бит ушел в аут…

    #4421
    iKasperiKasper
    Участник

    В калькуляторе я уже так же посчитал, решил что ничтожен и решил обратиться на форум

    #4422
    Аватарmanjey73
    Участник

    А снифер поставить и глянуть ? может 1-й пост еще мусор кидает в сеть ?

    #4423
    iKasperiKasper
    Участник

    На самом деле ситуация сильно не ясно, т.к. имеется от стороннего производителя мониторинг, с помощью которого я как раз и смотрю те значения которые должен получить:
    https://cloud.mail.ru/public/2ZN7/gC6wCpYkX
    И вот в нем все значения корректны и работают стабильно.
    Вот и пытаюсь скаду превратить в конфетку, но как то не гладко проходит.

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