您的当前位置:首页Profinet工业以太网实时通信协议分析

Profinet工业以太网实时通信协议分析

来源:小侦探旅游网
低压电器(2008󰀁21)通用低压电器篇

󰀂现场总线󰀂

Profinet工业以太网实时通信协议分析

孙凡金,!刘彦呈,!潘新祥

(大连海事大学轮机工程学院,辽宁大连!116026)

摘!要:在分析Profinet关键技术组成的基础上,对其实时性优化技术进行了综述,并通过分析通信连接的建立及维护,实时协议的组成及通信策略,以及RT与IRT的通信技术与实现方法,从整体上研究了Profinet实时性优化的协议组成及基本特性,对设计与优化基于Profinet工业以太网的自动化系统具有一定借鉴。

关键词:Profinet;实时性;通信连接;同步

中图分类号:TP393.04!文献标识码:A!文章编号:1001󰀁5531(2008)21󰀁0030󰀁04

孙凡金(1977 ),男,副教授,博士,研究方向为网络控制系统。

TheAnalysisoftheReal󰀁TimeCommunication

ProtocolinProfinet!!!

SUNFanjin,!LIUYancheng,!PANXinxiang

(SchoolofMarineEngineering,DalianMaritimeUniversity,Dalian116026,China)

!!Abstract:BasedontheanalysisofProfinet∀skeytechnology∀sconstitution,itsreal󰀁timeoptimizationtech󰀁nologywassurveyed.Byanalyzingthebuildandmaintenanceofcommunicationconnect,real󰀁timeprotocol∀scon󰀁stitutionandcommunicationstrategy,RTandIRT∀scommunicationtechnologyandrealizationmethod,theprotocolconstitutionandbasiccharacteristicsforProfinetreal󰀁timeoptimizationwerestudied,whichcanbereferenceforde󰀁signingandoptimizingautomaticsystembasedonProfinet.

Keywords:Profinet;real󰀁time;communicationconnect;synchronous

0!引!言

Profinet是国际组织PNO(ProfibusNationalOrganization)提出的用于工业自动化的实时以太网标准。为支持不同工业级应用,Profinet提

供了集成式ProfinetIO和分布式自动化中创建模块化设备系统的ProfinetCBA。ProfinetIO对分布式I/O使用实时通信(RT)和同步实时通信(IRT)协议。RT通信时钟周期可达10ms量级,适用于工厂自动化的分布式I/O系统。IRT通信时钟周期可达1ms量级,适用于运动控制系[4,5]统。ProfinetCBA使用TCP/IP和RT两种基于组件的通信方式。它允许时钟周期由TCP协议的100ms量级降至RT的10ms量级,从而更适用于PLC之间的通信。本文通过分析Profinet实时性协议的组成,对其通信连接建立及管理、实

[3]

[1,2]

时同步机制、等时同步实现方法及关键技术进行

了深入分析,阐述了Profinet实时通信解决方案实现方法。

1!Profinet协议架构

传统的以太网使用CSMA/CD(带有冲突监测的载波监听多路访问)协议实现介质访问控制,虽然工业以太网可使用标准的通信协议(如TCP/IP或UDP/IP)来提高其实时性,但数据包的传输时延很大程度上依赖网络负载而不能预先确定,因此标准协议通信过程中会产生帧过载现象,这即加大传输时延及处理器计算时间,从而延长发送周期,严重影响网络的实时性。为此,Profi󰀁net通过对发送器和接收器的通信栈进行实时性优化,可保证同一网络中不同站点可在一个确定时段内完成时间要求严苛的数据传输。Profinet

刘彦呈(1963 ),男,教授,博士生导师,研究方向为工业监控网络。潘新祥(1964 ),男,教授,从事船舶网络化监控技术的研究。

30

󰀂现场总线󰀂

低压电器(2008󰀁21)通用低压电器篇

通过软实时和硬实时方案对ISO/OSI参考模型的第2层进行了优化,此层内所改进的实时协议对数据包的寻址不是通过IP地址实现的,而使用接收设备的MAC地址,同时保证与其他标准协议在同一网络中的兼容性。Profinet的协议架构如图1所示。

