单片机89c52自动往返电动小汽车(电路+程序)
- 格式:doc
- 大小:482.00 KB
- 文档页数:23
基于单片机的自动往返小车毕业设计基于单片机的自动往返小车摘要:本设计以一片单片机STC89C52作为核心来控制自动往返小车,其中控制芯片L298N和单片机联合控制小车的前进与后退。
路面的黑带检测使用反射式红外传感器,并通过STC89C52对输入的信号进行处理;行驶距离使用霍尔元件进行检测。
最后以动态显示的形式通过一个LCD液晶显示即时黑带个数,运行时间,实时路程等。
关键词:微控制器 L298N电机控制霍尔检测液晶显示The Automatic round-trip car based on SCMAbstract:This design use a microcontroller STC89C52 as the core to control the automatic round-trip car, the control chip L298N and single chip microcomputer to control the car forward and backward together. The reflective infrared sensor detection the black belt on the road surface, then deal with input signal processing through the STC89C52. Using the hall element to test the distance. At last displaying instant black belt, running time, real-time distance, etc through a number of LCD liquid crystal in the form of dynamic displayKeywords:MCU L298N Motor control Hall detection LED display目录摘要 (I)关键字 (I)Abstract (I)Keywords (I)0绪论 (2)1.1 设计任务 (3)1.2方案介绍 (4)2.1 系统元器件的选择与介绍 (5)2.1.1 STC89C52R芯片 (5)2.1.2 L298N芯片 (11)2.1.3霍耳传感器(HD3020) (14)2.1.4液晶LCD (15)2.2电路模块的设计 (18)2.2.1检测系统 (18)2.2.2距离计算系统 (19)2.2.3显示系统 (20)2.2.4电机驱动以及正反转控制模块 (20)3.1主程序 (21)3.2中断程序 (22)3.2.1外部中断0 (22)3.2.2外部中断1 (23)3.2.3定时器中断0 (24)3.2.4定时器中断1 (24)4总结 (21)致谢 (21)参考文献 (21)附录 (21)0绪论当今社会,随着科技发展的日新月异,特别是计算机技术突飞猛进的发展,计算机技术带来了科研和生产的许多重大飞跃,同时计算机也越来越广泛的被应用到人们的生活、工作领域的各个方面。
基于STC89C52单片机智能小车设计一、本文概述随着科技的飞速发展,智能化、自动化已经成为现代社会发展的重要趋势。
在这一背景下,智能小车作为一种集成了控制、传感器、通信等多种技术的智能移动平台,受到了广泛的关注和研究。
本文将以STC89C52单片机为核心,探讨智能小车的设计方案,包括硬件电路的设计、控制算法的实现以及实际应用的展望。
STC89C52单片机作为一款常用的8位微控制器,具有高性价比、稳定可靠、易于编程等优点,在智能小车的设计中发挥着关键的作用。
通过合理的硬件电路设计,可以实现小车的运动控制、传感器数据采集、无线通信等功能。
同时,结合相应的控制算法,可以使小车具备自主导航、避障、路径规划等智能行为。
本文将从硬件和软件两个方面详细介绍智能小车的设计过程。
硬件方面,将重点介绍STC89C52单片机的选型、外围电路的设计以及传感器的选型与连接。
软件方面,将详细介绍小车的控制算法,包括运动控制算法、传感器数据处理算法以及无线通信协议的实现。
本文还将对智能小车的实际应用进行展望,探讨其在智能家居、工业自动化、教育娱乐等领域的应用前景。
通过本文的阐述,旨在为读者提供一个基于STC89C52单片机的智能小车设计思路和方法,为其后续的研究和开发提供参考和借鉴。
二、智能小车硬件设计智能小车的硬件设计是整个项目的基础,其设计的好坏直接影响到小车的性能和稳定性。
在本设计中,我们选择了STC89C52单片机作为小车的核心控制器,它是一款高性能、低功耗的8位CMOS微控制器,具有强大的数据处理能力和丰富的外设接口,非常适合用于智能小车的控制。
电源模块:为了提供稳定的工作电压,我们选择了LM7805三端稳压芯片来构建小车的电源模块,该芯片可以将输入的不稳定电压稳定输出为5V,为单片机和其他模块提供稳定的电源。
电机驱动模块:小车的运动需要靠电机来驱动,我们选择了两款直流电机,通过电机驱动板(如L298N)来控制电机的正反转和转速,从而控制小车的行驶方向和速度。
程序:#include <reg52.h>unsigned char timer1,you,zuo; unsigned intAdianji=55,Bdianji=60,q=1,w=1; sbit ENA=P0^0;sbit IN1=P0^1;sbit IN2=P0^2;sbit ENB=P0^3;sbit IN3=P0^4;sbit IN4=P0^5;sbit zuo1=P3^2;sbit zuo2=P2^1;sbit you2=P2^2;sbit you1=P3^3;void system_Ini(){TMOD|= 0x11;TH1 = 0xfe;TL1 = 0x33;TR1 = 1;IT0=1;IT1=1;IE =0x8f;}void zuojishu() interrupt 0{EX0=0;zuo++;EX0=1;}void youjishu() interrupt 2{EX1=0;you++;EX1=1;}void delay(unsigned int z)//延时函数{unsigned int x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}main(){unsigned int z;delay(3000);system_Ini();while(1){while(zuo2||you2){if(q){q=0;EX0=1;EX1=1;delay(60);you=0;zuo=0;}if(!zuo2){IN3=0;IN4=0;}else if(!you2){IN1=0;IN2=0;}else{IN1=0;IN2=1;IN3=0;IN4=1;}if(you==1&&zuo==1&&w){Adianji=35;Bdianji=40;}if(you==2&&zuo==2&&w){Adianji=75;Bdianji=80;}if(you==3&&zuo==3&&w){Adianji=55;Bdianji=60;w=0;}while(you==0&&zuo==1&&!w&&z) {if(you2){IN3=0;IN4=0;}else if(!zuo){IN1=0;IN2=0;}else{IN1=0;IN2=1;IN3=0;IN4=1;}z--;}while(you==1&&zuo==1&&!w&&z<5000) {if(you2){IN3=0;IN4=0;}else if(!zuo){IN1=0;IN2=0;}else{IN1=0;IN2=1;IN3=0;IN4=1;}z++;}if(you==2&&zuo==2&&!w){zuo=0;you=0;w=1;}}while(!zuo2&&!you2){EX0=0;EX1=0;if(zuo1){IN1=0;IN2=0;}else if(you1){IN3=0;IN4=0;}else{IN1=0;IN2=1;IN3=0;IN4=1;}w=0;z=100;if(!q){q=1;EX0=0;EX1=0;}}}}/*********************************/ [ t1 (0.5ms)中断] 中断中做PWM 输出------------1000/(0.02ms*250)=200Hz***********************************/ void T1zd(void) interrupt 3 //3 为定时器1的中断号 1 定时器0的中断号0 外部中断1 2 外部中断2 4 串口中断{TH1 = 0xfe; //11.0592TL1 = 0x33;timer1++;if(timer1>100) timer1=0;if(timer1<Adianji)ENA=0;elseENA=1;if(timer1<Bdianji)ENB=0;elseENB=1;}。
89c52的单片机自动往返电动小汽车设计报告范文-图文1.设计任务:设计并制作了一个自动往返小汽车,其行驶路线满足所需的要求。
1.1要求:1.1.1基本要求:(1)分区控制:如(图1)所示:(图1)车辆从起跑线出发(出发前,车体不得超出起跑线)。
在第一个路程C~D区(3~6米)以低速行驶,通过时间不低于10;第二个路程D~E区(2米)以高速行驶,通过时间不得多于4秒;第三个路程E~F区(3~6米)以低速行驶,通过时间不低于8。
1.1.2.发挥部分(1)自动记录、显示一次往返时间(记录显示装置要求安装在车上)。
(2)自动记录、显示行驶距离(记录显示装置要求安装在车上)。
(3)其它特色与创新。
2.方案设计:根据设计任务要求,并且根据我们自己的需要而附加的功能,该电路的总体框图可分为几个基本的模块,框图如(图2)所示:555定时器控速模块路面检测测速模块AT89S51LCD显示模块(图2)2.1路面检测模块:路面黑线检测模块采用反射式红外发射--接收器,在车底的前部和中部安装了两个反射式红外传感器.2.2LCD显示模块:采用1602LCD,由单片机的总线模式连接。
为节约电源电量并且不影响LCD的功能,LCD的背光用单片机进行控制,使LCD的背光在小车行驶的过程中不亮,因为我们不必看其显示;在其它我们需要看显示的内容的时候LCD背光亮。
2.3测速模块:采用采用霍尔开关元器件A44E检测轮子上的小磁铁从而给单片机中断脉冲,达到测量速度的作用。
霍尔元件具有体积小,频率响应宽度大,动态特性好,对外围电路要求2简单,使用寿命长,价格低廉等特点,电源要求不高,安装也较为方便。
霍尔开关只对一定强度的磁场起作用,抗干扰能力强,因此可以在车轮上安装小磁铁,而将霍尔器件安装在固定轴上,通过对脉冲的计数进行车速测量。
其原理图接线如(图3)所示:(图3)2.4控速模块:采用由双极性管组成的H桥电路。
用单片机控制晶体管使之工作在占空比可调的开关状态,精确调整电机转速。
基于单片机STC89C52控制的智能小车摘要:该毕业设计是采用无线遥控基于单片机的功能实现的,当无线遥控器的某个按键按下时,无线发射器将按键信号以编码的形式在315MHz的频率上发射出去,无线接收器接收并放大发射信号同时解调出TTL电平信号送至单片机进行处理,单片机通过比较和识别接收来的无线遥控编码便可执行相应的遥控功能,从而实现智能小车的前进、后退、左转和右转的基本功能和伴随音乐演奏而闪烁的LED的开启与关闭的功能。
此外,我加入了温度传感器与时钟芯片,让它们在液晶显示器上显示其室温和时间,并用按钮进行时间的调控。
由于无线遥控模块是四路单向锁存模块,只能单线实现四个功能,所以发射模块的控制按键不够,根据需要,我仅仅用无线模块控制小车的前进和后退,停止,其它的采用按键调试,用按键来实现小车的前进/后退/左转/右转/音乐/时间调控等功能。
关键词:无线模块;液晶显示模块;电机驱动模块;音乐;智能小车目录引言................................................................3 1 整体方案设计....................................................4 1.1 整体方案设计的思路..............................................41.2 整体方案的流程图................................................42 避障遥控小车系统概况............................................4 2.1 SC2272无线遥控模块原理..........................................4 2.2 驱动原理的简介..................................................62.3 直流电机简介....................................................93 模块方案比较与论证.............................................12 3.1 车体设计.......................................................12 3.2 电机模块的选择.................................................12 3.3 电机驱动模块的选择.............................................123.4 控制器模块的选择...............................................134 系统硬件电路设计...............................................14 4.1 无线模块的设计.................................................144.2 直流电机的驱动模块.............................................155 软件的简单介绍.................................................16 5.1 KEIL的简介....................................................165.2 PROTUES的简介.................................................165.3 STC_ISP_V480的简介.............................................17 参考文献..........................................................18 附录一:实物图....................................................19 附录三:总程序.....................................................22引言随科学技术的进步,智能化和自动化技术越来越普及,也广泛应用于机器人玩具制造领域,使智能机器人越来越多样化。
四川信息职业技术学院毕业设计说明书设计题目:基于89C52单片机的WIFI智能小车设计专业: 应用电子技术班级: 应电10-1学号:姓名:指导教师:二〇一二年十二月三日目录摘要 (1)第1章论述 (2)第2章方案论证及选择 (4)2.1总体设计方案 (4)2.1.1整机系统 (4)2.1.2整机工作原理 (5)2.2系统方案的选择与比较 (5)第3章硬件电路设计 (6)3.1DB120-WG无线路由器 (6)3.1.1刷机固件介绍 (6)3.1.2刷机步骤 (7)3.2单片机最小系统设计 (9)3.2.1 主控制芯片89C52 (9)3.2.2 STC89C52RC单片机最小系统 (11)3.2.3 89C52单片机的使用 (13)3.3电机驱动电路 (14)3.3.1电机驱动模块使用 (14)3.3.2驱动原理及电路图 (15)3.3.3驱动模块原理及电路原理图 (15)3.4摄像头介绍 (16)3.4.1摄像头简介 (16)3.4.2摄像头的分类 (17)3.4.3摄像头的工作原理 (17)3.4.4摄像头的主要结构和组件 (17)3.5舵机 (18)3.5.1舵机的控制 (18)3.5.2舵机的作用 (19)3.6电源模块 (19)3.6.1 LM78系列集成稳压芯片介绍 (19)3.6.2稳压电路 (20)3.7路由器及驱动模块供电模块LM2596 (20)3.7.1 LM2596系列开关稳压集成电路的主要特性 (21)3.7.2 LM2596构成的可调压电源模块 (21)3.8灯光、蜂鸣器及电平转换电路设计 (23)第4章系统程序设计 (24)4.1系统程序简介 (24)4.2程序流程图 (24)4.2.1主程序流程图 (24)4.2.2串口中断子函数流程图 (25)4.2.3定时器2中断子函数流程图 (25)4.2.4避障子函数流程图 (26)4.2.5寻迹函数流程图 (26)第5章制作与调试 (29)5.1系统仿真 (29)5.1.1 常用软件介绍 (29)5.1.2 仿真测试 (30)5.2实物调试 (31)结论 (32)参考文献 (33)附录1 系统设计原理图 (34)附录2 元器件明细表 (35)附录3 源程序 (36)摘要WIFI智能小车由电机、小车车体、89C52控制芯片、WIFI收发模块、电机驱动、舵机、电源、摄像头等主要部件以及灯光、蜂鸣器、电平转换等辅助模块构成。
10.3969/j.issn.1000-0755.2013.11.0141 控制系统总体方案1.1 设计要求 (1)电动小车能在无线遥控器的控制下前进、转向、倒退,遥控距离不少于5m 。
(2)电动小车能在无线遥控器的控制下从指定的A 点到达指定的B 点,要求电动小车达到B 点的时间尽量短,在B 点的定位误差不大于10%。
(3)手持无线遥控器能在120cm ×120cm 的范围内,实时显示电动小车位置的X 、Y 坐标值(坐标原点可自定义),即电动小车能将其位置的坐标值实时传送至手持无线遥控器。
要求定位误差不大于10%,显示刷新时间不大于0.5s 。
1.2 控制系统总体框图本设计要求能够实现电动小车在手持无线遥控器的控制下前进、转向、倒退等功能,而且能够将其位置的坐标值实时传送至手持无线遥控器。
考虑这些要求,我们决定用步进电机和单片机等组成核心电路[1-6]。
系统总框图如图1所示。
图1 控制系统总框图 (参见右栏)2 硬件电路设计基于89C52单片机的遥控电动小车控制系统设计刘 星(山东水利职业学院,山东 日照)摘 要:遥控电动小车系统以89C52单片机为核心控制器,包含了主控制器模块、电机驱动模块、液晶显示模块、键盘模块、测距模块、蓝牙通信模块、电源模块等。
进而设计制作出一台具有自动运行的智能小车控制系统。
本系统以两个步进电机作为驱动,通过各类传感器件来采集各类信息,通过2.4GHz 蓝牙通信模块实现小车在手持无线遥控器的控制下前进、转向、倒退、小车精确转弯、自动定位等功能。
智能小车系统具有很高的灵敏度和精确度,操控简单、便捷。
关键词:89C52单片机;电动小车;电机驱动;蓝牙通信The Design of Remote Control Electric Car Control System Based on Bluetooth and 89C52 MCULiu Xing(Shandong Water Conservancy V ocational College, Rizhao, Shandong)Abstract: The remote control electric car system with 89C52 as the core controller, consists of main controller module, motor drive module, LCD module, keyboard module, ranging module, Bluetooth communication module, power module, etc. On this basis, an intelligent car control system is designed. This system adopts two stepper motors as the drive, uses various kinds of sensor to collect all kinds of information, and utilizes the 2.4 GHz Bluetooth communication module to achieve the forwarding, back-warding, returning, automatically turning and positioning of the car under the control of handhold wireless remote controller. The intelligent car system has high sensitivity and accuracy, and its manipulation is simple and convenient.Key words :89C52; electric car; motor drive; Bluetooth communication图1 控制系统总框图2.1 单片机最小系统的实现单片最小系统由复位电路、电源和时钟电路等组成。
SCM Technology •单片机技术Electronic Technology & Software Engineering 电子技术与软件工程• 235【关键词】89C52单片机 遥控 电动小车 控制系统 设计1 控制系统方案首先从遥控电动小车控制系统的设计上来看,是基于无线遥控器可实现各个方向的运动,小车距离遥控器的距离需要保持在五米范围内。
在无线遥控器的操作下小车可由a 点达到b 点,要求尽量缩短小车到达目的地的时间,且误差需要控制在10%。
用户手持遥控器可以在一定范围内显示小车的坐标,并将小车目前所处的坐标位置传输到无线遥控器中,要求需要将定位误差控制在10%的范围内,同时其刷新间隔时间为0.5秒。
根据设计要求为能够使小车基于无线遥控器下实现多个方向运动的功能,并将坐标实时传输到无线遥控器中,可采用单片机和步进电机构成的电路图,完成控制系统的设计。
2 控制系统的硬件设计单片机最小系统。
该系统是由电源,时钟电路,复位电路共同构成的,其中复位电路包括自动上电复位以及手动复位情况,而按键复位包括脉冲和电平两种方式,其中按键电平是通过复位端经过与电源电阻联通实现的。
按键脉冲复位利用微分电路产生的脉冲来实现功能,自动上电复位是在对计算机加电过程中,在RST 中出现高于两个周期的正脉冲。
步进电机的驱动电路。
在整个遥控电动小车控制系统中步进电机是将电脉冲转为角位移的执行系统,当驱动器接收到信号之后,能够驱动电机按照预计方向转动一定角度,其旋转是以固定角度慢慢运行实现的,通过对脉冲个数的控制以用于角位移量的有效控制,进而达到准确定位。
在小车控制系统中所采用的步进电机型号为L298n ,其内部包括通道逻辑电基于89C52单片机的遥控电动小车控制系统设计文/曾晓敏路,该电路是四相二相电机的驱动器,又包含了两个h 桥,高电压,大电流驱动器能够接收电平信号,驱动2A ,46V 电机。
蓝牙无线通信。
基于89C52单片机的智能循迹测速避障小车为了参加我校举办的电子科技竞赛,刚刚开始学习单片机的我们,经过讨论,决定做一辆智能循迹测速小车,综合我们搜集的材料以与自己的修改,我们做出了我们的作品。
以下是我们整理的材料:一、原理图1、最小系统我们采用的是89C52单片机来做小车的最小系统,针对自己的需要只把要用到的排针口接了上去,具体电路图如下:2、电机驱动我们采用L293D作为驱动芯片,L293D是一种直流电机控制器件,具有外围电路简单,易于集成、控制等特点,电路图如下:其中我们用TLP521-4光耦器作为电机的稳定,即稳定的是电机的电压,避免电机的电流过大烧坏单片机,起到保护单片机的作用,增加安全性,减少电路干扰,简化电路设计。
其电路图如下:3、测速电路我们采用RPR220反射式光电传感器作为测速器,反射式红外光电传感器模块是一种利用反射式红外光电传感器制成的在传感器的有效检测距离围对被测物体的存在性进行检测的电路装置,由红外光发射接收器、电压变化检测电路、检测灵敏度调节电位器、检测状态指示 LED 灯等四个主要部分组成,额定工作电压 DC3.3V 或 DC5.5V(兼容支持 DC3V~DC5.5V,而无需额外的硬件配置),DC5V 工作电压条件下,约为 60mA,最大不超过 80 mA。
具体电路图如下:4、探测器我们仍采用RPR220反射式光电传感器作为探测器,基于它受被测物体的红外反射特性影响很大,亦能通过检测灵敏度调节电位器进行调节,我们用它来探测黑线(即路线),实现循迹功能。
事实证明它的灵敏度是很高的,具体电路如下:相应的放大电路我们采用LM339芯片作为放大器,LM339芯片通常用作电压比较器,该电压比较器的特点是:1)失调电压小,典型值为2mV;2)电源电压围宽,单电源为2-36V,双电源电压为±1V-±18V;3)对比较信号源的阻限制较宽;4)共模围很大,为0~(Ucc-1.5V)Vo;5)差动输入电压围较大,大到可以等于电源电压;6)输出端电位可灵活方便地选用。
摘要本设计是自动往返电动小汽车,采用AT89S51单片机来控制小汽车的前进、后退和限速,该芯片通过数码管还可以显示往返的时间和经过黑线的次数,也可以显示行驶的路程,利用传感器来检测是否到达限速区,在用单片机的pwm来调速,该设计不需要无线和有线遥控的控制,全部通过软件控制,自动往返小汽车是未来发展的趋势,环保又安全,满足社会的发展。
关键字:AT89S51;PWM;软件控制;传感器ABSTRACTThis design is:Automatically go back and forth a dynamoelectric small autocar, the adoption AT89 S51 unipole slab machine to control precession, countermarch and limit of small autocar soon, the chip approval figures tube can also display to go back and forth of the number of times in time and process black wire . May also demonstrate that the travel the distance, using the sensor examines whether to arrive at the regulating area, is using monolithic integrated circuit's pwm to modulate velocity, this design does not need wireless and the wired remote control control, through the software control, travels between the compact car is automatically completely the tendency which the future will develop, the environmental protection is also safe, satisfies social the development.Key Words:AT89S51;PWM;The software controls;Spread a feeling machine目录1系统方案的选择与论证 (7)1.1单片机的选择: (7)1.2显示器选择: (7)1.3电机制动 (7)1.4地面黑线检测模块 (8)2系统原理框图 (9)2.1显示模块 (9)2.2电机调速 (10)2.3电机驱动 (10)2.4跑道标志检测 (10)3软件流程 (11)3.1主程序流程 (11)3.2计时子程序流 (12)3.3路程速度检测子程序 (13)4总结 (14)5元件清单 (15)6参考文献 (16)附录一 (17)自动往返电动小汽车一、任务设计并制作一个能自动往返于起跑线与终点线间的小汽车。
允许用玩具汽车改装,但不能用人工遥控(包括有线和无线遥控)。
跑道宽度0.5m,表面贴有白纸,两侧有挡板,挡板与地面垂直,其高度不低于20cm。
在跑道的B、C、D、E、F、G各点处画有2cm宽的黑线,各段的长度如图1。
二、要求1.基本要求(1)车辆从起跑线出发(出发前,车体不得超出起跑线),到达终点线后停留10秒,然后自动返回起跑线(允许倒车返回)。
往返一次的时间应力求最短(从合上汽车电源开关开始计时)。
(2)到达终点线和返回起跑线时,停车位置离起跑线和终点线偏差应最小(以车辆中心点与终点线或起跑线中心线之间距离作为偏差的测量值)。
(3)D~E间为限速区,车辆往返均要求以低速通过,通过时间不得少于8秒,但不允许在限速区内停车。
2.发挥部分(1)自动记录、显示一次往返时间(记录显示装置要求安装在车上)。
(2)自动记录、显示行驶距离(记录显示装置要求安装在车上)。
(3)其它特色与创新。
三、评分标准四、说明(1)不允许在跑道内外区域另外设置任何标志或检测装置。
(2)车辆(含在车体上附加的任何装置)外围尺寸的限制:长度≤35 cm,宽度≤15cm。
(3)必须在车身顶部明显标出车辆中心点位置,即横向与纵向两条中心线的交点。
1系统方案的选择与论证1.1单片机的选择:【方案一】选择AT89S51单片机该芯片I/O口多,能够达到控制电动小汽车前进、后退和调速的要求,价格相对便宜,在此非常合适,又不浪费其它资源。
【方案二】选择A VR单片机该芯片是ATMEL公司研制开发的一种新型单片机,运行速度快,内部资源丰富,驱动能力强,具备多种独立的时钟分频器,在这应用显得有点浪费资源。
【方案三】选择STC12C5404AD单片机STC12C5410AD 系列及STC12C2052AD 系列单片机是宏晶科技生产的单时/ 机器周期(1T)的单片机,是高速/ 低功耗/ 超强抗干扰的新一代8051 单片机,指令代码完全兼容传统8051,但速度快8-12 倍,内部集成MAX810 专用复位电路。
4 路PWM,8 路高速10 位A/D 转换,针对电机控制,强干扰场合。
在此设计中我们不需要AD转换,用此芯片就有点浪费资源咯。
经过方案之间的比较,本次设计采用方案一。
1.2显示器选择:【方案一】选择数码管数码管显示方便,价格便宜,非常常见,但占用的I/O口太多,还要借助74s373有点不合算。
【方案二】选择液晶显示屏液晶显示屏是现在发展的趋势,显示方便,更方便人机交流,但价格比较贵,而本设计只需显示时间和计数值,没有必要用液晶显示屏,有点大材小用。
考虑到情况和题目要求,本设计采用方案一。
1.3电机制动【方案一】能耗制动在小车到达终点时,通过单片机控制继电器,从而将电阻接入,电机转速下降至零,实现停车。
此方案实现电路复杂。
【方案二】反转制动在小车将到达终点时,在电机两端加一负电压,从而电机可快速停转。
但此方案很难把握何时加这一负电压,比较难控制,而且,控制电路须再加一组,比较复杂。
【方案三】直接将电压降为零来制动在小车到达终点时,单片机输出控制信号,将电机驱动电路隔断,这样电机端电压为零,小车减速至零。
通过车速及路程检测模块检测到的路程超调量,控制电机反转时间与速度,如此调节,最终将小车停靠在终点线。
相比之下,方案三简单易行,易于控制,故采用此方案1.4地面黑线检测模块利用光线照到地面发生反射,由于不同颜色反射系数不同来检测。
由于白纸反射能力强,而黑线反射很弱,通过传感器接受到不同的光信号,从而输出不同的电平,这样就可以检测出地面上的黑线。
【方案一】由可见光发光二极管(如红色、绿色或黄色等)发射可见光,光敏二极管或光敏三极管作为接收器件。
发光二极管反射可见光经地面反射到光敏二极管或三极管,光敏二(三)极管因反射的光强不同而呈现不同的电阻值,这样,在经过黑线时即可检测出。
此方案简单,但易受外界光源的干扰,容易出错,检测不出黑线。
【方案二】脉冲调制式发射接收装置采用脉冲发射与接收装置可以提高瞬时输出光强,提高抗干扰能力,还能节损能量。
此方案最大的一个缺点是不易控制脉冲发射时间间隔,而黑线只有2cm 宽,容易跳过黑线而传感器检测不出来。
这样就容易出错。
【方案三】采用调制的光敏电阻和发光管与比较器装置这样可以提高抗干扰能力,还能灵敏的检测到地面上的黑线,还能区别地面上的脏迹。
经权衡,本设计采用方案三。
2系统原理框图2-1系统原理框图2.1显示模块显示电动小汽车运行的时间和路程,反应出小汽车的速度与经过黑线的数量。
2.2电机调速单片机通过改变PWN来改变电机的转速,从而可以看出车子在限速区,还是在高速区,电机调速可以改变往返的时间,反应车子性能的好坏,更可以满足往返一次时间最短的要求。
2.3电机驱动就是给电机一个电源,让电动机转起来,电机驱动可以通过单片机来控制,让单片机输出一个高电平就可驱动电机,电机调速也可以来驱运电机。
2.4跑道标志检测通过传感器来检测,给单片机一电平,让单片机处理。
3软件流程3.1主程序流程分为三个子程序:计时,路程以及速度检测计算,黑线检测计数。
均采用单片机内部中断完成。
同时,运用单片机中的外部中断来检测路面上的黑线以及计数车轮转过的圈数。
流程图如图3-1:图3-1主程序流程图3.2计时子程序流3.3路程速度检测子程序图3-3路程速度检测子程序4总结本次课题是自动往返小汽车设计,主要通过AT89S51单片机来控制小汽车的前进、后退与调速。
通过传感器来检测黑线,来判断是在加速区还是在限速区,在给单片机一个信号,单片机通过高低电平来驱动电机,单片机通过PWM来改变电机的转速,从而达到改变速度的效果,单片机还可以通过数码管来显示自动往返的时间,还可以通过数码管来显示行驶的路程和经过黑线的数量,经过多次的调试,本次课题满足题目设计的基本要求,本车最大的特点:不要有线或无线的遥控来控制的返回,只要给电动小汽车提供电源,其他的功能全部可以通过单片机来实现,这样免去了原来玩具有线和无线控制的弊端,是现在玩具车发展的趋势,也可以用来发展公交车,可以替代有人驾驶,这样更加安全。
这样自动往返的小汽车是未来汽车发展的趋势。
这车环保又安全,满足和响应了社会的发展需求。
5元件清单6参考文献[1] 全国大学生电子设计竞赛组委会.第五届全国大学生电子设计竞赛获奖作品选编[S]. 北京:北京理工大学出版社,2003.[2] 张彦斌等.凌阳十六位单片机原理及应用[M]. 北京:北京航天航空大学出版社,2003.[3] 马志源.电力拖动系统[M].华中科技大学电力拖动讲义,2003.[4] 周予为等.检测技术[M]. 华中科技大学检测技术讲义,2003[5] 陈坚.电力电子学[M].北京:高等教育出版社,2002.[6]谢自美.电子线路设计·实验·测试(第二版)[M].武汉:华中理工出版社,2000.附录一主程序#include"reg51.h"#include "intrins.h"#define uint unsigned int#define uchar unsigned charucharled[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x3e,0x77,0x40,0x00,0x 38};//10_V,A,-,熄灭,Lchar fen=0,miao=0;///////////////sbit run1=P1^3;sbit run2=P1^4;sbit run3=P1^5;sbit run4=P1^6;///////////sbit cgq_a=P1^2;sbit en1=P1^1;sbit en2=P1^0;bit f1=1;uchar d[8],k_sum=0,cgq_num=1,pwm_count=0;uint t0_count=0,pwm1,pwm2,pwm3,pwm4;bit stop_time=1,stop_car=1;void delay(uint i); //延时1MS/////////////////////////////////////////////////////////////////////////void delay(uint i)//延时函数{uint a,b;for(a=0;a<i;a++)for(b=0;b<120;b++);}void t1() interrupt 3{TH1=0x3c;TL1=0xb0;if(stop_time){if(t0_count>=20){t0_count=0;miao++;if(miao>=60){fen++;miao=0;}if(fen>=60){fen=0;}}else t0_count++;}if(stop_car){if(pwm_count>=10) pwm_count=0;else pwm_count++;if(pwm_count>=pwm1) run1=0;else run1=1;/////////////////if(pwm_count>=pwm2) run2=0;else run2=1;/////////////////if(pwm_count>=pwm3) run3=0;else run3=1;////////////////if(pwm_count>=pwm4) run4=0;else run4=1;//////////////}}void chaizi()//拆字函数{d[0]=cgq_num/10;d[1]=cgq_num%10;d[2]=14;d[3]=fen/10;d[4]=fen%10;d[5]=12;d[6]=miao/10;d[7]=miao%10;}void display(){uchar i,s=0x01;for(i=0;i<8;i++){P2=led[d[i]];en1=1;en1=0;P2=~s;en2=1;en2=0;delay(1);P2=0xff;en2=1;en2=0;delay(1);s=s<<1;}}void main(){uchar i=0;TMOD=0x11;EA=1;ET1=1;TR1=1;TH1=0x3c;TL1=0xb0;cgq_num=1;while(1){if(cgq_a==0){while(cgq_a==0){chaizi();display();};if(cgq_num>12) cgq_num=1;else cgq_num++;}switch(cgq_num){case 1: pwm1=pwm3=10;pwm2=pwm4=0;stop_car=1;stop_time=1;break;case 2: pwm1=pwm3=10;pwm2=pwm4=0;stop_car=1;stop_time=1;break;case 3: pwm1=pwm3=5;pwm2=pwm4=0;stop_car=1;stop_time=1;break;case 4: pwm1=pwm3=10;pwm2=pwm4=0;stop_car=1;stop_time=1;break;case 5: pwm1=pwm3=10;pwm2=pwm4=0;;stop_car=1;stop_time=1;break;case 6: pwm1=pwm3=10;pwm2=pwm4=0;stop_car=1;stop_time=1;break;case 7: pwm1=pwm3=0;pwm2=pwm4=10;stop_car=1;stop_time=1;break;case 8: pwm1=pwm3=0;pwm2=pwm4=10;stop_car=1;stop_time=1;break;case 9: pwm1=pwm3=0;pwm2=pwm4=10;stop_car=1;stop_time=1;break;case 10: pwm1=pwm3=0;pwm2=pwm4=5;stop_car=1;stop_time=1;break;case 11: pwm1=pwm3=0;pwm2=pwm4=10;stop_car=1;stop_time=1;break;case 12: run1=0;run2=0;run3=0;run4=0;stop_time=0;break;}chaizi();display();}}电路原理图:PCB板图:电路原理图:。