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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(迷宫导航智能车设计报告.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

迷宫导航智能车设计报告.docx

1、迷宫导航智能车设计报告 迷宫导航智能车设计报告 2013-2014 学年第 2 学期学 院:自动化工程学院专 业:自动卓越111学 生 姓 名:学 号:29课程设计名称:计算机控制系统设计课程设计题目:迷宫导航智能车设计起 迄 日 期:4月21 日 5月 4 日课程设计地点:主教418指 导 教 师:系主任:摘要介绍了一种智能循迹小车的制作方法,给出了控制系统的硬件设计和软件设计。控制系统的硬件电路部分主要包括控制器、传感器、电机驱动芯片。控制器和传感器分别采用8位的51系列单片机STC90C51和光电对管。循迹小车采用的直流电机。关键词:STC89C51 智能循迹小车 黑白对管 黑白循迹 第

2、一章题目背景与意义计算机控制系统是自动控制理论和微型计算机原理和接口等技术在工业生产过程中实现自动控制的专门技术,其以自动控制理论为基础,以电子技术、传感器原理、计算机原理及接口等课程内容为辅助,通过计算机控制系统设计的实践环节培养学生理论应用能力、总结归纳能力以及自我学习能力,从而进一步提高学生工程实践能力和创新意识的培养。自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。随着科学技术的发展,机器人的感觉传感器

3、种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视觉传感器的核心器件是摄像管或CCD,目前的CCD已能做到自动聚焦。但CCD传感器的价格、体积和使用方式上并不占优势,因此在不要求清晰图像只需要粗略感觉的系统中考虑使用接近觉传感器是一种实用有效的方法。机器人要实现自动导引功能和避障功能就必须要感知导引线和障碍物,感知导引线相当给机器人一个视觉功能。避障控制系统是基于自动导引小车(AVGauto-guide ve

4、hicle)系统,基于它的智能小车实现自动识别路线,判断并自动避开障碍,选择正确的行进路线。使用传感器感知路线和障碍并作出判断和相应的执行动作。随着生产自动化的发展需要,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的传感器种类也越来越多,其中红外传感器已经成为自动行走和驾驶的重要部件。红外的典型应用领域为自主式智能导航系统,机器人要实现自动避障功能就必须要感知障碍物,感知障碍物相当给机器人一个视觉功能。智能避障是基于红外传感系统,采用红外传感器实现前方障碍物检测,并判断障碍物远近。由于时间和水平有限,我们暂选最基本的避障功能作为此次设计的目标。本设计通过小车这个载体再结

5、合由STC90C51RC为核心的控制板可以达到其基本功能,再辅加由漫反射式光电开关组成的避障电路、电源电路、差分驱动电路就可以完善整个设计。第二章 设计题目介绍2.1 设计内容及要求1)设计并开发能自动循迹和调速的电动小车控制系统,要求以迷宫白色墙壁对小车进行导航,能实现电动小车的速度闭环控制;以实现小车在迷宫内正常行驶.2)利用红外对管等传感器设计导航、测速电路,设计小车的电源管理电路,完成单片机和各模块的接口电路设计;利用脉宽调制原理实现直流电机的速度控制,完成各模块的控制程序设计。3)能够在指定迷宫内行驶;4)在尽量短的时间内到达终点;5)到达终点后在指定区域内自动停车;6)智能车行驶全

6、程不得人为干预。2.2 智能车现状介绍现有的避障小车的传感器大致有微动开关、超声波传感器等,而该小车采用了红外传感器,性能和超声波传感器相当,但成本远低于上述传感。该避障小车采用单片机为控制核心,可以根据实际情况修改程序,方便灵活,并可实现复杂功能。电机驱动电路采用普通的直流电机,价格适宜,电路相对简单,经济实用。整体上来说,采用简单的电路实现了高精度、快速壁障的功能。第三章 系统总体设计3.1 方案设计我设计的循迹小车处理器使用51单片机,循迹模块使用lm324比较器芯片,4个红外对管,其中三个用于判断障碍物,另外一个用于检测停止线,电机驱动模块使用了L293D驱动芯片。下图为小车组装图:

7、2 3 1 4图3-1 小车安装图3.2 原理框图图3-2 原理框图3.3 控制器方案论证与比较方案采用老师提供的STC90C51RC单片机作为主控制器,STC90C51RC是采用8051核的ISP(In System Programming)在系统可编程芯片,最高工作时钟频率为80MHz,片内含8K Bytes的可反复擦写1000次的Flash只读程序存储器,器件兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,具有在系统可编程(ISP)特性,配合PC端的控制程序即可将用户的程序代码下载进单片机内部,省去了购买通用编程器,而且速度更

8、快。STC90C51RC系列单片机是单时钟/机器周期(1T)的兼容8051 内核单片机,是高速/ 低功耗的新一代8051 单片机,全新的流水线/精简指令集结构,内部集成MAX810 专用复位电路。3.4 循迹模块该智能小车在有白色纸板障碍物的白纸“路面”上行驶,由于白纸对光线的反射系数不同,可根据接收的反射光的强弱来判断道路上的障碍。在该模块中利用了简单、应用也比较普遍的检测方法红外探测法。红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。在小车行驶过程中不断地向四个方向面发射红外光,当红外光遇到白色地面漫反射,反射光被装在小车上的接收管接收;如果遇不到障碍则红外光反射效果

9、几乎为零,则小车上的接收管接收不到信号。使用电压比较器LM339N,能更好的精确判断。传感器选择:使用老师提供的黑白对管。35 电机驱动模块电动车电机的驱动系统的性能在很大程度上决定了电动车的整体运行性能,电动机使用主办方提供的电机。驱动芯片使用L293D。L293D是一款单片集成的高电压、高电流、4通道电机驱动,设计用于连接标准DTL或TTL逻辑电平,驱动电感负载(诸如继电线圈、DC和步进电机)和开关功率晶体管等等。为了简化为双桥应用,L293D每个通道对都配备了一个使能输入端。L293D逻辑电路具有独立的供电输入,可在更低的电压下工作。此外,L293D还内置了箝位二极管。 L293D适用于

10、频率达5 kHz的开关应用。第四章 系统硬件设计4.1 单片机最小系统设计最小系统主要有单片机及其必要的外围电路。其中必要的外围电路包括由11.0592MHZ 的晶振和两个30PF 的电容与内部的振荡器构成的时钟电路。换句话说,本最小系统采用的是内部时钟电路提供基本时钟;另外还有由电阻、电容和开关构成的复位电路。图中开关盒电容并联使系统拥有上电和按键的双重复位功能,电阻R14 起到下拉电阻的作用,对电路起到保护作用。系统资源分配:P2.3P2.0 用于小车寻迹时4 个光电传感器的输入,P0.0P0.5 控制电机的使能和方向。最小系统框图如下图所示。 图4-1 时钟电路 图4-2 复位电路 4.

11、2寻迹探测电路设计自制红外探头工作原理:当小车在白色地面行驶时,装在车上的红外发射管发射红外信号,经白色障碍物反射后,被接收管接收,一旦接收管接收到信号,那么途中光敏三极管将导通,比较器输出为低电平;当小车行驶没有遇到障碍物时,红外线信号则不能被反射回来,光敏三极管截止,比较其输出高电平,从而实现了通过红外线检测信号的功能。将检测到的信号送到单片机的I/O 口,当I/O 口检测到的信号为高电平时,表明小车没有遇到障碍物;同理,当I/O 口检测到的信号为低电平时,表明小车遇到障碍物。小车在正常前进时,三对红外管均不会接触到黑线,当小车遇到正面障碍时时,2号位置的红外对管进行障碍判断,如果已遇到障

