PPI通信协议是西门子专为S7-200 PLC开发的,通常有两种方法,一是用STEP 7-Micro/WIN中的“指令向导”实现,这种方法比较简单;二是用网络读/写指令编写通信程序,比较麻烦,不建议使用。因为指令向导足以满足常规的PPI通信,而且简单易懂。下面以“指令向导”的方法为例,进行PPI通信的讲解。
例8-2控制要求:两台S7-200 PLC,CPU均为226 CN,两者之间进行PPI通信。实现将主站PLC1的I0.0~I0.7,分别控制从站PLC2的Q0.0~Q0.7的输出;从站PLC2的I1.0~I1.7分别控制主站PLC1的Q1.0~Q1.7的输出。请编写程序。
(1)主要硬件配置
①编程软件STEP 7-Micro/WIN SP9 V4.0。
②两台CPU 226 CN。
③一根PROFIBUS电缆+2个DP接头。
④PC/PPI电缆+计算机。
⑤PPI通信硬件配置,其连接如图8-26所示。
图8-26 PPI通信硬件配置及连接
(2)软件中根据向导配置
以主站PLC1的向导配置为例,进行向导配置说明。
1)打开STEP 7-Micro/WIN软件,新建一个工程,展开“”;双击“”,弹出如图8-27所示的“NET/NETW指令向导”对话框。
2)指定需要的网络操作数。本例需要进行一个网络读与一个网络写操作,故设为“2”,如图8-27所示;单击“下一步”按钮。
图8-27 “NETR/NETW指令向导”对话框
3)指定端口号即子程序名称。由于所用CPU 226 CN有Port0/Port1两个通信端口,本例中使用Port0进行PPI通信,保持默认,不改变子程序名称,如图8-28所示,直接单击“下一步”按钮。
图8-28 “NETR/NETW指令向导”对话框
图8-29 “NETR/NETW指令向导”对话框
4)指定网络操作。如图8-29所示的界面相对复杂,需要设置5项参数。在图中的位置“1”,选择“NETR”(网络读),主站读取从站信息;在位置“2”输入1,因为只需要读取1个字节的数据;在位置“3”输入“3”,从站PLC地址为“3”;位置“4”和位置“5”保持“VB0”,单击“下一项操作”按钮。
如图8-9所示,在图中的位置“1”,选择“NETW”(网络写),主站向从站发送信息;在位置“2”输入1,因为只需要发送1个字节的数据;在位置“3”输入“3”,从站PLC地址为“3”;位置“4”和位置“5”保持“VB1”,单击“下一步”按钮。
图8-30 “NETR/NETW指令向导”对话框
5)分配V存储区。如图8-31所示,建议多次点击按钮,分配V存储区,分配的V存储区在程序中不能被用到,否则会导致程序执行中出现错误;分配好V存储区后,单击“下一步”按钮。
图8-31 “NETR/NETW指令向导”对话框
6)生成子程序代码。如图8-32所示,单击“完成”按钮,提示“完成向导配置”,单击“是”按钮,完成向导配置。至此通信子程序“NET_EXE”已经生成,在后面的编程中调用。(www.xing528.com)
7)从站PLC2不需要配置,只需要在指定的V存储单元中读/写相关信息即可。
(3)编写程序
1)由控制要求及向导分析:
图8-32 “NETR/NETW指令向导”对话框
①如图8-33所示,可以清楚看出主站PLC1与从站PLC2的数据传送。首先,从站PLC2将IB0外部开关类状态放到VB0存储单元中,主站PLC1通过网络读取指令,读取从站PLC2的IB0的状态,将读取的状态保存在自己的VB0存储单元中,从而用VB0的状态(即从站PLC2的IBO的状态)来控制自己QB0的输出。
图8-33 主站PLC1与从站PLC2数据传送示意图
②主站PLC1将自己IB0外部开关类状态放到VB1存储单元中,通过网络写指令,将VB1的数据发送给从站PLC2的VB1存储单元,从站PLC2用VB1存储单元数据的状态来控制自己的QB0的输出。
2)调用网络读写子程序“NET_EXE”说明:
①配置向导生成子程序介绍 当完成配置向导时,STEP 7-Micro/WIN软件自动生成网络读写子程序“NET_EXE”,如图8-34所示。在编写主站程序时,要在程序扫描的每个周期调用此子程序,因此要用SM0.0来调用。
图8-34 网络读/写子程序“NET_EXE”
②网络读写子程序“NET_EXE”,在调用时有三个参数需要输入,如图8-35所示。图中“1”为周期超时参数;图中“2”为循环位参数;图中“3”为错误位参数,具体说明见表8-7。
图8-35 网络读/写子程序“NET_EXE”
表8-7 网络读写子程序“NET_EXE”参数说明
(4)编写程序
主站PLC1与从站PLC2程序如图8-36所示。
图8-36 主站与从站程序
a)主站程序 b)从站程序
图8-36 主站与从站程序(续)
a)主站程序 b)从站程序
(5)程序调试说明
本例中主站PLC1的地址为“2”,从站PLC2的地址为“3”,在程序运行之前,必须将主站与从站的地址设置正确。另外,主站与从站的通信波特率必须选择相等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。