您当前的位置:五五电子网电子知识plc技术PLC入门如何利用MPI建一个S7-300/400之间的通信 正文
如何利用MPI建一个S7-300/400之间的通信

如何利用MPI建一个S7-300/400之间的通信

点击数:7989 次   录入时间:03-04 11:43:36   整理:http://www.55dianzi.com   PLC入门

首先要建立一个项目,对两个PLC的MPI网络组态。假设A站和B站的MPI地址分别为2和3。使用 SFC68“X_PUT” 和 SFC67“X_GET” 发送和接收数据。
发送和接收程序可以放于一个站的循环中断组织块OB35中, 或者发送程序放于OB35中,接收程序放于OB1中。• 例如在A站(2号站)的PLC的定时循环中断组织块OB35中编写发送程序和接收程序。首先利用SFC 68 把A站中的MB40MB49中的10B数据发送到B站(3号站)中的MB50MB59中。完成A站向B站写入数据。然后利用SFC 67 把B站中的MB60MB69中的10B数据读入到A站中的MB70MB79中。完成A站读取B站的数据。
注意:SFC 69 “X_ABORT” 可以中断一个由“X_PUT” 、 “X_GET”建立的连接。如果SFC 68、SFC 67的工作已经完成(BUSY=0),调用SFC 69 “X_ABORT”后,通信双方的连接资源被断开。

 

• OB35中的程序:
Network1:用SFC 68发送数据本站(A站)的数据到对方(B站)CALL  "X_PUT"                    //调用SFC 68
REQ     :=TRUE                   //激活发送请求(BOOL  1有效)
CONT    :=TRUE                   //发送完成后保持连接(BOOL  1连续)
DEST_ID :=W#16#3                 //接收方的MPI地址(WORD)
VAR_ADDR:=P#M 50.0 BYTE 10       //对方的数据接收区(ANY)为M50M59的10个字节
SD      :=P#M 40.0 BYTE 10       //本地的数据发送区(ANY)为M40M49的10个字节
RET_VAL :=LW2                    //返回的故障信息(WORD)
BUSY    :=L2.1                   //发送状态(ANY  1为发送中)

Network2:用SFC 67 读取对方(B站)的数据到本站(A站)
CALL  "X_GET"                    //调用SFC 67
REQ     :=TRUE                   //激活读取请求(BOOL  1有效)
CONT    :=TRUE                   //接收完成后保持连接(BOOL  1连续)
DEST_ID :=W#16#3                 //对方(B站)的MPI地址(WORD)
VAR_ADDR:=P#M 60.0 BYTE 10       //要读取的对方的数据接收区(ANY)为M60M59的10个字节
RET_VAL :=LW4                    //返回的故障信息(WORD)
BUSY    :=L2.2                   //发送状态(ANY  1为发送中)
RD      :=P#M 70.0 BYTE 10       //本地的数据接收区(ANY)为M70M79的10个字节


本文关键字:如何  通信  PLC入门plc技术 - PLC入门