首页 理论教育 西门子PLC编程与故障诊断:无障碍网络通信

西门子PLC编程与故障诊断:无障碍网络通信

时间:2023-11-16 理论教育 版权反馈
【摘要】:在S7基本通信中,S7-300或S7-400都可以作客户机或服务器,S7-200只能作服务器。

西门子PLC编程与故障诊断:无障碍网络通信

1.SFC 68“X_PUT”和SFC 67“X_GET”

除了上述使用SFC 65“X_SEND”和SFC 66“X_RCV”的双边通信之外,还可以实现单边通信。编写程序的一方的CPU是客户机,另一方作服务器,后者不需要编写程序。客户机是通信的主动方,服务器是被动方。

在S7基本通信中,S7-300或S7-400都可以作客户机或服务器,S7-200只能作服务器。

在STEP7中创建一个项目(见随书光盘中的例程MPI_UC_2),生成两个站,CPU分别为CPU 413-2DP和CPU 315-2DP,将它们连接到MPI网络上,它们的MPI站地址分别为2和3。

在单边通信中,客户机(CPU 413-2DP)调用SFC 68“X_PUT”来写服务器(CPU 315-2DP)中的地址区,调用SF C67“X_GET”来读取服务器中的数据。在读取服务器数据时,客户机首先要发送读取命令给服务器。

2.客户机的程序设计

如果在OB1中调用SFC 68“X_PUT”和SFC 67“X_GET”,在它们的通信请求信号REQ为1时,每个扫描周期都要执行一次读、写操作。为了减少发送读、写命令的次数,在循环中断组织块OB35中调用SFC 68“X_PUT”和SFC 67“X_GET”。下面是客户机CPU413-2DP的OB35中的程序:

程序段1:准备要发送的数据

978-7-111-28256-3-Chapter14-55.jpg

程序段2:用SFC68写对方的数据区

978-7-111-28256-3-Chapter14-56.jpg

程序段3:用SFC67读对方的数据区

978-7-111-28256-3-Chapter14-57.jpg

程序段4:断开连接

978-7-111-28256-3-Chapter14-58.jpg

如果在3号站调用SFC 67“X_GET”和SFC 68“X_PUT”读写2号站的系统数据区,可以使用与上面基本上相同的程序,只需要将SFC中的DEST_ID(对方的MPI地址)改为W#16#2。

SFC 69“X_ABORT”可以中断一个由SFC“X_SEND”、“X_GET”或“X_PUT”建立的连接。如果上述SFC的操作已经完成(BUSY=0),调用SFC 69“X_ABORT”后,通信双方的连接资源被释放。

CPU 413-2DP的初始化程序OB100调用SFC 21,将发送数据的DB1的各个字预置为16#4444,将接收数据的DB2的各个字清零。(www.xing528.com)

3.服务器程序设计

下面是服务器(CPU 315-2DP)的OB1中的程序。

程序段1:

978-7-111-28256-3-Chapter14-59.jpg

CPU 315-2DP的初始化程序OB100调用SFC 21,将存放发送数据的DB1的各个字预置为16#3333,将存放接收数据的DB2的各个字清零。

在CPU 315-2DP的OB35中,每100ms将DB1.DBW加2。

4.运行与监控

组态信息和程序分别下载到各CPU,然后用PROFIBUS电缆连接编程用的计算机和两台PLC的MPI接口,将各CPU切换到RUN模式。在运行时同时打开两个站的变量表,M0.0、M0.2和M0.4分别是X_PUT、X_GET和X_ABORT的使能位。

在运行时用变量表监视通信双方存放接收到的数据的DB2的第一个字DBW0和最后一个字DBW74(见图14-31和图14-32)。

978-7-111-28256-3-Chapter14-60.jpg

图14-31 CPU 413-2DP的变量表

978-7-111-28256-3-Chapter14-61.jpg

图14-32 CPU3 15-2DP的变量表

读、写使能信号M0.0和M0.2为1,X_ABORT的使能信号M0.4为0时,X_PUT和X_GET正常运行。因为X_PUT和X_GET的参数CONT均为1(TRUE),即使读、写使能位M0.0和M0.2由1状态变为0状态,连接仍然保持。可以通过置位M0.4来使能SFC69,断开已建立的连接。

由CPU的“模块信息”对话框的“通讯”选项卡可知,X_PUT和X_GET共用一个“其他通讯”的动态连接。X_PUT、X_GET的REQ均变为0时,通信停止,但是仍然占用一个“其他通讯”动态连接。ABORT的使能信号为1时,动态连接数为0。ABORT的使能信号变为0后,再次用M0.0或M0.2启动通信,又占用一个动态连接。

5.两台S7-300之间的通信

随书光盘中的项目MPI_UC_4调用X_PUT和X_GET,来实现两块CPU 315-2DP之间的S7基本通信,硬件、通信的组态、编程和监控的方法与项目MPI_UC_2基本上相同,详细的情况见随书光盘中的项目。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