Страница 1 из 1

RT_HW_LINK: новый прикладной метод распределенного ввода-вывода

Добавлено: 22 авг 2026, 15:22
ecoins
RT_HW_LINK: новый прикладной метод распределенного ввода-вывода

RT_HW_IO_LINK — это технология быстрого прикладного обмена между центральным контроллером и удалённым модулем ввода-вывода. Она создаёт для пользователей FLProg более комфортную среду: вместо адресов устройств, карт регистров и ручной раскладки данных инженер работает с понятными блоками DI, DO, AD, DA, STATUS, OK и DIAG.

Общая идея: центральный контроллер и удалённый модуль ввода-вывода.
Снимок экрана 2026-08-22 151020.png
Что это даёт пользователю FLProg

В обычной системе расширения инженер часто вынужден думать о протоколе: какой адрес устройства, какой номер регистра, где лежит нужный бит, как часто опрашивать узел и как диагностировать потерю связи. RT_HW_IO_LINK переносит эту работу внутрь библиотеки. В проекте остаются осмысленные сигналы и готовые функциональные блоки.
удалённые входы и выходы выглядят как естественное расширение контроллера;
не нужно вручную вести карту регистров;
не нужно вручную разбирать кадры обмена;
связь, восстановление состояния и диагностика реализованы внутри библиотеки;
параметры обмена можно тонко настраивать: периоды, приоритеты, force refresh, фильтры и диагностику.

Почему это проще, чем классический обмен регистрами
RT_HW_IO_LINK не заменяет Modbus во всех задачах. Modbus остаётся универсальным промышленным протоколом для совместимости с большим количеством оборудования. Но для связки “центральный контроллер - удалённый модуль ввода-вывода” RT_HW_IO_LINK даёт более прямой и понятный интерфейс.
Снимок экрана 2026-08-22 151336.png
Подключение точка-точка
Базовая схема проста: один порт центрального контроллера соединяется с одним удалённым модулем. Для коротких линий подходит RS232, для дальних линий - RS422, для внутриплатных и коротких соединений - прямой UART RX/TX. При наличии нескольких независимых портов можно подключить несколько расширителей одновременно, сохраняя простую структуру “один порт - один модуль”.
io_Варианты физического уровня.png
Варианты физического подключения: RS232, RS422 и UART RX/TX.


Полный дуплекс и разгрузка канала
Обмен работает в полном дуплексе: центральный контроллер отправляет команды управления, а удалённый модуль независимо передаёт входы, аналоговые значения, статус и диагностику. При изменении передаются только изменившиеся поля. Периодическая контрольная отправка force refresh восстанавливает полное состояние после перезапуска, ошибки или разрыва связи.
PO DO1 0040
PO DA1 8500
AD0 15 AD2 1279 AD3 1276 AD4 1247
ST 0007
RQ ER 0004


Практические результаты
ASCII-режим протестирован на скорости 230400 бод. В тесте управлялись 24 светодиода, использовались режимы “пила” и “треугольник”. Длина одной посылки от центрального устройства составляла около 1.6 мс. Периоды 5 мс и 10 мс работали устойчиво. При периоде 3 мс обмен также выполнялся, но визуально светодиоды или человеческий глаз уже не успевали нормально воспринимать выключение.
Испытание.png
Итоги скоростного теста: ASCII уже достаточно быстрый для типовых задач дискретного управления.
Итог
RT_HW_IO_LINK превращает одиночный контроллер в центральный узел распределённой системы. Для пользователя FLProg это выглядит как понятный набор блоков и сигналов, а не как низкоуровневый протокол. Первая практическая реализация на связке FLE4S-D320-V1 и модулей FLE показала, что решение быстрое, простое для отладки и пригодно для дальнейшего развития: счётчиков, энкодеров, умных кнопок, step/servo-модулей и локальных исполнительных узлов.


============================================================