PLC与变频器之间的通讯是PLC编程中最常用的功能。通常采用profibus_DP通讯方式来实现。当然根据现场实际情况会采用USS通讯、以太网通讯等。本节重点介绍如何对PLC 和西门子变频器之间的通信进行配置和编程。
1、与西门子变频器的通讯配置
1、配置主站和profibus网络
打开项目,插入一个300站,并插入一个315-2DP CPU,然后新建一个DP网络,该站的地址为2,如下图所示:
2、生成逆变器从站(这里以MASTERDRIVE为例)
找到右侧profibus_DP项目下的SIMOVERT文件夹并打开
CBP(profibus通讯板)接口板是MASTERDRIVE的DP通讯扩展板。在SIMOVERT文件夹中找到CBPX或CBP2 DPV1并将其拖至DP网络。这两个板的区别在于CBPX只能选择PPO类型的消息。 CBP2 DPV1还可以选择更多的数据包,这里我们选择CBPX
3、变频器通讯区域的选择
这里的变频器是主站PLC的智能从站,需要配置通讯区域。从上图可以看到CBPX文件夹下是CBP板的通讯区域选择。选择变频器从站,在CBPX文件夹中选择需要的变频器从站。交流领域:
注:过程数据PZD用于PLC控制和变频器监控。参数数据PKW用于读写变频器参数。 PKW 和PZD 统称为参数过程数据对象(PPO)。 (关于PKW和PZD在我之前的文章中有专门的介绍,可以参考链接:个人解读西门子变频器消息)
双击通讯区域中的线路,可以查看该线路的参数属性。这里的一致性设置为总长度。在PLC侧,需要调用SFC14和SFC15来打包发送数据以及解包接收到的数据。
状态字和控制的定义需要在变频器中设置。这是一个简单的例子:
用PLC发给变频器的PZD1控制变频器的启停,PZD2作为速度给定。
利用变频器发送给PLC的PZD1反馈控制状态,PZD2作为速度反馈。 4、编写PLC程序:
首先,当M0.1为1时,用SFC15打包发送4个字节的数据,即PZD1和PZD2(各两个字节)发送到变频器。
当M0.1为0时,使用SFC14解包数据。程序如下图所示:
这样,数据传输程序就已经写好了,即MW100是PLC发送给变频器的PZD1,用于控制变频器的启停,MW102是PLC发送给变频器的PZD2速度指令。 MW104是接收变频器的状态字PZD1,MW106是接收变频器的速度反馈PZD2。
2.如何安装西门子PLC和其他厂家变频器的GSD文件
由于是其他厂家的变频器,在profibus硬件目录中找不到。这里需要安装对应的GSD文件。 GSD文件可以从西门子官网找到,下载到本地计算机,然后安装,也可以从其他来源获取。将GSD文件导入到项目中
在PLC硬件配置界面,选项中选择安装GSD
此示例使用从其他项目导入的GSD 文件。
红框是那个项目中的gsd文件(本例是SEW的变频器)
审稿人:李茜