毕业设计基于can总线的汽车电器网络设计(含外文翻译)

上传人:ra****d 文档编号:194949876 上传时间:2023-03-14 格式:DOC 页数:72 大小:7.86MB
收藏 版权申诉 举报 下载
毕业设计基于can总线的汽车电器网络设计(含外文翻译)_第1页
第1页 / 共72页
毕业设计基于can总线的汽车电器网络设计(含外文翻译)_第2页
第2页 / 共72页
毕业设计基于can总线的汽车电器网络设计(含外文翻译)_第3页
第3页 / 共72页
资源描述:

《毕业设计基于can总线的汽车电器网络设计(含外文翻译)》由会员分享,可在线阅读,更多相关《毕业设计基于can总线的汽车电器网络设计(含外文翻译)(72页珍藏版)》请在装配图网上搜索。

1、毕业设计基于CAN总线的汽车电器网络设计摘 要随着社会的发展,汽车逐渐成为人们生活中不可缺少的交通工具。电子装置在汽车上的使用使汽车的驾驶更加舒适安全。为了满足人们对于汽车性能越来越高的要求,汽车上装备的电子装置、控制单元也在不断增加,传统的线束已远远不能满足复杂的控制系统要求。汽车CAN总线技术的引入给汽车电子控制技术带来了新的飞跃。CAN总线技术不仅满足了车身控制的功能要求,而且可以降低成本、简化车身冗余线束。本文提出了一种基于CAN总线的汽车电器网络的设计方案。设计中采用了ATmega128作为主控制器,CAN模块电路主要采用了CAN总线控制器SJA1000、总线驱动器PCA82C250

2、以及高速光耦6N137,通过ATmega128控制工作在PeliCAN 模式下的SJA1000实现各ECU单元之间的通信。文中完成了系统软件开发,并在CAN2.0B通信协议以及车用CAN协议(SAEJ1939)的基础上制定了基于车身控制模块的应用层协议;同时,为保证系统能够稳定、可靠地工作,文中针对系统工作中可能出现的干扰因素进行了分析,并进行了软硬件的抗干扰设计。通过联机调试,验证了整个系统通信的可靠性,该网络能够较好地达到车内总线对于信号传输的实时性与稳定性的要求。关键词:CAN总线; 控制网络;电子控制单元; 数据采集;数据传输ABSTRACTWith the development o

3、f society, automobiles play a very important role in peoples daily life, and the electronic devices equipped in the vehicle make the driving more comfortable and safe. With the electronic device in vehicle increasing continuously, the traditional wiring harnesses can not satisfy the complex function

4、s of the control system. As the CAN bus introduced into vehicle control system, great progress has taken in the areas of vehicle electron. By adopting CAN bus, the function of vehicle body control system is satisfied perfectly, the cost is decreased, and the redundant wiring harnesses are cut down.

5、A vehicle electrical network design based on CAN bus is brought forward in this paper to achieve the data transmission of the electric control units (ECU). In this design, the main controller uses ATmega128. The hardware circuit of CAN bus communication module adopts CAN bus control chip SJA1000, bu

6、s driver PCA82C250 and high-speed optical coupler 6N137. ATmega128 completes the data transmission of ECU through controlling SJA1000 which works on the PeliCAN mode. Following,the software designs are discussed, and the CAN communication protocol of application layer which matches the vehicle body

7、control system is constructed based on CAN2.0 protocol and SAEJ1939 protocol. Furthermore, some anti-interference measurements are put forward to ensure the stability and reliability of the system.The experiments confirm the overall system communication is reliable, and the signal transmission insid

8、e the CAN bus achieves the requirements of real-time and stability.Key words: CAN-BUS; Control Network; Electric Control Unit; Data acquisition;Data Transmission;目 录第一章 绪论11.1课题背景11.2当前国内外汽车CAN总线的研究情况11.3研究汽车CAN总线网络的目的和意义11.4课题主要内容2第二章 CAN总线通信原理32.1 引言32.2 CAN 总线协议的性能特点32.3 CAN 节点的分层结构42.3 报文传送及其帧类型

9、52.3.1 数据帧62.3.2 远程帧82.3.3 出错帧82.3.4 超载帧92.4 基于CAN2.0B 应用层协议的制定102.5本章小结11第三章 系统整体结构设计123.1系统整体框图123.2 系统ECU框图123.3 CAN控制器SJA1000133.3.1芯片SJA1000概述133.3.2 SJA1000的内部结构以及在系统中的位置143.3.3 CAN控制器SJA1000的几个控制模块153.4CAN总线驱动器PCA82C250163.4.1 CAN总线驱动器PCA82C250概述163.4.2 PCA82C250结构框图及基本功能描述163.5本章小结18第四章 CAN总

10、线网络硬件设计194.1 整体方案确定194.2 CPU控制电路194.3 CAN模块电路214.4 DS18B20温度采集模块224.5 显示模块234.6电源模块234.7系统JTAG调试244.8按键信号采集接口电路254.9 液位检测模块254.10汽车车灯控制器设计264.11电路板设计时注意事项274.12本章小结27第五章 CAN总线网络软件设计295.1 CAN总线系统智能节点的软件设计295.1.1初始化过程295.1.2报文发送过程305.1.3报文接收过程325.2 系统网络控制345.3 系统整体流程图345.3.1 主站流程图345.3.2 从站流程图355.4 超声

