1 profinet 智能设备功能介绍
1.1 描述
profinet的cpu支持i device功能,即智能io设备功能,也就是该pn设备可以同时作为io控制器和io设备。一个pn智能设备功能不但可以作为一个智能处理单元处理生产工艺的某一过程,而且可以和io控制器之间交换过程数据,因此,智能设备作为一个io设备连接一个上层io控制器,智能设备的cpu通过自身的程序处理某段工艺过程,相应的过程值发送至上层的io控制器再做相关的处理。参考图 1 智能设备功能。
图 1 智能设备功能
这样智能设备可以用于:
• 分布式处理
一个复杂的自动化任务可以划分为多个子任务,由于子任务的简化使得过程处理更加容易。
• 分割子过程
复杂和分布广泛的过程可以细分为几个子过程。这些子过程可以存储在各自的step7项目中,且可以合并为一个完整的项目。
• 知识保护
智能设备的接口描述使用gsd文件而不是step7项目,这样用户的知识-用户程序得以保护。
智能设备具有如下优点:
• 实现简单的io控制器的连接,无需额外的软件工具
• 除了实时通信,还支持等时实时通信
• 由于几个智能设备具有计算能力,这样对io控制器的计算能力要求也就减少了
• 由于处理本地过程数据,从而减少了通信负荷
• 在不同的step7项目中管理+子任务
• 可以作为共享设备
使用智能设备功能,需要使用step7 v5.5和支持智能设备功能的硬件设备。
2 profinet智能设备功能组态
使用一个例子来描述profinet智能设备功能,参考图 2 profinet系统网络。
图 2 profinet系统网络
io控制器 cpu319-3pn/dp v3.2连接scalance x204irt v4.4交换机和一个et200s im151-3pn (6es7 151-3ba23-0ab0) v7.0以及io设备 cpu319f-3pn/dp v3.2构成一个profinet io系统1。io设备cpu319f-3pn/dp v3.2同时作为profinet io系统2的io控制器连接一台io设备et200s im151-3pn-1。cpu319f-3pn/dp就是这个系统中的智能设备。
2.1 profinet io系统2组态
首先在step7中对profinet io系统2的智能设备进行硬件组态,参考图 3 profinet io系统2组态。io控制器和et200s的设备名分别为pn-io-1,im151-3pn-1,其ip地址分别为192.168.0.11和192.168.0.12。设备名和ip地址一定要与pn io系统1的设置不同。
图 3 profinet io系统2组态
使用鼠标双击该站cpu319f-3pn/dp的硬件组态中的x3槽pn-io-1,弹出其属性对话框,选择“i-device”标签页,激活“i-device mode”选项,在这里取消“parameter assignment for the pn interface and its ports on the higher-level io-controller”和“operate as higher-level shared device”两个选项。其中这两个参数前者表示pn接口和端口的属性参数由上层io控制器分配;后者表示该智能设备可以作为共享设备。参考图 4 pn-io-1属性对话框。
图 4 pn-io-1属性对话框
对于传输区域(transfer area),点击“new”按钮,创建io控制器和智能设备之间数据通信的传输区域。传输区域有2种类型,一种是应用(application)传输区域,即控制器访问智能设备的用户程序接口。另一种是i/o传输区域,即控制器可以直接访问智能设备的io,而智能设备不能处理该io。由于cpu319f-3pn/dp不支持i/o传输区域,这里使用应用传输区域,分别创建输入地址区和输出地址区为2个字节。参考图 5 创建应用传输区域。
图 5 创建应用传输区域
保存和编译该站,然后在hw config界面中选择菜单“options” ® “create gsd file for i-device”,为profinet io系统2的io控制器2创建智能设备的gsd文件。参考图 6 创建gsd文件。
图 6 创建gsd文件
这样弹出创建智能设备gsd文件对话框,参考图 7 创建智能设备gsd对话框。
图 7 创建智能设备gsd对话框
点击“create”按钮,系统自动创建一个gsd文件并显示在“gsd file:”后,参考图 8 创建gsd文件。
图 8 创建gsd文件
然后点击“install”按钮,安装刚生成的gsd文件到step7硬件组态列表中。参考图 9 安装gsd文件。
图 9 安装gsd文件
打开ob1,编写对应地址的stl程序,这里cpu319f-3pndp的过程映像区为1024。如下图 10 编程举例:
图 10 编程举例
最后保存编译项目并给io设备分配设备名并下载组态到io控制器中实现profinet io通讯。
2.2 profinet io系统1组态
接着在step7中对profinet io系统1进行硬件组态,参考图 11 profinet io系统1组态。对于智能设备cpu319f-3pn/dp与标准io一样从硬件列表中拖入。前面设置的2个字节的输入和输出则在该系统中分别对应输出和输入。
图 11 profinet io系统1组态
在图 5 创建应用传输区域的2个字节的输入和输出则在该pn io系统1中分别对应输出和输入。其对应关系如下图 12 地址对应关系:
图 12 地址对应关系
打开ob1,编写对应地址的stl程序,这里cpu319-3pndp的过程映像区为256。如下图 13 编程举例:
图 13 编程举例
注意:应当保持组态的传输地址区域尽可能的小。因为智能设备的总带宽=传输地址区域带宽+自身io系统带宽,如果传输区域带宽过大,会影响自身io系统的实时通信。
注意:智能设备不能再作为profinet cba进行通信。