Modbus 驱动是边缘智能提供的内置驱动,支持标准 Modbus TCP、Modbus RTU 和 Modbus-ASCII 协议。
本文介绍了如何部署 Modbus 驱动并接入设备。
您可以在边缘智能控制台的 设备管理 > 驱动模板 页面,查看 Modbus驱动。
Modbus 驱动的子协议配置说明请见下表。
配置项 | 参数名称 | 说明 |
---|---|---|
modbus-tcp | IP 地址 | 目标设备的 IP 地址,用于指定 Modbus 设备的通信地址 |
端口号 | Modbus TCP 通信的端口号,取值范围为 1-65535。 | |
主站地址 | Modbus 从设备地址,用于标识目标设备。 | |
超时时间 | 设置 Modbus 请求的超时时间(单位为秒)。在节点发出请求后,如果在该时间内没有收到设备的响应,则认为请求超时。默认值为 3。 | |
空闲超时时间 | 在设定的空闲时间(单位为秒)内无数据传输时,将自动断开连接。默认为 0,表示禁用空闲超时。 | |
报文聚合 | 决定是否启用报文聚合。启用后,客户端会尝试合并多个报文请求,以减少请求次数,从而提高通信效率。默认为 false。 | |
modbus-rtu、 | 串口号 | 指定用于通信的串口,用于连接 Modbus 设备的物理串口。 |
波特率 | 数据传输速度,单位为 bps,默认值为 9600。 | |
数据位 | 每个数据包中的数据位数。默认为 8 位。 | |
校验位 | 用于检测数据传输过程中是否发生错误的位。可选值包括:无校验、偶校验和奇校验。默认为无校验。 | |
停止位 | 用于指示每个字符的结束。默认值为 2。 | |
主站地址 | Modbus 从设备地址,用于标识从设备。 | |
超时时间 | Modbus 请求的超时时间(单位为秒)。默认值为 3。在节点发出请求后,如果在该时间内没有收到响应,则认为请求超时。 | |
空闲超时时间 | 空闲时间的超时时间(单位为秒)。在设定时间内无数据传输时将自动断开连接。默认为 0 ,表示禁用空闲超时。 | |
报文聚合 | 决定是否启用报文聚合。启用后,客户端会尝试将多个请求合并为一个报文,以减少请求次数,提高效率。默认为 false。 |
Modbus 驱动的点表配置说明请见下表。
参数 | 说明 |
---|---|
操作类型 | Modbus 协议中的不同功能码:
|
起始地址 | 数据点的起始地址,线圈地址或者寄存器起始地址。 |
原始数据类型 | 原始数据的类型:
|
交换寄存器内高低字节 | 是否把寄存器内 16 位数据的前后 8 个 bits 互换。 |
交换寄存器顺序 | 是否把原始数据 32 位数据的 bits 互换。 |
采样周期 | 节点采集设备数据的频率。单位:毫秒。默认值:10000。 |
变化上报 | 用于控制节点进行数据上报的触发条件。
默认值:true。 |
缩放因子 | 表示对原始数据放大的倍数。 说明 当缩放因子为小数时,对应物模型属性的数据类型需是 float 或者 double 才可以生效。 |
使用 Modbus 驱动前,您需要准备一台边缘智能节点,并完成以下工作:
限制名称 | 限制数量 |
---|---|
账户中部署总次数 | 无 |
项目中部署总次数 | 无 |
节点中部署次数 | ≤1 |
最大接入设备实例数 | 无 |
每个设备实例中最大的属性点数量 | 1000 |
登录边缘智能控制台。
在左侧导航栏顶部的 我的项目 区域,选择您的项目。
在左侧导航栏,选择 设备管理 > 设备模板。
在 设备模板 页面,单击 创建设备模板。
在 创建设备模板 对话框,输入模板 名称 和 描述,并选择 设备类型 为 其他设备。
单击 确定。
新建的设备模板将展示在设备模板列表中。
在设备模板列表中,单击创建的设备模板名称,进入设备模板详情。
单击 物模型定义 页签。
单击 编辑。
在 编辑物模型 页面左侧,可以看到 模块列表。
您可以选择系统自动创建的 默认模块(default) ,或者根据需要单击 新建模块,创建新的模块。
在 新建模块 对话框,参照以下说明配置相关参数,单击 确定,然后单击已添加模块名称。
配置项 | 说明 |
---|---|
名称 | 为模块设置一个名称。输入要求如下:
|
唯一标识 | 为模块设置一个标识符。该标识符在当前设备模板下必须唯一。输入要求如下:
|
描述 | 为模块添加描述信息。长度不超过 128 个字符。 |
单击 添加自定义功能。
在 添加自定义功能 对话框,根据 Modbus 设备的实际功能和数据点,添加所需功能,并单击 确定。相关参数说明,请参见添加自定义功能。
以下是一个结合 Modbus 设备实际情况的自定义功能示例,例如:读取Modbus设备中的温度传感器数据,返回当前温度值。
配置项 | 说明 |
---|---|
功能类型 | 选择 属性。 |
功能名称 | 为功能设置一个名称,例如”温度读取“。 |
标识符 | 为功能设置一个标识符。例如”tempRead“。 |
读写类型 | 选择 只读。 |
数据类型 | 选择 float。 |
取值范围 | 设置数值取值范围。本教程中保持默认配置。 |
步长 | 设置数值步长。本教程中保持默认配置。 |
描述 | 为功能添加描述信息。 |
单击页面右下角的 保存。
在 发布新版本 对话框,为版本设置 版本号 和 描述,然后单击 确定。
单击 点表 页签,然后单击 创建点表。
在 创建点表 页面,完成以下配置,并单击 确认。
类别 | 配置项 | 说明 |
---|---|---|
基本信息 | 名称 | 为点表设置一个名称。
|
驱动模板 | 选择 Modbus驱动。 | |
配置信息 | 物模型中定义的属性 |
|
提交部署请求后,系统将在节点上部署 Modbus驱动。部署过程涉及到数据传输。根据现场网络环境不同,部署所需时间不同。请确保您的节点在线,并耐心等待部署完成。
驱动部署成功后,对应的 驱动实例状态 将变为 运行中。
单击已部署的 Modbus驱动,然后单击 添加设备。
在 添加设备 面板,参照以下说明设置设备参数,然后单击确定。
配置项 | 描述 |
---|---|
名称 | 为设备设置一个名称。 |
标识符 | 为设备设置一个标识符。 |
设备模板 | 选择在步骤一:创建设备模板中创建的设备模板。 |
点表 | 选择在点表配置中创建的点表。 |
子协议名称 | 选择一种子协议:
|
子协议配置 | 根据选择的子协议,完成对应参数配置。具体内容,请参见子协议配置。 |
标签 | 为设备添加标签。如果需要创建新的标签,输入 key 和 value 后,单击 创建标签。 |
描述 | 为设备添加描述信息。 |
完成以上操作后,您可以在设备列表查看新添加的设备。最初,设备的 状态 为 添加中。当设备的状态变为 在线 后,表示设备已经添加成功。
您可以将当前已接入节点的设备复制到同项目的不同节点上。
说明
目标节点需要部署 Modbus 驱动,并且驱动实例的状态为运行中。