12、碍物,则命令小车左转;如果小车左面遇到障碍物,则1号管输出低电平信号,单片机接收信号,控制小车右转;若右面遇到障碍物,则2号管输出低电平,单片机接收信号,控制小车左转;如果前面和左面同时遇到障碍物,小车右转;若前面和左面同时遇到障碍物,小车左转。图4-3 黑白对管传感器图图4-4 LM339N传感器信号放大电路4.3 电机驱动电路设计在本设计系统中,。L293D提供双向驱动电流高达600毫安,电压是从4.5 V至36 V的。两个设备是专为驱动等感性负载继电器,电磁阀,直流双极步进和马达,也可以给其他高电流高电压提供电源负载。兼容所有的TTL输入。每个输出都是推拉式驱动电路,与达林顿三极管和伪达

13、林源。启用1,2 EN驱动器和3,4 EN驱动器。当使能输入为高电平时,相关联的驱动器被启用和他们的输出处于活动状态,并在其输入端的同相。当使能输入为低,这些驱动器被禁用其输出关闭,在高阻抗状态用适当的数据输入端,每对驱动程序的形式一个完整的H桥可逆驱动器适用于电磁阀或电机应用。 图4-5 L293D引脚图真值表输入输出YAENHHHLHLXLZ图4-6 电机驱动电路图4.4 测速模块图4-7 测速元件原理图由于光电传感器对黑色和白色反射系数不同,使用主办方提供的码盘。将码盘固定在车轮上,当码盘随车轮转动时,光电传感器经过黑色时,发光二极管发出的光被黑色吸收,传感器内部三极管接不到反射信号,经

14、过白色时,发光二极管发出的光被三极管接收到输出端有信号输出,当码盘随车轮转动时光电传感器轮流经过黑色和白色,便产生一个个脉冲。产生的脉冲经过外部中断再经计数器计数,通过计数值可计算出车轮行走的距离,通过定时计数器来计时间,算出实时速度,即完成了测速。第五章 软件总体设计5.1 电机驱动算法电机驱动算法在本系统中有着重要的作用,小车在寻迹过程中会根据光电传感器检测到路面状况的输入信号即时调整移动策略,以实现小车的移动。在移动过程中,小车会遇到几下集中情况:前进,左转,右转和停止。小车为双轮驱动,有两个电机控制,每个电机分别可以控制速度和转向。下面就速度和转向问题分别讨论。小车速度控制:电机的转速

15、由使能端输入的平均电压调节,而平均电压可由定时器0 产生的PWM 信号的占空比来调节。定时器0 工作在具有自动重装初值的工作模式2,初值为0,即每256us 定时器0 产生一次中断。在定时器0的中断服务子程序里面有一个对中断次数进行计数的变量,每次中断时计数变量的值会做加1 处理,当计数变量的值大于等于50 时清零。一个周期的PWM 信号就在计数变量从0 变到50 的过程中产生,也即PWM 信号的周期是50*256us,相应的PWM 信号的频率约为78Hz。为了控制电机1 和电机2PWM信号的占空比,设置了两个变量a,和b,这两个变量的值可以作为控制电机移动函数的参数控制电机的速度。规定当a

16、的值小于技术变量时电机的使能端输出1,反之输出0,这样就可以改变PWM 信号占空比,控制电机的转速了。小车转向控制:小车移动中前进比较容易控制,只要让两个电机同时正转就可以了。控制小车转向时有两种策略,第一种是一个电机正转而另一个不转,第二种是一个电机正转而另一个反转。在测试中我们发现采用第一种方法当小车运动时,运动一侧的轮子会带动不运动一侧的轮子迫使小车继续运动。所以我们采用了第二种控制小车转向的方法。经过设计比对后,编出小车行驶时的子程序:前进子程序:void qianjin(void)P1=0x55;左转子程序:void zz(void)P1=0x5a;右转子程序:void yz(voi

17、d)P1=0xa5;停止子程序:void tz(void)P1=0x00;因此在主函数判断后直接调用子程序就可以控制小车行驶。5.2 寻迹算法本系统中在小车的前方安装了4个黑白对管,具体安装位置如图3-1 所示。光电传感器当检测到黑线时会返回数字信号1,当检测到白线或颜色较浅时会返回数字信号0,系统中根据4 个光电传感器返回的数字信息就可以知道小车当前运行的位置,信号经过单片机处理后会控制两个电机进行速度和方向的调整从而控制小车在既定轨道上前行。4 个光电传感器的输出端分别接在单片机的P2.3P2.0。,然后在根据具体状态决定下一步小车的移动策略。移动策略见第四章第2节。循迹左管5定义的端口为

