0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CAN总线负载率必需小于30%吗_can总线负载率如何计算

h1654155282.3538 来源:网络整理 2018-05-07 16:34 次阅读

CAN总线负载率只是一个宏观的参数,已经不能充分的评估总线的有效性和可扩展性。一般业内的对负载率的定义为实际数据传输速率和理论上能达到的数据传输速率的比值,本文主要介绍了can总线负载率如何计算及CAN总线负载率必需小于30%问题的解答,具体的跟随小编一起来了解一下。

CAN总线负载率必需小于30%吗

CAN总线负载率不一定要小于30%,因为12年的时候菲亚特已经可以做到70%的负载率下仍然能够保证正常通讯,所以这个30%只是最佳选择。

负载率越高,代表需要发送的数据越多,相对来说低优先级节点发生通讯延迟的概率越大。

根据实验表明,负载率在30%的情况下,优先级高节点的平均报文传输时间和理论传输时间相差无几;而优先级低的存在20%左右的延时;当负载率达到60%的情况下,优先级最高的节点都有至少25%的延时,优先级最低的延时达到了4倍,根本无法满足实时性;当总线的平均利用率达到70%以上时,总线的通信将用可能出现拥堵的现象,极端的情况下将有可能造成错误帧的出现。

因此,负载率当然是越低越好,越能保证实时性,但是负载率太低就无法传输足够的数据,这是CAN的一个问题,在数据量大的时候无法保证实时性。一般的说法是30%左右的负载率是最好的。

CAN总线负载的原理及计算

A. CAN标准帧格式

CAN总线负载率必需小于30%吗_can总线负载率如何计算

B.CAN扩展帧格式

CAN总线负载率必需小于30%吗_can总线负载率如何计算

C.帧间间隔

CAN总线负载率必需小于30%吗_can总线负载率如何计算

假设

Ui:各个信息帧占用总线百分比

L:为报文的总长度

C:为报文的总线占用时间

N:为填充的位数

t:为毛速率 ( 亦称波特率 )下的位时间

则有:

L = N + 8d + g + 13

C = L * t

Ui = C / T

然而总线负载率是各个信息帧占用总线百分比之和。

U = U1 + U2 + U3 + 。。。。。

g 为 CAN 报文中控制位的总位数 ( 标准帧 g =34 , 扩展帧 g = 54 )

g的取值是只取位填充部分除去数据段;

13:无位填充段 + 帧间间隔

网络负载率算法例子:

CAN总线负载率必需小于30%吗_can总线负载率如何计算

网络负载率是 1s 内网络总线传输数据所占带宽的百分率。以上图网络矩阵表为例,假设总线速度为500Kbps,网络中有多帧信号,把每个信号帧所占的负载率算出来,相加即得到总的网络负载率。FBCM_1/FBCM_2这两帧的所占的负载率算法如下:

负载率1 = (1000ms / 20ms) * 111 / 500000 = 0.0111 = 1.11%

负载率2 = (1000ms / 10ms) * 111 / 500000 = 0.0222 = 2.22%

公式中111为 8字节的数据帧在不考虑填充位的情况下的所含位数。

111 = 34 + 13 + (8 byte X 8bit) = 47 + 64

下面我们看 TTCAN中有这么一个公式:

CAN总线负载率必需小于30%吗_can总线负载率如何计算

按照CAN协议,相同电平持续5位,在下一位要插入1位与前5位反型的电平。

可知:(34 + 8s)/5 得到的填充位数,所以对于一帧完整的位数,我们可以假设包含上间隔位,

则:填充位:(34 + 8s)/5

数据位:8s

报文格式位:34 + 10 + 3 = 47

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CAN总线
    +关注

    关注

    145

    文章

    1936

    浏览量

    130620
  • 负载率
    +关注

    关注

    1

    文章

    4

    浏览量

    2898
