燃油量检查控制系统设计_第1页
燃油量检查控制系统设计_第2页
燃油量检查控制系统设计_第3页
燃油量检查控制系统设计_第4页
燃油量检查控制系统设计_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、交通与汽车工程学院课程大作业论文课 程 名 称: 汽车电子控制技术(实践) 课 程 代 码: 04913 题 目: 燃油量电控系统分析及仿真(汇编,89C51) 年级/专业/班: 11级/汽车服务工程 学 生 姓 名: 王 吉 宇 开 始 时 间: 2014 年 9 月 10 日完 成 时 间: 2014 年 10 月 10 日课程大作业成绩: 目 录摘要 21 引言 32 方案设计 32.1 燃油量检测系统设计方案论证 3方案一 32.1.2方案二32.2方案一的总体设计框图33 系统硬件设计 43.1 时钟和复位电路 43.2 数模转换芯片 53.3 LED显示器 63.4 声光和电机控制

2、电路 84 系统软件设计 94.1主程序流程图 94.2 声光和电机控制流程图 104.3 程序初始化流程图 114.4 显示程序流程图 115 系统仿真 125.1 Protel电路调试 125.2 程序调试 125.3 系统仿真电路图 135.4 proteus仿真 13结论 16致谢 17参考文献 18附录 19摘 要本设计是基于AT89C51单片机为核心的汽车瞬时燃油测量检测系统,该系统通过数模转换芯片ADC0808对以电位器为模拟输入的信号进行模数转换,再将模数转换所得的数字量送入单片机,经单片机对该数字量进行处理后,输入控制信号,进行显示和声光报警,提示驾驶员采取相应的措施,并在油

3、量剩余很少的情况下,直流电动机转动,使节气门开度减少,以达到降低燃油消耗量的目的。用电位器输出的电压值(0-5V)表示燃油量(空-满)。系统设计完成后进行仿真调试,实现设计功能。关键词:AT89C51单片机 ADC08090 燃油剩余量 声光报警 直流电机 仿真1 引 言 1.1 问题的提出汽车主要是以燃烧燃油来获取动力的,燃油量的多少决定了汽车能行驶多远。在汽车行驶过程中要如何得知该汽车还有多少燃油,该何时加油以及加多少油,这都需要一套燃油检测系统,实时监测燃油量的多少,并在达到设定范围内进行声光控制和直流电机的控制,以提醒驾驶员采取相应措施,维持汽车的正常行驶。在现代社会,汽车作为一种大众

4、的交通工具在人们的生活中扮演越来越重要的角色。在汽车的使用过程中,车速这一参数对汽车多的性能及行车的安全的影响是非常大的。车速较高的时候,车辆的更难控制,操纵稳定性要变差,使得汽车行驶的危险性增加,危害人类安全。据报道,交通事故中有很大的一部分是由于超速行驶而引起的。 因此实时的显示车速,在车速过高时指示灯提示,并自动切断燃油供给系统可以有效地减少此类事故的发生,使人们能够更加安全的出行。1.2问题的分析本设计的目的是为了监测汽车燃油量,显示并作出声光提示以及在必要条件下使发动机强行熄火。本系统假设油箱容量50L,显示精度0.01L当燃油量达到40L以上。绿灯亮并发出低频率的提示声音,以提醒驾

5、驶员燃油快加满了;当燃油量只有5-10L时,黄灯亮并发出中频率的声音,以提醒驾驶员燃油不多了,应该注意加油了;当燃油量还剩不到5L时,直流电动机转动,带动节气门转动,使其开度减小,以减小燃油的消耗速率,同时蜂鸣器发出高频声音报警。因此,本次燃油量电控系统的设计包含了AT89C51芯片和A/D转换芯片ADC0808以及必要的外围电路,A/D转换芯片ADC0808将电位器产生的模拟信号转换成数字信号,并将电压的数字信号输送给单片机处理,再利用AT89C51的PO口驱动LED显示油箱当前油量,并在燃油量高于40L时控制指示灯绿灯亮和扬声器低频鸣响;油量低于5L时控制电机转动,以减小节气门开度降低油耗