18、P2.0,右管为P2.1。定义一个变量pan代表P2口,令zhangai=0x03&pan,则会有以下逻辑:zhangai0x000x010x020x03方向前进右转左转停止5.3 测速算法在小车的右侧后轮旁安装有一个光电传感器,车轮内侧有一个孔洞的光电码盘。光电传感器的输出接到了外部中断P3.5 端,车轮转动带动光电码盘转动,使光电传感器状态产生变化,使P3.5端电平变化,产生中断。黑白之间的转换会使光电传感器状态发生0 /1 变化,测速时记录下在一秒内车轮转过的圈数,因为车轮的周长已经事先求得,由此就可以求得小车的速度。第六章 感想经过9天的努力,我的终于完成了这个作品,虽然还存在不足,但

19、是我也非常高兴,因为我们通过自己的动手努力做出了品。对系统最初的知之甚少的茫然状态到现在基本把握系统各模块功能和运转情况的状态,学到了很多知识,这与老师和学长指导师分不开的。此次通过做小车让我知道了,做任何事之前都要做好充分的准备,对事件的整体有个充分的认识,做事要戒骄戒躁,不能急于求成,要细心的做好每个细节,当你把整件事的各个模块做好了之后,那你就已经成功了。最后感谢老师和学长的帮助,让我更加有信心,还要感谢此次课程设计的机会,为我们提供了一个实验的平台,给我们提供一个自己动手的机会,通过此次智能小车的设计,我们从中学到了很多东西,尤其对我们这些对硬件知识了解很少的人来说更是获益良多。通过这

20、此动手实践为我的以后做电子设计积累了经验,相信我们会在电子设计之路上走的越来越远。附件:#include #define uchar unsigned char#define uint unsigned int#define pan P2sbit zuo1=P11;sbit zuo2=P16;sbit you1=P12;sbit you2=P13;sbit en=P17;sbit p3_5=P20;sbit p3_6=P21;sbit p3_7=P22;sbit tz=P24;uchar i,j,zhangai;uint a,b;/子函数声明/void qianjin();/前进void zz

21、();/左转void yz();/右转void ht();void delay();/延时void zhuan();void tingzhi();/uchar zuai();void main(void) P2=1; while(1) zhangai=0x07&pan; switch (zhangai) case 0x00: ht(); break; case 0x01: zz(); break; case 0x02: qianjin(); break; case 0x03: zz(); break; case 0x04: yz(); break; case 0x05: zz(); break

22、; case 0x06: yz(); break; case 0x07: qianjin(); break; default: break; if(tz=1) tingzhi(); en=1; delay(); tingzhi(); delay(); void tingzhi(void) zuo1=0; zuo2=0; you1=0; you2=0;void qianjin(void) zuo1=0; zuo2=1; you1=1; you2=0;void zz(void) zuo1=0; zuo2=0; you1=1; you2=0;void yz(void) zuo1=0; zuo2=1;

23、 you1=0; you2=0;void ht(void) zuo1=1; zuo2=0; you1=0; you2=1; void zhuan(void) zuo1=0; zuo2=1; you1=0; you2=1; /*uchar zuai(void) zhangai=0xE0&pan; return zhangai; */void delay(void) for(i=0;i=30;i+) for(j=0;j=100;j+) void Timer0Cofig(void) TMOD = 0x01; /定时器0选择工作方式1 TH0 = 0xFC; /设置初始值,定时1MS TL0 = 0x17; EA = 1; /打开总中断 ET0 = 1; /打开定时器0中断 TR0 = 1; /启动定时器0 void Timer0() interrupt 1 TH0 = 0xFC; /设置初始值 TL0 = 0x17; Time+; Time1+; if(Time1=10) Time1=0;

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

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