超声波智能避障小车设计_第1页
超声波智能避障小车设计_第2页
超声波智能避障小车设计_第3页
超声波智能避障小车设计_第4页
超声波智能避障小车设计_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1引言智能作为现代社会的新产物,是以后的发展方向,他可以按照预先设定的模式在一个特定的环境里自动的运作,无需人为管理,便可以完成预期所要达到的或是更高的目标。本设计主要体现多功能小车的智能避障模式,设计中的理论方案、分析方法及特色与创新点等可以为自动运输机器人、采矿勘探机器人、家用自动清洁机器人等自动半自动机器人的设计与普及有一定的参考意义。同时小车可以作为玩具的发展对象,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济收益,形成商业价值。超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。本智能小车系统最诱人的前景就是可用于未来的智能汽车上了,当驾驶员因疏忽或打瞌睡时这样的智能汽车的设计就能体现出它的作用。如果汽车偏离车道或距障碍物小于安全距离时,汽车就会发出警报,提醒驾驶员注意,如果驾驶员没有及时作出反应,汽车就会自动减速或停靠于路边。随着计算机、微电子、信总处理及智能控制的快速发展,机器人技术也在逐步深入和细化。随着机器人性能不断地完善,移动机器人的应用范围大为扩展,不仅在工业、农业、医疗、服务等行业中得到广泛的应用,而且在城市安全、国防和空间探测领域等有害与危险场合得到很好的应用。因此,移动机器人技术已经得到世界各国的普遍关注。移动机器人的研究不仅可以推动科学技术的向前发展,同时其应用必将带来巨大的经济效益和社会效益。1.1课题背景及意义智能移动机器人,是一个集环境感知、动态决策与规划、行为控制与执行等多功能于一体的综合系统。它集中了传感器技术、信息处理、电子工程、计算机工程、自动化控制工程以及人工智能等多学科的研究成果,代表机电一体化的最高成就,是目前科学技术发展最活跃的领域之一。随着电子技术的不断发展人们发明了各式各样的具有感知,决策,行动和交互能力的机器人,自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等多个领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式,随着它在人类生活领域中的应用不断扩大,将会给人们的生产生活带来了巨大的影响。在国外机器人的发展有如下趋势。一方面机器人在制造业应用的范围越来越广阔,其标准化、模块化、网络化和智能化的程度越来越高,功能也越来越强,并向着技术和装备成套化的方向发展;另一方面,机器人向着非制造业应用以及微小型方向发展,如表演型机器人,服务机型器人,机器人玩具等。国外研究机构正试图将机器人应用于人类活动的各个领域。在我国机器人主要应用于工业制造领域,我国工业机器人现在的总装机量约为120000台,其中国产机器人占有量约为1/3,即40000多台。与世界机器人总装机台数7500万台相比,中国总装机量仅占万分之十六。对中国这样一个拥有13亿人口的大国来说,仅在机器人数量上就和发达国家有着很明显的差距。因此大力发展我国的机器人事业刻不容缓[1]。智能小车可以理解为机器人的一种特例,它是一种能够通过编程手段完成特定任务的小型化机器人。与普遍意义上的机器人相比智能小车制作成本低廉,电路结构简单,程序调试方便,具有很强的趣味性,为此其深受广大机器人爱好者以及高校学生的喜爱。全国大学生电子设计竞赛每年都设有智能小车类的题目,由此可见国家对高校机器人研究工作的重视程度。本题目设计的是具有自动避障功能的智能小车,其设计思想与一些日常生活迫切需要的机器人(如测距机器人,搜索机器人,管道探伤机器人)类似。由于采用了超声波传感器,它不受光照强弱和能见度的影响,能耗低,灵敏度高,即使在较复杂的环境内也可以工作。智能小车系统的设计采用了模块化的设计方法,电路结构简单,调试方便,有很大的扩展空间,稍加改动便可应用于实际生产生活中,也可作为高校学生以及广大机器人爱好者学习研究使用。1.2国内外研究现状机器人作为人类科技发展的新型劳动生产工具,在减轻劳动负荷、优化产业模式、提高生产率,避免作业工人从事危险、恶劣、繁重的工作等方面,显示出极大的优越性。不过,就机器人而言,目前还没有统一的定义,而且自机器人问世以来,人们就很难对机器人下一个确切的定义。欧美国家认为,机器人应该是“由计算机控制的通过编程具有可以变更的多功能的自动机械”;日本学者认为“机器人就是任何髙级的自动机械”。我果科学家对机器人的定义是:“机器人是一种自动化的机器,所不同的是这种机器具备一些与人或生物相似的智能能力,如感知能力、规划能力、动作能力、和协同能力,是一种具有高度灵活性的自动化机器。”目前国际上对机器人的概念已经渐趋一致,联合国标准化组织采纳了美国机器人协会于1979年给机器人下的定义;“一种可编程和多功能的,用来搬运材料、零件、工具的操作机;或是为了执行不同的任务而具有可改变和可编程动作的专门系统。”概括说来,机器人是靠自身动力和控制能力来实现各种功能的一种机器[2]。智能移动机器人具有高度的自规划、自组织、自适应能力,在无需人干预、无需对环境做任何规定和改变的条件下,能够有目的地移动和完成相应任务。障碍物检测是智能移动机器人、智能汽车对周边环境感知技术研究领域中的重要方面。随着技术的发展以及利益的趋向,美国、日本、德国以及意大利等世界发达国家的很多研究机构,陆续在该研究方向作了一定程度的探索和研究,并取得了很多有价值的研究成果。在我国,由于理论技术、基础设施建设和资金分配等因素限制,在智能机器人技术领域与世界发达国家存在相当大差距,只有为数不多研究机构在该领域做出了一些的成果。本文按使用传感器的类型不同分为:基于超声波的障碍物检测系统、基于红外线的障碍物检测系统、基于激光的障碍物检测系统及基于多传感器融合技术的障碍物检测系统等。20世纪60年代以来,弧焊点焊气焊、机械设备加工、喷涂刻画、设计装配、检测等各种类型,各种用途的机器人相继出现,并迅速在工业生产中实现流水线批量生产,这大大提高了各种产品的标准型和质量。然而,随着机器人的不断完善发展,人们发现,这些同定于某一岗位工作的机器人并不能完全满足各方面的需要,不能处理复杂的应激变化。因此,20世纪80年代后期,许多国家有组织有计划的开展了移动机器人技术的硏究。所谓的移动机器人,就是一种具有高度自组织、自适应、自规划能力,适合于在复杂的非结构化,具有高精确度或繁重、危险工作环境中作业的机器人。自主式移动机器人的设计目标是在没有人的参与控制且无需对环境作任何规定和改变的条件下,有目的的移动并完成相应设定任务。在自主移动式智能机器人的相关技术研究中,导航技术的应用是其研究的核心,也是移动机器人实现智能化及完全自主调节、控制的关键技术。导航研究的网标就是:在没有人的干预下使机器人有目的地移动并完成特定任务,进行特定操作。机器人通过装配的信息获取手段,获得外部环境信息,实现自我定位,判定自身状态,规划并执行下一步的动作。因此单从系统硬件层次上讲,移动机器人必须具有丰富的传感器、功能强大的控制计算机以及灵活和精确的驱动系统。1.3本课题研究的主要内容本设计题目为智能避障小车设计,主要研究小车的避障功能,小车遇到障碍物时,当距离障碍物大于20CM以较快速度前进,当小于20CM时慢速前进,当小于10CM时小车应采取避障功能。因为超声波在距离检测方面的较准确定位。所以采用超声波传感器作为探测装置,由于超声波遇到障碍物时发生像光一样的反射和散射,在经过多次发射之后再回到超声波检测端口会产生较严重的路程差,从而影响对距离的检测进而影响对障碍物的较准确定位。通过软件内部校准优化消除外部物理条件造成的误差从而达到对障碍物的较准确定位。障碍物检测是智能机器人、智能车辆对周边环境感知技术研究领域中的重要组成部分,以单片机为核心的结构简单、精度较高、测距较长、可靠性较高的障碍物检测报警系统对智能移动机器人的研究有很重要的社会意义。2总体设计方案及分析根据题目的要求,确定如下方案:将报废的玩具电动车经过改造的基础上,加装传感器等探测设备,实现对电动小车前方障碍物的探测,以及小车的的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行分析处理,然后由单片机根据所检测的各种数据实现对电动小车的智能控制。这种方案能实现对电动车的运动状态进行实时有效控制,并且控制可靠、灵活,精确度高,可满足对系统的各项基本要求。2.1系统控制模块设计方案论证方案一:采用STC12C5410单片机控制系统。STC12C5410单片机带有PWM脉宽调制输出端口,可直接用来控制电机转速,且其运行速度是8051单片机的8~12倍;但其I/O口少,即使是32管脚的芯片也只有27个,不够用时需要扩展I/O口,比较麻烦。方案二:采用STC89C52单片机控制系统。主要是通用I/O口多,一般不需要扩展,而且控制指令简单。由于对8051系列单片机应用比较熟悉,且系统需要用到的I/O口较多,而控制电机转速的PWM信号用1个定时器即可模拟。所以此次设计选择采用STC89C52单片机来控制。2.2超声波壁障设计方案论证方案一:采用多方向超声波测距分析来实现壁障。分别在小车的左、中、右三方向放置超声波探头,通过对三个方向超声波的测距数据分析对比确定障碍物位置,再通过调节小车左右电机转速差控制小车行驶方向实现壁障。方案二:通过步进电机带动一对超声波探头旋转进行各方向测距,将各方向测得数据通过单片机对比分析可得到障碍物方向,然后也是通过调节小车左右电机转速差控制小车行驶方向实现壁障。方案一需要3对的超声波探头,为了防止信号相互干扰各个超声波发送信号要相互间隔,显得繁杂,而且当障碍物与左右侧的超声波探头大于一定角度时将不能接收到超声波信号,方案二通过180度扫描可以很好地检测到各个方向的障碍物,障碍物判断更可靠,避障效果更好。因此选用方案二设计。2.3显示模块设计方案论证方案一:采用七段LED数码管显示相关数据。数码管显示具有高亮、可视距离远、寿命长的优点,一位数码管能显示一位数据。方案二:采用LCD1602液晶显示。液晶显示具有耗能少、可同时显示数据多、控制指令简单、PCB布线简单等优点。通过对比两种显示方案的优缺点,本次设计决定采用方案一。2.4直流调速系统设计方案论证方案一:串电阻调速系统。方案二:静止可控整流器。简称V-M系统。方案三:脉宽调速系统。旋转变流系统由交流发电机拖动直流电动机实现变流,由发电机给需要调速的直流电动机供电,调节发电机的励磁电流即可改变其输出电压,从而调节电动机的转速。改变励磁电流的方向则输出电压的极性和电动机的转向都随着改变,所以G-M系统的可逆运行是很容易实现的。该系统需要旋转变流机组,至少包含两台与调速电动机容量相当的旋转电机,还要一台励磁发电机,技术落后,因此搁置不用。V-M系统是当今直流调速系统的主要形式。它可以是单相、三相或更多相数,半波、全波、半控、全控等类型,可实现平滑调速。V-M系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难[3]。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统处于低速运行时,产生较大的谐波电流危害附近的设备。采用晶闸管的直流斩波器基本原理与整流电路不同的是,在这里晶闸管不受相位控制,而是工作在开关状态。当晶闸管被触发导通时,电源电压加到电动机上,当晶闸管关断时,直流电源与电动机断开,电动机经二极管续流,两端电压接近于零。脉冲宽度调制(PulseWidthModulation),简称PWM[4]。脉冲周期不变,只改变晶闸管的导通时间,即通过改变脉冲宽度来进行直流调速。与V-M系统相比,PWM调速系统有下列优点:(1)由于PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可达1:10000左右。由于电流波形比V-M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。(2)脉宽调制(PWM)是利用数字输出对模拟电路进行控制的一种有效技术,尤其是在对电机的转速控制方面,可大大节省能量。PWM具有很强的抗噪性,且有节约空间、比较经济等特点。模拟控制电路有以下缺陷:模拟电路容易随时间漂移,会产生一些不必要的热损耗,以及对噪声敏感等。而在用了PWM技术后,避免了以上的缺陷,实现了用数字方式来控制模拟信号,可以大幅度降低成本和功耗。

