当前位置:文档之家› 商用车CAN总线技术

商用车CAN总线技术

汽车CAN总线基础知识培训资料

汽车C A N总线基础知 识

CAN总线协议 控制器局域网总线(CAN,Controller Area Network)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。该协议的健壮性使其用途延伸到其他自动化和工业应用。CAN协议的特性包括完整性的串行数据通讯、提供实时支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。 CAN总线发展 控制器局域网CAN( Controller Area Network)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN仍可提供高达50kbit/s的数据传输速率。CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以使用光缆连接,而且在这种总线上总线协议支持多主控制器。[1]CAN与I2C总线的许多细节很类似,但也有一些明显的区别。当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。

当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。 CAN总线在空闲(没有节点传输报文)时是一直处于隐性状态。当有节点传输报文时显性覆盖隐性,由于CAN总线是一种串行总线,也就是说报文是一位一位的传输的,而且是数字信号(0和1),1代表隐性,0代表显性。在传送报文的过程中是显隐交替的,就像二进制数字0101001等,这样就能把信息发送出去,而总线空闲的时候是一直处于隐性的。 CAN总线特征 (1)报文(Message)总线上的数据以不同报文格式发送,但长度受到限制。当总线空闲时,任何一个网络上的节点都可以发送报文。 (2)信息路由(Information Routing)在CAN中,节点不使用任何关于系统配置的报文,比如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。

CAN总线技术

Controller Area Network,控制器局域网. CAN被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。 优点是将所有的线束由电脑集中控制,所有的控制指令由电脑变成数字信号,明显减少了各系统的的线束量,接头数量也相应减少,降低了故障率,提高了自动化程度。 现代汽车中所使用的电子控制系统和通讯系统越来越多,如发动机电控系统。自动变速器控制系统。防抱死制动系统(ABS).自动巡航系统(ACC)和车载多媒体系统等,这些系统之间。系统和汽车的显示仪表之间,系统和汽车故障诊断系统之间均需要进行数据交换,如此巨大的数据交换量,如仍然采用传统数据交换的方法,即用导线进行点对点的连接的传输方式将是难以想象的,据统计,如采用普通线索,一个中级轿车就需要线索插头300个左右,插针总数将达到2000个左右,线索总长超过1. 6Km,不但装配复杂而且故障率会很高。因此,用串行数据传输系统取而代之就成为必然的选择。 数据在串联总线上可以一个接一个的传送,所有参加CAN总线的分系统都可以通过其控制单元上的CAN总线接口进行数据的发送和接收,CAN总线是一个多路传输系统,当某一单元出现故障时不会影响其他单元的工作,CAN总线对不同数据的传输速率不一样,对发动机电控系统和ABS等实时控制用数据实施高速传输,速率为1 25K波特-–1M波特,对车身调节系统(如空调)的数据实施低速传输,传输速率在1 0—1 25K波特,其他如多媒体系统和诊断系统则为中速传输,速率在两者之间,这样的区分提高了总线的传输效率。 数据总线如何能实现多路传输的呢?原来数据总线有三部分组成:1)数据传输线,2)地址传输线,3)发送单元和接收单元之间的传送控制线。数据按CPU的指令以一定的模式传输到指定的地址,而传输模式是由软件控制的。 CAN总线式汽车仪表总成功能简介 慧聪网2005年4月29日14时0分 一、技术背景 在当今的中高档汽车中都采用了汽车总线技术。汽车总线为汽车内部各种复杂的电子设备、控制器、测量仪器等提供了统一数据交换渠道。 20世纪90年代以来,汽车上由电子控制单元(ECU)指挥的部件数量越来越多,例如电子燃油喷射装置、防抱死制动装置、安全气囊装置、电控门窗装置、主动悬架等等。随着集成电路和单片机在汽车上的广泛应用,车上的ECU数量越来越多。因此,一种新的概念—车上控制器局域网络CAN(controller area network)的概念也就应运而生了。CAN最早是德国BOSCH公司为解决现代汽车中的控制与测试仪器之间的数据交换而开发的一种数据通信协议,按照ISO有关标准、CAN的拓朴结构为总线式,因此也称CAN总线。 CAN协议中每一帧的数量都不超过8个字节,以短帧多发的方式实现数据的高实时性;CAN总线的纠错能力非常强,从而提高数据的准确性;同时,CAN总线速率可达到1Mbit/s,是一个真正的高速网络,总之将CAN总线应用在汽车中使用有很多优点。 1、用低成本的双绞线电缆代替了车身内昂贵的导线,并大幅度减少了用线数量。 2、具有快速响应时间和高可靠性,并适合对实时性要求较高的应用。

