工业通信标准PROFInet及其应用
作 者 :武汉大学 动力与机械学院 卜志翔 胥 军
关键词: PROFInet TCP/IP OPC DCOM
1 引言
随着信息技术技术的飞速发展,当今自动化技术的发展正日益受到信息技术原理及其标准的重大影响。在自动化领域中集成信息技术可以为企业内部自动化系统间的全局通信提供解决方案,基于工业以太网通信标准的PROFInet通信技术使这种集成成为可能。PROFInet是Process Field Net的缩写,它是PROFIBUS客户、生产商与系统集成联盟协会推出的在PROFIBUS与以太网间全开放的通信协议。PROFInet是一种基于实时工业以太网的自动化解决方案,包括一整套完整高性能并可升级的解决方案,可以为PROFIBUS及其他各种现场总线网络提供以太网移植服务;PROFInet标准的开放性保证了其长远的兼容性与扩展性,从而可以保护用户的投资与利益。PROFInet可以使工程与组态、试运行、操作和维护更为便捷,并且能够与PROFIBUS以及其它现场总线网络实现无缝集成与连接。工程实践证明,在组建企业工控网络时采用PROFInet通讯技术可以节省近15%的硬件投资。
2 PROFInet通讯标准
PROFInet可以提供办公室和自动化领域开放的、一致的连接。PROFInet方案覆盖了分散自动化系统的所有运行阶段,它主要包含以下方面:(1)高度分散自动化系统的开放对象模型(结构模型);(2)基于Ethernet的开放的、面向对象的运行期通信方案(功能单元间的通信关系);(3)独立于制造商的工程设计方案(应用开发)。PROFInet方案可以用一条等式简单而明了地描述:
PROFInet=PROFIBUS+具有PROFIBUS和IT标准Ethernet的开放的、一致的通信
2.1 PROFInet设备的软件结构
PROFInet设备的软件覆盖了现场设备的整个运行期通信,基于模块化设计的软件包含若干通信层,每层都与系统环境一致。PROFInet软件主要包括一个RPC(Remote Procedure Call)层,一个DCOM(Distributed Component Object Model)层和一个专门为PROFInet对象定义的层。PROFInet对象可以是ACCO(Active Connection Control Object)设备、RT auto(Runtime Automation)设备、物理设备或逻辑设备。软件中定义的实时数据通道提供PROFInet对象与以太网间的实时通信服务。PROFInet通过系统接口连接到操作系统(如WinCE),通过应用接口连接到控制器(如PLC)。
PROFInet的运行期软件位于一个目录固定的结构中,可以分为核心目录和系统应用目录。若通信开始而核心目录中的文件未改变,则系统应用目录中的部分文件必须重建。所有的系统应用都是指向系统接口和应用接口,实现PROFInet设备的各项功能。PROFInet设备的软件结构可以用图1描述如下:
图1 PROFInet设备软件结构
PROFInet设备的软件结构决定了PROFInet设备可以从企业管理层到现场层直接、透明地访问,并且提供对TCP/IP协议的绝对支持。PROFInet技术使企业用户能够方便地对现有的系统进行扩展和集成,是一种优化的工业以太网通信标准。
2.2 PROFInet在现场设备上的移植
作为一种开放的资源,PROFInet软件通过移植到设备上的TCP/IP协议栈来完成在其他设备制造商的产品中快速而简单地实现。具体过程为:首先将开放资源的RPC接口连接到TCP/IP协议栈和设备操作系统中的系统集成;然后再将PROFInet协议栈的DCOM(Discrete Component Object Module)机制集成到设备的操作系统中;最后实现物理设备和逻辑设备对象、运行期对象和活动控制连接对象的设备专用的DCOM应用。为单个部件组装PROFInet设备时还必须用XML创建相应的描述。一个PROFInet设备的XML文件中应包括下列数据:(1)PROFInet设备的名称和ID号;(2)PROFInet设备的IP地址,诊断数据的访问方式和设备连接方式;(3)PROFInet设备的硬件分配,设备接口以及为各接口定义的变量、数据类型与格式;(4)PROFInet设备在整个工程中的保存地址。
PROFInet设备将它的所有功能封装到其软件中,并提供变量接口与其它的PROFInet设备相连。变量接口的每个变量都代表一个确定的子功能,包括运行、输入/输出使能、复位、结束、停机、启动和错误。一个PROFInet设备中封装的可以是一个控制器、一个执行器甚至是一个控制网络。图2所示的PROFInet设备中封装了一个PROFIBUS-DP控制网络。
图2 PROFInet设备的封装
PROFInet设备之间通过DCOM模块进行通信。在PROFInet设备连接编辑器的图形界面中可以方便地实现各PROFInet设备间的连接。一个具有冲洗、灌装、封口和包装4个环节的饮料生产厂家的生产流程可以用4个PROFInet设备串连连接实现(见图3)。
图3 PROFInet设备的连接
所有设备的接口都在PROFInet中做了一致的定义,因此都能够灵活地组合和重新使用,用户不必考虑各设备的内部运行机制。此外,PROFInet还集成了故障安全通信标准行规PROFIsafe,满足对人员、设备和环境的全面安全的需求,可用于故障安全应用。
3 PROFInet通信功能的实现
PROFInet设备通信功能的实现是基于传统的Ethernet通信机制(如TCP或UDP),同时又采用RPC和DCOM机制进行加强。DCOM可视为用于基于RPC分布式应用的COM技术的扩展,可以采用优化的实时通信机制应用于对实时性要求苛刻的应用领域。在运行期间,PROFInet设备以DCOM对象的形式映像,通过对象协议机制确保了DCOM对象的通信。COM对象作为PDU以DCOM协议定义的形式出现在通信总线上。通过DCOM布线协议DCOM定义了对象的标识和具有有关接口和参数的方法,这样就可以在通信总线上进行标准化的DCOM信息包的传输。对于更高层次上的通信,PROFInet可以采用集成OPC(OLE for Process Control)接口技术的方式。
3.1 PROFInet的基本通信方式
PROFInet根据不同的应用场合定义了三种不同的通信方式:使用TCP/IP的标准通信;实时RT(Real-time)通信和同步实时IRT通信。PROFInet设备能够根据通信要求选择合适的通信方式。
PROFInet使用以太网和TCP/IP协议作为通信基础,在任何场合下都提供对TCP/IP通信的绝对支持。由于绝大多数工厂自动化应用场合对实时响应时间要求较高,为了能够满足自动化中的实时要求,PROFInet中规定了基于以太网层2的优化实时通信通道,该方案极大地减少了通信栈上占用的时间,提高了自动化数据刷新方面的性能。PROFInet不仅最小化了可编程控制器中的通信栈,而且对网络中传输数据也进行了优化。采用PROFInet通信标准,系统对实时应用的响应时间可以缩短到5~10ms。PROFInet同时还支持高性能同步运动控制应用,在该应用场合PROFInet提供对100个节点响应时间低于1ms的同步实时(IRT)通信,该功能是由层2上内嵌的同步实时交换芯片ERTEC提供的。PROFInet的通信循环如图4所示。
图4 PROFInet通信循环
在PROFInet设备的一个通信循环周期内,既包括IRT实时通信,又包括TCP/IP标准通信。PROFInet通信技术在很多应用场合都能体现出其极大的优越性。工程实践表明,在同步运动控制场合采用PROFInet提供的IRT通信,系统性能将比采用现场总线方案提升近100倍。
3.2 PROFInet与OPC的集成
由于PROFInet与OPC均采用了DCOM通讯机制,因此PROFInet通讯技术可以很容易地与OPC接口技术集成,以实现数据在更高通信层次上的交换。OPC接口设备在工控领域的应用十分广泛,OPC接口技术定义了OPC DA(Data Access)与OPC DX(Data Exchange)两个通信标准,分别应用于传输实时数据和实现异类控制网络间数据的交换。在PROFInet中集成OPC DX接口可以实现一个开放的连接至其他系统,集成机制如下:
(1) 基于PROFInet的实时通信机制,每个PROFInet节点可以作为一个O