软件中控网关

2026-06-22 接口:网口/串口/Modbus/HTTP R2
你将学到
  • 搞懂软件中控和硬件中控盒的本质区别,知道什么情况用哪种
  • 理解"工控机 + 串口服务器/IO 桥"的部署形态和各组件分工
  • 掌握串口服务器和 IO 网关桥接协议设备的完整链路
  • 拿到软件中控网关的选型维度对比表和故障排查表
  • 知道 SoftControl 怎么通过 Modbus TCP / HTTP 和网关打交道

项目讨论会上,集成商会说"我们用软中控"。甲方有时就回一句:"什么叫软中控?没有盒子的那种?设备坏了咋整?"

这是个很实在的疑惑。硬件中控盒(AMX、Crestron 这类)是一台专用黑盒,从接口、运算、逻辑跑一体;软件中控的思路正好相反——用通用工控机跑软件,物理接口靠外接网关扩展。两条路都能控展厅,区别在架构哲学和实际适用场景。

这一篇以"工控机 + SoftControl + 串口服务器 / IO 网关"这条展厅主流链路为主线,把每个环节说透。

R2 内容,涉及工控机串口接线和 Modbus 配置。具体型号的接口规格、串口参数、寄存器地址以厂商官方文档为准(文末来源);文中参数为说明性举例,不同型号有差异,接线前以手册为准。


软件中控和硬件中控盒:到底哪里不同

不是"软件中控没硬件",而是把专用硬件换成了通用硬件

维度 硬件中控盒(AMX/Crestron 类) 软件中控(工控机 + SoftControl)
硬件形态 专用封闭盒子,接口固定 通用工控机/NUC,接口可扩展
逻辑跑在哪里 固件 + 专有脚本语言 Windows/Linux 上的软件
升级方式 刷固件,有版本锁 推软件更新,远程可操作
二次开发 难,协议封闭 灵活,可写脚本/API 对接
物理 IO 扩展 买原厂扩展模块(贵) 外接任意 Modbus IO 网关(科星/有人等)
授权成本 按项目/按点位收费,高 一次性软件授权或年费,成本可控
维护方式 需厂家工程师 普通 IT 维护,远程桌面可接手
稳定性 专用系统更稳,但出问题难自救 工业工控机也够稳,且维修更容易
💡 提示

国内数字展厅项目的现实是:AMX/Crestron 的授权和维保费用经常占到中控系统预算的一大块,而功能上并不比"工控机 + 软件中控 + 外接 IO 网关"强多少。逻辑复杂、需要和后台系统对接、需要频繁迭代的展厅,工控机 + 软件中控的方案通常更合算。


部署形态:工控机 + 串口服务器 + IO 网关

这套组合是怎么工作的?每个组件干什么?

工控机:跑软件、居中调度

工控机(或稳定的 NUC/mini PC)是整个系统的"大脑"宿主。它上面跑着 SoftControl(或类似中控软件),负责:

  • 接收来自各类传感器、读卡器、按钮的输入信号
  • 跑场景联动逻辑("如果 A 触发,则 B 播视频 + C 继电器开灯 + D 投影切源")
  • 向各类设备发出控制指令(串口、网络、红外)

工控机有自己的网口和串口(通常 2 ~ 4 路),物理接口不够时靠下面两类网关扩展。

串口服务器:把串口设备搬进网络

展厅里很多设备只有串口(RS232 或 RS485)——老型号投影、LED 控制器、部分 DMX 控制器、拼缝屏控制器。工控机离这些设备远,或者设备数量超过板载串口数,这时就靠串口服务器。

串口服务器(如有人 USR-TCP232 系列)的作用是:把 RS232/RS485 信号转成 TCP 包,在局域网上走网线,工控机上的软件通过 TCP socket 发数据,串口服务器在另一端把 TCP 包还原成串口信号打出去,设备看到的就是一个串口设备在和它说话。

工控机(SoftControl)
  │  TCP socket(192.168.1.10:23 / 4001等,具体以设备配置为准)
  ▼
有人 USR-TCP232-306B(串口服务器)
  │  RS232 或 RS485
  ▼
投影机 / 显示器 / LED 控制器 …(串口设备)