CAN总线技术详解

CAN总线技术详解 起源 20世纪80年代,Robert Bosch 公司在SAE(汽车工程协会)大会上介绍了一种新型的串行总线CAN控制器局域网,那也是CAN 诞生的时刻。今天,在欧洲几乎每一辆新客车均装配有CAN 局域网。同样,CAN也用于其他类型的交通工具,从火车到轮船或者用于工业控制。CAN 已经成为全球范围内最重要的总线之一甚至领导着串行总线。CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以使用光缆连接,而且在这种总线上总线协议支持多主控制器。CAN与I2C总线的许多细节很类似,但也有一些明显的区别。 当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。 当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。 由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。

CAN总线基础(1)— CAN简介及特点

1.CAN是什么? CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。 现在,CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。 下图是车载网络的构想示意图。CAN 等通信协议的开发,使多种LAN 通过网关进行数据交换得以实现。

2.CAN的应用实例 3.总线拓扑图 CAN 控制器根据两根线上的电位差来判断总线电平。总线电平分为显性电平和隐性电平,二者必居其一。发送方通过使总线电平发生变化,将消息发送给接收方。 CAN的连接示意图

4.CAN的特点 CAN 协议具有以下特点: (1) 多主控制 在总线空闲时,所有的单元都可开始发送消息(多主控制)。 最先访问总线的单元可获得发送权(CSMA/CA 方式)。 多个单元同时开始发送时,发送高优先级ID 消息的单元可获得发送权。 (2) 消息的发送 在CAN 协议中,所有的消息都以固定的格式发送。总线空闲时,所有与总线相连的单元都可以开始发送新消息。两个以上的单元同时开始发送消息时,根据标识符(Identifier 以下称为ID)决定优先级。ID 并不是表示发送的目的地址,而是表示访问总线的消息的优先级。两个以上的单元同时开始发送消息时,对各消息ID 的每个位进行逐个仲裁比较。仲裁获胜(被判定为优先级最高)的单元可继续发送消息,仲裁失利的单元则立刻停止发送而进行接收工作。(3) 系统的柔软性 与总线相连的单元没有类似于“地址”的信息。因此在总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变。 (4) 通信速度 根据整个网络的规模,可设定适合的通信速度。 在同一网络中,所有单元必须设定成统一的通信速度。即使有一个单元的通信速度与其它的不一样,此单元也会输出错误信号,妨碍整个网络的通信。不同网络间则可以有不同的通信速度。 (5) 远程数据请求 可通过发送“遥控帧” 请求其他单元发送数据。 (6) 错误检测功能·错误通知功能·错误恢复功能 所有的单元都可以检测错误(错误检测功能)。 检测出错误的单元会立即同时通知其他所有单元(错误通知功能)。 正在发送消息的单元一旦检测出错误,会强制结束当前的发送。强制结束发送的单元会不断反复地重新发送此消息直到成功发送为止(错误恢复功能)。 (7) 故障封闭 CAN 可以判断出错误的类型是总线上暂时的数据错误(如外部噪声等)还是持续的数据错误(如单元内部故障、驱动器故障、断线等)。由此功能,当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。 (8) 连接 CAN 总线是可同时连接多个单元的总线。可连接的单元总数理论上是没有限制的。但实际上可连接的单元数受总线上的时间延迟及电气负载的限制。降低通信速度,可连接的单元数增加;提高通信速度,则可连接的单元数减少。 1.CAN的错误状态类型 单元始终处于3 种状态之一。

CAN总线技术讲解

