261  
查询码:00000576
Modbus转OPC
作者: 孙强 于 2020年03月05日 发布在分类 / 人防组 / 人防智能化 下,并于 2020年03月05日 编辑
Modbus 设备对接 Modbus转OPC OPC

引言

之前一直玩的OPC协议,现在开始研究Modbus协议,所以最近又尝试学习了下Modbus转OPC的操作。



工具

KEPServerEX6,Modbus Slave


步骤

1.KEPServerEX6,Modbus Slave不要装在一台电脑上,在Modbus Slave上设置端口号803,站号1,功能码03,10个地址,再设几个随机数字便于测试,连接即可。

2.在另外一台电脑安装KEPServerEX6,下面开始正式的Modbus转OPC内容了。右击连接性-新建通道,选择ModbusTCP,还有其它两种Modbus形式可选,这里暂不讨论,下一步。


3.输入Modbus Slave的端口号803,下一步直到完成。


4.右击添加设备,选择Modbus,输入Modbus Slave的IP地址和站号 还得再设置下端口号803, 下一步直到完成即可,如果有输入错的,在完成前还可以再修改一下



5.下面添加测点,选中刚刚建的设备,选择批量添加,点击添加数字范围。


6.Modbus Slave上的地址是0-9,功能码是3(根据Modbus选择的功能码不同,地址也会不同,请查看下表),功能码3对应的地址为40001-49999,我们这里的长度为10,所以是40001到40010,点击确定。

代码

中文名称

寄存器PLC地址

位操作/字操作

操作数量

01

读线圈状态

00001-09999

位操作

单个或多个

02

读离散输入状态

10001-19999

位操作

单个或多个

03

读保持寄存器

40001-49999

字操作

单个或多个

04

读输入寄存器

30001-39999

字操作

单个或多个

05

写单个线圈

00001-09999

位操作

单个

06

写单个保持寄存器

40001-49999

字操作

单个

15

写多个线圈

00001-09999

位操作

多个

16

写多个保持寄存器

40001-49999

字操作

多个

7.点击预览,有绿色的√即代表标签有效,点击生成即可。


8.打开OPC客户端查看数据是否准确。


9.以上说的都是Int类型的,还可以尝试转换bool,float和double类型。

Modbus模拟bool类型功能码要选择01,对照上文提到的功能码地址对照图可以看出,添加标签时的地址为00001-09999范围。

float类型和double类型功能码都可以选择03,float(占两个地址)和double类型(占4个地址)。选择一个地址把它变成Float或者Double类型,生成OPC标签时直选要选择对应的类型就可以了。


总结

自己动手做一遍比看别人搞N遍记忆深刻。Modbus并不难,难得是第一步,万事开头难。


 关联文档

 关联资源



 推荐知识

 历史版本

修改日期 修改人 备注
2020-03-05 17:43:08[当前版本] 孙强 1.0

 附件

附件类型

PNGPNG

  目录
    知识分享平台 -V 4.8.7 -wcp