智能小车毕业论文完整版.docx
《智能小车毕业论文完整版.docx》由会员分享,可在线阅读,更多相关《智能小车毕业论文完整版.docx(29页珍藏版)》请在冰点文库上搜索。
智能小车毕业论文完整版
Documentserialnumber【UU89WT-UU98YT-UU8CB-UUUT-UUT108】
智能小车毕业论文完整版
学士学位论文
系别:
计算机科学与技术
学科专业:
计算机科学与技术
姓名:
@@@@
@@@
2011年06月
智能小车引导控制系统
的设计与实现
系别:
计算机科学与技术
学科专业:
计算机科学与技术
指导老师:
@@@
姓名:
@@@
@@@
2011年06月
智能小车引导控制系统的设计与实现
摘 要:
面对诸多恶劣的工作环境(如灭火、救援等),为了有效的避免人员伤亡,就需要采用智能小车去现场来完成相应的任务。
因此研究和开发智能小车引导控制系统具有十分重要的意义。
本系统采用STC89C51单片机作为核心控制芯片,设计制作了一款通过红外光电传感器检测路径信息、红外火焰传感器检测火源的智能寻迹灭火小车。
本系统由单片机控制模块、寻迹传感器模块、驱动电机模块、火源传感器模块、风扇模块、电源模块等组成。
实际应用表明,该小车可以在专门设计的场地上实现自主发现火源,自主识别路线,自主行进接近火源并灭火,最终完成灭火的任务。
关键词:
单片机小车引导控制传感器
Smartcarsguidecontrolsystemdesignandimplementation
Abstract:
Confrontedwithsomanybadworkingenvironment(suchasfirefighting,rescueetc),inordertoeffectivelyavoidcasualties,needtouseintelligentgobycarscenetocompleterelevanttasks.Therefore,theresearchanddevelopmentofintelligentcarguidecontrolsystemhastheextremelyvitalsignificance.ThissystemusesSTC89C51asthecorecontrolchip,designandmakeanewelectricsensordetectionbyinfraredsensorinformation,infraredflamepathofintelligenttracingtestfireextinguishingcar.Thesystemiscomposedofsingle-chipmicrocomputercontrolmodule,tracingsensormodule,drivemotormodule,ignitionsensormodule,fanmodule,powersupplymodule.Thepracticalapplicationindicatesthatthecarcanbeinaspeciallydesignedfieldonfire,torealizetheindependentfoundautonomousrecognitionroute,independentsourcesandmarchingclosetothefireextinguishing,finallycompletetask.
Keywords:
MicrocontrollerCarControlsystemSensors
引言
现在,随着科技的快速发展,国内外对小型智能系统的应用越来越广泛,种类也越来越多。
本题目就是结合有关科研项目而确定的设计类课题,所设计的智能寻迹灭火小车应能够实现自动发现火源、自动寻迹、自动前进接近火源并完成灭火任务的功能。
根据题目的要求,智能寻迹灭火小车控制系统采用一片STC89C51单片机作为本控制系统的主控芯片,硬件包括以下几个模块:
驱动电机模块、寻迹传感器模块、单片机控制模块、火源传感器模块、风扇模块、电源模块。
本设计采用了STC89C51单片机为智能小车核心控制部分,通过查询方式实现对小车的智能控制。
小车由主控制板、传感系统、风扇系统和车身四部分组成。
主控制系统由主控CPU电路、传感器接口电路、直流电机驱动电路等组成;传感系统采用红外传感器检测黑白线,火源传感器检测火源;行进直流电机驱动采用PWM调制技术,可灵活方便地对车速、行进方向进行控制。
本设计通过采用STC89C51单片机为控制核心,实现对小车的智能控制。
该控制系统不仅在智能小车中有很强的实用价值,在汽车应用、智能机器人等方面都有很强的实用价值,尤其是在机器人研究方面具有很好的发展前景。
所以本设计与实际相联系,具有重要的现实意义。
第1章方案设计与论证
任务要求
设计任务
设计制作一个智能灭火小车模型,能到指定区域进行抢险灭火工作。
以蜡烛模拟火源,随机分布在场地中,模拟灭火比赛场地如图所示。
图模拟灭火比赛场地示意图
设计要求
1.智能灭火小车手动启动后,自动寻找到火源的位置。
2.智能灭火小车必须按照固定的路线行进(黑白线)。
3.扑灭火源后自动检测周围环境是否还有其他火源。
4.若有则继续灭火,若无则停止工作。
创新设计
1.小车车体结构好,完全自主设计,小车采用两层结构,分放不同模块的元件,调试过程和修改过程相对简单。
2.根据小车需要和实际情况,自行设计传感器,不仅花费较少,而且使用效果好。
3.自制灭火风扇,并采用三极管放大电路供电,最大限度的加大电机转速。
4.使用以7805芯片为核心的稳压设计,以L298为核心的电机驱动设计,保证系统的稳定性。
5.原地检测软件设计思路:
先原地旋转360°,找出光敏电阻电路输出电压的最小值并保存数据,然后再旋转360°找出最小最小值的位置,然后停下。
总体设计方案
总体方案为:
整个电路分为驱动电机模块、寻迹传感器模块、单片机控制模块、火源传感器模块、风扇模块、电源模块六个模块。
首先利用红外对路面信号进行探测,利用火源传感器检测火源信号,两种信号经过处理之后,送给单片机控制模块进行实时运算,输出相应的信号给驱动电机模块驱动电机转动,从而控制整个小车的运动。
系统方案框图如图所示。
图系统设计方案框图
小车的方案设计与论证
方案1:
自己制作电动车自己制作车体,组装合适的电机及电机驱动板,自制探测器,并利用开发板做控制驱动小车。
但自己制作的小车,车体会比较粗糙,车身重量、平衡,小车的电路设计,这些都比较难良好地实现。
方案2:
购买专用电动车购买专用电动车具有组装完整的车架车轮,甚至有完整的电机装配和电机驱动板。
用自制探测器或购买完整探测模块,并用开发板控制小车运动。
这种专用电动车装配紧凑,各种所需电路的安装十分方便,看起来也比较美观。
而且,用专用电动车具有完整的电机装配和电机驱动,这用就省去了对电机传动和电机驱动的设计和实现。
综合考虑,我们选定了方案2作为我们的初步方案。
驱动电机模块的选定
方案1:
采用步进电机作为该系统的驱动电机利用步进电机的准确定长步进性能方便的实现调速和方向的偏转,且能准确的测量速度、路程以及时间,简化编程和硬件连接的工作量。
但步进电机的输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度的系统。
方案2:
采用直流电机作为该系统的驱动电机直流电机的控制方法比较简单,只需给电机的两根控制线加上适当的电压即可使电机转动起来,电压越高则电机转速越高。
而且改变正负极可方便的改变电机转动的方向,方便改变小车的行进状态。
对于直流电机的速度调高,可以采用改变电压的方法,也可采用PWM调速方法。
PWM调速就是使加在直流电机两端的电压为方波形式,通过改变方波的占空比实现对电机转速的调节。
与其它调速系统相比,PWM调速系统有下列优点:
1.PWM从处理器到被控系统信号都是数字形式的,无需进行数模转换。
2.对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点
3.由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。
4.主电路简单,所用功率元件少。
5.低速性能好,稳定精度高,调速范围宽。
综合考虑,本设计采用了方案2。
寻迹传感器模块的选定
方案1:
采用发光二极管+光敏电阻,该方案缺点明显:
易受冻外界光源的干扰,有时甚至检测不到黑线,主要是因为可见光的反射效果跟地表的平坦程度,地表材料的反射情况对检测效果产生直接影响。
而且外界的可见光对设备的影响很大,而且不容易克服外界可见光的干扰。
方案2:
采用红外光电对管,由于只需分辨黑白,红外光电对管有一个管发射红外线一个用于接收红外线,当红外线照射到黑线上时不会发射回来,当红外线照射到白色的地方就会返回,光电对管发射的同时也能接收红外信号,整个检测设备简单,稳定性高,速度快。
缺点是检测距离短,优点是成本低,易于操作。
根据以上分析我们采用方案2。
单片机控制模块的选定
考虑到整个系统的简单、方便性,控制模块采用STC89C51作为主控制芯片,该芯片有足够的存储空间,可以方便的在线ISP下载程序,能够满足该系统软件的需要,该芯片提供了两个计数器中断,对于本作品系统已经足够,采用该芯片可以比较灵活的选择各个模块控制芯片,能够准确的计算出时间,有很好的实时性。
而且STC89C51有很强的扩展性,使用简单,灵活性高且价廉。
所有我们直接采用STC89C51作为主控芯片。
火源传感器模块的选定
方案1:
采用两个热敏电阻作为核心的传感器,实验中发现在一定距离范围内,空气温度变化非常小,热敏电阻几乎不发生任何变化。
方案2:
采用两个光敏电阻作为核心的传感器,利用光敏电阻对不同距离及不同强度的光照均有较好的光敏特性来将外界光信号转换成电信号,提供给单片机进行相关判断操作。
实验中我们发现这种方案有很大的缺点,抗干扰能力极差,而且误差偏大,不能准确测定火源位置。
方案3:
采用红外接收二极管,红外接收二极管将外界红外光的变化转化为电流的变化,通过A/D转换器将模拟信号反映为0~1023范围内的数字信号。
外界红外光越强,数值越小,根据数值的变化能判断红外光线的强弱,从而能大致判别出火源的远近。
红外火焰传感器可以用来探测火源或其它一些波长在760纳米~1100纳米范围内的热源,探测角度达60度,其中红外光波长在940纳米附近时,其灵敏度达到最大。
实验中发现如果环境中红外干扰比较少的时候本方案能比较准确的检测到火源。
鉴于以上3种方案的比较,我们选择方案3。
风扇模块的选定
利用一个不减速的直流小电机带动一个小扇叶进行简单的灭火。
这种方案有两个子方案。
方案1:
芯片控制灭火风扇电机的转速和转向都不需要控制,只要在一定范围内转的越开越好。
因此采用这种方案有点麻烦,而且还会浪费时间和精力。
方案2:
三极管放大电路直接利用三极管驱动。
将电机放在三极管的射极,然后在基极加上一个限流电阻即可驱动电机正常工作,这种方案不仅电路简单、易实现,会减少很多电路上不必要的麻烦,而且驱动效率也大大提高,不仅如此其维修性也很强,出现故障能及时快速维修。
同时为了保证电路稳定性,我们可以采用多个三极管并联供电的方式。
综合考虑,本设计采用了方案2。
电源模块的选定
在本系统中,需要用到的电源有单片机的5V,L298N芯片的电源5V和电机的电源7-25V。
所以需要对电源的提供必须正确和稳定可靠。
方案1:
采用UT-3W提供的电源方案为电机供电,采用UT-3W提供的电源接口为单片机提供电源。
优点:
简单方便。
方案2:
用六节干电池为整个系统供电,再转换为电机和单片机需要的电压。
基于系统的稳定性考虑,我选择了方案2。
最终方案
经过反复论证,我们最终确定了如下方案:
1.车体是购买专用电动车。
2.采用STC89C51单片机作为控制核心。
3.采用六节干电池供电。
4.用红外探测传感器作为寻迹传感器。
5.采用红外接收管制作红外火源传感器。
6.采用三极管放大电路驱动风扇模块。
系统的结构框图如图所示。
图系统结构框图
第2章硬件设计
系统工作原理及功能简介
本系统利用单片机STC89C51单片机作为本系统的主控模块,我们采用反射式红外传感器识别黑线轨迹,用远红外火焰传感器检测火源,由单片机对传感器识别到的信号加以分析和判断,并通过对直流电机的控制来实现自动寻迹并灭火,系统工作原理框图如图所示。
图系统工作原理框图
电源
用六节干电池为整个系统供电。
再用三端稳压管转换为电机和单片机需要的电压。
单片机需要5V的电压,所以使用7805为其供电,电动机使用9V的电压,6个干电池串联直接为其供电。
单片机和电动机能否正常工作,电源供电情况是一个重要方面。
为了防止电源掉电而影响电路调试和程序调试,故采用六节充电电池为整个系统供电。
红外寻迹传感器
该智能灭火小车在画有黑线的路面上行驶,由于黑线和路面对光线的反射系数不同,可根据接收到反射红外线的强弱来判断“道路”——黑线。
在该模块中利用了简单、应用也比较普遍的检测方法——红外探测法。
红外探测法:
利用红外线在不同颜色的物理表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,如果红外光遇到地面时则发生漫发射,反射光被装在小车上的红外接收管接收;如果遇到黑线则红外光被吸收,小车上的红外接收管接收不到红外信号。
传感器的选择:
市场上用于红外探测法的器件较多,可以利用反射式传感器外接简单电路自制探头,也可以使用结构简单、工作性能可靠的集成式红外探头。
RPR220是一种一体化反射型光电探测器,其发射器是一个砷化镓红外发光二极管,接收器是一个高灵敏度硅平面光电三极管。
RPR220价格便宜、体积小、使用方便、性能可靠、用途广泛,所以该系统中最终选择了RPR220红外反射传感器作为红外光的发射和接收器件。
经过多次测试、比较,发现把RPR220传感器安装在距离检测物表面6~8毫米时,检测效果最好,因为5毫米以下是它的检测盲区,而大于10毫米则很容易受另外的光电管的干扰。
红外寻迹传感器原理图如图所示。
图红外寻迹传感器原理图
图中可调电阻R3可以调节比较器的门限电压,可方便的调节传感器的灵敏度。
用此电路作为传感器检测与调理电路。
路径识别方案:
小车脱离轨道时,根据红外感应器的状态,做出相应的转向的调整,直到中间的红外感应器重新检测到黑线再恢复正向行驶。
现场实测表明,虽然小车在寻迹过程中有一定的左右摇摆,但只要控制好行驶的速度就可保证车身基本上接近于沿轨道行驶。
采用PWM调速的直流电机
PWM的简介
脉宽调制的全称为:
PulseWidthModulator,简称PWM,由于它的特殊性能,常被用于直流负载回路中、灯具调光或直流电动机调速。
脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法。
通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。
PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有
(1),要么完全无(0)。
电压或电流源是以一种通
(1)或断(0)的重复脉冲序列被加到模拟负载上去的。
通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。
只要带宽足够,任何模拟值都可以使用PWM进行编码。
脉宽调制(PWM),控制方式就是采用脉冲宽度调制技术,其工作原理是:
通过改变“接通脉冲”的宽度,使直流电机电枢上的电压的“占空比”改变,从而改变电枢电压的平均值,控制电机的转速。
因此,我们可以通过单片机,生成固定频率的脉冲信号,通过改变脉冲信号中的“占空比”来控制电机的转速。
PWM控制可分为单极性调制和双极性调制两种方式,为了实现直流伺服系统的H型单极模式同频PWM可逆控制,一般需要产生四路驱动信号来实现电机的正反转切换控制。
当PWM控制电路工作时,其中H桥一侧的两路驱动信号的占空比相同但相位相反,同时随控制信号改变并具有互锁功能;而另一侧上臂为低电平,下臂为高电平。
H型电机驱动
直流电机的驱动电路采用H型PWM电路,用单片机控制驱动电路,使之工作在占空比可调的开关状态,精确调整电动机转速。
H型电路可以实现转速和方向的控制,采用PWM进行直流电机调速,其实就是把波形作用于电机驱动电路的使用端,因此下面对电机驱动电路进行介绍。
驱动电路如图所示。
图电机驱动电路
图所示的是一个简单的直流电机控制电路。
电路中,H桥式电机驱动电路包括4个三极管和一个电机。
要使电机运转,必须导通对角线上的一对场效应管。
根据不同场效应管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。
如图所示,当口为低电平,口为高电平,此时Q1、Q4导通,Q2、Q3截止,电动机正常工作。
改变口高电平周期,即改变PWM调制脉冲占空比,可以实现精确调速。
小车原理图
小车原理图如图所示,电机通过L293F芯片控制转动的方向与速度。
其中,SPEED1和SPEED2两个端口通过PWM调节控制两个电机的转速,IN1和IN2控制左侧电机转动的方向,IN3和IN4控制右侧电机转动的方向。
通过对这6个端口的控制,使小车能够按照预定的轨迹行进。
图小车原理图
红外火焰传感器
远红外火焰传感器能够探测到波长在700纳米~1000纳米范围内的红外光,探测角度为60,其中红外光波长在880纳米附近时,其灵敏度达到最大。
远红外火焰探头将外界红外光的强弱变化转化为电流的变化,通过A/D转换器反映为0~255范围内数值的变化。
外界红外光越强,数值越小;红外光越弱,数值越大。
红外火焰传感器原理图如图所示。
图红外火焰电路原理图
下面为火焰传感器实测数据,一根蜡烛为火源,室内正常日光灯环境实测结果如表所示。
表火焰传感器实测结果
无火源时,对着日光灯
红外火焰探头将外界红外光的变化转化为电流的变化,通过A/D转换器反映为0~1023范围内的数值。
外界红外光越强,数值越小。
因此越靠近热源,机器人显示读数越小。
根据函数返回值的变化能判断红外光线的强弱,从而能大致判别出火源的远近。
此外,远红外火焰探头探测角度为60°。
风扇模块
灭火风扇的驱动电压为+5V,为了增强驱动能力,我们用三极管8550做驱动电路以加大驱动电流。
灭火风扇驱动电路如图所示。
图灭火风扇电路原理图
在Uin处接单片机的IO口,通过IO口输出高低电平来控制灭火风扇的启动和停止。
智能小车整体设计
CPU引脚的设定
如图所示,CPU的、控制小车的左侧电机,、控制小车的右侧电机;输出PWM信号,控制小车电机的转速;—为火焰传感器输入信号,分别为前、后、左、右侧的火焰传感器的信号,—为循迹传感器输入信号。
下面是各引脚在含义:
1.循迹传感器:
左—中—右—
2.火焰传感器:
前—后—左—右—
3.电机控制:
左—右—
4.风扇控制:
引脚设定图如图所示。
图引脚设定图
电机转动由电机控制端口P1控制,其中,控制左侧电机转动,控制右侧电机转动,电机转动表如表所示。
表电机转动表
左电机
右电机
含义
HEX
含义
HEX
0
0
0
0
0
0
0
1
前转
1
0
1
前转
1
1
0
后转
2
1
0
后转
2
1
1
停止
3
1
1
停止
3
2.7.2整体设计
小车左右两轮为驱动轮,后万向轮为支撑轮。
即左右轮分别用两个转速和力矩基本完全相同的直流减速电机进行驱动,车体后部装一个万向轮。
小车的整体设计图如图所示。
图小车整体设计图
小车由三个寻迹传感器组成寻迹模块,用于检测黑白线,当中间的寻迹传感器压线时表示小车没有偏航,左右轮转速相同向前行进;当左边的寻迹传感器压线时表示小车向右偏航,这时要调节左轮的转速,使小车向左转;当右边的寻迹传感器压线时表示小车向左偏航,这时要调节右轮的转速,使小车向右转。
火焰传感器有4个,分别检测前后左右方向上的火源,如果左边的传感器检测到火源,则小车向左转向前进;如果右边的传感器检测到火源,则小车向右转向前进,如果前边的传感器检测到火源,则小车向前行进;如果后边的传感器检测到火源,则小车向后转动180°。
通过检测两套传感器的信号,单片机根据程序输出相应的反应信号,控制两个电动机的转动,以使小车相互协调工作,完成灭火的任务。
第3章软件设计
在进行微机控制系统设计时,我们根据单片机的具体情况使用KeilC51软件,采用主流设计语言C语言对单片机进行编程实现各项功能。
C语言功能丰富,表达能力强,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点,应用十分广泛。
智能灭火小车系统总体流程
此部分是小车运行的核心部分,起着控制小车所有运行状态的作用,具有导向和决策的功能。
程序控制流程图如图所示。
图控制流程图
系统总体流程是:
小车进入驱动后,即先判断是否有火源存在,一旦检测到有火源,着从出发点沿着黑白线前进接近火源。
程序不停的判断火源位置和行进的线路,把相应的信号发送给电动机从而纠正小车的状态,使小车按照规定的线路寻找到火源,并将火灭掉。
程序流程图
1.小车灭火的主程序软件流程图
如图所示,首先加点后对小车进行初始化,在这个阶段让小车检测火源,确定自己的位置,同时寻找线路。
接着单片机判断是否有火源,如果有火源存在,启动小车循迹模块程序,让小车前进,当小车找到火源时,停止前进,这时开启灭火风扇,进行灭火的操作,这时再判断是否将火灭掉,如果火已经熄灭,则小车继续寻找下一个火源,如果没有熄灭则风扇继续开启。
主程序流程图如图所示。
图程序流程图
2.小车循迹模块、火源模块程序软件流程图
寻迹模块程序首先采集寻迹传感器传回的信号,判断当前小车所在的位置,如果小车正好在线上,则小车继续前进;如果小车左侧压线,说明小车偏左,则小车右拐前进;如果小车右侧压线,说明小车偏右,则小车左拐前进;如果小车没有检测到黑线,说明前面没有路,则小车后转180度,返回;如果小车三个传感器都检测到黑线,说明小车走到十字路口,则再判断火焰传感器的信号。
如果火焰传感器的信号显示火焰在小车的前方,则小车继续前进;如果检测到火焰在小车的左方,则小车左转90度,沿黑白线继续前进;如果小车检测到火焰在小车的右方,则小车右转90度,沿黑白线继续前进;如果小车检测到火焰在小车的后方,则小车后转180度,沿黑白线继续前进。
寻迹模块程序流程图如图所示,火焰传感器模块程序流程图如图所示。
图寻迹模块图判断火源位置模块
部分功能代码
1.小车转向代码
voidrun()片机原理及接口技术实践教程[M].北京:
机械工业出版社,2004
[2]吴建平.殷战国.曹思榕.李坤垣红外反射式传感器在自主式寻迹小车导航中的应用[J]中国测试技术2004(6)
[3]童诗白,华成英主编.模拟电子技术基础(第4版)高等教育出版社
[4]万永伦,丁杰雄.一种机器人寻线控制系统.电子科技大学学报,2003
[5]周坚等编着.