CAN总线负载率计算

2024-12-15 21:10:41
推荐回答(3个)
回答1:

  1. 根据波特率计算10 ms总共可以发送多少 bit:

    1s=1000ms;

    (250000 bit/1000 ms)*10 ms=2500 bit

  2. 计算最长的一帧报文有多少个bit:

    (扩展帧)1sof+29id+1ide+1rtr+1srr+2r+4dlc+8*8data+16crc+2ack+7eof=128bit

  3. 计算10ms内可以支持的报文数目:

    2500 bit/128 bit≈19

    综上可得:当10 ms间隔的报文数量超过19条时,就会出现丢帧,总线包和。

(虽然问题已久,但此回答为了方便后来查找的人,Thanks♪(・ω・)ノ)

回答2:

CAN发送8字节的数据扩展帧,实际总线上传输数据还包括约5字节的帧ID和信息,和
约10字节的帧头尾和校验等。

1、计算:按照这个参数来算 ((250K/8)/23 )*0.010s = 13.6扩展帧 / 10ms,
也就是1358 帧/s。

2、实测:采用广州研煌的ACUSB-211或者131的配套软件AdawinCANTest测试,设置为
波特率250kbps,测试到的实际速度为 300000 帧/ 213s = 1408帧/s。

3、总结,可以看出计算和测试的结论一致。

广州研煌——CAN总线全面方案和技术支持。

回答3:

专业去问老师吗!!!!