收藏 人收藏

    评论

    相关推荐

    什么是CAN总线负载率

    CAN总线网络里,还有一个经常被大家提起的概念-总线负载率负载率,顾名思义,就是指这段时间内总线
    的头像 发表于 08-26 17:07 7665次阅读
    什么是<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>负载率</b>

    如何降低CAN总线负载

    ,如果总线负载过高,那么一个优先级相对较低的节点需要发送报文时,会出现频繁的仲裁失败而导致发送延迟。因此,为了保证低优先级报文传输延迟在可接受的范围内,总线负载率不应超过
    发表于 12-19 15:09

    CAN卡如何获取CAN总线负载率

    NI的CAN卡如何获取CAN总线负载率?不是在max里的那个。
    发表于 04-16 16:55

    你的电机负载率用对了吗?

    电机能效管理的必要性电机负载率与能效的关系智能电机负载率计算方法智能电机负载率能效匹配原则智能电机负载率匹配意义
    发表于 03-18 06:45

    CAN总线的基本工作原理是什么?优势是什么?

    CAN总线的基本工作原理是什么?CAN总线工作流程是怎样的?CAN总线的优势是什么?如何
    发表于 12-27 07:39

    时间分析软件Symtavision使CAN总线负载率达到70%

    随着汽车电子系统中ECU数量的增加,需要通过CAN总线通信的数据量也急剧增加,根据以往的工程经验,总线负载率超过30%就会造成报文延时的概率
    发表于 11-27 10:52 3次下载
    时间分析软件Symtavision使<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>负载率</b>达到70%

    什么是ECU?总线负载率对传输稳定性影响分析

    CAN总线本质上还是半双工通讯,就是“单行道”,即一个节点发送的时候其他节点无法发送数据。虽然CAN报文ID有优先级的区分,但如果高优先级一直占用总线,导致低优先级的节点就无法发出数据
    的头像 发表于 04-25 11:47 5937次阅读

    CAN总线计算器实用工具免费下载

    根据CAN通讯矩阵,计算总线负载率,其中预设有250、500波特率的计算,只需选择波特率,然后将CAN
    发表于 11-20 08:00 20次下载

    什么是CAN总线负载率CAN总线负载率最大支持多少?

    景区负载率是一个在空间上定义的概念,它说明了在空间上资源的被使用情况,而总线负载率则不然,其是在时间上定义的一个概念,说明了在时间上资源被使用的情况。
    发表于 12-23 11:29 7542次阅读

    干货分享 | TSMaster小功能之总线负载率如何在图形里绘制曲线

    上com.enable_bus_statistics(true),其作用是启用总线统计计时器以计算总线统计。步骤二运行C脚本后,在系统变量-内部变量就可以找到当前总线
    的头像 发表于 06-09 10:22 863次阅读
    干货分享 | TSMaster小功能之<b class='flag-5'>总线</b><b class='flag-5'>负载率</b>如何在图形里绘制曲线

    5分钟学会CAN/CANFD总线负载率计算

    CAN BUS的总线负载率CAN总线架构协议设计时的一个重要的指标。一般建议负载率峰值不要高于
    发表于 07-27 16:35 7956次阅读
    5分钟学会<b class='flag-5'>CAN</b>/CANFD<b class='flag-5'>总线</b><b class='flag-5'>负载率</b><b class='flag-5'>计算</b>

    CAN总线负载率怎么估算?

    CAN总线负载率(busload)表征的是单位时间内总线上的位流(bitstream)相对总线带宽的占比。
    发表于 07-27 17:29 1598次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>负载率</b>怎么估算?

    can总线负载率多少合理

    can总线负载率多少合理  CAN总线是一种控制器区域网络,它是用于在不同设备之间进行通信的技术。CAN
    的头像 发表于 09-07 15:05 3805次阅读

    can总线负载率怎么计算

    can总线负载率怎么计算CAN总线是指控制器局域网,是一种实时性能极高的网络协议,广泛应用于
    的头像 发表于 09-07 15:05 5507次阅读

    CAN总线负载率多少合理

    CAN总线应用中,合理的CAN总线负载率是非常重要的,因为在负载率过高的情况下,系统性能可能会
    的头像 发表于 10-12 17:58 1794次阅读