搜索
bottom↓
回复: 21

汽车CAN总线传输车速为什么要用"循环"的上传方式?

[复制链接]

出590入992汤圆

发表于 2022-12-2 15:12:40 | 显示全部楼层 |阅读模式
本帖最后由 SUPER_CRJ 于 2022-12-2 15:16 编辑

最近帮别人做离线的汽车配置设备。
发现状态车速档位等信息:都按照如图的方式。
1:某个字节一直不断的循环(每个字节都比上个字节+1,而且比较频繁!很多指令都是这种方式)
2:状态车速等信息,在其中的某个字节中。

我最大的问题就是:那个循环有什么用?为什么要用这样的方式?对于接收设备来说:怎样处理这个数据比较好?总不能还要判断循环有没有一直在进行吧。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

如果想吃一顿饺子,就得从冰箱里取出肉,剁馅儿,倒面粉、揉面、醒面,擀成皮儿,下锅……
一整个繁琐流程,就是为了出锅时那一嘴滚烫流油的热饺子。

如果这个过程,禁不住饿,零食下肚了,饺子出锅时也就不香了……《非诚勿扰3》

出0入90汤圆

发表于 2022-12-2 15:17:24 | 显示全部楼层
就像个序号一样,内部会保存、比较。用来判断是否收到错误的数据、之前的数据,或者判断某个设备是否挂了

出590入992汤圆

 楼主| 发表于 2022-12-2 15:24:07 | 显示全部楼层
honami520 发表于 2022-12-2 15:17
就像个序号一样,内部会保存、比较。用来判断是否收到错误的数据、之前的数据,或者判断某个设备是否挂了 ...
(引用自2楼)

大概能猜到,为什么要用这样的方式,本身CAN就带有校验了。
这样处理的优点是什么?
其实我最关心的是:我如何用代码处理这个数据比较好。

出0入0汤圆

发表于 2022-12-2 15:34:07 来自手机 | 显示全部楼层
循环计数方便判断是否丢帧

出1310入193汤圆

发表于 2022-12-2 16:18:12 | 显示全部楼层
安全设备 冗余检测

出10入29汤圆

发表于 2022-12-2 16:36:06 | 显示全部楼层
其实这个就是起到了相对时间标识的作用。

出0入131汤圆

发表于 2022-12-2 17:07:22 | 显示全部楼层
有没有可能是 受限于最大8个字节的报文,没办法一次性发送

出0入17汤圆

发表于 2022-12-2 18:38:32 | 显示全部楼层
asj1989 发表于 2022-12-2 17:07
有没有可能是 受限于最大8个字节的报文,没办法一次性发送
(引用自7楼)

我也认为是这样的,循环的那就是个参数序号。

出0入0汤圆

发表于 2022-12-2 19:32:02 | 显示全部楼层
以前做过,就单纯的要求,没有其它作用

出0入0汤圆

发表于 2022-12-2 21:03:48 | 显示全部楼层
J1939里有长数据报文(如多条故障广播),不过索引号是第1个字节。

出0入8汤圆

发表于 2022-12-2 21:10:19 来自手机 | 显示全部楼层
E2E保护。功能安全里有这些建议。每帧计数加1,防止因为软件问题死循环了,一直重发相同的帧消息,或者漏了,或者多发了消息。这种方式甚至能统计丢包率。

出0入0汤圆

发表于 2022-12-2 23:33:04 来自手机 | 显示全部楼层
lzg 发表于 2022-12-2 21:10
E2E保护。功能安全里有这些建议。每帧计数加1,防止因为软件问题死循环了,一直重发相同的帧消息,或者漏了 ...
(引用自11楼)

我在CAN FD见过E2E,HS CAN也用吗?,负载浪费很大吧。

出0入618汤圆

发表于 2022-12-3 02:51:37 | 显示全部楼层
SUPER_CRJ 发表于 2022-12-2 15:24
大概能猜到,为什么要用这样的方式,本身CAN就带有校验了。
这样处理的优点是什么?
其实我最关心的是: ...
(引用自3楼)

例如说ACK受干扰出错导致发送端重传,没有流水号接收端很难分辨是否重复的数据包。

出0入18汤圆

发表于 2022-12-3 06:02:58 来自手机 | 显示全部楼层
请教汽车can总线的协议是公开的还是私有的?

出0入0汤圆

发表于 2022-12-3 08:03:54 来自手机 | 显示全部楼层
这个只是用来识别接收到的数据是否连续。一般情况直接忽略它就行,没啥用

出130入20汤圆

发表于 2022-12-3 08:11:15 | 显示全部楼层
检测丢帧与否,要求高的帧会用

出0入8汤圆

发表于 2022-12-3 10:13:40 来自手机 | 显示全部楼层
b260123292 发表于 2022-12-2 23:33
我在CAN FD见过E2E,HS CAN也用吗?,负载浪费很大吧。
(引用自12楼)

有的客户在LIN通信上还要求E2E保护,目的都是一样的,鉴别重传漏传的。
负载浪费?再最关键的问题上只给一点点开销却在不关键的问题上花费巨大开销,这常有的事儿。有些安全零件花费了巨大代价做的可靠性防护,最后都被没有做这些工作廉价物品给替换掉了。剩下来的钱拿去做广告做公关,它不香么。

出590入992汤圆

 楼主| 发表于 2022-12-3 10:24:13 来自手机 | 显示全部楼层
lzg 发表于 2022-12-3 10:13
有的客户在LIN通信上还要求E2E保护,目的都是一样的,鉴别重传漏传的。
负载浪费?再最关键的问题上只给 ...

(引用自17楼)

Lin上也有的,最近也遇到了。
作为接收端?代码怎么处理这个+1比较好呢?还要和前帧判断,感觉有点复杂

出0入54汤圆

发表于 2022-12-3 10:51:39 | 显示全部楼层
一般来说如果有包含功能安全数据的帧都需要加E2E(End To End)保护,包含rolling counter, CRC以及timeout,你图里的这个应该是rolling counter
AUTOSAR标准定义了几套profile,有空的话可以看看。

至于为什么要rolling counter,功能安全相关的数据会做失效分析,分析由于比如frame frozen, frame insertion, incorrect frame sequence等是否会违背安全目标,rolling counter就是用于cover这几种失效模式。

出0入0汤圆

发表于 2022-12-3 23:19:00 来自手机 | 显示全部楼层
lzg 发表于 2022-12-3 10:13
有的客户在LIN通信上还要求E2E保护,目的都是一样的,鉴别重传漏传的。
负载浪费?再最关键的问题上只给 ...

(引用自17楼)

感谢分享,又长见识了。
我们功能安全还没做好,现在又要搞国产化,CP也用东软的,效果是折扣又折扣了。

出0入89汤圆

发表于 2022-12-5 13:03:02 | 显示全部楼层
tang_qianfeng 发表于 2022-12-3 06:02
请教汽车can总线的协议是公开的还是私有的?
(引用自14楼)

CAN本身时公开的。协议内容肯定时私有的。你想知道要么花钱买,要么去破解。

出0入475汤圆

发表于 2022-12-5 13:30:55 来自手机 | 显示全部楼层
很正常的一个方法,至少看多了就是认为再正常不过了,我接触到的航空设备那些内部通信,大都是这样的,每个报文都自动序号增加,到FF又回到0继续,
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-28 16:09

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表