实时表示系统在一个确定时间内处理外部事件。确定性意味着系统具有一个可预知的响应。实时通信的一般要求:
确定性的响应;
标准应用的响应时间<=5ms;
以太网实时通信应对设备处理器造成小的负担,因此处理器的主要任务是处理用户程序而不是通讯翻译的工作,同时应减量减少通讯时间。图1表明了哪些因素影响通讯周期。
实现通信的一种方式使用标准通信协议,例如TCP/IP或者UDP/IP等,然而使用它们会带来缺点:帧过载会增加帧的长度,因而会引起线路上传输时间的增加见图2。此外,对应的通信栈需要占用处理器相对长一点的计算时间,因而会导致发送周期增加。
通过对发送器和接收器的通讯栈的优化,可以使更新率有相当大的改观,而且处理器负载也会相应减少。然而,对通信栈的运行时间的优化也就意味着此时的TCP/IP通讯栈不再是一种标准协议,而只是一种专门的实现方式了,对UDP/IP实现的使用也是同样。
然而第三层和第四层的协议只是适合部分的周期交换数据,对于这种应用,建议使用遵照ieee802.3制定优化第二层协议。这是唯一的局限就是:由于没有使用第三层协议,所以就会失去路由功能。但是作为工业一级以太网设计中尽量不要设计路由器,因为这会大大降低通信速度。
例如profinet就使用了优化的通信通道进行实时通信,因此保证了一个网络中不同站点之间在一个极短的时间段内进行时间要求苛刻的数据传输。
通过软件方案或者使用特殊的硬件,可以在传统的以太网控制器上实现实时通信通道。该通道基于ISO/OSI参考模型的第二层见表1。此处数据包的寻址不是通过IP地址来实现的,而是使用接受设备的MAC地址。实时通信允许精确限定(预测)传输时间,并能保证其它标准协议TCP/IP可以在同一个网络上使用而不会产生问题。
层 |
任务 |
标准通信 |
实时通信 |
7 |
处理 |
DCOM/RPC |
- |
6 |
表示 |
- |
- |
5 |
通讯 |
套结字接口 |
- |
4 |
传输 |
传输控制协议TCP/用户数据报文协议UDP |
- |
3 |
网络 |
网际协议IP |
- |
2 |
数据链路 |
以太网驱动 |
实时协议/等时同步实时协议 |
1 |
比特传输 |
以太网网络适配器 |
以太网网络适配器 |
实时协议保证了周期数据和事件控制消息(警报)的高性能传输。它分为三种类型见图3
实时类型1:适合周期数据传输;对所有使用的交换机没有特殊要求。
实时类型2:适合中断数据和周期数据传输,此时需要工业交换机,然而,在组态的时候还不需要对通信进行规划。
实时类型3:适合运动控制应用的周期数据传输。这个时候需要工业交换机,而且还需要对通信进行明确的规划。
在没有实时性需求的数据,可以在标准的通道上传输见表2
标准通道 |
标准数据 |
设备参数化 |
|
诊断数据读取 |
|
互联数据加载 |
|
非周期数据交换 |
|
传输用户数据的通信通道的协商 |
|
实时通道 |
-实时类型1、2 |
用户数据高性能传输 |
|
周期数据交换 |
|
通过事件控制的数据交换 |
|
-实时类型3 |
|
高性能数据传输 |
|
等时同步数据 |
|
抖动时间<1uS |