1、基于单片机CAN总线的车灯控制系统设计(完整资料)(可以直接使用,可编辑 优秀版资料,欢迎下载) 毕 业设计(论文)设计(论文)题目:基于单片机CAN总线的车灯控制系统设计学生姓名: 指导教师:二级学院: 专 业:班 级: 学号:提交日期:2014年 5月15日 答辩日期: 014年 5月17日 目 录摘要IIIbtractI1 绪论1。1汽车电子的概念11。汽车电子的发展过程1.3汽车电子的现状及发展趋势。汽车网络技术综述21。5汽车网络的分类及AN协议316发展和使用汽车网络的意义517本课题研究的内容2 CA总线的技术分析2。 CAN总线的性能特点72。2AN总线的一些基本概念72.3
2、AN总线的位数值表示与通信距离82.4 CAN总线协议的技术规范2.5AN总线的报文及其帧格式142.6 CAN总线的错误对策2。7 CAN总线的位定时和位同步223硬件电路设计243。 设计方案24。2元器件选择263电源电路313。4按键电路33输出电路3 车灯控制系统软件设计341 系统应用层协议制定34.2标识符 D的定义344.3 数据域的编码364。4 车灯控制系统软件设计3645CA 节点软件设计64 控制模块程序设计394.子模块程序设计41软件测试425总结7参考文献48附录4致谢68基于单片机CAN总线的车灯控制系统设计摘 要 近年来,随着汽车内部电控系统的日益复杂,电子控
3、制系统间的数据通讯变得越来越重要,汽车网络技术应运而生。AN(ontrllerAr etork)总线是一种串行局域网总线,能有效支持分布式实时控制的串行通信。本文深入研究 AN 总线网络协议及其技术规范,在 A 技术规范 A2。0B 的基础上,完成车灯控制系统应用层协议的制定。对汽车车灯系统组成进行了分析,并将整车车灯控制系统分成了控制模块、左前模块、左后模块、右前模块、右后模块和车内照明模块。采用了“CAN单片机CAN 收发器的 CAN 节点构成方案.在硬件设计部分对所用芯片进行了介绍,并对各功能电路进行了详细分析,给出了详细的设计电路。阐述了车灯控制系统的软件设计思想,给出了 CAN节点的
4、程序设计,分析了控制模块以及子模块的程序功能并给出了程序流程图。关键词:AN 总线,9S,SA100,车灯控制T desnof cnr ystebe n MC CAN s lamAbstratIn recent yers,ith the veicle eectronc otrolsystem ithin tegrowng ompexity elcronicotro systems data cmuniations is oming ncrsingly imot, automtienewokingtechnoloy came nto being。 CN (Cnrollr Area Neork)
5、busis a erial uoa aranetworks,can spprt istbed retimeconolofte seial comunti。 Tharticle dies the CA etwok prtocol and technlsecfto, techical secication C2.0B CNbae n e complete ht ntol syste, teevelopme applicaion layer rocol.Composition f ehice eadligh ytmsnalyisand vhice lights conrol sstem sdivde
6、d o a control modue, lf he module, eft rer odule, rghtfron modue, rght after te modl andthe interio lihn module。Adted the CAN MCU + CN rnsciver,” eCANodeso progra。 In te hardar esi used bsome of th cips were trodud,and t fnctinscaried utadetailed aalyisof thcirui, giventhe detaied des ofthe crcui sc
7、ribedlht ontolsyststwre dsin, is the pograCAN nod dsin, analyis,otol ubmodeof the rgramodles an eturesand givestrogram flow hart。 Keywords: CAN u, 89S52, SJA1000,Liht onrl 1绪 论。1汽车电子的概念汽车电子是指应用于汽车上的有利于提升汽车驾驶安全性、减少燃料消耗、减少废气排放以及增加驾乘舒适性和便捷性的电子装置。汽车电子化被认为是汽车技术发展进程中的一次革命,汽车电子化的程度被看作是衡量现代汽车发展水平的重要标志,是用来开发
8、新车型,改进汽车性能最重要的技术措施。总的说来,汽车电子技术是一个技术复杂、门类多、知识密集的高技术领域,涉及电子、机械、计算机等多个学科。汽车正由单纯的机械产品向机电一体化(机电热、机电液、机电光)方向发展,汽车必将进入电脑控制的“电子汽车”时代。.2汽车电子的发展过程汽车电子化的过程经历了四个阶段:二极管的发明促使了汽车电子的诞生(第一阶段,车载收音机、发电机硅整流器、晶体管无触点点火技术是当时的代表技术)、晶体管和模拟集成电路的诞生促生了汽车电子技术的第二阶段(发电机电子管理系统、电控自动变速器系统、制动防抱死系统得到了很大的发展)、微型计算机的兴起使汽车电子进入了第三阶段(动力传动总成
9、控制系统、制动转向悬架控制系统、车身电子控制系统、通讯和导航系统等)、灵巧传感器和大容量存储系统的发展使汽车电子进入第四阶段(电子技术、自动控制技术、传感器技术、网络技术和机电一体化得到了很大的发展). 1汽车电子的现状及发展趋势改变世界的机器是汽车,而改造当代汽车并使其发生质的变化的是电子信息化。当代汽车越来越广泛地采用电子信息技术,以提升汽车的性能和服务功能,满足人们的各种办公和娱乐需要,使汽车从单纯的代步工具逐渐演变成“流动的办公室”、“流动的家庭和“流动的娱乐室”。 当代汽车技术的发展紧紧围绕着安全、环保、节能、舒适这四个主题,电子信息化也正是从上述四个方面逐步提升汽车性能。当前汽车电
10、子产品中使用最广泛的、超过汽车电子产品销售额 50的是娱乐和舒适性产品.如各种车载收放机、CD机、DV 机、车载电话、导航设施,以及车身各附件控制模块等。这些设施不涉及汽车基本功能,只是增加辅助功能而己。可以说成熟的家电产品都可以移植到汽车上使用。 汽车电子的技术基础来源于半导体行业、软件行业、传感器和执行器等电子技术的发展。汽车电子技术行业的发展最终依赖于汽车工业的蓬勃发展以及汽车工业在工业领域中所处的地位。03 年中国汽车的产销量高达 444 万辆,其中轿车占20 万辆,并以超过两位数的年增长率持续发展。中国汽车市场由潜在变为现实,中国汽车电子信息产品市场也随之迅速扩大,部分核心控制技术正
11、在逐步国产化。 随着集成控制技术、计算机技术和网络技术的发展,汽车电子技术已明显向集成化、智能化和网络化等方向发展。 集成化 近年来嵌入式系统、局域网控制和数据总线技术的成熟,使汽车电子控制系统的集成成为汽车技术发展的必然趋势。将发电机管理系统和自动变速器控制系统,集成为动力传动系统的综合控制;将制动防抱死控制系统、牵引力控制系统和驱动防滑控制系统综合在一起进行制动控制;通过中央底盘控制器,将制动、悬架、转向、动力传动等控制系统通过纵向进行连接,控制器通过复杂的控制运算,对各子系统进行协调,将车辆行驶性能控制到最佳水平,形成一体化底盘控制系统。 智能化智能化传感技术和计算机技术的发展,加快了汽
12、车的智能化进程.汽车智能化相关的技术问题已受到汽车制造商的高度重视.其主要技术中“自动驾驶仪”的构想必将依赖于电子技术实现。智能交通系统(T)的开发将与电子、卫星定位等多个交叉学科相结合,能根据驾驶员提供的目标资料,向驾驶员提供距离最短而且能绕开车辆密度相对集中处的最佳行驶路线。它装有电子地图,可以显示出前方道路、并采用卫星导航。从全球定位卫星获取沿途天气、车流量、交通事故、交通堵塞等各种情况,自动筛选出最佳行车路线。 网络化随着越来越多的电控器件应用在汽车上,车载电子设备间的数据通信变得越来越重要。以分布式控制系统为基础构造汽车车载电子网络系统是十分必要的.大量数据的快速交换、高可靠性及低成
13、本是对汽车电子网络系统的要求。在该系统中,各子处理机独立运行,控制改善汽车某一方面的性能,同时在其它处理机需要时提供数据服务.主处理机收集整理各子处理机的数据,并生成车况显示。通信控制器保证数据的正常流动。电子技术已经广泛应用于汽车的各个领域,极大地改善了汽车的综合性能,使汽车在安全、节能、环保、舒适等各方面都有了长足的进步.1.4汽车网络技术综述汽车网络是计算机网络技术和工业现场总线控制技术在汽车中应用的结果。汽车网络控制是研究如何利用总线数据通信原理实现现代汽车中各个独立电子系统和控制装置间控制信息传递通道的简洁互连,实时、可靠的数据交换及综合协调控制的一门最新技术。它是以科学、合理的数据
14、通信协议及支持这样协议的大规模集成电路器件为基础的,是汽车行业发展的必然结果.早期的汽车网络中,通用网络标准并未得到广泛的认同和应用,用户通常利用自己制定的电路和通用异步收发器(UART)设备来实现简单的串行通信。由于没有统一标准,各汽车制造商都有一套独立定义的接口规范和专用供应商。这样,供应商虽然纵向紧密地与汽车制造商合作,却缺乏与其它供应商的横向联系,导致生产的同类产品不能兼容互换。采用标准化网络技术以后,各供应商按照统一的标准生产部件,提高了同类产品的兼容性和互换性。而汽车制造商可以委托任意一家合格的供应商开发符合标准的模块。 国际著名汽车制造商和零部件制造商于二十世纪八十年代就致力于汽
15、车网络技术的研究与应用,迄今已推出多种网络标准,如 80、VAN、CN等。在各种汽车网络中,CAN 以其独特的设计,优异的性能和极高的可靠性得到了最为广泛的应用.尤其在欧洲,aimle Chrsler、BM、Vlkswag 及Volvo 公司等都将CAN 作为他们电子系统控制器网络化的一种手段。美国的制造商也正逐步将他们的汽车网络系统由 J850 过渡到 AN。随着汽车网络技术的飞速发展,特别是 -ie技术的提出,近几年又诞生了许多新的协议,如 LIN、exRa、 ByFlight和 TP。这些协议有的可以直接划归到A 的分类中,而有些则不太好确定其分类归属。因此,大量新协议的诞生必然会导致对
16、车用网络分类的重新划分。汽车网络技术的作用 在汽车中引入网络技术最初是为了解决日益增长的线束问题,后来逐渐演绎出另外一个重要功能,即优化汽车电子控制。目前,汽车电子控制已经从初期的“电子-机械替代”阶段过渡到“独立系统的精确量化反馈控制”阶段,并朝着“多目标综合控制和智能化控制”的方向发展,即把整体上相关、功能上相对独立而位置上分布安装的电子系统或装置组成一个协调控制的综合系统.为了实现多目标的优化控制,进一步全面提高汽车的整体性能,根据智能化的要求和综合协调控制的特点,综合控制系统将更多地依赖系统内、外部信息的获取,这要求互相独立的电子系统和装置间进行数据交换和信息传递。因此,现代汽车采用网
17、络技术解决分布式控制是一种必然,使用汽车网络不仅可以减少线束,而且能够提高各控制系统的运行可靠性,减少冗余的传感器及相应的软硬件配置,实现各子系统之间的资源共享,便于集中实现各子系统的在线故障诊断。 汽车电子控制采用网络化设计可大大降低设计成本,缩短设计周期,其经济效益是十分明显的。为此最初只属于高档车的网络概念,现已逐步扩展到大批量生产的经济型车上.今天网络化的电子系统已成为所有级别汽车中至关重要的部件。汽车网络的分类及CN协议汽车网络技术从二十世纪八十年代提出以来,至今存在许多侧重功能不同的汽车网络标准。为方便研究和设计应用,二十世纪九十年代中期SA(Socetyo Auootie ngn
18、eer)把车用网络分为 A、D、E 五类,其中,A 类网为面向执行器、传感器的低速网络,N、TTPA 将成为其主流协议;B 类网为面向数据共享的中速网络,其主流协议将是CAN(IS 1891-3)、SAE J1850、VAN等协议;C 类网为面向实时控制的高速网 络, 其主 流 协 议 为CAN(ISO 18912) 、 TC(ime-Triggerd rotcl)、lexy等协议;D 类网主要面向多媒体、导航系统等,目前该类网络的主流协议为:D2B(omest Dgtal us)、MOST(Media Oriented ytemsanor);E类网是面向乘员安全系统的网络,主要应用于车辆被动
19、性安全领域,该类网络的协议有 Beflight等。如表 1所示。表 1-1 汽车网络分类网络分类位传输速率应用场合 类低速,10bps应用于只需传输少量数据的场合,如行李箱控制 B类中速,012bp应用于一般的信息传输场合,如仪表C类高速,125K1Mbps应用于实时控制的场合,如动力系统D 类高速,1Mbs应用于更严格的实时控制场合及多媒体控制 E类高速,Mps 应用于车辆被动安全性领域,如安全系统其中,控制器局域网CA(Contollr AraNetwork)是 80年代初 BOSH 公司为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发的一种串行通信协议,经多次修订,于199
20、1 年 9月形成技术规范 2.0 版本。该版本包括2。A 和 。0B 两部分。2.0A给出了曾在CAN技术规范版本。 中定义的 CAN报文格式,而 . 给出了标准(11 位)和扩展(29 位)两种报文格式。93 年 11月 ISO 正式颁布了道路交通运输工具数据信息交换高速通信控制器局域网(CAN)国际标准 SO 1898,为控制器的标准化、规范化铺平了道路。此后,越来越多的美国汽车公司采用 AN 网络。在 19 年美国汽车工程师协会卡车和巴士控制和通信子协会选择 CN 作为 J1 标准(在卡车和巴士中应用的 C类网络)的基础。作为汽车网络协议CAN 的国际标准有:SO 188(高速 CAN)
21、、ISO 8983(具有容错功能的 CAN)和IS 11984(TTA)。目前CA 已经成为 B、C 类网络的世界标准。N总线通信接口集成了CAN 协议的物理层和数据链路层功能,可完成对通信数据的成帧处理.CAN 协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。数据帧的标识码可由 11 位或 29 位组成,N2. 规定在标识符的前七位不能同时为逻辑零,这种按数据帧编码的方式,还可使不同的节点同时接收到相同的数据.数据段长度最多为 8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求.同时,8个字节不会占用过长的总线时间,从而保证了通信的实时性。CAN
22、协议采用RC 检验并可提供相应的错误处理功能,保证数据通信的可靠性。它具有下列主要特性: 1.AN为多主方式工作,不分主从,通信方式灵活,通过报文标识符通信,无需站地址等节点信息;CAN 网络上的节点信息分成不同的优先级,可满足不同的实时要求; 3。A 采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪情况; 4.CAN 只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送、接收数据,无需专门的“调度”; 5AN 的直
23、接通信距离最远可达 10k(速率 5s 以下); 6。AN 上的节点数主要取决于总线驱动电路,目前可达 10 个.报文标识符可达2032 种(AN2。A),而扩展标准(CA2B)的报文标识符几乎不受限制; .采用短帧结构,传输时间短,受干扰概率低,具有极好的检错效果。CA 的每帧信息都有CRC 校验及其它检错措施,降低了数据出错概率。CA节点在错误严重的情况下具有自动关闭输出功能,以使总线上其它节点的操作不受影响;。CN的通信介质可为双绞线、同轴电缆或光纤,选择灵活.1。发展和使用汽车网络的意义近年来,随着汽车内部电控系统的日益复杂,以及对汽车内部控制功能单元相互之间通讯能力要求的日益增长,采
24、用点对点连线,就需要大把的线束,这种传统构建汽车内部通讯的方式在电线布置、可靠性以及重量等方面都给汽车的设计和制造带来了很大的困扰。电子控制系统间的数据通讯变得越来越重要,因此围绕减少车内连线,实现数据的共享和快速交换,同时提高可靠性等方面,在快速发展的计算机网络基础上,实现了以分布式控制单元为基础构造的汽车电子网络系统. 汽车网络是指借助双绞线、同轴电缆或光纤等通讯介质,将车内众多的控制模块(或节点)联结起来,使若干的传感器、执行机构和EC公用一个公共的数据通道,通过某种通讯协议,在网络控制器的管理下共享传输通道和数据。汽车网络最开始出现在高档豪华汽车上,也缺少相应的标准化的通讯协议的支持。
25、随着越来越复杂、精密的功能单元被委托给外部供应商生产,汽车制造商开始从定义各自的专门协议发展到采用整个业界范围内认可的标准化通讯协议,提供了不同供应商的产品进行系统集成的可能性,使汽车网络迅速进入主流车型,到今天车载电控系统的网络已经成为现代车辆中至关重要的部分,在我国也已形成研究和开发使用的热潮。汽车网络减少了线束的使用,改善了系统的灵活性,通过系统的软件可以实现系统功能的变化, 消除了冗余传感器,实现了数据共享,也提高了对系统故障的诊断能力。可以说一辆车就是一个网络,汽车的智能化也是在网络基础上才能实现,网络还把汽车的行驶状态参数传送到显示屏上,司机可一目了然,大大方便了驾驶.汽车网络技术
26、的优点是:在应用层协议和数据定义统一的基础上,可以使之成为一个“开放式系统”,具有很强的灵活性.对于任何遵循上述协议的供应商所生产的控制单元都可轻易添加入该网络系统中或者从网络系统中去除,系统几乎不需要做任何硬件和软件的修改,这完全符合现代汽车平台式设计的理念。使用汽车网络不仅可以减少线束,而且能够提高各控制系统的运行可靠性,减少冗余的传感器及相应的软硬件配置,实现各子系统之间的资源共享,便于集中实现各子系统的在线故障诊断。因此汽车电子控制采用网络化设计可大大降低设计成本,缩短设计周期,其经济效益是十分明显的。专家认为, 世纪的汽车电子控制将以网络技术为核心。.本课题研究的内容本课题所研究的C
27、AN总线车灯控制系统,可以简洁汽车网络的设计、促进产品的实用化和低成本化. 本文主要研究内容如下: 1。深入研究CAN 总线网络协议及其技术规范,在CAN 技术规范 CAN.0 的基础上,完成车灯控制系统应用层协议的制定.2。提出车灯控制系统的设计方案,进行硬件电路设计,包括对所用芯片材料的收集、翻译、学习直至应用,对各个功能电路进行分析并给出设计电路。 3对车灯控制系统的软件进行程序设计,给出程序流程图,实现基于 CA 总线的汽车车灯控制网络的通信和对汽车车灯的控制。2 CAN总线线的技术分析2.1 AN总线的性能特点CAN属于总线式串行通信网络,由于其采用了许多新技术及其独特的设计,与一般
28、的通信总线相比,CAN 总线的数据通信具有突出的可靠性、实时性和灵活性,因而一些世界著名的汽车厂商如BNZ,BMW,PSCHE 等都采用CA 总线来实现汽车内部控制系统与各检测和执行机构间的数据通信。其特点可概括如下: CAN 是到目前为止唯一有国际标准的现场总线. CAN 为多主方式工作,网络上任一节点均可在任意时刻主动地向网络上其它节点发送信息,而不分主从。 CAN 网络上节点可分成不同的优先级,以满足不同的实时要求,优先级高的数据最多可在 134s得到传输,CN总线最大的特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。 CA 采用非破坏性总线仲裁技术。当多个节点同时向网络上传
29、送信息时,优先级低的节点主动退出数据发送,而优先级高的节点可不受影响地继续传输数据,此后,被延后的低优先级节点重新进行数据传输.有效避免了总线冲突,从而大大节省了总线冲突仲裁时间,尤其是在网络负载很重的情况下,也不会出现网络瘫痪情况,不像以太网那样冲突的各节点均需重新发送。 AN 节点只需通过对报文的标识符滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。 CAN 直接通讯距离最远可达10m(速率在K/s以下);通讯速率最高可达 1Mb/(此时通信距离最长为 40m).CAN 系统内两个任意节点之间的最大传输距离与其位速率有关。 CA 总线上的节点数主要取决于总线驱动电路,目前可
30、达 1 个. CAN报文采用短帧结构。每一帧的有效字节数为 8 个,传输时间短,受干扰的概率低,重新发送时间短,保证了数据出错率极低.C 的每帧信息都有 CRC 校验及其它检错措施,具有极好的检错效果。 通讯介质可为双绞线、同轴电缆或光纤,并且可配合使用,选择灵活。 CAN 总线具有较高的性价比。它结构简单,器件容易购置,每个节点的价格较低,且用户接口简单,能充分利用现有的单片机开发工具. CAN 节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其它操作不受影响.2.2 AN总线的一些基本概念1。发送器和接收器 在进行数据传输时,发出报文的单元称之为该报文的发送器
31、,该单元在总线空闲或该单元丢失仲裁前恒为发送器。若一个单元不是报文发送器,并且总线不处于空闲状态,则称该单元为接收器. 对于报文发送器和接收器,报文的实际有效事件是不一样的.对于发送器而言,如果直到帧结束末尾一直没出错,则对于发送器报文有效;如果报文受损,将允许按照优先权次序自动重新发送;为了能同其它报文访问总线进行竞争,总线一旦空闲重发送立即开始.对于接收器而言,如果直到帧结束的最后一位一直没出错,则对于接收器报文有效。 位填充、编码和位表达方式 构成一帧的帧起始、仲裁域、控制域、数据域和RC 序列均借助位填充规则进行编码,当发送器在被发送的位流中监测到五位连续的相同数值时,将自动地在实际的
32、发送位流中插入一个补码位。数据帧或远程帧的其余位域采用固定格式,不进行填充。出错帧和超载帧同样是固定格式,并且也不用位填充规则进行编码。 报文中的位流按照非归零(NRZoRetrn t ero)码方法编码,这意味着一个完整位的位电平要么是“显性”(逻辑 ),要么是“隐性(逻辑 )。 a. 当总线上的CAN 控制器发送的都是隐性位时,此时总线状态是隐性位;b. 如果总线上有显性位出现,隐性位总是让位于显性位,即总线上是显性位状态.帧格式 在CAN2.B 中存在两种不同的帧格式,其区别在于标识符的长度:具有11位标识符的帧称之为标准帧,而具有 位标识符的帧称之为扩展帧。 如 A 技术规范 。2 版
33、本所描述,标准帧格式数据/远程帧格式是等效的,而扩展格式是 CAN2.0B协议4报文滤波 CN技术规范20 对于报文滤波特别加以描述.报文滤波以整个标识符为基准。允许将任何标识符位设置为对报文滤波是“不考虑的。屏蔽寄存器可用于选择一组标识符,以便映像至接收缓存器中。如果使用屏蔽寄存器,屏蔽寄存器的每一位必须是可编程的,并且它们对于报文滤波是可开放或禁止的。屏蔽寄存器的长度可以是整个标识符,也可以是其中一部分。新增加的特性。为使控制器设计相对简单,并不要求执行完全的扩展格式,对于新型控制器而言,必须不加任何限制的支持标准格式。2.3CN总线的位数值表示与通信距离.3。1AN总线的位数值表示由于
34、A总线中传送的是差分电压信号,双线受到的干扰是一致的,能够有效避免或减少各种电磁噪声带来的影响。CA 总线上用“显性(Domit)和“隐性”(ecssve)两个互补的逻辑值表示“”和“”。如图 21所示,CAN-和 CNL为 CAN总线收发器与总线之间的两接口引脚电压,静态时均是5 左右,此时状态表示为逻辑“”,称为“隐性”,在隐性状态下,CNH和VCANL被固定于平均电压电平附近,Vdif近似于 0。用 VCANH比N高表示逻辑“0”,称为“显性”,此时,通常电压值为:CAH=3. 和 VCAN=.5V,显性状态以大于最小阀值的差分电压表示。在总线空闲或“隐性位期间,发送“隐性”状态。在“显
35、性”和“隐性”位同时发送时,最后总线数值将为“显性”(即“0”与“1”的结果为“0”). 图 21总线的位数值表示23.2 CAN总线的通信距离在总线范围内保证数据的一致性是CAN 总线的一个重要特性,总线上每一帧报文对各节点应保证同时有效,即满足时间和空间的一致性条件下,CN总线的标称传输速率为Mb/,距离不超过 m.降低传输速率可以相应的延长总线距离,这点在远程数据监控系统中非常有用,其传输速率与传输距离有类似比例关系,主要与介质的通信频谱、系统网络阻抗等因素有关,表 2-1 是传输速率与总线长度的关系图。这里的最大通信距离是指在同一条总线上两个节点之间的距离,在实际运用中,还要根据设定的
36、网络传输速度、C 收发器特性,通过具体计算才能准确得到系统两点间最远距离。表 . CN 总线系统任意两节点之间的最大距离位速率/Kb/s 00050050125105015最大距离/m40130703060300300670010000。4 AN总线协议的技术规范由于 CA 技术应用的普遍推广,导致要求通信协议的标准化。为此,191 年9 月Bc公司制定并发布了 C 技术规范(eion 2。)。该技术规范包括 A 和 B两部分。.0 给出了标准 AN 报文格式,而 2.0B 给出了标准和扩展两种报文格式。标准帧报文标识符有 1 位,扩展帧的报文标识符有 29位。2. CN总线的分层结构CAN
37、网络是一串行通讯协议,它可以非常有效地构成分布式实时过程监测/控制系统,并且有非常高的可靠性.其应用范围包括高速的通讯网络,以及低成本、高性能的现场设备互连。其结构如图22应用层目标层 -报文滤波 报文和状态的处理 传送层 故障界定 错误检测和标定 -报文校验 应答 总线仲裁 报文分帧 传输速率和定时物理层- 信号电平及位表示 - 传输媒体 图2.2 N 总线协议的分层结构CAN 协议分层结构如图 . 所示。CAN总线规范规定了任意两个C 节点之间的兼容性,包括电气特性及数据解释协议,为保证设计使用的透明性及执行的灵活性,CAN 协议分为三层:目标层、传送层、物理层。其中目标层及传送层包括了
38、IO/OSI(Intrnaonal Stnddzin Organiztion/Opn Sysm Intenction)定义的数据链路层所有功能。 目标层的功能包括:1。确认哪个信息是要发送的; 2确认哪个传送层接收到了信息; 3。为应用层提供接口。 在目标处理方面,CAN提供很大的自由。 传送层的功能范围包括: 1。帧组织; 2总线仲裁;检错、错误报告、错误处理. 物理层是将 EC 连接至总线的物理实现。E 的总数将受限于总线上的电气负载.4。2AN总线协议的数据链路层按照 IEE802。2和 80.3标准,数据链路层又分为:逻辑链路控制(LL)和媒体访问控制(MAC)。 1。逻辑链路控制 L
39、C 子层提供的功能包括:帧接收滤波、超载通告和恢复管理.LLC 帧是同 LC 实体(LPDU)之间进行交换的数据单元,包括 LL 数据帧和远程帧。 a LC 数据帧 L 数据帧由三个位域构成,即标志符域、数据长度码(DLCDaa ength Code)域和 LL 数据域组成。标识符:标识符长度为 1 位,其最高位不应全是“1. D:指出数据域字节个数。DLC 由4 位构成,数据域长度可为 ,数据帧允许数据字节长度数目范围为 0 个字节。 数据域:数据域由数据帧内被发送数据组成,它可包括 个字节,每个字节包括 8 位。. LL远程帧 LL远程帧由两个位域(标识符域和LC域)组成。LLC远程帧标识
40、符格式与LLC数据帧标识符格式相同,只是不存在数据域。DLC的数值是独立的,此数据为对应数据帧的数据码长度。2.媒体访问控制 MAC子层划分为完全独立工作的两个部分,即发送部分和接收部分。发送部分功能包括:发送数据封装;发送媒体访问管理。接收部分功能包括:接收媒体访问管理;接收数据封装。 媒体访问控制C除了有与逻辑链路控制LC一样的数据帧和远程帧两部分外,还有出错帧、超载帧、帧间空间三个部分。a。 MAC数据帧一个A数据帧由帧起始(SOF)、仲裁域、控制域、数据域、CRC域、AK域和帧结束七个不同位域构成,详细描述见2.3。 bA远程帧 激活为数据接收器的节点可以通过发送一个远程帧启动源节点发
41、送各自的数据。一个远程帧由个不同的位域构成。 其中,仲裁域由来自LC子层的标识符域和RTR位构成。在A远程帧中,RTR位数值为“”。其中6个不同的位域与MAC数据帧的相应位域相同。 c. 出错帧 出错帧由两个不同域构成,第一个场由来自不同节点的错误标志叠加给出,第二个场为错误界定符。d。 超载帧 存在两类具有相同格式的超载帧:LLC 要求的超载帧和重激活超载帧,前者为LLC 子层所要求,以表明内部超载状态,后者将由 MAC 子层的一些出错条件被启动发送。超载帧包括两个位域:超载标志和超载界定符.e. 帧间空间 数据帧和远程帧同前述的任何帧以称之为帧间空间的位域隔开。与此相反,超载帧和错误帧前面
42、不存在帧间空间,并且多个超载帧也不用帧间空间分隔。 帧间空间包括间歇域和总线空闲域,并且对于先前帧已发送“错误认可”的节点还有暂停发送域.间歇域由 个“隐性”位构成。间歇期间不允许节点发送数据帧或远程帧,仅起标注超载条件的作用。总线空闲时间可以是任意长度。总线空闲时,任何节点均可访问总线以便发送。其它帧发送期间,等待发送的帧在紧随间歇域后的第一位启动。如果在总线空闲期间检测到总线上“显性位将被理解为帧起始。 3.媒体访问和仲裁 当检测到间歇域未被“显性”位中断后,认为总线被所有节点释放。总线一旦释放,接收当前或先前帧的“错误活动节点可以访问总线。一旦完成暂停的发送,并且其间没有其它节点开始发送
43、。发送当前帧或已发送完先前帧的“错误-认可节点可以访问总线。当允许节点访问总线时,MC 数据帧和MAC 远程帧可以起始发送。MAC 错误帧和 AC 超载帧按上述规定被发送。发送期间,发送数据帧或远程帧的每个节点均为总线节点。 在“隐性状态下,VANH 和 VCAN-L 被固定于平均电压电平,Vdif 近似为 .在总线空闲或“隐性”位期间,发送“隐性”状态。“显性”状态以大于最小阀值的差分电压表示。在“显性位期间,“显性”状态改写“隐性”状态并发送。 当许多节点一起开始发送时,此时只有发送具有高优先权帧的节点变为总线主站.这种解决总线访问冲突的机理是基于竞争的仲裁。仲裁期间,每个发送器将要发送位
44、电平同总线上监测到的电平进行比较.若相等,则节点可以继续发送。当发送出一个“隐性”电平,而检测到的“显性”电平时,表明节点丢失仲裁,并且不应再发送更多位。当送出“显性”电平,而监测到“隐性”电平时表明节点检测出位错误。 基于竞争的仲裁依靠标志符和紧随其后的 RT 位完成。具有不同标识符的两帧中,优先权被标注于帧中,较高优先权的标志符具有较低的二进制数值。若具有相同标志符的数据帧和远程帧同时被初始化,数据帧较之远程帧具有更高的优先权,它通过按照 RR 位数值标注达到.4。 错误检测 MC 子层具有下列错误检测功能:监测、填充规则校验、帧校验、15 位循环冗余码校验和应答校验。 检查到错误后,可发送错误标志,一个主动错误标志可引起所有其它节点发生填充错误、位错误、格式错误、CRC 错误或应答错误。错误界定规则:网络中的任何一个节点,根据其错误计数器数值,可能处于下列三种状态之一。 a。 “错误激活”节点;b. “错误认可”节点;c. “总线脱离”节点。2.3 N总线协议的物理层物理层是将 CU 连接至总线的电路实现.EC的总数将受限于总线上的电气负载。它分为以下三部分:物理