CAN总线发展史

最新更新时间:2015-05-05来源: elecfans关键字:CAN总线  发展史  局域网 手机看文章 扫描二维码
随时随地手机看文章
起源
    1986 年 2 月,Robert Bosch  公司在 SAE(汽车工程协会)大会上介绍了一种新型的串行总线——CAN控制器局域网,那是 CAN 诞生的时刻。今天,在欧洲几乎每一辆新客车均装配有 CAN 局域网。同样,CAN也用于其他类型的交通工具,从火车到轮船或者用于工业控制。CAN 已经成为全球范围内最重要的总线之一 —— 甚至领导着串行总线。在 1999 年,接近 6 千万个 CAN 控制器投入应用;2000 年,市场销售超过1 亿个 CAN 器件。
    在 1980 年的早些时候,Bosch 公司的工程师就开始论证当时的串行总线用于客车系统的可行性。因为没有一种现成的网络方案能够完全满足汽车工程师们的要求,于是,在 1983 年初,Uwe Kiencke  开始研究一种新的串行总线。新总线的主要方向是增加新功能、减少电气连接线 ,使其能够用于产品,而非用于驱动技术。来自 Mercedes-Benz  的工程师较早制定了总线的状态说明,而 Intel 也准备作为半导体生产的主要厂商。当时聘请的顾问之一是来自于德国 Braunschweig-Wolfenbüttel 的 Applied Science 大学教授 WolfhardLawrenz 博士 给出了新网络方案的名字“Controller Area Network”,简称 CAN。来自 Karlsruhe 大学的教授Horst Wettstein 博士也提供了理论支持。
     1986 年 2 月,CAN 诞生了。在底特律的汽车工程协会大会上,由 Bosch 公司研究的新总线系统被称为“汽车串行控制器局域网” 。Uwe Kiencke、 Siegfried Dais  和 Martin Litschel 分别介绍了这种多主网络方案。此方案基于非破坏性的仲裁机制,能够确保高优先级报文的无延迟传输。并且,不需要在总线上设置主控制器。此外,CAN 之父——上述几位教授和 Bosch 公司的 Wolfgang Borst、Wolfgang Botzenhard、Otto Karl、Helmut Schelling、Jan Unruh  已经实现了数种在 CAN 中的错误检测机制。该错误检测也包括自动断开故障节点功能,以确保能继续进行剩余节点之间的通讯。传输的报文并非根据报文发送器/接收器的节点地址识别(几乎其它的总线都是如此),而是根据报文的内容识别。同时,用于识别报文的标识符也规定了该报文在系统中的优先级。
     当关于这种革新的通讯方案的大部分文字内容制定之后,于 1987 年中期,Intel 提前计划 2 个月交付了首枚 CAN 控制器:82526,这是 CAN 方案首次通过硬件实现。仅仅用了四年的时间,设想就变成了现实。不久之后,Philips  半导体推出了 82C200。这两枚最先的 CAN 控制器在验收滤波和报文控制方面有许多不同。一方面,由Intel主推的FullCAN比由Philips主推的BasicCAN占用较少的CPU载荷;另一方面, FullCAN器件所能接收的报文数目相对受到限制,BasicCAN 控制器仅需较少的硅晶体。今天的 CAN 控制器中,“孙子”辈们在同一模块中的验收滤波和报文控制方面仍有相当的不同,制造出 BasicCAN 和 FullCAN 两大阵营。
标准化与一致性
    在 1990 年早些时候,Bosch CAN 规范(CAN 2.0 版)被提交给国际标准化组织。在数次行政讨论之后,应一些主要的法国汽车厂商要求,增加了“Vehicle Area Network(VAN)”内容,并于 1993 年 11 月出版了CAN 的国际标准 ISO11898。除了 CAN 协议外,它也规定了最高至 1Mbps 波特率时的物理层。同时,在国际标准 ISO11519-2 中也规定了 CAN 数据传输中的容错方法。1995 年,国际标准 ISO11898 进行了扩展,以附录的形式说明了 29 位 CAN 标识符。   但令人伤心的是,所有出版的 CAN 规范均包含错误或者不完整。因此,为避免出现不兼容的 CAN 应用,Bosch 公司一直在进行验证 CAN芯片是否基于Bosch 的 CAN参考模型的工件。此外,几年来在Lawrenz教授领导下,位于德国 Braunschweig/Wolfenbüttel 的 Applied Science 大学进行 CAN 的一致性测试,测试模式基于国际标准测试规范 ISO16845。
    当前,修订的 CAN 规范正在标准化中。ISO11898-1 称为“CAN 数据链路层”,ISO11898-2 称为“非容错 CAN 物理层”,ISO11898-3 称为“容错 CAN 物理层”。国际标准 ISO11992(卡车和拖车接口)和 ISO11783(农业和森林机械)都在美国标准 J1939 的基础上定义了基于 CAN 应用的子协议,但是它们并不完整。 
