CAN总线是一项非常经典的工业通讯标准,也是一项可靠性非常高的技术, 而错误处理对CAN总线的可靠性来说十分重要。在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括CAN总线错误的基础概念、CAN总线错误的类型、CAN错误帧和CAN节点错误状态,并通过实际的应用测试生成并记录CAN错误。
在之前的文章中,我们介绍了CAN总线错误的基础概念和类型,而本篇文章我们将介绍CAN错误帧和CAN节点错误状态,从而为技术人员进行CAN错误处理提供帮助。
CAN节点状态和错误计数器
显然,CAN错误处理有助于销毁错误消息-并使CAN节点能够重试错误消息的传输。这确保了短暂的局部干扰(例如来自噪声)不会导致无效/丢失数据。相反,发送器尝试重新发送消息。如果它赢得仲裁(并且没有错误),则消息发送成功。
但是,如果错误是由于传输节点中的系统故障引起的怎么办?这可能会触发发送/销毁相同消息的无限循环,从而干扰CAN总线。这就是CAN节点状态和错误计数器发挥作用的地方。
简而言之,CAN错误跟踪的目的是通过优雅地降低有问题的CAN节点的权限来限制错误。具体来说,让我们看看三种可能的状态:
● 错误活动:这是每个CAN节点的默认状态,在该状态下它能够传输数据并在检测到错误时引发“活动错误标志”
● 被动错误:在这种状态下,CAN节点仍然能够传输数据,但现在在检测到错误时会引发“被动错误标志”。此外,CAN节点现在除了等待3位中断时间外,还必须等待额外的8位(也称为暂停传输时间)才能恢复数据传输(以允许其他CAN节点控制总线)
● 总线关闭:在此状态下,CAN节点将自身与CAN总线断开连接,无法再传输数据或引发错误标志
每个CAN控制器都会跟踪自己的状态并采取相应的行动。CAN节点根据其错误计数器的值转换状态。具体来说,每个CAN节点都会跟踪发送错误计数器(TEC)和接收错误计数器(REC):
● 如果REC或TEC超过127,则CAN节点进入ErrorPassive状态
● 如果TEC超过255,则CAN节点进入总线关闭状态
那么错误计数器如何变化呢?在我们了解如何增加/减少错误计数器的逻辑之前,让我们重新审视CAN错误帧以及主要/次要错误标志。
从CAN错误帧图示中可以明显看出,在CAN错误帧的6个显性位序列之后观察到显性位的CAN节点将知道它引发了主要错误标志。在这种情况下,我们可以将此CAN节点称为错误的“发现者”。
起初,让一个CAN节点反复发现错误并通过在其他节点之前发出错误标志来迅速做出反应,这听起来可能是积极的。然而,在实践中,发现者通常也是导致错误的罪魁祸首。
虹科CAN/LIN数据与错误记录器
CANedge1让您可以轻松地将数据从2xCAN/LIN总线记录到8-32GBSD卡中,并支持记录CAN/LIN错误。只需将其连接到汽车或卡车即可开始记录-并通过免费软件/API解码数据。此外,CANedge2添加了WiFi,让您可以将数据自动传输到您自己的服务器-并通过无线方式更新设备。
除此之外,虹科还为客户提供CAN卡、数据采集模块、CAN网关和转换器等硬件设备,和PCAN-Explore 6等软件。若想了解更多关于CAN技术服务和CAN产品,欢迎随时通过info@hkaco.com联系虹科。