摘要: 随着工业测控技术和生产自动化技术的不断进步,传统的RS-232、RS-485和CCITTV.24通信技术已不能适应现代化的工业控制需要,而现场总线(Fieldbus)以其低廉的价格、可靠的性能而逐步成为新型的工业测控领域的通信技术。现场总线是应用在生产现场,在微机化测量控制设备之间实现双向串行多节点数字通信的系统,是一种开放式、数字化、多点通信的底层控制网络。汇集了计算机技术、网络通信技术和自动控制技术(3C)的现场总线技术,从20世纪80年代开始发展起来,并逐步在制造业、流程工业、交通、楼宇等方面的自动化系统中得到了广泛的重视和应用。现场总线主要有以下几种类型[1-3]:基金会现场总线(FF)、LonWorks、ProfiBus、CAN、HART,而其中CAN即控制器局域网因为具有高性能、高可靠性以及独特的设计而越来越受到关注,现已形成国际标准,被公认为几种最有前途的现场总线之一。 Abstract: As industrial measurement and control technology and production automation technology advances, the traditional RS - 232, RS - 485 and CCITTV. 24 communication technology can not meet the needs of modern industrial control, and field bus (Fieldbus), with its low price, reliable performance, and gradually become a new kind of communication technology in the field of industrial measurement and control. Field bus is used in production field, between microcomputer-based measuring control equipment to realize the bidirectional serial multi-node digital communication system, is a kind of open, digital, multipoint communication bottom control network. Brings together computer technology, network communication technology and automatic control technology (3 c) field bus technology, developed in the 1980 s, and gradually in the manufacturing and process industries, transportation, building automation system has been widely attention and application. Fieldbus basically has the following several types: [1-3] foundation fieldbus (FF), LonWorks, ProfiBus, CAN, HART, and which CAN namely controller local area network (LAN) because of the high performance, high reliability and unique design is more and more attention, already formed the international standard, is recognized as one of the most promising fieldbus.

CAN总线学习心得--重要

