版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《基于51单片机的红外避障自动车的实现》技术报告
摘要本小组所设计一个带有红外传感器的小车,基本能实现自动避障的功能。本小车以STC89C52为其主控单元,以俩个直流减速电机为驱动电机提供基本动力,并依据差速原理实现转向,用红外传感器进行探测,使用分离元件组成的电路去驱动电机,使用PWM波实现变速功能。小车分为五个模块:STC89C52主控模块,传感模块,电源模块,电机驱动模块,测速模块。关键词:89C52红外避障自动车
题目:《基于51单片机的红外避障自动车的实现》下面是一些基本资料:——————————————小车参数——————————————障碍检测方式红外探测(探测模块功耗7mA)车模几何尺寸(mm)149x102x59测障精度前方:75cm左右:25cm车模轮距(mm)120电源系统4x1.5v干电池4x1.2v充电电池及其稳压输出电机直流减速电机,1~12V工作电压,传动比:71.2:1主控芯片STC89C52MCU其他芯片LM7806LM7805STC11F01等—————————————小组资料———————————————小组成员:姓名班级善长项目负责模块王太杰0804211班擅长于硬件焊接技术强硬件知识充足红外探测部分驱动调试孙学军0904211班擅长于编程C语言功底扎实思路开阔程序驱动部分程序调试李相华0804211班查阅资料能力强善于方案选择和优化电源部分小组优势:硬件与程序搭配协调,每人负责各自模块,只提供最终模块接口,使对方不必关注自己模块内部结构,只需将接口连接完成即可,减少了每人负责的内容,提高了效率。————————————制作流程与时间—————————————2010年5月1日小组成员对各模块电路进行了选择、优化,并进行了电路搭建、焊接,各模块调试,确定模块交互接口;主控程序思路成型,并编写了测试程序,对软硬件进行了测试。最后各模块交互,整体调试,主程序确定及细节敲定。2010年5月2日:模块交互,整体调试,主控程序细节修改;经布局后各硬件模块转移至车体,最终焊接,整车成型。主控程序下载,调试,最终成功。—————————————技术资料——————————————设计思路:为节省电机数量和电路复杂程度,红外避障小车(以下简称小车)采用前轮主动,后轮从动原理。前轮采用双电机驱动,利用差速法实现车身转向。检测部分利用红外发射管发射红外光,遇障碍物后经反射被红外接受管接收,产生电平转换,利用单片机I/O口检测红外检测模块电平输出,以此判断前方障碍物有无,检测到障碍物后,经单片机I/O口控制电机驱动电路,经由电机驱动电路输出不同电压,产生差速,实现转向,最终以达到避障的目标。其总体方框图如图所示:STC89C52单片机STC89C52单片机电机驱动模块传感器模块电源模块2个直流减速电机主控模块:方案一:采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力强、可靠性高、功耗低、结构简单、具有语音处理、运算速度快等优点,但考虑到我们小组对这个方案采用的微处理器并不熟悉,使用起来并不是很方便,这对于硬件电路的设计和软件编程增加了难度。我们决定不再使用此方案,考虑其他方案。方案二:采用STC89C52单片机作为主控制器。STC89C52是一个超低功耗,和标准51系列单片机相比较具有运算速度快,抗干扰能力强,支持ISP在线编程,片内含8k空间的可反复擦写1000次的Flash只读存储器,具有256bytes的随机存取数据存储器(RAM),32个I/O口,2个16位可编程定时计数器。其指令系统和传统的8051系列单片机指令系统兼容,降低了系统软件设计的难度,电路设计简单、价格低廉,在后来的实验中我们发现,STC89C52精确度和运算速度也都完全符合我们系统的要求。综合以上方案我们选择比较普通的更为熟悉的方案二使用STC89C52单片机为我们整个系统的控制核心。其各个引脚如图1所示图1探测模块:方案一:用三极管驱动红外发射管和红外解收管。 在三极管的射级接俩个红外发射管,加大红外线的强度,进儿提高其探测距离。在红外接收电路中,用电阻和红外接收管串联来调节基极的电位,当接收管接收到红外线时可以改变基极电位,进儿使三极管工作在截止或饱和状态,即调节了输出电平,实现了高低电平的转换。其发射和接受电路如图2所示:图2 优点:电路简单,搭建方便。 缺点:探测精度不高,探测距离比较近。 考虑到小车行驶时对精度的要求,我们最终放弃了这套方案。方案二:用三极管驱动红外发射管,用LM358来实现接受电路。 发射电路和方案一基本一致,这里就不赘述了。LM358是包含俩个运算放大器的集成器件,我们用第一个放大器来实现对探测到得信号进行放大,把第二个作为电压比较器(阈值电压Vth=1/2Vcc)。把处理过的信号和阈值电压进行比较,实现高低电平转换,并把数字信号送给单片机,使小车做出正确动作。器接收电路如图所示: 优点:探测精度较高,并且通过滑动变阻器可以改变探测距离,可以适应不同环境进行探测。 缺点:电路较为复杂。 综合考虑,最终我们选择了方案二。测速模块: 方案一:用光电对管实现测速。 光电对管是我们所熟知的器件,用它进行测速数据准确。我们的电机上面正好有一个光栅,用其测速实现比容易。 但最终由于电机相对光电对管来说比较小,无法很好将二者结合起来,我们不得不放弃这种方案。 方案二:用红外对管实现测速。 由探测模块中的方案一可知,此电路探测距离短,稍作改动可以实现测速。再小车的一个轮子上贴上黑纸,并在黑纸上贴上一条白纸(黑色可以吸收绝大多数的红外线而白纸却可以反射大部分红外线),当轮子转起来时就会产生高低电平,送给单片机的计数器进行计数。通过单位时间内的轮子转过的圈数实现了测速.。其电路如图所示: 通过实验分析可得,此方案基本可以满足我们的需要。最终选择了此方案。电源模块:方案一:交流供电。实现方式:220V交流电经整流稳压获得。优点:供电稳定,电压输出灵活。缺点:须稳压,电源传输线较长,且可能会对车子的避障功能产生干扰。考虑到小车行驶的灵活性和避障抗干扰性,我们抛弃了采用交流电的方案。方案二:直流电供电。实现方式:4接南孚电池串联获得。优点:无需稳压即可输出稳定电压,无需使用电源线。缺点:电压输出固定,无法获得灵活的电压输出。考虑到避障小车工作时各模块需求电压分别为:单片机4.5~5.5V,电机1~12V,红外测障模块5V,灵活性不高,因此可实现5V、6V的电压输出对各模块供电。因此我们最终采用直流电供电方式。在制作调试过程中,我们采取了4节5号南孚电池,用电池盒串联。经测量4节南孚电池串联输出为6.3V稳定电压。针对各模块电压需求我们产生以下具体实现方案:单片机电源:单片机工作电压为4.5V~5.5V,且其对工作电压要求比较严格方案一:我们设想采取基于LM7805稳压芯片的稳压芯片输出5V恒定电压。但是由于LM7805对输入输出两端电压要求有2~3V压降,且稳压芯片功耗较大,可能导致电源利用效率不高,故最终舍弃了这种方案。方案二:经过在网上查阅相关经验方法,我们最终确定了一种简单易行的方法:在电源处串联一个(两个/可通过跳线帽选择)二极管实现0.7V(1.3V)压降,用来提供单片机工作电压。如图2所示:图2电源模块驱动电路电源:电机对电压要求不精确,但电压会影响电机功率以及速度。方案一:采用模拟CD-DC升压电路获得较高电压供给电机驱动电路已获得较高的功率输出,提高转速。最终考虑到电路实现的复杂性。我们最终舍弃了这种方案。方案二:采用专门的直流电升压芯片(比如MC34063A)以简化电路。不过最终由于经济原因放弃了这种方案。方案三: 直接用电池串联后的电压给驱动电路供电,此方案简单易行,制作成本较低,不过电机功率不大。最终经测试小车速度能达到我们的需求,最终采取了本种方案。经分析电源方案的优缺点,我们得出以下方案:考虑到一次性干电池的不可利用性,我们在整车成型时采用了4节可充电电池经电池盒串联的方案,以降低后续制作成本。考虑到电压输出端的单一性,我们考虑采用10V稳压管另做一路电源输出,为电机提供工作电压,在一定程度上可提高电机功率,提高整车运行速度。电机驱动模块:方案一: 采用电机驱动集成芯片(如L9110)来驱动电机。优点:电路简化,双路输出,可以实现双电机的正反向转动,实现整车的前进后退。但由于电机驱动集成芯片的价格比较高(18~30元/片),为降低制作成本,最终舍弃了采用电机驱动芯片驱动的方案。方案二: 采用分立元件模拟电路驱动。优缺点:制作成本低,电路无法简化,稳定性较驱动芯片(如L9110)差。经考虑避障小车的控制精度不是很高,运用分立元件模拟电路即可达到系统要求,最终采取了本种方案。经选择我们最终采取了利用双三极管控制开关电路,利用三极管的反应灵敏性,并将其俩端接在MCU的I/O口上,可以通过控制I/O口输出0、1来控制三极管开关,以达到控制输出电压的目的。最终驱动电路如图3所示:其控制如表所示:图3电机驱动表1P0^0P0^1P0^2P0^3状态1010前进0101后退1000右转0010左转 —————————————主控程序——————————————为了降低程序复杂性,我们分析了软件运行原理,尽量简化程序设计。单片机我们最终选用了10个I/O口。其中1个用来计数或测速,3个I/O口用来接收红外部分电平转换,检测障碍物,2个I/O口用来控制转向灯,另外4个I/O口端接电机驱动电路,用程序使其产生0、1脉冲数量比来控制驱动电路开关,最终实现速度差以实现转向避障。主控程序如下:/****************************** 程序开发环境KeiluVision3 语言:C 编写者:王太杰 时间:2010/04/04******************************//****************************** 主程序及注释如下:******************************/#include<reg52.h>#defineuintunsignedint#defineucharunsignedcharsbitx=P2^0; //定义左侧探测器接收端sbity=P2^1; //定义中间探测器接收端sbitz=P2^2; //定义右侧探测器接收端sbitm1=P1^0; sbitm2=P1^1; //定义左侧电机控制端sbitn1=P1^2;sbitn2=P1^3; //定义右侧电机控制端sbitl=P1^4; //定义左侧转向灯控制端sbitr=P1^5; //定义右侧转向灯控制端uintk,num;voiddelays(uinti) //定义一个延时1MS的延时函数{ uintm,n; for(m=i;m>0;m--) for(n=110;n>0;n--);}input_num(ucharbai,ucharshi,ucharge) //信号运算函数{ uinthe; he=4*bai+2*shi+ge; return(he);}voidzuo_zhuan() //小车左转函数{ uinti; for(i=1;i<=5;i++) { m1=0; m2=0; n1=1; n2=0; l=1; //控制转向灯 r=1; delays(15); m1=1; m2=0; n1=1; n2=0; l=0; r=1; delays(5); } }voidyou_zhuan() //小车右转函数{ uinti; for(i=1;i<=5;i++) { m1=1; m2=0; n1=0; n2=0; l=1; r=1; delays(15); m1=1; m2=0; n1=1; n2=0; l=1; r=0; delays(5); }}voidhou_tui() //小车倒车函数{ uinti; for(i=1;i<=50;i++) { m1=0; m2=1; n1=0; n2=1; l=1; r=1; delays(15); m1=0; m2=1; n1=0; n2=1; l=0; r=0; delays(10); } for(i=1;i<=50;i++) { m1=0; m2=0; n1=1; n2=0; l=1; r=1; delays(20); m1=1; m2=0; n1=1; n2=0; l=0; r=1; delays(5); } }voidqian_jin() //小车前进函数{ uinti; for(i=1;i<=5;i++) { m1=1; m2=0; n1=1; n2=0; l=1; r=1; delays(20); }}uintread() //小车测速的计数函数{ uchart1,th1,th2; uintval; while(1) { th1=TH0; t1=TL0; th2=TH0; if(th1==th2) break; } val=th1*256+t1; returnval;}voidT1_time()interrupt3 //定义定时器1{ TH1=(65535-45872)/256; TL1=(65535-45872)%256; //定时时间为50ms k++; if(k==30) { num=read(); k=0; TH0=0; TL0=0; //计数器清零 }}main() //主函数{ uintgrade; TMOD=0x15; TH0=0; TL0=0; TH1=(65535-45872)/256; TL1=(65535-45872)%256; //在定时器中装入初值 EA=1; ET1=1; TR0=1; TR1=1; while(1) { if(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大班保育工作计划大班保育秋季工作计划
- 七年级下册地理教学工作计划
- 大班综合科教学计划
- 2025外科护士长2月份工作计划
- 2025年度第一学期综合教研组工作计划
- 中小学教师职业道德个人总结工作计划
- 公司员工销售培训工作计划
- 九年级英语教学计划范本
- 七年级上册人教版数学教学计划从算式到方程
- 《城镇土地价格》课件
- MOOC 人工智能导论-浙江工业大学 中国大学慕课答案
- 京东招聘测评题库答案大全
- 数字经济职业生涯规划
- 雪铁龙DS6说明书
- 网球线下推广方案
- 耳鼻喉考试题+答案
- 2024年中考九年级语文专题复习现代文阅读 (答案)
- 2023人教版小学美术四年级上册期末试卷含部分答案(三套)
- 2024年医疗器械培训记录
- 社保医保基本知识简介课件
- 宣传片专题片视频拍摄方案投标方案(技术标)
评论
0/150
提交评论