
物联网 · 数据中心 · 环境监控 · 盛世宏博
很多老机房、老库房的温湿度采集还是RS485总线+串口服务器的老架构:传感器挂在一条485总线上,接到机房电脑的COM口或USB转485。这套架构能用,但限制越来越多:距离受限、速率慢、不方便远程访问、加设备要重新布线。现在新项目直接用以太网传感器(Modbus TCP),但老项目不想全部换掉怎么办?本文讲怎么从RTU平滑升级到TCP。

图1:从RS485到以太网
RS485 RTU架构:传感器地址1到32,一条总线手拉手,最远1200米,速率9600到115200bps。问题:
有两条路:
方案 | 做法 | 优缺点 |
|---|---|---|
换用以太网传感器 | 全部换掉,新传感器直接RJ45 | 干净彻底,但成本高 |
RTU转TCP网关 | 保留老传感器,加Modbus网关 | 成本低,平滑升级 |
推荐第二种:老传感器继续用,加一个Modbus RTU转TCP网关(串口服务器),把485总线上的数据转成Modbus TCP发到机房网络。采集软件改成连网关的IP,不用动传感器。
网关接RS485总线和网线。配置:串口参数9600 8N1,工作模式选Modbus TCP转RTU。采集软件原来连COM口,现在改成连网关IP:502。
# 原来(串口)
# port: COM3, baud: 9600
# 现在(TCP)
# host: 192.168.1.100, port: 502
# pymodbus示例
from pymodbus.client import ModbusTcpClient
client = ModbusTcpClient('192.168.1.100', port=502)
client.connect()
# 读保持寄存器,和原来RTU一样
rr = client.read_holding_registers(0x0000, count=2, slave=1)寄存器地址和slave ID和原来RTU完全一样,采集代码几乎不用改。

图2:Modbus RTU转TCP网关
网关方案可以保留老传感器,但新加传感器直接用以太网款。一段时间后老传感器陆续坏了,就换以太网的。最终全TCP化,但不用一次投钱。
平台同时支持Modbus TCP(网关转来的)和直接以太网传感器,两种协议统一管理。
升级后:采集服务跑在服务器上,不依赖某台电脑;远程直接访问IP;加传感器只要接交换机;网络层级清晰。老传感器继续发挥余热,投资保护。
几个坑:网关要选工业级,别用消费级;485总线接地和终端电阻检查一下;网关上电时间和传感器错开,避免启动时通信风暴;采集轮询周期不要太短,网关带的节点多了会响应不过来。

图3:TCP采集架构
从RS485 RTU升级到以太网TCP,不用全部换掉。加一个Modbus网关做协议转换,老传感器继续用,新传感器直接RJ45接入。采集代码改动小,远程访问方便,后续扩展灵活。这是老机房温湿度采集系统升级最经济的路径。
关键词 / 标签:RS485 · Modbus RTU · Modbus TCP · 温湿度采集 · 系统升级 · 串口服务器 · 盛世宏博
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。