一种基于单片机的汽车电子点火系统的设计.doc_第1页
一种基于单片机的汽车电子点火系统的设计.doc_第2页
一种基于单片机的汽车电子点火系统的设计.doc_第3页
一种基于单片机的汽车电子点火系统的设计.doc_第4页
一种基于单片机的汽车电子点火系统的设计.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

/bbs/Show.asp?id=52459&BoardID=47&TB=1一种基于单片机的汽车电子点火系统的设计随着汽车工业的不断发展,能源危机以及汽车尾气对大气环境造成的污染日趋严重。而发动机点火时刻的精确控制在提高汽车整体性能的同时,有效地缓解了这一状况。与传统的机械调节式点火时刻控制系统相比,基于微控制器的电子式控制系统具有及时性好、精确度高、控制灵活等优点。为此,从发动机点火控制系统的控制策略出发,设计了一种能提高发动机点火控制精度的新型电子点火控制装置。1系统工作原理发动机点火时刻是通过控制点火提前角(即点火时活塞位置到上止点曲轴转过的角度)来实现的。影响火花塞点火时刻的因素主要有发动机转速、负荷大小、发动机冷却水温度以及发动机缸体爆震等。整个点火系统硬件电路主要由传感器及信号调理电路、AD转换器、电控单元、点火电路、电源及火花塞等部分组成。系统原理框图如图1所示。720)this.width=720;this.height=720/tempx*tempy/DIV 各传感器的输出信号经相应调理电路调理、AD转换器转换后,送入单片机。单片机依据一定的控制策略、算法对输入信号运算处理,依据运算结果,在合适时刻给出控制信号。控制信号经驱动电路后,控制点火控制电路工作,通过火花塞最终实现发动机点火。2系统硬件设计2.1传感器及其调理电路主要包括转速传感器、水温传感器、爆震传感器和节气门开度传感器及其相应调理电路。2.1.1转速传感器及其调理电路采用光电式转速传感器,其作用是测量发动机转速和曲轴转角位置。传感器输出信号经调理电路整形、放大后号送入单片机外部计数器T0(P3.4)引脚上,由单片机在一定时间内对其计数便可测量其转速和曲轴位置。2.1.2水温传感器及其调理电路采用集成温度传感器MAX6611测量发动机冷却水温度。单片机依据水温信号对点火提前角作相应调整:当水温低时增大点火提前角,而水温高时减小点火提前角。传感器输出信号经二极管双向限幅和RC滤波电路调理后接到ADC0809的信道0上。2.1.3爆震传感器及其调理电路采用安装在发动机缸体上的压电加速度传感器来测量发动机爆震信号,并依据是否发生爆震而对点火提前角作相应调整。传感器输出信号经两级滤波电路调理后接到ADC0809的信道1上。2.1.4节气门开度传感器调理电路发动机的负荷的测量是通过线性输出型模拟式节气门传感器(TPS)来实现的。传感器输出信号经双向限幅滤波调理电路后接到ADC0809的信道2上。2.2电控单元及AD转化电路设计本系统以AT89C2051单片机作为控制器。AD转化器采用ADC0809对前端输入信号进行模数转换。系统中需要进行AD转换的信号有水温信号、节气门开度信号和爆震信号。单片机与AD转换器的接口电路如图2所示。720)this.width=720;this.height=720/tempx*tempy/DIV 由ADDA,ADDB和ADDC选择转化信道,信道0输入温度信号、信道1输入爆震信号、信道2输入节气门开度信号,转化后的信号通过P1口输入到单片机内部。其中AT89C2051的P3.4(T0)对曲轴转速信号计数,确定转速和曲轴位置。通过P3.5输出点火控制信号。2.3点火控制电路设计点火电路的作用是产生火花塞点火所需的高压。其输入是来自单片机P3.5引脚的点火控制信号,输出端接到火花塞上。电路如图3所示。720)this.width=720;this.height=720/tempx*tempy/DIV 单片机的P3.5输出高电平时,T1和T2都截止,12V电压通过R4和L1对C7充电。当单片机P3.5输出低电平时(发出点火控制信号),T1,T2导通,则C7两端的电压立即变位低电平(即C7迅速放电),从而使流过L1的电流突变,L2两端产生点火高压。其中D1起保护T2的作用。2.4电源电路设计在汽车系统中一般只提供12V的直流电压,而芯片大都需要5V的电压。本系统采用集成芯片W78L05设计了12V到5V的DC-DC转换电路。3系统软件设计系统软件主要由主程序及延时子程序、计算基本点火提前角子程序、计数T0中断服务子程序、AD转化子程序、点火提前角修正子程序和点火子程序组成。本系统采用汇编语言编写了源程序。3.1主程序系统上电后,首先进行系统初始化(包括单片机的初始化,ADC0809的初始化,计数器T0的初始化),接着获取转速信号确定基本点火提前角,再进行AD转化采集水温、爆震和节气门开度信号,对采集的信号进行运算处理,最后等待点火时刻的到来并发出点火控制信号实现系统点火。3.2计算基本点火提前角子程序本系统的基本点火提前角由转速信号确定,采用查表法确定基本点火提前角。首先建立两个数据表,一为转速表v(v0,v1,v2,vi,vi+1,)和基本点火提前角表。两表中的元素个数相等,且都以升序排序。Vi对应的基本点火提前为基本点火提前角表中的第i个元素。为了减少查找的次数,设计时采用了二分法对转速表进行检索。3.3水温对点火提前角修正子程序水温对点火提前角进行双重修正,即暖机修正和过热修正。当水箱温度过低,应加大点火提前角,即进行暖机修正。当发动机水箱温度过高,应减小点火提前角,即进行过热修正。本设计中水温对点火提前角修正也采用查表法,建立2个修正表:过热修正表(升序表)和暖机修正表(降序表)。根据经验水温对点火提前角最大修正5,采用直接查找法。首先确定对点火提前角零修正的水温T,测得的水温t大于T则查找过热修正表进行过热修正,否则查找暖机修正表进行暖机修正。3.4爆震信号对点火提前角修正子程序系统对点火提前角修正是为了使发动机始终接近爆震临界状态,即处于一种“临界控制”方式,使发动机既接近爆震区又不进入爆震区,此时缸内燃烧的热效率最高。测到有爆震信号点火提前角增加2,测得无爆震信号时点火提前角减小2。设临界状态对应的爆震信号为F,当测得的爆震信号f大于F时点火提前角减2,否则点火提前角加2。另外,节气门开度对点火提前角修正子程序采用直接查表法。4结语本点火装置具有及时性高、控制精度高等优点,实现了对点火提前角的优化控制。该系统已调试成功关于单片机的一些基本概念一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有两个器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(能有多个器件同时接收)。器件的数据线也就被称为数据总线,器件所有的控制线被称为控制总线。在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址当然也是以电信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为地址总线。二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的数字,或者说都是一串0和1组成的序列。换言之,地址、指令也都是数据。指令:由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不能由单片机的开发者更改。地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元能由单片机开发者自行决定,但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的对象,在各种不一样的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。2方式字或控制字(如MOV TMOD,#3),3即是控制字。3常数(如MOV TH0,#10H)10H即定时常数。4实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗,则执行指令:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实际输出的值。理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来执行了。三、P0口、P2口和P3的第二功能使用办法 开始学习时一般对P0口、P2口和P3口的第二功能使用办法迷惑不解,认为第二功能和原功能之间要有一个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。如P3.6、P3.7分别是WR、RD信号,当微片理机外接RAM或有外部I/O口时,它们被用作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有对应的信号从P3.6或P3.7送出,不需要事先用指令说明。事实上不能作为通用I/O口使用也并不是不能而是(使用者)不会将其作为通用I/O口使用。你完全能在指令中按排一条SETB P3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么去做,因为这常常这会导致系统的崩溃(即死机)。四、程序的执行过程 单片机在通电复位后8051内的程序计数器(PC)中的值为0000,所以程序总是从0000单元开始执行,也就是说:在系统的ROM中一定要存在0000这个单元,并且在0000单元中存放的一定是一条指令。五、堆栈 堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部RAM的一部份,特殊的是它存放和取用数据的方式,即所谓的先进后出,后进先出,并且堆栈有特殊的数据传输指令,即PUSH和POP,有一个特殊的专为其服务的单元,即堆栈指针SP,每当执一次PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值的基础上)自动减1。由于SP中的值能用指令加以改变,所以只要在程序开始阶段更改了SP的值,就能把堆栈设置在规定的内存单元中,如在程序开始时,用一条MOV SP,#5FH指令,就时把堆栈设置在从内存单元60H开始的单元中。一般程序的开头总有这么一条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆栈从08H单元开始往后,而08H到1FH这个区域正是8031的第二、三、四工作寄存器区,经常要被使用,这会造成数据的浑乱。不一样作者编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问题。当设置好堆栈区后,并不意味着该区域成为一种专用内存,它还是能象普通内存区域一样使用,只是一般情况下编程者不会把它当成普通内存用了。六、单片机的开发过程 这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件,下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就被确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如EDIT、CCED等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就能写片(将程序固化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一例说明:表1ORG 0000HLJMP STARTORG 040HSTART:MOV SP,#5FH ;设堆栈LOOP:NOPLJMP LOOP ;循环END ;结束表2:03000000020040BB:0700400075815F000200431F表302 00 40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 75 81 5F 00 02 00 43表1为源程序,表2是汇编后得到的HEX文件,表3是由HEX文件转换成的目标文件,也就是最终写入EPROM的文件,它由编程器转换得到,也能由HEXBIN一类的程序转换得到。学过手工汇编者应当不难找出表3与表1的一一对应关系,值得注意的是从02 00 40后开始的一长串FF,直到75 81,这是由于伪指令:ORG 040H造成的结果。七、仿真、仿真机 仿真是单片机开发过程中非常重要的一个环节,除了一些极简单的任务,一般产品开发过程中都要进行仿真,仿真的主要目的是进行软件调试,当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。仿真有CPU仿真和ROM仿真两种,所谓CPU仿真是

温馨提示

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

评论

0/150

提交评论