Как выбирать топологию
| Задача | Рекомендуемая схема | Что проверить перед пуском |
|---|---|---|
| Локально читать несколько RS-485 устройств. | Одна линия RTU 1. |
Устройства имеют разные slave ID, одинаковые baud/parity/stop bits и корректную линию A/B/GND. |
| Разделить разные скорости, этажи, шкафы или группы оборудования. | RTU 1 + RTU 2. |
Каждая линия имеет свой serial profile и свой список устройств. |
| Добавить сетевое Modbus TCP устройство. | Канал TCP в режиме polling. |
IP устройства доступен из сети шлюза, порт открыт, unit ID указан явно. |
| Передавать телеметрию наружу. | UMEC Space или Generic MQTT. | Локальный опрос уже стабилен, а секреты MQTT не хранятся в открытом доступе. |
| Дать SCADA доступ к RTU устройствам по Ethernet. | Modbus TCP server listener + route map или NAT. | Маршруты не конфликтуют, повторяющиеся slave ID обработаны явными NAT-правилами. |
| Сделать диспетчеризацию нескольких объектов. | Несколько шлюзов + единая SCADA или UMEC Space. | Каждый шлюз имеет уникальное имя объекта, понятный IP/hostname и отдельные учетные данные. |
Схема 1. Один локальный RS-485 сегмент
Самая простая схема: шлюз опрашивает устройства на RTU 1, оператор смотрит ModBus и дашборды,
журналы сохраняются локально. Внешняя интеграция может быть отключена.
flowchart LR
O[Операторский ноутбук] -->|HTTP| G[UMEC Gateway]
G -->|RTU 1 / RS-485| D1[Счетчик]
G -->|RTU 1 / RS-485| D2[Датчик]
G -->|RTU 1 / RS-485| D3[Контроллер]
G --> S[(Хранилище / Logs)]
Схема 2. Две независимые RS-485 линии
Используйте две линии, когда устройства физически разделены, работают на разных скоростях или одна группа оборудования должна оставаться доступной при проблеме на другой линии.
flowchart LR
G[UMEC Gateway]
G -->|RTU 1: 9600 8N1| A1[Вентиляция]
G -->|RTU 1: 9600 8N1| A2[Датчики CO2]
G -->|RTU 2: 19200 8E1| B1[Счетчики]
G -->|RTU 2: 19200 8E1| B2[Релейные модули]
UI[Web UI] --> G
Схема 3. Локальные RTU устройства и TCP устройство
Канал TCP нужен для сетевых Modbus устройств и интеграционных endpoint'ов. Не воспринимайте его
как прозрачную RS-485 линию: у него есть отдельные режимы polling, not polling и disabled.
flowchart LR
G[UMEC Gateway]
G -->|RTU 1| R1[RS-485 устройства]
G -->|TCP bus3| T1[Modbus TCP устройство]
G -->|TCP tunnel| T2[Удаленный Modbus endpoint]
G --> C[ModBus / Дашборды / Автоматизация]
Схема 4. Локальный объект и MQTT
MQTT включается после проверки локальной работы. Шлюз продолжает опрашивать устройства локально, а наружу отправляет подготовленную телеметрию. Потеря брокера не должна останавливать локальный ModBus и сценарии.
flowchart LR
D[RTU/TCP устройства] --> G[UMEC Gateway]
G --> UI[Локальный web UI]
G -->|MQTT / Wi-Fi или Ethernet| B[(Broker)]
B --> P[SCADA / Cloud / Analytics]
Схема 5. SCADA подключается к RTU через Modbus TCP server
В этой схеме шлюз принимает сетевые Modbus TCP запросы и маршрутизирует их к RTU линиям. Она полезна, когда верхняя система понимает Modbus TCP, а полевые устройства остаются на RS-485.
flowchart LR
S[SCADA / PLC] -->|Modbus TCP| L[Gateway listener]
L --> G[UMEC Gateway route map]
G -->|RTU 1| A[Slave ID 1..20]
G -->|RTU 2| B[Slave ID 21..40]
G --> N[NAT / strict map]
Схема 6. NAT для повторяющихся адресов
NAT нужен, когда в разных сегментах есть одинаковые slave ID, но внешняя система должна видеть их как разные адреса. Не используйте NAT вместо аккуратной адресации: каждое правило должно быть явным и проверяемым.
flowchart LR
S[Modbus TCP client] --> G[Gateway NAT]
G -->|source unit 101 -> RTU1 unit 1| A[Device A / unit 1]
G -->|source unit 102 -> RTU2 unit 1| B[Device B / unit 1]
G -->|priority order| R[NAT rules]
Схема 7. Несколько шлюзов для диспетчеризации
Когда объект большой, удобнее ставить несколько шлюзов рядом с оборудованием: один в щите учета, второй в вентиляционной, третий на удаленном вводе. SCADA или диспетчерский сервер получает данные от каждого шлюза по сети, а локальная диагностика остается доступной на каждом участке.
flowchart LR
subgraph Site[Объект]
G1[Gateway A / Щит учета] --> M1[Счетчики]
G2[Gateway B / Вентиляция] --> V1[AHU / CO2 / клапаны]
G3[Gateway C / Насосная] --> P1[Насосы / датчики]
end
G1 -->|MQTT или Modbus TCP| D[Диспетчеризация]
G2 -->|MQTT или Modbus TCP| D
G3 -->|MQTT или Modbus TCP| D
D --> O[Оператор / инженер]
| Правило | Практический смысл |
|---|---|
| Называйте шлюзы по месту установки. | Например: shop-01-metering, shop-01-ahu, warehouse-pump-room. |
| Не смешивайте разные физические зоны без причины. | При аварии линии проще понять, где искать проблему: в щите, вентиляционной или насосной. |
| Разделяйте локальный доступ и внешний сбор данных. | Оператор на объекте работает с web UI конкретного шлюза, диспетчер видит сводную картину в SCADA или UMEC Space. |
Схема 8. Распределенные объекты в UMEC Space
UMEC Space подходит, когда есть много объектов: магазины, склады, насосные станции, вентиляционные камеры, щиты учета. Каждый шлюз собирает данные локально, а платформа показывает единый список объектов, состояние связи, аварии, тренды и агрегированные дашборды. Клиент работает с объектами в UMEC Space Dashboard, а мобильный доступ открывается через UMEC Home или UMEC Business.
flowchart LR
subgraph Stores[Распределенные объекты]
A[Магазин 1 / Gateway]
B[Магазин 2 / Gateway]
C[Склад / Gateway]
D[Насосная / Gateway]
end
A -->|MQTT over TLS / учетная запись объекта| U[(UMEC Space)]
B -->|MQTT over TLS / учетная запись объекта| U
C -->|MQTT over TLS / учетная запись объекта| U
D -->|MQTT over TLS / учетная запись объекта| U
U --> M[Диспетчер]
U --> E[Сервисный инженер]
| Что настроить | Как должно выглядеть в эксплуатации |
|---|---|
| Уникальное имя объекта и шлюза. | В платформе понятно, откуда пришли данные и на каком объекте появилась авария. |
| Стабильный локальный опрос до включения облака. | Если интернет пропал, объект продолжает работать локально, а данные возобновляются после восстановления связи. |
| Отдельные учетные данные и секреты для каждого объекта. | Компрометация одного объекта не дает доступ ко всей сети. |
Отраслевые примеры
Шлюз собирает температуру холодильных витрин, состояние вентиляции, счетчики электроэнергии и аварийные сигналы. Дашборд показывает температуру, энергопотребление и активные предупреждения.
RTU 1 подключает контроллер AHU, датчики CO2 и температуры. Сценарий может включать предупреждение при превышении CO2 или отказе вентилятора.
RTU 1 или RTU 2 опрашивает счетчики. Важны одинаковые параметры линии, уникальные адреса и регулярное сохранение журналов.
Шлюз принимает Modbus TCP запросы от SCADA и маршрутизирует их к RS-485 устройствам. NAT используется только там, где есть повторяющиеся slave ID.
Набор экранов для проверки топологии
| Экран | Что должно быть видно | Когда считается готовым |
|---|---|---|
| Конфигурация | Линия, serial profile или TCP endpoint, список устройств, каналы и команды. | Устройства сохранены, адреса не конфликтуют, параметры соответствуют паспорту оборудования. |
| ModBus | Свежие значения, состояние линий, доступные команды, выбранные каналы для графиков. | Нет массовых offline/stale, команды проверены на безопасных нагрузках. |
| Дашборд | Ключевые показатели объекта: температура, энергия, состояние оборудования, аварии. | Панель понятна оператору без открытия Конфигурация. |
| Logs | Журнал автоматизации, Журнал ModBus и Хранилище с файлами подтверждения. | Можно доказать, когда устройство отвечало, когда была ошибка и какое действие выполнил оператор. |
Типовые ошибки RS-485
| Ошибка | Как проявляется | Что сделать |
|---|---|---|
| Перепутаны A/B | Все или почти все устройства на линии не отвечают. | Поменять A/B на одном конце линии и повторить проверку Инспектор или ModBus. |
| Нет общего GND | Ответы нестабильны, ошибки появляются при включении нагрузки или длинной линии. | Проверить общий провод/экран по требованиям оборудования и исключить разность потенциалов. |
| Неверная termination | Короткая линия работает, длинная линия дает случайные таймауты. | Поставить терминаторы на концах магистрали, не ставить их на каждом ответвлении. |
| Неверные baud/parity/stop bits | Устройство физически подключено, но не отвечает ни на один регистр. | Сверить паспорт устройства и настройки линии в Конфигурация. |
| Повторяющийся slave ID | Ответы выглядят случайными или значения принадлежат не тому устройству. | Назначить уникальные адреса внутри линии или вынести устройства на разные линии/NAT-схему. |
Из коробки до первого дашборда
http://192.168.4.2, войдите под администратором и смените пароль.
RTU 1: baud, parity, stop bits, таймауты и список устройств.
Памятка по безопасности
| Действие | Почему важно | Минимальное правило |
|---|---|---|
| Сменить пароль после первого входа. | Стартовые учетные данные известны монтажной и сервисной команде. | Используйте уникальный пароль объекта и храните его в принятом у заказчика хранилище. |
| Изолировать сервисную сеть. | Web UI и Modbus TCP не должны быть доступны из гостевых или публичных сетей. | Размещайте шлюз в техническом VLAN или за маршрутизатором с явными правилами доступа. |
| Аккуратно работать с MQTT secrets. | Секреты дают доступ к телеметрии и иногда к управляющим топикам. | Не публикуйте скриншоты с секретами, используйте разные учетные данные для разных объектов. |
| Ограничить Modbus TCP доступ. | Неправильная SCADA-команда может изменить состояние оборудования. | Разрешайте доступ только доверенным IP и проверяйте список writable-команд. |