11、波传感器检测液位流程355.5 温度采集流程365.6软件的抗干扰分析375.7本章小结39第六章 系统调试406.1系统硬件调试流程406.2系统软件调试流程406.3系统调试结果416.3.1 从站1温度采集416.3.2 从站4液位测量416.3.3 CAN通信测试426.3.4 显示模块调试426.3.5 CAN通信网络联机调试42第七章 结论与展望457.1目前工作总结457.2系统整体测试评估457.3对以后工作的展望46参考文献47附录1 文献翻译49附录2 系统主要源代码56附录3 系统电路原理图66谢 辞67天津工业大学2011届本科生毕业设计(论文)第一章 绪论1.1课题背

12、景现代汽车中所使用的电子控制系统和通讯系统越来越多,如发动机电控系统、防抱死系统(ABS)、自动巡航系统(ACC)和车载多媒体系统,这些系统之间,系统和汽车显示仪表之间,系统和汽车故障诊断系统之间均需要进行数据交换,如此巨大的数据交换量,如仍然采用传统数据交换的方法,用导线进行点对点连接的传输方式将是复杂的工程,据统计,如果一个中级轿车需要线束插头300个以上,插针总数18002200个,线束总长超过1.52.0km,装配复杂而且故障率很高。传统的线束已远远不能满足复杂的控制系统要求。CAN总线应运而生,CAN总线能够以较低的成本、高级的时实处理能力在强电磁干扰环境下高安全工作1。1.2当前国

13、内外汽车CAN总线的研究情况早在20世纪80年代初,Bosch(博世)公司开发出面向汽车的CAN(Control Area Network)通信协议。与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性。由于其良好的性能及独特的设计,CAN总线越来越受到人们的重视。它在汽车领域上的应用是最广泛的,世界上一些著名的汽车制造厂商,如BENZ(奔驰)、BMW(宝马)、PORSCHE(保时捷)、ROLLS-ROYCE(劳斯莱斯)和JAGUAR(美洲豹)等都采用了CAN总线来实现汽车内部控制系统与各检测和执行机构间的数据通信2-3。目前,国外的汽车总线技术已经成熟,并且已经成为现代

14、汽车的标准技术,汽车制造业发达的国家基本都在汽车制造工程中应用CAN总线技术4-7。CAN总线作为汽车制造装配的高级核心技术,国外汽车制造商与研发机构对我国是采取的是封锁政策,即使在中国合资的国外引进品牌,也是列入国产化部件外,国外CAN总线进口到中国价格相当昂贵,在高新技术上制约着我国汽车制造业的发展8。我国总线技术处于试验和起步阶段,绝大部分的汽车还没有采用自主研发的汽车总线设计。但CAN总线技术已经开始引起国内一些汽车研发部门的关注,如中国汽车技术研究中心、清华大学、同济大学等单位在CAN控制局域网络方面开展了研究,并取得很多富有成效的结果9-13。1.3研究汽车CAN总线网络的目的和意

15、义由于传统线束通信已经不能满足汽车控制网络的数据传输量,而CAN总线网络以低成本、高可靠性和极大的灵活性将逐渐取代传统的并行的数据传输网络。本研究的意义在于简化现代汽车车身中日益复杂的电子控制设备之间的连线,废除汽车上传统的主电缆线束系统,有效的增强系统的可靠性及降低系统的综合成本,提高汽车的系统化、智能化程度,并且为汽车性能的高档次提供技术平台,形成新产品和技术储备。1.4课题主要内容本课题研究了基于CAN总线的汽车通信系统的设计问题, 实现了汽车电器控制单元(ECU)的直接数据传输。本课题的主要研究内容为:(1) 参考通用CAN2.0B协议和车用CAN协议(SAEJ1939),制定自己的应

16、用层协议;(2) 汽车电器控制网络的模块设计;(3) CAN 总线控制系统的硬件电路设计;(4) CAN 总线控制系统的软件电路设计;(5) 软硬件联机调试;(6) 对当前工作的总结及对以后工作的展望。第二章 CAN总线通信原理本章主要研究了CAN通信原理,分别对CAN总线协议的性能特点、CAN节点的分层结构、数据帧结构、远程帧结构、出错帧结构、超载帧结构进行了详细分析,并且在CAN2.0B协议的基础上制定了相应的应用层协议的帧信息。2.1 引言CAN 总线是国际标准的网络控制器,是串行通信协议,一般是使用在汽车电子行业,随着技术的发展,已经开始使用在各个领域,医疗、航海、工业自动化、工控设备

17、等等领域。本课题也是基于 CAN 总线的一个新的课题。它的出现使得分布式控制系统的各个节点之间的实时、稳定的数据传输得到了保障。CAN 总线是德国 BOSCH 公司在 80 年代的时候,为解决汽车中存在的众多问题而设计,它工作于多主从方式,网络中的节点是根据优先级来向总线竞争发送数据的,采用的是 CSMA/CD(载波侦听多路访问/冲突检测),无损结构逐位仲裁技术,废除了站节点地址编码,而使用对通信数据进行编码,使得每个节点可以接收相同的数据。这样构成的系统通信实时性强,冗余性好,系统灵活性高。与之相比,以往采用 RS485 结构的系统,通信方式不灵活,底层驱动需要自己编写,可靠性差。由于采用了

18、许多新技术及独特的设计,如总线自动关闭输出的功能,完善的通信协议,降低了开发的难度,缩短开发的周期等,是以前的 RS485 系统无法比拟的14。2.2 CAN 总线协议的性能特点控制器局域网(Controller Area Net)简称CAN 总线,是德国BOSCH 公司于80 年代初为解决现代汽车中众多的电控模块(ECU)之间的数据交换而开发的一种串行通信协议2-3。CAN 总线采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线以及广播通信的特点。CAN 总线上的任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。CAN 总线协议废除了传统