根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了H型单极型可逆PWM变换器进行调速。脉宽调速系统的主电路采用脉宽调制式变换器,简称PWM变换器[5]。脉宽调速也可通过单片机控制继电器的闭合来实现,但是驱动能力有限。为顺利实现电动小汽车的前行与倒车,本设计采用了可逆PWM变换器。可逆PWM变换器主电路的结构式有H型、T型等类型。我们在设计中采用了常用的双极式H型变换器,它是由4个三极电力晶体管和4个续流二极管组成的桥式电路。3元器件介绍从实际出发,详细分析移动机器人需求,完成预定目标所需的相关设计,实施方案。3.1STC89C52主控芯片STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-FlashProgramableandErasableReadOnlyMemory)的低电压,高性能COMOS8的微处理器,俗称单片机[6]。该器件采用ATMEL密度非易失存储器技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。MAX232STC89C52图3-1单片机总控制电路STC89C52具体介绍如下:①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。④可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7STC89C52主要功能:使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。3.2L293D电机驱动芯片对于电机驱动,需要考虑如下几个问题:电机是单向还是双向转动?需不需要调速?对于单向的电机驱动,只要用一个大功率三极管或场效应管或继电器直接带动电机即可,当电机需要双向转动时,可以使用由4个功率元件组成的H桥电路或者使用一个双刀双掷的继电器。如果不需要调速,只要使用继电器即可;但如果需要调速,可以使用三极管,场效应管等开关元件实现PWM调速。L293D采用16引脚DIP封装,其内部集成了双极型H-桥电路,所有的开量都做成n型。这种双极型脉冲调宽方式具有很多优点,如电流连续;电机可以四角限运行;并且停止时有轻微的振动电流,起到“动力润滑”的作用,消除电机正反向转动时的静摩擦死区;低速平稳性好等。L293D通过内部电路逻辑生成使能脉冲信号。H-桥电路的输入信号可以用来控制马达转动的方向,使能信号可以用于调整脉宽(PWM)[7]。另外,L293D驱动芯片将2个H-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。每1个电机需要3个控制信号EN12、IN1、IN2,其中EN12是使能信号,IN1、IN2为电机转动方向控制信号,IN1、IN2分别为1,0时,电机正转,反之,电机反转。选用一路PWM连接EN12引脚,通过调整PWM的占空比可以调整电机的转速[8]。选择一路I/O口,经反向器74HC14分别接IN1和IN2引脚,控制电机的正反转。图3-2L293D方框图3.3超声波传感器超声波传感器是利用超声波的特性研制而成的传感器。超声波是一种振动频率高于声波的机械波,由换能晶片在电压的激励下发生振动产生的,它具有频率高、波长短、绕射现象小,特别是方向性好、能够成为射线而定向传播等特点。超声波探头主要由压电晶片组成,既可以发射超声波,也可以接收超声波[9]。小功率超声探头多作探测作用。它有许多不同的结构,可分直探头(纵波)、斜探头(横波)、表面波探头(表面波)、兰姆波探头(兰姆波)、双探头(一个探头反射、一个探头接收)等。超声波测距原理:超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2这就是所谓的时间差测距法。超声波传感器结构如图3-3所示。图3-3超声波传感器结构超声波在本设计中的原理分析:由于自己用分立元器件焊接比较麻烦,所以本设计采用现成的HC-SPO4超声波模块,HC-SPO40-4.5mGPIO[10]。超声波探测模块HC-SPO4的使用方法为:IO口触发,给Trig口至少10us的高电平,启动测量;模块自动发送8个40Khz的方波,自动检测是否有信号返回;有信号返回,通过IO口Echo输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,测试距离=(高电平时间*340)/2,单位为m。程序中测试功能主要由两个函数完成,即measure()负责计算一次测量小车障碍物的距离,然后shouldTurn()确定前方有障碍物采取避障措施,根据车体大小及系统的反应,经过测试,取20cm的反应距离效果较为明显[11]。另外,HC-SPO4超声波探测模块探测的间隔周期推荐值是64ms(图3-4),但经过试验,发现在我们的小系统中取800ms较为适宜,使主程序有足够的时间来驱动小车前进,而不至于出现前进不流畅的现象。图3-4超声波检测原理3.4数码管显示器数码管是一种半导体发光器件,其基本单元是发光二极管。LED数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的字样了。如:显示一个“2”字,那么应当是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。LED数码管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。[12]小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为1.8V左右,电流不超过30mA。发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。常用LED数码管显示的数字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。本电路采用四位一体共阳数码管,利用动态扫描方式来完成显示功能。CPU送来的数据信号直接送入数码管的段号码,进行数字显示,两个三极管是对数码管的位号选操作,当Q4导通时就是选择数码管的个位,当Q3导通时,就是选择数码管的十位,通过单片机的控制,首先显示个位数,然后关掉.之后然后显示十位数,再关掉,一直循环下去,那么我们将会看到连续的数字显示,轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上四位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示而不会有闪烁感[13]。图3-5数码管显示原理图3.5舵机一般来讲,舵机主要由以下几个部分组成,舵盘、减速齿轮组、位置反馈电位计5k、直流电机、控制电路板等。电源线和地线用于提供舵机内部的直流电机和控制线路所需的能源.电压通常介于4~6V,一般取5V。舵机的控制信号是周期为20ms的脉宽调制(PWM)信号,其脉冲的宽度从0.5ms-2.5ms,相对对应舵盘的位置是0-180度,呈连续线性变化。也就是说,给它提供一特定宽度的脉冲信号,它的输出轴就会转动到一个与之相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会将输出角度转动到新的对应的位置上。舵机有一个内置的基准电路,其不断产生周期的20ms,宽度1.5ms的基准信号;另有一个比较器,将外加信号与基准信号进行比较,判断出转动方向和转动角度大小,进而产生电机的转动信号。由此可见,舵机是一种精度很高的位置伺服的驱动器,转动最大角度不能超过180度,适用于那些需要角度不断变化并可以停滞的驱动当中。图3-6舵机输出转角与输入信号脉冲宽度的关系

