机器人避障功能毕业论文.docx

上传人:b****4 文档编号:12033852 上传时间:2023-04-16 格式:DOCX 页数:77 大小:982.25KB
下载 相关 举报
机器人避障功能毕业论文.docx_第1页
第1页 / 共77页
机器人避障功能毕业论文.docx_第2页
第2页 / 共77页
机器人避障功能毕业论文.docx_第3页
第3页 / 共77页
机器人避障功能毕业论文.docx_第4页
第4页 / 共77页
机器人避障功能毕业论文.docx_第5页
第5页 / 共77页
点击查看更多>>
下载资源
资源描述

机器人避障功能毕业论文.docx

《机器人避障功能毕业论文.docx》由会员分享,可在线阅读,更多相关《机器人避障功能毕业论文.docx(77页珍藏版)》请在冰豆网上搜索。

机器人避障功能毕业论文.docx

机器人避障功能毕业论文

摘要

80C52单片机是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。

这里介绍的是如何使用80C52单片机来实现智能小车的设计,该设计是结合科研项目而确定的设计类课题。

本系统以设计题目的要求为目的,采用80C52单片机作为控制核心,采用红外传感器检测道路面上的障碍,控制智能小车的自动避障,快慢速行驶,按键开车停车,并可以实现自动记录行驶时间,自动避障,自动寻线功能。

最终完成智能车设计需要综合单片机编程、模数电、Protel设计、电路焊接、自动控制算法设计等多方面内容。

整个系统的电路结构简单,可靠性能高。

实验测试结果满足要求,本文着重介绍了该系统的硬件设计方法及测试结果分析。

采用的技术主要有:

(1)通过编程来控制小车的速度;

(2)传感器的有效应用;

(3)显示译码管的使用。

关键词:

80C52单片机;光电检测器;PWM调速;智能小车

 

Designandcreateanintelligenceelectricitymotivesmallcar

 

Abstract

80C52isa8bitsinglechipcomputer.Itseasilyusingandmulti-functionbenefitlargeusers.ThisarticleintroducestheUESTCgraduationdesignwiththe80C52singlechipcomputer.Thisdesigncombineswithscientificresearchobject.Thissystemregardstherequestofthetopic,adopting80C52forcontrollingcore,infraredreflectionsensorfortestthehinder.Itcanruninahighandalowspeedorstopautomatically.Italsocanrecordthetime,distanceandthespeedorsearchinglightandmarkautomaticallytheelectriccircuitconstructionofwholesystemissimple,thefunctionisdependable.Experimenttestresultsatisfytherequest,thistextemphasizesintroducedthehardwaresystemdesignsandtheresultanalyze.

Theadoptionoftechniqueas:

(1)Speedcontrolbyprogramtheengine;

(2)Efficientapplicationofthesensor;

(3)Theadoptionofthenewdisplaychip.

Keywords80C52singlechipcomputer;lightelectricitydetector;PWMspeedadjusting;Electricitymotivesmallcar

第一章引言

随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。

全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究,可见其研究意义重大,但是,各大智能车比赛项目或活动大都是在预先设计好的赛道上进行的,在实现智能避障时,却显得乏力。

本设计就是在这样的背景下提出的,本题目是结合科研项目而确定的设计类题目。

设计的智能电动小车要求能够实时显示行驶时间、速度、里程,具有自动寻迹、避障功能,可程控行驶速度、精确定位停车。

根据题目的要求,确定如下方案:

在现有玩具电动车的基础上,外加光电、红外传感器,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动小车的智能控制。

这种方案能实现对电动小车的运动状态进行实时控制,控制灵活、可靠、精度高、易于调试和维护,可以根据不同环境,不同参数更改程序代码,调整硬件结构,使小车满足要求的指标。

本设计采用MCS-51系列中的80C52单片机。

