ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:185.38KB ,
资源ID:16667764      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16667764.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(哈工大测控系单片机课程设计说明书超声波避障小车Word下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

哈工大测控系单片机课程设计说明书超声波避障小车Word下载.docx

1、2.工作电流:30mA 典型,50mA 最大3.工作频率:38.5KHz4.最大探测距离:1.8 m5.最小探测距离:3 cm6.输入触发器:上升沿触发7.回波脉冲:正TTL高电平脉冲宽度8.下一次测量的延时:20 mS设计要求: 实现小车自动避障任务,采用超声波模块实现小车避障功能。 工作量: 总工作时间为10天; 完成硬件电路的设计工作;设计程序流程图并编写、调试程序;硬件连接调试,完成设定的功能;最后撰写开题报告和结题报告各一份。工作计划安排: 1)2012.8.272012.8.28:任务布置、查阅资料,了解小车避障原理;2)2012.8.292012.8.30:根据要实现的功能及采用

2、的方法设计程序流程并编写程序;3)2012.8.312012.9.3:程序装载、调试运行各种拟实现的功能;4)2012.9.42012.9.5:完成设定要实现的功能,撰写课程设计说明书;5)2012.9.62012.9.7:完成硬件调试、验收。 同组设计者及分工: 指导教师签字_ 年 月 日 教研室主任意见: 教研室主任签字_ 年 月 日*注:此任务书由课程设计指导教师填写开题报告1绪论课题目的通过上学期单片机课程的学习,我们基本掌握了51单片机的基本使用方法,本学期开学初,单片机课程设计给了我们更大的挑战,课题的目的有以下几点。进一步熟练掌握单片机的使用方法、提高程序的编写能力掌握单片机系统

3、外扩器件的连接与使用提高器件说明书以及时序过程的阅读、理解能力掌握软件和硬件调试的基本技巧与方法1.1项目研究背景及意义在当今社会,汽车成为了越来越普遍,人们不可缺少的交通工具。但汽车的不断增加,随之而来就是越来越多的交通事故。交通事故成为了现在越来越严重的安全隐患。所以随着汽车工业的快速发展,我们必须加强对汽车安全性能的考虑。所以,智能汽车概念应运而生,他既是汽车产业的机遇也是汽车产业的挑战。汽车的智能化必将是未来汽车产业发展的趋势,在这样的背景下,我们开展了基于超声波的智能小车的避障研究。超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用

4、的要求,在未来汽车智能化进程中必将得到广泛应用。我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。设计要求采用超声波模块实现小车避障功能,实现小车自动避障任务。2主要设计内容及方案总体方案设计系统采用51单片机作为核心控制单元用于智能车系统的控制,在超声波检测到障碍物之后,主控芯片根据距离值控制直流电机的转动,在与障碍物距离较大的情况下,快速前进,在与障碍物距离较小但还未到达临界转弯方向值的时候,慢速前进。在与障碍物距离很近需要

5、转向避障时,方案上将尝试进行转向,来进行避障。系统总体的设计方框图如图2-1所示。图21 系统总体方案图 图1.2系统总体方框图根据以上的总体方案设计,我们进行了主程序流程图的设计,下面为所设计的主程序的流程图。其中DIS即为小车与障碍物的距离;图22 主程序流程图主要模块的基本原理2.1.1超声波探测模块超声波探测模块的基本原理及使用方法如下:IO口触发,给Sin口至少510us的高电平,启动测量;模块自动发送8个40Khz的方波,自动检测是否有信号返回;有信号返回,通过IO口Sin输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,测试距离=(高电平时间*340)/ 2。图2-

6、3 超声波探测模块时序图 直流电机控制模块机器人的动作由伺服电机控制。伺服电机与单片机接口的连接,图电机连接原理图和实际接线图,P1_0引脚的控制输出用来控制右的伺服电机,而P1_1则用来控制左边的伺服电机。图2- 4 左、右电机连接图控制电机运动转速的是高电平持续的时间,当高电平持续时间为1.3ms时,电机顺时针全速旋转,当高电平持续时间1.7ms时,电机逆时针速旋转。图2- 5 电机顺、逆时针旋转控制脉冲图所以可知,若令左、右车轮电机高电平持续时间为1.5ms时,小车将处于静止状态。若令左车轮电机高电平持续时间为1.7ms,右车轮电机高电平持续时间为1.3ms时,则左车轮电机逆时针,右车轮

7、电机顺时针,小车将会以最快的速度前进。此时,若想改变小车的前进速度,则逐渐减小左电机的高电平时间,逐渐增加右电机的高电平时间,则可以减小车速。同理可知,若令左车轮电机高电平持续时间为1.3ms,右车轮电机高电平持续时间为1.7ms时,则左车轮电机顺时针,右车轮电机逆时针,小车将会以最快的速度后退。当需要转弯时,通过分析和测试我们可以知道,当小车想左转时,需令左右两轮均顺时针旋转,而当小车想右转时,需令左右两轮均逆时针旋转。通过对直流电机模块的学习和了解,我已经了解了控制小车运动的方法。需解决的关键问题关键问题首先是要学会使用超声波测距器件,根据老师所提供的知识,利用图像读懂超声波器件的工作时序

