Почему float на панели PH1 показывает неверное значение?

Проверено экспертом Опубликовано: 08.12.2025 Обновлено: 26.03.2026 939 просмотров Помогло 89%

Чаще всего дело в порядке байтов. Связь при этом исправна, ошибок обмена нет, целые числа читаются правильно, а вещественные превращаются в мусор — огромные значения, нули или скачки при плавном изменении параметра.

Порядок байтов задаётся в Project settings одним переключателем: Little-endian или Big-endian, и относится он именно к числам с плавающей запятой. По умолчанию стоит Little-endian. Если контроллер или прибор отдаёт float в обратном порядке, панель соберёт из двух правильных слов неправильное число.

Как отличить эту причину от остальных:

  • целые читаются, вещественные — нет. Классический признак перепутанного порядка байтов: 16-битные значения не страдают, потому что переставляются слова, а не байты внутри слова;
  • значение выглядит осмысленным по порядку величины, но неверным — тогда причина, скорее всего, другая: не тот адрес или не та база адресов;
  • число «дрожит» вокруг правильного — вопрос к формату данных объекта, а не к порядку байтов.

Что проверить по порядку:

  1. Формат данных объекта — он должен быть 32-битным с плавающей запятой, а не 32-битным целым.
  2. Адрес: вещественное число занимает два соседних регистра, и второй из них не должен использоваться под другой параметр.
  3. Переключатель порядка байтов в настройках проекта.
  4. Документацию устройства: производители нередко указывают порядок слов явно.

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

Прикреплённая документация

Георгий Жуков Георгий Жуков Ведущий инженер

Этот ответ был полезен?

Не нашли ответ?

Инженер сервисной службы ответит на почту. Вопросы, которые повторяются, мы публикуем в базе знаний — без ваших контактов.

Вопрос из раздела Почему float на панели PH1 показывает неверное значение?