工业通讯桥接器主要为工业设备联网项目提供硬件支持,帮助上层终端通过以太网的方式采集底层工业设备(主要为PLC,但不局限于PLC的设备)的数据,进而对这些数据进行统计和分析。
该桥接器为三菱FX系列PLC(包括FX1S、FX1N/FX2N、FX3U/FX3G/FX3S等)专用,同时支持汇川、禾川、士林等兼容三菱FX系列的PLC。
一、桥接器支持标准ModbusTCP以太网通讯
桥接器内部集成ModbusTCP通讯服务器,因此ModbusTCP客户机,如支持ModbusTCP的组态软件、OPC服务器、PLC以及实现ModbusTCP客户机的高级语言开发的软件等,可以直接访问三菱FX系列PLC的内部数据区,Modbus协议地址在模块内部已经被默认映射到FX系列PLC的地址区,实现的功能号包括:FC1、FC2、FC3、FC5、FC6和FC16。
1)PLC内部寄存器地址与MODBUS地址对应表:
MODBUS地址 | PLC内部寄存器地址 | 数据类型 | 计算公式 | modbus功能号 | 最大指令数 |
000001~ | 输出线圈:Y0~ | 位
| Ym = 000001+m ① | FC1(读线圈) FC5(写线圈) | FC1:512 FC5:1 |
005001~ | 特殊:M8000~ | M8m = 005001+m ② | |||
006001~ | 定时器线圈:T0~ | Tm = 006001+m | |||
007001~ | 计数器线圈:C0~ | Cm = 007001+m | |||
010001~ | 线圈:M0~ | Mm = 010001+m | |||
030001~ | 线圈:S0~ | Sm = 030001+m | |||
100001~ | 输入:X0~ | 位 | Xm = 100001+m ③ | FC2(读输入) | 512 |
400001~ | 定时器:T0~ | 字 | Tm = 400001+m | FC3(读寄存器) FC16(写寄存器) FC6(写单一寄存器) | FC3:127 FC16:127 FC6:1 |
401001~ | 计数器:C0~C199 | Cm = 401001+m | |||
411001 ~ | 计数器:C200~C255 | Cm = 411001+(m-200)*2 ④ | |||
401301~ | 特殊:D8000~ | D8m = 401301+m ⑤ | |||
402001~ | 资料暂存器:D0~ | Dm = 402001+m | |||
420001~ | 文件寄存器:R0~ | Rm=420001+m |
注释说明:
①:其中m表示Y线圈标识号的八进制数,需要将其换算成十进制后进行公式,如Y25,八进制25换算成十进制后为21,其对应的modbus地址为:Y25=000001+21=000022;
②:其中m表示M线圈标识号去掉8000的剩余数,如M8325时m=325;
③:其中m表示X线圈标识号的八进制数,需要将其换算成十进制后进行公式,如X25,八进制25换算成十进制后为21,其对应的modbus地址为:X25=100001+21=100022;
④:其中m表示C线圈标识号,当m>=200时,用此公式计算;
⑤:其中m表示特殊功能寄存器D标识号去掉8000的剩余数,如M8206时m=206;
2).ModScan32测试:
打开软件,设置需要测试的数据,例如:读取402001开始的127个字,设置如下:
选择菜单栏【Connection】--Connect,在对话框中的【IP Address】处输入桥接器的IP地址,点击【OK】按钮;
测试正常的画面如下:
1.打开Wincc软件,新建一个项目,右击“变量管理”,选择“添加新的驱动连接”,在弹出的对话框中选择“Modbus TCPIP.chn”,点击“确定”。
2.右击“Modbus TCPIP/IP 单元#1”选择“新驱动程序的连接”,新建一个名称,点击“属性”,弹出属性的对话框,在“CPU类型”选择“984”,在“服务器”中填入桥接器的IP地址,点击确定。
3.右击“变量名称”,新建变量,这里我们新建一个D0变量,对应地址的设定请点击“选择”,弹出对话框,“区域”中选择“4x保持寄存器”,“4x”中填入“402001”,注意:根据ModbusTCP地址对应关系D0的地址为42001,由于wincc中的地址位数为6位,所以42001对应到wincc中为402001。