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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(哈尔滨工程大学本科生毕业论文.doc)为本站会员(wj)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

哈尔滨工程大学本科生毕业论文.doc

1、学 号01081237密 级 哈尔滨工程大学本科生毕业论文遥控小汽车的设计研究 院(系)名称:信息与通信工程学院 专业名称:电子信息工程 学生姓名:张洪生 指导教师:付永庆 教授 2005年6月哈尔滨工程大学本科生毕业论文哈尔滨工程大学本科生毕业论文遥控小汽车的设计研究2005年6月摘 要根据题目要求,本设计采用2片AT89C52单片机构成主从式的控制系统,双机采用串行口进行通信。红外遥控部分采用遥控车模专用编、解码芯片TX-2/RX-2,提高控制的可靠性;同时,在遥控发射端加入了用凌阳61板做的语音识别系统,能够完成语音遥控功能。采用红外传感器进行里程检测;超声波传感器进行障碍识别;感光电阻

2、辅以步进电机控制的转动机构进行光源方向的检测,并能用软件控制小车行驶到光源附近。采用步进电机对小车的转向进行精确的控制,同时用红外传感器对转向的角度进行校正。此外,采用四位LED数码管和若干LED发光二极管显示时间、行进的里程以及小车的各种状态;采用AT24C08串行EEPROM记录小车的行驶轨迹,并能按照所记录的轨迹自动行驶。本次设计基于完备的软硬件系统,很好的实现了小车语音遥控、任意曲线行驶、路线记录与重放、自动查找光源、自动避障,里程统计并发出指示信息等功能。关键词:单片机;超声波传感器;红外遥控;语音识别;凌阳61板ABSTRACTAccording to the topic, my

3、design needs to adopt two AT89C52 to form a control system of principal and subordinate. The communication between the two MCU is to adopt the serial port. Meanwhile, launch end join with insult male genital 61 sound recognition system that board make remotely, can finish the remote control function

4、 of the pronunciation, and it adopts the infrared sensor to measure the mileage; The ultrasonic sensor carries on the obstacle to discern; Sensitization resistance complement in order to walk into whom electrical machinery control rotate organization carry on measuring, direction of the light source

5、, The small car can go to the adjacent place of the light source with the software .The design adopts serial EEPROM of AT24C08 to write down the orbit of the car , and can repeat the route automatically which has been recorded.The Design is on the basis of the complete software and hardware system,

6、and the small car has the function of sound remote control, following any curve, recording the route where it has gone, finding out the light source, etc Keywords: MCU; AT24C08; sensor; SPCE061A目 录第1章 绪论11.1概述11.2设计要求及主要功能介绍11.2.1 手动控制功能21.2.2 自动寻找光源功能21.2.3 超声避障功能21.2.4 记录路线与重放路线功能21.2.5 声控功能31.2.6

7、 其他功能31.3 MCS-51系列单片机简介31.4凌阳SPCE061A精简开发板简介5第2章 系统总体设计62.1系统功能模块的划分62.2单片机数目的选定62.3系统原理框图72.4系统软件主要特色72.4.1软件分层结构82.4.2多任务结构82.4.3消息驱动结构132.5本章小结15第3章 各模块的详细设计163.1 红外遥控模块的设计163.1.1 遥控模块的功能需求163.1.2 编解码芯片的选型163.1.3 遥控模块原理图163.1.4 遥控电路与语音识别模块的连接183.2 数码管、发光二极管显示模块的设计183.2.1 多位数码管扫描显示原理183.2.2 工作状态指示

8、灯及转向灯的设计193.2.3 显示模块电原理图193.2.4 显示任务的软件设计203.3 声音提示功能的设计203.4 前轮转向模块的设计213.4.1 前轮转向的机械结构设计213.4.2 前轮转向中点校准功能的设计223.4.3 步进电机驱动芯片223.4.4 前轮转向任务的软件设计223.5 后轮驱动模块的设计243.5.1 直流电机驱动芯片L298N243.5.2 后轮驱动任务的软件设计253.6 里程检测模块的设计253.6.1 探头的选型与安装253.6.2 软件消抖与硬件消抖的比较263.6.3 里程检测任务的软件设计263.7 超声测距模块的设计273.7.1 超声测距的理

