CAN的工作原理

合集下载

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种广泛应用于汽车电子系统中的通信协议。

它的工作原理基于串行通信,通过在多个节点之间传输数据来实现高效的通信。

本文将详细介绍CAN的工作原理。

一、引言概述CAN是一种高度可靠的通信协议,广泛应用于汽车电子系统中。

它具有高速传输、抗干扰能力强等特点,为汽车电子系统的稳定运行提供了重要的支持。

下面将从数据传输、帧结构、错误检测和纠正、总线访问和网络管理五个方面详细介绍CAN的工作原理。

二、数据传输1.1 传输速率:CAN协议支持多种传输速率,常见的有1Mbps、500kbps和250kbps等。

传输速率的选择取决于系统的需求和总线长度。

1.2 传输方式:CAN使用差分信号进行数据传输,通过CAN控制器将数字信号转换为差分信号,并在接收端将差分信号还原为数字信号。

1.3 传输距离:CAN总线的传输距离通常受到总线长度和传输速率的限制。

为了保证信号的质量,需要合理设计总线的布局和使用合适的终端电阻。

三、帧结构2.1 帧类型:CAN帧分为数据帧和远程帧两种类型。

数据帧用于传输数据,远程帧用于请求数据。

2.2 帧格式:CAN帧由起始位、标识符、控制位、数据域和校验位组成。

起始位用于同步传输,标识符用于区分不同的CAN帧,控制位用于指示帧的类型和长度,数据域用于存储传输的数据,校验位用于检测传输过程中的错误。

2.3 帧优先级:CAN帧的优先级由标识符的位值决定,位值越小的帧优先级越高。

通过帧优先级的设置,可以实现对不同类型数据的优先传输。

四、错误检测和纠正3.1 位错误检测:CAN使用CRC(循环冗余校验)算法对数据进行校验,以检测位错误。

如果接收到的CRC校验值与发送方计算的校验值不一致,则认为数据传输存在错误。

3.2 错误标志位:CAN控制器会在浮现错误时设置错误标志位,通过读取错误标志位可以判断总线的错误情况,如位错误、帧错误和CRC错误等。

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种用于汽车电子系统中的通信协议,它的工作原理是基于串行通信的方式,通过CAN总线连接各个节点,实现数据的传输和控制。

CAN的工作原理可以分为物理层和数据链路层两个部份。

物理层是CAN总线的物理连接标准,它规定了CAN总线的传输速率、电气特性和连接方式。

CAN总线采用双绞线作为传输介质,其中一根线为CAN_H,另一根线为CAN_L。

CAN_H和CAN_L之间通过电阻进行差分信号的传输,从而提高了抗干扰能力。

CAN总线的传输速率普通有几种选择,如500kbps、250kbps、125kbps等。

数据链路层是CAN通信的核心部份,它负责数据的传输和控制。

数据链路层采用了一种基于帧的通信方式。

CAN通信中的数据被封装成帧,每一帧包括了一个起始位、一个帧ID、数据域、CRC校验码和一个结束位。

帧ID用于标识不同的消息,数据域用于存储实际的数据内容,CRC校验码用于检测数据的完整性。

CAN总线上的节点可以同时发送和接收数据,通过帧的优先级和仲裁机制来解决冲突,保证数据的可靠传输。

CAN的工作原理可以简单描述为以下几个步骤:1. 发送节点准备发送数据。

发送节点首先检查总线是否空暇,如果总线空暇,则发送节点可以开始发送数据。

2. 发送节点发送数据帧。

发送节点将数据封装成帧,并发送到总线上。

发送节点在发送数据帧之前,会先发送一个错误检测标志位,用于检测总线上是否有其他节点正在发送数据。

3. 接收节点接收数据帧。

接收节点监听总线上的数据,并接收数据帧。

接收节点会根据帧ID来判断是否需要处理该帧,如果需要处理,则接收节点会提取数据域中的数据,并进行相应的处理。

4. 仲裁机制。

当多个节点同时发送数据时,可能会发生冲突。

CAN总线采用了仲裁机制来解决冲突。

仲裁机制是基于帧ID的优先级来确定哪个节点可以发送数据。

帧ID越小的节点具有更高的优先级,优先发送数据。

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种常用于汽车和工业控制系统中的通信协议,它的工作原理是基于串行通信和分布式控制的思想。

CAN协议由德国Bosch公司于1986年开发,现已成为国际标准ISO 11898。