以80C52为控制核心,利用红外传感器检测道路上的障碍,控制电动小车自动避障,快慢速行驶,并可以自动记录时间、行驶里程,即时显示速度,自动循迹和寻光功能。

80C52是一片8位的微控制器,作为第三代微控制器,它的易用性和多功能性能满足大多数场合的要求。

第三代单片机包括了Intel公司发展MCS-51系列的新一代产品,如8xC152、80C51FA/FB、80C51GA/GB、8xC451、8xC452,还包括了Philips、Siemens、ADM、OKI、Harria-Metra、Atmel等公司以80C51为核心推出的各具特色、与80C51兼容的单片机。

新一代的单片机的最主要的技术特点是向外部接口电路扩展,向更完善的控制功能扩展,能与常用的外部接口功能单元如A/D、PWM、PCA(可编程计数器阵列)、WDT(看门狗监视定时器)、高速I/O口、计数器的捕获/比较逻辑等兼容。

第三代微控制器中,在总线方面最重要的进展是为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。

Philips公司还为80C51系列的8xC592单片机引入了具有较强功能的设备间网络系统总线CAN(ControllerAreaNetworkBUS)。

这些完善的总线结构,为系统的扩展与配置打下了良好的基础。

单片机发展到这一阶段,表明单片机已成为工业控制领域中普遍采用的智能化控制工具,小到玩具、家电行业,大到车载、舰船电子系统,遍及计量测试、工业过程控制、机械电子、金融电子、商用电子、办公自动化、工业机器人、军事和航空航天等领域。

为满足不同的要求,出现了高速、大寻址范围、强运算能力和多机通信能力的8位、16位、32位通用型单片机,小型廉价型、外围系统集成的专用型单片机,以及形形色色各具特色的现代单片机。

本设计采用80C52RC芯片作为控制单元,80C52采用CMOS工艺,功耗很低。

该设计具有实际意义,其无人驾驶的特性可以应用于考古、地震救援、医疗器械、自动搬运等许多方面,尤其是在足球机器人研究方面具有很好的发展前景;在考古方面应用到的超声波传感器进行检测,所以本设计与实际结合,应用性较强。

第二章方案设计与论证

智能车制作是一个涵盖电子、电气、机械、控制等多个领域和学科的科技创新活动。

简单点来说可以将其分为硬件电路(包括电源、MCU控制部分、电机驱动、传感器)、机械、算法三方面的设计。

根据题目的要求,确定如下方案:

在现有玩具小车的基础上,加装光电传感器,实现对电动小车的速度、位置、运行状况的实时测量,并将测量数据传动通过信号流的方式传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动小车的智能控制。

这种方案能实现对电动小车的运动状态进行实时控制,控制简单、灵活、可靠、精度高,测量障碍的距离可调整,其整体模块均可以通过软件或硬件的调整来满足各种场合的需求。

2.1微处理器(MCU)和场可编程逻辑门阵列(FPGA)的选择

方案一:

场可编程逻辑门阵列作为控制核心

方案二:

微处理器作为控制核心

场可编程逻辑门阵列的优缺点:

·高速性。

作为信号高速处理的标准模块,拥有比MCU高出三个量级的频率,这意味着FPGA可以拥有高速的信号处理能力,速度高到可以实现将信号进行FFT变换,实现数字滤波,最后再进行FFT变换还原信号,这样大量的数据处理需要高速的数字器件完成。

所以目前FPGA在通讯领域发挥着其不可替代的作用。

·稳步发展的技术。

FPGA作为更新的技术,在几年之内会变得更加快速、更加便宜,此技术的发展空间和发展潜力巨大。

·大量的端口。

相对于MCU的32个IO口,FPGA拥有高出MCU一个量级的端口数目,这为以后更好的技术的出现提供了硬件扩展支持,设计者在进行系统的初始设计期间,就能够考虑到并适应预期的技术发展,并提供额外的扩展端口为技术升级做准备。

FPGA拥有的端口数为256、512、1024或者更多。