9、论依据273.7.2 超声发射电路273.7.3 超声接收电路283.7.4 超声测距任务的软件设计293.8 光源方向探测模块的设计303.8.1 旋转机构设计303.8.2 亮度检测电路的选型与设计313.8.3 寻找光源方向任务的软件设计323.9 行驶路线的记录与重放模块的设计333.9.1 该模块的功能概述333.9.2 AT24C08串行EEPROM介绍333.9.3 存储记录的格式333.9.4 手动模式下记录行驶路线功能的软件设计333.9.5 重放行驶路线功能的软件设计343.10 双机串行通信模块的软件设计353.10.1 通信方式的选型353.10.2 双机串行通信的软件

10、设计353.11 语音识别功能的设计363.11.1 凌阳语音压缩算法373.11.2 语音识别模块的软件设计373.12 本章小结37第4章 系统软件的设计394.1 单片机的C语言程序设计简介394.2 系统的三种工作模式394.3 手动模式的设计404.4 自动寻找光源模式的设计404.4.1 功能分析404.4.2 寻找光源的策略414.4.3 自动寻找光源的软件设计414.4.5 该功能模块存在的一些问题414.5 走数字及路线重放模式的设计444.6 本章小结44第5章 系统的组装、调试和测试455.1 系统的组装、调试455.2 遥控距离的测试455.3 时间显示功能的测试455

11、.4 里程显示功能的测试465.5 超声测障碍功能的测试465.6 走数字功能的测试465.7 行驶路线记录与重放功能的测试475.8 自动寻找光源功能的测试475.9 语音识别功能的测试475.10 本章小结48结论49致谢50参考文献51附录52哈尔滨工程大学本科生毕业论文第1章 绪论1.1 概述单片机以其强大的控制能力已经被广泛应用于诸多领域,配以各种接口传感器可以实现系统的智能化。无论是在工业控制领域、医疗卫生领域、还是在国防军事领域、航天航空领域,微控制器都起着举足轻重的作用。从最初的8位控制器到现在的16位、32位控制器都还有很大的发展和应用空间。目前市场上已有很多种用超声波传感器

12、制作的产品,在汽车电子领域,用超声波传感器做的倒车雷达可以提高汽车行驶的安全性。对汽车驾驶员来说车身后方是一个视线的“死区”,倒车时得非常小心,倒车雷达的出现就解决了这一问题,当车身后方有障碍时能及时发出警告。语音识别技术也日趋完善,在机器人领域,要想用语言和机器人“交谈”,首先就要解决语音的识别问题。可以用语音识别技术做成电话声控拨号、声控家电、儿童玩具等。语音识别技术还有待于进一步的发展。本设计中采用凌阳61板做的声控系统可以用语音控制小车的前进、后退、左转、右转、停止。1.2 设计要求及主要功能介绍根据题目要求,本设计需要完成的以下几项功能:(1)红外遥控功能,启停、自动或手动;(2)前

13、或后直线行进;(3)任意曲线行进;(4)测距避障功能;(5)显示行进距离;(6)精确查找光源。(7)无线视频传输(8)声音控制系统(9)路线记录与重现路线另外,在设计过程中又扩展了一些功能,比如声控功能、记录与重放行驶路线功能等。1.2.1 手动控制功能在手动控制模式下,可以控制小车的前进、后退、左转、右转、停止、漏粉、显示时间、显示里程,若在行驶过程中遇到障碍小车将自动停止,并发出声光警告信号。同时,在转弯或后退时相应的转向灯和倒车灯会闪烁发光,小车接收到一个按键命令后除了执行相应的动作外蜂鸣器还会响一声,以告知操作者已收到了命令。在手动控制模式下,还设置了一个记录行驶路线的开关。操作者按下

14、这个开关后,先选择这一次记录的路线的名称,此后对小车的控制命令将被存入EEPROM中,直至操作者再按下一次这个开关结束这次路线的记录。记录的路线可在重放路线模式下重放。1.2.2 自动寻找光源功能在自动寻找光源模式下,小车可以自动查找光源的方向,然后自动行驶到光源的附近。在自动行驶过程中若遇到障碍,小车将自动采取一些避障措施避开障碍。此外在寻找过程中操作者若按下“显示模式切换键”数码管显示的内容将在时间和里程之间切换,若按下“停止”键,小车将立即停止寻找光源,然后等待切换到其他模式。1.2.3 超声避障功能在手动模式、自动寻找光源模式、重放路线模式下超声测障模块始终工作。在前进时发现前方有障碍

