您好,欢迎访问三七文档
第九章S7PLC通讯讲解人:***(feilt)笙歌散尽游人去,始觉春空,垂下帘拢,双燕归来细雨中。——【宋】欧阳修1概述2网络配置图3网络组态及参数设置4编写程序5总结§*思考§9.2S7-300/400无组态MPI单边编程通信在通信的双方都需要调用通信块,一方调用发送块发送数据,另一方就要调用接收块来接收数据。这种通信方式适用S7–200/300/400之间的通信,发送块是SFC68(X_PUT),接收块是SFC67(X_GET)。1概述CPU315-2DP一台,CPU312IFM一台,MPI电缆一条。两台s7-300PLC用MPI电缆连接一起。2网络配置图在STEP7中创建一个名为“MPI_GET_PUT”的项目,并插入两个站SIMATIC300站,分别组态硬件,s7-315MPI站地址为2;s7-312MPI站地址为4。3网络组态及参数设置通信的双方都需要调用通信块,一方调用发送块用来发送数据,另一方调用接收模块用来接收数据。调用系统功能SFC68“X_PUT”用来发送数据。调用系统功能SFC67“X_RCV”用来接收数据。SFC68“X_PUT”参数表REQ发送请求,该参数为1时发送。CONT为1时表示发送数据是连续的一个整体。DEST_ID对方的MPI地址。VAR_ADDR指向伙伴CPU上要写入数据的区域。必须选择通讯伙伴支持的数据类型。SD指向本地CPU中包含要发送数据的区域。必须与通讯伙伴上的VAR_ADDR长度相同。数据类型必须和VAR_ADDR的数据类型相匹配。发送区的最大长度是76个字节。RET_VAL发送状态字。BUSY通信进程,为1时表示正在发送;为0时表示发送完成。4编写程序SFC67“X_GET”参数表REQ接收请求,该参数为1时发送。CONT为1时表示发送数据是连续的一个整体。DEST_ID对方的MPI地址。VAR_ADDR指向伙伴CPU上要读取数据的区域。必须选择通讯伙伴支持的数据类型。RET_VAL表示接收状态字。REQ_ID为接收数据包的标识符。BUSY通信进程,为1时表示正在发送;为0时表示发送完成。RD接收区放在DB1中从DBB0开始的连续76B中调用系统功能库→StandardLibrary→SystemFunctionBlock下调用SFC68Station1在OB1中编写程序。库→StandardLibrary→SystemFunctionBlock下调用SFC68Station2在OB1中编写程序。在本实例中,一个站用于发送,一个站用于接收,如何想每个站都实现发送和接收,需要在两个PLC中都编写接收和发送程序。本例中通过修改M1.0,M0.0的值来控制数据的发送、接收连接。注意:1、实际应用中,最好把通信放在循环中,这样可以保证通讯的持续性,也可以减轻CPU负担。如果放在OB1中,因为发送数据过快增加CPU负担。5总结§*思考1、S7-300PLC的MPI如何实现双向通讯?2、S7-300的MPI无组态通讯是否需要配置网络?
本文标题:S7-300-400培训教程——第9b章--S7-PLC通讯---S7-300-400无组态MPI单
链接地址:https://www.777doc.com/doc-4970260 .html