·严谨。

作为严谨的语言,FPGA中变量和信号有所区分,不同进制之间区分,这样虽然降低了潜在的错误风险,但是,这会使设计变得更加复杂。

·大量的警告和错误。

以xilinx的ISE为例,即时程序设计正确,在综合的时候,也至少有十处警告,这说明了技术的不成熟,有待改进和发展。

·支持的语言模块太少。

数字设计中,VHDL工具甚至不能很好地综合for循环(可能造成无效或不可综合),将for循环的每一次循环用单独的器件实现,每个i值生成一组器件,以此来解开for循环并实现电路,这样会造成器件的大量浪费,这将是以一个极其昂贵的解决方式。

不能运用mod操作符求余,因为这个操作需要除法,多数VHDL工具不能综合出触发电路,除了二位除法(一次右移操作)等简单除法。

与之相比,微处理器拥有成熟的技术,设计完善,编程实现时可以做到零错误零警告,支持比硬件描述语言(VHDL)更好的C语言。

设计简单,设计程序简洁有效,出错率大大降低。

由寄存器组实现数据存储记忆,与寄存器和触发器存储数据相比更加有效,支持自动数据转换,设计更加简单。

比如clk时钟信号,在FPGA中,需要为时钟信号专门写进程,需要专门分配端口,再使用分频得到想要的频率,在MCU中,时钟信号是所有器件的驱动时钟,对于计时,仅仅需要打开寄存器让寄存器计数即可。

并且在数字设计中对MCU程序的设计是逻辑的,不需要特别的数学技能。

而不像对电容器、晶体管或其他的元器件那样,要求对模型进行计算才能了解和认识他们的内部特性和工作过程。

事实上,微处理器有很多的优点:

·易于设计。

MCU支持各种进制之间的自动转换,设计时不用考虑具体信号进制,在硬件实现时,MCU自动将数值进制转换成为所赋值的信号的进制,所以,设计时可以灵活写十六进制数据,对硬件更有效的控制。

而不像FPGA那样,需要对进制转换单独写进程或者调用函数实现。

能使用各种高级语言,比如,使用mod函数实现取余操作。

·灵活性和功能性。

C语言本身支持直接对硬件进行操作,例如对内存地址的操作、位操作等。

C语言作为一种高级语言,对硬件的支持并不差于汇编语言,这个特性能在设计单片机程序时带来很大便利,在稍后的设计部分中可见,单片机对C语言的兼容性将C语言的优点继承了下来。

在这方面,VHDL相对薄弱。

单片机中更高层的功能,如微处理器、存储器和输入输出控制器,在使用这些器件时,数字设计者不用对最复杂而关键的片上组件及其互连技术进行设计,因为这已经由器件制造商设计出来并测试过了。

这些都体现了微处理器的灵活和高效。

·可编程性。

如今大多数数字设计都是采用语言进行编程来完成的。

这些语言可以将数字电路的功能进行规格化或者模型化。

在构建任何真实硬件之前,要使用编译器和模拟器来测试硬件模型的运行状况,然后才将模型用特别的组件技术实现电路。

这就使得电路的设计具有相同性,对于同样的电路,只用改变E2PROM的程序就可以实现功能的改变,从而带来了极大的便利。

微控制器这种集成电路在它们出厂后具有逻辑功能的编程能力。

这些器件能够通过重新编程来设置其功能,这就意味着,如果发现了设计中的差错,不需要在物理上替换器件或重新接线,就可以排除错误。

也意味着,设计者可以自行设计出自己所想要的芯片。

用同样的电路,写入不同的程序,系统就可以完成不同的功能,加上E2PROM电可擦除芯片的诞生,设计者们就不用专门为一种功能去设计一种电路,不用自己动手搭建电路,就像在三十年前他们的教授所做过的那样。

·快捷性。

