1、基本概念

POWERLINK协议满足以太网IEEE802.3标准,该协议提供了所有标准的以太网功能特点包括交叉通信和热热插拔,允许网络以任意方式进行拓扑。网络中指定的PLC/PC作为管理节点(MN),该管理节点周期性调度并根据此来同步网络上的所有节点,并控制周期性数据通信。其他所有运行设备称为受控节点(CN),一个POWERLINK周期分为3个部分:

①在开始阶段,MN发送循环启动SoC帧给网络中的CN,以同步网络中的所有设备,抖动大概为20ns(纳秒)。

②循环阶段,周期性同步数据交换,同时使用多路复用技术来优化带宽。

③异步启动信号SoA,用于传输大容量,非时间苛刻的数据包。

POWERLINK分为实时和非实时域,由于异步阶段的数据传输支持标准的IP帧,路由器将数据与实时域安全隔离开。

2、详细资料提供网址:

3、系统的通信架构

支持集中控制和分布式控制;集中控制和分布式控制性能没有明显的区别。

4、主站实现

POWERLINK是开源免费的,基于标准以太网硬件。

5、潜在的成本需求

POWERLNK没有特殊的需求,外部设备为标准的HUB或交换机,内部为标准的HUB(集线器),有源HUB对信号有放大作用。支持热插拔,允许网络在带电状态下相互交换设备。

7、POWERLINK协议层划分

①普通以太网OSI (开放式系统互联参考模型) 模型:从上至下一次为:应用层/表示层/绘画层/传输层/网络层/数据链路层/物理层

②POWERLINK分为三层:应用层/数据链路层/物理层

物理层:遵循IEEE802.3快速以太网标准。

数据链路层:主要功能构建解析数据帧/对数据帧定界/网络同步/数据收发顺序控制/实时通信的传输控制。

POWERLINK的通信机制有2种

①请求应答模式

②定时主动上报模式(PRC)

POWERLINK一共有5种数据帧格式:SoC/Preq/Pres/SoA/AsyncData;一个完整的周期包含同步和异步俩个阶段;SoC到SoA为同步阶段;SoA到AsyncData为异步阶段;

SoC是同步信号,每一个循环周期开始主站都会广播一个SoC信号,实现时钟同步和动作同步。

SoA是异步信号,包含请求那个从站的上报数据,AsyncData包含从站上报的数据,但是每个周期只能有一个从站上报异步数据。

应用层:POWERLINK应用层遵循CANopen协议,为应用程序提供了同意的接口,使得不同设备与应用程序之间有统一的访问接口,CANopen协议有三个主要的部分:

PDO:过程数据对象,可以理解为需要周期性/实时传输的数据(在传统的CANopen协议中最大可以传输8字节,在POWERLINK协议中可以最大传输1490字节);

SDO:服务数据对象,可以理解为非周期性传输/实时性要求不高的数据;

OD:对象字典:是很多对象的集合,而对象可以理解为参数;假设一个设备有很多参数,CANopen通过给每个参数编号来区分,即索引,它的寻址方式是按编号寻址,不像TCP按IP寻址。

数据如何传输需要的关键2个参数:

在CANopen协议中数据传输需要俩个参数:

网络参数:将数据发送到那个站或者接收来自那个站的数据

映射参数:决定如何组成需要发送的数据包或者如何解析接收到的数据包。

不论接收还是发送,网络参数和映射参数必须是成对的:0x1800和0x1A00是对应的,依此类推,0x1801和0x1A01是一对。

网络参数

映射参数

数量

接收

0x1400~0x14fe

0x1600~0x16fe

发送

0x1800~0x18fe

0x1A00~0x1Afe

POWERLINK性能及特点:

支持240个节点,每个节点支持1500Bytes输入输出

循环周期:100us(高性能CPU或者高性能FPGA)

200us(低性能CPU或者低性能FPGA)

抖动:小于1us,实际循环周期中最大值与最小值的差值;

POWERLINKMAC寻址遵循IEEE802.3,每个设备的地址都是唯一的,我们称之为节点ID;

实时域和非实时域一般使用网关隔离开;

9、在vxworks下移植POWERLINK大概需要做的工作:

在vxworks下使用powerlink需要做哪些工作,以及可行性

1、VXWORSK下Shelltasks的有限级为1,最高优先级,需要将其优先级降低,防止shell输入比较长的指令会影响协议栈的运行。

2、初始化高精度时钟,powerlink需要时钟精度为us级别,vxworks系统时钟目前是ms级别;

3、绑定openpowerlink协议栈与vxworks协议栈,初始化协议栈的哥哥模块;

4、设置CDC文件名,主要在自动配置对象时用。

5、初始化应用;

6、软件复位操作;

10、Powerlink协议工作机制:

(1)等时同步阶段

①Preq/Pres请求应答模式

