16 343
правки
м (→Структура файла: Вычитка) |
|||
Строка 52: | Строка 52: | ||
=== Структура файла === | === Структура файла === | ||
Файл <code>/etc/wb-mqtt-serial.conf</code> имеет структуру <code>порты (ports)</code> → <code>устройства (devices)</code> → <code>каналы (channels)</code>: в файле есть описание физических портов контроллера, внутри них — список | Файл <code>/etc/wb-mqtt-serial.conf</code> имеет структуру <code>порты (ports)</code> → <code>устройства (devices)</code> → <code>каналы (channels)</code>: в файле есть описание физических портов контроллера, внутри них — список подключенных к этому порту устройств, а внутри устройств описаны их каналы. | ||
Для каждого порта указываются настройки: скорость, четность и т.п., а также протокол: Modbus, Uniel и т.п. Для каждого устройства обязательно указывается его уникальный адрес на шине — <code>slave_id</code>, остальные параметры указываются по необходимости. | Для каждого порта указываются настройки: скорость, четность и т.п., а также протокол: Modbus, Uniel и т.п. Для каждого устройства обязательно указывается его уникальный адрес на шине — <code>slave_id</code>, остальные параметры указываются по необходимости. Если параметр не указан — будет подставлено значение по умолчанию. | ||
Структура файла: | Структура файла: | ||
Строка 142: | Строка 142: | ||
==== Основные настройки драйвера ==== | ==== Основные настройки драйвера ==== | ||
* debug — опция включает отладочный режим драйвера. Доступные значения: true, false. | * debug — опция включает отладочный режим драйвера. Доступные значения: ''true'', ''false''. | ||
* max_unchanged_interval — Задаёт интервал в секундах, в течение которого | * max_unchanged_interval — Задаёт интервал в секундах, в течение которого неизменяющиеся значения не будут публиковаться в MQTT. По истечении интервала значения будут опубликованы, даже если они не изменились. Помимо интервала в секундах можно указать специальные значения: | ||
** <code>0</code> — публиковать все значения; | ** <code>0</code> — публиковать все значения; | ||
** <code>-1</code> — публиковать только при изменении. Значение по умолчанию. | ** <code>-1</code> — публиковать только при изменении. Значение по умолчанию. | ||
==== Порты (ports) ==== | ==== Порты (ports) ==== | ||
* port_type — | * port_type — можно указать один из трех типов порта: | ||
** serial — последовательные порты RS-485 или RS-232 | ** serial — последовательные порты RS-485 или RS-232. Значение по умолчанию. | ||
** tcp — serial over TCP/IP. Пакеты, формируемые для работы с последовательными портами, передаются без изменений через TCP/IP. | ** tcp — serial over TCP/IP. Пакеты, формируемые для работы с последовательными портами, передаются без изменений через TCP/IP. | ||
** modbus tcp — передача по Modbus TCP. В секции устройств с таким типом порта могут использоваться только те, что поддерживают Modbus. | ** modbus tcp — передача по Modbus TCP. В секции устройств с таким типом порта могут использоваться только те, что поддерживают Modbus. | ||
* path — если выбран тип serial: устройство в системе, которое соответствует порту RS-485. | * path — если выбран тип ''serial'': устройство в системе, которое соответствует порту RS-485. | ||
* address — если выбран тип tcp или modbus tcp: IP-адрес или имя хоста. | * address — если выбран тип ''tcp'' или ''modbus tcp'': IP-адрес или имя хоста. | ||
* port — если выбран тип tcp или modbus tcp: TCP-порт. | * port — если выбран тип ''tcp'' или ''modbus tcp'': TCP-порт. | ||
* baud_rate — скорость порта. | * baud_rate — скорость порта. | ||
* parity — четность: | * parity — четность: | ||
Строка 163: | Строка 163: | ||
* stop_bits — количество стоп-бит, по умолчанию — 2. | * stop_bits — количество стоп-бит, по умолчанию — 2. | ||
* poll_interval — минимальный интервал опроса каждого регистра в миллисекундах. | * poll_interval — минимальный интервал опроса каждого регистра в миллисекундах. | ||
* response_timeout_ms — максимальное время ответа устройств в миллисекундах. По умолчанию — 500 мс. | * response_timeout_ms — максимальное время ожидания ответа устройств в миллисекундах. По умолчанию — 500 мс. | ||
* guard_interval_us — дополнительная задержка перед отправкой данных в порт, микросекунды. | * guard_interval_us — дополнительная задержка перед отправкой данных в порт, микросекунды. | ||
* connection_timeout_ms — если выбран тип tcp или modbus tcp: таймаут соединения. Если в течение указанного времени ни по одному из устройств на порту не поступило данных и истек connection_max_fail_cycles — разорвать соединение и переподключиться. | * connection_timeout_ms — если выбран тип ''tcp'' или ''modbus tcp'': таймаут соединения. Если в течение указанного времени ни по одному из устройств на порту не поступило данных и истек ''connection_max_fail_cycles'' — разорвать соединение и переподключиться. | ||
* connection_max_fail_cycles — если выбран тип tcp или modbus tcp: количество неудачных циклов опроса. | * connection_max_fail_cycles — если выбран тип ''tcp'' или ''modbus tcp'': количество неудачных циклов опроса. | ||
* enabled — включает или отключает порт. Доступные значения: ''true'', ''false''. По умолчанию — ''true''. | * enabled — включает или отключает порт. Доступные значения: ''true'', ''false''. По умолчанию — ''true''. | ||