19、的站地址编码,而代之以对通信数据块进行编码,数据块的标识码可由11 位或29 位二进制数组成,这样就可使网络内的节点个数在理论上不受限制。CAN 总线具有很高的网络安全性、通讯可靠性和实时性,而且简单实用,网络成本低,特别适用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。具体来说其主要特点有:(1) 采用通讯数据块编码,可实现多主工作方式,数据收发方式灵活,可实现点对点、一点对多点及全局广播等多种传输方式;(2) 采用非破坏性基于优先权的总线仲裁技术,具有暂时错误和永久性故障节点的判别及故障节点的自动脱离功能,使系统其他节点的通信不受影响;(3) CAN 节点在错误严重的情

20、况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其它操作不受影响;(4) 采用统一的标准和规范,使各设备之间具有较好的互操作性和互换性,系统的通用性好;(5) 通讯介质可采用双绞线,无特殊要求;现场布线和安装简单,易于维护,经济性好。只有2 根线与外部相连,且内部含有错误探测和管理模块;(6) 网络上的节点信息可分成不同的优先级,可以满足不同的实时要求;(7) CAN 总线通信格式采用短帧格式,每一帧的有效字节数为8 个(CAN技术规范2.0A),数据传输时间短,受干扰的概率低,重新发送的时间短;(8) 采用非破坏性总线仲裁技术。当两个节点同时向网络上传送数据时,优先级低的节点主动

21、停止数据发送,而优先级高的节点可不受影响地继续传输数据,有效避免了总线冲突;(9) 直接通信距离最大可达10km(速率5kb/s 以下),最高通信速率可达1Mb/s (此时距离最长为40m);(10) CAN 总线采用CRC 检验并可提供相应的错误处理功能,保证了数据通信的可靠性。图 2-1 CAN 总线网络拓扑结构按照总线的技术规范与总线的电气特性,一般最多支持 128 个节点,在差分总线的两端必须接一个匹配电阻。各个节点之间无需匹配电阻,而且分支最好越短越好。与其他总线相比,CAN 总线具有通信速率高,实现容易,性价比高的,并且已经实现国际标准的总线,应用于各个领域、航天、工业、机器人、数

22、控机床、医疗器械,具有广泛的运用前景15-18。2.3 CAN 节点的分层结构CAN总线是由不同层次构成,CAN2.0A包括目标层、传输层和物理层。CAN2.0B 包括数据链路层与物理层,数据链路层包括逻辑链路控制和媒体访问控制两层;物理层包括物理信号,物理媒体附属装置,媒体相关接口。CAN2.0A节点的分层结构如下图 2-2 所示。应用层目标层 -报文滤波-报文和状态处理传输层-故障界定-出错检测和信令-报文确认-应答-仲裁-报文分帧-传输速率与定时物理层-信号电平与位表示-传输媒体图 2-2 CAN2.0A 节点的分层结构CAN2.0A 技术规范,定义了传输层以及与 CAN 协议有关的外层

23、,目标层的功能是确定被接收的报文实际是否被使用,以及通过过滤器屏蔽器对报文的滤波,确定报文是否可以被接收进来。当报文接收过程中出现了错误,报文就会置位相应的状态标志位。设计人员可以根据这些位来判断是什么情况组成的这个错误。传输层主要是报文的故障界定、检错、确认、应答、仲裁、位定时等等。传输层确定新的一帧数据的发送,确定总线是不是开发或者是不是可以开始接收数据了。传输层是不存在修改的灵活性的。物理层定义了实际数据发送,包括物理层定义信号时如何发送的,用什么样的电平表示高电平,什么电平表示低电平,可以采用双绞线或者是光电缆等进行数据的发送。对这个物理层没有具体定义,用户可以根据自己的需要进行修改3

24、。2.3 报文传送及其帧类型在数据发送与接收的过程中,报文的发送器就是发出报文的单元。在总线空闲或该单元失去仲裁场之前为发送器。若总线处于空闲状态,并且节点并非处于报文发送状态,则该单元称为接收器。报文发送器与接收器的有效时点是不同的。对发送器,一旦总线空闲,报文立刻发送,直到报文结束。如果出现错误,总线就会发送错误帧,停止数据的发送,等总线空闲状态下,数据又开始重新发送这一帧数据,按照优先级的高低来发送数据,这样可以保证系统的数据的正确性,对于接收器来说,如果在接收过程中未出现错误,则数据有效,如果出现错误,那么总线会重新发送数据给接收器,CAN 总线会自动把暂时性错误与永久性错误区分开来。

25、这样就不会因为某个节点的错误导致系统的崩溃。帧起始、仲裁场、控制场、数据场和 CRC 序列都是通过对每一位进行填充来编码的。当数据中有五个连续地相同的电平的时候,总线就会在第六个位电平处插入相反的电平,主要是为了能够使信号保持同步。数据帧或远程帧的 CRC 界定符,应答场和帧结束的形式一般是比较固定,无需进行位填充。出错帧和超载帧也是采用同样的格式,也不需要位填充。报文中的位流按照非归零(NRZ-NON-Return-to-Zero)码方法编码,这意味着一个完整位电平要么是“显性”,要么是“隐性”的。报文数据一般发送的话,是按四种不同的帧来表示与控制的。数据帧主要是从发送器到接收器发送数据。远

