View Categories

塔石DTU接入平台

串口服务器是为RS-232/RS-485/RS-422终端到TCP/IP之间完成数据转换的通讯接口协议转换器。提供RS-232终端与TCP/IP网络的数据双向透明传输,提供串口转TCP/IP功能,RS-232/RS-485/RS-422转TCP/IP的解决方案。可以让RS-232/RS-485/RS-422串口设备立即联接网络。

串口通讯服务器其实就是串口服务器,也叫终端服务器,串口通讯服务器能让串口设备立即具备联网能力,可以把分散的串行设备、主机等通过网络集中管理,简易、方便。支持TCP、UDP、ARP、ICMP、HTTP、DNS和DHCP协议,支持Windows Native COM和网络中断自动恢复连接功能。

串口服务器在需要采集传感器数据和远程控制的场景中广泛使用,MODBUS 物联网平台的用户有相当一部分在使用 串口服务器 接入设备,通常 串口服务器 使用较多的是通过 RS485/232/422 端口连接 Modbus 从机设备,例如:开关继电器、温湿度传感器、各类气体传感器、电能表、水表、PLC、电机控制器等。接入 MODBUS 物联网平台的串口服务器 和子设备关系,通常如下图:

这一次我们介绍的是来自塔石公司的 串口服务器TAS-LAN-461,它支持通过TCP、UDP方式 接入 MODBUS 物联网平台,在很多用户的物联网项目中运行非常稳定。

我们以这台 TAS-LAN-461 为例,介绍接入 MODBUS 物联网平台 的步骤。对于塔石公司的其它 串口服务器 产品,也可以用同样的方式接入。

MODBUS 物联网平台 上的准备工作 #

在实践中,我们通常将 串口服务器 作为透传网关,用于在 Modbus 子设备和云平台之间起到消息转发作用。这里我们使用 串口服务器 的 TCP客户端 模式,准备工作只需要以下几步:

  • 1.创建项目(项目管理→新增 项目)
  • 2.创建分组(设备分组→新增 分组)
  • 3.创建设备(设备管理→设备信息→新增设备)
  • 填写设备名称,随机生成或者手动填写设备号,在设备协议中选择ModBus RTU,定位设备所在经纬度,保存即可。(设备号复制保存备用)

具体的步骤请浏览:Modbus入门 ,通常几分钟就可以完成。

TAS-LAN-461串口服务器的配置 #

打开有人设备管理器 配置软件,连上网口或串口,只需要填写以下几个部分:

第一步:

  • 工作模式:TCP Client
  • 目的IP或域名:iot.modbus.cn
  • 目的端口:50001
  • 心跳包:设备号SN码 例:4QR8TZ9ThuL4G (以实际为准
  • 注册包:设备号SN码 例:4QR8TZ9ThuL4G (以实际为准
  • 保存设置(保存)
    如下图:

连接 RS485 Modbus 继电器 #

这里以8路继电器为例:

1.点击“添加数据#

2.点击“添加从设备节点”,增加8路继电器控制 #

注意事项(新手知识):

1.寄存器地址到底用10进制还是16进制? #

一句话答案看设备说明书要求,但99%的场合都用 16进制地址(带0x开头或H结尾)
为什么

  • Modbus协议标准规定用16进制地址(比如 0x0001),选择16进制后,直接填后面的0001
  • 设备厂商手册通常用16进制格式
  • 只有少数设备用10进制地址(纯数字,如 40001

二、功能码对照表(小白版) #

Function Code名称做什么用?地址范围读写权限类比理解
01H读线圈状态读开关状态(开/关)0x0001~0x9999只读查看电灯是否亮
05H写单个线圈修改单个开关状态0x0001~0x9999只写按开关开灯/关灯
02H读离散输入读传感器开关信号1×0001~1×9999只读看门磁是否被触发
03H读保持寄存器读设备参数(温度、速度等)4×0001~4×9999读/写查看和设置空调温度
06H写单个寄存器修改单个参数值4×0001~4×9999只写调整空调目标温度
04H读输入寄存器读传感器数值(只读)3×0001~3×9999只读读取温度计显示值

三、配置参数逐项说明 #

1. 读写方式 (R/W) #
  • 读(R):只能看数值,不能改(比如温度传感器的实时值)
  • 写(W):可以修改数值(比如设置目标温度)
  • 读写(R/W):既能看又能改(比如设备的工作模式)
2.数据格式选择指南 #
数据类型数值范围典型应用场景注意事项
UINT160 ~ 65,535开关状态、计数器、无负值传感器(如光照强度0~2000lux)不能表示负数,数值超限会归零
INT16-32,768 ~ +32,767温度(-40℃~+80℃)、有方向的速度值(正反转)处理负数时需注意符号位
UINT320 ~ 4,294,967,295大范围计数器(如总用电量)、高精度设备编码占用2个寄存器(32位=16位×2)
INT32-2,147,483,648 ~ +2,147,483,647大型机械位移、大范围温湿度差值需确认设备是否支持32位数据
FLOAT32±3.4×10³⁸ ~ ±3.4×10³⁸高精度测量(如压力3.1415kPa)、科学计算需要设备支持浮点传输协议

示例

  1. 温度传感器:INT16(-40℃ ~ +80℃)
  2. 光照传感器:UINT16(0 ~ 65535 lux)
  3. 累计流量计:UINT32(0 ~ 42亿立方米)
  4. 精密压力计:FLOAT32(0.0001 ~ 9999.9999 kPa)
3.存储策略详解 #
策略类型工作方式适用场景优缺点
变化储存数值 变化时 自动存储开关状态、报警信号✅ 节省存储空间
❌ 可能丢失平稳期数据
实时储存Data 立刻存储(每次更新)医疗监护、高频振动监测✅ 数据最完整
❌ 存储压力大
定时储存按固定时间间隔存储环境监测、常规设备巡检✅ 平衡存储与数据连续性
❌ 可能错过突发变化
定时储存时间选择建议: #
时间间隔适用场景示例
30秒快速变化数据电机转速监控、实时交易计数
1分钟常规工业参数车间温度、压力记录
5分钟环境监测气象站温湿度采集
10分钟能耗管理每小时用电量统计
30分钟长期趋势分析设备老化趋势记录

场景示例

  • 工厂空压机压力监控(每秒变化):选择 实时储存 或 30秒
  • 仓库温湿度监测(缓慢变化):选择 5分钟 或 变化储存
  • 智能电表用电统计:选择 30分钟 + 变化储存(只在用电时记录)

批量读配置: #

注意事项(新手知识):

寄存器起始地址 #

  • 10进制 vs 16进制
    • 通用规则:带4x/3x前缀用16进制,纯数字如4000110进制

读取长度(一次性读取几个寄存器) #

  • 温度计示例
    假设温度占1个寄存器,湿度占1个寄存器
    → 起始地址填温度地址,读取长度填2(一次性读温湿度)
  • 最大限制:多数设备一次最多读120个寄存器

这一篇我们介绍了塔石科技串口服务器TAS-LAN-461 通过 TCP 透传方式接入 MODBUS 物联网平台 的详细步骤,将8路继电器模块上传到云平台,并生成自定义看板和 App。这些步骤也适用于其它厂商的支持 TCP 透传的 串口服务器产品。

Powered by BetterDocs

发表回复

Your email address will not be published. 必填项已用 * 标注