软件中控发一条"投影开机"RS232 指令,SoftControl 把这条 HEX 帧包在 TCP 连接里发给串口服务器,串口服务器的物理串口口把帧打出去,投影收到——效果和工控机直连串口一样,但走了网络,可以跨机柜、跨楼层。

IO 网关(网络 IO 模块):扩展开关量 + 模拟量

开关量(DI/DO)——按钮、门磁、限位开关、干接点传感器——工控机本身板载 IO 少,靠外接 IO 网关扩展。科星的网络 IO 控制器(带网口 + Modbus TCP)就是干这个的:DI 端接传感器/按钮,DO 端接继电器/电机执行机构,工控机上的软件中控通过 Modbus TCP 读 DI 状态、写 DO 控制,从网络角度没有区别于任何网络设备。

参观者按按钮 / 传感器触发
  │  干接点信号
  ▼
科星 IO 网关(DI 端口,联网)
  │  Modbus TCP(IP:192.168.1.xx,端口 502)
  ▼
网络交换机
  │
  ▼
工控机(SoftControl 读 DI 状态 → 跑逻辑 → 写 DO 继电器)

完整链路示意

把两类网关组合在一起,一个中等规模展厅的完整软件中控链路是这样的:

参观者输入层
  ├─ 按钮 / 传感器 ──→ 科星 IO 网关(DI) ──→
  ├─ 读卡器 ──────→ 科星网络读卡器 ──────→  局域网
  └─ 触摸屏 ──────→ 直接走 HTTP/TCP ────→

工控机(SoftControl)
  ├─ Modbus TCP ────→ 科星 IO 网关(DO)──→ 继电器/灯光/电源
  ├─ TCP socket ───→ 有人串口服务器 ────→ 投影/显示器(RS232)
  ├─ Modbus TCP ────→ 科星模拟量采集器 ──→ 温湿度/液位监测
  ├─ PJLink TCP ───→ 支持 PJLink 的投影 → (无需串口服务器)
  └─ HTTP API ─────→ 播控软件/大屏系统 → 播放指令
💡 提示

把"设备管理"(IO、串口协议设备)和"内容播控"(视频、大屏)分开对待——IO 网关管物理接口,播控软件管内容。工控机上的 SoftControl 做全局调度,两边都认识。这样分工清晰,排障和升级都容易。


串口服务器配置要点

有人 USR-TCP232 系列(以 USR-TCP232-306B 为例,参数以官方文档为准)上电配置需要对齐这几项,否则中控发指令没反应:

串口参数要和设备匹配

设备是什么波特率(常见 9600/38400/115200),串口服务器的串口侧就设成什么。数据位/停止位/奇偶校验同样要和设备对齐。

常见配置示例(以实际设备手册为准):

串口类型:RS232 或 RS485(按设备选)
波特率:9600(以目标设备手册为准)
数据位:8
停止位:1
奇偶校验:无

网络侧配置

  • 分配固定 IP(和工控机同网段,展厅设备全部固定 IP,别用 DHCP)
  • 工作模式:TCP Server(中控软件主动连接)或 TCP Client 按项目定,TCP Server 更常见
  • 端口号:默认 23 或 4001(各型号不同),以设备文档为准

透传 vs Modbus 转换

USR-TCP232 系列支持两种模式:

  1. 透传模式:软件发什么 TCP 包,串口就打出什么;接到的串口数据原样透传回 TCP。SoftControl 需要自己组装 RS232/RS485 协议帧。
  2. Modbus TCP↔RTU 转换模式:软件发 Modbus TCP 帧,串口服务器自动转成 Modbus RTU 打到 RS485 总线上;回应帧再转 TCP 回来。展厅里挂 Modbus RTU 485 设备(如科星 IO 模块)时,走这个模式可以不用自己做格式转换。

以你手上型号的配置手册为准,有些型号的模式切换在 Web 配置页里,有些需要 AT 命令设置。


Modbus TCP 读写示例(Python)

SoftControl 内置了 Modbus 支持,但调试期间用 Python 直接打命令验证链路是最快的。

from pymodbus.client import ModbusTcpClient

# 连接科星 IO 网关(替换为你网关的实际 IP)
client = ModbusTcpClient('192.168.1.50', port=502)
client.connect()

