Интеграция Modbus TCP с Yokogawa CENTUM VP: правильное сопоставление регистров

Почему интеграция Modbus по-прежнему важна
Комплектные установки редко поддерживают нативные протоколы DCS. Компрессоры, анализаторы и MCC обычно используют Modbus. CENTUM VP легко интегрируется с ними. Существуют два варианта. Последовательный Modbus RTU работает через шлюз ALR121. Modbus TCP работает напрямую через Ethernet. Оба варианта эффективны при правильном сопоставлении регистров. В этом руководстве рассмотрены типичные проблемы, с которыми мы сталкивались на объектах.
Изучите параметры протокола
Modbus RTU работает по двухпроводной линии RS-485. Типичные настройки: скорость 9600 или 19200 бод, 8 бит данных, без контроля чётности или с контролем на чётность, 1 стоповый бит. Адреса ведомых устройств находятся в диапазоне от 1 до 247. Каждая посылка защищена контрольной суммой CRC16. Modbus TCP использует порт 502. Заголовок MBAP содержит идентификатор транзакции. Идентификатор устройства передаётся внутри кадра. TCP обеспечивает целостность данных, поэтому CRC не требуется.
Коды функций имеют большое значение:
- Код 01 — чтение катушек
- Код 02 — чтение дискретных входов
- Код 03 — чтение регистров хранения
- Код 04 — чтение регистров входов
- Код 05 — запись одной катушки
- Код 06 — запись одного регистра
- Код 15 — запись нескольких катушек
- Код 16 — запись нескольких регистров
Нативный формат данных — 16-разрядный. Для чисел с плавающей запятой двойной разрядности требуются два регистра. Порядок байтов у разных производителей различается. Именно это чаще всего приводит к ошибкам сопоставления.
Шесть этапов сопоставления
Шаг 1: Получите карту регистров ведомого устройства. Зафиксируйте каждый адрес, тип данных, масштаб и права доступа. Чётко укажите инженерные единицы измерения.
Шаг 2: Настройте параметры связи в инженерном инструменте CENTUM VP. Для ALR121 укажите скорость, чётность, адрес ведомого устройства и интервал сканирования. Для TCP укажите IP-адрес, порт 502, идентификатор устройства и тайм-аут ответа.
Шаг 3: Сопоставьте регистры с внутренними тегами FCS в коммуникационном программном обеспечении. Выберите тип данных: знаковое 16-разрядное число, беззнаковое 16-разрядное число, 32-разрядное целое число или число с плавающей запятой.
Шаг 4: Проверьте порядок байтов. В CENTUM VP по умолчанию используется порядок от старшего байта к младшему. Некоторые ведомые устройства передают сначала младшее слово. Некорректное значение числа с плавающей запятой обычно указывает на несоответствие порядка слов. Поменяйте порядок слов и повторите проверку.
Шаг 5: Сначала проверьте чтение с помощью кода функции 03 или 04. Сравните значения с показаниями на локальном дисплее ведомого устройства. Затем проверьте запись с помощью кода 06 или 16. Перед массовой записью начните с одного регистра.
Шаг 6: Настройте биты качества. CENTUM VP помечает каждый тег как GOOD, BAD или UNCERTAIN. Создайте логику, реагирующую на качество BAD. Никогда не выполняйте действия, основываясь только на устаревших значениях.
Типовые неисправности и способы устранения
Связь полностью отсутствует. Сначала проверьте полярность A и B линии RS-485. Затем проверьте согласующие резисторы на обоих концах линии — используйте резисторы 120 Ом. Кроме того, убедитесь, что скорость и чётность в точности соответствуют настройкам ведомого устройства.
Исключение 02, недопустимый адрес данных. Номер регистра выходит за пределы диапазона ведомого устройства. Проверьте карту регистров. Смещения с отсчётом от нуля и от единицы часто становятся причиной ошибок.
Исключение 03, недопустимое значение данных. Записываемое значение выходит за допустимый диапазон или регистр доступен только для чтения. Проверьте таблицу прав доступа.
Исключение 04, отказ ведомого устройства. Ведомое устройство занято или неисправно. Увеличьте тайм-аут ответа. Проверьте список аварий ведомого устройства.
Тайм-ауты при исправной проводке. Интервал сканирования может быть слишком коротким. Однако это также происходит, когда несколько ведомых устройств используют одну линию. Поэтому увеличьте время сканирования или разделите линию.
Ошибки CRC в режиме RTU. Помехи повреждают кадры. Проверьте заземление экрана и сократите длину шины. Прокладывайте кабель вдали от кабелей частотно-регулируемых приводов и электродвигателей.
Заключение и рекомендации к действиям
Интеграция Modbus на 20 процентов состоит из проводки и на 80 процентов — из дисциплины работы с данными. Задокументируйте карту регистров до создания тегов. Сначала выполните проверку с помощью симулятора ведущего устройства Modbus. Проверьте порядок байтов по известному значению. Наконец, встроите логику обработки битов качества в систему управления FCS. Это превращает любое стороннее устройство в надёжный компонент CENTUM VP.
Автор: Ван Тао — инженер по промышленной автоматизации с более чем 10-летним опытом работы с ПЛК, DCS и системами управления.