计系统,也可能来自于保存的组态数据,它利用这些数据自动尝试与响应者建立连接。在成功建立连接之后,发送器向接收器传输实时的生产数据或I/O数据。与此相反,发起者也可提供删除连接的触发,如上位操作终端或设计系统删除连接。此外,发起者可以将发送器和接收器组合在同一个设备中,其回路的监控是通过实时协议的数据安全特性、发送器和接收器的高层协议和特殊的监控机制来实现的。Profinet建立与删除连接的过程如图2所示。

图1!Profinet通信协议架构

!!根据自动化系统的控制及通信要求,将应用层的数据规划为标准数据(非实时数据)和实时

数据,标准数据是对时间没有严苛要求的数据,它使用传统以太网的标准通道,通常完成设备参数化、诊断数据读取、互连数据加载、非周期数据交换、信道组态等任务;实时数据是对时间有严苛要求的数据,它使用Profinet优化的实时通道,其传输控制被映射到ISO/OSI模型第2层内3种实时类型,实时类型1用于用户数据的高性能传输、周期数据交换;实时类型2用于事件触发的周期性数据传输;实时类型3主要实现等时同步数据的高性能传输,通常用于运动控制系统。

图2!Profinet连接建立与删除

3!实时通信协议

Profinet实时协议采用EtherNetII。为减小交换机在帧处理时的最大周期偏差,使用VLAN标签对帧进行优先级标识,从而控制运行时间内设

备之间的数据流。Profinet实时帧使用优先级6或7发送。遵照IEEE802.1Q,VLAN标签对以太网帧扩展了4Byte。Ethertype0x8100确定VLAN标签协议标识符。VLAN帧格式在IEEE802.1D中定义。IEEE分配以太网协议0x8892对实时帧进行标识。帧类型标识符用于描述两个设备之间的通信信道。以太网与帧类型标识符的结合即可对实时帧进行识别,实时帧结构如图3所示。!!其中,RT数据区内的用法与结构没有具体定义,但若实时帧长度<64Byte,则实时数据的长度必须扩展到最小40Byte。VLANTPID区的CFI用于区别以太网和令牌环网的类型。对于接收器,控制器首先验证6Byte的目的地址,随后在Profinet协议栈中用以太网类型和帧类型标识符将帧分配到相应信道。

31

2!通信连接建立及维护

Profinet的实时协议使用发送器/接收器通信方式进行数据传输。Profinet设备可同时作为接收器和发送器进行工作。在周期性实时数据的通信中,数据交换是基于连接的,连接的建立及删除由应用层协议控制;数据的接收器不会对数据包的接收状态向发送器进行明确回复,而仅通过监控时间间隔来考察数据接收情况。此外,Profinet实时协议不支持数据的分段及重组,以及长度超出以太网标准数据包长度(包含所有协议首部)的传输。

当发起者(如Profinet控制器)收到要建立的连接方面的信息时,这些信息可能来自于工程设

低压电器(2008󰀁21)通用低压电器篇

󰀂现场总线󰀂

图3!实时帧结构

4!等时同步机制

Profinet的IRT协议主要为运动控制等硬实时系统提供解决方案。它通过使用时分多路复用协议及特殊通信ASIC(专用集成电路),确保在网络过载或网络拓扑动态变化时的通信质量。此外,IRT需要确定的网络组态,即通信前应规划网络拓扑、源/目的节点、通信数据量、连接路径属性等。IRT的一个传输周期主要由IRT通道和开放通道进行分配,硬件ASIC会对IRT周期定时进行监视。IRT通道用于传输等时同步的周期性实时帧,开放通道用于传输非同步实时帧和非实时帧(NRTframe)。IRT周期组成及分配如图4所示。

IRT通道传输IRT帧的时间由站点数及周期数据量决定,无严苛时间要求的帧由ASIC缓冲,并在开放通道有效时RT通信时段传送。开放通道的RT通信时段有效时传送RT帧以及由IEEE802.Q分配了优先级的非实时帧(NRT帧),其中RT帧包括周期实时数据RTC和非周期实时数据RTA。标准通信时段内仅能传送NRT帧,且该时

段应足够大,以保证至少一个具有最大长度的以太网帧能够得到完整传输,但其传输任务应在传输周期结束的时候终止。IRT帧是基于同步的通信,其传输的确定性由帧类型标识符(FrameID)

以及网络类型来保证。与实时帧不同,它不使用VLAN标签分配优先级,其帧结构如图5所示。