8、,根据时序以及超声波测距器件的工作信号特点,并且结合单片机的定时器/计数器等功能,来顺利的完成小车对于前方障碍物距离的测量。另一个比较关键的问题就是确定小车的避障方案,根据上方的主程序流程图,我们采用一种避障方案,在接下的设计中,我们需要对于该方案能否正确躲避障碍进行验证,并且需要不断思考,提出更多的更好的更有效的避障方案。具体实施方案及程序2.4.1 程序初始化 初始化函数中需要对定时器/计数器的模式进行设定,以及初始值的设定,流程图如下程序如下:void IO_init(void) EA=1; ET0=1; TMOD=0x11;/将T0定时器/计数器设置为16位计数模式 TH0=0x00;

9、 /初始值为0 TL0=0x00; TR0=0; /不开始计数2.4.2 测距函数测距函数是本程序的比较关键的一个函数,需要根据仪器的本身特点来进行编程,流程图如下测距函数如下:void getx(unsigned char a) /测距函数 TH0=TL0=0; /初始值设置为0 if(a) Sin=0; /Sin置0 Sin=1; /Sin置1,并且延时一段时间,提供一个测距的触发脉冲 delay_5us(); /Sin重新置0 while(Sin); while(!Sin);/SIN信号从低电平变为高电平,此时跳出该循环TR0置1,开始计数 TR0=1; /SIN信号从高电平变为低电平,

10、此时跳出该循环TR0置0,停止计数 LTime=TL0; HTime=TH0; Time=HTime*256+LTime; /将高8位乘以256加上低8位得到总值 Dis=Time/(2*29); /计算出所差距离 2.4.3 主函数主函数的流程图如下主函数如下:void main() /主程序 IO_init(); /初始化 while(1) getx(1); /测距 if(Dis=50) /如果距离大于50 Forward_fast(); /快速前进 else if(Dis=10&Dis=10) /如果距离大于10 Forward_slow(); else /如果距离依旧小于10 Righ

11、t_180(); /右转180 getx(1); if(Dis=10) /如果此时距离小于10 Forward_slow(); else /否则,继续调试 Right_90(); /右转90度 2.4.4 完整程序代码与注释#includeintrins.hsbit Sin=P15; /超声波模块控制端口sbit right=P10; /右轮控制信号sbit left=P11; /左轮控制信号unsigned int Dis,Time;unsigned char LTime,HTime;void delay_nus(unsigned int i) /延时函数 i=i/10; while(-i)

12、;void delay_5us() /短时间延时函数,为SIN高电平准备 _nop_();void Forward_fast(void) /快速前进 left=1; delay_nus(1700); left=0; delay_nus(20000); right=1; delay_nus(1300); right=0; void Forward_slow(void) /慢速前进 delay_nus(1580); /减小左电机的高电平时间,增加右电机的高电平时间,减小速度 delay_nus(1420);void Left_90(void) /左转90度 unsigned int i=0; wh

13、ile(i20) i+; /令左、右两轮均顺时针转动void Right_180()38) /令左、右两轮均逆时针转动void Right_90() /令左、右两轮均逆时针转动 结题报告1课题完成情况本超声波避障小车的设计基于单片机原理和传感器原理,以51单片机为主控芯片,采用直流电机为驱动元件,通过软件编程制作了一整套结构完整,功能模块化,反应较为灵敏的超声波避障小车。经过对该避障小车的避障测试实验,实验结果证明该避障小车能够很好的按照预期完成避障动作,并且能够快速运动灵敏避障,效果良好,运行稳定性较好。2 所遇问题及解决方案在进行小车调试时,我们遇到的一个最大困难就是当我们前期的程序烧入芯

14、片后,我们的小车运行的非常不平稳,前进运行的非常不连贯。小车前进一会,就会有一段比较明显的时段停止。当我遇到这个问题时,我没有慌乱,我一步一步的进行了分析。首先,我怀疑了前进函数Forward()出现问题,检查Forward()的后,发现提供给左右车轮的PWM信号正常,没有出现异常,而且出于控制变量思想,为了准确的找到问题的症结所在,我单独讲Forward()函数烧入小车中,运行后可以发现,小车的运行非常正常,不存在运行不平稳的现象。 在排除了Forward()函数的问题后,我开始怀疑是不是测速的函数getx()对Forward()函数造成了干扰。我们通过分析可以知道,forward()函数提