CAN总线学习心得--重要 SJ A1 0 0 0 的常用标准波特率设置,为什么基本上都是单次采样?即使是低速的时候也是这样的,既然T SEG1 的设置周期都很大,比如都大于1 0 了,为什么不让他采样三次呢?答:是不好理解,但那是Ci A 推荐的值。用5 1 系列芯片和两个SJ A1 0 0 0 接口还要外扩一个RAM,请问5 1 的AL E 能否同时与三个芯片的AL E 管脚相连( 地址不同) 有哪位高手做过双SJ A1 0 0 0 冗余的请指教!答:能同时连接。请问CAN 总线在想传输1 0 0 0 m 的情况下, 最快的速度能到多少呢?答: 5 0 k b p s = 1 3 0 0 m。如果一个网络中只有 2 个节点, 其中一个处于监听模式,另一个节点发送报文会使处于监听模式的节点进入中断吗?答:能进入接收中断,你自己的试验也可以证明。想组建一个简单的CAN 网络, 已经有两个节点, 我想问CAN 总线如何组建, 终端电阻安装在哪里?小弟还没有入门, 大虾们指点一下。答1 :直接将节点CANH 和CANL 连到总线上,终端电阻接在总线两端,大约1 2 0 欧。答2 :推荐北航出版《现场总线CAN 原理与应用技术》,研读一下。请问各位老师:我是一名c a n 总线的新手,我正在做c a n 总线的开发,控制器用s j a 1 0 0 0 t ( 我自己两个控制板互通) , 但我在发送数据后将出现总线关闭,我看到发送错误计数器在不断增加,直到0 x f f 最后恢复到0 x 7 f , 谢谢各位老师帮我解答这个问题。或者对我给与启发答1 ;首先调通单个节点。答2 :这是单节点发送没有成功( 或者由于网络中其他节点没有收到帧并在响应场响应) 建议参考网站CAN 应用方案。我想请教各位c a n 远程贞有何作用?如何应用?在什么情况下才需要用到远程贞?谢谢了!答:远程帧的用与不用完全取决你自己的协议,c a n 有远程帧的功能,是可用可不用的!用网站提供的计算波特率的工具算出的数,1 2 k 以上的都正确,无论是自接收还是两个节点通讯都没有任何问题。但是1 2 k 以下的数据一个都不能用,两个节点通讯没有成功的,自接收有1 0 k 的几个数据成功。我们的项目要求必须在1 0 k 以下,最好是5 k ,但是不成功,自己计算的数据也没有成功的。(我们至少试验了3 0 多个,所有情况都考虑了。)我现在怀疑s j a 1 0 0 0 的波特率根本达不到5 k 和相对应的传输1 0 k m。或者可以谁能提供个经过实践检验的正确的总线定时器0 和1 的设置呢?要求低于1 0 k 。答:PCA8 2 C2 5 0 / 2 5 1 可以保证5 KBPS 的速率;比如Z L GCAN 系列接口卡。答:t j a 1 0 5 0 在低速时好像有问题。我用1 0 5 0 进行5 k 的时候不行,用8 2 c 2 5 0 很好,你可以试一试。我本想双机调试,一边收,一边发,但跑程序后,发送方会不断进入复位模式,所以现在进行自测试模式,我先进入复位模式,设置进入PEL I CAN 模式,对寄存器初始化后,设置接收,发送中断使能,最后设置进入自接收,单滤波模式,这样初始化就结束了,我的ACR0 ~ ACR3 为0 x 5 5 , 0 x 5 5 , 0 x 5 5 0 x 5 0 , AMR0 ~ AMR3 为0 x f f , 之后,我就往BUF F ER 里填数,0 x 8 8 , 0 x 5 5 , 0 x 5 5 , 0 x 5 5 , 0 x 5 0 , 0 x 3 0 , 0 x 3 1 , .0 x 3 7 , 之后,启动自接收请求命令,但是程序只进入了中断一次,是发送空中断,接收中断没有产生,我读发送错误寄存器,发现有错误产生,我读接收计数寄存器,为0 ,说明我没有收到数,但我读接收BUF F ER 时,值为0 x 5 5 , 0 x 5 5 , 0 x 5 5 , 0 x f f , 0 x f f , 0 x f f , 0 x f f , 0 x f f , 0 , 0 , 0 , 0 , 0 , 以上测试时,我在CANH 和CANL 之间加入了两个1 2 0 欧的匹配电阻并联在一起的,请各位高手指点呀,谢谢了答:在总线上加个CAN 接口卡会方便许多,或者加个捕获功能的示波器也可以检测波形。仿真环境:k e i l u v 2 编译器:k e i l c 5 1 7 . 0 仿真器:t k s - 5 9 1 s c p u : p 8 7 c 5 9 1 程序大小:8 K 左右兄弟在一片CPU 中烧写了一个,运行一个CAN 总线,I I C 总线测试程序能够正常运行。这个基础上加上应用程序后在仿真机中运行正常,但是烧写到c p u 后插入c p u 程序不能运行,请问是什么原因?另外一个问题:在另外一个项目中条件相同,程序只有4 K, 程序正常跑着,CAN 接口可以检测到输出波形但是却不能正确传输数据,在一块旧板子上就可以,比较两者之后发现电路完全相同测量也正常,只是布局不同,请教原因。答:程序已运行了吧?可能是HEX 文件有错;编制程序时注意P8 7 C5 9 1 的ERAM 设置、6 CL K 设置。位流数据采样自发送节点的8 2 c 2 5 0 的T x 管脚。测试条件:p e l i c a n ,扩展,双滤波模式,对方I D:0 x 8 8 , 0 x 1 1 , 0 x 5 5 , 0 x 1 0 ,发送的对方I D 为:0 x 8 8 , 0 x 1 1 , 0 x 0 0 , 0 x 0 0 ,发送2 字节数据为:0 x 0 5 , 0 x 0 6 采集的位流数据如下:0 1 0 0 0 1 0 0 0 0 0 1 0 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 请教位流数据的含义?答:自行计算时要区分位,还需要进行“位填充”的逆运行;简单的方法是将此信号连接

CAN总线技术在汽车中的应用