Powerlink收发数据是由主站控制,对于一个主站MN,和n和从站CN的网络结构来说,主站发送Soc(绝对时间和相对时间)帧广播到整个网络,从站收到主站的Soc帧之后进入等时同步阶段,主站发送给第一个节点Preq(以太网单播帧)帧,该节点收到主站发来的Preq帧后就会上报一个Pres(以太网多播帧),从站回复的帧是广播的,帧头有mac地址,所有主从站都可以收到,然后各站根据自己的对象字典得到自己的数据。也就是说,每次从站回复主站时只发一帧,这帧包含了给主站和其它从站的数据,所有站都能收到该帧,取不取数据要看各站自己的对象字典;当主站收到该从站的pres帧后,完成了一次信息交互;接下来主站与第二个等时同步从节点进行相同的信息交互,直到所有节点交互完毕,为一个周期。

Preq/Pres模式时间以及周期的计算:100M/s的网络,传输速率为12.5Bytes/us,完成一个从站所需要的时间为T1 = Tpreq+Tgap+Tpres;

Tpreq:主站发送给从站preq帧数据的时间;

Tpres:从站发送给主站pres帧数据的时间;

Tgap:Tpreq和Tpres帧之间的间隙约为2us;

一帧数据的最大长度为1490Bytes,最大的时间Tpreq = 120us;Tpres = 120us;

Tgap = 2us;总的时间T1 = 242us

如果当同时和相同的50个设备已最大数据帧通信的话周期为242*50 = 12.1ms

②PollResponse Chaining(PRC)模式

 

PRC模式省去了主站的Preq数据帧,取而代之的是主站发送PresMN给所有从站,该帧包含主站周期性上报的PDO数据,同时该帧也是一个时间参考点,支持PRC模式CN发送数据的时间参考点,从站从接收完PresMN开始计时触发发送数据帧pres帧;主站MN配置PRC模式的CN,使得CN在特定的时间点发送数据,这个时间点由主站根据网络的配置情况、网络延迟计算出来并配置给CN。3个从站主站可以配置CN1在收到PresMN的第5us上传Pres帧数据,CN2在收到PresMN的第15us上传Pres数据,CN3在收到PresMN的第25us上传Pres数据,这样避免了冲突。

PRC模式时间周期的计算:

T1 = Tpres+Tgap

Tpres:从站发送给主站pres帧数据的时间;

Tgap:Tpreq和Tpres帧之间的间隙约为2us;

一帧数据的最大长度为1490Bytes,最大的时间Tpres = 120us;

Tgap = 2us;总的时间T1 = 122us

如果当同时和相同的50个设备已最大数据帧通信的话周期为122*50 = 6.1ms

从站采用PRC模式还是preq/pres模式是由主机配置的,每一个从站只能采用这俩种模式中的一种,但是不同的从站可以这俩种模式的任意一种。

③系统中不同周期设备处理

一个系统中既有100ms的周期,也有200ms的周期,以及1s的周期,此时介意将主站系统周期设置200ms,通过多路复用机制来解决其他周期的通信问题。

(2)异步阶段

每个周期只能有一个节点发送异步报文,如果有多个节点需要发送异步报文就需要排队,在MN中存在一个队列调度异步数据的发送权。当CN需要发送一个异步帧的时候,则通过pres帧或者Statues Response帧通知MN,MN的异步调度器决定异步帧发送的权限在那个周期被允许,保证发送请求不会被延迟不确定的时间长度

(3)空闲阶段

空闲阶段是在异步阶段终点和下一周期的起点之间剩余的时间间隔。

11、POWERLINK与TCP、UDP的区别

(1)异步数据在网络繁忙时数据发送的确定性

POWERLINK网络所有节点通信周期与收发数据的时间具有确定性,而TCP/UDP在网络繁忙的时候传输时间是不确定的。这主要基于POWERLINK协议有专管理受控节点CN数据发送的队列,具有优先级,当CN节点告诉MN节点需要进行发送异步数据的时候,MN节点会确切的告诉CN节点在哪个周期进行发送数据,而不会让CN节点无限期的等待MN发来的数据发送的权限。

(2)实时域和非实时域隔离

POWERLINK的实时域即周期性传输的数据与非实时域(异步数据)是分离开的,保证了实时数据的实时性。

(3)收发数据具有统一的管理MN(主站)

所有CN(受控节点即除主站外的所有从站)收发数据都是受MN来控制在管理的,相互间收发数据不会出现网络冲突的现象。

(4)寻址方式的不同

TCP/UDP是依靠IP(网络地址)寻址,而POWERLINK是通过自身编号寻址,该编号由MN(主站)统一管理分配。

(5)发送机制的区别

对于TCP来说如果发送失败会进行重发,但是POWERLINK没有重发机制,在本周起发送出去没有得到目标对象的回应,本周期不会重发,而会在下一周期重新发送。

(6)周期的精确性

POWERLINK最小可以实现200us左右的周期,POWERLINK的周期会随着CN节点的增加和减少而变化(在受控节点相当多的情况下,访问所有节点加起来的时间大于设定的MN的周期,不过一般不会出现);