如今,MCU的处理速度很快,对于时钟为11.0592MHZ的微处理器而言,12个时钟周期为一个机器周期,所以该MCU的频率大约为1MHZ,也就是说,一秒钟执行10^6条指令,执行一条指令的时间为1微妙。

对于F22战斗机而言,开加力时时速大约为M2.00,也就是680米每秒,单片机执行一次指令时,F22大约能飞行0.68毫米,所以,对于普通的智能小车而言,用单片机作为控制核心是完全可以胜任的。

·经济性。

单片机能够在一片芯片里提供大量的功能。

能够重复使用的电路可以被集成到单个芯片里,以很低的成本进行大量的生产,这样就可以将那些计算器、数字手表、音乐生日卡之类的不同功能的器件集成在一起了。

本设计因为需要直接对硬件进行操作,需要简易灵活的程序编写,所以笔者选择单片机作为控制核心。

2.2直流电机和步进电机的选择

直流电机的工作原理:

直流电机的转子为三组呈60°的漆包线圈,在线端口焊接六个60°圆弧铜

片。

这些铜片构成换向片,两个弹性铜片靠在换向片两侧,作为供电电刷。

当电源通过电刷向漆包线圈供电时,线框中就会有电流流过。

直流电机的定子为一对磁极,由导磁良好的钢铁制成,磁极的磁力由一个U型永久磁铁产生,将磁极放置在漆包线圈两侧,形成磁场,漆包线圈处于磁场中。

当线圈通过电流时,三个线圈就会受到磁场的洛伦兹力,受力方向依照左手定理判断。

受到磁场的作用力的线圈会旋转,当旋转了60°后,原通电线圈断电,下一组通电线圈通电,使整个转子继续受到相同旋转方向的力,这就是直流电机的工作原理。

直流电机的优点和缺点:

·控制简单。

直流电机的控制相对于步进电机要简单,直流电机的两个接口加正电压时电机正转,加负电压时电机反转,易于控制。

·转速快。

直流电机的转速不受控制,所以外加电压时,直流电机一直处于最佳工作状态,无保留地发挥出其最大转速。

·成本低。

相对于步进电机,直流电机的成本更低,价格易于接受。

更重要的是,两个直流电机仅需要一片L298N芯片即可完成控制,所以,选择直流电机能使得电路更简单。

·无法控制转过角度。

所以对于速度的测试需要和外部传感器配合使用,增加了硬件的设计难度。

同时因为无法控制转过角度,所以无法通过软件精确控制直流电机的行驶距离。

步进电机的工作原理:

步进电机是一种将电脉冲转化为角位移的器件。

当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为步距角,它的旋转是以固定的角度一步一步运行的。

可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。

步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。

步进电机的优点和缺点:

·角度、转速可控。

在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。

这一线性关系的存在,使得步进电机只有周期性的误差而无累积误差。

所以在速度、位置等控制领域用步进电机来控制变的非常简单。

·控制较为复杂。

需要四个接口输入,所以如果使用步进电机,智能小车需要两个驱动轮,也就是八个接口,这就使得需要两片L298N芯片,使成本增加。

这样设计就需要额外增加步进电机的费用和另一片L298N芯片的费用。

·无法实现较高的速度。

步进电机的精确控制性决定了其扭矩较大,这样也使得步进电机趋向于驱动力而不是旋转速度,使得步进电机速度有所限制。

本设计中使用控制简单的直流电机,因为设计中创新的光线反射式避障不需要精确控制行驶距离,这样可以节约出步进电机和一片L298N芯片及其外部电路的成本。

2.3舵机和万向轮的选择

根据控制方式,舵机应该称为微型伺服马达。

舵机能够利用简单的输入信号转动到一个比较精确的角度,所以非常适合机器小车使用。

舵机简单的说就是集成了直流电机、电机控制器和减速器,并封装在一个便于安装的外壳里的伺服单元。

