首页 理论教育 S7-200PLC PPI通信实现方法详解

S7-200PLC PPI通信实现方法详解

时间:2023-06-26 理论教育 版权反馈
【摘要】:三台S7-200系列PLC与装有编程软件的计算机通过RS-485通信接口和网络连接器,组成一个使用PPI协议的单主站通信网络,如图5-4所示,用双绞线分别将连接器的两个A端子连在一起,两个B端子连在一起。2)利用网络接头和网络线将各台PLC中用作PPI通信的端口0连接,再利用编程软件和PPI/RS-485编程电缆搜索出PPI网络中的3个站。

S7-200PLC PPI通信实现方法详解

1.系统配置与操作要求

用PPI协议实现三台S7-200 PLC之间的通信,设主站为1号站,2号站和3号站为从站,编程用的计算机的站地址为0。要求用1号站的输入点I0.0~I0.7控制2号站的输出点Q0.0~Q0.7,用2号站的I0.0~I0.7控制1号站的输出Q0.0~Q0.7。用1号站来指定3号站中计数器C4的预定值,当计数器动作时,使1号主站的Q1.1输出为1状态。

三台S7-200系列PLC与装有编程软件的计算机通过RS-485通信接口和网络连接器,组成一个使用PPI协议的单主站通信网络,如图5-4所示,用双绞线分别将连接器的两个A端子连在一起,两个B端子连在一起。

978-7-111-51420-6-Chapter05-4.jpg

图5-4 PPI通信网络

2.实现PPI协议通信的步骤

1)网络上的每一台PLC,设置其系统块中的通信端口参数。运行计算机上的编程软件,打开设置界面,利用PPI/RS-485编程电缆单独地指定3个站的地址(站号)和波特率。设置完成后,将系统块下载到该PLC中。

2)利用网络接头和网络线将各台PLC中用作PPI通信的端口0连接,再利用编程软件和PPI/RS-485编程电缆搜索出PPI网络中的3个站。

3)编写网络读/写的程序段。在PPI网络中,只有主站程序中使用网络读/写指令来读/写从站信息,而从站是被动的,它们不需要通信程序。在编写主站的网络读/写程序前,应首先规划好读/写数据的地址。根据要求可确定网络读/写数据规划,见表5-1。

表5-1 网络读/写数据规划表

978-7-111-51420-6-Chapter05-5.jpg

4)利用指令向导实现网络读/写功能,过程如下:

执行菜单命令“工具”→“指令向导”,在出现对话框的第1页选择“NETR/NETW”(网络读/写指令),如图5-5所示。

978-7-111-51420-6-Chapter05-6.jpg

图5-5 选择“NETR/NETW”指令

在第2页设置网络操作的项数为4,操作界面如图5-6所示。

978-7-111-51420-6-Chapter05-7.jpg

图5-6 设置网络操作的项数

在第3页选择使用PLC的通信端口0和默认的子程序名称“NET_EXE”,如图5-7所示。

978-7-111-51420-6-Chapter05-8.jpg

图5-7 设置通信端口和子程序名称(www.xing528.com)

在第4页设置操作1为“NETR”,要读取的字节数为1,从地址为2的远程PLC读取它的IB0,并存取在1号站PLC的QB0中,设置界面如图5-8所示。

978-7-111-51420-6-Chapter05-9.jpg

图5-8 主站从2号站读数据的设置

按“下一项操作>”按钮,设置操作2为“NETW”,将1号站PLC的IB0写到地址为2号的远程PLC的QB0,设置界面如图5-9所示。

978-7-111-51420-6-Chapter05-10.jpg

图5-9 主站向2号站发送数据的设置

按“下一项操作>”按钮,设置操作3为“NETR”,将3号站PLC中的VB1010~VB1011的数据读到地址为1号站的远程PLC中的VB1010~VB1011,设置界面如图5-10所示。

978-7-111-51420-6-Chapter05-11.jpg

图5-10 主站从3号站读数据的设置

按“下一项操作>”按钮,设置操作4为“NETW”,将1号站PLC中的VB1000~VB1001的数据写到地址为3号站的远程PLC中的VB1000~VB1001,设置界面如图5-11所示。

978-7-111-51420-6-Chapter05-12.jpg

图5-11 主站向3号站发送数据的设置

向导中的设置完成后,在编程软件指令树最下面的“调用子程序”文件夹中将会出现子程序NET_EXE。在指令树的文件夹“\符号表\向导”中,自动生成了“NET_SYMS”的符号表,它给出了操作1和操作2的状态字节的地址以及超时错误标志的地址。

3.程序的实现

根据控制要求,实现程序如图5-12和图5-13所示,其中2号站不需要程序。NET_EXE指令根据NETR/NETW向导中设置的输入和输出执行NETR/NETW功能,Timeout表示设定的通信超时时限,1~32767s,若为0,则不计时;Cycle表示输出开关量,所有网络读/写操作每完成一次都会切换“Cycle”状态;Error表示发生错误时报警输出。

978-7-111-51420-6-Chapter05-13.jpg

图5-12 1号站程序

978-7-111-51420-6-Chapter05-14.jpg

图5-13 3号站程序

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

我要反馈