西门子S7-200 SMART系列PLC从V2.4版本开始支持Profinet以太网通信方式(以下简称PN通信),但是只能作为控制器使用,控制伺服,变频器,分布式IO等设备,不能作为智能设备与1200/1500等系列PLC进行PN通信,2020年01月份西门子发布V2.5版本固件,Zui大的亮点就是增加了作为智能设备进行PN通信,这样一来SMART使用PN通信就非常灵活。下面通过应用案例来具体了解一下PN通信程序的编写吧。
一台控制器Zui多可以连接八台智能设备,软件提供了PROFINET向导,只要正确的进行组态就可以实现通信。
控制要求如下:
1、将控制器的VB50开始的10个字节发送给智能设备的VB60开始的10个字节;
2、将智能设备的VB100开始的15个字节中的数据读取到控制器的VB80开始的15个字节中。
首先组态控制器,第一步打开向导,双击下图PROFINET。
弹出如下窗口,勾选控制器,设置好控制器IP地址,子网掩码及站名,点击下一步:
弹出如下窗口,从右侧目录中选择要组态的智能设备将其拖放的对应的槽中,设置好设备名称(一定要与实际的智能设备名称一致),IP设置有两种,一是固定IP,此时无需设置IP地址,二是用户设置,需要在IP地址栏设置智能设备的IP地址(与控制器处在同一网段),此处IP设置选择哪种方式,组态智能设备时也要选择相同的方式,否则无法通信。
200SMART系列默认在目录中有显示,其它设备必须先导入GSDML文件才能显示,如下图中Drives和I/O设备都是导入GSDML后才有的。在文件>GSDML管理打开GSDML导入窗口,选择提前下载好的GSDML文件(从官网或设备软件中导出),点击确定,如下图所示。
添加好设备后,下一步就需要添加虚拟子模块,从右侧子模块目录下选择输入或输出子模块,拖放到6号槽的位置,可以添加8个子模块,但是注意控制器组态输入子模块的槽上,对应智能设备则必须组态对应数量的输出子模块,反过来控制器组态输出子模块则,智能设备必须组态对应数量的输入子模块,否则无法通信,如下图所示:
设置好后点击下一步,查看设备型号和输入输出子模块地址,如下二图所示,这样控制器就组态好了。
组态好后在编程软件中编写如下程序:
接下来组态智能设备。打开PROFINET向导,勾选智能设备,如果控制器设置为固定IP,则以太网端口设置为固定IP地址和站名,并设置好IP地址,子网掩码以及站名(必须与控制器中组态的站名一致)。如果控制器设置为用户设置,则选择从其他途径获取IP地址,此时智能设备的IP地址需要通过其他方式来设置,如下图所示。
添加传送区,传送区是智能设备与控制器交换数据的区域,所以控制器与智能设备输入和输出相反,并且数量要一致,如下图所示。
这样点击生成智能设备就组态完毕,在智能设备中编写如下程序。
用网线将两台设备连接起来就可以建立PN通信了。