15、,或在后退时发现后方有障碍小车都将立即停车,并发出声光报警信号告知操作者。障碍检测的距离调整在20厘米内,即只有在20厘米之内有障碍时小车才会做出避让动作,在这个范围之外的障碍小车不予处理。1.2.4 记录路线与重放路线功能在手动模式下打开记录路线开关,开始记录路线;在重放路线模式下选择重放的路线,开始重放指定的路线。在重放过程中遇到障碍或操作者按下“停止”键将结束本条路线的重放,等待选择下一条需要重放的路线或选择另外一种模式。1.2.5 声控功能本设计采用凌阳61板做了声控系统。打开遥控器电源后开始训练语音命令,由于受到单片机内的SRAM容量的限制只能录制5条语音命令,分别是前进、后退、左转

16、、右转、停止。当识别出某条语音命令时和直接按下相应的按键等价,红外发射电路都会给小车发出相应的命令。操作者在使用声控功能时有语音提示音,所以操作很简便、快捷。1.2.6 其他功能小车还具有走数字功能,即小车可按照事先由程序设置好的路线行走,并洒下粉末,显示出一个数字。除此之外,小车上还有左、右转向灯,倒车灯,障碍指示灯,模式指示灯,蜂鸣器报警电路,小车状态一目了然。1.3 MCS-51系列单片机简介MCS51单片机的基本结构如图1.1所示,其基本结构包括: 8位CPU; 片内震荡器及时钟电路; 32根I/O口线; 外部存储器ROM和RAM寻址范围各为64KB; 2个16位定时器/计数器; 5个

17、中断源,2个中断优先级;时钟电路ROMRAM定时器/计数器CPU并行接口串行接口中断系统TXDRXDINT0INT1P0P3T0T1图1.1 8051单片机的基本结构 全双工串行口; 布尔处理器。8051单片机的存储器结构特点之一是程序存储器和数据存储器分开,并有各自的寻址机构和寻址方式。这种结构的单片机称为哈佛结构单片机。8051单片机在物理上有四个存储空间:片内程序存储器和片外程序存储器;片内数据存储器和片外数据存储器。8051单片机有4个8位的并行接口,记作P0,P1,P2和P3,共32根口线,实际上它们就是SFR中的4个。这4个接口特性上主要差别是P0,P2和P3都还有第二功能,而P1

18、口只能用做I/O口。4个口的驱动能力也是不相同。P1,P2和P3都能驱动3个LS TTL门,并且不需外加上拉电阻就能驱动MOS电路。P0能驱动8个LS TTL门,但驱动MOS电路时,若作为地址/数据总线,则可以直接驱动;而作为I/O口时,需外接上拉电阻才能驱动MOS电路。1.4凌阳SPCE061A精简开发板简介凌阳61板是采用凌阳16位单片机为核心的开发系统,具有DSP处理功能和语音处理功能。利用该开发板可方便的实现语音的录、放、识别等功能。SPCE061A凌阳16位单片机的结构框图如图1.2所示: 图1.2 SPCE061A结构框图SPECE061A的CPU工作速率为0.32MHZ-49.1

19、52MHZ;SRAM容量为2K字;程序存储器容量为32K字FLASH,使用凌阳音频压缩算法SACM_240方式(2.4Kbps),能容纳240秒语音数据;有两个16位的并行I/O接口;还具有ADC、DAC、麦克风放大器和AGC电路等。由于IDE自带了很多有关语音录放、语音识别的API函数,所以采用61板来做声控系统比较方便。第2章 系统总体设计2.1系统功能模块的划分按照设计要求,系统可以分为以下几个基本功能模块:遥控模块、显示模块、前轮转向模块、后轮驱动模块、超声测距避障模块、寻找光源模块、记录与重放路线模块、里程检测模块等。有些模块的功能是由硬件完成,有些模块的功能由软、硬件配合完成,有些

20、模块则是由软件、硬件、机械三部分共同完成。将系统拆分成以上的这些基本功能模块后,再根据各个模块所要完成的功能分别去设计,也就是按照“逐步求精”的思想去设计本系统,这将使设计工作细化,也有助于制定进度安排。2.2单片机数目的选定由于系统需要完成的功能较多,CPU的负荷也较重,再加之单片机内的定时器/计数器、中断、I/O口等资源有限,如果选用一片单片机必将会给系统的设计带来一些困难。所以可以考虑采用两个单片机构成主从式的结构,各分担一部分控制与运算功能,这样两个单片机可同时工作。所谓主从式结构是指从单片机片机根据主单片机发出的命令来完成某项功能,并且把结果报告给主单片机,这样的结构在某种程度上可以