26、程帧主要发送具有相同标识符的数据帧。出错帧的功能是检测总线的错误,一旦发现错误,就会发出错误帧。超载帧主要用于为当前与后续的数据帧与远程帧之间添加附加的延时10。2.3.1 数据帧数据帧是由帧起始、仲裁场、控制场、数据场、CRC 场、应答场、帧结束组成的。组成结构如图 2-3 所示。图 2-3 数据帧的组成帧起始标志一帧新的数据的开始,它是由一个单独的“显性”位(0)组成,不需要用户在程序中体现,由控制芯片自动完成,发送时,总线必须处于空闲状态,并且所有的站必须与首先开始发送的站的帧起始的前沿同步。仲裁场由标识符和远程发送请求位组成。仲裁场的组成框图如图 2-4 所示。图 2-4 仲裁场组成仲

27、裁场包含标识符 ID(标准为11bits),对应其优先级。每个站在发送仲裁场时,将发送位与线路电平比较,若相同则发送;若不同则得知优先级低而退出仲裁, 不再发送。系统响应时间与站点数无关,只取决于安排的优先权。RTR 位,在数据帧中,是“显性”电平,而 RTR 位,在远程帧中是“隐形”电平10。1. 控制场控制场一般由 6 位构成,如图 2-5 所示。图 2-5 控制场组成控制场是由数据长度码和保留位组成。数据长度码表示数据发送的数目。长度码一般是 4 位,如表 2-1 所示,其中:d 代表“显性”,r 代表“隐性”。表 2-1 数据长度码中,数据字节数目编码字节数目数据长度码DLC3DLC2

28、DLC1DLC00dddd1dddr2ddrd3ddrr4drdd5drdr6drrd7drrr8rddd数据发送的字节数一般都是 08 个字节,不能使用其他数值。2. 数据场 数据帧中被发送的数据构成了数据场,它可包括从 0 至 8 个字节,一个字节一般包括 8 位,高有效位先发送。3. CRC 场CRC 场包括 CRC 序列,后随 CRC 界定符,CRC 场组成如图 2-6 所示图 2-6 CRC 场组成4. 应答场应答场为两位,包含应答间隙和应答界定符。应答场的组成如图 2-7 所示。图 2-7 应答场组成当接收器接收到报文,接收器就会在应答间隙期间向发送器发送 “显性”的位以示应答。应

29、答场长度为 2 位,包含应答间隙和应答界定符。2.3.2 远程帧远程帧如图 2-8 所示,远程帧与数据帧的区别就是没有数据场。当总线某个节点请求其它节点发送数据的时候,该节点就会给具有相同标识符的目标节点发送远程帧,目标节点接收到总线发来的远程帧后,就会把数据发送给请求节点。一般远程帧是由 6 个不同的位场组成的。但是与数据帧不同的是,远程帧的 RTR位是“隐性”的。DLC 是相对远程帧独立的,这个数值对应于与数据帧的长度。图 2-8 远程帧的组成2.3.3 出错帧出错帧是检测总线出错的一个信号标志,由两个不同场构成。第一场由来自不同节点的错误标志叠加,第二个场为错误界定符。CAN 协议采用

30、CRC 检验并提供相应的错误处理功能,保证数据通信的可靠性。图 2-9 出错帧组成错误标志的形式有两种:(1) 活动错误标志;(2) 认可错误标志。一般由 6个连续的“显性”位组成一个活动错误标志, 6 个连续的“隐性”位组成一个认可错误标志。在每个 CAN 控制器的内部都有两个错误计数器:发送错误计数器和接收错误计数器。按错误计数器数值的不同,CAN 总线上的节点可以分为 3 种错误状态,分别是错误活动状态、错误认可状态和总线关闭状态。上电复位后,两个错误计数器的数值都为 0,表示节点处于正常活动状态,可正常地进行数据通信,检测到错误时,发送活动错误标志。当错误计数器中的值超过 127 时,

31、节点进入错误认定状态。处于错误状态的节点仍然可以与总线通信,但出错后,总线会发送错误认可标志,并且在开始发送数据之前,会插入一段附加的时间。当错误计数器和接收计数器里面的值大于或等于 127 时,节点的状态就从错误认可转变为错误活动状态。若发送错误计数器的值超过 255 之后,节点就会进入关闭状态,既不能发送数据,也不能接收数据。当软件执行操作模式请求命令,并等待总线释放序列(11 位连续隐性位)后,节点就会从总线关闭状态重新回到总线错误活动状态3。2.3.4 超载帧超载帧一般由 2 个位场组成:超载标志和超载界定符。超载帧组成结构如图 2-10 所示图 2-10 超载帧组成在 CAN 总线系

32、统的某个节点处理接收到的数据的过程中,由于接收到的数据需要经过一段时间的处理,但是第二帧数据可能会在数据处理的时候就会到达,这样将导致数据出错,数据丢失,因此,接收数据的节点可以发送超载帧,用于对第二次数据帧到来的时间进行延时,发送数据的节点接收到超载帧就会延时下一帧数据的发送。第二个发送超载的条件是间歇场检出一个“显性”位,后一个超载条件引起的超载帧在检测到“显性”位的后一位开始发送,在很多情况下,为延迟下一次数据帧或远程帧,均可产生这两种超载帧3。2.4 基于CAN2.0B 应用层协议的制定波特率的确定可根据通信内容的多少确定,通常采用5Kbps1Mbps。本设计当前研究的车内信息量较少、