6、;而处在5L-10L之间时,控制黄灯亮,以提示驾驶员燃油剩余不多,可以加油。最终实现燃油量电控系统的功能。2 方案设计2.1 燃油量检测系统设计方案论证2.1.1方案一采用单片机AT89C51为核心控制元件,压电传感器收集信号,ADC0808将模拟信号转换为数字信号,7SEG-MPX4-CC-BLUE元件作为显示元件,实行声光控制和电机控制,仿真时用电位器模拟传感器收集的信号。2.1.2方案二采用8031为核心控制元件,利用ADC0809进行数模转换,采用4位共阴极LED,模拟电机。2.2方案一的总体设计 电位器ADC0809复位电路时钟电路AT89C51单片机LED显示器发光二级管蜂鸣器直流

7、电机图2-2 系统设计流程图3 系统硬件设计3.1 时钟及复位电路复位电路本次设计采用“RC+按键”复位形式,复位电路的示意图如图3-1-1所示。按键复位原理:按键后:电容器被短路放电、RST直接和VCC相连,就是高电平,此时进入“复位状态”。松手后:电源开始对电容器充电,此时,充电电流在电阻上,形成高电平送到RST,仍然是“复位状态”;稍后,充电结束,电流降为0,电阻上的电压也将为0,RST降为低电平,开始正常工作。 图3-1-1 复位电路时钟电路时钟电路示意图如图3-1-2所示。图3-1-2 时钟电路3.2 数模转换芯片(ADC0808)ADC0808是采样分辨率为8位的、以逐次逼近原理进

8、行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。ADC0808是ADC0809的简化版本,功能基本相同。一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。图3-2-1 ADC0808引脚图引脚功能(外部特性)ADC0808芯片有28条引脚,采用双列直插式封装。各引脚功能如下: 15和2628(IN0IN7):8路模拟量输入端。 8、14、15和1721:8位数字量输出端。 22(ALE):地址锁存允许信号,输入,高电平有效。 6(START): AD转换启动脉冲输入端,输

9、入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 7(EOC): AD转换结束信号,输出,当AD转换结束时,此端输出一个高电平(转换期间一直为低电平)。 9(OE):数据输出允许信号,输入,高电平有效。当AD转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 10(CLK):时钟脉冲输入端。要求时钟频率不高于640KHZ。 12(VREF(+)和16(VREF(-):参考电压输入端 11(Vcc):主电源输入端。 13(GND):地。 2325(ADDA、ADDB、ADDC):3位地址输入线,用于选通8路模拟输入中的一路  &

10、#160; 极限参数电源电压(Vcc):6.5V 控制端输入电压:-0.3V15V 其它输入和输出端电压:-0.3VVcc+0.3V 贮存温度:-65+150 功耗(T=+25):875mW 引线焊接温度:气相焊接(60s):215;红外焊接(15s):220 抗静电强度:400V 输出端注意out8为最低位-out1为最高位,out8-out1分别接单片机的P0.0到P0.7端。 3.3 LED显示器LED显示器件是通过发光二极管显示字段的器件。在单片机控制系统中常用的是由8段LED数码管,它的显示块中有8个发光二极管,7个发光二极管组成字符“8”,1个发光二极管构成小数点,因此有人称8段L

11、ED数码管为8段显示器7。LED数码管的管脚配置如图(a)所示。LED数码管有共阴极和共阳极两类,如图所示。共阴极LED数码管的发光二极管的阴极共地,如图(b),当某个发光二极管的阳极电压为高电平时,二极管发光;而共阳极LED数码管是发光二极管的阳极共接,如图(c),当某个二极管的阴极电压为低电平时,二极管发光。图3-3-1 LED数码管LED的显示方式分为静态显示和动态显示。1. LED静态显示方式所谓静态显示,是指各位共阴极或共阳极连接在一起并接地或+5伏;每位段码线(a dp)分别与一个8位的锁存器输出相连。之所以成为静态显示,是因为各个LED的显示字符一经确认,相应锁存器的锁存的代码输

12、出将维持不变,直到送入另一个字符的段码为止,正因为如此,静态显示的亮度都较高3。但是这样的方式占用的I/O口线多,当显示器的位数较多时,在这里我们共需要12位数码管,所以不适宜用静态显示。下图表示的是一个四位静态LED显示电路。 图3-3-2 LED静态显示电路2、LED动态显示方式当显示器位数较多时,可以采用动态显示。所谓动态显示就是一位一位地轮流点亮显示器的各个位(扫描),对于显示器的每一位而言,每隔一段时间点亮一次。虽然在同一时刻只有一位显示器在工作(点亮),但由于人眼的视觉暂留效应和发光二极管熄灭时的余辉,我们看到的却是多个字符“同时”显示。显示器亮度既与点亮时的导通电流有关,也与点亮

13、时间和间隔时间的比例有关。调整电流和时间参数,可以实现亮度较高较稳定的显示3。 下图表示的是一个8位动态LED显示电路。 图3-3-3 LED动态显示电路通过对比,为了提高系统的性价比,数码管的显示方式采用了动态显示方案。虽然动态显示方式不像静态显示方式那样只需较小的驱动电流就可以得到较高的显示亮度,但动态显示方式所需元件数量和元件种类较静态显示方式要少的多,并且利用人眼的视觉暂留效应和发光二极管熄灭时的余辉,动态显示方式可以较好地“同时”显示多个字符,只要扫描频率足够高就不会使人产生闪烁的感觉。3.4 声光和电机控制电路声光和电机控制电路由两个个发光二极管、一个蜂鸣器和一个直流电机组成。当P

14、2.4输出高电平时,表示油量过少(<5L),此时电机转动,控制节气门开度,从而使汽车燃油消耗率减小,同时蜂鸣器高频鸣响报警;当油量剩余为5-10L时,P2.5输出高电平,控制黄灯亮并控制蜂鸣器中频鸣响,此时表示油量剩余不多,提示驾驶员应及时加油;当燃油量大于40L时,P2.6输出高电平,控制绿灯亮,表示燃油快要加满,蜂鸣器低频鸣响报警。如图3-4所示。图3-4 声光和电机控制电路图4 系统软件的设计4.1 主程序流程图 开始调用初始化程序inint()调用显示程序display()调用AD转换程序AD()图4-1 主程序流程图主程序说明:开始之后调用初始化子程序inint(),对定时器和

15、ADC0808进行初始化,接着调用AD(),对电位器的输入值进行模数转换,并由单片机作出处理,控制发光二极管和蜂鸣器的运行,最后调用显示程序display(),在LED显示器上显示燃油量。程序在采样和显示之间循环,不断的采样并显示。4.2 声光和电机控制程序流程图开始得到并处理AD转换值启动AD转换判断该值是否小于1000?判断是否完成转换?判断该值是否大于4000返回电机转,调用语音程序yuyin(1)绿灯灭黄灯灭电机不转绿灯亮,调用语音程序yuyin(2)黄灯亮,调用语音程序yuyin(3)YNNNYYYN判断该值是否小于500图4-2 声光和电机控制流程图声光和电机控制程序流程图说明:调

16、用AD转换程序后,先启动转换,接着判断是否转换完成,当转换完成后,将结果送入单片机处理,最后判断结果在哪个范围,如小于500,电机转动,并调用语音程序yuyin(1): 如大于500但小于1000,黄灯亮,并调用语音程序yuyin(3): 如大于4000,绿灯亮,并调用语音程序yuyin(2),其他情况不做声光和电机控制。4.3 程序初始化流程图开始定时器0工作模式选择,并装初值给ADC0808赋初值开总中断,启动定时器返回 图4-3 初始化程序流程图初始化程序流程图说明: 在初始化中,定时器采用方式一,即十六位计数器,并装入初值,开启定时器,并打开T0中断,总中断。定时时间为24us,即将单

17、片机的频率五分频得到ADC0808所需的时钟频率500Hz。最后给ADC0808赋初值为零。4.4 显示程序流程图 开始1灯位选通,送显示段码,显示小数点,延时4ms,关闭1灯2灯位选通,送显示段码,延时4ms,关闭2灯返回3灯位选通,送显示段码,延时4ms,关闭3灯图4-4 显示程序流程图显示程序流程图说明: 调用显示程序后,先选通1灯,并送显示段码,再显示小数点,延时4ms,最后关闭1灯。下面选通2灯,并送显示段码,延时4ms,最后关闭2灯。再选通3灯,并送显示段码,再显示小数点,延时4ms,最后关闭3灯。如此,实现3个灯的依次点亮。5 系统仿真通过以上的硬件设计和软件设计过程,工作已经基

18、本完成,之后的工作就是对所设计好的应用系统进行调试。通过调试可以检查出系统出现的一些错误,从而进行改正使系统优化。5.1 Protel电路调试结果图 5-1 Protel电路ERC调试结果5.2 程序调试·程序经过调试显示“0错误,0警告”。表示程序调试通过。图5-1 程序调试通过示意图5.3 系统仿真电路图图5-1 电路仿真电路图5.4 Proteus仿真图5-3-1-1 当燃油量大于40L时,绿灯亮图5-3-1-2 绿灯亮的同时,蜂鸣器低频报警,提示燃油快要加满,此时电机不转图5-3-2-1 当燃油量小于10升大于5升时,黄灯亮图5-3-2-2 黄灯亮的同时,蜂鸣器中频报警提示燃

19、油剩余不多,电机仍然不转图5-3-3-1 燃油快耗尽时,报警灯熄灭,电机开始转动图5-3-3-2 电机带动节气门减小开度使燃油消耗速率减小,同时蜂鸣器高频报警 结 论通过本次课程设计,我进一步掌握了AT89C51单片机的应用,对ADC0808等各种芯片的使用方法有了初步的了解和掌握,并且巩固了C语言编程的有关方法和使用电气专业相关软件的使用等等,这个过程让我受益匪浅。而最终的设计结果基本达到了本次设计的目的,可以对被测系统进行剩余燃油量的基本测量并对驾驶员做出提示,同时还可以对汽车进行低速控制。由于该系统是采用电位器模拟压力传感器的检测信号,可能在实际应用中还达不到要求。只能说在老师的指导和同

20、学的帮助下,我们的设计初步成功。致 谢感谢陈飞老师,在他的精心指导下,我完成了本次课程设计。他的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多为人处世的道理。本设计从选题到完成,每一步都是在他的指导下完成的,倾注了老师大量的心血。另外,本设计的完成也离不开其他老师和各位同学给我的建议和帮助,是他们让我明白了团队合作的精神。在此,我谨向陈飞老师以及帮助过我的老师和同学们,表示崇高的敬意和衷心的感谢!参考文献 1.单片机系统的protues

21、设计与仿真张靖武编著,北京:电子工业出版社,20072.单片机原理及接口技术李朝青编著,北京:北京航空航天大学出版社,20053.MCS-51单片机应用开发实用子程序边春远编著,北京:人民邮电出版社,20054.微型计算机控制技术台方编著,北京:中国水利水电出版社,20015.单片机在电子电路设计中的应用赫建国, 郑燕, 薛延侠编著,北京:清华大学出版社 20066.微机接口技术300例李恩林编著,北京:机械工业出版社,20037.基于AT89S8252单片机的汽车瞬时燃油油量检测系统的设计 程越,谢佩军 宁波大学附录程序代码:#include <reg51.h>#define u

22、char unsigned char#define uint unsigned int/*定义*/sbit led1 =P20;sbit led2 =P21;sbit led3 =P22;sbit led4 =P23;sbit hd =P24;sbit cd =P25;sbit ld =P26;sbit lb =P27;sbit OE =P30;sbit EOC =P31;sbit START =P32;sbit clk =P33;sbit dot =P17;uint digtial4,getdataend;unsigned char dis=0xC0,0xF9,0xA4,0xB0,0x99,

23、0x82,0xF8,0x80,0x90,0x7f;uchar getdata;/*延时(t*1ms)函数*/void delay1ms(unsigned char t) unsigned char i,j; for( ;t;t-); for(i=4;i>0;i-); for(j=123;j>0;j-);/*给ADC8090产生500khz时钟频率函数*/void time_time_clk() interrupt 1 using 0 TH0=(65536-24)/256; /给高八位赋值 TL0=(65536-24)%256; /给低八位赋值 clk=clk;/*初始化定时器.ADC0809*/void inint()TMOD=0x01;/选择工作模式 16位TH0=(65536-20)/256;/给高八位赋值TL0=(65536-20)%256;/给低八位赋值EA=1;/开总中断ET0=1;/启动定时器0;TR0=1;/开定时器0START=0;/给ADC0809赋初值OE=0;/*数码管动态显示电压值*/void display() led1=1; P1=disdigtial3; dot=0; delay1ms(5); P1

温馨提示

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

评论

0/150

提交评论