POWERLNK协议笔记相关推荐

  1. 趣谈网络协议笔记-二(第十九讲)

    趣谈网络协议笔记-二(第十九讲) HttpDNS:网络世界的地址簿也会指错路 自勉 勿谓言之不预也 -- 向为祖国牺牲的先烈致敬! 引用 dns缓存刷新时间是多久?dns本地缓存时间介绍 - 东大网管 ...

  2. 趣谈网络协议笔记-二(第十八讲)

    趣谈网络协议笔记-二(第十八讲) DNS协议:网络世界的地址簿 自勉 勿谓言之不预也 -- 向为祖国牺牲的先烈致敬! 正文 DNS用于域名解析,但也不仅仅是用于域名解析,不仅仅是将域名转换成IP. 在 ...

  3. 趣谈网络协议笔记-二(第十七讲)

    趣谈网络协议笔记-二(第十七讲) P2P协议:我下小电影,99%急死你 自勉 逃离舒适区! 正文 一. P2P协议 整个篇章讲的就是这两个协议之间的区别.P2P协议就是迅雷下载数据时所用的协议, 众所 ...

  4. 趣谈网络协议笔记-二(第十六讲上)

    趣谈网络协议笔记-二(第十六讲上) 流媒体协议:如何在直播里看到美女帅哥? 自勉 给岁月以文明,而不是给文明以岁月!--<三体> 在触不到的獠牙上点火--就像不必仰望那星星就能够解决--就 ...

  5. 趣谈网络协议笔记-二(第十三讲)

    趣谈网络协议笔记-二(第十三讲) 套接字Socket:Talk is cheap, show me the code 前言 这只是笔记,是为了整理刘超大神的极客时间专栏的只是而存在的! 经常会在网络上 ...

  6. 趣谈网络协议笔记-二(第十二讲)

    趣谈网络协议笔记-二(第十二讲) TCP协议(下):西行必定多妖孽,恒心智慧消磨难 前言 哈哈哈,越当我看刘超的通俗讲解,我就越感觉自己的无能.每次当我看了讲解之后,每次当我感觉到这个东西原来是这么简 ...

  7. 趣谈网络协议笔记-二(第十一讲)

    趣谈网络协议笔记-二(第十一讲) TCP协议(上):因性恶而复杂,先恶后善反轻松 自勉 我似乎天性不擅长争斗,但是有些时候,我也必须砥砺前行. 强大是和平的前提,而善良不是. 前言 今天回到家里已经是 ...

  8. 趣谈网络协议笔记-二(第十讲)

    趣谈网络协议笔记-二(第十讲) UDP协议:因性善而简单,难免碰到"城会玩" 自勉 如果手上没有剑,我就无法保护你.如果我一直握着剑,我就无法抱紧你.--<Bleach> ...

  9. 趣谈网络协议笔记-二(第七,八,九讲)

    趣谈网络协议笔记-二(第七,八,九讲) 勉励 人生而自由,却无往不在枷锁(牢笼)之中. ------卢梭@<社会契约论> 为那些有形的牢笼感到庆幸吧. 为自己出生于这个时代感到庆幸吧,因为 ...

最新文章

  1. 学习 spring-boot (一)
  2. composer报错:received xxx bytes out of the 以及composer手动引入扩展包
  3. libsvm java下载_java-libsvm 版 结合已有数据集的demo,方便初学者使用 Develop 238万源代码下载- www.pudn.com...
  4. 会议交流 | CNCC2021中国计算机大会 —— 知识图谱赋能数字化转型论坛
  5. 阿里云弹性计算负责人蒋林泉:亿级场景驱动的技术自研之路 | 问底中国 IT 技术演变...
  6. 使用mysql悲观锁解决并发问题
  7. ubuntu14.04安装tensorflow-gpu
  8. MySQL中的LIMIT 关键字
  9. [贴图]博客园T恤男士版
  10. 计算机更改刷新频率,电脑显示器刷新频率和分辨率怎么修改
  11. 解决dns没问题,能上qq不能上网的问题
  12. 瀚高数据库在Linux上安装,瀚高数据库和postgresql并存,安装瀚高数据库问题的一种解决方案(APP)...
  13. [Jenkins] docker-slim 容器瘦身的使用
  14. win10 锁屏界面自动更换壁纸的办法,亲测有效
  15. 面对电车难题,自动驾驶会怎么选?
  16. 阿里云python自测答案_阿里云技能测试python初级中级高级
  17. 2021年起重机司机(限桥式起重机)免费试题及起重机司机(限桥式起重机)试题及解析
  18. excel表格保护单元格教程加破解(忘记密码情况下破解)
  19. 手机拍照即可翻译识别文字,一键轻松搞定
  20. DDR3 DDR4信号组 和原理图设计指南

热门文章

  1. 双旗科技亮相2010年上海国际数字标牌展
  2. android数字标牌,【Android开放性优势突出,携手数字标牌正当时】PjTime.COM数字告示系统 市场观察...
  3. java socks EOFException异常解决
  4. python2的socks5代理 文件上传
  5. FFT原理(基2DIT-FFT)及C语言编程思路及实现
  6. 【NC】NC6系列金额计算处理逻辑剖析
  7. 《乐队的夏天》很酷?程序员式的摇滚才燃爆了!
  8. 开发指南:BUMO 智能合约 Java 开发指南
  9. 文本处理--中文分词
  10. 自己架设的传奇怎么设置GM号和使用方法