33、实时性要求不高,故定波特率为20Kbps。汽车电子控制系统各个控制器节点的信息我们从多个方面进行设定,譬如名称、英文名称、信号走向、信号类型、发送类型、出发方式等。(1) 信号类型:状态(AI)、受控(AO)、状态且受控(DO)、命令(DI);(2) 取得方式:周期方式、请求方式、请求且周期、被动;(3) 优先级:1一7;(4) 发送类型:被远程帧请求才发送的帧、被告错误信息的帧、周期发送的帧、事件触发的帧、主动发送的帧。这里以主站给从站1发送的轮询信号为例。主站需要从站的信息时,主站就给相应的从站发送轮询信号,这些信息可以在一个数据帧中表示。这个数据帧可以命名为“MOSI”。首先,对数据帧的

34、标识符进行设置,其中有优先级、地址(SA)、数据长度码(DLC)等相关位。标识符是一个数据帧中最重要的信息,节点之间能否通讯主要和标识符位设置的是否合理,例如优先级、地址等位有很大关系。把相关的数据参数按照位的形式填充到数据场中,不过数据参数要考虑精度、信号取得方式、优先级等方面。然后我们把数据帧打包从主站CAN单元发送到总线上,从站单元通过CAN控制器的接收滤波器可以收到它所需要的信息帧。然后将采集到的信息发回给主站。我们将从站1发回的数据命名为“MISO”。下面就是MOSI和MISO一个打包后的数据帧。名称:MOSI(主站给从站1发送的轮询信号)优先级:1地址:0x00DLC:0x04字节

35、:1-数据源地址 0x00;2-目标地址 0x01;3-数据类型;4-保留。名称:MISO(从站1给主站返回的数据信号)优先级:2地址:0x01DLC:0x04字节:1-数据源地址 0x01;2-目标地址 0x00;3-温度整数部分;4-温度小数部分。2.5本章小结本章介绍了CAN总线技术在汽车控制系统中的特点和优势,分析了CAN总线系统的结构原理和通信方式以及CAN总线的通信协议。并给出了自己基于CAN2.0B和车用CAN协议(SAEJ1939)制定的应用层协议,为后续的硬件选型和软件设计提供了参考。第三章 系统整体结构设计本章设计了CAN总线控制系统的整体结构,并且对功能模块进行了详细的分

36、析。3.1系统整体框图本系统的硬件构架由五大部分组成,如图3-1所示,这五大部分可以实现主站处理单元、车内温度采集单元、车外温度采集单元、汽车发动机转速和油箱液位采集单元、汽车车灯和车窗控制单元直接的数据传输,其中,主站处理单元和从站处理单元的处理器都采用ATMega128作为系统控制器。整个网络通过总线拓扑的形式形成互联。在本系统中各个单元的信号将通过CAN网络传入主站处理单元中,在主站内得到处理后再发送到相关单元执行。温度、车速、液位等信号将通过CAN网络及时地传送到主站处理单元中;同时,用户通过主站CPU外接的控制按键,将车窗开关、灯光开关、转向灯开关等的控制信号传入主站CPU,再通过C

37、AN网络传入从站的电控单元。主站处理单元将车内需要显示的信号通过外接的12864液晶显示出来。图3-1 汽车CAN总线网络整体框图3.2 系统ECU框图本课题的控制系统为低速CAN,速度为100Kbps,主要完成ECU单元之间的数据传递,由于汽车电器数量较多,要简化车身模块数量,降低硬件成本,提高控制系统可靠性,需要根据各电器位置及功能对汽车电子单元(ECU)模块进行合理划分。本设计将电子单元(ECU)划分成6个模块,即CPU、传感器、显示器、CAN控制器、光电隔离、CAN驱动器。如图3-2所示:图3-2 系统子节点框图系统节点以ATmega128作为控制核心,CAN控制器选用SJA1000,

38、为了防止干扰,CAN控制器与CAN驱动器间采用光电隔离。3.3 CAN控制器SJA10003.3.1芯片SJA1000概述SJA1000是一种独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是Philips半导体公司PCA82C200 CAN控制器(BasicCAN)的替代产品,而且它增加了一种新的操作模式PeliCAN,这种模式支持具有很多新特性的CAN2.0B协议18。SJA1000的基本特性如下: 引脚与PCA82C200独立CAN控制器兼容; 电气参数与PCA82C200独立CAN控制器兼容; 具有PCA82C200模式; 有64字节的扩展接收缓冲区,先进先出(F

39、IFO); 支持CAN2.0A和CAN2.0B协议; 支持11位和29位标识码; 通信位速率可达1Mbps; 包含PeliCAN模式的扩展功能; 24MHz时钟频率; 可与不同的微处理器进行连接; 可编程的CAN输出驱动器配置; 温度适应范围大(-40+125)18。3.3.2SJA1000的内部结构以及在系统中的位置SJA1000的内部结构如图3-3所示,CAN控制器在现场系统中的位置和所起的作用如图3-4和3-5所示18。图3-3 SJA1000的内部结构方框图图3-4 CAN控制器SJA1000在系统中的位置图3-5 CAN控制器SJA1000的模块结构3.3.3CAN控制器SJA100

40、0的几个控制模块 接口管理逻辑接口管理逻辑(IML)解释来自CPU的命令,控制CAN寄存器的寻址,向主控制器(CPU)提供中断信息和状态信息。 发送缓冲器发送缓冲器(TXB)是CPU和BSP(位流处理器)之间的接口。它能够存储要通过CAN网络发送的一条完整报文。缓冲器长13字节,由CPU写入、BSP读出。 接收缓冲器接收缓冲器(RXB,RXFIFO)是接收滤波器和CPU之间的接口,用来存储从CAN总线上接收并被确认的信息。接收缓冲器(RXB,13个字节)作为接收FIFO(RXFIFO,长64字节)的一个窗口,可被CPU访问。CPU在此FIFO的支持下,可以在处理一条报文的同时接收其他报文。 验