Profinet在实现网络同步时使用精确透明时钟协议(PrecisionTransparentClockProtoco,lPTCP)来记录传输链路时间参数。PTCP位于OSI参考模型的第2层,不具路由功能,但具有显著优点,如同步精度高、消耗资源少、带宽使用少、管理要求低,并对网络组件的CPU性能和存储器性能无特殊要求。PTCP主端用一个多播帧触发同步,其帧结构如图6所示。此帧的接收器通过接收到的同步信息调整自身的时钟。调整时不能破坏相应设备的本地时间记录。

!!Profinet将同一个时钟进行同步的子网内所有通信参与者定义为一个PTCP子域。PTCP子域内可实现PTCP主端和PTCP从端之间微秒级或亚微秒级时间同步。PTCP同步是通过周期性地交换两个网络节点间的同步帧序列来实现的,其

图4!IRT周期分配

图5!IRT帧结构

32

󰀂现场总线󰀂

低压电器(2008󰀁21)通用低压电器篇

图6!PTCP帧结构

中具有最高精确度时钟(主时钟)的网络节点用于同步其它节点的本地时钟(从时钟)。同一序列的所有帧具有相同的序列号。同步过程包含时延测量和子域内同步两个阶段。

同步过程的第一个阶段是测量相互通信双方(时延请求者与时延响应者)之间的时延,即时延测量阶段,其在同步过程中的主要任务是测量通信双方之间的时延。通常情况下,该时延由3部分组成,即请求者本地时延、应答者本地时延及帧传输时延。首先,时延请求者向时延响应者发送一个时延请求(时延帧),该帧的精确传输时间由时延请求者确定并记录。之后,时延响应者在收到的数据包上添加一个时间戳,并将接收时间通过一个时延响应(应答帧)回复给时延请求者,并通过发送一个跟随响应(跟随帧),将本地时延通报给时延请求者。在数据传输期间,线路上对称的时延对测量的准确性具有决定性意义。子域内同步阶段,PTCP子网内的时间同步是通过在PTCP主端发送一个同步帧实现的。此过程会指定PTCP的主时钟值,以及发送者与接收者之间链路时延。PTCP从端将利用同步帧和跟随帧中信息,同步其本地时钟(PTCP从时钟)。在Profinet中,将收到同步帧和跟随帧发送出去的网络节点称为透明时钟。透明时钟必须测量发送同步帧/跟随帧的内部校正时延,以及透明时钟与同步帧/跟随帧的发送器之间的线路时延,从而校正接收时间。此外,若传输设备向发送器或接收器添加时间戳时出现错误(抖动)或主时钟和从时钟的晶振频率之间偏差,均会在主时钟和从时钟之间产生偏差。因此,在完整地进行一次同步之后,可通过更新偏移量的测量值来确定此偏差,

并通过调整从时钟进行校正。

5!结!语

Profinet是一种构成从I/O级至协调管理级的分布式自动化系统的体系结构,为确保其工业底层具有严苛时间要求的通信实时性,同时与标准以太网进行无缝连接,提出了用于工业自动化的RT协议和应用于严苛时间要求的IRT协议,以及用于实现设备组态及诊断等功能的基于TCP/IP的非实时通信协议。RT通信的软实时优化通过IEEE802.1Q/P协议进行优先级配置,IRT的硬实时优化由ASIC技术支持,以缩短软件处理时间,实现高性能过程数据的等时同步传输。因此,在构建Profinet应用系统时,可根据实际控制要求及通信要求,灵活使用IR和IRT通信特性,充分利用网络资源,优化网络结构,满足工业现场实时通信要求。

#参考文献∃

[1]!汤亚锋.西门子Profinet工业通信指南[M].北京:

人民邮电出版社,2007.

[2]!ProfibusInternationa.lProfinetIOPart5:Application

LayerServiceDefinition[S].Version1.0,2004.[3]!陈海东.Profinet 面向自动化未来的以太网现

场总线解决方案[J].现代制造,2004(12):34󰀁361.

[4]!陈方良,方文,马思文,等.关于Profinet以太网现

场总线的研究与应用[J].控制系统,2006(9):37󰀁39.

[5]!彭杰,李秀元,应启戛.Profinet及其同步通信分析

[J].微机算机信息,2006,22(9):188,208󰀁209.

收稿日期:2008󰀁03󰀁29

%&杂志2009年征订工作正式开始!欢迎踊跃订阅!

33

因篇幅问题不能全部显示,请点此查看更多更全内容