CAN 先行者的发展
    尽管当初研究 CAN 的起点是应用于客车系统,但 CAN 的第一个市场应用却来自于其他领域。特别是在北欧,CAN 早已得到非常普遍的应用。在荷兰,电梯厂商 Kone 使用 CAN  总线。瑞士工程办公室 Kvaser已建议将 CAN 应用至一些纺织机械厂(Lindauer Dornier 和 Sulzer),并由他们提供机器的通讯协议。这一领域中,在 Lars-Berno Fredriksson 的领导下,公司建立了“CAN 纺织机械用户集团”。 到 1989 年,他们已研究出通讯原理,并于 1990 年早期帮助建立“CAN Kingdom”开发环境。尽管 CAN Kingdom 并不是一种基于 OSI 参考模型的应用层,但它被认为是基于 CAN 的高层协议的原型。在荷兰,Philips 医疗系统决定使用 CAN 构成 X 光机的内部网络,成为 CAN 的工业用户。主要由 TomSuters 发表的“Philips 报文规范——PMS”提出了 CAN 网络的第一个应用层。来自德国 Weingarten 的 AppliedScience 大学教授 Konrad Etschberger 博士也持同样的观点。他管理 Steinbeis Transfer Center for  ProcessAutomation  (Stzp)公司(现在更名为 IXXAT Automation 公司),并开发出一个类似的方案。不管如何,第一个高层协议正在形成。大多数 CAN 的先行者使用单片电路的方法,通讯功能、网络管理、应用代码组合在同一个软件之中。即使一些用户有较多的标准模块可供利用,但面对所有的解决方案,他们也一定存在着缺陷。必须持续稳定地发展 CAN 的高层协议——即使在今天,仍然有部分用户低估这个问题。 织梦好,好织梦 
    在 1990 年的早些时候,开始筹划成立一个用户组织,从而将不同的解决方案标准化。在 1992 年初的几个月里,当时 VMEbus 杂志的主管(出版社:Franzis) Holger Zeltwanger 将用户和厂商集中在一起,讨论建立一个促进 CAN 技术发展的中立平台,同时也针对串行总线市场进行分析。1992 年 5 月,CiA“CANin Automation”用户集团正式成立。仅在几个星期后,CiA 即发表了第一份技术杂志,那是关于物理层的。CiA 推荐仅使用遵循 ISO11898 的 CAN 收发器。到现在为止,在当时的 CAN 网络中使用非常普遍但并不兼容的 RS-485 收发器已基本消失,尽管它也是厂商提供的。CiA 的首批任务之一是规定 CAN 的应用层。根据 Philips 医疗系统(PMS)和 Stzp 所提供的内容,依靠其余 CiA 会员的协助,CAL——“CAN 应用层”也称为“绿皮书”诞生了。在制定 CAN 应用规范时,CiA 的一个主要任务是进行 CAN 专家和其他 CAN 学习者之间的信息交流。因此,从 1994 年起,CiA 每年召开一次国际 CAN 会议(iCC)。
  另外一个理论的方法是借鉴于 LAV,一个农业的交通工具协会。在 1980 年晚些时候开始,一个基于CAN 的农业交通工具总线系统(LBS)被制定出。但在工作最终完成前,国际标准化委员会决定改向支持