41、收滤波器验收滤波器(ACF)接收到的标识码与自己的内容相比较,以决定是否接收这条报文。在验收测试通过后,这条完整的报文就被保存在RXFIFO中。 位流处理器位流处理器(BSP)是一个在发送缓冲器、RXFIFO和CAN总线之间控制数据流的队列(序列)发生器。它还执行总线上的错误检测、仲裁、填充和错误处理。 位时序逻辑位时序逻辑(BTL)监视串行的CAN总线和位时序。它是在一条报文开头,总线传输出现从隐性到显性时同步于CAN总线上的位流(硬同步),并且在其后接收一条报文的传输过程中再同步(软同步)。BTL还提供了可编程的时间段来补偿传播延时、相位偏移(例如,由于振荡器漂移)和定义采样点和每一位的采

42、样次数。 错误管理逻辑错误管理逻辑(EML)负责限制传输层模块的错误。它接收来自BSP的出错报告,然后把有关错误统计告诉BSP(位流处理器)和IML(接口管理逻辑)。3.4CAN总线驱动器PCA82C2503.4.1CAN总线驱动器PCA82C250概述82C250是CAN控制器与物理总线之间的接口,它最初是为汽车中的高速应用(达1Mbps)而设计的。器件可以提供对总线的差动发送和接收功能。PCA82C250的主要特性如下19: 与ISO11898标准完全兼容; 高速率(最高可达1Mbps); 具有抗汽车环境下的瞬间干扰,保护总线能力; 采用斜率控制,降低射频干扰; 过热保护; 总线与电源及地

43、之间的短路保护; 低电流待机模式; 未上电节点不会干扰总线; 总线至少可连接110个节点。3.4.2 PCA82C250结构框图及基本功能描述PCA82C250的内部结构及引脚功能如图3-6和表3-1所示。图3-6 PCA82C250的内部结构功能图表3-1 PCA82C250的引脚功能标 记引 脚功能描述TXD1发送数据输入GND2接地Vcc3电源RXD4接收数据输出Vref5参考电压输出CANL6低电平CAN电压输入/输出CANH7高电平CAN电压输入/输出Rs8斜率电阻输入PCA82C250驱动电路内部具有限流电路,可防止发送输出级对电源、地或负载短路损坏输出级。若结温超过大约16,则两

44、个发送器输出端极限电流将减小,由于发送器是功耗的主要部分,因而限制了芯片的温升,器件的所有其他部分将继续工作。PCA82C250采用双绞线差分驱动,有助于抑制汽车等恶劣电气环境下的瞬变干扰。 引脚8(Rs)用于选定PCA82C250的工作模式。有3种不同的工作模式可供选择:高速、斜率控制和待机,如表3-2所列。表3-2 引脚Rs用法Rs提供条件工作模式Rs上的电压或电流VRs0.75Vcc待机模式|IRs|10A10AIRs200A斜率模式0.3VccVRs0.6VccVRs0.3Vcc高速模式IRs500A对于高速工作模式,发送器输出级晶体管被尽可能快地启动和关闭。在这种模式下,不采取任何措

45、施限制上升和下降的斜率。此时,建议采用屏蔽电缆以避免射频干扰问题的出现。通过把引脚8接地可选择高速工作模式。对于较低速度或较短的总线长度,可使用非屏蔽双绞线或平行线作总线。为降低射频干扰,应限制上升和下降的斜率。上升和下降的斜率可以通过由引脚8至地连接的电阻进行控制,斜率正比于引脚8上的电流输出。如果引脚8接高电平,则电路进入低电平待机模式。在这种模式下,发送器被关闭,接收器转至低电流。如果检测到显性位,RXD将转至低电平。微控制器应通过引脚8将驱动器变为正常工作状态来对这个条件作出响应。由于在待机模式下接收器是慢速的,因此将丢失第一个报文。3.5本章小结本章详细介绍了CAN总线控制系统整体框

46、图以及最重要的组成部分总线控制SJA1000在总线系统中的位置和功能,并阐述了总线控制器SJA1000和收发器PCA82C250的结构、特点及工作原理。并对它们在CAN总线控制系统中的应用进行了叙述,对本设计中控制器和收发器的合理选择进行了分析。第四章 CAN总线网络硬件设计本章分别对系统各个功能模块的硬件电路进行了详细描述,并且提出了系统硬件抗干扰措施。4.1 整体方案确定CAN 总线得到了 Intel、Infineon、Motorola、Philips 等众多大公司的支持,提供了许多可以实现 CAN 总线协议的芯片。CAN 控制器是节点实现 CAN 总线通信的关键器件,它具有完成高性能通信

47、协议所要求的全部特性,可以完成物理层和数据链路层的所有功能。目前 CAN 控制器芯片有独立的,也有集成在微处理器里面的。CAN 总线应用模块在搭建上一般有两种方案:(1) 微控制器+CAN 控制器+CAN 收发器。(2) 集成 CAN 控制器的微控制器+ CAN 收发器第一种方案优点是可以与多种类型的单片机、微型计算机的各类标准总线进行接口组合,这种设计比较灵活,成本较低,缺点是电路设计稍微复杂。第二种方案优点是电路设计简化和紧凑,缺点是成本高。本课题,采用第一种方案。CAN 总线节点主要由微处理器 ATMega128+独立的 CAN 控制器 SJA1000+CAN 收发器 PCA82C250