CAN的工作原理主要包括物理层、数据链路层和应用层三个部分。

1. 物理层CAN的物理层采用差分信号传输方式,即CAN_H和CAN_L两个信号线分别传输相反的电压信号。

这种差分信号传输方式能够有效抵抗电磁干扰,提高通信的可靠性。

物理层还包括传输速率、线缆特性阻抗等参数的定义,以确保数据的正确传输。

2. 数据链路层数据链路层负责数据的传输和错误检测。

CAN采用了一种基于帧的通信方式,每个CAN帧由一个起始位、一个帧ID、数据域、CRC(循环冗余校验)和结束位组成。

帧ID用于标识不同的消息,数据域用于传输实际的数据信息,CRC用于检测数据传输过程中的错误。

在CAN总线上,所有节点都可以同时发送和接收数据,这种分布式控制的方式使得系统具有较高的实时性和可靠性。

数据链路层还包括错误检测和错误恢复机制,例如通过ACK位确认数据是否被正确接收,以及通过重传机制确保数据的可靠传输。

3. 应用层应用层是CAN协议的最上层,它定义了数据的格式和含义。

在汽车领域,CAN协议被广泛应用于车辆的诊断、传感器数据的采集和控制指令的发送等方面。

不同的应用领域可以定义自己的CAN消息格式和含义,以满足特定的需求。

总结一下,CAN的工作原理是通过物理层的差分信号传输、数据链路层的帧结构和错误检测、以及应用层的数据格式定义,实现了节点之间的高效通信和分布式控制。

CAN协议的优点包括高实时性、可靠性和可扩展性,使其成为了汽车和工业控制系统中的重要通信协议。

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种广泛应用于汽车、工业控制和通信领域的串行通信协议。

它的工作原理是基于一种分布式通信机制,可以同时连接多个节点,实现高效的数据传输和控制。

CAN的工作原理可以简单概括为以下几个方面:1. 物理层:CAN总线采用双绞线作为传输介质,通常使用差分信号传输方式。

这种方式可以有效地抵抗电磁干扰,提高通信的可靠性。

CAN总线上的每个节点都通过一个传输线连接到总线上。

2. 数据链路层:CAN总线采用一种基于帧的通信协议,数据传输以帧为单位进行。

每个CAN帧由四个部分组成:起始位、帧类型位、数据位和CRC校验位。

起始位用于同步节点的时钟,帧类型位用于标识数据帧或远程帧,数据位用于传输实际的数据,CRC校验位用于检测数据传输的错误。

3. 帧传输:CAN总线上的节点可以同时发送和接收数据。

当一个节点要发送数据时,它首先检查总线上是否有其他节点正在发送数据,如果没有,则它可以开始发送数据。

发送节点会将数据和标识符封装成一个CAN帧,并通过总线发送出去。

其他节点在接收到这个CAN帧后,会检查标识符,如果匹配,则接收数据。

4. 碰撞检测:由于CAN总线是一种共享总线结构,多个节点可能同时发送数据,导致碰撞。

为了解决碰撞问题,CAN总线采用了非破坏性的碰撞检测机制。

当一个节点发送数据时,它会同时监听总线上的数据,如果检测到其他节点同时发送数据,那么发送节点会停止发送,并等待一个随机的时间后重新发送。

5. 优先级:CAN总线上的每个节点都有一个唯一的标识符,用于标识节点的优先级。

当多个节点同时发送数据时,具有更低标识符的节点具有更高的优先级,可以优先发送数据。

这种优先级机制可以确保重要数据的及时传输。

总的来说,CAN的工作原理基于分布式通信机制,通过物理层和数据链路层的协议实现数据的高效传输和控制。

它具有高可靠性、抗干扰能力强、支持多节点等特点,因此在汽车、工业控制和通信领域得到广泛应用。

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种串行通信协议,广泛应用于汽车、工业控制和其他领域。

CAN的工作原理是通过差分信号传输数据,实现高速、可靠的通信。

本文将从CAN的基本原理、数据传输、错误处理、帧格式和应用领域等方面进行详细介绍。

一、CAN的基本原理1.1 CAN总线结构:CAN总线由两根信号线组成,分别是CAN_H和CAN_L,通过这两根信号线进行数据传输。

1.2 差分信号传输:CAN使用差分信号传输数据,即在CAN_H和CAN_L之间传输相反的信号,以减少干扰和提高抗干扰能力。