US 解决方案——J1939。这也是一个基于 CAN 的应用子协议,由 SAE 的 Truck and Bus 协会制定。J1939是一个非模块化的方案,简单易学,但灵活性很差。
从理论到实践
   当然,生产 CAN 模块集成器件的 15 家半导体厂商主要聚焦于汽车工业。从 1990 年中期起,Infineon公司和 Motorola 公司已向欧洲的客车厂商提供了大量的 CAN 控制器。作为下一波,从 1990 年后期起,远东的半导体厂商也开始提供 CAN 控制器。1994 年,NEC  推出了传说中的 CAN 芯片 72005,但是,这一步太早了——当时,这个器件并不能投入使用。从 1992 年起,Mercedes-Benz(奔驰) 开始在他们的高级客车中使用 CAN 技术。第一步使用电子控制器通过 CAN 对发动机进行管理;第二步使用控制器接收人们的操作信号。这就使用了 2 个物理上独立的CAN 总线系统,它们通过网关连接。其他的客车厂商也纷纷赶来斯图加特学习,在他们的客车上也使用 2套 CAN 总线系统。现在,继 Volvo、 Saab、Volkswagen 、BMW 之后,Renault 和 Fiat 也开始在他们的汽车上使用 CAN 总线。
    在 1990 的早些时候,美国俄亥俄州的机械工程公司的工程师们与 Allen-Bradley 公司、Honeywell  微型开关公司开始了一个合资项目,内容是基于 CAN 的通讯与控制。但是,不久之后,项目组的重要成员离开合资项目终止。但 Allen-Bradley 公司和 Honeywell 公司各自继续从事这项工作。这导致产生了两个高层协议:“ DeviceNet” 和“Smart Distributed System (SDS)”,而且这 2 个协议在较低层的通讯层上非常相似。在 1994 年早些时候,Allen-Bradley 将 DeviceNet 规范移交给专职推广 DeviceNet 的组织“Open DeviceNetVendor Association(ODVA)”。而 Honeywell  则放弃了在 SDS 方面的努力,使得 SDS  更象 Honeywell  公司的内部解决方案。 DeviceNet 特别为工厂自动控制而定制,因此,使其成为类似 Profibus-DP 和 Interbus协议的有力竞争者。倘若仅从即插即用的功能考虑,DeviceNet 已经成为美国特定应用领域中的领导者。
    在欧洲,一些公司在尝试使用 CAL。尽管 CAL 在理论上正确,并在工业上可以投入应用,但每个用户都必须设计一个新的子协议,因为 CAL 是一个真正的应用层。CAL 可以被看作一个应用 CAN 方案的必要
理论步骤,但在这一领域它不会被推广。从 1993 年起,在 Esprit project ASPIC 范围内,由 Bosch 领导的欧洲协会研究出一个原型,由此发展成为 CANopen。它是一个基于 CAL 的子协议,用于产品部件的内部网络控制。在理论方面,来自德国 Reutlingen 的 Applied Science 大学教授 Gerhard Gruhler 博士 和来自Newcastle (UK)大学的 Mohammed Farsi  积极参与,均是其中最成功的活跃分子之一。在项目完成之后,CANopen  规范移交给 CiA 组织,由其进行维护与发展。在 1995 年,CiA 发表了完整版的 CANopen  通讯子协议;仅仅用了 5 年的时间,它已成为全欧洲最重要的嵌入式网络标准。 CANopen  不仅定义了应用层和通讯子协议,也为可编程系统、不同器件、接口、应用子协议定义了页状态,这也就是工业领域(比如:打印机、海事应用、医疗系统)决定使用 CANopen 的一个重要原因。   DeviceNet  和 CANopen,是两个定位于不同市场的标准应用层协议(EN 50325)。DeviceNet 适合于工厂自动化控制; CANopen  适合于所有机械的嵌入式网络。这又造就了两个不同的应用范围,因此,有必要定义应用层的规范历史(可以将一些特定的大量嵌入式系统排除在外)。 
CAN 前景展望
   尽管 CAN 协议已经有 15 年的历史,但它仍处在改进之中。从 2000 年开始,一个由数家公司组成的 ISO任务组织定义了一种时间触发 CAN 报文传输的协议。Bernd Mueller 博士 、Thomas Fuehrer  、Bosch 公司人员和半导体工业专家、学术研究专家将此协议定义为“时间触发通讯的 CAN(TTCAN)”,计划在将来标准化为 ISO11898-4。这个 CAN 的扩展已在硅片上实现,不仅可实现闭环控制下支持报文的时间触发传输,而且可以实现 CAN 的 x-by-wire 应用。因为 CAN 协议并未改变,所以,在同一个的物理层上,既可以实现传输时间触发的报文,也可以实现传输事件触发的报文。TTCAN  将为 CAN 延长 5-10 年的生命期。现在,CAN 在全球市场上仍然处于起始点,当得到重视时,谁也无法预料 CAN 总线系统在下一个 10-15 年内的发展趋势。这里需要强调一个现实:近几年内,美国和远东的汽车厂商将会在他们所生产汽车的串行部件上使用 CAN。另外,大量潜在的新应用(例如:娱乐)正在呈现——不仅可用于客车,也可用于家庭消费。同时,结合高层协议应用的特殊保安系统对 CAN 的需求也正在稳健增长。德国专业委员会 BIA 和德国安全标准权威 TÜV  已经对一些基于 CAN 的保安系统进行了认证。CANopen-Safety 是第一个获得 BIA 许可的 CAN 解决方案,DeviceNet-Safety 也会马上跟进。全球分级协会的领导者之一,Germanischer Lloyd 正在准备提议将 CANopen  固件应用于海事运输。在其他事务中,规范定义可以通过自动切换将 CANopen  网络转换为冗余总线系统。
 