48、 构成。考虑到汽车环境的恶劣性,因此,节点硬件部分除了能正常实现 CAN 通信功能外,还应该具有较强的抗干扰能力。4.2 CPU控制电路本系统采用ATmega128作为控制处理器, ATmega128是一款高性能、低功耗的 AVR 8 位微处理器,系统CPU电路图如图4-1所示。本系统使用的CPU的内核具有以下特点20: 先进的 RISC 结构; 133 条指令 大多数可以在一个时钟周期内完成; 328 通用工作寄存器 + 外设控制寄存器; 全静态工作; 工作于16 MHz 时性能高达16 MIPS; 只需两个时钟周期的硬件乘法器; 非易失性的程序和数据存储器; 128K 字节的系统内可编程F

49、lash,寿命: 10,000 次写/ 擦除周期;图4-1 系统CPU电路图 具有独立锁定位、可选择的启动代码区; 通过片内的启动程序实现系统内编程; 真正的读- 修改- 写操作; 4K字节的EEPROM ,寿命:100,000 次写/ 擦除周期; 4K 字节的内部SRAM; 多达64K 字节的优化的外部存储器空间; 可以对锁定位进行编程以实现软件加密; 可以通过SPI 实现系统内编程; JTAG 接口( 与IEEE 1149.1 标准兼容); 遵循JTAG 标准的边界扫描功能; 支持扩展的片内调试; 通过JTAG 接口实现对Flash, EEPROM, 熔丝位和锁定位的编程;芯片外设特点:

50、两个具有独立的预分频器和比较器功能的8 位定时器/ 计数器; 两个具有预分频器、比较功能和捕捉功能的16 位定时器/ 计数器; 具有独立预分频器的实时时钟计数器; 两路8 位PWM; 6路分辨率可编程(2 到16 位)的PWM; 输出比较调制器; 8路10 位ADC; 8 个单端通道; 7 个差分通道; 2 个具有可编程增益(1x, 10x, 或200x)的差分通道; 面向字节的两线接口; 两个可编程的串行USART; 可工作于主机/ 从机模式的SPI 串行接口; 具有独立片内振荡器的可编程看门狗定时器; 片内模拟比较器;系统设计人工按键复位电路,在系统运行中出现故障时可方便地人工按键复位,如

51、图4-1所示。在掉电情况下,二极管给电容提供了放电通道,使电容迅速放电,这样可保证在反复上电的情况下可靠复位。4.3 CAN模块电路CAN总线的两个末端之间必须接有120欧姆的电阻,它的主要作用就是起到阻抗匹配的作用,否则无法进行通信,系统的可靠性与稳定性将不能得到保证。在PCA82C250的两端与地之间可以并接两个30pf的小电容,以滤除高频干扰,防止电磁辐射。在各个电源与地之间加入100nF的去耦合电容,用以降低干扰。图4-2CAN模块电路原理图从图中可以看到在PCA82C250与光电耦合器之间,有一个上拉电阻,这个电阻,可以保证高速光耦6N137导通的时候输出高电平,截止的时候输出低电平

52、。在CAN总线系统中,一般处于空闲或者不发送数据,或者数据异常等情况下,总线是隐性电平。因此从电路中可以看到,当正常状态的情况下,并且6N137不导通的时候,PCA82C250的发送端总是处于高电平(逻辑1)的状态,因此就可以保证总线在空闲状态下是隐性电平。PCA82C250是一个高速CAN总线收发器,支持1 Mb/s 的运行速率,符合ISO-11898 标准物理层要求。具有自动检测TXD输入端的接地错误,短路保护和高压瞬态保护能力,可以连接112个节点,具有很强的抗干扰特性。一般情况下,每一个节点都必须有一个器件,把CAN总线控制器生成的数字信号转化成适合总线传输的差分信号。它在CAN 控制

53、器和CAN总线上的高压尖峰信号之间加入了缓冲器,这些高压尖峰信号可能是由外部器件产生(EMI、ESD 和电气瞬态等)。PCA82C250具有很强的抗干扰能力,可以免受电池短路和电气瞬态的影响,这一特性可以保护发送器的输出端免受错误的破坏。PCA82C250的CAN输出可以驱动最小为45的负载,最多允许连接112个节点(假设最小差分输入阻抗为20 k和标称终端电阻为120)19。4.4 DS18B20温度采集模块系统温度采集使用温度芯片DS18B20。DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO92小体积封装形式。如图4-3所示。图4-3 DS18B20模块 DS1

54、8B20的测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出。其工作电源既可在远端引入,也可采用寄生电源方式产生。CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。DS18B20支持“一线总线”接口,测量温度范围为-55+l25,在-10+85范围内,精度为0.5。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。4.5 显示模块主站系统采用12864液晶显示从站传回的数据信息,12864液晶显示模块是12864点阵的汉字

55、图形型液晶显示模块,可显示汉字及图形,内置国标GB2312码简体中文字库(1616点阵)、128个字符(816点阵)及64256点阵显示RAM(GDRAM)。可与CPU直接接口,提供两种界面来连接微处理机:8-位并行及串行两种连接方式。具有多种功能:光标显示、画面移位、睡眠模式等。由于从站显示数据量相对较少,所以系统从站采用1602液晶作为显示模块。1602液晶可以显示2行16个字符,有8位数据总线D0-D7,和RS、R/W、EN三个控制端口,工作电压为5V,并且带有字符对比度调节和背光。工作电路图如图4-4所示21。图4-4 显示模块电路原理图4.6电源模块系统电源模块由3部分组成:CPU及

56、CAN模块电源; TC35模块电源;工业以太网模块电源。主控制器ATmega128工作电压为+4.5V+5.5V,图4-5中,三端稳压管LM7805将前端输入的+9V电压稳成+5V给系统CPU以及CAN模块供电,C204、C205、C206、C208为滤波电容,主要能滤掉电源电路中的中高频尖峰干扰;D200为保护二极管,主要防止输入电源反接导致电流逆向通过LM7805而烧坏稳压管。系统除了通过输入+9V供电外,也可以直接由电脑的USB供电,这样设计丰富了供电方式,方便了系统调试。LM1117-3.3能将LM7805稳压后的+5V变成+3.3V给工业以太网芯片ENC28J60供电;LM2941S

57、为可调稳压管,通过匹配外围电路能将+5V稳压成+4.2V给TC35模块供电。图4-5 系统电源模块4.7系统JTAG调试JTAG 调试功能允许用户在 MCU 上进行非侵入式、全速的在线系统调试。该调试系统支持观察和修改存储器和寄存器,支持单步、运行和停机、断点和观察点命令。当利用 JTAG 调试时,所有的模拟和数字外设都可以正常运行。FLASH 存储器还具有在线系统重新编程能力,可用于非易失性数据存储。ATmega128可在工业温度范围工作,工作电压为 +2.7V+5.5V。ATmega128为64管脚 TQFP 超小封装,从而节省了系统电路板的设计尺寸。ATmega128和JTAG接口在电路

58、板中的位置如图4-6所示。图4-6 ATmega128在电路板中的位置4.8按键信号采集接口电路在中央处理单元中,需要通过4个开关控制车窗开关、灯光开关、这4个信号,这4个信号都是开关量信号,按键部分电路如图4-7所示:图4-7 按键原理图4.9 液位检测模块本系统采用超声波测距模块来检测汽车油箱的液位,该超声波测距模块可实现04.5m 的非接触测距功能,拥有2.45.5V 的宽电压输入范围,静态功耗低于2mA,自带温度传感器对测距结果进行校正,同时具有GPIO,等多种通信方式,内带看门狗,工作稳定可靠。测距模块包括超声波发射器、超声波接收器与控制电路,实物图如图4-8所示: 图4-8 超声波

59、测距模块图测距模块的基本工作原理为给此超声波测距模块一触发信号后发射超声波,当超声波投射到物体而反射回来时,模块输出一回响信号,以触发信号和回响信号间的时间差,来判定物体的距离。4.10汽车车灯控制器设计传统车灯控制与状态检测方法如图 4-9 所示,利用车灯开关的开、合来实现整个车灯的点亮与熄灭。对于小电流负载,电源通过导线用一根熔断丝和开关控制车灯如 4-9(a)所示,对于大电流负载,由于车灯开关触点允许流过的电流有限,为了防止开关触点烧坏,采用继电器控制车灯点亮与熄灭,如图 4-9(b)所示。车灯状态通过串联在电路中的状态灯进行指示。 (a) 小电流负载时 (b) 大电流负载时4-9 传统

60、车灯控制与状态检测电路原理图随着汽车安全性、舒适性、环保性要求的不断提高,汽车上的电子控制单元日益增多,传统车灯与状态检测方法面临以下问题:(1) 由于采用的是点到点的连接与控制,导线的长度、接点都与车灯的数量成正比。这样增加了线束的质量与体积,加剧了粗大的线束与汽车有限的可用空间的矛盾。(2) 状态灯所检测和指示的信息只是车灯开关的断开/闭合状态,而非车灯的实际工作状态,为汽车行使带来安全隐患;因此,有必要对传统车灯控制与状态检测方法进行改进,提高汽车安全、舒适、环保等性能。下面利用 CAN 总线技术实现车灯控制与状态检测,可以很好的解决传统车灯控制与状态检测方法的弊端。基于 CAN 的车灯

61、控制与状态自动检测硬件结构如图4-10 所示。微控制器对 CAN 控制器进行初始化设置,控制 CAN 控制器实现数据的接收和发送等通信任务。状态检测电路对车灯的工作状态进行检测,并将检测结果反馈给微控制器。图4-10 汽车车灯控制节点4.11电路板设计时注意事项画电路板时布线对系统的抗干扰性能有很大影响,本电路板设计时主要从几下几个方面进行考虑:1尽量增加电源走线宽度,在电源线输入端并联一个大容量的电解电容和一个小的瓷片电容,其中大容量的电解电容是为抑制电源噪声中的低频分量,而小的瓷片电容则是为抑制噪声中的高频分量。2为了进一步输入直流电源的质量,在每个集成电路芯片的直流电源输入端都接 0.1uF的小电容进行滤波,去耦电容安装在芯片的电源线和地线上。3晶振和 CPU 的时钟输入端都易产生噪声,所以晶振和 CPU 之间要尽量靠近些。4发热量大的器件应考虑散热问题,必要时加装散热片。如本系统的 LM7805管和车窗电机驱动芯片L298N。4.12本章小结本章根据汽车电器控制单元的分布特点完成了整体方案设计,将汽车控制网络系统进行合理的分块,并针对每个模块进行了功能描述。给出总线节点电路的设计以及电源电路的设计,针对一些干扰,采取了相应措施。同时设计总线接口每一

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!