技术导向 CAN总线技术在汽车中的应用 【摘要】文章首先概述了CAN总线技术,并详细阐述了CAN总线技术的特点和优点,及其结构和数据,传输原理,从而引出CAN总线研究的重点、关键技术及其在现代汽车上的应用现状和发展趋势。 【主题词】CAN总线汽车应用 前言 近20年来,随着现代电子技术、信息技术的发展,汽车上由电子控制单 元(ECU)控制的部件数量越来越多,例如,数字式电控燃油喷射系统(DEFI)、 废气再循环控制系统(EGR)、防抱死制动系统(ABS)、防滑控制系统(ASR)、 牵引力控制系统(TRC)、车辆稳定控制系统(VSC)、巡航系统(CCS)等等。 大量传感器、集成电路和计算机芯片等电子元器件在汽车上的广泛应用, 在提高汽车动力性、经济性、舒适性和安全性的同时,也带来其他问题: (1)电子设备的大量应用必然导致车身布线愈来愈复杂、运行可靠性降低、故障维修难度增大,必然造成庞大的布线系统。比如在沃尔沃公司生产的S80型轿车中,所安装的电缆长达1200 m,有54根保险丝。从材料成本和工作效率看,传统布线方法都将不能适应汽车的发展。 (2)上述DEFI、EGR、ABS、ASR等子系统对控制信息的共享和实时性的要求,需要共享发动机转速、车轮转速、油门踏板位置等公共数据,同时各个子系统对实时性的要求因为数据的更新速率和控制周期的不同而有 差别。传统的线缆已远远不能满足这种需求。 (3)为了使不同厂家生产的部件能在同一辆汽车中协调工作,必须按照

某种约定的标准来解决其状态信号和控制信息的传递问题。针对上述问题,在借鉴计算机网络技术和现场控制技术的基础上,诞生了各种适用于汽车环境的汽车网络技术。经过长时间发展,已形成Hart、Lonworks、Profibus、Bitbus及CAN等多种现场总线协议。CAN是控制器局域网络的简称,它由德国的Bosch公司及几个半导体生产商开发的,CAN总线是一种串行多主站控制器局域网总线。它具有很高的网络安全性、通讯可靠性和实时性,简单实用,网络成本低。特别适用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。因此CAN总线在诸多总线中独占鳌头,逐渐成为汽车总线的代名词。 1、CAN总线技术的特点和优点 CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其主要特性如下: (1)具有较高的性价比。它结构简单,器件容易购置,每个节点的价格较低,而且开发过程中能充分利用现在的单片机开发工具; (2)是目前为止唯一有国际标准的现场总线; (3)为多主方式工作,网络上任一节点均可在任意时刻主动向网络上其他节点发送信息而不分主从,通信方式灵活,且无需站地址等节点信息; (4)网络上的节点信息分成不同的优先级, 可满足不同的实时要求,高优先级的数据最多可在134μs内得到传输; (5)采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情

汽车CAN总线技术