# 读开关量输入(DI):功能码 01,读线圈
# 从地址 0 开始读 8 路 DI 状态(以网关手册寄存器地址为准)
di_result = client.read_coils(address=0, count=8, slave=1)
if not di_result.isError():
    print("DI 状态:", di_result.bits[:8])  # True=闭合,False=断开
else:
    print("DI 读取失败:", di_result)

# 写开关量输出(DO):功能码 05,写单线圈
# 把第 1 路 DO(地址 0)置 ON(FF 00)
do_result = client.write_coil(address=0, value=True, slave=1)
if not do_result.isError():
    print("DO 1 已置 ON")
else:
    print("DO 写入失败:", do_result)

client.close()

你应该看到什么

  • DI 状态: [False, False, False, ...]:所有 DI 断开(无输入)
  • 短接某路 DI 端子后再读:对应位变成 True
  • 写 DO 成功后:对应继电器触点闭合,可以用万用表量通断,或者看联动的设备有没有响应
  • 写失败返回错误码:先检查 IP/端口/slave ID 是否和网关配置一致
💡 提示

调试期间用 Modbus Poll(Windows 图形工具)可以直观看每个寄存器的实时值,比写代码快。拿到正确的地址和 slave ID 之后,再填进 SoftControl 的设备配置里——这个顺序能省很多反复。


选型维度对比

维度 选项 怎么选
工控机 CPU/内存 低功耗 Atom/Celeron、i3/i5 纯 SoftControl + IO 控制,Celeron 足够;要跑本地 UI 大屏、做数据处理,i5 起步
工控机散热 风扇 / 无风扇 展厅机柜密封环境优先无风扇(被动散热),减少故障点
串口服务器通道数 1 路 / 2 路 / 4 路 / 8 路 按直连串口设备数量选,留 1 路备用
IO 网关通道数 4DI4DO / 8DI8DO / 16路 按展项开关量接入总量选,大型展馆用多台分布部署
串口类型 RS232 / RS485 / 两者 确认目标设备接口类型;RS485 支持多台挂总线,优先选两者兼支持的型号
网络冗余 单网口 / 双网口 关键展馆可配双网口工控机,两个网段隔离设备和办公网
看门狗 硬件看门狗 / 无 展厅 7×12h 运行,有硬件看门狗的工控机系统挂了能自动重启
供电 12V DC / 24V DC / 220V AC 工控机多为 12V 或 19V 适配器;IO 网关常用 24V DC;统一供电规格方便机柜设计

故障排查表

现象 最可能的原因 怎么查
SoftControl 连不上串口服务器 IP/端口配错 / 网络不通 / 串口服务器未上电 ping 串口服务器 IP;确认端口号(以设备配置为准);查交换机
串口指令发出去设备无响应 波特率/数据位/停止位不对 / RS485 接线 A-B 接反 换串口调试工具直接连串口服务器串口端手动发;对齐参数
Modbus 读 DI 全是 False(没变化) 线没接好 / slave ID 错 / 地址偏移 短接 DI 端子测;用 Modbus Poll 手动读确认地址
写 DO 有回应但继电器不动 DO 通道号对应关系偏差 / 继电器供电没接 测继电器线圈两端电压;确认 DO 地址与通道对应
多台 RS485 设备只有部分应答 地址冲突 / 总线缺终端电阻 / A-B 接反一台 每台设备逐一单独上电确认地址唯一;总线两端加 120Ω
工控机长时间运行后中控软件无响应 内存泄漏 / 散热不足 / 看门狗未开 查任务管理器内存占用;检查机柜温度;开看门狗或定时重启任务
串口服务器透传延迟高 串口服务器串口缓冲大/TCP 连接未保持 确认 TCP 长连接模式;关不必要的数据包合并延迟(以手册配置为准)
重启后设备 IP 变了 未固定 IP(DHCP 漂移) 所有网关设备统一设置固定 IP,记录到项目拓扑表

应用场景举例

多媒体展项全场联动(典型展厅)

展厅中控工控机跑 SoftControl,接入:

  • 3 台科星 IO 网关:采集 24 路按钮/传感器输入,控 12 路继电器(灯光/电源)
  • 2 台有人串口服务器:挂 6 台投影机(RS232 PJLink)
  • 1 台科星模拟量采集器:读 4 路温湿度变送器