21、简化系统。主单片机负责红外遥控接收、显示、小车的运动以及处理遥控命令等功能;从单片机则主要负责超声测距、检测光源方位这两项比较费时的功能,在探测到障碍或探测到光源时将有关信息报告给主单片机进行处理,并由主单片机来采取相应的措施。本设计中采用了两片AT89C52单片机,通过串行接口通信。因为两个单片机之间的距离很近,所以串行口可以工作在较高的波特率上,可以让串行口工作在方式2,其特点是其波特率高,并且波特率可以直接从晶振32分频、或64分频而得到,不需要占用定时器资源。2.3系统原理框图系统原理框图如图2.1所示:按键主控单片机从单片机遥控接收显示模块里程检测路线记录漏粉控制前轮转向超声探测障碍

22、光源方向探测后轮驱动串行通信遥控发射语音识别图2.1 系统原理框图2.4系统软件主要特色软件在一个智能系统中扮演着举足轻重的作用,软件设计的好坏直接关系着整个系统的性能。目前已经有很多种嵌入式实时多任务操作系统,如:Linux、RTX51及UC/OS等,可以更有效的利用系统的各种资源,简化编程,缩短开发周期。签于本系统采用AT89C52单片机为控制器,本身的各种资源都很有限,引入一个操作系统代价太大,所以考虑直接来优化系统的软件结构,同样可以达到“多任务”、“实时”等要求。2.4.1软件分层结构为了便于编程,将逻辑控制层和具体的硬件相分离开是很有必要的。硬件驱动层的软件负责直接操作硬件,并且给

23、上层的软件提供一定的接口,这样有助于上层的软件实现更复杂的功能,并且系统的硬件有所改动时也只需改动相应的驱动模块即可。逻辑控制层硬件驱动层硬件设备置、取全局变量图2.2 软件分层结构示意图操作硬件本系统中的LED显示模块、前轮转向模块、后轮驱动模块、AT24C08存取模块、寻光源转动机构都做成了一些独立的模块,并且给外部提供了一些接口函数,来实现对这些硬件或机械部件的高级操作。分层结构如图2.2所示:软件的分层结构是很多系统中普遍采用的一种软件结构,比如TCP/IP协议就是一种典型的分层结构。WINDOWS、LINUX等系统中也几乎把所有的系统硬件进行了抽象,这样上层的软件就不必关心硬件的细节

24、,可以调用相应的模块提供的服务即可,这样可把更多的精力放在高级功能的实现上。2.4.2多任务结构为了充分利用单片机的CPU,内存等资源,本系统中引入了多任务的软件结构,即从宏观上来看单片机同时在做多件事情。分析一般的多任务系统的软件结构,系统的核心是任务调度器,在适当的时候任务调度器将保存当前任务的现场,并且恢复将要运行的任务的现场,并让其投入运行。简单的说,一般的多任务系统是任务调度器循环的调用各个需要执行的任务,进而可以更有效的利用系统的各种资源。从这里得到启发,可以用定时器每隔一定的时间中断一次,在中断处理函数中依次调用一次各个任务所对应的函数,并且各个函数都能在一个较短的时间内返回,这

25、样在某段时间内,各个任务所对应的函数都能够被执行到,就好像多个任务同时运行了。还有一点需要说明,就是各个任务是由一些函数和一些静态变量组成。函数由定时器中断处理函数定期的调用一次,并且有个前提就是这个函数能够在较短的时间内返回,否则其他任务将不能及时的被调用到,也就达不到“实时”这一要求。静态变量保存该任务的各种状态,并且其他模块和该系统复位初始化主任务设计成无限循环结构定时器0中断处理函数任务1任务2任务3任务n图2.3 多任务结构示意图任务进行通信也是通过置取这些静态变量来实现的。本系统中软件的多任务结构如图2.3所示:可以说定时器中断处理函数就是本设计中多任务的核心,即任务调度器。以下是

26、定时器0中断处理函数的程序清单:/定时器0中断处理函数/每4毫秒中断一次/产生时钟节拍/负责维护一个系统时间变量和任务调度/#define TIME_OVERLOAD 3960/定时器计数初值/记录时间的结构的定义typedef struct uchar t_ms;/毫秒数0-99 uchar t_100ms; /100毫秒数0-9 uchar t_sec;/秒数0-59 uchar t_min; /分钟数,0-255TIME;TIME time; /记录系统时间的全局变量void timer0(void) interrupt 1 /重装定时器0的计数初值 TH0=(65536-TIME_OVERLOAD)/256;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2