汽车CAN总线技术 2007年04月09日星期一 14:39 本文围绕“汽车为什么选择了CAN总线技术?汽车CAN总线技术到底是怎么一回事?采用汽车CAN总线技术有哪些优点?汽车总线的发展趋势”等问题作了一个浅短的介绍: 1. 汽车为什么选择了CAN总线技术? 现在总线技术有很多种。从成本上讲,RS-232/485的成本都比CAN低;速度上讲,工业以太网等也都不错。为什么唯独CAN在汽车电子中得到亲睐? 从成本上来说,CAN比UART、RS-232/485高,但比以太网低;从实时性来说:CAN的实时性比UART和以太网高,为了保证安全,车用通信协议都是按周期性主动发送,不论是CAN还是LIN,对实时性要求高的消息其发送周期都小于10ms(每辆车都有好几条这样的消息),发动机、ABS和变速器都有几条这样的消息;从可靠性来说,CAN有一系列事故安全措施,这是UART和以太网都不具备的,多点冗余也是UART (点对点传输)和工业以太网(数据传输距离短)难于实现的,所以CAN出现后,由于价格的原因,最初应用得最多的地方并不是汽车,而是对成本不敏感的工业控制和医疗设备,如:工业上的DEVICENET、SDS、CANOPEN,医疗上MRI等。至于工业以太网的产生,其背景与个人PC的普及是分不开的,现在工业控制中的PCBASED就是一个例子,但汽车控制是不能用一台PC的,要达到汽车控制的要求,成本上也不容许。而LIN的传输过程只有20Kbps,显然不能作为独立的汽车总线控制要求,一般它只配合CAN在汽车上做辅助之用。 其次总线是一个系统,总线上的速度仅仅是系统中的一个因素,ElexRay虽然只有20MBPS但它在一个16BIT的MCU上都能跑起来,100MHZ以太网虽快,但一个32BIT的MCU很难达到20MBPS.况且还要涉及到系统的安全性,类似冗余,BUS安全等。所以综合考虑,汽车选择了CAN总线技术。 2. 汽车CAN总线技术到底是怎么一回事? Can-Bus总线技术是“控制器局域网总线技术(Controller Area Network-BUS)”的简称,它具有极强的抗干扰和纠错能力,最早被用于飞机、坦克等武器电子系统的通讯联络上。 通过遍布车身的传感器,汽车的各种行驶数据会被发送到“总线”上,这些数据不会指定唯一的接收者,凡是需要这些数据的接收端都可以从“总线”上读取需要的信息。Can总线的传输数据非常快,可以达到每秒传输32bytes有效数据,这样可以有效保证数据的实效性和准确性。传统的轿车在机舱和车身内需要埋设大量线束以传递传感器采集的信号,而Can-Bus总线技术的应用可以大量减少车体内线束的数量,线束的减少则降低了故障发生的可能性。 Can-Bus技术在汽车的应用,可以减少了汽车车体内线束和控制器的接口数量,避免了过多线束存在的互相干涉、磨损等隐患,降低了汽车电气系统的故障发生率。各种传感器的信息可以实现共享。另外,在Can-Bus技术的帮助下,汽车的防盗性、安全性都得到了较大幅度提升。例如:在启动车辆时,确认钥匙合法性的信息会通过Can-Bus总线进行传递,其校验的信息比以往的防盗系统更为丰富。车钥匙、发动机控制器和防盗控制器互相存储对方信息,校验码中还掺杂了随即码,从而大幅提高防盗能力。校验信息通过Can-Bus传递大幅提高了信息传递的可靠性,使防盗系统的工作稳定可靠。就目前而言,Can-Bus总线技术一般使用在科技含量较高的中、高档轿车上。 3. 采用汽车CAN总线技术有哪些优点? 现代汽车中所使用的电子控制系统和通讯系统越来越多,如发动机电控系统、自动变速器控制系统、防抱死制动系统(ABS)、自动巡航系统(ACC)和车载多媒体系统等;这些系统之间、系统和汽车的显示仪表之间、系统和汽车故障诊断系统之间均需要进行数据交换,如此巨大的数据交换量,如仍然采用传统数据交换的方法,即用导线进行点对点的连接的传输方式将是难以想象的,据粗略估计,如采用普通线索,一个中级轿车就需要线索插头300个左右,插针总数将达到2000个左右,线索总长超过1. 6Km,不但装

《CAN总线基础知识》结构组成

CAN终端电阻 CAN终端电阻,顾名思义就是加在总线末端的电阻。此电阻虽小,但在CAN总线中却有十分重要的作用。 终端 CAN总线终端电阻的作用有两个: 一、提高抗干扰能力,确保总线快速进入隐性状态。 二、提高信号质量。 提高抗干扰能力 CAN总线有“显性”和“隐性”两种状态,“显性”代表“0”,“隐性”代表“1”,由CAN 决定。图1是一个CAN收发器的典型内部结构图,CANH、CANL连接总线。

图1 总线显性时,收发器内部Q1、Q2导通,CANH、CANL之间压差;隐性时,Q1、Q2截止,CANH、CANL处于无源状态,压差为0。 总线若无负载,隐性时电阻阻值很大,外部的干扰只需要极小的能量即可令总线进入显性(一般的收发器显性门限最小电压仅500mV)。为提升总线隐性时的抗干扰能力,可以增加一个差分负载电阻,且阻值尽可能小,以杜绝大部分能 量的影响。然而,为了避免需要过大的总线才能进入显性,阻值也不能过小。

确保快速进入隐性状态 在显性状态期间,总线的寄生电容会被,而在恢复到隐性状态时,这些电容需要放电。如果CANH、CANL之间没有放置任何阻性负载,电容只能通过收发器内部的差分电阻放电。我们在收发器的CANH、CANL之间加入一个220PF的电容进行模拟试验,位速率为 500kbit/s,波形如图2、图3。 图2 图3

从图3看出,显性恢复到隐性的时间长达1.44μS,在点较高的情况下勉强能够通信,若通信速率更高,或寄生电容更大,则很难保证通信正常。 为了让总线寄生电容快速放电,确保总线快速进入隐性状态,需要在CANH、CANL之间放置一个负载电阻。增加一个60Ω的电阻后,波形如图4、图5。从图中看出,显性恢复到隐性的时间缩减到128nS,与显性建立时间相当。 图4 图5

