实际项目中可能会遇到两个PROFINET系统之间需要通信的情况,比如:设备与生产线之间的通信、两台不同设备之间的通信等等。每一个PROFINET系统都有一个IO控制器及其IO设备,因此,所谓"两个PROFINET系统"之间的通信,其实就是两个PROFINET IO控制器之间的通信。
实现这种通信可以有很多方法,比如:
使用PN-PN耦合器;
使用智能设备;
基于以太网的通信(TCP/IP协议集);
如果都是西门子的CPU,还可以使用S7通信协议;
今天这篇文章,我们主要来介绍下使用智能设备功能实现两个PROFINET系统之间的通信。
什么是智能设备呢?
我们知道,PROFINET IO系统包括:IO控制器、IO设备及IO监视器三种角色。如果把一个IO控制器作为另一个IO控制器的IO设备来使用,那么前者就被称为"智能设备"。智能设备的英文名称为Intelligent Device,也简称为I-Device。
西门子S7系列PLC的CPU都支持智能设备的功能,使用智能设备功能大体包括三个步骤:
在CPU的硬件组态中开启智能设备功能,并组态数据交换区;
导出GSD文件;
在另一个项目中组态新导入的GSD文件,并设置数据交换区;
我在之前的文章曾介绍过S7-300及S7-200 SMART的智能设备功能,感兴趣的小伙伴可以看看下面的文章:
如何使用I_Device功能实现两台S7-300之间的数据交换
下面以S7-1200的CPU1215C作为智能设备,与S7-1500的CPU1515进行通信,数据交换区/传输区定义如下:
CPU 1515 | CPU 1215C | 长度(字节) | ||
传输区1 | QB150~QB169 | --> | IB200~ IB219 | 20 |
传输区2 | IB150~IB169 | <-- | QB300~QB319 | 20 |
首先,打开CPU1215C的硬件组态,在【属性】-【操作模式】中勾选【IO设备】,如下图所示:
然后选中【智能设备通信】,在传输区域组态智能设备的地址,如下图所示:
编译硬件组态。在智能设备通信选项卡中向下移动页面,可以看到导出GSD文件的按钮。单击该按钮导出CPU1215C的GSD文件,如下图所示:
新建项目,打开CPU1515的硬件组态,单击功能工具栏菜单【选项】-【管理通用站描述文件GSD】,在【已安装的GSD】选项卡中,定位到导出GSD的文件夹;勾选CPU1215C的GSD文件并单击【安装】,如下图所示:
安装完成后系统会自动更新硬件目录。
等待硬件目录更新完成后,重新打开CPU1515的硬件组态,切换到【网络视图】,在硬件目录-【其它现场设备】-【PROFINET IO】-【PLCs & CPs】中,可以找到刚刚安装的CPU1215C,如下图所示:
将其拖放到网络视图中,双击对其数据传输区进行组态,如下图所示:
两个项目文件分别编译、下载。
如果两个CPU在同一个项目中,那么就不需要导出GSD文件,直接在传输区中选择相应的CPU即可。
好了,关于PROFINET的智能设备功能就先介绍到这里。
我的视频号以视频的方式分享工控小知识,欢迎扫描下面的二维码查看:
发表评论