CAN 历史事件一览表
1983: Start of the Bosch internal project to develop an in-vehicle network
1986: Official introduction of CAN protocol 
1987: First CAN controller chips from Intel and Philips Semiconductors
1991: Bosch’s CAN specification 2.0 published 
1991: CAN Kingdom CAN-based higher-layer protocol introduced by Kvaser
1992: CAN in Automation international users and manufacturers group established 
1992: CAN Application Layer (CAL) protocol published by CiA
1992: First cars from Mercedes-Benz used CAN network 
1993: ISO 11898 standard published 
1994: 1st international CAN Conference (iCC) organized by CiA
1994: DeviceNet protocol introduction by Allen-Bradley
1995: ISO 11898 amendment (extended frame format) published 
1995: CANopen protocol published by CiA
2000: Development of the time-triggered communication protocol for CAN (TTCAN) 织梦内容管理系统 
关键字:CAN总线  发展史  局域网 编辑:什么鱼 引用地址:CAN总线发展史

上一篇:CAN基本知识
下一篇:CAN总线百科

推荐阅读最新更新时间:2023-10-12 18:33

基于ARM和CAN总线的嵌入式PLC设计
0 前言 可编程逻辑控制器(PLC),一种数字运算操作的电子系统,专为在工业环境应用而设计。它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟输入/输出控制各种类型的机械或生产过程,是工业控制的核心部分。随着工业技术的发展以及规模的不断扩大,传统的PLC面临着IO点数增多、通讯功能需要增强等诸多方面的挑战,已无法满足个性化、差异化的需求。 现有的设计主要有工控机、单片机板等。工控机在互连、表达、算法等方面优势明显,但其实时性、稳定性难以满足连续控制的苛刻要求,通常用于监控。单片机系统在成本控制上更加灵活,可是没有操作系统使其只能应用于低端场合。具
[单片机]
基于ARM和<font color='red'>CAN总线</font>的嵌入式PLC设计
如何抗干扰——CAN总线抗干扰的6条“军规”
随着CAN总线在电动汽车、充电桩、电力电子、轨道交通等电磁环境比较恶劣的场合应用越来越多,信号干扰的问题已经严重影响到使用者对CAN总线的信任。究竟如何才能抗干扰?本文展示了致远电子CAN总线抗干扰的6条“军规”。 在汽油车时代,CAN总线遇到的干扰少之又少,即使有一些继电器和电磁阀的脉冲,也不会有很大影响,稍微进行双绞处理,完全可以实现零错误帧。 可是到了电动汽车年代,逆变器、电动机、充电机等大功率设备对CAN的影响足以中断通讯,或者损坏CAN节点,如图1图2所示,就是被逆变器干扰的CAN波形。 图1 干扰前 图2 干扰后 面对干扰,各个汽车厂、零部件厂,测试诊断设备的厂商都纷纷研究抗干扰之“妙方”
[汽车电子]
如何抗干扰——<font color='red'>CAN总线</font>抗干扰的6条“军规”
四个阶段解读中国光伏逆变器发展史:弱到强,跟跑到领跑,占据领先地位
光伏逆变器虽然只占光伏电站造价的5%,但却是整个光伏系统的核心。传统的光伏逆变器只是简单地将光伏直流电转化为电网所需的交流电,在智能电站概念提出后,逆变器的重要性越来越突出,还承载了支撑电网、信息交互、数据分析、电站管理、光储结合等重要功能。 不同于光伏组件制造几乎只看成本和效率,光伏逆变器的设计和制造更多要从整个系统角度考虑,除了转换效率,还要兼顾综合防护、稳定运行、安全可靠和电网友好性;随着光伏电站管理越来越精细化,光伏逆变器承载着数据采集的任务;而当新型组件出现和跟踪支架推出后,逆变器还要考虑如何与这些直流侧部件进行深度结合。可以说,逆变器是连接发电设备(组件)和电网的桥梁,也是光伏电站最重要的核心部件。 逆变器最主要的使命
[新能源]
用PIC18F458的CAN模块实现CAN总线通讯
  CAN(Controller Area Network)即 控制器 区域网,是一种主要用于各种 设备 监测及控制的网络。CAN 具有独特的设计思想, 良好的功能特征和极高的可靠性,现场抗干扰能力强。其在国内外工业控制领域已经被广泛应用, 成为最有发展前途的现场总线之一。   美国微芯公司的PIC18F458 单片机集成了CAN 通信接口,执行Bosch 公司的CAN2.0A/B 协议。它能支持CAN1.2、CAN2.0A、CAN2.0B 协议的旧版本和CAN2.0B现行版本。使用PIC18F458 单片机的嵌入式系统, 可以很方便的利用CAN 总线与外界进行数据交换。它的优点是电路接口比较简单,只需很少的外围电路就可实现