舵机内安装了一个电位器检测输出轴转动角度,控制板能根据电位器的信息能比较精确的控制和保持输出轴的角度。

这样的直流电机控制方式叫闭环控制。

舵机的工作原理是:

控制信号由接收机的通道进入信号调制芯片,获得直

流偏置电压。

它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。

最后,电压差的正负输出到电机驱动芯片决定电机的正反转。

当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。

总而言之,控制电路接收信号源的控制脉冲,并驱动电机转动;齿轮组将电机的速度成倍数缩小,并将电机的输出扭矩放大响应倍数,然后输出。

电位器和齿轮组的末级一起转动,测量舵机轴转动角度;电路板检测并根据电位器判断舵机转动角度,然后控制舵机转动到目标角度或保持目标角度。

舵机的控制信号为周期20ms,脉宽0.5ms-2.5ms之间的PWM信号,在20ms的周期中,输入脉冲宽度与舵机输出角度之间的关系:

0.5ms-90°

1.0ms-45°

1.5ms0°

2.0ms45°

2.5ms90°

可见,使用舵机可以获得精确的转角,这样的方式能提高机器小车的行驶

速度,但是,精确转角的方式使得机器小车要想转弯必须以要有一个固定的转角,要求小车的转弯路线为圆弧,小车不能原地转弯,且因为舵机需要用到定时器,而定时器本身在程序较复杂时中断时间不准确,所以舵机有控制不准的风险。

使用万向轮的优点在于转弯不需要转角,可以原地转弯,因为其不需要圆弧转向,所以万向轮可以精确控制小车的行进路线,缺点是无法精确控制转角。

本设计中采用万向轮的方式转向,因为万向轮是从动轮,两个主动轮和一个从动轮呈三角形分布,所以在平面上从动轮那个点的受力完全由两个主动轮给予,其转动方向和转动速度完全依靠于两个主动轮,使用简单有效,而且,使用万向轮的方式可以为单片机省下一个定时器。

2.4最终元器件选择

元器件选择:

E18-D80NK型光电反射式传感器3个、STC89C52RC型单片机1块、RS232芯片1块、11.0592M系统晶振1个、LED发光二级管2个、共阳七段数码管4个、蜂鸣器1个、L298N芯片1块、直流电机2个、电容电阻若干。

电容选择1uF和30pF,电阻选择1K和10K两种。

第三章硬件设计

3.1课题的方案论证

3.1.1主要任务

设计一台具有避障功能的智能小车。

该智能小车利用红外传感器检测周围障碍情况,用控制电机驱动电路来控制机器人的前进方向,以躲避障碍物。

用单片机作为控制核心,完成硬件和软件的设计。

3.1.2功能要求

(1)小车能够实现自动躲避在车前方,左方,右方的障碍物,达到智能的效果。

(2)状态和时间显示功能:

第一个数码管可以显示小车当前状态,第三个和第四个数码管可以显示小车实际行驶时间。

(3)按键转换功能:

小车在上电复位后,由独立按键1控制,按键1按下后,小车行驶,再次按下时,小车停止。

(4)报警功能:

小车在遇到障碍物时候进行蜂鸣器报警。

(5)障碍灯:

两个LED灯用于显示小车周围障碍物的状况。

3.1.3性能指标

(1)红外传感器的探测距离为10cm以上。

(2)红外传感器的响应时间小于1毫秒。

(3)智能小车遇到障碍物到做出反应的时间小于2毫秒。

(4)智能小车能够在直线,弯道,S型弯道,发卡弯道等完成无碰撞行驶。

(5)智能小车能够在放置零散障碍物的平面空间内行驶无碰撞。

3.2课题工作

一个单片机应用系统的硬件电路设计包含两部分内容:

一是最小系统设计,即设计微控制器能工作的最精简的电路,该设计方法固定,可以参考大多数单片机系统设计,设计完成后,单片机可以使用其内部的基本功能单元,如ROM、RAM、I/O端口、定时/计数器、中断寄存器等,单片机能正常工作,能按照程序控制其I/O端口。