15、供了一个非常完美的驱动电机的PWM信号,但是一旦在程序中,存在着一些其他例如测距程序,判断语句等程序时,会对其PWM信号产生一些干扰,应尽可能的减少这些程序对于小车运行程序的干扰。所以我将我之前使用的delay()函数用系统的库函数_nop()_来代替,再将更改后的程序下载入小车后,惊奇的发现,小车能够平稳的运行了。我们再进一步的分析这个问题的原因,我们可以看到,在之前的delay()函数中,我们使用了除法,除法在指令周期最长的一个指令,他会导致PWM信号在某一电平上停留的时间过长,影响信号的占空比与波形,而系统的库函数运行的时间则比较短,对其他函数的影响较小。以上就是我对这个问题的思考,可能

16、我对这个问题的分析也存在一些不完善的地方,比如说,我自己也会问自己,指令的运行周期长短,怎么会对毫秒级的PWM电机驱动信号造成如此大的影响等等,课程设计结束后,我也会继续的查找一些资料,多问问师兄和老师,争取找到最完整,正确的答案。3 心得体会这次课程设计给我们提供了一个非常好的机会来提高我们实际的应用能力。从选题开始老师就给予我们很大的自主性,让我们大家自主选题,这种开放式教学方式也从另一个方面激发起了我们去学习的欲望。这次课程设计,给我更多的是一种模块化的思想,将系统按我们所需的功能和系统所能提供的功能进行模块化的分类,将会使我们的工作变得一目了然,非常清晰。比如说这次我选的避障小车,可以

17、分成超声波测速模块,电机驱动模块,单片机核心模块三个,三个部分各司其职,无论从硬件上还是软件上,都能够比较清晰地将他们的功能区分开,从而有利于硬件的连接和程序的编写。对于这次程序的编写,我就是分块编写,按模块调试,从而避免了许多错误。从以后工作来看,这种模块化处理问题的方式将会更加的有用,在公司和以后得科研项目中,系统一定是越来越复杂,不可能一个人完成所有的任务,一定是一个团队来做这些系统的设计,所以模块化之后,能够将任务分配给每个人,最后大家还能够很好的综合到一起,大大的缩短了开发周期。这次课程设计,提高了我对于陌生硬件的学习能力,超声波仪器对我来说非常的陌生,所以通过这次的学习,我感觉我学

18、习硬件的能力有所提高,对于时序的理解能力也有了进步。单片机主要的功能就是对各种各样的外设进行控制,在以后的工作学习中,我一定会遇到非常多的不熟悉的硬件,我相信,通过不断地锻炼积累,应该有比较强的学习能力。但是该超声波避障小车还存在着许多的不足,比如说只能对正前方一定角度内进行探测,使用的是一路超声波而不是多路超声波探测,并且为了简化,默认的只是向同一个方向转弯等,这些都是有待进一步发展和提高的,这与制作者自身的对与障碍检测距离分析、自动控制信号处理、图像处理等诸多技术的有限性分不开的,还需要研究制作者的学习和探索。本次项目共历时两周,有时间比较紧张,此外项目的进度控制不是很准确,技术上本身也有

19、一定难度,但我认为这不是主要原因,以后我会强调时间概念,按时并且争取有效率的完成规定阶段的任务。我们遇到的困难主要在于对超声波模块的使用方法不了解,实验室的模块并没有配套的资料,而网上也比较难找到它的手册资料,最后我们选择参考模板程序,然后对其进行改进使之适于自己的需求,这样也减少了从头到尾重复编写代码的时间。最后,感谢胡老师这么多天对我们的帮助,每次遇到问题时,老师都耐性的帮我解答问题,正是老师一次有一次的讲解才让我坚持下来。老师耐心细致的讲解也让我学到了很多课堂上没有学到的知识。感谢老师对我们的帮助。4 参考文献1 邵贝贝. 嵌入式实时操作系统LCOS-(第2版)M. 北京清华大学出版社2

20、0042 邵贝贝. 单片机嵌入式应用的在线开发方法M北京清华大学出社20043 王晓明. 电动机的单片机控制M北京. 北京航空航天大学出版社2002 4 臧杰,阎岩. 汽车构造M. 北京. 机械工业出版社2005 5 安鹏,马伟S12单片机模块应用及程序调试J. 电子产品世界. 2006第211期 162-1637 童诗白,华成英模拟电子技术基础M北京. 高等教育出版社2000 8 沈长生常用电子元器件使用一读通M北京. 人民邮电出版社2004 9 宗光华机器人的创意设计与实践M北京. 北京航空航天大学出社2004 10 张伟等Protel DXP高级应用M北京. 人民邮电出版社2002 11 张文春. 汽车理论M北京机械工业出版社2005 12 江海波,王卓然,耿德根编著.深入浅出AVR单片机.中国电力出版社,2008.13 袁新娜,与红英编著.超声波传感器在智能小车避障系统中的应用.A中北大学 (2009)08-0085-04

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1