1.3 环状拓扑结构:CAN总线采用环状拓扑结构,所有节点通过总线连接在一起,实现节点之间的通信。

二、数据传输2.1 帧格式:CAN数据传输采用帧格式,包括起始位、帧类型、数据段、CRC 校验和结束位等字段。

2.2 传输速率:CAN总线的传输速率通常为1Mbps,根据实际需求可调整传输速率。

2.3 数据传输方式:CAN支持两种数据传输方式,分别是标准帧和扩展帧,用于传输不同长度的数据。

三、错误处理3.1 错误检测:CAN总线具有强大的错误检测和纠正能力,能够检测出传输过程中的错误,并进行相应处理。

3.2 错误标识:CAN在传输过程中会生成错误标识,用于标识出错的节点和错误类型,以便及时处理。

3.3 错误处理机制:CAN采用重发机制和错误帧处理机制,确保数据传输的可靠性和稳定性。

四、帧格式4.1 标准帧:标准帧包括11位标识符,用于传输短数据,适合于实时性要求不高的应用场景。

4.2 扩展帧:扩展帧包括29位标识符,用于传输长数据,适合于实时性要求高的应用场景。

4.3 过滤机制:CAN支持过滤机制,可以根据标识符过滤接收的数据,提高数据传输的效率和准确性。

五、应用领域5.1 汽车行业:CAN在汽车行业广泛应用,用于车载电子系统之间的通信,如发动机控制、仪表盘显示、车载娱乐系统等。

5.2 工业控制:CAN在工业控制领域被广泛应用,用于PLC、传感器、执行器等设备之间的通信,实现自动化生产。

can工作原理

can工作原理

can工作原理
CAN(Controller Area Network)是一种串行通信总线技术,
用于在汽车等领域的电子控制单元(ECU)之间进行通信。

CAN的工作原理如下:
1. 帧结构:CAN通信使用帧(Frame)结构进行数据传输。

每帧包含了标识符(Identifier)、控制位(Control Bits)、数据
域(Data Field)和帧校验序列(CRC)等部分。

2. 总线拓扑结构:CAN通信中存在一个主控节点和多个从节点。

主控节点负责控制总线上的数据传输,在传输过程中,拥有较高的优先级。

从节点则被动地接收和发送数据。

3. 数据传输:CAN通信采用的是非归零编码和差分传输机制。

在数据传输时,通过将数据和时钟信号进行异或运算,减小了传输的干扰和误差。

4. 简化通信:CAN具有较高的抗干扰能力,能在恶劣环境下
稳定工作。

它采用了帧优先级和冲突检测机制,可以方便地实现多个节点的同时通信。

5. 错误检测与容错:CAN使用CRC机制对传输的数据进行检错,确保数据的准确性。

同时,CAN还具备故障检测、错误
帧重传等功能,保证了通信的可靠性。

6. 通信速率:CAN通信可以根据需要进行不同的波特率设置,典型速率包括125kbps、250kbps、500kbps和1Mbps。

这使得
CAN系统可以适应不同的应用需求。

总的来说,CAN的工作原理基于帧结构、总线拓扑结构和数据传输机制。

它提供了高效、可靠且灵活的通信方式,因此被广泛应用于汽车等领域的电子控制系统中。

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种广泛应用于汽车电子系统中的通信协议。

它的工作原理是基于串行通信的方式,通过在汽车各个电子模块之间传递数据和控制信息,实现各个模块之间的相互协调和通信。

CAN的工作原理可以简单分为物理层和数据链路层两个部分。

1. 物理层:CAN协议使用差分信号传输数据,这种差分信号可以有效抵抗噪声干扰。

CAN总线上的每个节点都有一个CAN收发器,用于将数字信号转换成差分信号并发送到总线上。

CAN总线上的每个节点都通过终端电阻连接,形成一个总线拓扑结构。

2. 数据链路层:CAN协议采用了一种基于CSMA/CD(载波监听多点接入/冲突检测)的访问机制。

当一个节点准备发送数据时,首先检测总线上的信号是否被其他节点占用,如果没有被占用,则发送数据。

如果多个节点同时发送数据,就会发生冲突,此时节点会停止发送,并根据一定的算法进行重传。

CAN协议中的数据帧包括以下几个部分:- 起始位(Start of Frame,SOF):表示数据帧的开始。