舵机的控制信号为PWM信号,利用占空比的变化改变舵机角度。舵机的速度决定于其接受道德信号脉宽的变化速度。控制线的输入是一个宽度可调的周期性方波脉冲信号,方波脉冲信号的周期为20ms(即频率为50Hz)。当方波的脉冲宽度改变时,舵机转轴的角度发生变化,角度变化与脉冲宽度的变化成正比。占空比:就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比如,一个PWM的频率是1000Hz,那么它的时钟周期就是1ms,就是1000us,如果高电平出现的时间是200us,那么低电平的时间肯定是800us,那么占空比就是200:1000,也就是说PWM的占空比就是1:5。4系统的硬件电路根据设计题目要求,系统可以初步划分为单片机部分,显示电路部分,报警电路部分,抗干扰电路部分,控制电路部分,电源电路部分和传感器部分。其各部分之间的关系如图所示,其中采用了89C52型单片机组成基本硬件电路,再配合其它元器件搭建起系统硬件电路。整体框图如图4-1所示。图4-1控制系统整体框图4.1超声波发送接收电路4.1.1超声波发射电路的设计超声波换能器两端的震荡脉冲是由单片机P1.0口产生的40kHz方波提供的。为了增加超声波的探测距离,就需要增加超声波换能器的功率。为此设计中采用了CD4069六非门反相器来增强超声波的发射功率,由于非门实质上是放大倍数很大的反相放大器,如果给非门加上合适的负反馈电阻,就能够使它从饱和区进入线性放大区,图4-2所示为本设计中非门放大原理的示意图。单片机P1.0口产生的40KHz方波信号一路经反向器反相后传送到超声波换能器的其中一个电极中,另一路经两级反相器反向后送入超声波换能器的另一个电极。将方波信号加到超声波换能器两端的这种推挽形式可以提高超声波的发射强度。采用两个反向器并联的输出端可以提高驱动能力。图4-2超声波发射电路非门发射原理示意图其电路原理图如图4-3所示。上拉电阻R23,R24一方面可以提高反相器的高电平驱动能力,另一方面可以增强超声波换能器的阻尼效果,缩短其自由震荡的时间。Q7的作用是提高单片机I/O口的输出电压,目的也是提高超声波发射的功率。图4-3超声波发射电路原理图4.1.2超声波接收电路的设计集成芯片CX20106A是一款红外线检波接收的专用芯片,常用电视机遥控器。考虑到红外遥控常用的载波频率38KHz与本设计中超声波频率40KHz较为接近,所以利用它来制作超声波检测接收电路。实验证明CX20106A接收超声波具有很高的灵敏度和较强的抗干扰能力。如图4-4所示为CX20106A内部结构及电路连接图。图4-4CX20106A内部结构图使用CX20106A集成电路对接收探头受到的信号进行放大、滤波。其总放大增益80db。以下是CX20106A的引脚注释∶1脚:超声信号输入端,该脚的输入阻抗约为40kΩ。2脚:该脚与地之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R1或减小C1,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但C1的改变会影响到频率特性,一般在实际使用中不必改动,典型参数R1=4.7Ω,C1=1μF[14]。3脚:该脚与地之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,经试验测试取3.3μF为宜。5脚:该脚与电源间接入一个电阻,用以设置带通滤波器的中心频率F0,阻值越大,中心频率越低。例如,取R=200kΩ时,F0≈42kHz,若取R=220kΩ,则中心频率F0≈38kHz。6脚:该脚与地之间接一个积分电容,标准值为330pF,如果该电容取得太大,会使探测距离变短。7脚:遥控命令输出端,它是集电极开路输出方式,因此该引脚必须接上一个上拉电阻到电源端,没有接受信号是该端输出为高电平,有信号时则产生下降。4,8脚:电源正极,4.5~5V。4.2电机驱动电路的设计由于单片机I/O口驱动能力弱,不能直接连接直流电机,故需要驱动芯片进行驱动。该设计采用的是基于L293D的电路连接方式,L293D内部包含4通道逻辑驱动电路。其是一种四相和二相电机的专用驱动器,即内含两个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机[15]。其电路如图4-5所示。图4-5电机驱动电路连接图1脚和15脚可单独引出连接电流采样电阻器,形成电流传感信号。本电路未用到采样所以将其接地。L293D可以驱动2个直流电机,OUT1、OUT2和OUT3、OUT4之间分别接1个电动机。5脚、7脚、10脚、12脚接输入控制信号,控制电机的正反转,ENA,ENB为电机控制使能端,控制电机的停转。本电路中分别与单片机89C52的P1.0、P1.1相连,L293D的逻辑功能如表4-1所示。表4-1L293D逻辑功能表ENA(B)IN1(IN3)IN2(IN4)电机运行情况HHL正转HLH反转HHH快速停止HLL快速停止L任意任意停止由于电机在正常工作时对电源的干扰很大,所以在电机的驱动信号输入端并联电容C34,用以滤除噪声干扰。4.3显示电路的设计数码管有一位、双位、四位等几种,而不管将几位数码管连在一起,数码管的显示原理都是一样的,都是靠点亮内部的发光二极管来发光的,数码管的内部结构如图4-6所示,从图4-6(a)可看出,一位数码管的引脚是10个,显示一个8字要7个小段,另外还有一个小数点,所以内部共有8个小的发光二极管,最后还有一个公共端,生产商为了封装统一,单位数码管都封装10个引脚,而他们的公共端分为共阳极和共阴极,如图4-6(b)所示。(a)(b) 图4-6数码管显示原理图本小车用的开发板是4位共阳极数码管,所谓“共阳”就是指其内部的8个发光二极管的阳极全部连在一起,而他们的阴极是独立的[16],通常在设计电路时一般把阳极接VCC,当我们给数码管的任一个阴极加低电平时,对应的那个发光二极管就点亮了。当使用多位一体数码管时,它内部的公共端是独立的,而负责显示什么数字的段线全部都是连在一起的,独立的公共端可以控制多位数码管中哪一位点亮,通常我们把公共端叫做“位选线”,连在一起的段线叫做“段选线”[17]。本设计所用开发板的数码管共阴端与P0口连接,共阳端经过一个反相器与P2口相连,其硬件连接图如图4-7所示。图4-7数码管连接图4.4声光警示电路的设计(a)闪光报警电路(b)蜂鸣器报警电路图4-8声光警示电路原理图由于单片机I/O口不能直接驱动高亮LED,所以要通过一个驱动电路来驱动,其电路如图4-8所示,Q10为驱动三极管,R24为限流电阻通过单片机的P3.1口控制Q10的通断,当P3.1被置低电平时三极管导通,发光管D4、D8点亮;当为高电平时是三极管截至,发光管熄灭[18]。同样原理可以控制蜂鸣器发声。4.5电源模块设计智能小车的供电设施是一块镍氢充电电池,它有低成本,循环寿命长,无污染,安全性能好,温度使用范围广等特点。它的容量为2A,最高输出电压7.4V,有很强的续航能力。电机启动时产生的电压波动会严重影响单片机的正常工作,为了使系统更加稳定,系统采用两组电源供电如图4-9,4-10所示∶图4-99V供电电路图4-105V供电电路第二组电源通过三端稳压器7805稳压后给单片机和其它电路供电,另外一组电源经7809稳压后给电机驱动芯片L293D供电,考虑到模块间的相互干扰问题,两个电源之间还添加了隔离措施,这样有效的解决了后向通道会对单片机最小系统以及前向通道产生干扰的问题,提高了系统的稳定性。电源电路连接图见图4-9,4-10。电路中的滤波电容C16可以改善输出的电压纹波。C18是当负载电流突变时,为改善电源的动态特性而设定的,其取值约为100~470uF[19]。在结构上,它们是由两个电容极板的中间加绝缘介质卷绕而成的。因此,对电源中的高频分量,电解电容均含有电感,而集成稳压器内部带有负反馈,在高频下,通过C16、C18的耦合,可能会使稳压器的输出端产生有害振荡。C17、C19正是为抑制这种振荡或消除电网串入的高频干扰而设置的,通常C17、C19取值为0.1~0.33uF。D1为电源指示灯。由于直流电机在工作时会产生电磁干扰,和噪声,本电路还添加了由C14、C15、L1组成滤波网络,目的是滤除电机启动时所产生的尖峰脉冲。5系统的软件设计及工作流程5.1测距子程序流程图图5-1测距子程序流程图主程序对系统进行初始化之后,超声波测距程序设置定时器T0为16位定时器,开中断允许位EA,清零显示端口P0和P2。之后调用超声波发射子程序,发送出一个超声波脉冲,为了避免信号的直接耦合干扰需要将信号发出后延时0.1ms在开外部中断接收返回的超声波信号(这也就是超声波测距会有一个最小可测距离的原因)。由于系统采用的是12M晶振,计数器每计一个数就是一微秒,当主程序检测到接收成功标志位后,将计数器T0中的数按公式5-1计算d=(c*t)/2=172*T0/10000(5-1)在室温下测试声速为340m/s,超声波每发射,接收一次所走距离为被测距离L的2倍如图5-2所示,L便是被测物体和超声波传感器之间的距离,式中T0为计数器T0中的计数值。图5-2超声波测距原理示意图测出距离后结果将以十进制BCD码方式送往LED显示,与此同时送入累加器A与安全距离进行比较,若判定前方有障碍物则执行避障操作,等待上述过程结束,然后再发射超声波脉冲重复测量过程。本设计中智能小车的回转半径为40cm,设定的安全距离为20cm,由于程序设计小车每次都向左侧避障,所以小车能够完成避障操作的条件是测试环境障碍物的间距大于20cm,这样小车才可以正常工作。5.2舵机带动探头旋转测距避障流程图图5-3避障流程图6系统的安装与调试6.1安装步骤6.1.1检查元件的好坏按电路图买好元件后首先检查买回元件的好坏,按各元件的检测方法分别进行检测,一定要仔细认真。而且要认真核对原理图是否一致,在检查好后才可上件、焊件,防止出现错误焊件后不便改正。6.1.2放置、焊接各元件按原理图的位置放置各元件,在放置过程中要先放置、焊接较低的元件,后焊较高的和要求较高的元件。特别是容易损坏的元件要后焊,在焊集成芯片时连续焊接时间不要超过10s,注意芯片的安装方向。6.2电路的调试首先烧入电机控制程序,控制电机正反转,停止均正常。说明电机及驱动电路无误。然后加入避障子程序,小车运转正常时,调节超声波模块灵敏度使达到理想效果。接下来加入显示距离子程序,看显示模块正常与否。在调试程序时,发现有的指令用的不正确,比如说检测距离的开关量,应该用“JNC”指令,而最初却误用了“JC”指令,导致电路功能不能完全实现,另外软件程序中的延时有的过长、有的过短。类似的现象还有很多就不一一列举了。特别是电机PWM控制部分的调试很麻烦,以下是部分单元电路的调试过程。6.2.1超声波发射接收电路的调试让超声波探头朝向一面墙,使发出的超声波能返回来而被接收器检测到,从试验台引出测试方波信号接入单片机P1.0口,用示波器观察超声波CX20106A的7脚的波形,若电路正常工作则接收波形如图6-1所示。图6-1超声波模块正常工作时的波形图中1为示波器观察CX20106A7脚的波形,2为单片机P1.0口输出波形。确定硬件工作正常后,开始软件调试。首先将程序烧写到单片机中,上电观察数码管显示距离是否正确,其次判断超声波模块是否正常工作。在软件方面影响超生波的主要因素是延时时间,故根据实践测试情况需适当修改延时长短,有时还须根据设计要求调整超声波接收,发射探头之间的距离一般取2-8cm为宜。6.2.2电机PWM控制的调试过程由于采用的电机供电电压是5V,而电机额定工作电压是6V,所以可使电机转动的PWM值范围可从5%-65%左右;PWM的频率变化会带来电流强度的变化,二者之间成反比关系,频率越高电流越小,同时力矩也将变小,这与事先的预测基本相同:由于电机的感性阻抗作用,随着PWM频率的升高,其感抗的不断增大,导致电流逐渐减小[20]。尤其设计中所采用的电机是遥控车电机,额定电流较小,线圈匝数必然较多,感抗较大。PWM的原理,其实就是面积等效原理,在采样控制理论中有一个重要的结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。所以可用等幅值的不同宽度的脉冲来等效一些想要的波形。结论本智能小车电路在硬件上采用了超声波传感器来测量小车距前方障碍物的距离,显示结果快速,准确。由于采用双电源供电使系统的抗干扰性得到加强;PWM技术的应用解决了电动机驱动效率和电机速度控制的问题;在软件上,充分利用了89C52的系统资源,使智能小车完美的实现了障碍检测、距离测量、警示等功能。本设计结构简单,调试方便,系统反映快速灵活,硬件电路由可拆卸模块拼接而成,有很大的扩展空间。经验收测试,该智能小车设计方案正确、可行,各项指标稳定。经测定,小车在无障碍物情况下匀速行驶速度约为16.2m/min,距障碍物安全距离为20cm,前方有障碍物时左转避障,左右有障碍物时向相反方向避障,若小车前方、左侧、右侧均有障碍物时,小车倒车20cm,停车后继续探测周围180度环境。虽然智能小车系统有很多优点,但在设计当中也存在着一些不足。如超声波模块受温度的影响比较大,由于时间关系没有添加温度补偿措施,所以在使用中需要注意环境影响。另外小车避障方式单一,若将超声波模块安装在舵机上使其可以左右上下180度转动,那么便可以通过比较小车两侧空间的大小来自由选择避障方向,从而实现更加智能化的避障方式。小车经过测试,运行结果良好。硬件上没有错误,主要瓶颈在于探测模块的灵敏度,因为软件完全靠探测模块返回的信号作为依据进行下一步控制的操作,无法确认该信号是否准确,使小车转弯欠准确与智能。致谢经过一学期的学习和忙碌,本次毕业设计已经接近制作的尾声,作为一个缺乏实践本科生的毕业设计,由于缺少设计、动手制作的经验,难免有许多疏漏,会有很多考虑不周全的地方,如果没有导师长期的督促指导帮助,以及身边一起努力工作的同学们的支持,想要完成这个毕业设计是很难想象的。在这里最要感谢的是我的导师刘东辉教授。刘教授平日里课业量很大,工作繁重,但在我做毕业设计的整段时间内,从查阅资料到学习相关专业知识,到设计草案的修改和确定,期中检查,后期详细设计方案及思路,装配草图,调试程序,组装小车等整个过程中都给予了我悉心的指导和帮助。我的设计较为复杂烦琐,但是刘教授仍然细心地纠正设计中的错误和不当之处。除了敬佩刘教授的专业知识水平外,他的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。通过我们师生的共同努力,本设计最终调试成功并顺利完成题目所有指标。在此我不光要谢谢我的毕业设计导师,还要谢谢在设计期间给予我帮助的实验室的老师和同学们,感谢他们为我们提供实验器材和调试场地。其次要感谢我的同学对我无私的帮助,特别是在软件的使用方面,正因为如此我才能顺利的完成设计,我要感谢我的母校——河北科技大学,是母校给我们提供了优良的学习环境;另外,我还要感谢那些曾给我授过课的每一位老师,是你们教会我专业知识。最后,对在毕业设计期间给予我帮助的所有老师和同学表示最诚挚地感谢和最衷心祝福!参考文献1辉雄.智能电动小车的设计.电子报,2005-05-15,第(11)期:32~342李建法.超声波测距的电路设计与单片机编程.安阳师范学院学报,2003:47~483徐玮.51单片机实现进步电机控制.电子制作,2006第(11)期:154戴仙金等.51单片机及其C语言应用程序设计.北京:清华大学出版社,20055柳郭等.单片机开发应用技能与技巧.北京:中国电力出版社,20086宋永冬.高精度超声波测距系统设计.现代电子技术.2008,第(15)期:137~1397J.Kowitz.超声技术及应用.科学技术出版社,1992:15~268谭进怀.超声波语音测距系统在车辆避障中的应用.微计算机信息.2008,第24卷:122~1249刘凤然.基于单片机的超声波测距系统.传感器世界.2001,第(8)期:29~3210张建,李刚.超声波测距系统的研究与设计.电气电子教学学报.2005,第(4)期:4~611何希才等.传感器及应用[M].北京:机械工业出版社,2004:65~8312丁镇生.传感器及传感技术应用.北京:电子工业出版社,1998:59~7213牛余朋.基于单片机的高精度超声波测距电路.电子世界.2005.第(5)期:27~2914JohnF.Wakerly,数字设计原理与实践.林生等译.北京机械工业出版社,200315张毅刚,彭喜元.新编MCS-51单片机应用设计.第一版,哈尔滨工业大学出版社,2003:25~27,411~41716赵负图.传感器集成电路手册.第一版,化学工业出版社,2004:590~59117YasushiSaito,BrianNBershad,andHenryMLevy.Manageability,availabilityandperformanceinporcupine:ahighlyscalablecluster-basedmailservice.Operationsystemreview,2003,第(12)期:1~1518D.I.Crecraft,D.A.Gorham,J.J.sparkesElectionics.StanleyThornes(Publishers)Ltd,199319谭浩强.C程序设计[M].清华大学出版社,200520万福君,潘松峰等.单片微机原理系统设计与应用[M].北京:中国科学技术大学出版社,2005附录A整机电路原理图附录B程序清单超声波测距避障#include<reg52.h>#define ucharunsignedchar#defineuintunsignedintsbitK1=P1^0; //P1.0到P1.4为寻线检测端sbitK2=P1^1;sbitK3=P1^2;sbitK4=P1^3;sbitK5=P1^4;sbitKIN1=P1^5; //P1.5P1.6是避障检测端sbitKIN2=P1^6;sbitout1=P2^0; //P2.0到P2.3是电机驱动输出控制端sbitout2=P2^1;sbitout3=P2^2;sbitout4=P2^3;sbitTrig=P3^6;//产生脉冲引脚sbitEcho=P3^2;//回波引脚sbitbeem=P3^7; //蜂鸣器控制引脚sbitPWM=P1^7;//舵机pwm//uintdistance[4];//测距接收缓冲区uintdistance1;ucharge,shi,bai,temp,flag,outcomeH,outcomeL,PDATA;//自定义寄存器bitsucceed_flag;//测量成功标志unsignedlongxdatarec_code;unsignedlongxdatatime_us;unsignedcharxdatarec_cnt;unsignedcharxdatakbuf;ucharsdata,flag; //sdata是红外遥控接收键值变量flag是启动小车或停止小车变量uintj,a;ucharpro;bitrec_b;bitkey_save;bitkeyp;voidchaoshengbo();voidconversion(uinttemp_data);voiddelay_20us();voiddelay_ms(uintx);voiddelay(uintt)//延时程序1{ ucharj;while(t--) {for(j=5;j>0;j--);}}voidbeep() //蜂鸣器提示音{ beem=0; delay(1000); beem=1; delay(1000); beem=0; delay(1000); beem=1; delay(1000); }voidInit() //初始化{flag=0;Trig=0; TMOD=0x11; //T/C1采用16位定时器/计数器 ET1=1; //定时器1开中断ET0=1; TH0=0x00;TL0=0x00; TH1=0xff;TL1=0xce; TR1=0;TR0 =0; //定时计数器启动计数 EX0 =1; //外部中断0关中断 PT1=1; EA =1; //CPU开中断}//--------------------------------------------------//-------超声波测距----------------------------voidchaoshengbo(){ uintdistance_data;EA=0; Trig=1;delay_20us();Trig=0;while(Echo==0); succeed_flag=0; TH0=0;TL0=0; EX0=1;TR0=1; EA=1; delay_ms(7); if(succeed_flag==1) { distance_data=outcomeH;distance_data<<=8; distance_data=distance_data|outcomeL;distance_data=(distance_data/25)*43/100;} a=distance_data; distance1=a;}voiddelay_us(uintx) //演示程序{do{x--;}while(x>1);}voiddelay_ms(uintx){while(x!=0){delay_us(500);x--;}}baidong() //舵机转动{TR1=1;pro=24; //90°delay_ms(100);pro=10;//小于10°delay_ms(100);pro=36;//大于160°delay_ms(100);pro=24;//90°delay_ms(100);TR1=0;}voidtimer0()interrupt3//定时0.1ms{TH1=0xff;TL1=0xce;j++;if(j<=pro){PWM=1;}else{PWM=0;}if(j==400)//周期20ms{j=0;PWM=~PWM;}}//左转voidcomeleft(){ out1=0; out2=1; out3=1; out4=0; delay_ms(40);}//右转voidcomeright(){ out1=1; out2=0; out3=0; out4=1; delay_ms(40);}//前进加速;voidcomeon(){ out2=0; out4=0; out1=1; out3=1;}//后退;voidback(){ out2=1; out4=1; out1=0; out3=0; delay_ms(200);}voidstop() //停止{ out1=0; out2=0; out3=0; out4=0;}//避障voidshunback(){ uintDATA1,DATA2; chaoshengbo(); if(distance1<8) //当超声波测距距离小于8则 { sto

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论