一、PROFINETIO/RT通讯功能概述
CPU319-3PN/DP与SINAMICSS120之间通过PROFINETIO/RT可进行周期性及非周期性数据通讯。使用标准S7功能块SFC14/SFC15,S7-300/400PLC通过PROFINET周期性通讯方式可将控制字1(CTW1)和主设定值(NSETP_B)发送至驱动器;使用标准S7功能块SFB52/SFB53,可以实现非周期性数据交换,读取或写入驱动器的参数。
二、S7-300/400与S120装置的连接
1.硬件连接
图1.
(1).通过PROFINETIO/RT连接SIMATICCPU319-3PN/DP及CU310PN.
2.硬件:
3、使用的软件
•
•
•
•
•文件:
在CF卡中的路径:\
4、通讯概览
NetPro通讯配置
图2.
IP地址及通讯名称:
Device
Communicationname
IPaddress
CPU319-3PN/DP
PN-IO
192.168.0.1
CU310PN
CU310PN
192.168.0.2
PG
192.168.0.253
注意:所有节点的子网掩码:255.255.255.0。
三、必备条件
1.PROFINETIO条件
在本例中对于使用的软件版本,还应满足下列条件:
应用例程的发送时钟为1ms。更新时间应设为2nms,此值可允许的范围为:
1ms至512ms。
四、项目配置
1、Drive
2、硬件组态
(1)安装SINAMCISS120CU310PN的GSD文件
对于PROFIBUSDP及PROFINETIO需要的所有GSD文件存在S120的CF卡中,将这些文件拷贝至本地硬盘并解压缩。
在硬件配置中选择“Options=InstallGSDfile"
图3.
()可被安装。
GSD文件安装后,设备会出现在硬件组态的如下目录中:
"PROFINETIO=Drives=SINAMICS=GSD="。
注意:
•GSD子文件夹只有在安装DriveES或SIMOTIONSCOUT后才有效。否则GSD设备可直接在SINAMICS文件夹中被找到。
•如果安装了DriveESBasic/Simatic或SIMOTIONSCOUT,则不必安装GSD文件。
(2)对于CPU319建立PROFINET网络
图4.
在插入CPU319-3PN/DP时会弹出建立PROFINET网络的窗口,在此新建一个PROFINET网络并设置此PLCPN节点的IP地址及子网掩码。
(3)将CP310PN拖曳至PROFINET总线上(若安装GSD文件)
图5.
将CP310PN拖曳至PROFINET总线上(若安装DriveES)
图6.
(4)双击310PN,打开其属性窗口
分配其设备名称及IP地址,此处选择“AssignIPaddressviaIOcontroler”。
图7.
(5)分配310PN控制的驱动及IO报文
图8.
(6)在"IOCycle"中设置数据处理及响应监控的更新时间
图9.
3、初始化通讯节点
图10.
五、使用STARTER/SCOUT调试
图10.
可通过使用"Automaticconfiguration"对驱动装置在线进行自动配置。配置结束后通过"CopyRAMtoROM"将参数存贮至CF卡中。
本例中:
•驱动装置选择报文“telegram1”。
•CU单元选择报文“telegram390。
图11.
CU参数化:
•=output:DI/DO8可用于数字量输出(如果p922=390,自动设置
p738=2091.0)。
•P922:PROFIBUSPZDSIEMENStelegram390(390)。
•p2104BI:2.AcknowledgefaultsSERVO_02:。
六、通过PN总线对电机起、停及速度控制
S7-300/400PLC通过PROFINET周期性通讯方式将控制字1(CTW1)和主设定值(NSETP_B)发送至驱动器。
(1)控制字中Bit0做电机的起、停控制。
(2)主设定值为速度设定值,频率设定值和实际值要经过标准化,使得4000H(十六进制)对应于100%,发送的最高频率(最大值)为7FFFH(200%)。可以在P2000中修改参考频率(缺省值为50Hz)。
(3)当组态的报文结构PZD=2或自由报文999时,在S7-300/400中可用“MOVE”指令进行数据传送;当组态的报文结构PZD〉2,在S7-300/400中需调用SFC14和SFC15系统功能块。
•SFC14(“DPRD_DAT”)用于读驱动装置的过程数据。
•SFC15(“DPWR_DAT”)用于将过程数据写入驱动装置。
例子:SERVO_02”控制字、主设定值的发送及状态字、实际频率的读取程序
(1)控制驱动器运行:
通过先发送控制字(STW1)047E然后发送047F来启动驱动器,该数据控制字在(见图13)中指定,主设定值在中设定,运行信号为。这些值均通过变量表“Drive_Run”设定及监控。控制程序见图12。
(2)停止驱动器:
应发送控制字047E至驱动器。
(3)读取驱动器状态字及频率实际值:
PLC接收状态字1(ZSW1),存放在中;接收驱动器传来的频率实际值,存放在中。
图12.控制程序
图13.DB10
七、驱动器参数的读取及写入
1.扩展PROFIDRIVE功能(DPV1)
非周期性数据传送模式允许:
•交换大量的用户数据
•用DPV1的功能READ和WRITE可以实现非周期性数据交换。传输数
据块的内容应遵照PROFIdrive参数通道(DPV1)数据集DS47(非周期参
数通道结构)。
2.参数请求及参数应答的结构
参数请求包括三部分:请求标题、参数地址及参数值。
表2.参数请求格式
表3.参数应答格式
表4.参数请求及应答描述
表5.在DPV1参数应答中的错误值描述
3.S7-300/400PLC通过PROFINET非周期性通讯方式读取驱动器参数。
请注意:PLC读取驱动器参数时必须使用两个功能块SFB52/SFB53(程序参见图14)
举例如下:
(1)使用标志位及功能块SFB53将读请求(数据集RECORDDB1)(图15)发送至驱动器。
将设定为数值1启动读请求,当读请求完成后必须将该请求置0,结束该请求。ERROR=1:表示执行此功能块时有错误产生,而STATUS指示功能块执行状态或错误信息。
(2)使用标志位及功能块SFB52读取参数的请求响应(响应块DB2)(参见图16)。
将设定为数值1读取参数请求响应,完成后必须将该位置0,结束该请求。ERROR=1:表示执行此功能块时有错误产生,而STATUS指示功能块执行状态或错误信息。
图14.读取驱动器参数程序
图15.“写”请求数据块DB1
图16.驱动器返回参数值数据块DB2
4.S7-300/400PLC通过PROFINET非周期性通讯方式修改驱动器参数P1217。
举例如下:
PLC写参数时只需使用SFB53,在本项目的Network4中发送写请求DB101(参见图18)到驱动器;PLC读“写参数”响应时需使用SFB52,在本项目中读取驱动器返回的参数值数据块为DB102(参见图19)。程序参见图17。
(1)将设定为数值1启动写请求,当写请求完成后必须将该请求置0,结束该请求。ERROR=1:表示执行此功能块时有错误产生,而STATUS指示功能块执行状态或错误信息。
(2)将设定为数值1读请求,完成后必须将该请求置0,结束该请求。ERROR=1:表示执行此功能块时有错误产生,而STATUS指示功能块执行状态或错误信息。
图17.写入驱动器参数程序
图18.写请求DB101
图19.驱动器返回的数据块DB102