- 标识符(Identifier):用于标识数据帧的类型和发送节点的地址。

- 控制位(Control):包括数据长度和远程传输请求等信息。

- 数据域(Data):包含实际的数据信息。

- CRC(Cyclic Redundancy Check):用于校验数据的完整性。

- 确认位(Acknowledgement):用于确认数据的正确接收。

- 结束位(End of Frame,EOF):表示数据帧的结束。

CAN协议支持两种工作模式:标准帧和扩展帧。

标准帧使用11位的标识符,可以传输8字节的数据;而扩展帧使用29位的标识符,可以传输更大长度的数据。

CAN协议具有以下特点:- 高可靠性:CAN总线具有抗干扰能力强、误码率低的特点,能够在恶劣的环境下正常工作。

- 高实时性:CAN总线的通信速率较高,可以满足实时性要求。

- 灵活性:CAN总线可以连接多个节点,节点之间可以进行灵活的数据交换和控制。

CAN的工作原理

CAN的工作原理

CAN的工作原理CAN(Controller Area Network)是一种广泛应用于汽车电子控制系统的通信协议,它的工作原理是通过一种高效的串行通信方式来实现多个电子控制单元(ECU)之间的数据传输。

本文将从引言概述、正文内容和结尾总结三个部份来详细阐述CAN的工作原理。

引言概述:CAN是一种被广泛应用于汽车电子控制系统的通信协议,它的浮现极大地促进了汽车电子化的发展。

CAN的工作原理基于一种高效的串行通信方式,通过在总线上传输数据帧来实现多个ECU之间的数据交换。

下面将详细介绍CAN的工作原理。

正文内容:一、物理层1.1 传输介质:CAN协议可以使用两种传输介质,即双绞线和光纤。

双绞线是最常见的传输介质,它具有成本低、抗干扰能力强等优点,适合于大多数汽车电子控制系统。

而光纤传输介质具有传输速度快、抗干扰能力更强等优点,适合于高速数据传输场景。

1.2 总线结构:CAN总线采用了一种主从结构,其中一个ECU扮演主节点的角色,负责控制总线上的数据传输,其他ECU作为从节点,接收和发送数据。

1.3 电气特性:CAN总线的电气特性是保证数据传输可靠性的重要因素之一。

CAN总线采用差分信号传输,即CAN_H和CAN_L两个信号线,通过CAN收发器将数据转换为差分信号进行传输,从而提高了抗干扰能力。

二、数据链路层2.1 帧结构:CAN数据帧由四个部份组成,分别是起始位、帧类型位、数据位和校验位。

起始位用于同步传输,帧类型位标识数据帧还是远程帧,数据位用于传输实际数据,校验位用于检测数据传输过程中的错误。

2.2 帧ID:CAN数据帧的帧ID用于标识数据的发送和接收对象。

帧ID由11位或者29位组成,其中11位的帧ID用于标识标准帧,29位的帧ID用于标识扩展帧。

2.3 确认机制:CAN协议采用了一种基于优先级的确认机制,即具有高优先级的数据帧可以中断低优先级的数据帧的传输,从而提高了数据传输的实时性。

三、网络层3.1 数据传输:CAN协议通过循环发送数据帧的方式来实现数据传输。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、概述对于一般控制,设备间连锁可以通过串行网络完成。

因此,BOSCH公司开发了CAN总线(Controller Area Network),并已取得国际标准化组织认证(ISO11898),其总线结构可参照I SO/OSI参考模型。

同时,国际上一些大的半导体厂商也积极开发出支持CAN总线的专用芯片。

通过CAN总线,传感器、控制器和执行器由串行数据线连接起来。

它不仅仅是将电缆按树形结构连接起来,其通信协议相当于ISO/OSI参考模型中的数据链路层,网络可根据协议探测和纠正数据传输过程中因电磁干扰而产生的数据错误。

CAN网络的配制比较容易,允许任何站之间直接进行通信,而无需将所有数据全部汇总到主计算机后再行处理。

二、CAN在国外的发展对机动车辆总线和对现场总线的需求有许多相似之处,即较低的成本、较高的实时处理能力和在恶劣的强电磁干扰环境下可靠的工作。

奔驰S 型轿车上采用的就是CAN总线系统;美国商用车辆制造商们也将注意力转向CAN 总线;美国一些企业已将CAN作为内部总线应用在生产线和机床上。

