欧姆龙CP1H系列PLC无协议通信程序实例

某项目要用CP1H PLC通过无协议通信对变频器读写数据。无协议通信是什么原理呢?下面来学习一下吧。

无协议通信指的是不使用固定的协议,根据通信设备所能支持的开放协议,通过串行端口发送、接收数据的功能。CP1H PLC通过添加串行端口选件板CP1W-CIF01、CP1W-CIF11或CP1W-CIF12,用RS-232C或RS-485/422A端口连接通信设备。

一、软件设定

如CP1H PLC使用左侧卡槽安装选件板CP1W-CIF11,我们就设置串口1界面里的参数。

欧姆龙plc cp1h用户手册(欧姆龙CP1H系列PLC无协议通信程序实例)(1)

上图中的RS-232C是指的是无协议通信,并不是指端口类型,本例中使用RS-485端口。设置好后,传送到PLC中,断电重启后生效。

欧姆龙变频器3G3MX2的参数可以设定为下表所示数据:

欧姆龙plc cp1h用户手册(欧姆龙CP1H系列PLC无协议通信程序实例)(2)

变频器参数设定完成,需要断电重启一次完成参数存储。

二、通信接线

选件板正面中的SDA-(或RDA-)连接变频器中的RS-端子,选件板中的SDB (或RDB )连接变频器中的RS 端子。

选件板背面中的拨码开关1=OFF(无终端电阻,如有终端电阻则为ON),4=OFF,2=ON,3=ON,5=ON,6=ON。

如使用的是RS-232C端口,串口的4、5端子需要短接。

三、PLC DIP开关设定

CP1H PLC的DIP开关4关联选件板槽1的设置,DIP开关5关联选件板槽2的设置,在用工具总线通信的情况下使用ON,根据PLC系统设定的通信协议的情况下使用OFF。

无协议通信并不是指不需要通信协议,是指PLC的通信协议根据通信设备所支持的开放协议来通信,如Modbus协议。

四、程序编写

如控制要求为:向变频器发送指令,启动运行变频器,要发送的数据如下表所示。

欧姆龙plc cp1h用户手册(欧姆龙CP1H系列PLC无协议通信程序实例)(3)

Modbus协议是十六进制格式的协议,传送的单位是字节,两个位是一个字节,上图中共需要传送8个字节的数据。

欧姆龙plc cp1h用户手册(欧姆龙CP1H系列PLC无协议通信程序实例)(4)

A392.13是串行端口1通信发送准备好的标志位,A392.05是串行端口2通信发送准备好的标志位。A392.14是串行端口1通信数据接收准备好的标志位,A392.06是串行端口2通信数据接收准备好的标志位。

CP1H PLC中,#0100是TXD/RXD指令的控制字,表示为使用串行端口1,无RS、ER信号控制,高字节在先发送。&8表示为8个字节,也可以用十六进制数据写。

此外,还要对发送的内存地址赋值,并传送到PLC中。

欧姆龙plc cp1h用户手册(欧姆龙CP1H系列PLC无协议通信程序实例)(5)

程序编写好后传送到PLC中。

五、程序调试

如通信正常,则D2000~D2003中的数据与D1000~D1003中的数据一致。

如果无法接收数据,第一步检查COMM指示灯是否闪亮?

1、灯不亮,检查通信线缆制作或连接是否正确,检查设备的串口数据是否有发送。

2、灯亮,检查串口模式、串口DIP开关、指令的控制数据字、通信起始码和结束码、通信字节数设置,还可以检查串口错误标志A528查看错误代码。

#PLC##电工交流圈##电气#

,