导致CAN错误帧的几种情况

CAN总线过长

CAN通信距离与通信速率紧密相关,波特率越高,CAN通信距离越短,反之波特率越低,CAN通信距离越长。当总线支线过长时,线束的阻抗和容抗会增大, 下降沿容易产生弯曲现象,容易导致位宽度失调,从而使接收节点接收数据错误,同时向总线发出错误帧。为了保证正常通信,需要减小CAN终端电阻,线束越长,电阻值越小,但一般不小于30Ω,否则会使显性位差值过小,不满足ISO11898要求。 

总线电容过大 

CAN收发器为了实现CAN的仲裁与错误处理,采用单向驱动结构,即CAN波形的上升沿有驱动,而下降沿是通过整条总线与终端电阻放电产生的,所以终端电阻的第一作用是放电。因此,CAN节点及CAN线束的电容会影响整个网络的电容,电容越大,下降边沿越缓,导致接收节点发生位采样错误,从而导致错误帧的产生。一般需要保证CAN线电容在40~70pF/m范围内。 

波特率配置错误 

为了使接收方能够正确地解析数据,通信双方需要提前约定波特率。软件中可以直接配置相应的寄存器即可配置波特率,例如,当整车波特率为500kB时,此时位时间为2us,那么发送方就可以按照2us的位时间发送数据,接收方每隔2us对数据进行采样。因此,如果同一CAN网络中不同节点配置的波特率不一致,总线会出现错误帧,收发节点是无法正常通信的。 

采样点设置错误 

采样点是CAN控制器读取总线电平并解释各个比特位逻辑值的时间点。由于CAN报文的一个位时间由若干个Tq组成(CAN控制器的最小时间周期称作时间份额Tq,它是通过对芯片晶振周期进行分频而得来的),通常为8~25个,同时根据功能分为4个阶段:同步段、传播段、相位缓冲段1和相位缓冲段2。采样点即为在某位时间内读取总线电平的时刻,如图6所示。采样时刻的设置通过配置寄存器决定,对于同一CAN整车网络,各个节点应该尽量使用相同的采样点位置,否则容易出现采样错误,进而使整个网络的通信出现故障。 

收发报文报文ID冲突 

ID是数据帧中仲裁段的组成部分,ID的大小决定了总线上节点冲突时各节点发送顺序,整车上通信的报文数量级在几十甚至上百,如果这些报文的ID重复,总线上会出现错误帧。 

总线干扰过大 

其新能源电动汽车和发电机组等存在变频器、逆变器、电机驱动、继电器、电磁阀等电流剧烈变化的线缆或设备,CAN整车通信信号受到的电磁干扰尤为显著。为此整车上往往采用提高CAN双绞程度、加单双屏蔽层、使用CAN隔离模块、弱电远离强电优化布线等方式以提高整车CAN通信抗干扰能力。此外,使用低阻抗、低容抗的CAN线也可以提高信号品质,提高抗干扰能力。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车载测试职场人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值