Instrument Control Toolbox™ поддерживает интерфейс MODBUS по TCP/IP или Последовательному RTU. Можно использовать его, чтобы связаться с серверами MODBUS, такими как PLC. Типичный рабочий процесс:
Создайте связь 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'Создайте объект Используя последовательный транспорт 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. Можно изменить значение или во время создания объекта или после того, как вы создадите объект.
Для списка и описания свойств можно установить для обоих транспортных типов, видеть Configure Properties для Коммуникации MODBUS.
Этот пример создает объект 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.