Toolbox™ управления приборами поддерживает интерфейс MODBUS через TCP/IP или последовательный RTU. Его можно использовать для связи с серверами MODBUS, такими как ПЛК. Типичный рабочий процесс:
Создайте подключение MODBUS к серверу или оборудованию.
При необходимости сконфигурируйте подключение.
Выполнение операций чтения и записи, например, обмен данными с регулятором температуры.
Очистите и закройте соединение.
Для взаимодействия через интерфейс MODBUS сначала создается объект MODBUS с помощью modbus функция. Создание объекта также создает соединение. Синтаксис:
<objname> = modbus('Transport', 'DeviceAddress')
or
<objname> = modbus('Transport', 'Port')Необходимо установить вид транспорта как 'tcpip' или 'serialrtu' для обозначения протокола, который вы хотите использовать. Затем задайте адрес и порт, как показано в следующих разделах. Можно также использовать пары «имя-значение» при создании объекта для задания таких свойств, как Timeout и ByteOrder.
При создании объекта MODBUS он подключается к серверу или оборудованию. Если транспорт 'tcpip', то DeviceAddress необходимо указать. Порт является необязательным и по умолчанию имеет значение 502 (зарезервированный порт для MODBUS). Если транспорт 'serialrtu', то 'Port' необходимо указать.
Создание объекта с помощью транспорта TCP/IP
Когда транспорт 'tcpip', необходимо указать DeviceAddress. Это IP-адрес или имя хоста сервера MODBUS. Port - удаленный порт, используемый сервером MODBUS. Порт является необязательным и по умолчанию имеет значение 502, который является резервным портом для MODBUS.
В этом примере создается объект MODBUS m используя указанный адрес устройства и port из 308.
m = modbus('tcpip', '192.168.2.1', 308)
m =
Modbus TCPIP with properties:
DeviceAddress: '192.168.2.1'
Port: 308
Status: 'open'
NumRetries: 1
Timeout: 10 (seconds)
ByteOrder: 'big-endian'
WordOrder: 'big-endian'Создание объекта с использованием транспорта Serial RTU
Когда транспорт 'serialrtu', необходимо указать 'Port'. Это последовательный порт, к которому подключен сервер MODBUS.
В этом примере создается объект MODBUS m с использованием port из 'COM3'.
m = modbus('serialrtu','COM3')
m =
Modbus Serial RTU with properties:
Port: 'COM3'
BaudRate: 9600
DataBits: 8
Parity: 'none'
StopBits: 1
Status: 'open'
NumRetries: 1
Timeout: 10 (seconds)
ByteOrder: 'big-endian'
WordOrder: 'big-endian'Создание объекта и задание свойства
Можно создать объект, используя пару имя-значение, чтобы задать свойства, такие как Timeout. Timeout свойство указывает максимальное время в секундах ожидания ответа от сервера MODBUS, и по умолчанию 10. Значение можно изменить либо во время создания объекта, либо после его создания.
Список и описание свойств, которые можно задать для обоих типов транспорта, см. в разделе Настройка свойств для MODBUS Communication.
В этом примере создается объект MODBUS с использованием последовательного RTU, но увеличивается Timeout кому 20 секунд.
m = modbus('serialrtu','COM3','Timeout',20)
m =
Modbus Serial RTU with properties:
Port: 'COM3'
BaudRate: 9600
DataBits: 8
Parity: 'none'
StopBits: 1
Status: 'open'
NumRetries: 1
Timeout: 20 (seconds)
ByteOrder: 'big-endian'
WordOrder: 'big-endian'Выходные данные отражают Timeout изменение свойства.