问题反思:CAN收发器供电电源稳定很重要

2019-12-14 12:30发布

之前自己做了一套完整的CAN CCP(标定)方案,上位机软件,USB转CAN设备软件,下位机App软件(电机控制,通过标定进行参数优化)以及下位机的Bootloader。
1.JPG (240.96 KB, 下载次数: 0) 下载附件 系统结构 2018-12-11 23:05 上传
在整个开发过程中,标定时不时出现USB转CAN设备软件报出CAN通信响应超时的错误,导致上位机丢失下位机实时数据,很影响标定工作,并且每次需要更新软件的时候,通过Bootloader走CAN总线更新软件时,总会遇到程序下载了一部分就丢失CAN通信。
起初以为是上位机和USB转CAN设备的驱动程序不稳定导致,连续修改了很多次USB通信协议及数据处理方式,到最后已经能够达到非常稳定的USB通信。可后来发现上述问题依然存在。
后来通过CAN总线检测设备,分析USB转CAN设备软件在整个过程中数据通信,终于找到USB转CAN设备会时不时丢帧,上位机已经下达发送CAN帧指令而USB转CAN设备并没有真正发出CAN帧,从而误以为下位机不响应。
继续排查,无意中发现通过USB转CAN设备的输入电源只有4.4V,而我所使用的CAN收发器为TJA 1050,按照其DataSheet说明最低电压也需要4.75V。通过直接测量电脑USB口输出电压为5.02V,于是猛然发现是因为USB转CAN的设备所使用的的USB线线损过大,虽然从前面的电压来看,只是相差了0.35V,但就是这么一个小小的电压差距,导致前面出现的各种丢帧异常。
后面我将USB转CAN设备上的CAN 收发机TJA 1050电源单独供电,保证5V±0.1V的电源供给。经过长时间的标定测试,发现CAN数据通信非常稳定,标定工作也得以顺利进行。
从我的教训看来,光是软件稳定还不够,硬件的电源供给也是非常重要的基础。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
34条回答
liuxiangyub
1楼-- · 2019-12-14 12:52
非常好的总结。       提供了线损思路。往往就是不注意的一个小细节。
rei1984
2楼-- · 2019-12-14 15:06
usb 就是非常蛋疼的。  有时候还是 蓝牙数传好用。  前提是 用 hc-05 hc-06 这些 2.0 的 低端模块。  速度快。稳定性好。 握手也快。  但不支持 ios
LinuxTux.China
3楼-- · 2019-12-14 20:37
 精彩回答 2  元偷偷看……
cumt_123456
4楼-- · 2019-12-14 21:44
上周六大早上起来调试RS422,之前调试好的程序居然不能用,完全进不了中断,整整查了一天。万万没想到,测试杜邦线内部断路。。。。
haizheng4
5楼-- · 2019-12-15 01:14
做硬件有时间真是被辅助工具坑的够呛
zxzx8059
6楼-- · 2019-12-15 07:07
現在都不用便宜傳統的杜邦线
都是訂製夾力比較好的線來實驗用
老闆認為好的線成本遠低於工時成本

一周热门 更多>