Modbus
Modbus драйвер устройства позволяет SberMobile Server взаимодействовать с устройствами, используя Modbus протокол. Данные устройства могут быть подключены к системе и, подобно всем другим типам устройств, их данные преобразовываются в специальную форму, так что доступ к ним возможен от разных экземпляров SberMobile. Смотрите статью Device для более подробной информации о "нормализованном" представлении устройств в SberMobile.
Modbus драйвер поддерживает сетевые версии (Modbus TCP и Modbus UDP) и серийные версии (Modbus RTU, Modbus ASCII и Modbus BIN) протокола. Серийные устройства Modbus должны быть подключены к COM портам компьютера, запускающего SberMobile Server.
Если множественные устройства Modbus находятся на serial bus (например, на RS-485 bus), все устройства будут соединены с SberMobile путем единственного аккаунта устройства. Регистры, которые принадлежат к разным устройствам, должны быть добавлены к общей таблице регистров (см. ниже) с различными значениями Unit ID.
Охват устройств modbus путем сети IP
Есть два основных пути соединения последовательного устройства Modbus к SberMobile по сети IP:
Использование serial-over-ip конвертера
В этом случае конвертер изменяет физический протокол (от Serial на Ethernet или Wi-Fi), но не изменяет протокол на уровне приложения. Поэтому данные Modbus ASCII или Modbus RTU передаются по сети IP "как есть". На стороне сервера виртуальный последовательный драйвер порта необходим, чтобы "поймать" трафик IP и предоставить его с помощью классического последовательного порта. На стороне SberMobile Server аккаунт устройства должен быть настроен для того, чтобы работать в режиме Modbus Serial, взаимодействуя путем верхнего виртуального последовательного порта.
SberMobile предлагает широкий дапазон конвертеров Serial-over-IP (такие как DS1206 програмируемые контроллеры запущенной Serial-over-IP микропрограммы), также как и Virtual Serial Port Driver для ОС Windows и Linux.
Сторонние конвертеры, работающие в паре со сторонними виртуальными последовательными портами, также могут быть использованы для преобразований serial-over-IP.
Использование конвертера modbus serial в modbus TCP
В этом случае конвертер изменяет да протокола: физический (из Serial в Ethernet или Wi-Fi) и на уровне приложения (Modbus ASCII или RTU в Modbus TCP). Таким образом, данные Modbus TCP передаются по сети IP. На стороне сервера драйвер устройства Modbus SberMobile должен быть настроен для работы в режиме Modbus TCP и прямо соединяться с устройством (или несколькими устройствами по bus) с помощью сети IP.
Любой из программируемых контроллеров SberMobile (такие как DS1206), который может запустить приложение конвертер Modbus, выполняющий прикладной и физический протокол преобразования.
Сторонние конвертеры также могут быть использованы для преобразования Modbus Serial в Modbus TCP.
Конфигурация SberMobile Server для серийных коммуникаций
Смотрите включение серийных коммуникаций, если возникли проблемы при подключении к серийным устройствам Modbus.
Информация о драйвере
ID плагина драйвера: | com.tibbo.linkserver.plugin.device.modbus |
Общие настройки
Не определены.
Настройки уровня пользователя
Не определены.
Свойства device
Настройки подключения
Настройки подключения определяют, как SberMobile Server взаимодействует с определенным устройством Modbus. Данные настройки доступны через опцию Изменить свойства Device контекста Device. Доступны следующие свойства подключения:
Свойство | Описание |
Версия Modbus | Выбор Modbus TCP, Modbus UDP и Modbus Serial. |
Идентификатор устройства (Unit ID) | Идентификатор устройства Modbus. Идентификация (адрес) удаленного подчиненного узла, подключенного к серийной линии или другим информационным каналам(например, RS485). |
IP адрес или имя хоста | Адрес устройства Modbus (для Modbus TCP/UDP). |
Порт | Порт устройства Modbus (номер IP порта, заданный по умолчанию на 502 для Modbus TCP/UDP; имя серийного порта для Modbus Serial). |
Кодирование | Выбор RTU, ASCII или BIN (для Modbus Serial). |
Скорость передачи информации (Baud Rate) | Скорость передачи информации (для Modbus Serial). |
Контроль входящего потока | Тип контроля входящего потока: None, CTS/RTS, или XON/XOFF (для Modbus Serial). |
Контроль исходящего потока | Тип контроля исходящего потока: None, CTS/RTS, или XON/XOFF (для Modbus Serial). |
Биты данных (Data Bits) | Биты последовательных данных (для Modbus Serial). |
Стоп-биты (Stop Bits) | Стоп-биты последовательных данных (для Modbus Serial). |
Четность (Parity) | Четность (для Modbus Serial). |
Таймаут | Время ожидания выполнения команды (5 секунд по умолчанию). |
Повторы | Количество повторов для каждой команды. |
Повторное подключение для каждой команды | Заставляет каждую транзакцию Modbus TCP выполняться при отдельном подключении. |
Режим записи | Определяет, какие команды протокола Modbus используются для установки значений регистра:
|
Регистры устройства
Данное свойство содержит список регистров устройства Modbus, которые доступны для и управляются SberMobileом. как только добавлено новое устройство, должен быть сконфигурирован один и более регистр, чтобы данные устройства были доступны системе. Каждый регистр Modbus представлен одной переменной контекста Device.
Устройства Modbus не создают метаданных, поэтому SberMobile Server не может знать о наличии доступных регистров Modbus определенного устройства. Так что необходимо вручную конфигурировать регистры. |
Ниже приведен список свойств каждого регистра Modbus:
Свойство | Описание | |
Имя | Имя регистра. Будет использоваться в качестве переменной контекста Device, необходимой для доступа к регистру, поэтому она состоит только из букв, однозначных чисел и подчеркивания. | |
Описание | Текстовое описание регистра. Будет использовано в качестве описания переменной Контекста Device. | |
Тип | Тип регистра Modbus. Возможные значения:Coil, Discrete Input, Input Register и Holding Register. | |
Адрес регистра (десятичный) | Адрес регистра Modbus в десятичном формате. | |
Этот адрес не абсолютный адрес регистра Modbus. Он указывает на смещение регистра от начала адресного пространства для регистров выбранного Типа. Например, Адресу (смещению) 1 для регистра типа Регистр хранения соответствует:
| ||
Размер | Количество однотипных регистров, читаемых одной операцией ввода/вывода Modbus и хранимых в переменной контекста SberMobile Server. Может быть полезно прочитать несколько регистров за раз в следующих случаях:
Эта настройка имеет значение по умолчанию 1. Значение по умолчанию не должно меняться в большинстве случаев. | |
Действительное количество регистров, читаемых при помощи одной операции ввода/вывода - N * M, где
Например:
| ||
Unit ID | Modbus Unit ID. Идентификация (адрес) удаленного ведомого, соединенного на последовательной линии или на других шинах (например, RS485). |
Вы можете импортировать список регистров из файла (например, файл CSV), используя функцию Импорт компонента Редактор таблицы данных |
Если вы хотите подключить несколько схожих устройств Modbus к SberMobile, вы можете заполнить таблицу регистров устройства только один раз, затем скопировать ее на другие устройства, используя действие репликации. |
Активы device
Драйвер не поддерживает активы.
Настройки device
Драйвер устройства Modbus создает одну переменную настройки Device для каждого регистра.
Тип конвертации
Данная таблица показывает, как Регистры Modbus конвертируются в переменные контекста Device. Заметьте, что количество строк в каждой переменной зависит от значения параметра Размер. По умолчанию все переменные имеют одну строку, т.е. скалярны.
Тип регистра | Формат | Формат переменной SberMobile Server |
Дискретный выход (Coil) | отсутствует | Читаемый/записываемый, 1 колонка типа Логическое |
Дискретный вход (Discrete Input) | отсутствует | Только для чтения, 1 колонка типа Логическое |
Выходной регистр (Holding Register) | 2-байтный Int Unsigned | Читаемый/записываемый, 1 колонка типа Целое |
| 2-байтный Int Signed | Читаемый/записываемый, 1 колонка типа Целое |
| 4-байтный Int Unsigned | Читаемый/записываемый, 1 колонка типа Целое |
| 4-байтный Int Signed | Читаемый/записываемый, 1 колонка типа Целое |
| 4-байтный Int Unsigned Swapped | Читаемый/записываемый, 1 колонка типа Целое |
| 4-байтный Int Signed Swapped | Читаемый/записываемый, 1 колонка типа Целое |
| 4-байтный Float | Читаемый/записываемый, 1 колонка типа Плавающее |
| 4-байтный Float Swapped | Читаемый/записываемый, 1 колонка типа Плавающее |
| 8-байтный Int Signed | Читаемый/записываемый, 1 колонка типа Длинное |
| 8-байтный Int Signed Swapped | Читаемый/записываемый, 1 колонка типа Длинное |
| 8-байтный Float | Читаемый/записываемый, 1 колонка типа Двойное |
| 8-байтный Float Swapped | Читаемый/записываемый, 1 колонка типа Двойное |
| 2-байтный BCD | Читаемый/записываемый, 1 колонка типа Целое |
| 4-байтный BCD | Читаемый/записываемый, 1 колонка типа Целое |
| Символьный | Читаемый/записываемый, 1 колонка типа Строка. Сервер читает количество регистров, указанных в параметре Размер, и представляет их как строку, которая всегда имеет длину в 64 символа. |
| Строковый | Читаемый/записываемый, 1 колонка типа Строка. Сервер читает количество регистров, указанных в параметре Размер, и представляет их как строку. Эта строка разрывается первым регистром со значением ноль. |
Входной регистр (Input Register) | Любое | То же, что и для Выходного регистра с одинаковым Форматом, но только для чтения. |
Операции device
Драйвер не выполняет операции.
События
Device
Драйвер не представляет события.
Подключение
Драйвер переводит устройство в режим онлайн если:
Последовательный порт успешно открыт (для устройств Modbus)
Установлено TCP соединение с устройством (для Modbus TCP устройств)
Всегда (для Modbus UDP устройств)
Синхронизация
Синхронизация между SberMobile Server и устройством Modbus включает следующие шаги:
Создание кэша настроек согласно списку регистров устройства. Каждая переменная используется для доступа к одному регистру устройства Modbus.
Чтение значений регистра Modbus и их хранение в кэше настроек.