详解CAN总线:CAN总线故障界定与管理

简介: CAN总线故障界定的目标是实现数据传输系统即使在节点发生故障的情况下也能维持很高的可用性。因此故障界定策略必须证明在以下2个方面是可靠的:区分短期故障和永久性故障;找到并断开故障节点。

CAN总线故障界定的目标是实现数据传输系统即使在节点发生故障的情况下也能维持很高的可用性。


因此故障界定策略必须证明在以下2个方面是可靠的:


区分短期故障和永久性故障;

找到并断开故障节点。

故障界定策略是每个节点都配备有一个发送错误接收器及一个接收错误接收器,前者记录发送帧期间发生的错误数目,后者则记录接收帧期间发生的错误数目。


1、错误状态的种类

对故障界定而言,CAN节点根据错误计数结果的不同,可以处于下列3种状态之:主动错误状态、被动错误状态和总线关闭态。


1、主动错误状态

主动错误状态是可以正常参加总线通信的状态。处于主动错误状态的单元检测出错误时,输出主动错误标志。


2、被动错误状态


被动错误状态是易引起错误的状态。


处于被动错误状态的单元虽能参加总线通信,但为不妨碍其它单元通信,接收时不能积极地发送错误通知。


处于被动错误状态的单元即使检测出错误,而其它处于主动错误状态的单元如果没发现错误,整个总线也被认为是没有错误的。


处于被动错误状态的单元检测出错误时,输出被动错误标志。


另外,处于被动错误状态的单元在发送结束后不能马上再次开始发送。在开始下次发送前,在间隔帧期间内必须插入“延迟传送”(8 个位的隐性位)。


3、总线关闭态


总线关闭态是不能参加总线上通信的状态。信息的接收和发送均被禁止。


这些状态依靠发送错误计数和接收错误计数来管理,根据计数值决定进入何种状态。错误状态和计数值的关系如下表和图所示:


eae5e0f70a2d4f9c9ae8ac82a660da4b[0].png

46d4c7be17f54022aba3b58962f98177[0].png



2、故障界定规则

发送错误计数值和接收错误计数值根据一定的条件发生变化。错误计数器在错误标志的第一个位出现的时间点上开始计数。一次数据的接收和发送可能同时满足多个条件。


错误计数值的变动条件如下表所示:


6dc2deff55114c409f4ce75ed643e801[0].png



相关文章
|
负载均衡 监控 NoSQL
Redis系列(三):深入解读Redis主从同步机制(上)
Redis系列(三):深入解读Redis主从同步机制
一文读懂Can总线错误处理
一文读懂Can总线错误处理
一文读懂Can总线错误处理
|
存储 机器学习/深度学习 人工智能
AI仓库管理
AI仓库管理运用人工智能优化存储、订单处理、路径规划和库存管理,提高效率、准确性,降低成本。包括智能存储推荐、订单分配、拣选路径规划、图像识别、自然语言处理、预测分析、自动化操作和实时库存跟踪。此外,集成物联网、无人机、机器人和区块链技术,提升效率和安全性。AI仓库管理为商家带来智能化决策支持和自动化解决方案。
1233 1
|
数据可视化 数据挖掘 开发者
import有什么用,python中怎么使用import
import有什么用,python中怎么使用import
1476 1
|
存储 Windows
TortoiseSVN 详细操作指南
这篇文章提供了一份详细的TortoiseSVN使用指南,涵盖了版本库的概念、图标重载、右键菜单操作、日常版本控制操作如项目入库、检出工作副本、导出项目、添加和删除文件、放弃修改、查看和提交修改,以及如何解决常见的SVN使用问题。
TortoiseSVN 详细操作指南
|
消息中间件 编解码 运维
阿里云 Serverless 异步任务处理系统在数据分析领域的应用
本文主要介绍异步任务处理系统中的数据分析,函数计算异步任务最佳实践-Kafka ETL,函数计算异步任务最佳实践-音视频处理等。
176236 349
|
开发者
【经典案例】使用HAL库配置STM32F407的SPI外设
在嵌入式系统开发中,STM32F407是一款广泛应用的微控制器,而SPI(Serial Peripheral Interface)是一种常用的通信接口。本文将详细介绍如何使用STM32的硬件抽象层(HAL)库配置STM32F407的SPI外设,并提供完整的代码示例。
1780 1
|
Prometheus 监控 Cloud Native
基于prometheus的微服务指标监控
基于prometheus的微服务指标监控
|
存储 SQL NoSQL
深入了解数据库技术:核心原理、类型及行业应用
一、引言 数据库技术是信息技术领域的重要组成部分,它负责数据的存储、检索、管理和保护
|
安全
[UDS] --- ReadDataByIdentifier 0x22
[UDS] --- ReadDataByIdentifier 0x22
1176 0

热门文章

最新文章