罗克韦尔协议转换网关WTGNet-AB以太网通讯和数据采集方法
- 作者:朱泰坪
- 发表时间:2021-07-12 15:26
- 来源:
罗克韦尔协议转换网关WTGNet-AB以太网通讯和数据采集方法
罗克韦尔协议转换网关WTGNet-AB安装与参数设置(点击查看)
1.应用场景
AB协议转换网关(以下简称为协议转换网关)主要为工业设备联网项目提供硬件支持,帮助上层终端通过以太网的方式采集底层工业设备(主要为PLC,但不局限于PLC的设备)的数据,进而对这些数据进行统计和分析。
该协议转换网关适用于罗克韦尔MicroLogix系列(1000/1400等)PLC。
该协议转换网关适用于罗克韦尔MicroLogix系列(1000/1400等)PLC。
2.组态软件通讯
用户使用标准组态软件可以通过MODBUS TCP协议采集设备数据。
2.1KEPServerEX通讯
新建channel,选择Modbus Ethernet驱动,点击【下一步】按钮,其它参数默认直至channel建立完成;
新建device,在【Device model】处选择Modbus,点击【下一步】按钮;
在【Device ID】处输入协议转换网关的IP地址,格式为<IP地址>.设备站号,点击【下一步】按钮;
以下步骤默认即可,直至完成。
2.2组态王(KingView)通讯
新建设备,选择【ModbusTCP】--【TCP】,点击【下一步】按钮;
任意设定一个设备名称,点击【下一步】按钮;
输入协议转换网关的地址,格式为【IP地址:端口号 设备站号/时间】,默认为192.168.1.188:502 1/50,点击【下一步】按钮;
以下步骤默认即可,直至完成。
2.3力控(ForceControl)通讯
新建IO设备,这里选择MODBUS(TCP)驱动,在设备配置中的【设备地址】输入设备的站号,【通讯方式】选择TCP/IP网络,点击【下一步】按钮;
在【设备IP地址】处输入协议转换网关的IP地址,在【端口】处输入协议转换网关的端口号,默认为502,点击【下一步】按钮;
以下步骤默认即可,直至完成。
2.4杰控(FameView)通讯
选择【设备通讯】下的【安装驱动】,这里选择MB_TCPIP驱动,然后点击【安装】按钮;
选择需要启动的驱动后,点击【确定】按钮;
新建【设备数据表】,【MB单元号】输入设备的站号,【端口号】输入502,在【设备IP地址】处输入协议转换网关的IP地址,然后设置好通讯数据后,点击【确认】按钮。
3.MODBUS通讯
3.1PLC内部寄存器地址与MODBUS地址默认对应表
Modbus地址 | PLC内部软元件地址 | 数据类型 | 计算公式 | MODBUS功能号 | 指令数 |
000001~001000 | O0区:O0:0/0 |
位 |
O0:m/n = 000001+m*16+n ① |
FC1(读线圈) FC5(写单个线圈) FC15(写多个线圈) |
FC1:2000 FC5:1 FC15:1 |
001001~001800 | I1区:I1:0/0~ | I1:m/n = 001001+m*16+n | |||
001801~004000 | S2区:S2:0/0~ | S2:m/n = 001801+m*16+n | |||
004001~009000 | B3区:B3:0/0~ | B3:m/n = 004001+m*16+n | |||
009001~014000 | T4区:TCR0:0/0~ | T4:m/n = 025001+m*48+n ② | |||
014001~019000 | C5区:TCR1:0/0~ | C5:m/n = 038001+m*48+n | |||
019001~024000 | R6区:TCR2:0/0~ | R6:m/n = 052001+m*48+n | |||
400001~400200 | S2区:S2:0~ | 字 | S2:m= 400001+m |
FC3(读寄存器) FC6(写单个寄存器) FC16(写多个寄存器) |
FC3:127 FC16:127 FC6:1 |
400201~405600 |
T4\C5\R6\N7\F8\L9区 | (PRE)T4:m=400202+m*3 ③ | |||
(ACC)T4:m= 400203+m*3 | |||||
(PRE)C5:m=401102+m*3 | |||||
(ACC)C5:m=401103+m*3 | |||||
(LEN)R6:m=402002+m*3 | |||||
(POS)R6:m=402003+m*3 | |||||
N7:m=402901+m ④ | |||||
F8:m=403801+m*2 ⑤ | |||||
L9:m= 404701+m*2 |
注释说明:
m代表元素号,n代表子元素号。
①:如O0:1/15,m=1,n=15,其对应的modbus地址为:O0:1/15=000001+16*1+15=000032;
②:T4区: DN时,为T4:m/13;TT时,为T4:m/14;EN时,为T4:m/15;
C5区: UA时,为C5:m/10;UN时,为C5:m/11;OV时,为C5:m/12;
DN时,为C5:m/13;CD时,为C5:m/14;CU时,为C5:m/15;
R6区: FD时,为R6:m/8;IN时,为R6:m/9;UL时,为R6:m/10;ER时,为R6:m/11;
EM时,为R6:m/12;DN时,为R6:m/13;EU时,为R6:m/14;EN时,为R6:m/15;
如T4:2/13(DN位),m=2,n=13,其对应的modbus地址为:T4:2/13=002501+48*2+13=002601;
③:如T4:10的PRE,m=10,其对应的modbus地址为:400202+3*10=400232;
④:如N7:20,m=20,其对应的modbus地址为:N7:20 =402901+20=402921;
⑤:如F8:3,m=3,其对应的modbus的起始地址为:N8:3 =403801+3*2=403807;由于F区为32位双字存储方式,所以F8:3对应的modbus地址为403807和403808。
3.2PLC内部寄存器地址与MODBUS地址自适应
用户还可以自己定义PLC内部不同文件号的寄存器地址与MODBUS地址之间的映射关系:将【Modbus地址自由映射】开启后在【Modbus地址自由映射表】中进行设置。
计算公式如下:
线圈:I/O/S/B:m/n = 002401+a*5000+m*16+n; T/C/R:m/n = 002401+a*5000+m*48+n;
输入线圈:I/O/S/B:m/n = 100001+a*5000+m*16+n; T/C/R:m/n = 100001+a*5000+m*48+n;
保持寄存器:S/N:m = 405601+a*900+m;T/C/R:m = 405601+a*900+m*3;F/L:m = 405601+a*900+m*2;
输入寄存器:S/N:m = 300001+a*900+m;T/C/R:m = 300001+a*900+m*3;F/L:m = 300001+a*900+m*2;
说明:m代表元素号,n代表子元素号;a代表序列号(上图绿色部分)。
对于线圈和输入线圈:每个序列号段落设置了文件类别和文件号后,都会在此区间自动定义5000个位的地址区间;
对于保持寄存器和输入寄存器:每个序列号段落设置了文件类别和文件号后,都会在此区间自动定义900个字的地址区间;
举例说明:
线圈:例如B100:1/2的modbus地址为:此时m=1,n=2,a=3,带入公式计算:B100:1/2 = 002401+3*5000+1*16+2=017419;
保持寄存器:例如F104:2的modbus地址为:此时m=2,a=4,带入公式计算:F104:2 = 400001+4*900+2*2=403605;由于F区为32位存储方式,它对应的modbus地址为403605和403606。
3.3ModScan32测试
打开软件,设置需要测试的数据,例如:读取401001开始的127个字,设置如下:
选择菜单栏【Connection】--Connect,在对话框中的【IP Address】处输入协议转换网关的IP地址,点击【OK】按钮;
测试正常的画面如下: