西门子PLC与变频设备通过PROFIBUS-DP通讯的硬件组态、软件编程以及变频器的相关参数设置,下面通过一个具体的实例来讲述西门子变频器与S7-300/400的PROFIBUS-DP通讯的全过程。
硬件组态变频器
在STEP7软件中创建一个项目,再硬件组态该项目,并建一个PROFIBUS-DP网络,变频器在PROIBUSDP->SIMOVERT文件夹里进行组态,并设定好通讯的地址范围。如下图所示:
建立通讯DB块
一般地,读写数据都做在一个DB块中,且***好与硬件组态设定的I,O地址范围大小划分相同大小的区域,便于建立对应关系和管理。如下图所示,读变频器的数据的12个字节在DB0~DB11中,写给变频器的12个字节数据放在DB12~DB23中。接下来还可以存放诸如通讯的错误代码和与变频器有关的其它计算数据。
写通讯程序
通讯程序可以直接调用STEP7编程软件的系统功能SFC14(DPRD_DAT),SFC15(DPWR_DAT)来实现。例程段如下:
CALLSFC14//
变频器->PLC
LADDR:=W#16#230//
通讯地址:为硬件组态的起始地址,即IAddess中的560
RET_VAL:=DB15.DBW24//
错误代码:查帮助可得具体含义
RECORD:=P#DB15.DBX0.0BYTE12//
传送起始地址及长度
CALLSFC15//
PLC->变频器
LADDR:=W#16#230//
通讯地址:为硬件组态的起始地址,即QAddess中的560
RECORD:=P#DB15.DBX12.0BYTE12//
传送起始地址及长度
RET_VAL:=DB15.DBW26//
错误代码:查帮助可得具体含义
变频器参数设置
变频器的简单参数设置如下表
对于写变频器的数据是与变频器的k3001~k3016(参见变频器使用大全功能图120)建立对应关系,读变频器的数据则是与变频器的参数P734建立对应关系。如下图所示:
即DB15.DBW12~DB15.DBW22对应P734的W01~W06。B15.DBW0~DB15.DBW11对应k3001~k3012。PLC读取变频器的数据可以通过设置参数P734的值来实现,PLC写给变频器的数据存放在变频器数据k3001~k3012中,在变频器的参数设置里可以进行调用,从而建立了彼此的对应关系。
这样,变频器与PLC的连接已经基本建立,就可以编写程序通过PLC来控制变频器的启、停、速度给定等各项功能,满足工艺给定要求。同时也可以读取变频器数据通过上位机进行显示,达到在线监视和诊断的目的。