1.1 负载概念
CAN总线的负载率, 就是指总线上所有节点在单位时间内发送的所有数据占整个总线理论带宽的比值,也就是总线实际数据传输速率与理论上能达到的数据传输速率的比值。
提示:比如在一个波特率为500Kbps的总线上,理论上每秒钟能够传输500000个BIT,而如实际上只传输了100000个BIT,那么就可以得到此刻的总线负载率为100000/500000=20%。

CAN BUS的总线负载率是CAN总线架构协议设计时的一个重要的指标。一般建议负载率峰值不要高于80%,平均负载率不要超过50%。当然这只是一般建议,具体根据使用场景和系统设计而定。

负载率的计算公式:

总线负载率=总线每秒上传输的实际bit数量/总线波特率*100%;
总线每秒上传输的实际bit数量 =[该秒内所发送的所有ID1报文的所有BIT总数A1] +…… +[An];
该秒内所发送的所有ID1报文的所有BIT总数A1 = ID1的每一个报文的BIT总数 * ID1的发送次数;

提示:在计算负载前,要理解波特率的概念。假设总线波特率为500kbps,理论上每秒钟能够传输500000个BIT。一般在汽车行业,CAN总线的波特率设置为500kps。

1.2 CAN总线的帧格式
对于CAN标准帧:
假设数据帧长度恒定为8个字节,可以得到每一个数据帧最大长度共计108bit,分别为:帧起始(1bit)、仲裁域(12bit)、控制域(6bit)、数据域(8×8bit)、循环冗余码域(15bit)、1bit分隔符、应答域(2bit)和帧结尾(7bit);

对于 CAN 标准帧计算该秒内所发送的所有报文的所有BIT总数:
例如CAN的一路TX message 是循环发送,是标准帧,循环时间是100 ms,那么他一秒内送的所有报文的所有BIT总数 = 1(sec)/100(ms)*108 = 1080(bit)

对于CAN扩展帧:
假设数据帧长度恒定为8个字节,可以得到每一个数据帧最大长度共计128bit,分别为:帧起始(1bit)、仲裁域(32bit)、控制域(6bit)、数据域(8×8bit)、循环冗余码域(15bit)、1bit分隔符、应答域(2bit)和帧结尾(7bit);

1.3 举例如何根据DBC计算公CAN 的负载率
首先查看关于某一路的 TX 与 RX message,下面的DBC文件的波特率为 500kps【可以通过软件davinci config查看,一般都是500kps】,并且是标准帧 CAN。
TX:

RX:

Mothod是NoMsgSendType的不用管,主要计算方式为 Cyclic 的。计算方式就是通过 1(sec)/time(ms)*108;

计算TX + RX :如上图,Tx+Rx = 29916+14904=44820 bit per second;
计算busload = (TX + RX)/500000=8.964%
CANFD 总线负载率
1.1 CANFD计算帧
对于CANFD其实是类似于CAN的,但是CAN的传输是稳定的,速度一定的,CANFD的传输速率是可变的,仲裁比特率最高1Mbps(与CAN相同),数据比特率最高8Mbps,CAN-FD的传输格式如下图所示。

所以此时如何根据DBC计算他的负载率呢?
首先不能用原本的bit来计算,而要用帧来计算,因为数据传输速率不一定,所以你也不能确定到底传输了多少bit,而根据DBC我们可以知道他的循环周期,知道循环周期,就知道他每个周期传输的数据是一帧,所以如果 cyclic = 40 ms,那么他一秒内传25帧数据。

1.2 举例如何根据DBC计算公CANFD 的负载率
首先查看关于某一路的 TX 与 RX message,下面的DBC文件的 CMD 波特率为 500kps,而数据字段的传输速率为2000kps,并且是标准帧 CAN。
TX:

RX:


Mothod是NoMsgSendType的不用管,主要计算方式为 Cyclic 的。1(sec)/time(ms)=循环次数=发布多少数据帧

计算TX + RX :如上图,Tx+Rx = 25 + 17*35 + 10 +20 =650;

计算波特率为500kps能够发送多少标准数据帧,即 500000 / 108 = 4630
提示:波特率,在信息传输通道中,携带数据信息的信号单元叫码元,单位时间内通过信道传输的码元数称为码元传输速率,简称波特率,比特率指单位时间内通过信道传输的信息量(也称为位传输速率),即单位时间内传送的二进制位数,用来表示有效数据的传输速率,用b/s 、bit/s、比特/秒,读作:比特每秒,比特率在数值上和波特率有这样的关系:

其中I为传信率,S为波特率,N为每个符号承载的信息量,而以比特为单位。计算下来,比特率约等于波特率:

所以负载率是用实际传输的帧(650) / 500波特率下总传输帧(4630) = 14.0389%。