同时,由于CAN总线可以提供较高的安全性,因此在医疗领域、纺织机械和电梯控制中也得到广泛应用。

三、CAN的工作原理当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。

对每个节点来说,无论数据是否是发给自己的,都对其进行接收。

每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。

在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。

当几个站同时竞争总线读取时,这种配置十分重要。

CAN总线的报文发送和接收参见图1。

当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时, 转为发送报文状态。

CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。

每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。

由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。

我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。

当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。

它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。

四、位仲裁要对数据进行实时处理,就必须将数据快速传送,这就要求数据的物理传输通路有较高的速度。

在几个站同时需要发送数据时,要求快速地进行总线分配。

实时处理通过网络交换的紧急数据有较大的不同。

一个快速变化的物理量,如汽车引擎负载,将比类似汽车引擎温度这样相对变化较慢的物理量更频繁地传送数据并要求更短的延时。

CAN总线以报文为单位进行数据传送,报文的优先级结合在11位标识符中,具有最低二进制数的标识符有最高的优先级。

这种优先级一旦在系统设计时被确立后就不能再被更改。

总线读取中的冲突可通过位仲裁解决。

如图2所示,当几个站同时发送报文时,站1的报文标识符为011111;站2的报文标识符为0100110;站3的报文标识符为0100111。

所有标识符都有相同的两位01,直到第3位进行比较时,站1的报文被丢掉,因为它的第3位为高,而其它两个站的报文第3位为低。

站2和站3报文的4、5、6位相同,直到第7位时,站3的报文才被丢失。

注意,总线中的信号持续跟踪最后获得总线读取权的站的报文。

在此例中,站2的报文被跟踪。

这种非破坏性位仲裁方法的优点在于,在网络最终确定哪一个站的报文被传送以前,报文的起始部分已经在网络上传送了。

所有未获得总线读取权的站都成为具有最高优先权报文的接收站,并且不会在总线再次空闲前发送报文。

CAN具有较高的效率是因为总线仅仅被那些请求总线悬而未决的站利用,这些请求是根据报文在整个系统中的重要性按顺序处理的。

这种方法在网络负载较重时有很多优点,因为总线读取的优先级已被按顺序放在每个报文中了,这可以保证在实时系统中较低的个体隐伏时间。

对于主站的可靠性,由于CAN协议执行非集中化总线控制,所有主要通信,包括总线读取 (许可)控制,在系统中分几次完成。

这是实现有较高可靠性的通信系统的唯一方法。

五、CAN与其它通信方案的比较在实践中,有两种重要的总线分配方法:按时间表分配和按需要分配。

在第一种方法中 ,不管每个节点是否申请总线,都对每个节点按最大期间分配。

由此,总线可被分配给每个站并且是唯一的站,而不论其是立即进行总线存取或在一特定时间进行总线存取。

这将保证在总线存取时有明确的总线分配。

在第二种方法中,总线按传送数据的基本要求分配给一个站 ,总线系统按站希望的传送分配(如:Ethernet CSMA/CD)。

因此,当多个站同时请求总线存取时,总线将终止所有站的请求,这时将不会有任何一个站获得总线分配。

为了分配总线,多于一个总线存取是必要的。

CAN实现总线分配的方法,可保证当不同的站申请总线存取时,明确地进行总线分配。

这种位仲裁的方法可以解决当两个站同时发送数据时产生的碰撞问题。

不同于Ethernet网络的消息仲裁,CAN的非破坏性解决总线存取冲突的方法,确保在不传送有用消息时总线不被占用。

甚至当总线在重负载情况下,以消息内容为优先的总线存取也被证明是一种有效的系统。

虽然总线的传输能力不足,所有未解决的传输请求都按重要性顺序来处理。

在CSMA/CD这样的网络中,如Ethernet,系统往往由于过载而崩溃,而这种情况在CAN中不会发生。

六、CAN的报文格式在总线中传送的报文,每帧由7部分组成,见图3。

CAN协议支持两种报文格式,其唯一的不同是标识符(ID)长度不同,标准格式为11位,扩展格式为29位。

@@TB17125002.GIF;在标准格式中,报文的起始位称为帧起始(SOF),然后是由11位标识符和远程发送请求位 (RTR)组成的仲裁场。

RTR位标明是数据帧还是请求帧,在请求帧中没有数据字节。

控制场包括标识符扩展位(IDE),指出是标准格式还是扩展格式。

它还包括一个保留位 (ro),为将来扩展使用。

