CANopen网络参数的优化案例.doc 点击:1272 | 回复:3



Sysray

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 39回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-06-16 22:40:43
楼主
CANopen网络参数的
影响因素和优化
Premium 和 Micro网络系统连接指导案例


目录

CANopen总线的特点
总线负载影响因素
比特率
单位时间内发送的PDO的数量
用户数据长度
传输类型的选择
总线传输的SDO数量
同步间隔
故障监控类型
物理总线的传输质量
网络参数优化的一些建议
Schneider产品的网络参数配置介绍


总线网络的特性
控制数据的传输 CANopen总线上的设备可以在任何时间发送自己的数据而无需等待数据请求,
the data transmission on a CANopen bus characteristically consists of phases of intensive
telegram traffic followed by large and small pauses inbetween. 在错误发生之前必须能够识别出可能发生的数据冲突,根据这个规则,一个设备在发送数据的时候,其他设备必须等待总线空闲才可以发送数据。这样的话,所有的设备都可以保证没有冲突的发送数据。优点显而易见:任何设备的报文无需经过主站邀请即可发送。既然任何设备都可以毫无冲突的在任意时间通过总线发送自己的数据,那么就节约了时间。可是,当一个设备在发送数据的时候,其他的设备或许永远不会获得机会去发送自己的数据。这样会引起总线数据阻塞,这只能够通过减少总线数据报文来解决。
这种情况类似于大街上的交通。车主在被允许的情况下才可以使用车辆。在交叉路口处,通过降低优先权来避免交通冲突。如果车流量增加,那些想从旁路进入主路的车辆必须减速等待,直到交通堵塞消失。
总线的负载可以通过选择适当的网络参数来优化。下面的章节将描述总线负载影响因素,和如何设定一些关键参数的建议。
CAN报文传输负载 为了对总线负载进行估计,要了解CAN报文的运行情况。依据位的比特率和PDU的长度,可以推算出下面的最大负载值:(ms)
Bit rate User data (PDU-Length)
【kBit/s】 0 1 2 3 4 5 6 7 8
50 1.09 1.28 1.47 1.66 1.86 2.05 2.24 2.34 2.62
125 0.44 0.51 0.59 0.67 0.74 0.82 0.90 0.79 1.05
250 0.22 0.26 0.29 0.33 0.37 0.41 0.45 0.49 0.52
500 0.11 0.13 0.15 0.17 0.19 0.21 0.22 0.24 0.26
1000 0.05 0.06 0.07 0.08 0.09 0.10 0.11 0.12 0.13
总线负载影响因素
一般陈述

总线负载影响因素有以下一些:
• 比特率
• 每次发送PDO的多少
• 用户数据报文的总数
• 远程请求的多少
• 发送的SDO的多少
• 同步时间间隔
• 故障监控方式(节点监控vs心跳检查)
• 传输质量和物理总线


比特率
介绍


比特率(传送速率)对总线负载有着直接影响。增加一倍的数据传送速率将会减少总线运行传送时间50%,总线负载也会降低50%(二者并非线性关系)。但是,用户不能任意选择传送比特率,因为它还受到电缆的类型和它的长度限制。
电缆类型 Schneider Electric 提供以下类型的电缆:
• TSXCANCAxxx (CE 认证,为欧洲市场设计)
• TSXCANCBxxx (UL 认证,为美国市场设计)
• TSXCANCDxxx (为重载设计,例如:拖链系统)
Signal 信号 Colour 颜色 Diameter 直径
CAN_H white 0.25 mm² (AWG24)
CAN_L blue 0.25 mm² (AWG24)
CAN_GND, V+ black 0.34 mm² (AWG22)
V+ red 0.34 mm² (AWG22)