如何根据DBC计算CAN与CANFD的负载率相关推荐

  1. 10kv线路负载率计算_电工必懂计算公式,你若不会,如何立足于电力行业?

    一电力变压器额定视在功率Sn=200KVA,空载损耗Po=0.4KW,额定电流时的短路损耗PK=2.2KW,测得该变压器输出有功功率P2=140KW时,二次则功率因数2=0.8.求变压器此时的负载率b ...

  2. can总线报文是固定的吗_CAN总线负载率的计算方式

    今天这篇文章主要是介绍当前汽车中使用的总线的类型及负载率的计算方式,用于汽车电子工程师学习及应用在日常工作中:当前汽车中常见总线类型是CAN,CAN FD, FlexRay及LIN总线:今天我们先介绍 ...

  3. 记录一下 Java 代码实现文件夹、文件的对比,主要包含 word、pdf、文本、图片等相关文件的对比计算,以及计算文本的相似率(重复率)、筛选出差异的文件、方便文件和文档的去重,并封装为jar包

    记录一下 Java 代码实现文件夹.文件的对比,主要包含 word.pdf.文本.图片等相关文件的对比计算,以及计算文本的相似率(重复率).筛选出差异的文件.方便文件和文档的去重,并把所有的源码封装为 ...

  4. 音频信号 过零率 matlab,MATLAB计算信号短时平均过零率

    MATLAB计算信号短时平均过零率 MATLAB计算信号短时平均过零率 一.原理: 短时平均过零率表示一帧语音中语音信号波形穿过横轴的次数 二.计算过零率代码 clear all; clc; clos ...

  5. 回撤率 python 平台_详解如何使用python计算一只股票的最大回撤率?

    详解如何使用python计算一只股票的最大回撤率? 一.什么是最大回撤率? 最大回撤率:在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值.最大回撤用来描述买入产品后可能出现 ...

  6. 详解如何使用python计算一只股票的最大回撤率?

    详解如何使用python计算一只股票的最大回撤率? 一.什么是最大回撤率? 最大回撤率:在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值.最大回撤用来描述买入产品后可能出现 ...

  7. 用虹科Pico汽车示波器计算CAN总线负载率

    CAN总线负载率是指CAN总线上单位时间内实际传送的位数和可以传送的位数之比,也就是总线实际数据传输速率与理论上能达到的数据传输速率的比值.例如波特率为500kbps的CAN总线理论上每秒钟能够传输5 ...

  8. 网络带宽负载率怎么计算

    网络带宽负载率是衡量网络利用率的重要指标,它可以用以下公式计算: 带宽负载率 = (实际使用带宽 / 总带宽) * 100% 其中,实际使用带宽是指在某一时刻,网络传输的数据量:总带宽是指网络的理论最 ...

  9. 10kv线路负载率计算_10kV配电线路保护的整定计算

    1.10kV配电线路的特点 10kV配电线路结构特点是一致性差,如有的为用户专线,只接带一.二个用户,类似于输电线路:有的呈放射状,几十台甚至上百台变压器T接于同一条线路的各个分支上:有的线路短到几百 ...

  10. MATLAB计算信号短时平均过零率

    一.原理: 短时平均过零率表示一帧语音中语音信号波形穿过横轴的次数 二.计算过零率代码 clear all; clc; close all; filedir=[]; % 设置路径 filename=' ...

最新文章

  1. Linux下root修改密码报错解决方案
  2. 单招计算机应用基础试题及答案,对口单招计算机应用基础模拟试题
  3. css文件修改后没变化 static_Go Web编程使用Go语言创建静态文件服务器
  4. 浅谈流处理算法 (1) – 蓄水池采样
  5. 从阿里云数据库入选Gartner谈数据库的演化
  6. 准备一些万圣节的乐趣——UI设计素材模板
  7. 研磨设计模式--简单工厂
  8. pd虚拟机专用windows系统镜像(m1/intel)「新增:Intel Mac win7专业版懒人包镜像」
  9. 人工智能商用成果落地撬动AI未来
  10. 笔记本电脑建立Wifi热点多种方法
  11. apache 服务器状态查看
  12. ajax方法参数详解,$.ajax()方法参数详解
  13. Git本地文件上传到远程仓库
  14. 教你在MathType中输入空心字和花体字的重要方法
  15. Flume-三大核心组件
  16. 进程与程序的区别与联系
  17. 原生JavaScript类型判断
  18. BZOJ2407:探险/BZOJ4398:福慧双修-最短路+分治
  19. facebook如何搭建网络
  20. matlab实现RBF的相关函数

热门文章

  1. QListView自定义Item
  2. 如何利用网管软件管控网络设备
  3. (2)公众号开发-基础框架搭建
  4. 【3. Redis高级特性】
  5. PFC(Power Factor Correction)功率因数校正电路
  6. c语言仿宋gb2312字体,【仿宋gb2312字体下载】仿宋gb2312字体官方下载 免费版-七喜软件园...
  7. mysql 如何避免间隙锁_Mysql Innodb 间隙锁浅析
  8. Excel·VBA考勤打卡记录数据整理
  9. openlayers6【十三】地图矢量图层 Vector 详解
  10. 沁恒CH582F sleep模式RTC唤醒