CAN总线负载率原理及计算
来源:互联网 发布:群众网络安全保密 编辑:程序博客网 时间:2024/05/21 22:37
转自:http://blog.csdn.net/minyuanxiani/article/details/23535399
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
- CAN总线负载率原理及计算
- CAN总线负载率原理及计算
- CAN总线负载率原理及计算【转】
- CAN总线工作原理
- CAN总线原理
- CAN总线原理
- CAN总线原理
- CAN总线通信原理分析
- CAN总线通信原理分析
- CAN总线协议原理特点
- Linux Socket CAN驱动-CAN总线原理
- Linux Socket CAN驱动-CAN总线原理
- Linux Socket CAN驱动-CAN总线原理
- CAN总线波特率计算及设置方法(STM32,SJA1000,LPC2292)
- CAN总线概况与原理(转)
- TJA1050T CAN总线通信硬件原理
- 高速CAN总线 负载阻抗匹配方法的介绍
- CAN总线
- java集合精解
- Oracle 批量插入数据
- Java web 中请求路径的问题
- 最详细的Windows版本搭建安装React Native环境配置
- 20万保价合同只赔4万,顺丰这是要耍无赖么?
- CAN总线负载率原理及计算
- Linux的opencv教程之安装与配置+cmake编译
- Intellij IDEA 报错java.lang.NoClassDefFoundError
- sql2017111705
- markdown语法教学(for萌新版)
- 仿写各种字符串操作函数
- 10. 计算WPL
- Objective-C Category 的实现原理
- Scala元组和映射