汽车CAN总线基础知识

CAN总线协议 控制器局域网总线(CAN, Controller Area Network )是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。该协议的健壮性使其 用途延伸到其他自动化和工业应用。CAN协议的特性包括完整性的串行数据通讯、提供实时 支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。 CAN总线发展 控制器局域网CAN( Controller Area Network)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN仍可提供高达50kbit/s的数据传输速率。 CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以 使用光缆连接,而且在这种总线上总线协议支持多主控制器。[1]CAN与I2C总线的许多细节 很类似,但也有一些明显的区别。当CAN总线上的一个节点(站)发送数据时,它以报文形式 广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。 当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给 本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接 收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。 由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。 当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器 都有自己独立的传感器。 CAN总线在空闲(没有节点传输报文)时是一直处于隐性状态。当有节点传输报文时显性覆盖隐性,由于CAN总线是一种串行总线,也就是说报文是一位一位的传输的,而且是数字信号(0和1),1代表隐性,0代表显性。在传送报文的过程中是显隐交替的,就像二进制数字0101001等,这样就能把信息发送出去,而总线空闲的时候是一直处于隐性的。 CAN总线特征 (1)报文(Message)总线上的数据以不同报文格式发送,但长度受到限制。当总线空闲时, 任何一个网络上的节点都可以发送报文。 ⑵信息路由(Information Routing)在CAN中,节点不使用任何关于系统配置的报文,比 如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。 (3) 标识符(Identifier)要传送的报文有特征标识符(是数据帧和远程帧的一个域),它给出的不是目标节点地址,而是这个报文本身的特征。信息以广播方式在网络上发送,所有节点都可以接收到。节点通过标识符判定是否接收这帧信息。

汽车CAN总线基础知识

CAN总线协议 控制器局域网总线(CAN,Controller Area Network)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。该协议的健壮性使其用途延伸到其他自动化和工业应用。CAN协议的特性包括完整性的串行数据通讯、提供实时支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。 CAN总线发展 控制器局域网CAN( Controller Area Network)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN仍可提供高达50kbit/s的数据传输速率。 CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以使用光缆连接,而且在这种总线上总线协议支持多主控制器。[1]CAN与I2C总线的许多细节很类似,但也有一些明显的区别。当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。 当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。 CAN总线在空闲(没有节点传输报文)时是一直处于隐性状态。当有节点传输报文时显性覆盖隐性,由于CAN总线是一种串行总线,也就是说报文是一位一位的传输的,而且是数字信号(0和1),1代表隐性,0代表显性。在传送报文的过程中是显隐交替的,就像二进制数字0101001等,这样就能把信息发送出去,而总线空闲的时候是一直处于隐性的。 CAN总线特征 (1)报文(Message)总线上的数据以不同报文格式发送,但长度受到限制。当总线空闲时,任何一个网络上的节点都可以发送报文。 (2)信息路由(Information Routing)在CAN中,节点不使用任何关于系统配置的报文,比如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。 (3)标识符(Identifier) 要传送的报文有特征标识符(是数据帧和远程帧的一个域),它给出的不是目标节点地址,而是这个报文本身的特征。信息以广播方式在网络上发送,所有节点都可以接收到。节点通过标识符判定是否接收这帧信息。

车辆CAN总线概述(完整版)

