汇川H5U和三菱Q系列内置以太网做MODBUS通讯
PLC型号:
汇川H5U-1614MTD,三菱Q03UDV
主从方式:
汇川做modbus/tcp从站,三菱做主站读取。
3配置方式;
1、汇川做modbus/tcp从站,H5U默认开启modbus/tcp从站服务,默认端口502。只需设置IP地址即可。
汇川配置:
此次实验IP:192.168.10.120,端口默认502.
汇川软元件的地址:
我们以寄存器D做案例。
2、三菱做modbus/tcp主站:
2.1、配置IP。
新建程序后,设置好内置以太网的IP:
此次实验IP为:192.168.10.100。
2.2、网络打开设置。
在内置以太网的打开设置里面,添加需要通讯的IP和端口。填入汇川的IP和端口:192.168.10.120,502.
协议选择TCP,打开方式选择通信协议,连接方式选择active,本站端口设置为2000(三菱有些端口不能用,请看手册)
设置好后,写入PLC。
2.3、配置通信协议支持功能
工具-通信协议支持功能-内置以太网,打开配置界面。
点击协议号的添加:
类型选择通信协议库
制造商默认
型号选择modbus/tcp
协议名,这里添加2个批量读和批量写,03和16(功能码请参照标准modbus)
添加完成后,如下图:
首先配置16批量写寄存器,点击request的数据包设置(发送包):
首先给各个单元分配不同的寄存器地址,这里的寄存器到时候需要在程序里面写入值,配置完成如上图(寄存器地址根据需求定义,这里D1000几个地址只是案例),其中:
Transaction ID:目标地址ID,D1000写入1即可;
Module ID:固定写255,D1002写255;
Head holding registor number:要写入的对象地址,这里以汇川的D2000为例,根据汇川的地址数据,这里写入2000,即D1004写入2000;
Write Points,写入的长度,写100个字,D1006写入100;
Device Data:
这里的D2001-D2123就是我们写给汇川的值的地址。D2000是需要写的数据长度,注意这里的D2000是字节数据,比如上面D1006写了100,这里必须给D2000写200,不然就会写不过去!
下图是对应上面配置文件的PLC数据:
D2001和D2003是我们需要写的参数,这里随机给的。
配置完request后,接着配置normal response和error response:
同上,Transation ID都写入1,Module ID都写255,D1014同D1004,D1016同D1006,写完后,在PLC给这些地址赋值:
那么16(批量写)配置完成。
接着配置03(批量读):
Request里面配置发送的配置:
Transaction和module ID同上,Head holding 和read points配置读取的起始地址和读取长度。
这里实验将D1104写2200,1106写100.
然后配置正常返回的配置;
device data就是读取到的值会在这里,D2200是读取的字节数(和D1106设置的值相关),D2201开始就是读取到的值。
Error response相应配置即可。
配置完成后,写入到PLC。这里需要PLC停止才可以写入,写入完成后复位PLC。
然后写PLC程序。首先打开端口:
M101是端口打开触发信号,K1是打开设置配置的是第一条,打开成功置位M550。
然后写通信协议运行指令
K1是打开设置配置的第一条,K2是说通信协议里面有2个,然后将D202赋值1,D203赋值2,意思先执行1,再执行2,就是先后执行通信协议里面的16和03,执行成功后M560变成ON。执行完成后,汇川和三菱就拿到对应设定的数值了。