1.总体介绍
Powerlink 是一种基于IEEE802.3的纯软件方案,100%与IEEE802.3以太网保持一致。但是它在不同的层次都有自己的定义,并很好地与IP,TCP,UDP等进行了适当的结合。
在数据链路层(DLL层)作了分时管理的定义,同时在网络层和应用层的限制性的定义。Powerlink的一些应用数据可以使用IP协议进行传输。同时IP数据在异步阶段传输。Powerlink在应用层使用CanOpen协议。
Powerlink定义了自己的路由管理机制,可以完成powerlink网段之间的互连,并可连接到外部网络,有利于用户对网络进行实时监控等。
数据链路层定义
Powerlink在DLL层(数据链路层)有两种工作模式,一是powerlink模式,二是Ethernet模式。模式选择可以在配置时决定。使用ethernet模式,则与以太网的工作方式完全一致。以下主要讲在powerlink下的工作模式。
在以太网的协议基础之上,增加了MN管理者(Managing Node),通过它对网络的控制,把网络的传输过程分成一个个时间段作为网络周期。每一个周期内又分成“同步阶段”和“异步阶段”。两个阶段的开始与结束都是由MN向其它节点发送控制帧(SOC,SOA)来完成的。同步阶段完成一些数据量小,时间要求高的数据传输。异步阶段完成IP,TCP,UDP和数据量大,时间要求不高的数据传输。
Powerlink 周期
Powerlink组网完成之后,MN管理者控制网络周期,每个周期被分成“同步阶段”和“异步阶段”。同上图。在同步阶段,每个周期,powerlink网络采用混合轮询和时间槽,每一个节点CN(Control Node)发送数据的时间,时机都确定,由管理节点MN决定。
同步阶段
POWERLINK网络中有一个MN管理者,它在每一个周期开始时,广播发送SOC帧,每个CN接收到SOC后,进入“同步阶段”。MN发送PREQ(request请求帧)帧,此帧为单播帧。接收到此帧的CN以广播或是组播地方式发送PRES帧(回复帧)。
直接交叉通信
CN通过这种组播的方式向其它的CN传输数据。这样数据不用通过MN节点,这种方式称
为直接交叉通信。直接交叉通信对于安全组件是一个基本的先决条件,好处在于时间被节省,简化了系统,并且减少了控制任务,这使得可以在很多领域使用更经济的控制器。
多路复用
由于不是所有的控制节点需要在每个循环里被轮询,所以可以允许多个节点在不同的周期内使用同一个时间槽。如上图前一周期的cn3和后一个周期的cn5。
异步阶段
CN节点在同步阶段,利用PRES帧的“PR”和“RS ”字段告诉MN节点,在异步阶段待发送数据的优先级和数量。在MN节点中有一个管理机制“Manger Async Scheduler”,由它来决定本周期由哪一个节点在异步阶段传输数据。并在异步阶段的开始帧SOA中使用“RequestedServiceID”和“RequestedServiceTarget”向CN节点们通知本周期要求的是哪一个服务,以及提供服务的CN节点。
DDL数据帧形式
Powerlink数据帧在数据链路层上的形式如上图。Ethernet powerlink数据被嵌入到通用的Ethernet帧中。并使用专门的EtherType值(88ABh)。
同时powerlink内部也有MessageType,Destination,Source等控制字段。其中Destination,Source表示每一个设备的ID,最大为255,由于一些特殊设备占用了一些固定值,一个powerlink网络的最大ID号为240,ID为240的设备为MN节点。1-239为CN节点,255表示广播帧。
帧 | 发送者 | 接收者 | 传输类型 | 作用 |
SOC | MN | 所有CN | 广播 | 通知所有CN,同步阶段开始。 |
Preq | MN | 一CN | 单播 | 通知一CN,要求其回复Pres; 并向其发送应用信息。 |
Pres | CN | MN和一组CN | 组播 | 通知MN,自己的MNT状态。 通知MN,自己在异步阶段的发送请求。 向其它CN,发送应用数据。 |
SOA | MN | 所有CN | 广播 | 告诉CN,同步阶段结束,异步阶段开始。 向所有CN,通知自己的MNT状态。 通知一个CN,它可以在此异步阶段,发送Asnd数据帧。 |
Asnd | CN | 所有节点 | 广播 | CN节点发送应用数据,或是IP,TCP,UDP数据包。 |
网络层定义
在powerlink的异步阶段,对IP层进行了很好的支持,在这里介绍powerlink的应用层是如何使用IP层来传输powerlink数据的。使用IP协议,可以把powerlink的数据转发到工厂的办公网络中,甚至是internet,可以实现对工厂设备的远程控制。
Powerlink的IP地址
一个powerlink网可是通过专用的路由器与其它powerlink网连接起来,但每一个powerlink网络的IP地址的定义都是一样的。使用C类的私有地址192.168.100.x网段,每一个节点的powerlink的ID就是每个节点的IP地址的最低字节。如MN的IP地址一定是192.168.100.240。
子网掩码为255.255.255.0;网关IP为192.168.100.254。
Powerlink数据嵌入UDP
Powerlink在UDP帧中的各个字段的含义与在以太网帧的含义是一样的。
Powerlink Router
Powerlink的路由器可以允许powerlink网间的IP通信,以及powerlink网与以太网之间的IP通信。
Powerlink路由器的核心任务:
诊断、远程维护、监控。
软件下载。
配置网络。
信息安全防护。
SDO通信。
网络地址转换(NAT)。
Powerlink路由器的工作模型。完成powerlink数据形式到ethernet数据形式的转化。
NAT工作模型图