[单片机]
用PIC18F458的CAN模块实现<font color='red'>CAN总线</font>通讯
CAN总线数据采集系统
引 言     在工业控制中,为了保证系统的可靠运行,需要检测周围的环境变量(如温度、气压、湿度等)。通常的做法是将分布在各处的传感器采集到的信号通过各自的线路连接到监控中心,这种方式在有效地完成检测任务的同时也造成了线路资源的极大浪费。因此,提出了简化线路布局的要求。CAN(控制器局域网)是串行通信协议,能有效支持高安全等级的分布实时控制,同时在理论上,CAN总线网络内的节点近乎没有限制。基于此,本设计将一种基于数字信号控制器的CAN总线数据采集系统作为一个CAN节点,每一个需要监控的区域放置一个CAN节点,各个节点通过CAN总线与监控中心实施通信。系统总体框图如图1所示。 1 硬件构成     该数据采集系统由两部分构
[嵌入式]
基于CAN总线的电流、电压变送器的设计与实现
     0.引言   现场总线技术和智能化仪表技术是目前自动与控制行业发展最快的两大技术。在现场总线技术中,CAN总线是发展较为迅速的一种协议标准,已经被广泛应用于自动化领域。本文介绍的是一种基于CAN总线的智能变送系统。控制器局域网(ControllerAreaNetwork,CAN)是德国Bosch公司在20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种数据通信协议。CAN总线能有效地支持分布式控制或实时控制的串行通信网络。通信介质可以是双绞线、同轴电缆和光导纤维。    1 系统网络构成   为满足该控制系统既要集中管理又要分散控制的要求,基于CAN总线的电流、电压变送
[电源管理]
基于<font color='red'>CAN总线</font>的电流、电压变送器的设计与实现
CAN总线解决方案在拉丝机上的应用
拉丝机系统是一个对速度的控制要求高的一种机械设备,要求控制系统能够提供非常精确、平滑的线速度。我们所做的这套系统是用来拉金丝的,因此系统的各方面要求更高。整个系统比较复杂,控制设备繁多,各个电机之间要求很高的协调性,该系统采用4套伺服电机控制,而每套伺服电机间均有数据交换,且数据通讯也要求很强的实时性,也就是要求系统具有总线通讯能力。这样就要求伺服驱动器拥有非常强大的功能才能满足控制要求。而我们的伺服驱动器则能满足此类系统控制要求,下面是我们驱动器的一些功能特点:   1、全数字化的速度和位置控制功能,并提供位置、速度和扭矩的控制功能;   2、灵活多变的跟踪控制方式,提供高灵敏度的跟踪效果;   3、可编程
[工业控制]
<font color='red'>CAN总线</font>解决方案在拉丝机上的应用
基于ARM的CAN总线智能节点的设计
CAN(Controller Area Network)即控制器局域网,CAN总线是国际上应用最广泛的现场总线之一。它最早是由德国Bosch公司推出的,CAN通信协议是一种用于汽车内部测量与执行部件之间的数据通信协议。 作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,CAN总线已被广泛应用于各个自动化控制系统中。例如,在汽车电子、自动控制、智能大厦、电子系统、安防监控等各领域中,CAN总线具有不可比拟的优越性。本设计给出CAN总线节点方案。它采用内置多路CAN总线控制器PLC2294作为主控制器,使得该节点体积小、功耗低、抗干扰性好,因而特别适用于汽车、工业控制以及医疗系统和容错维护总线中。 1
[网络通信]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved