自动往返电动小汽车系统设计论文_第1页
自动往返电动小汽车系统设计论文_第2页
自动往返电动小汽车系统设计论文_第3页
自动往返电动小汽车系统设计论文_第4页
自动往返电动小汽车系统设计论文_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、自动往返电动小汽车系统设计-论文自动往返电动小汽车系统设计目    录自动往返行驶小汽车的设计 (摘要) 2第一章  设计任务  4第二章  系统原理框图  7第三章  主要电路设计 12第四章  系统软件设计 15结 束 语 26参考文献 27第一章设计任务设计任务设计一个能自动往返于起跑线与终点线间的小汽车。允许用玩具汽车改装,但不能用人工遥控包括有线和无线遥控。跑道宽度,外表贴有白纸。一、任务设计并制作一个能自动往返于起跑线与终点线间的小汽车。允许用玩具汽车改装,但不能用人工遥控包括有线和无线遥控。

2、 跑道宽度,外表贴有白纸,两侧有挡板,挡板与地面垂直,其高度不低于20cm。在跑道的B、C、D、E、F、G各点处画有2cm宽的黑线,各段的长度如图1所示。 二、要求1根本要求1车辆从起跑线出发出发前,车体不得超出起跑线,到达终点线后停留10秒,然后自动返回起跑线允许倒车返回。往返一次的时间应力求最短从合上汽车电源开关开始计时。2到达终点线和返回起跑线时,停车位置离起跑线和终点线偏差应最小以车辆中心点与终点线或起跑线中心线之间距离作为偏差的测量值。3DE间为限速区,车辆往返均要求以低速通过,通过时间不得少于8秒,但不允许在限速区内停车。2发挥局部1自动记录、显示一次往返时间记录显示装置

3、要求安装在车上。2自动记录、显示行驶距离记录显示装置要求安装在车上。3其它特色与创新。三、方案设计与论证方案1:这是一种全模拟系统。利用脉冲或电容来控制系统内部的选通器。由此来实现对小汽车的速度控制,但此方案所需电路较为复杂,且对速度的控制精度也不高。其原理图如图1所示: 图1方案2:采用96系列的单片机作为主控器件,虽然片子本身具有相应的技术功能,但96系列的外围器件要求的比拟多,因此不仅相对的耗电量增大了,而且本钱也随之提高。 图2方案3:此方案使用MC-51系列中89C51做主控器件,此芯片内部具有4k的EPROM,所以程序较少的情况下,不用再外扩程序存储器,从而使其外围电路相对简单,也

4、大大降低了外围电路的耗电量,以满足小汽车供电系统的节能需求。由采集电路将光电信号转换成电信号,89C51对其进行计数以实现对小汽车的行驶速度、距离等的统计功能。由采集电路转换得到的电信号比拟微弱,无法满足CPU的识别要求,我们采用了电压比拟器对信号进行放大。原理框图如图3所示: 图3综上所述,第三种方案与前两种方案相比:电路简单、耗电量少。故我们采用了第三种方案。797自动往返电动小汽车系统设计第二章   系统原理框图系统实现框图及工作原理此设计主要分信号采集及转换、主控系统、驱动电路、稳压电源及显示五局部。该设计的原理框图如图4所示: 图4信号采集及转换l 信号

5、的采集                                                 

6、60;                          图5图6由于小汽车在行驶过程中要求传感元件有较高的灵敏度及较高的可靠性,所以我们选用了光电传感元件对信号进行采集。本设计中有四处采用光电传感元件。分别位于小车两旁、前部,汽车内部对车速及行驶距离的信号采集以及车底部对黑线条的检测。其中前三处的传感元件运用光栅将光源发出的恒定光调制成随时间变化

7、的调制光。调制光照射到光电器件上就产生一个电信号脉冲,经放大器整形后单片机利用下降沿计数。而在汽车底部的检测光电元件是利用光的反射原理,当小汽车在白色区行驶时,反射光使信号持续为高电平,而行驶到黑色区后,无反射光,信号转化成低电平,由此得到脉冲。由于采集电路得到的光电信号转化成电信号后,信号较弱,且含有直流分量的类正弦波。CPU对其不能进行检测。所以必须参加一个整形放大电路对波形进行调整。设计中我们曾采用过达林顿管、两极与非门对信号进行调整,但都达不到理想的效果。为此我们采用LM324四运放整形放大电路如图5所示:由2脚输入的基准电压,与A端的采集信号相比拟,经Z1钳位。放大电路的输入输出波形

8、如图6所示:  主控系统此图为主控系统原理图,由控制电机驱动电路,控制小车的正反转向,假设小车在行驶过程中检测到路标,从T1口中断,由程序控制电机转速。 图7图8稳压电源局部采用9V干电池为小汽车供电,当小汽车在加速或反向瞬间,电机的瞬时电流可达400-500mA,所以采用两块干电池并联的方式,以提供足够大的电流。此设计中除电机外,其它系统如显示局部、主控局部等均可用5V供电,这样会使耗电量大大减少,以到达节能的目的,所以采用了集成稳压电路对其供电。原理图如下列图7所示:驱动电路如果想驱动小汽车的电机,电流必须到达一定的值。这就要求驱动电路能为电机提供足够大的电流。在本设计中使用两个

9、三级管组成达林顿管,这种复合管电流放大系数很高,正好满足了我们对大电流的需求。其原理如图6所示。显示局部本设计显示局部采用了点阵式的液晶显示模块,与数码管相比有以下几个优点:功耗低,接线少,可显示复杂字符。  第三章   主要电路设计光电检测的设计为了检测到地上的黑线,根据小车所处的位置改变行驶状态,采用64型光电检测器采集外部信息传给IOB2作为外部中断源,遇到黑线将产生一个中断,通过对中断的计数确定小车位置,并对行驶状态做出相应的反映。764型光电检测器输出形式为晶体管集电极开路输出,接的上拉电阻。光电管的测量最大范围为,实际安装距地面为 2cm。发射管发出红

10、外线光电信号,接收管接收到反射的光信号以后输出低电平,接收管没有接收到反射的光信号时输出高电平,输出电平直接送IOB2做外部中断的信源。红外光电检测器连接电路如图2所示。具体连接请参见附带的Protel 99 SE原理图。自动往返电动小汽车系统设计主控电路的设计继电器驱动电路的设计,由于单片机I/O口提供的电流太小,不能直接驱动继电器。在这里采用8050来提供一个开关电压,实现I/O口对继电器的驱动,由于继电器的吸合只需5V电压,能够保证它的可*工作,用IN4007去掉继电器断开时线圈产生的反向电流,保护8050。如图3。 2、速度控制电路的设计本设计方案较为简单,即通过大功率电阻消

11、耗功率来实现,通过对R1、R2的选择能提供八种速度,可根据路面摩擦力大小来调节R1、R2的大小,使小车处于最正确行使状态。具体电路图如图4,其中J1、J2由IOA0控制,J3、J4由IOA1控制,J5、J6分别由IOA2和IOA3控制。 3、路程计数的设计按题要求显示全程速度,可以通过检测车轮转过的转数乘上车轮的周长来计算,霍尔元件就是一种很好的可用于车轮转数计数的元件。霍尔元件根本原理是:在普通转盘计数的仪表中加装霍尔元件和磁铁,即可构成基于磁电转换技术的传感器。霍尔元件固定安装在计数转盘附近,永磁铁安装在计数盘例如立方米位上,当转盘每转一圈,永磁铁经过霍尔元件一次即在信号端产生一

12、个计量脉冲。在普通转盘计数的仪表中加装霍尔元件和磁铁,即可构成基于磁电转换技术的传感器。本系统中霍尔元件固定安装在计数转盘附近,永磁铁安装在计数盘位上,当转盘每转一圈,永磁铁经过霍尔元件一次即在信号端产生一个计量脉冲。由于霍尔电压很微弱(mV级),需用霍尔集成电路进行处理,如图5所示。无论信号转子的哪个叶片通过空气间隙时,霍尔信号发生器都将产生一个电位由高到低的脉冲信号,直接送IOB3作外部中断源,信号转子通过霍尔元件将产生一个中断,对中断进行计数,此中断的个数即为车轮转过的转数。第四章   系统软件设计软件介绍1、此系统软件采用51汇编语言,其流程图如下页所示:2、软件实

13、现的功能如下:1通过对脉冲的计数来完成对小汽车行驶速度的控制。2对脉冲进行检测,实现对小汽车的行驶时间及距离的记录。3通过光感元件的检测自动控制小汽车的转向。测试方法与实验结果按设计要求用制作模拟跑道完成试验,试验小汽车从起点出发到达终点后停留十秒,然后自动倒车返回起跑线。通过限速区时间大于八秒。限速区内没有停车,分别将实验所得数据分列如下:1、光敏二极管灵敏度左侧最小感应距离1cm右侧最小感应距离1cm左侧最大感应距离17cm右侧最大感应距离14cm2、驱动电压及驱动电流的检测空载承载初始驱动电压约约7V初始驱动电流约200mA约400mA初始控制电压初始控制电流130mA自动往返电动小汽车

14、系统设计主程序ORG   0000H  ;程序执行起始地址LJMP  START ;跳至STARTORG   0003H  ;外中断0入口LJMP  INTEX0 ;跳至INTEX0中断效劳程序ORG   000BH  ;定时器T0中断入口RETI  ;中断返回ORG   0013H  ;外中断1入口LJMP  INTEX1 ;跳至INTEX1中断效劳程序ORG   001BH  ;定时器T1中断入口LJM

15、P  INTT1 ;跳至INTT1中断效劳程序ORG   0023H  ;串口中断入口ETI  ;中断返回ORG   002BH  ;定时器T2中断入口RETI  ;中断返回初始化程序   CLEARMEMIO:    MOV  R0, #70H   ;清70H-76H显示单元MOV  R7, #07H   ;循环次数 ML0:     MOV&#

16、160; R0, #00H   ;清0          INC  R0     ;下一地址          DJNZ R7, ML0    ;未完再循环          MOV  TMOD,#10H &#

17、160;  ;T1为16位定时器          MOV  R4,#14H    ;1秒定时用50毫秒20次          MOV  TL1,#0B0H   ;50毫秒定时用初值          MOV  TH1,#3CH 

18、;   ;          MOV   20H,#00H    ;清0操作          MOV   21H,#00H    ;          MOV   22H,#00H

19、0;   ;          MOV   23H,#00H    ;   MOV  24H,#00H   ;          CLR   30H      ;清停车标志     

20、;     SETB  ET1      ;开T1中断          SETB  EX1      ;开外中断1          SETB  IT1      ;外中断1采用边沿触发 

21、         SETB  IT0      ;外中断0优先级为1最高          SETB  EX0      ;开外中断0          SETB  EA   &#

22、160;   ;开总中断允许          SETB  TR1     ;开启定时器T1          RET         ;子程序返回START:     LCALL  CLEARMEMIO &#

23、160; ;上电初始化        SETB  P1.6     ;选择输出        CLR   P1.7     ;选择输出        SETB  P3.7     ;前进状态   &#

24、160;    CLR   P3.6     ;前进状态        CLR   P1.0     ;电机供电开始MAIN:   LCALL  DISP     ;LED显示一次        LJMP MAIN  &

25、#160;  ;转MAIN循环        NOP         ;PC值出错处理        NOP     LJMP  START    ;重新初始化INTEX0:    PUSH  ACC    

26、;堆栈保护       PUSH  PSW     ;       CLR   EX0     ;关中断       LCALL  DISP     ;LED显示一次延时抗干扰为1退出干扰      

27、 INC   23H     ;跑道计数器加1       MOV   A,23H     ;数据入A       CJNE  A,#06H,JUDGE1   ;不是第6道转JUDGE1       LCALL  STOP   &

28、#160; ;是第6道,停车       LJMP  IN0RET     ;转中断退出JUDGE1:    CJNE  A,#03H,JUDGE2   ;不是第3道转JUDGE2       LCALL  STOPSLOW    ;是第3道,变慢车       LJM

29、P  IN0RET     ;转中断退出JUDGE2:    CJNE  A,#04H,JUDGE3   ;不是第4道转JUDGE3       LCALL  FAST     ;是第4道,变快车       LJMP  IN0RET     ;转中断退出JUDGE3:

30、    CJNE  A,#05H,IN0RET   ;不是第5道转INORET退出       LCALL  STOPSLOW    ;是第5道,变慢车IN0RET:    CLR   IE0     ;清外中断0中断标志       POP   PSW &#

31、160;   ;恢复现场       POP   ACC     ;       LCALL  DL7MS     ;延时7毫秒抗干扰       SETB  EX0     ;开外中断0    &#

32、160;  RETI       ;中断返回STOPSLOW:   CLR   P1.6     ;关电源        CPL   P3.6     ;反向驱动刹车        CPL   P3.7  &#

33、160;  ;反向驱动        LCALL  DS50MS    ;刹车时间可根据试车情况调整        LCALL  DS50MS    ;        LCALL  DS50MS    ;    

34、0;   CPL   P3.6     ;正向驱动        CPL   P3.7     ;正向驱动        SETB  P1.7     ;开电源        RET 

35、60;    ;返回FAST:     CLR   P1.7     ; 关电源        SETB  P1.6     ; 开电源        RET       ;返回STOP:  

36、0;  MOV  23H,#00H    ;跑道计数单元清0       CPL   P3.6     ;反向驱动刹车       CPL   P3.7     ;反向驱动刹车       LCALL  DS50MS  

37、   ;刹车时间       LCALL  DS50MS     ;刹车时间可调整       SETB  P1.0     ;关电机电源       SETB  PT1       ;定时器T1为高优先级  