参观者按下互动按钮 → 科星 IO 网关 DI 闭合 → SoftControl 读到触发 → 逻辑判断当前展项状态 → 同时发出:投影播放 B 内容(串口服务器 → 投影 RS232)+ 继电器开指定展柜灯(IO 网关 DO)+ 播控软件切场景音(HTTP API)。整个联动响应时间在几百毫秒内(以实际环境为准)。

远程运维更新逻辑

软件中控最大优势之一:展厅开幕后甲方要改联动逻辑,不用上门。工程师远程桌面进工控机,改 SoftControl 场景配置,保存生效。这在传统硬件中控盒方案里基本做不到(要刷固件/上门调试)。


动手挑战

  1. 取一台工控机或旧 PC,装上中控软件,连一台有人串口服务器(或科星 IO 网关),做到"软件能读到 IO 网关的 DI 状态"——这是软件中控链路最小可用单元。
  2. 在最小单元的基础上加一台串口设备(哪怕是用串口调试工具模拟一台投影),让软件中控能发出指令、设备侧能收到正确帧——这就跑通了软件中控 + 网关的完整链路。

本节学到的知识

  • 软件中控 = 通用工控机跑软件 + 网关扩接口,硬件盒(AMX/Crestron)是专用封闭盒、接口固定;逻辑复杂、要对接后台、要频繁改的展厅,软件中控通常更合算。
  • 工控机自带串口一般只有 2~4 路,不够就靠串口服务器和 IO 网关往外扩。
  • 串口服务器把 RS232/RS485 转成 TCP 走网线,工控机用 TCP socket 发,设备侧还原成串口帧——可跨机柜、跨楼层;默认端口常见 23 或 4001(各型号不同,以设备配置为准)。
  • 串口参数必须和目标设备逐项对齐:波特率(常见 9600/38400/115200)、数据位 8 / 停止位 1 / 校验无只是常见值,实际以设备手册为准,对不上就发指令没反应。
  • 串口服务器两种模式:透传(软件自己组协议帧)和 Modbus TCP↔RTU 转换(挂 485 Modbus 设备时省去自己转格式)。
  • IO 网关扩开关量:DI 接按钮/门磁/干接点传感器,DO 接继电器/执行机构;工控机走 Modbus TCP 读 DI(功能码 01 读线圈)、写 DO(功能码 05 写单线圈),默认端口 502
  • 展厅所有网关设备一律固定 IP、别用 DHCP,重启后 IP 漂移会让链路全断;同网段规划并记进项目拓扑表。
  • 多台 RS485 设备挂总线要保证地址唯一A-B 别接反总线两端各加 120Ω 终端电阻,否则只有部分设备应答。
  • 展厅 7×12h 长跑,工控机优先选无风扇被动散热 + 硬件看门狗,挂了能自动重启;关键展馆可上双网口隔离设备网和办公网。
  • 调试链路先用 Modbus Poll / 串口调试工具手动验通地址和 slave ID,拿到正确参数再填进 SoftControl,能省很多来回。

小结 · 你掌握了什么

  • 你搞清楚了软件中控 vs 硬件中控盒的本质区别:硬件通用化(工控机)+ 软件专业化(中控逻辑)+ 接口网关化(串口服务器/IO 网关扩展),代替了一台封闭专用盒子。
  • 你理解了串口服务器的作用:把串口设备"搬进"局域网,中控软件走 TCP 发指令。
  • 你理解了 IO 网关的作用:扩展开关量 DI/DO,中控走 Modbus TCP 读写。
  • 你拿到了完整的链路图、选型对比表和故障排查表。

想深入了解 SoftControl 的逻辑配置,参考 SoftControl 展厅中控系统;想了解硬件中控盒的接口和架构,参考 中控主机图鉴;串口服务器的选型细节,参考 串口服务器图鉴

📄 来源 / 自校链接

本文为公开资料整理,非亲测。关键参数与代码请结合实物与下列官方来源验证。

相关自研产品

本模块与我们的自研产品深度配套,欢迎了解详情。

需要展厅软硬件方案或定制开发?