以下用一个实例介绍两台S7-200 PLC通信的方法。
【例4-1】某设备的第一站和第二站上的控制器是CPU 226CN,两个站组成一个PPI网络,其中,第一站的PLC为主站,第二站的PLC为从站。其工作任务是:当按下主站上的按钮SB1时,从站上的灯亮。请编写程序。
【解】
1.主要软硬件配置
①1套STEP7-Micro/WIN V4.0 SP9。
②2台CPU 226CN。
③1根PROFIBUS网络电缆(含两个网络总线连接器)如图4-8所示,PPI通信硬件配置图如图4-9所示。
图4-8 PROFIBUS网络电缆
图4-9 PPI通信硬件配置图
2.硬件配置过程
(1)选择“NETR/NETW”首先单击工具条中的“指令向导”按钮 ,弹出“指令向导”对话框,如图4-10所示,选中“NETR/NETW”选项,单击“下一步”按钮。
图4-10 选择“NETR/NETW”
(2)指定需要的网络操作数目
在图4-11所示的界面中设置需要进行多少网络读写操作,由于本例比较简单,设为“1”即可,单击“下一步”按钮。
(3)指定端口号和子程序名称
由于CPU226有0和1两个通信口,网络连接器插在哪个端口,配置时就选择哪个端口,子程序的名称可以不做更改,因此在图4-12所示的界面中直接单击“下一步”按钮。
(4)指定网络操作
图4-13所示的界面相对比较复杂,需要设置5项参数。在图中的位置选择“NETW”(网络写),因为本例中只要求主站把信息送到从站;在位置“2”输入1,因为只有1个开关量信息;在位置“3”输入3,因为第三站的地址为“3”;位置“4”和位置“5”保持默认值,然后单击“下一步”按钮。
图4-11 指定需要的网络操作数目
图4-12 指定端口号和子程序名称
图4-13 指定网络操作
(5)分配V存储区
接下来在图4-14所示的界面中分配系统要使用的存储区,通常使用默认值,然后单击“下一步”按钮。
图4-14 分配V存储区
(6)生成程序代码(www.xing528.com)
最后单击“完成”按钮,如图4-15所示。至此通信子程序“NET_EXE”已经生成,在后面的程序中可以方便地进行调用。
图4-15 生成程序代码
编写主站和从站的程序,如图4-16所示。
【关键点】本例主站的站地址为“2”,在运行程序前,必须将从站的站地址设置成“3”(与图4-16中设置一致),此外,本例实际是将主站的VB0中数据传送到从站的VB0中。此外,要注意站地址和站内地址的区别。主站和从站的波特率必须相等。一般而言,其
图4-16 程序
a)主站程序 b)从站程序图
他的通信方式也遵循这个原则,这一点初学者很容易忽略。
【例4-2】某设备的第一站和第二站上的控制器是CPU 226CN,两个站组成一个PPI网络,其中,第一站的PLC为主站,第二站的PLC为从站。其工作任务是:将主站内保存的时钟信息用网络写指令写入从站的V存储区,把从站的存储区的时钟信息用网络读指令读到主站的V存储区,主站和从站分别把时间信息的“秒”用BCD格式传送到QB0字节上显示。请编写程序。
【解】首先列出主站发送数据缓冲区和从站接收数据缓冲区,见表4-5和表4-6。
表4-5 主站发送缓冲区
表4-6 从站接收缓冲区
然后再列出主站接收数据缓冲区和从站发送数据缓冲区,见表4-7和表4-8。
表4-7 主站接收缓冲区
表4-8 从站发送缓冲区
最后编写程序,如图4-17和图4-18所示。
图4-17 主站主程序
图4-17 主站子程序(续)
图4-18 从站主程序
由此可见,用指令向导生成子程序进行PPI通信,比使用网络读写指令(NETR/NETW)要容易得多。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。