Как задать порядок байтов регистров панели PH?
За это отвечает настройка Local Register Endian Order в разделе Settings → System Settings → Global Settings. Она определяет, в каком порядке панель собирает многобайтовые значения из своих внутренних регистров, и задаётся отдельно для 16- и 32-битных данных.
Варианты:
- 16-битные данные — порядок 12 или 21;
- 32-битные данные — порядок 4321, 3412 и другие комбинации.
Здесь важно различать две разные настройки, которые часто путают:
- Local Register Endian Order относится к внутренним регистрам самой панели;
- порядок слов и байтов во внешнем обмене задаётся отдельно, кнопкой Advance в настройках подключения устройства — там же, где тайм-ауты и групповое пакетирование.
Симптом неправильной настройки узнаваем: целые 16-битные значения читаются верно, а 32-битные числа и значения с плавающей запятой выглядят мусором — гигантскими величинами или нулями. Связь при этом исправна, ошибок обмена нет.
Порядок проверки при пусконаладке:
- Возьмите параметр с заведомо известным значением — номинальный ток привода, версию прошивки, заводскую уставку.
- Убедитесь, что формат данных объекта совпадает с форматом в устройстве.
- Меняйте порядок байтов и смотрите, при каком варианте значение становится осмысленным.
- Зафиксируйте выбранный вариант в документации проекта.
Совет на будущее: разберитесь с порядком байтов на первом же вещественном параметре. Когда таких параметров станет сорок, ошибка обойдётся куда дороже, а выглядеть будет так же — «панель показывает ерунду».
Прикреплённая документация
Георгий Жуков
Ведущий инженер