电缆最大长度 下面列举了上述电缆长度和比特率的关系:
比特率 【kBit/s】 1000 800 500 250 125 50 20 10
最大长度 20 m 40 m 100m 250m 500m 1000m 2500m 5000m
CANopen手册经常提到在1Mbit/s的情况下通信距离可以达到40米。实际上,这个数据没有把总线与设备的接口的电气绝缘考虑进去。施耐德的标准电缆产品考虑了这一点,理论计算出来的最大距离为4米。
现场实际测试表明:如果没有支路和其他不良影响,在1Mbit/s的情况下通信距离可以达到20米。
最大支线电缆长度 CANopen网络允许支线连接结构。这要通过挂在主线上的分支器(TAP)来连接。下面列举了TAP在总线上分布的最小间距:
Bit rate 【kBit/s】 1000 800 500 250 125 50 20 10
分支长度 0.3 m 3 m 5 m 5 m 5 m 60 m 150 m 300 m
每个TAP上分支总长度 0.6 m 6 m 10 m 10 m 10 m 120 m 300 m 600 m
TAP最小间距* 3.6 m 6 m 6 m 6 m 72 m 180 m 360 m
总长度 1.5 m 15 m 30 m 60 m 120m 300m 750m 1500m
* 可以通过每个TAP上分支总长来计算得到:TAP最小间距= 60% ×每个TAP上分支总长度
单位时间内发送的PDO的数量
单位时间内发送的PDO数量取决于以下因素:
• 总线上配置的PDO的总数量
• 每个PDO发送的频率(取决于传输类型)
总线上配置的PDO数量是所有总线上设备的TPDO和RPDO的数量总和。每个设备发送PDO的触发器取决于传输类型,传输类型决定了传输的频率。
这两个因素决定了总线负载的大小,但是要综合考虑。恰当的数值可以使得总线性能得到最大优化。
一个模拟量数值(PDO为2byte)每5ms通过250Kbit/s的速率传送将会产生5.8%(200×0.29/10)的总线负载。更敏感的数值(如:温度或者水位测量)100ms传输一次仅增加0.29%(10×0.29/10)的总线负载。

用户数据长度
CAN的报文包含8byte的用户数据(PDU=过程数据单元)与44bit的报头。实际的负载数据在上述“CAN报文传输负载”表格中列出。
表中数据表明:8byte的PDO用户数据引起的总线负载仅仅是2byte的PDO用户数据引起总线负载的2倍。CANopen具有PDO数据主导取代设备主导的优点在这里清楚的显示出来,这一特点在减轻总线负载上有着积极作用。
数据主导的意思是:摈弃了在单个报文中一下子传输所有的设备数据的方式(如Profibus方式),而是把设备数据分成几个PDO甚至是PDO的子数据,这些PDO可以以不同的速率或者频率发送。
传输类型的选择
一般陈述 传输类型(TT)定义了CANopen设备何时可以发送它的数据。传输类型可以是同步的(synchronous)、当数据改变后(after data change)、或者远程请求时(remote request)、自定义的传输类型(user-specified)等,本文不考虑自定义的传输类型。
• 同步传输(synchronous):CANopen总线设备仅仅当接收到一个或者多个同步报文以后才发送。
• 数据改变后传输(after data change):当PDO的数据区有某一个位bit改变时,设备开始发送数据。该传输类型还有其他参数:抑制时间,事件触发时间。这些参数定义了



guoxiao1292

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:31
  • 注册:2008年3月26日
发表于:2010-01-25 16:17:43
1楼

谢谢了,一直想弄明白这个同步传输,终于有点明白了。

我想问一下,是否应用同步传输方式是由设备厂家的EDS文件里PDO的传输方式决定的吗?

ye_w

  • 精华:21帖
  • 求助:1帖
  • 帖子:69帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2010-07-30 09:07:32
2楼
PDO的传输方式,自己组态,有0~255的选择。

请你吃饭

  • 精华:0帖
  • 求助:3帖
  • 帖子:3帖 | 29回
  • 年度积分:0
  • 历史总积分:109
  • 注册:2010年5月17日
发表于:2011-01-20 14:16:50
3楼

很好很强大。。。。。。


热门招聘
相关主题

官方公众号

智造工程师