一.CAN总线简介 1、CAN总线得发展历史 20世纪80年代初期,欧洲汽车工业得蓬勃发展,车辆电子信息化程度得也不断提高。当时,由于消费者对于汽车功能得要求越来越多,而这些功能得实现大多就是基于电子操作得,这就使得电子装置之间得通讯越来越复杂,同时意味着需要更多得连接信号线,但就是传统得线束式汽车电子系统已经不能满足车辆电子信息功能发展得需求。为了解决这一制约现代汽车电子信息化发展得瓶颈,德国Bosch公司设计了一个单一得网络总线,所有得外围器件可以被挂接在该总线上,经过试验,这一总线能够有效解决现代汽车中庞大得电子控制装置之间得通讯,并且能够减少不断增加得信号线。所以在1986年Bosch公司正式公布了这一总线,且命名为CAN总线。 CAN控制器局部网(CAN—Controller Area Network)属于现场总线得范畴,它就是一种有效支持分布式控制或实时控制得串行通讯网络,它具有很高得网络安全性、通信可靠性与实时性,简单实用,网络成本低,特别适用于汽车计算机控制系统与环境恶劣、电磁辐射强与振动大得工业环境,因此CAN总线在诸多现场总线中独占鳌头,成为汽车总线得代名词,CAN总线开始进入快速发展时期: 1987年Intel公司生产出了首枚CAN控制器(82526)。不久,Philips公司也推出了CAN 控制器82C200; 1991年,Bosch颁布CAN 2、0技术规范,CAN2、0包括A与B两个部分为促进CAN以及CAN协议得发展,1992在欧洲成立了国际用户与厂商协会(CAN in Automation,简称CiA),在德国Erlangen注册,CiA总部位于Erlangen。CiA 提供服务包括:发布CAN得各类技术规范, 免费下载CAN文献资料, 提供CANopen规范DeviceNet规范;发布CAN产品数据库,CANopen产品指南;提供CANopen验证工具执行CANopen认证测试;开发CAN规范并发布为CiA标准。 1993 年CAN 成为国际标准ISO11898(高速应用)与ISO11519(低速应用); 1993年,ISO颁布CAN国际标准ISO11898; 1994年,SAE颁布基于CA N得J1939标准; 2003年,Maybach发布带76个ECU得新车型(CAN,LIN,MOST); 2003年,VW发布带35个ECU得新型Golf。

CAN总线基础知识介绍

什么是CAN ? CAN,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。最初,CAN被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU 之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN控制装置。 一个由CAN 总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中,节点数目受网络硬件的电气特性所限制。例如,当使用Philips P82C250作为CAN收发器时,同一网络中允许挂接110个节点。CAN 可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。 CAN 是怎样发展起来的? CAN最初出现在80年代末的汽车工业中,由德国Bosch公司最先提出。当时,由于消费者对于汽车功能的要求越来越多,而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂,同时意味着需要更多的连接信号线。提出CAN总线的最初动机就是为了解决现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的信号线。于是,他们设计了一个单一的网络总线,所有的外围器件可以被挂接在该总线上。1993年,CAN 已成为国际标准ISO11898(高速应用)和ISO11519(低速应用)。 CAN是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。当信号传输距离达到10Km时,CAN 仍可提供高达50Kbit/s的数据传输速率。 由于CAN总线具有很高的实时性能,因此,CAN已经在汽车工业、航空工业、工业控制、安全防护等领域中得到了广泛应用。 CAN 是怎样工作的? CAN通讯协议主要描述设备之间的信息传递方式。CAN层的定义与开放系统互连模型(OSI)一致。每一层与另一设备上相同的那一层通讯。实际的通讯发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介质互连。CAN的规范定义了模型的最下面两层:数据链路层和物理层。下表中展示了OSI开放式互连模型的各层。应用层协议可以由CAN 用户定义成适合特别工业领域的任何方案。已在工业控制和制造业领域得到广泛应用的标准是DeviceNet,这是为PLC和智能传感器设计的。在汽车工业,许多制造商都应用他们自己的标准。 表1 OSI开放系统互连模型 7 应用层最高层。用户、软件、网络终端等之间用来进行信息交换。如:DeviceNet 6 表示层将两个应用不同数据格式的系统信息转化为能共同理解的格式 5 会话层依靠低层的通信功能来进行数据的有效传递。 4 传输层两通讯节点之间数据传输控制。操作如:数据重发,数据错误修复 3 网络层规定了网络连接的建立、维持和拆除的协议。如:路由和寻址 2 数据链路层规定了在介质上传输的数据位的排列和组织。如:数据校验和帧结构 1 物理层规定通讯介质的物理特性。如:电气特性和信号交换的解释 CAN能够使用多种物理介质,例如双绞线、光纤等。最常用的就是双绞线。信号使用差分电压传送,两条信号线被称为“CAN_H”和“CAN_L”,静态时均是2.5V左右,此时状态表示为逻辑“1”,也可以叫做“隐性”。用CAN_H比CAN_L高表示逻辑“0”,称为“显形”,

相关主题
文本预览
相关文档 最新文档