Profinet协议基础知识
原文地址:https://www.docin.com/p-787507785.html
概述
Profinet是国际组织PNO提出的用于工业自动化的实时以太网标准。为支持不同的工业级应用,Profinet提供了集成PorfinetIO和分布式自动化中创建模块化设备系统ProfinetCBA。
-
Profinet IO的通讯模式:实时通信(RT)和等实时通信(IRT)
-
ProfinetCBA使用TCP/IP和RT两种基于组件的通信方式。
研究内容
Profinet 通过对发送器和接收器的通信栈进行实时性优化,可保证同一网络中不同站点可在一个确定的时间段内完成要求苛刻的数据传输。Profinet 通过软实时和硬实时方案对ISO/OSI参考模型的第2层进行了优化,此层内锁改进的实时协议对数据包的寻址不是通过IP地址实现,而是使用接收设备的MAC地址,同时保证与其他协议标准在同一网络中的兼容性。Profinet的协议架构如下图:
Profinet根据自动化系统的控制及通信要求,将应用层的数据规划为标准数据(非实时数据)和实时数据。
- 标准数据对时间没有严苛要求,它使用传统以太网的标准通信,通常完成设备参数化、诊断数据读取、互连数据加载、非周期数据交换、信道组态等任务;
- 实时数据是对时间有严苛要求的数据,它使用Profinet优化的实时通道,其传输控制被映射到ISO/OSI模型的第2层3种实时类型;
实时类型1:用户数据的高性能传输、周期数据交换;
实时类型2:用于事件触发的周期性数据传输;
实时类型3:主要实现等时同步数据的高性能传输,通常用于运动控制系统;
通信连接建立及管理
Profinet的实时协议使用发送器、接收器的通信方式进行数据传输。Profinet设备可同时作为接收器和发送器进行工作。在周期性的实时数据的通信中,数据交换是基于连接的,连接的简历及删除由应用层协议控制;数据的接收器不会对数据包的接收状态向发送器明确回复(此处比较的是TCP协议的确认机制),而仅仅是通过监控时间间隔来考察数据接收情况。此外,Profinet实时协议不支持数据的分段及重组,以及长度超过以太网标准数据包长度(包含所有协议首部)的传输。
当发起者(如Profinet控制器)收到要建立的连接方面的信息时,这些信息可能来自于工程设计系统,也可能来自于保存的组态数据,它利用这些数据自动尝试与响应者建立连接。在成功建立连接之后,发送器向接收器传输实时的生产数据或者IO数据。与此相反,发送者也可提供删除连接的触发,如上位操作终端或设计系统删除连接。
发起者可以将发送器和接收器组合在同一设备中,其回路的监控是通过实时协议的数据安全性、发送器和接收器的高层协议和特殊的监控机制来实现的。
实时同步机制
等时同步实现机制及关键技术
Profinet的IRT协议主要为运动控制等硬实时系统提供解决方案。它通过使用时分多路复用协议及特殊通信ASIC(专用集成电路),确保在网络过载或者网路拓扑动态变化时的通信质量。此外,IRT需要确定的网络组态,即通信前应规划网络拓扑、源/目的节点、通信数据量、连接路径属性等。
IRT的一个传输周期主要由IRT通道和开放通道组成,硬件ASIC会对IRT周期定时进行监视。IRT通道用于传输等时同步的周期性实时帧,开发通道用于传输非同步实时帧(RT)和非实时帧(NRT)。
IRT通道传输IRT帧的时间由站点数及周期数据量决定,无严苛时间要求的帧有ASIC缓冲,并在开放通道有效时RT通信时段传送。开放通道的RT通信时段有效是传送RT帧以及由IEEE802Q分配了优先级的非实时帧(NRT帧),其中RT帧包括周期实时数据RTC和非周期实时数据RTA。标准通信时段内仅能传送NRT帧,且该时段应足够大,以保证至少一个具有最大长度的以太网帧能够得到完成传输,但其传输任务应在传输周期结束的时候终止。
IRT帧是基于同步的通信,其传输的确定性由帧类型标识符(Frame ID)以及网络类型来保证。与实时帧不同,它不使用VLAN标签分配优先级,帧结构如下: