毕业设计(论文)-基于LIN总线的汽车倒车雷达的设计与实现.doc_第1页
毕业设计(论文)-基于LIN总线的汽车倒车雷达的设计与实现.doc_第2页
毕业设计(论文)-基于LIN总线的汽车倒车雷达的设计与实现.doc_第3页
毕业设计(论文)-基于LIN总线的汽车倒车雷达的设计与实现.doc_第4页
毕业设计(论文)-基于LIN总线的汽车倒车雷达的设计与实现.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

专科生毕业设计(论文)摘 要随着汽车工业的发展和人们生活水平的提高,城市汽车的数量迅速增加,出现了交通拥挤、停车难等问题,为了解决汽车后视镜存在的后视盲区问题,扫除驾驶员的视野死角和视线模糊的缺陷,降低汽车倒车时的碰撞事故,各种汽车倒车雷达应运而生,然而传统的倒车雷达仅仅是独立的控制单元,不能与汽车数字化信息平台接轨,不利于功能的扩展和汽车网络化的实现,更不利于汽车的维修。本设计主要分为两部分组成,第一部分为超声波测距,主要由探头、发射电路、接受电路、选频电路和单片机处理组成,第二部分为LIN总线通信部分,主要是将全面超声波测距得到的数据通过LIN总线的方式发送出去,并产生不同频率的报警,降低汽车倒车时的碰撞事故发生。经实验表明该系统数据的传输符合LIN协会规定的LIN协议标准,能够很好的和其它符合LIN标准的汽车电子设备进行通信,具有较好的实际应用价值。关键词:LIN总线;倒车雷达;超声波测距AbstractAs the auto industrys development and the improving of peoples life, the car increase in the city. As a result, there are traffic congestion and Parking difficult. In order to solve the crashes while reversing, a lot of reversing radar have been born. However, the traditional reversing radar can just Control himself but can not Communication to other Electronic Control Unit. And it is not good for expansion and maintenance.The design is divided into two main parts, the first part for the ultrasonic ranging, mainly by the probe, transmitter, receive circuit, frequency-selective circuit and single-chip processing of the LIN bus communication into the second part, mainly Ultrasonic Distance Measurement will be the data the way through the LIN bus to send out, and the police have a different frequency to reduce motor vehicle collision when reversing the accident.After finish, the system pass the Kvaser Leaf Professionals test, which proof the system meet the LIN bus Protocol standards and have a good practical value.KeyWords:LIN Bus ;Reversing radar ;Ultrasonic目 录第一章 绪 论11.1 LIN总线汽车倒车雷达系统的研究背景11.2 LIN总线汽车倒车雷达系统的工作原理2第二章 LIN总线介绍32.1 LIN总线基本概念及特点32.2 LIN总线的报文传输和结构72.3 LIN总线报文的滤波和确认112.4 同步过程112.5 错误和异常处理12第三章 总体方案设计133.1 倒车雷达发展133.2 基LIN总线的倒车雷达的优势143.3 方案的对比与确定143.3.1 方案对比143.3.2 方案设计思路16第四章 系统的设计和实现184.1 超声波倒车雷达的设计184.1.1 发射电路的设计184.1.2 接收电路设计194.1.3 检测电路214.1.4 超声波测距软件设计214.2 LIN网络通信设计234.2.1 AT89S52介绍234.2.2 TJA1020介绍244.2.3 硬件设计254.2.4 LIN通信软件设计27第五章 倒车雷达系统实验及数据分析325.1 超声波测距误差及分析325.2 LIN总线报文帧分析32第六章 总 结356.1 工作总结356.2 完善建议35致 谢36参考文献37附录 LIN通信主要电路图38附录 主节点发送程序41 39第一章 绪 论1.1 LIN总线汽车倒车雷达系统的研究背景随着汽车测试技术的发展和人们对汽车品质要求的提高,城市汽车的数量迅速增加,出现了交通拥挤、停车难等问题,为了解决汽车后视镜存在的后视盲区问题,扫除驾驶员的视野死角和视线模糊的缺陷,降低汽车倒车时的碰撞事故,各种汽车倒车雷达应运而生,然而传统的倒车雷达仅仅是独立的控制单元,不能与汽车数字化信息平台接轨,不利于功能的扩展和汽车网络化的实现,更不利于汽车的维修。汽车上的各种创感器的数量呈现快速增长的趋势,传统的测试电子单元不具备网络通信能力,使得当这些电子单元的数量增加到一定程度的时候车上布线收到严重的挑战,所以随着汽车产业的不断发展,汽车现场总线在国内外正收到越来越多的关注。汽车上面应用的现场总线总线繁多,有Profibus、RS485、CAN和LIN总线等,然而,自从20世纪80年代中期德国博世公司开发出现场总线CAN以后,其发展迅速并收到广泛关注,在世界范围内得到广泛的推广和应用,在欧洲,从1992年其就推广了速率在47.6125Kb/s之间的CAN标准ISO-11898-1,其后几年淘汰了传统的SAE J1850通信协议同时积极响CAN总线发展,可以说,目前CAN总线已经成为汽车总线的主流。然而,由于CAN总线复杂的仲裁机制使得它在低端的场合生产成本得到了挑战,另外在汽车使用现场它的稳定性相比一些不使用竞争机制的总线来说也存在一些不足,正是以上这些原因,在CAN成为汽车主流总线的同时另外一种专门应用与低端场合的总线LIN得到了广泛的关注,它采用单主多从的通信方式,避免了因竞争带来的成本和开销,从属节点可以在没有晶体振荡器的情况下自行同步,因此它的硬件极为简单,另外它1K20Kb/s的位速率能够满足绝大多数低端应用的需要,所以被视为最有发展前途的总线之一。基于LIN总线的汽车倒车雷达系统是一种网络式的倒车系统,它将低成本的汽车现场总线LIN应用到倒车雷达上面,具有以下优点:符合LIN协议标准,方便在汽车上与其它部件的扩展;总线式的通信可以很方便的和汽车仪表板进行通信;系统设计简单,成本低,通信可靠性强;通信具有检错能力,通信过程错误可控;低电磁辐射,抗干扰能力强。通信距离可以达到20m,能很好的满足汽车现场安装的需要;分布式的布置有利于汽车自动控制的实现,为智能汽车的开发提供了支持。本设计正是基于以上的应用背景设计的,与传统的单独倒车系统相比本系统在兼容性方面和汽车布线方面具有强大的优势,同时与主流的CAN总线相比在成本和稳定性方面具有相当的优势,所以LIN总线做为CAN总线的补充和辅助总线,在倒车雷达等这种低端的应用场景必将收到更加广泛的关注。1.2 LIN总线汽车倒车雷达系统的工作原理随着汽车工业的发展和人们生活水平的提高,城市汽车的数量迅速增加,出现了交通拥挤、停车难等问题,为了解决汽车后视镜存在的后视盲区问题,扫除驾驶员的视野死角和视线模糊的缺陷,降低汽车倒车时的碰撞事故,各种汽车倒车雷达应运而生,然而传统的倒车雷达仅仅是独立的控制单元,不能与汽车数字化信息平台接轨,不利于功能的扩展和汽车网络化的实现,更不利于汽车的维修。本设计采用89S52做为控制器,通过输出引脚发送40KHz的脉冲信号,脉冲通过超声波发射电路升压后变成24V左右的电压驱动超声波探头发送40KHz的超声波,超声波遇到阻碍物反射回来撞击探头使探头产生相同频率的电压信号,信号经过接收电路放大和选频之后产生一个中断信号输入到单片机,单片机根据这段时间差计算出距离并将数据使用LIN协议规定的报文发送到总线上面,每个节点发送的信号都带有一个ID(Identity)标识符,总线上面的接收节点通过ID标识符可以分辨是报文的来源,系统的通信过程按照LIN协议规定的一主多从的通信方式,即首先由主节点发送一个报文头,报文头里面含有同步信号和标识符,从节点在接收到报文头后根据同步场确定通信的波特率,再将标识符与本节点的标识符进行比较,如果一致则发送响应场,如果不一致则保持沉默。该系统数据的传输符合LIN协会规定的LIN协议标准,能够很好的和其它符合LIN标准的汽车电子设备进行通信,具有较好的实际应用价值。第二章 LIN总线介绍2.1 LIN总线基本概念及特点LIN(Local Interconnect Network)总线协议是面向车辆低端分布式应用的一类多路复用串行协议,是用一种低成本的串行通信网络实现汽车中的分布式电子系统控制。LIN的适用范围是带单主节点和一组从节点的多节点总线,LIN总线的目标是为现有汽车网络(CAN总线)提供辅助功能,LIN总线将是在汽车中使用汽车分级网络的启动因素(王旭东,2007)。LIN总线的标准化将简化多种现存的多点解决方案,而且将降低汽车电子的开发、生产和服务成本。因此,在汽车中应用LIN总线可大大降低成本。图2.1是汽车中几种网络协议的数据传输速率与每个节点相应的通信成本的对应曲线。25000数据速率(kbit/s)201251000100000LIN单线主机从机J1850CAN-CCAN-BTTX容错的时间触发MOST、光纤蓝牙无线介质每个相应节点增加的通信成本/美元0.5125图2.1 主要网络协议的传输速率与成本LIN协议是根据OSI参考模型,被细分成物理层和数据链路层,LIN总线的分层结构如图2.2所示。其中:物理层(Physical Layer) 定义了信号如何在总线媒体上传输,本协议中定义了物理层的驱动器/接收器特性。数据链路层LLC验证滤波恢复管理时基同步报文确认数据封装/解封错误检测错误标定串行化解串物理层位定时位同步总线发送/接收器数据链路层(Data Linker Layer)媒体的访问控制(MAC)子层是LIN协议的核心。它管理从LLC子层接受到的报文,也管理发送到LLC子层的报文。MAC子层由故障界定这个管理实体监控。逻辑链路控制(Logical Link Layer,LLC)子层涉及报文的滤波和恢复管理的功能。LIN总线规范中涉及到的主要名词有报文在总线上发送的信息,有长度可选的固定格式。每个报文帧都包括2、4或8个字节的数据以及3个字节的控制、安全信息。总线的通信有单个主机控制,每个报文帧都用一个分割信号起始,接着是一个同步场和一个标识符场,这些都是由主机任务发送。从机任务则是发回数据场和校验场,如图2.2所示。 图2.2 LIN总线的分层结构从机控制单元从机任务从机控制单元从机任务主机任务从机任务主机控制单元tt下一个同步间隔场主机任务从机任务同步场1B标识符场1B响应间隔数据场2、4或8B校验场1B同步间隔13b图2.3 LIN通信概念通过主机控制单元中的从机任务,数据可以被主机控制单元发送到任何从机控制单元。相应的主机报文ID可以触发从机从机通信。位速率LIN总线最大的波特率是20kbit/s,它是由单线传输媒体的电磁干扰(Electro Magnetic Interference,EMI)限制来决定。最小的波特率是1Kbit/s,可以避免和实际设备的超时周期冲突。为使用低成本的LIN器件,建议使用表2.3所示的位速率。连接LIN网络节点的最大数量不仅由标识符的数量限制,也由总线的物理特性限制:LIN网络的节点数量不应超过16个,否则节点的增加将减少网络阻抗,会导致环表2.3 建议的位速率 (单位:bit/s)低速 中速 高速 2400 9600 19200境条件变差,从而不能进行正常的无错误通信,实验证明,没增加一个节点,就会降低3的阻抗(王旭东,2007)。LIN总线总的“电”线(即通信导线)长度应少于或等于40m。主节点的总线端电阻的典型值是1K,从节点的总线端电阻是30 K。应答正确接收报文后的应答过程在LIN协议中没有定义。主机控制单元检查由主机任务初始化的报文和由它自己的从机任务接收的报文的一致性来表示。如果不一致(例如丢失从机响应、校验和不正确等),主机任务可以改变报文的进度表。如果从机检测到不一致,从机控制器将保存这个信息,并将它用诊断信息的形式向主机控制单元请求。诊断信息可按普通报文帧的形式进行发送。睡眠模式/唤醒为了减少系统的功耗,LIN节点可以进入没有任何内部活动和被动总线驱动器的睡眠模式。用于广播睡眠模式的报文是一个专用的命令。睡眠模式时,总线呈现隐性。任何总线活动或任何总线节点的内部条件都将结束(唤醒)睡眠模式。一旦节点被内部唤醒,基于唤醒信号的过程将给主机通报这一消息。唤醒帧是一个不变的显性位序列。唤醒后,节点内部的活动将重新启动,MAC子层将等待系统振荡器稳定,从机节点则在重新参与总线通信前等待,知道和总线活动同步(通过接收主机任务的显性同步间隔)。时钟恢复和串行通信接口(SCI)同步每个报文帧都由一个同步间隔(Synch Break)起始,接着是同步域(Synch Field),这个同步域在几倍的位定时长度中包含了5个下降沿(即“隐性”到“显性”的转换)。这个长度可以测量,而且可以用于计算从节点内部定时。总线值总线有两个互补的逻辑值:“显性”或“隐性”。相应的位值和电压值见表2.4。表2.4 逻辑和物理总线值逻辑值位值总线电压显性隐性01地电源LIN总线特点的分析LIN总线协议是一种建立在通用的SCI/UART硬件接口上,并将分布在车辆不同位置的智能传感器和执行器连接到车内主体网络的单总线、局部互连的串行通信协议。它采用总线型拓扑结构、单主多从介质访问方式,是一种面向底层的控制协议。LIN的实现比较简单,只要具有SCI的单片机都可以用作LIN的从节点。除此之外,LIN中必须有一个主节点将该网络连接到主网上,比如CAN,所以LIN不是CAN的替代品,而是它的补充。LIN提高了汽车分层多路复用网络的性能,降低了汽车电子控制装置的开发、生产及诊断的服务成本。它的只要特性有:1. 成本低、具有标准的SCI/UART接口。2. 采用单主节点/多从节点的主从结构,无需总线仲裁机制。3. 通信时能监测传输响应时间,通信传输速率最高可达20Kbit/s;4. 数据帧长度可变(2字节、4字节或8字节),配置灵活;5. 多点广播接收方式,从节点无须高精度振荡器,可实现自同步。6. 无须改变LIN从节点的软硬件就可增加网络从节点;7. 具有数据校验和错误检测机制;8 LIN上节点数目一般不超过12个。LIN最初的设计目的是用于汽车电子控制系统,典型的LIN总线应用是汽车中的联合装配单元,如车门、方向盘、座椅、空调、照明灯、湿度传感器等。对于这些成本比较敏感的单元,LIN总线可以使那些机械元件,如智能传感器、制动器或光敏器件得到较广泛的使用。这些元器件可以很容易地连接到汽车网络中,并得到十分方便的维护和服务。2.2 LIN总线的报文传输和结构报文帧报文传输是由报文帧格式形成和控制。报文帧由主机任务向从机任务传送同步和标识符信息,并将一个从机任务的信息传送到其他从机任务。主机任务位于主节点内部,它负责报文的进度表、发送报文头(Header)。从机任务位于所有的(即主机和从机)节点中,其中一个(主节点或从节点)发送报文的响应(Response)。报文帧如图2.5所示。它是由主节点发送的报文头和一个主节点或从节点发送的响应组成。报文帧的报文头包括一个同步间隔、一个同步域和一个标识符域。报文帧的响应则由39字节域组成:2、4或8字节的数据域(Data Field)和一个校验和域(Checksum Field)。报文帧的报文头和响应是由一个帧内响应空间分隔,字节域由字节间空间分隔。最小的字节间空间和帧内响应空间是0。下面分别对此进行说明。字节间空间帧内响应空间响应报文校验和域数据域数据域数据域数据域标识符场同步域同步间隔报文帧图2.5 LIN的报文帧字节域LIN字节域的格式就是通常的“SCI”或“UART”的串行数据形式(8IN1编码)。即每个字节域的长度是10个位定时(Bit Time):1bit起始位+8bit数据位+1bit停止位。起始位(Start Bit)是一个“显性”位,它标志着字节域的开始。接着是8个数据位,首先是发送最低位。停止位(Stop Bit)是一个“隐性”位,它标志着字节域的结束。报文头域同步间隔:为了能清楚识别报文帧的开始,报文帧的第一个域是一个同步间隔。同步间隔是由主机任务发送,它使所有的从机任务有均等机会与总线时钟信号同步。同步间隔由两个不同的部分组成,第一个部分是大约持续13个位定时的显性总线电平,接着的第二部分是1个位定时的隐性电平,作为同步定界符。第二个域允许用来检测接下来的同步域(Synch Field)的起始位,具体结构如图2.6所示。同步间隔域同步域同步定界符图2.6 同步间隔域同步域:同步域包含了时钟的同步信息。同步域的格式是“0x55”,如图2.7所示,表现在8个位定时中有5个下降沿,即“隐性”跳变到“显性”的边沿。同步域起始位10325476停止位图2.7 同步域标识符域:标识符域定义了报文的内容和长度。其中,内容是由6个标识符位和两个奇偶校验位表示,如图2.8所示。由标识符位的第4和第5位(ID4和ID5)定义的报文数据域数量见表2.9。这将把64个标识符分成4个小组,每组16个标识符,这些标识符分别有2、4或8个数据域。ID0ID1ID2ID3ID4ID5P0P1标识符域长度控制起始位停止位标识符位标识符的奇偶校验位图2.8 标识符域表2.9 在报文帧中控制数据域数量 ID5ID4Ndata(数据域的数量)/字节001101012248标识符的奇偶校验位通过下面的混合奇偶算法计算:P0=ID0ID1ID2ID4(奇校验)P1= ID1ID3ID4ID5(偶校验)在这种情况下,不可能所有的位都是隐形或显性的。响应域数据域:数据域通过报文帧传输,由多个8位数据的字节域组成。传输由LSB开始,如图2.10所示。D0D1D2D3D4D5D6D7数据域数据位起始位停止位图2.10 数据域校验和域:校验和域是数据域所有字节的和的反码,如图2.11所示。和接“带进位加(ADDC)”方式计算,每个进位都被加到本次结果的最低位(LSB)。这就保证了数据字节的可靠性。所有数据字节的和的补码与校验和字节之加的和必须是“0xFF”。C0C1C2C3C4C5C6C7校验和域校验和位起始位停止位图2.11 校验和域LIN总线报文帧的长度报文帧以一个同步间隔作为开始,以校验和域作为结束。报文帧中的字节域用字节间空间和帧内响应空间分隔。字节间空间和帧内响应空间的长度没有定义,但限制了整个报文帧的长度。最小的帧长度TFRAME-MIN是传输一个帧所需要的最小时间。最大的帧长度TFRAME-MAX是允许传输一个帧的最大时间。它们是由数据域数量决定的,并不包括系统固有的信号延时。表2.12给出了他们的参考值。表2.12 报文帧的定时名称符号时间(单位为Tbit)最小报文帧长度最小报文长度最大报文长度最大报文帧长度总线空闲超时TFRAME-MINTHEADER-MINTHEADER-MAXTFRAME-MAXTTIME-OUT10NDATA+4434(THEADER-MIN+1)*1.4(TFRAME-MIN+1)*1.425000Tbit为基本位时间,与传输速率有关。指“+1”的条件为THEADER-MIN 和TFRAME-MAX一个整数值。2.3 LIN总线报文的滤波和确认报文滤波报文滤波是基于整个标识符的,用户必须通过网络配置来保证:与某一指定的传送标识符对应的从机任务不能多于一个。报文确认校验报文是否有效的时间点,发送器与接收器各不相同。发送器:如果直到帧的末尾均没有错误,则此报文对于发送器有效。如果报文破损,则主机会重新发送报文。接收器:如果直到最后的一位(除了帧末尾位)均没有错误,则报文对于接收器有效。总线上传送的事件信息也可能丢失,而且这个丢失不能被检测到。如果报文发生错误,则主机和从机任务都认为报文没有发送。值得注意的是:主机任务和从机任务在发送和接收到一个错误报文时所采取的措施,并没有在协议规范中定义。像主机从新发送或从机的后退操作都由用户按照应用要求在应用层程序中来实现,这些应在应用层中给予说明。在总线上传送的时间信息也可能丢失,而且这个丢失不能被检测到。2.4 同步过程同步域的模式是“0x55”。如图2.13所示,同步过程是基于模式下降沿之间的时间量度。下降沿在2、4、6和8位时间有效,可以简单地计算基本位时间Tbit。测量起始位和第7位下降沿之间的时间,并将得到的值除8。将结果除8是将二进制的定时器值向LSB右移3位,将最低位四舍五入,校正后即得到结果。标识符域起始位同步域325476停止位2Tbit2Tbit2Tbit2Tbit8Tbit01同步间隔图2.13 同步域2.5 错误和异常处理错误检测LIN总线共定义了5个不同的报文错误类型。主要如下:位错误向总线发送一个位的单元的同时也在监控总线。当监控到的位的值和发送的位的值和发送的位的值不同时,则在这个位定时检测到一个位错误。校验和错误所有数据字节的和的补码与校验和字节之和不是“0XFF”时,则检测到一个校验和错误。标识符奇偶错误标识符的奇偶错误(即错误的标识符)不会被标出。通常,LIN从机节点不能区分一个未知但有效的标识符和一个错误的标识符。然而,所有的从机节点都能区分ID场中8位都已知的标识符和一个已知但错误的标识符。从机不响应错误如果任何主机任务在发送SYNCH和标识符场时,在最大长度时间内TFRAME_MAX中没有完成报文帧的发送,则产生一个不响应错误。同步场不一致错误 当从机检测到同步场的边沿在给出的容差外,则检测到一个同步场不一致错误。没有总线活动如果在接收到最后的一个有效信息后,在TTIMEOUT的时间内没有检测到有效的同步间隔场和字节场,则检测到一个没有总线活动的条件。第三章 总体方案设计3.1 倒车雷达发展倒车雷达(Car Reversing AidSystem)全称“倒车防撞雷达”,又称“泊车辅助装置”,它是汽车泊车或者倒车时的安全辅助装置,由超声波传感器(俗称探头)、控制器和显示器(或蜂鸣器)等部分组成。它能以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车、倒车和启动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高驾驶的安全性(朱华,2006)。倒车雷达的发展主要有以下几个阶段:第1代倒车雷达“倒车请注意”! 想必不少人还记得这种声音,它只能算作最早的有关于倒车的一个产品, 不能称为雷达, 现在只有小部分商用车还在使用。只要驾驶员挂上倒档, 它就会响起, 提醒周围的人注意。从某种意义上说, 它对驾驶员并没有直接的帮助,基本属于淘汰产品。最初的倒车雷达是蜂鸣器, 它标志着倒车雷达系统的真正开始。倒车时, 如果距车1.51.8 m处有障碍物, 蜂鸣器就会开始工作, 蜂鸣声越急, 表示车距障碍物越近。该装置既没有语音提示, 也没有距离显示, 虽然驾驶员知道车后有障碍物, 但不能确定障碍物距离车究竟有多远(刘海峰,2007)。第2代倒车雷达第2代产品采用数码波段显示, 可以显示车后障碍物离车体的距离。如果车后是物, 在1.8 m开始显示; 如果是人, 在0.9 m左右的距离开始显示。这一代产品有2种显示方式, 数码显示产品直接显示距离数字, 而波段显示产品由3种颜色来区别: 绿色代表安全距离, 表示障碍物离车体距离有0.8 m以上; 黄色代表警告距离, 表示离障碍物的距离只有0.60.8 m; 红色代表危险距离, 表示离障碍物只有不到0.6 m的距离, 必须停止倒车。第2代产品把数码和波段组合在一起, 比较实用, 但是单独安装比较麻烦,扩展性差。新一代的倒车雷达目前有第三代、第四代、第五代倒车雷达,其主要特点是每个传感器探头通过现场总线进行通信,通过现场总线的方法搭建起来的倒车雷达系统能够很容易的将各个方位的数据采集进来,再通过微处理机处理成图象等信息进行显示,并且能够和车内的其它传感器的数据在同一种总线上面进行传输,方便汽车布线,同时现场总线还能够将测试到的数据应用到智能控制中,为智能倒车系统的开发提供了可能性。3.2 基LIN总线的倒车雷达的优势基于LIN总线的汽车倒车雷达系统是一种网络式的倒车系统,它将低成本的汽车现场总线LIN应用到倒车雷达上面,具有以下优点:1. 符合LIN协议标准,方便在汽车上与其它部件的扩展。2. 总线式的通信可以很方便的和汽车仪表板进行通信。3. 系统设计简单,成本低,通信可靠性强。4. 通信具有检错能力,通信过程错误可控。5. 低电磁辐射,抗干扰能力强。6. 通信距离可以达到20m,能很好的满足汽车现场安装的需要。7. 分布式的布置有利于汽车自动控制的实现,为智能汽车的开发提供了支持。3.3 方案的对比与确定3.3.1 方案对比设计在解决LIN通信的开始阶段,主要是采用瑞萨公司生产的R8C/23 CAN/LIN演示开发板进行设计和开发,但是由于中间通信方面出现的问题而采用89S52单片机进行开发,现将两个方案对比如下:方案一:基于R8C/23开发板的LIN通信R8C/23演示版(见图11)是瑞萨公司开发的专门为CAN/LIN总线开发而设计的,主要优点有:1. 采用CISC 结构,内部总线宽度16 位,最高运行频率达20MHz,具有内置可在线编程FLASH、EMI 性能出色、硬件看门狗、引脚功能丰富等多种优点。2. 内置了CAN 控制器和LIN 模块,可以专门应用于汽车电子领域。3. 系统更加符合LIN总线通信协议,通信过程包括了LIN的睡眠和唤醒方式,更适合在实际中应用。图3.1 R8C23演示板存在问题:1. LIN通信过程缺少错误处理部分,离实际应用还有一定的距离。2. 采用的开发指令通过第二次编译,不完全符合C语言的语法,提高了开发难度。3. 在与Kvaser公司的LIN总线分析仪通信时存在兼容问题。方案二:基于89S52单片机的LIN通信过程主要优点:1. 指令和寄存器简单,开发难度低。2. 电路简单,调试难度低。3. 开发成本低,容易组建分布式的LIN总线局域网络。存在问题:1. 通信过程还没有完全实现LIN标准。2. 缺少支持LIN通信的专门的寄存器和现有的接口函数。综上所述,89S52具有指令和寄存器简单,开发难度低、电路简单,调试难度低、开发成本低等特点,因此从设计的时间和实现的程度上考虑,采用89S52做为本次设计的控制器。3.3.2 方案设计思路本设计主要分为两部分组成,第一部分为超声波测距,主要由探头、发射电路、接受电路、选频电路和单片机处理组成,主要过程是:单片机产生20个0.5ms,频率为40 kHz的脉冲信号,自动避过大约为2ms的盲区时间,然后开始计时,脉冲原始信号是5 Vp-p,该信号经过运放放大后,可驱动超声波发射探头发出15Vp-p、40 kHz的脉冲超声波。由于接收头与发射头配对,因此,接收后可将超声波调制脉冲变为交变电压信号,经运放放大后加至高通有源滤波电路滤除低频杂波,最后产生一个TTL电平的回波信号,该信号输入到单片机产生一个外部中断,停止单片机的定时器,然后读出计时器的时间差得到超声波发射出去碰到阻碍物回射的时间差,再根据公式d=v*t/2计算得出距离障碍物的距离,主要原理框图如图3.2所示。第二部分为LIN总线通信部分,主要是将全面超声波测距得到的数据通过LIN总线的方式发送出去,并产生不同频率的报警提示,电路主要由LIN收发器、单片机和报警三部分组成,单片机接受超声波测距电路传回来的数据,并对数据进行处理,当判断到有障碍物的时候通过报警电路产生报警提示,距离比较远的时候报警声音的间断比较缓慢,当距离障碍物的距离比较近的时候报警声音比较急促。数据部分则主要通过LIN总线收发器产生符合LIN总线协议标准的信号在总线上面进行通信。其主要框图如图3.3所示:发射探头接受探头发射电路接受电路选频电路控 制 器 图3.2 超声波测距原理图LIN总线收发电路报警电路Tx超声波测距数据RxLIN总线单 片 机图3.3 LIN总线通信原理图第四章 系统的设计和实现4.1 超声波倒车雷达的设计4.1.1 发射电路的设计发射模块主要作用是对超声波发射探头进行功率驱动,由单片机引脚输出40KHz的脉冲信号经CD4049(FAIRCHLD,2002)转变成24V电压信号激励超声波探头,从而产生频率为40KHz的超声波并发射出去。电路原理图如图4.1所示(赵广林,2002)。由单片机的的40KHz的脉冲来驱动NPN型三极管S9013,这样就能在CD4049的输入引脚上加上幅值为12V,频率为40KHz的方波信号,经过二进制非门CD4049桥电路移相整合后,其频率不变,但是压差扩大一倍,这增大了超声波发射探头发出的超声波的幅值,从而提高了超声波的传输距离,增大了超声波测距系统的量程。两个门并联连接以便每一侧能够为发射探头提供足够的驱动电流。在超声波发射探头的输入引脚上串联两个电容的作用是滤除驱动信号中的直流分量。由于MSP430的工作电压是3.3V,而CD4049的工作电压是12V,MSP430与输出驱动器之间的逻辑电平不匹配,三极管就实现了Q4就实现了这两种电平之间的转换。图4.1 发射模块图4.1.2 接收电路设计接收换能器晶片接收到超声波垂自作用后,因谐振而形成逐步加强的机械振动。因压电效应晶片两面出现交变的等量异号电荷,电荷量很少,只能提供微小交变电压信号,而不能提供电流信号。接收换接收电路的任务是将这一微小交变电压信号充分放大,同时考虑可能出现干扰信号,放大同时加入滤波电路,驱动后面的比较器输出电位跳变,作为确定接收到的时刻。前端放大电路前置放大电路单元的作用是对有用的信号进行放大,并抑制其它的噪声和干扰,从而达到最大信噪比,以利于后续电路的设计。电路如图4.2所示,考虑到超声换能器的输出电阻比较大,因此前置放大器必须有足够大的输入阻抗;同时,换能器的输出电压很小,这就要求前置放大电路有很高的精度、很小的输入偏置电压。前置放大电路是由一个高精度、高输入阻抗放大器TL082及电阻R2、R3和RP。构成,组成一反向比例放大电路,这样可以减小地线噪声的影响。图4.2 前端放大电路带通滤波电路在传感器接收的信号中,除了障碍物反射的回波外,总混有杂波和干扰脉冲等环境噪声,而前端放大电路在放大有用信号的同时,会将一部分的噪声信号同时放大,并没有提高输入信号的信噪比。于是设计出一高品质因素的滤波器对于整个系统十分重要。60年代以来,集成运放获得了迅速发展,由它和R, C组成的有源滤波电路,具有不用电感、体积小、重量轻等优点。此外,出于集成运放的开环电压增益和输入阻抗均很高,输出阻抗又低,构成有源滤波电路后还具有一定的电压放大和缓冲作用。所以拟采用有源滤波电路抑制无用频率干扰信号。由于在本系统中,总噪声包括在低频段主要集中室内环境噪声和50Hz工频干扰,以及在高频率段的接收机内部噪声。故选用由TL082运算放大器,以及外围电阻电容构成的带通滤波电路。经过此滤波电路后,40KHz左右的有用回波信号被保留,之外的无用信号被削弱,为下一级的检波电路提供较高信噪比的输入信号,该单元电路如图4.3所示。图4.3 带通电路4.1.3 检测电路接收传感器输出信号经过上述放大滤波电路后,就可以进行信号检测。其目的是确定接收信号的到达时间,这是整个电路中一个关键的地方,因为它不仅决定系统的测量精度,还关系到整个系统是否能正常工作。检测电路设计的要求是保证每次接收信号都能被准确的鉴别出来,通常利用比较器将输入信号与某一固定电平进行比较,输出不同的电平来产生上升或下降沿触发,转换成数字脉冲去触发单片机的外中断引脚。通过调整R9和R10。阻值产生比较所需要的参考电压,即。由于LM393具有集电极开路输出的结构,所以在电源与输出之间,加一上拉电阻,电容C5;起简单滤波作用。具体设计时考虑到前级放大滤波电路输出是峰值为5V左右的连续正弦波信号的叠加,所以分别取R9= 20K和R10= 1K,则参考电压为;上拉电阻R111K,电容C5=1000PF。当进入比较器的输入信号高于238mV时,比较器输出电压为5V;输入信号低于238mV时,比较器输出电压为OV,利用此边沿跳变来控制单片机外部中断,停止计时。图4.4 检测电路4.1.4 超声波测距软件设计本系统采用了单片机AT89C51,用单片机汇编语言实现软件编程。整个系统软件功能的实现可以分为主程序、子程序、中断服务子程序几个主要部分组成。整个系统的控制流程如图4.5所示,在初始化以及调用发射脉冲串子程序后打开定时器开始计时,程序进入中断响应的等待。程序初始化过程,主要是定时器计数器工作方式以及初值进行设置。中断服务程序是响应单片机的外部中断。在系统主程序中,发射的40KHz脉冲信号遇到障碍物反射后,经接收检测电路产生外中断信号至单片机。在中断服务程序中,首先进行必要的现场保护,再把进入中断服务程序处的计数值读出并对该数据进行处理,计算得到相应的距离值,同时转换为十进制,最后送到输出显示。定时器中断子程序主要完成计时工作,由于5l单片机是16位定时器,最大计时时一间为65536us,当测量的距离很远的时候,定时器就会发生溢出;所以必须对溢出中断进行相应的设置才能使得单片机正常工作。同时由于电路的测量距离有限最远为5米,当测量距离超出5米时,接收探头就不能检测回波,即不能产出外部中断更不可能关闭定时器,程序框图如图4.5所示。开始单片机初始化发射脉冲串打开定时器有回波外部中断子程序图4.5 软件框图4.2 LIN网络通信设计4.2.1 AT89S52介绍本实验中选用比较常见的AT89S52(功能框图见图4.6)作为LIN节点的微控制器,AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP (In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-_51指令系统及80C_51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元。AT89S52具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128bytes的随机存取数据存储器(RAM ) ,32个外部双向输入/输出(I/O)口,5个中断优先级2层图4.6 89S52单片机功能框图中断嵌套中断,2个16位可编程定时计数器,2个全双上串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停上作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能自至外中断激活或硬件复位。89S52单片机主要功能特点如下:1. 兼容于51系列2. 8位CPU3. 片内256KB RAM4. 片内8KB FLASH ROM5. 32个可编程I/O口6. 3个16位定时/计数器7. 8个中断源8可编程串行I/O接口4.2.2 TJA1020介绍TJA 1020(如图4.7)是LIN主/从协议控制器和LIN物理总线之间的接口,主要用作为车辆中的副网络,使用的波特率从1到20kbits/s。控制器在TXD管脚输入的发送数据流通过LIN收发器转换成LIN总线信号,并山收发器控制转换速率和波形,减少EME。LIN总线的输出管脚通过一个内部终端电阻拉成高电平。收发器在LIN总线的输入管脚检测数据流并通过管脚RXD发送到微控制器。总体特征:1. 波特率最高达20kbits/s2. 极低的电磁发射(EME)3. 高抗电磁干扰性(EMI)4. 低斜率模式可以进一步降低EME5. 输入电平与3.3 V和_5 V器件兼容6. 唤醒源识别本地或远程低功耗管理:在睡眠模式下电流消耗极低可实现本地或远程唤醒保护:发送数据超时功能LIN总线对电池和地的短路保护总线终端和电池管脚可防止汽车环境下的瞬变过热保护图4.7 TJA1020管脚图图4.7 TJA1020内部结构4.2.3 硬件设计现在单片机种类繁多,硬件资源各不相同,功能也是千差万异。总体来讲,基于普通单片机软件实现LIN协议的方法可分为两类:一种是基于单片机通用串口的实现方式;另一种是基于单片机两个普通端口位的位操作实现方法。本次实验是采用ATMEL公司的S52单片机,所以采用串口通信的方法来实现LIN通讯。LIN通信的主要电路图如附录所示,Lin总线收发电路如图4.8所示。图4.8 LIN收发器电路基于单片机通用串口构成的LIN节点实现方案有两种:一种是查询方式;另一种是中断方式。两种方法的区别在于报文头接受判断方法不同。查询方式硬件电路简单,对时钟要求比较高,系统中断的种类和次数少,程序运行比较稳定:但不足的是系统大部分时间都花费在对帧报文头的等待查询上,系统资源利用率低。中断方式是对查询方式的不足之处加以改进和提高,间隔场、同步字节场的接收则完全采用中断方式进行。中断方式的优点是,对主程序运行的影响比较小,系统的资源利用率高。不足的地方是增加了单片机的外围电路,硬件上要复杂点。综合上面的特点,本次实验是采用中断方式接收。主机应用和从机应用的最大不同点是主机应用要有个格外的主机端电阻。主机应用通过在LIN和BAT管脚之间串联反向二极管和电阻实现,这样主机应用解决方案在LIN总线错误地对地短路时并不提供自动防故障功能。短路电流不能被关断,所以电池将持续放电。为了提高EME以及EMI,本次设计在LIN管脚和地之间连接了一个电容负载C,如图20中的CSLAVE。上拉电阻R12的阻值由TJA 1020的RXD输出管脚驱动能力来规定,可以通过下面的方程来计算:上拉电阻的阻值范围:Rmin R12 Rmax其中Vrxd=0.4V,而且其中Ith(rxd),min RXD高电平漏电流的最大值Iol(rxd),min RXD低电平漏电流的最大值Vhigh(rx),min 微控制器端口管脚(RX)高电平输入电压的最小值Vlow(rx),max 微控制器端口管脚(RX)低电平输入电压的最大值微控制器的电源电压是5 V,最小的微控制器端口输入阀值电压从Vtow(rx),max=0.8V到Vhigh(rx),min=2V,则上拉电阻的阻值范围是:在本次设计中,上拉电阻R12的值是2.2kADC0804转换器的零点电压无需调整,而输入电压的范围可以通过调整VREF/2端的电压加以改变。VREF/2端电压应该为输入电压的1/2,例如输入电压的范围是OV至2V,则在VREF/2端应加1V,但当输入电压为0 +5V时,VREF/2无需加任何电压,而由内部电源分压得到。本次实验中ADC0804的参考电压VREF/2应该调整为2.56V,但从实验方便的角度来考虑,用两个1k电阻分压,约为2.5V。4.2.4 LIN通信软件设计

温馨提示

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

评论

0/150

提交评论