二是扩展设计,在单片机内部系统无法完成需求工作时,选择适当的芯片,设计对应的外部电路,添加外围设备,如独立按键,LED灯、七段译码管、蜂鸣器、AD/DA转换器等,来完成需求功能。

3.3系统整体框图

图3-1系统整体框图

3.4电源模块设计

电源是整个系统稳定工作的前提,因此必须有一个合理的电源设计,对于小车电机部分的工作电源,要求在电池耗损时电压降低的情况下也能正常驱动电机,所以给电机供6V直流电压,使用四节五号电池串联供电,这样,即使存在电池耗损,整个电池盒的供电大于3V,这样的电压也足以驱动电机正常工作。

同时考虑到大电流器件可能会对单片机造成干扰,影响单片机的稳定运行,所以,本设计为单片机和电机控制芯片L298N这两块芯片单独供电,均采用四节五号电池串联供电。

3.5单片机最小系统设计

STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K可编程Flash存储器。

拥有8位CPU和可编程Flash,具有以下功能:

8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,最高运行频率35Mhz,6T/12T可选。

具体使用到的模块包括:

ADC模拟数字转换模块、定时器模块、PWM脉冲宽度调制模块、中断模块、I/O端口和实时时钟模块。

单片机是小车的控制中心,单片机最小系统的设计是小车正常行驶的前提,最小系统指的是能够保证单片机正常运行的最精简的硬件设计,如图3-2所示,为STC89C52RC单片机的最小系统参考电路图。

图3-2STC89C52RC单片机最小系统参考图

图3-2中的STC89C52RC单片机最小系统由以下几个部分组成:

1.晶振电路:

单片机要能正常工作必须设计一个外部的时钟源,这个时钟源由晶振电路产生,具体电路为图中的Y1、C2、C3部分,电容典型值为30pF,晶振典型值为12Mhz。

2.复位电路:

STC89C52RC单片机为高电平复位,也就是说RST(9)脚上只要有持续两个机器周期以上的高电平就能使单片机复位,上电复位的原理是利用电容充电的一段时间将复位脚拉至高电平,使单片机完成复位,C1可以选用1uF的瓷片电容,R1在电容充电结束后将复位脚拉至低电平,保证单片机的正常工作。

其中,单片机的十二个晶振周期为一个机器周期,微处理器在一个机器周期内能执行一条指令,所以,机器周期也称为指令周期。

3.ISP下载部分:

如图中的Header5X2部分就是下载接口,电路是根据标准的ISP下载线来设计的,与常用的并口下载线,串口下载线和笔记本用的USBASP下载线兼容,只需将下载线接口插到本接口上就可以向单片机烧写程序。

同时,ISP的下载接口在设计时应注意以下两点,否则会造成程序下载的失败。

1.下载线接口中的电源和单片机共用一个电源。

2.下载线接口中用到的P1.5到P1.7脚不能连接外部器件,如果要连接外部器件可以设计为可插拔的方式,防止影响程序的下载。

在本设计中,笔者将这三个端口用于传递三个光电传感器的反馈信号,所以在下载程序的时候,需要将这三个光电传感器停用,即将它们断电,否则,下载器会提示无法正常下载。

4.电源和地:

如图所示,单片机的二十管脚为GND,接地,四十管脚为VCC,接电源,同时注意将第三十一管脚拉高,三十一脚即EA脚为内外存储器的选择脚,由于本设计只使用内部存储器,因此需要将此脚连至高电平,否则单片机无法正常工作。

5.上拉电阻:

P0口与其他三组I/O口不同,P0口没有内部上拉电阻,因此如果需要驱动LED等外部器件时需要在P0口加上10K的上拉电阻,并且加外部上拉电阻的方式有助于增强端口的驱动能力。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

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

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