- 2.48 MB
- 17页
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
'智能小车项目报告记录
————————————————————————————————作者:————————————————————————————————日期:2
宜宾职业技术学院《小车智能功能的实现》项目设计报告项目设计题目:小车智能功能的实现系部:电子信息与控制工程系班级:电子11201班组号:第四组小组成员:陈鼎徐成焱毛池贵浦东指导教师:罗德雄二〇一三年十一月二十五日17
目录引言................................................................3一、方案论证.........................................................4二、小车车体设计....................................................7三、硬件系统设计....................................................81、单片机最小系统...................................................82、电机驱动电路......................................................9四、软件系统设计....................................................10五、系统的制作、仿真与调试..........................................14六、总结...........................................................1417
引言当今世界,传感器技术和自动控制技术正在飞速发展,机械、电气和电子信息已经不再明显分家,自动控制在工业领域中的地位已经越来越重要,“智能”这个词现在也已经成为了热门词汇。现在国外的自动控制盒传感器技术已经达到了很高水平,特别是日本,比如日本本田制作的机器人,其仿人双足行走已经做的十分逼真,而且具有一定的学习能力。作为机械行业的代表产品—汽车,其与电子信息产业的融合速度也显著提高,呈现出两个明显的特点:一是电子装置占汽车整车的价值量比例逐步提高,汽车将由以机械产品为主向高级的机电一体化方向发展,汽车电子产业也很有可能成为依托整车制造业和用车提高配置而快速成为新的增长点;二是汽车开始向电子化、多媒体化和智能化方向发展,使其不仅作为一种代步工具、同时能具有交通、娱乐、办公和通讯等多种功能。为了适应机电一体化的发展在汽车智能化方向的发展要求,提出简易智能小车的构想,目的在于:通过独立设计并制作一辆具有简单智能化的简易小车,获得项目整体设计的能力,并掌握多通道多样化传感器综合控制的方法,此项目设计是在以自己做的小车为基础上,采用AT89C52单片机作为控制核心,实现智能小车功能。17
一、方案论证总体方案设计:根据题目,我们设计了以下方案并进行了综合的比较论证,智能电动小车系统由主控模块、电源模块、超声波传感器模块、电机驱动模块、显示模块、蜂鸣模块构成。1、主控制器模块方案一:采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。处理速度高,尤其适用于语音处理和识别等领域。但是当凌阳单片机应用语音处理和辨识时,由于其占用的CPU资源较多而使得凌阳单片机同时处理其它任务的速度和能力降低。本系统主要是进行寻迹运行的检测以及电机的控制。如果单纯的使用凌阳单片机,在语音播报的同时小车的控制容易出现不稳定的情况。从系统的稳定性和编程的简洁性考虑,我们放弃了单纯使用凌阳单片机而考虑其它的方案。方案二:采用Atmel公司的AT89S52单片机作为主控制器。AT89S52是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C52引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S52具有如下特点:40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。由于89S52单片机的资源已经可以满足设计需要,且51单片机价格上有优势。从方便实用不浪费资源的角度考虑,我们选择了方案二。2、电源模块由于本系统需要电池供电,我们考虑了如下集中方案为系统供电。17
此模块借用网络资料。方案一:采用10节1.5V干电池供电,电压达到15V,经7812稳压后给直流电机供电,然后将12V电压再次降压、稳压后给单片机系统和其他芯片供电。但干电池电量有限,使用大量的干电池给系统调试带来很大的不便,因此,我们放弃了这种方案。方案二:采用3节4.2V可充电式锂电池串联共12.6V给直流电机供电,经过7812的电压变换后给支流电机供电,然后将12V电压再次降压、稳压后给单片机系统和其他芯片供电。锂电池的电量比较足,并且可以充电,重复利用,因此,这种方案比较可行。但锂电池的价格过于昂贵,使用锂电池会大大超出我们的预算,因此,我们放弃了这种方案。方案三:采用1块充电锂电池为直流电机供电,将12V电压降压、稳压后给单片机系统和其他芯片供电。充电电池具有较强的电流驱动能力以及稳定的电压输出性能。虽然充电电池的体积过于庞大,在小型电动车上使用极为不方便,但由于我们的车体设计时留出了足够的空间,并且充电电池的价格比较低。因此我们选择了此方案。方案四:调试时直接用开关电源,调到12V进行调试。综上考虑,我们选择了方案四。3、超声波传感器模块方案一:采用简易光电传感器结合外围电路探测,但实际效果并不理想,对行驶过程中的稳定性要求很高,且误测几率较大,易受光线环境和路面介质影响。在使用过程极易出现问题,而且容易因为该部件造成整个系统的不稳定。故最终未采用该方案。方案二:采用超声波传感器,根据时间差可以精确地测量前方障碍物的距离,精度高,价格合理,可以通过调整软件算法,改变小车的避障精度。并且可以控制小车与前方障碍物的距离大小来使小车做出反应,智能化高。通过比较,我们选取第二种方案来实现循迹。17
4、电机驱动模块方案一:采用专用芯片L298N作为电机驱动芯片。L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。用该芯片作为电机驱动,操作方便,稳定性好,性能优良。方案二:对于直流电机用分立元件构成驱动电路。由分立元件构成电机驱动电路,结构简单,价格低廉,在实际应用中应用广泛。但是这种电路工作性能不够稳定。因此,我们选用了方案一。5、显示模块方案一:使用液晶显示屏显示时间。液晶显示屏(LCD)优点是:低耗电量、无辐射危险,平面直角显示以及影象稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强等。缺点是:液晶显示屏是以点阵的模式显示各种符号,需要利用控制芯片创建字符库。编程工作量大,控制器的资源占用较多,在使用时,不能有静电干扰,否则易烧坏液晶的显示芯片,不易维护,其成本也偏高。并且本系统只需要显示时间,信息量比较少,因此并不适于选用液晶显示屏。方案二:使用数码管显示行驶时间。数码管具备数字接口,显示清晰,价格较低,作为时间显示的器件性价比非常高,方便易行。决定采用数码管显示行驶时间。6、蜂鸣模块方案一采用普通发光二极管和蜂鸣器分别发出声光报警,该方案虽能达到题目要求,但是蜂鸣器发出声音刺耳,而且受到其他指示灯的影响,发光二极管报警也不够突出。方案二采用超高亮发光二极管和语音芯片ISD1730组成声光报警,该方案避免了方案一所有缺点。语音芯片声音清晰,超高发亮的发光二极管作用非常明显。所以我们选择了方案二。17
二、小车车体设计三、硬件系统设计1、单片机最小系统采用Atmel公司的AT89S51单片机,不用烧写器而只用串口或者并口下载线就可以往单片机中下载程序。17
我们在开发过程中使用开发版,方便程序的调试和整机的测试,待系统调试完成后,将单片机从开发板安装在小车底座板上方便及时调试。积木式连接还方便拆卸以便于其他项目的开发与调试。单片机最小系统图时钟电路系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。AT89单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22μF。更好地保证震荡器稳定和可靠地工作。复位电路17
复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是上电与按钮复位电路,如图所示。当时钟频率选用6MHz时,C取22μF,Rs约为200Ω,Rk约为1K。2、电机驱动电路由于单片机输出的信号不仅点压偏低,而且负载能力不够,不能用来直接驱动电机 L298驱动芯片是性能优越的小型直流电机驱动芯片之一。它可被用来驱动二个直流电机。在4—6V的电压下,可以提供2A的驱动电流。L298还有过热自动关断功能,并有反馈电流检测功能,符合电机驱动的需要。因此需要使用驱动芯片L298,单片机输出的信号,经过L298实现功率的放大,从而驱动电机工作。L298芯片是一种高压,大电流双全桥式驱动器,其设计是为接受标准TTL逻辑电平信号和驱动电感负载的。电路原理图如下图所示:17
四、软件系统设计小车程序设计如下:#include#includeucharunsignedchar#includeuintunsignedintsbitmoto1=P2^2;sbitmoto2=P2^3;sbitmoto3=P2^4;sbitmoto4=P2^5;sbitk0=P3^0;//暂停开始sbitk1=P3^1;//向前向后sbitk2=P3^2;//向右转sbitk3=P3^3;//向左转sbitk4=P3^4;//加速sbitk5=P3^5;//减速sbitspeak=P3^7;sbitENA=P2^6;sbitENB=P2^7;uintt,temp;uintcount;voiddelay(uintz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidint(){TMOD=0x01;//工作模式选择//中断设置TH0=(65536-1000)/256;//装初值TLO=(65536-1000)%256;//12MZ晶振,10ms17
P1=1;TR0=1;ET0=1;EA=0;count=20;}voidkg(){while(k0==0&&EA==1)//暂停{delay(5);if(k0==0&&EA==1){EA=0;moto1=moto2=moto3=moto4=0;P1=1;}}while(k0==0&&EA==0)//开始{DELAY(5);IF(K0==0&&EA==0){EA=1;P1=0;moto1=1;moto3=1;moto2=0;moto4=0;}}while(k1==0&&moto1==0)//前进{delay(5);if(k1==0&&moto1==0){moto1=1;moto3=1;moto2=0;moto4=0;17
P1=0;}}while(k2==0)//右转{delay(5);if(k2==0){moto1=1;moto2=0;moto3=0;moto4=1;P1=0;}}while(K3==0)//左转{delay(5);if(k==3){moto=0;moto2=1;moto3=1;moto4=0;P1=0;}}if(k4==0){delay(5);if(k4==0){count+=10;if(count>=100){count=100;}17
}while(!k4);//等待键松开}}voidmain(void){int();while(1){kg();}}voidPWM()interrupt1//定时器1pwm脉冲波的输出{TH0=(65536-1000)/256;TL0=(65536-1000)%256;t++;if(t==100)t=0;//一共分成100份if(t