Работа с протоколом Modbus
Благодаря универсальности и открытости, Modbus позволяет интегрировать оборудование разных производителей. Modbus используется для мониторинга, сбора показаний с датчиков, управления реле, контроллерами и т.д.
Форматы протокола Modbus:
- Modbus ASCII встречается достаточно редко.
- Modbus TCP предназначен для работы в локальных сетях.
- Modbus RTU наиболее распространенный вариант. Работает поверх RS-485/232.
Modbus-регистры SLAVE устройств
Так как Modbus предназначен для работы с промышленной автоматикой, то и внутренняя структура протокола в первую очередь описывает параметры промышленной автоматики, такие как дискретные и аналоговые входы и выходы.В настоящий момент в терминалах УМКа302/303 реализованы функции чтения всех стандартных типов, такие как 1, 2, 3 и 4. Все параметры делятся с одной стороны на входы и выходы. Входы можно только читать, а выходы читать и писать. С другой стороны, бывают дискретные входы/выходы размером в один бит и 16-битные регистры.
Протокол Modbus предполагает, что есть устройства с двумя разными ролями:
- Master – ведущее устройство, которое опрашивает все остальные устройства. Мастер на шине может быть только один.
- Slave – ведомое устройство. Его опрашивает мастер. У каждого ведомого есть адрес в диапазоне от 1 до 247. Ведомых устройств на шине может быть несколько. Адреса ведомых в одной шине должны быть уникальными.
Реализация Modbus в терминалах УМКа
Поддержка протокола Modbus для УМКа302 реализована с версии 2.11.0.Терминалы УМКа302/303 берут на себя роль Master в шине Modbus и опрашивают Slave устройства.УМКа302 поддерживают чтение до 32 параметров. При этом возможно чтение 32 параметров с одного подключенного Slave устройства, чтение одного параметра с 32 подключенных Slave устройств и все промежуточные комбинации.
Также терминал может автоматически строить план опроса Modbus устройств таким образом, чтобы уменьшить количество запросов. Это позволяет значительно сократить время опроса устройства.