CAN总线负载率原理及计算【转】

A. CAN标准帧格式

B.CAN扩展帧格式

C.帧间间隔

假设

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:无位填充段 + 帧间间隔

网络负载率算法例子:

网络负载率是 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协议,相同电平持续5位,在下一位要插入1位与前5位反型的电平。

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

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

数据位:8s

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

uint crccale(uchar *bitbuf,uchar len)
{
uint crcreg,nextbit;    //crc计算
// bit crcnext;
uchar i=0;
crcreg=0;
while(i<len)
{
  nextbit=((uint)(bitbuf[i++])) << 14;
  crcreg=nextbit^crcreg;
  crcreg<<=1;
  if(crcreg&0x8000)crcreg^=0x4599;
}   
return (crcreg&0x7fff);
}

CAN总线负载率原理及计算【转】相关推荐

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

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

  2. CAN测量模块总线负载率,你关注了吗?

    一 背景 随着新能源汽车的飞速发展,整车系统日趋复杂,整车性能的可靠性也越来越重要.在车辆测试过程中,为应对更加多样的试验需求,传感器的种类和数量会随着测量种类而增加,由此数据量变得越发庞大,使得海量 ...

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

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

  4. 嵌入式软件调试:任务执行时间与负载率

    嵌入式软件调试:任务执行时间与负载率 1 基本概念及原理 1.1 负载率概念 1.2 时间统计方式 1.3 任务占用统计方式 2 功能函数执行时间测试 2.1 绝对执行时 2.2 相对执行时间(任务负 ...

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

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

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

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

  7. 汽车CAN总线硬件电路原理

    根据ISO 11898的定义,物理层被细分成3 个子层,它们分别是物理信令(位编码定时和同步).物理媒体连接(驱动器和接收器特性)和媒体相关接口(总线连接器). 物理信令子层和数据链路层之间的连接是通 ...

  8. php负载均衡原理_Java开发大型互联网架构深入负载均衡原理之方案分析

    引言 负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用性. 负载均衡,英文名称为Load Balan ...

  9. 搞懂分布式技术8:负载均衡原理剖析

    负载均衡的重要性无需多说,今天带来:负载均衡原理的解析. 开头先理解一下所谓的"均衡". 不能狭义地理解为分配给所有实际服务器一样多的工作量,因为多台服务器的承载能力各不相同,这可 ...

  10. 负载均衡原理与实践详解 第三篇 服务器负载均衡的基本概念-网络基础

    负载均衡原理与实践详解 第三篇 服务器负载均衡的基本概念-网络基础 系列文章: 负载均衡详解第一篇:负载均衡的需求 负载均衡详解第二篇:服务器负载均衡的基本概念-网络基础 负载均衡详解第三篇:服务器负 ...

最新文章

  1. EM(期望最大化)算法初步认识
  2. MyEclipse安装SVN插件之超级精简法
  3. 树控件单击获取到的节点信息不是当前选中的节点_常用基本控件测试用例(一)...
  4. sql创建计算机用户,2015年计算机四级数据库复习要点:SQL Server 登录账户
  5. Robot Framework 使用1-环境配置及简单网站兼容性测试(转)
  6. mongoose 在数组中添加数据
  7. TensorFlow相关工具
  8. EasyUI Combobox 设置默认值
  9. 一些看起来有用但没用过的函数
  10. 树的叶子结点与完全二叉树结点计算方法
  11. 高新兴中标4.61亿智慧城市PPP项目
  12. mysql 枚举索引_MySQL 索引总结
  13. 阿里云新优惠活动,幸运券免费领取
  14. 强哥说Java--Java接口
  15. (Java) 实现打印菱形图案
  16. Vue入门练习:小王记事本
  17. linux与 win上装pyhive
  18. Java调用命令行+java生成词云
  19. mac安装WireShark2.0新手教程
  20. 2022年团体程序设计天梯赛C++个人题解附带解题思路

热门文章

  1. vivado版本升级导致的IP锁定的更新解决办法
  2. html 怎么调用本地字体,CSS引入本地字体与在线字体
  3. Android 实现最新QQ登陆页面
  4. fly bird用java怎么写,java-flybird_wang-51CTO博客
  5. crazy programer
  6. intouch负值显示0_intouch的若干个经典问题解答
  7. Charles中文破解版下载安装及使用教程(附带免费下载链接)
  8. 【重要通知】结构设计新班开课——本轮主讲电动牙刷产品结构设计
  9. android屏幕尺寸像素详解
  10. STM32_编程入门