它的最后四个字节用来指明数据场中数据的长度(DLC)。

数据场范围为0~8个字节,其后有一个检测数据错误的循环冗余检查(CRC)。

应答场(ACK)包括应答位和应答分隔符。

发送站发送的这两位均为隐性电平(逻辑1),这时正确接收报文的接收站发送主控电平(逻辑0)覆盖它。

用这种方法,发送站可以保证网络中至少有一个站能正确接收到报文。

报文的尾部由帧结束标出。

在相邻的两条报文间有一很短的间隔位,如果这时没有站进行总线存取,总线将处于空闲状态。

七、数据错误检测不同于其它总线,CAN协议不能使用应答信息。

事实上,它可以将发生的任何错误用信号发出。

CAN协议可使用五种检查错误的方法,其中前三种为基于报文内容检查。

1.循环冗余检查(CRC)在一帧报文中加入冗余检查位可保证报文正确。

接收站通过CRC可判断报文是否有错。

2.帧检查这种方法通过位场检查帧的格式和大小来确定报文的正确性,用于检查格式上的错误。

3.应答错误如前所述,被接收到的帧由接收站通过明确的应答来确认。

如果发送站未收到应答,那么表明接收站发现帧中有错误,也就是说,ACK场已损坏或网络中的报文无站接收。

CAN协议也可通过位检查的方法探测错误。

4.总线检测有时,CAN中的一个节点可监测自己发出的信号。

因此,发送报文的站可以观测总线电平并探测发送位和接收位的差异。

5.位填充一帧报文中的每一位都由不归零码表示,可保证位编码的最大效率。

然而,如果在一帧报文中有太多相同电平的位,就有可能失去同步。

为保证同步,同步沿用位填充产生。

在五个生。

在五个连续相等位后,发送站自动插入一个与之互补的补码位;接收时,这个填充位被自动丢掉。

例如,五个连续的低电平位后,CAN自动插入一个高电平位。

CAN通过这种编码规则检查错误,如果在一帧报文中有6个相同位,CAN就知道发生了错误。

如果至少有一个站通过以上方法探测到一个或多个错误,它将发送出错标志终止当前的发送。

这可以阻止其它站接收错误的报文,并保证网络上报文的一致性。

当大量发送数据被终止后,发送站会自动地重新发送数据。

作为规则,在探测到错误后23个位周期内重新开始发送。

在特殊场合,系统的恢复时间为31个位周期。

但这种方法存在一个问题,即一个发生错误的站将导致所有数据被终止,其中也包括正确的数据。

因此,如果不采取自监测措施,总线系统应采用模块化设计。

为此,CAN协议提供一种将偶然错误从永久错误和局部站失败中区别出来的办法。

这种方法可以通过对出错站统计评估来确定一个站本身的错误并进入一种不会对其它站产生不良影响的运行方法来实现,即站可以通过关闭自己来阻止正常数据因被错误地当成不正确的数据而被终止。

八、CAN的可靠性为防止汽车在使用寿命期内由于数据交换错误而对司机造成危险,汽车的安全系统要求数据传输具有较高的安全性。

如果数据传输的可靠性足够高,或者残留下来的数据错误足够低的话,这一目标不难实现。

从总线系统数据的角度看,可靠性可以理解为,对传输过程产生的数据错误的识别能力。

残余数据错误的概率可以通过对数据传输可靠性的统计测量获得。

它描述了传送数据被破坏和这种破坏不能被探测出来的概率。

残余数据错误概率必须非常小,使其在系统整个寿命周期内,按平均统计时几乎检测不到。

计算残余错误概率要求能够对数据错误进行分类 ,并且数据传输路径可由一模型描述。

如果要确定CAN的残余错误概率,我们可将残留错误的概率作为具有80~90位的报文传送时位错误概率的函数,并假定这个系统中有5~10个站,并且错误率为1/1000,那么最大位错误概率为10—13数量级。

例如,CAN网络的数据传输率最大为1Mbps,如果数据传输能力仅使用50%,那么对于一个工作寿命4000小时、平均报文长度为 80位的系统,所传送的数据总量为9×1010。

在系统运行寿命期内,不可检测的传输错误的统计平均小于10—2量级。

换句话说,一个系统按每年365天,每天工作8小时,每秒错误率为0. 7计算,那么按统计平均,每1000年才会发生一个不可检测的错误。

相关文档
最新文档