38、     LCALL  DS10S     ;停车10秒自动往返电动小汽车系统设计  CLR   PT1     ;恢复T1为低优先级       SETB  P1.6     ;开电源高速       CLR   P1.7  &

39、#160;  ;关       CLR   P1.0     ;电机电源开       CPL   30H     ;停车点位置判断标志取反       JB   30H,STREN    ;为1中途停车转STREN  

40、     LCALL  CLR00     ;是终点,调复0程序 STREN:    RET      ;返回CLR00:      MOV  70H,#00H     ;计时单元清0         MOV  71H,#00H&

41、#160;    ;计时单元清0         MOV  72H,#00H     ;计时单元清0         MOV  73H,#00H     ;计时单元清0         RET   &

42、#160;    ;返回;*  外中断1程序,里程计数用    *;*  20H、21H、22H、24H作计数器   *INTEX1:     PUSH  ACC       ;堆栈保护         PUSH  PSW       ;&

43、#160;        CLR  EX1       ;关外中断1         INC  20H       ;圈加1 LLLL:     MOV  A,20H     ;判断是否满6圈 

44、60;       CJNE  A,#06H,LLL    ;不满6圈转LLL退出         MOV  20H,#00H     ;满6圈清0进位6圈为1米         INC  21H       ;上位加1

45、         MOV  A,21H     ;判断是否满10         CJNE  A,#0AH,LLL    ;不满10转LLL         MOV  21H,#00H     ; 满10清0进1位

46、60;        INC  22H       ; 高位加1         MOV  A,22H     ; 判断是否满10         CJNE  A,#0AH,LLL    ; 不满10转LLL&

47、#160;        MOV  22H,#00H     ; 满10清0进1位         INC  24H      ; 高位加1         MOV  A,24H     ; 判断是否满10&#

48、160;        CJNE  A,#0AH,LLL    ; 不满10转LLL         MOV  24H,#00H     ; 满10清0LLL:       MOV  74H,21H     ; 将里程数移入显示单元个位 &

49、#160;       MOV  75H,22H     ; 将里程数移入显示单元十位         MOV  76H,24H     ; 将里程数移入显示单元百位IN1RET:     POP  PSW      ;恢复堆栈  

50、0;      POP  ACC     ;         SETB  EX1      ;开外中断1         RETI      ;中断返回INTT1:     

51、60; PUSH  ACC     ;堆栈保护          PUSH  PSW     ;          MOV TL1,#0B0H   ;赋50毫秒定时初值          MOV TH1,#3C

52、H    ;          DEC R4     ;减1          MOV A,R4     ;          JNZ RETT0    ;不为0转RETT0 &#

53、160;        MOV R4,#14H    ;为01秒到重赋初值          MOV R0,#71H    ;地址指向71H          ACALL ADD1     ;加1秒操作    

54、      MOV A,R3     ;          CLR C     ;          CJNE A,#60H,CC   ;是否为60秒?CC:   JC RETT0    ;小于60转RETT0 

55、;         ACALL CLR0    ;大于或等于60清0          MOV R0,#73H    ;指向分计时地址单元          ACALL ADD1     ;分加1   

56、0;      MOV A,R3     ;          CLR C     ;          CJNE A,#60H,CCC   ;是否为60分?CCC:   JC   RETT0   &

57、#160; ;小于60转RETT0          ACALL CLR0     ;大于或等于60分计时单元清0 RETT0:   POP  PSW     ;恢复堆栈          POP  ACC     ;  

58、0;       RETI      ;中断返回 ADD1:   MOV A,R0     ;取计数值          DEC R0      ;指向低一个地址          SWAP

59、 A      ;计数值上下四位交换          ORL  A,R0     ;相或组合成一个数据          ADD  A,#01H     ;加1         

60、 DA  A      ;十进制调整          MOV  R3,A     ;暂存R3内          ANL  A,#0FH     ;高四位变0        &#

61、160; MOV R0,A     ;放回低地址          MOV A,R3     ;取回R3内数据          INC R0      ;地址加1          SWAP A&#

62、160;     ;上下四位交换          ANL  A,#0FH     ;高四位为0          MOV R0,A     ;放回原地址          RET 

63、0;     ;返回CLR0:   CLR A      ;清A          MOV  R0,A     ;对应地址单元清0          DEC R0      ;指向低一地址  

64、;        MOV R0,A     ;清0          RET       ;返回DISP:   MOV R1,#70H     ;显示数据首址          MOV R5,#0FEH     ;扫描字PLAY:   MOV A,R5      ;扫描字入A          MOV P2,A 

温馨提示

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

评论

0/150

提交评论