资源目录
压缩包内文档预览:(预览前20页/共40页)
编号:11148899
类型:共享资源
大小:4.82MB
格式:RAR
上传时间:2018-10-12
上传人:遗****
认证信息
个人认证
刘**(实名认证)
湖北
IP属地:湖北
40
积分
- 关 键 词:
-
搬运
机器人
模型
及其
控制系统
设计
- 资源描述:
-
寻线搬运机器人模型及其控制系统设计,搬运,机器人,模型,及其,控制系统,设计
- 内容简介:
-
桂林电子科技大学毕业设计(论文)报告用纸 第 40 页 共 40 页引言 轮式移动机器人是机器人研究领域的一项重要内容它集机械、电子、检测技术与智能控制于一体。在各种移动机构中,轮式移动机构最为常见。轮式移动机构之所以得到广泛的应用。主要是因为容易控制其移动速度和移动方向。因此有必要研制一套完整的轮式机器人系统。并进行相应的运动规划和控制算法研究。随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成cpu、存储器、定时器计数器、并行和串行接口、看门狗、前置放大器、ad转换器、da转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人们已经完全可以设计并制造出具有某些特殊功能的简易智能机器人。笔者设计和开发了基于5l型单片机的自动巡线轮式机器人控制系统。1 绪 论1.1 移动机器人概述自动引导机器人技术可用于无人驾驶汽车,电力、无人工厂、仓库及服务机器人等领域。本文结合机器人的产生和发展状况,在讨论电力线巡检常用设备和方法的基础上,分析了国内外巡线机器人、研究及应用现状。结合作者进行的具体研究工作讨论了巡线机器人的一般结构、控制方案,并提出了两臂机器人的故障探测、行为规划方案。两院院士宋健曾说过:“机器人学的进步和应用是本世纪自动控制最有说服力的成就,是当代最高意义上的自动化”。科学的进步与技术的创新,为机器人的研究与应用开辟了广阔的思路与空间。1.1.1巡线机器人的发展(1) 国外巡线机器人的发展移动机器人技术的发展为架空电力线路巡检提供了新的技术平台。20世纪80年代,国际上开始研制高压输电线路巡线机器人。早期日本、美国和加拿大等国相继开发了不同用途的巡线机器人,并取得了较大的进展,尤其是可在两个杆塔之间巡检的机器人技术较为成熟,有些已达到产品化的程度。1988年Sawada等人首先研制了具有初步自主越障能力的光纤复合架空地线巡检移动机器人,该机器人依靠内嵌的输电线路结构参数进行运动行为的规划。当遇到杆塔时,该机器人利用自身携带的导轨从杆塔侧面滑过,如图1,因为没有安装外部环境感知传感器,因而适应性较差。而且导轨约100kg,机器人自身过重,对电池供电有更高要求。 图1-1 光纤架空地线巡检机器人美国TRC公司1989年研制了一台悬臂自治巡检机器人模型,能沿架空导线进行较长距离的行走,可进行电晕损耗、绝缘子、结合点、压接头等视觉检查任务,并将探测到的线路故障参数进行预处理后传送给地面人员,如图2。然而仅在两个杆塔之间爬行的巡线机器人已远远不能满足实际线路巡检工作的要求,输电线路不仅存在着支撑杆塔,而且还存在着多种线路附件构成的障碍物,如防震锤、悬垂线夹、耐张线夹和绝缘子等。因此具有越障功能的巡线机器人成为该领域研究的重点。 图1-2 TRC公司的悬臂机器人由日本Sato公司生产的输电线路损伤探测器也采用了单体小车结构(图1-3 所示),能在地面操作人员的遥控下,沿输电线路行走,利用车载探测仪探测线路损伤程度及准确位置,将获取的数据和图片资料存储在数据记录器中。地面工作人员可回放复查,进一步确定损伤情况。加拿大魁北克水电研究院的Serge Montambault等人2000年开始了HQ LineROVer控小车的研制工作。遥控小车起初用于清除电力传输线地线上的积冰,逐渐发展为用于线路巡检、维护等多用途移动平台。该移动小车驱动力大,能爬上52o 的斜坡,通信距离可达1km。小车采用灵活的模块化结构,安装不同的工作头即可完成架空线视觉和红外检查、压接头状态评估、导线清污和除冰等带电作业。但是,HQ LineROVer 无越障能力,只能在两线塔间的输电线路上工作。图1-3 Sato公司的探伤机器人 此外,日本的Hideo Nakamura 等研制了蛇形运动机器人。泰国Peungsungwal等人2001 年设计的自给电巡线机器人,采用电流互感器从爬行的输电线路上获取感应电流作为机器人的工作电源,从而解决了巡线机器人长时间驱动的动力问题。(2)国内巡线机器人的发展现状90年代末,国内的一些研究机构和高等学校开始巡线机器人的研究工作,并已经研制多种机构的巡线机器人样机。武汉大学和山东大学在这方面的研究起步最早。在“十五”国家高新技术发展计划(863 计划)的支持下,武汉大学和中科院自动化所、中科院沈阳自动化所等同时开展了对巡线机器人的研制工作。1998年武汉水利电力大学的吴功平教授研制出了架空高压线路巡线小车,小车采用单体三驱动轮结构,具有稳定的行走功能和越障功能,能顺利越过绝缘子、防振锤、悬垂线夹等主要障碍物,并利用携带的近距离红外故障诊断仪完成线路的诊断。巡线小车的行走、越障通过人工遥控加机械控制器来实现。目前,该研究组正在进行智能化程度较高、越障能力强的自治巡线机器人的研制工作。在863计划的支持下,与汉阳供电公司合作,针对220kV单分裂相线,进行了巡线机器人关键技术的研究,在机器人越障机构、智能控制、移动导航、机器视觉技术、电能在线补给等方面取得了全面的突破。巡线机器人能够避让和跨越两档线路间的防震锤、悬垂和耐张绝缘子串和跳线等各种障碍物。利用机器人携带的摄像装置,实现线路及其安全通道的检测与巡视,将检测到的数据和图像信息经过无线传输系统发送到地面基站;通过地面基站接收、显示发回的数据和图像资料。 图1-4 两臂回旋式机器人 图1-5 三臂轮式机器人在863计划以及国电东北电网有限公司的支持下,中国科学院沈阳自动化研究所开展了“沿500kV地线巡检机器人”的研制,课题组攻克了机器人机构、自主控制、数据和图像的传输等关键技术,成功地开发出由巡检机器人和地面移动基站组成的系统,并与锦州超高压局合作进行了现场带电巡检试验,完成了超高压实际环境下的巡检试验。该机器人能够沿500kV地线行走、跨越障碍,利用携带的摄像机或红外热像仪等检测装置,检测了输电线、防震锤、绝缘子和杆塔等输电设备的损伤情况。实现机器人和地面基站远程通讯,基站对机器人运行状态的远程控制。该样机的成功研制,在系统电源、机器人本体、控制系统、检测设备和通讯设备,地面控制与数据后台处理等方面积累了丰富的经验。 “十五”期间,中科院自动化所开展了“11 0 k V输电线路巡检机器人”的研究,其研究成果主要表现在:一是设计了三臂悬挂式移动机器人机构;二是采用“基于知识库的自动控制”和“基于视觉的远程遥控主从控制”的混合控制系统,实现了典型障碍的越障;三是采用多层神经元网络分类器,实现了实验室复杂环境下绝缘子开裂、破损视觉检查。目前,中科院自动化所复杂系统与智能科学重点实验室新研制的110kv输电线路巡检机器人采用二臂回转式悬挂机构,增加了臂距调整机构、夹持轮抱线机构等,可实现旋转、俯仰等运动功能,爬坡能力强。开发的二臂巡线机器人样机在实验室模拟线路上,沿一档架空线自主行走,并且能够跨越两档线路间的防震锤、悬垂线夹等障碍物。机器人携带的检测用地摄像机,可进行障碍物的检测和越障时的辅助指导工作,有效地克服了三臂机器人的不足,当然两臂机器人的行为规划复杂,增加了控制电路设计及运动控制的难度。东南大学,山东大学等相继研制出各自的巡线机器人。从国内外已取得的研究成果可以看出,国外无越障功能的架空电力线路巡线机器人技术较为成熟,已进于实用阶段。这类机器人一般需人工参与,只能完成两线塔之间电力线路的检查,作业范围小,自治程度低。自主巡线机器人能跨越线路附件、线塔等障碍物,可实施大范围、长时间的线路巡检作业,国内对具有自主越障功能的机器人研究投入力量大,取得了多项研究成果。为满足在柔性输电线行走并跨越各种障碍物,巡线机器人必须解决好结构设计、障碍物探测识别和控制行为规划三方面的问题。 1.2 移动机器人的设计思路巡线搬运机器人以16位微控制AT89S52为控制器,采用多传感器进行信息采集,巡线机器人设计,其主要包括超声波检测障碍物模块、红外巡线检测、电动机调速驱动以及人机接口等模块。该系统在单片机的控制下,采集、存储、处理巡线系统输入的数字信号,并通过驱动系统来控制直流电机,使机器人按照预设的路线行走。该系统使用反射式红外传感器识别与地面颜色差别较大的引导线信息,采用L298H桥驱动电路和PWM波调速方法控制行走电机。给出了系统调试方法并分析了试验数据,讨论了提升系统性能的必要手段,实现了机器人的自动巡线功能。1.3 课题设计的任务和要求(1)动机器人搬运路线的弯道半径不大于300mm,移动机器人的运动线路示意图、移动机器人模型的结构图采用AutoCAD或CAXA软件绘制并打印; (2) 移动机器人由单片机控制,采用电池供电,能自动前后寻线运动搬运物体,当没有需要搬运的物体时自动等待,当运动线路的前方300mm处有障碍物时停止运动并报警,障碍消失后自动继续运动; (3) 采用Protel99se软件绘制和打印系统的电路原理图,电路原理图标明全部零部件和元器件的型号或主要参数; (4) 采用C51语言设计控制程序,控制程序同时用程序流程框图和C代码表示,程序流程框图尽量细化并用计算机绘制打印,C代码添加详细的中文注释; 2 移动机器人总体设计2.1移动机器人整体设计系统框架如图1-1所示:图2-1系统框架图 如图2-1所示,该智能小车系统主要分为以下四大块: (1) 信息采集模块:在该模块中包括有速度信息采集和位置信息采集两个子模块,分别采集小车当前的位置信息和速度信息,并将采集到的信息传给MCU,其核心是传感器。(2) 信息处理模块:信息处理模块包括信息处理和控制模块,其核心是MCU,MCU接收到采集来的信号,对信号进行处理后作出判断,并发出控制命令。(3) 执行模块:该模块包括了驱动电机、转向电机、机械手指和报警装置,当接收到MCU的命令后便执行相应的操作,同时信息采集模块又采集到电机和舵机的状态信息,反馈给MCU 。从而整个系统构成一个闭环系统,在运行过程中,系统自动调节而达到正确行驶的目的。(4) 超声波收发模块:在该模块中包含了超声波输出与超声波输入,其中超声波输出用来发射40Mhz的超声波,结合超声波接受部分,从而可以检测和计算障碍物的距离。2.2移动机器人整体方案论证2.2.1 传感器设计方案(1) 轨道检测: 探测路面黑线的基本原理:光线照射到路面并反射,由于黑线和白纸对光的反射系数不同,可根据接收到的反射光强弱来判断黑线,可实现的方案有以下几种:方案一:使用CCD传感器来采集路面信息。使用CCD传感器,可以获取大量的图像信息,可以全面完整的掌握路径信息,可以进行较远距离的预测和识别图像复杂的路面,而且抗干扰能力强。但是对于本项目来说,使用CCD传感器也有其不足之处。首先使用CCD传感器需要有大量图像处理的工作,需要进行大量数据的存储和计算。因为是以实现小车视觉为目的,实现起来工作量较大,相当繁琐。 方案二:采用普通发光二极管及光敏电阻组成的发射接收方案,电路如图1-1所示。该方案在实际使用时,容易受到外界光源的干扰,有时甚至检测不到。主要是因为可见光的反射效果跟地表的平坦程度、地表材料的反射情况均对检测效果产生直接影响。虽然可采取超高亮度发光二极管降低一定的干扰,但这有增加额外的功率损耗。 方案三:脉冲调制的反射式红外发射接收器。由于采用该有交流分量的调制信号,则可大幅度减少外界干扰;另外红外发射接受管的最大工作电流取决与平均电流,如果采用占空比小的调制信号,在平均电流不变的情况下,瞬时电流很大(50100mA),则大大提高了信噪比。在本次设计中,导轨只有黑白两种颜色,小车只要能区分黑白两色就可以采集到准确的路面信息。经过综合考虑,在本项目中采用方案二红外光电传感器作为信息采集元件。(2) 障碍物检测:障碍物检测可以使用超声波,也可以使用红外;但由于红外传感器抗干扰能力弱,即使调制后,其检测距离也有限,不易实现本设计要求;所以采用超声波传感器,其灵敏度高,检测距离远,误差小,抗干扰能力强,可靠性高。(3) 搬用物检测:搬用物检测,采用接近开关,因为位移传感器可以根据不同的原理和不同的方法做成,而不同的位移传感器对物体的“感知”方法也不同,所以常见的接近开关有以下几种: 涡流式接近开关 这种开关有时也叫电感式接近开关。它是利用导电物体在接近这个能产生电磁场接近开关时,使物体内部产生涡流。这个涡流反作用到接近开关,使开关内部电路参数发生变化,由此识别出有无导电物体移近,进而控制开关的通或断。这种接近开关所能检测的物体必须是导电体。 电容式接近开关 这种开关的测量通常是构成电容器的一个极板,而另一个极板是开关的外壳。这个外壳在测量过程中通常是接地或与设备的机壳相连接。当有物体移向接近开关时,不论它是否为导体,由于它的接近,总要使电容的介电常数发生变化,从而使电容量发生变化,使得和测量头相连的电路状态也随之发生变化,由此便可控制开关的接通或断开。这种接近开关检测的对象,不限于导体,可以绝缘的液体或粉状物等。 霍尔接近开关 霍尔元件是一种磁敏元件。利用霍尔元件做成的开关,叫做霍尔开关。当磁性物件移近霍尔开关时,开关检测面上的霍尔元件因产生霍尔效应而使开关内部电路状态发生变化,由此识别附近有磁性物体存在,进而控制开关的通或断。这种接近开关的检测对象必须是磁性物体。 光电式接近开关 利用光电效应做成的开关叫光电开关。将发光器件与光电器件按一定方向装在同一个检测头内。当有反光面(被检测物体)接近时,光电器件接收到反射光后便在信号输出,由此便可“感知”有物体接近。 热释电式接近开关 用能感知温度变化的元件做成的开关叫热释电式接近开关。这种开关是将热释电器件安装在开关的检测面上,当有与环境温度不同的物体接近时,热释电器件的输出便变化,由此便可检测出有物体接近。 机械式接触开关,采用灵敏度很高的接触式开关,其检测可靠,原理简单,寿命长。 考虑到实际情况,搬用物检测采用自制接触开关,安全可靠,实现方便,使用简单,可大大简化电路设计。2.2.2 电机的选择及驱动方案(1) 电动机的选择 方案一:采用步进电机,步进电机的一个显著特点就是具有快速启停能力,如果负荷不超过步进电机所能提供的动态转矩值,就能够立即使步进电机启动或反转。另一个显著特点是转换精度高,正转反转控制灵活。 方案二:采用普通直流电机。直流电动机具有优良的调速特性,调速平滑、方便,调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无级快速启动、制动和反转;能满足各种不同的特殊运行要求。 由于普通直流电机更易于购买,并且电路相对简单,因此建议采用直流电机作为动力源。(2) 电动机驱动方案的选择方案一:采用电阻网络或数字电位器调整电动机的分压,从而达到调速目的。但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵,且可能存在干扰。更主要的问题在于一般电动机的电阻比较小,但电流很大,分压不仅会降低效率,而且实现很困难。方案二:采用继电器对电动机的开与关进行控制,通过控制开关的切换速度实现对小车的速度进行调整。这个电路的优点是电路较为简单,缺点是继电器的响应时间长,易损坏,寿命较短,可靠性不高。方案三:采用四个大功率晶体管组成H桥电路,四个大功率晶体管分为两组,交替导通和截止,用单片机控制使之工作在开关状态,进而控制电动机的运行。该控制电路由于四个大功率晶体管只工作在饱和与截止状态下,效率非常高,并且大功率晶体管开关的速度很快,稳定性也极强,是一种广泛采用的电路。基于以上的分析,建议电动机驱动电路选择方案三。2.2.3 电机的控制方案选择 (1) PWM控制介绍:在小车的运行中,主要有方向和速度的控制,即转向电机和驱动电机的控制,这两个控制是系统软件的核心操作,对小车的性能有着决定性的作用。对电机机的控制,要达到的目的就是:在任何情况下,总能使小车在轨道上,并且实现速度和方向的控制。本次设计所用电机都是直流电机。直流电机转速控制可分为励磁控制法与电枢电压控制法。励磁控制法是控制磁通,其控制功率小,低速时受到磁饱和限制,高速时受到换向火花和换向器结构强度的限制,而且由于励磁线圈电感较大动态响应较差,所以这种控制方法用得很少。大多数应用场合都使用电枢电压控制法。随着电力电子技术的进步,改变电枢电压可通过多种途径实现,其中PWM(脉宽调制)便是常用的改变电枢电压的一种调速方法。PWM调速控制的基本原理是按一个固定频率来接通和断开电源,并根据需要改变一个周期内接通和断开的时间比(占空比)来改变直流电机电枢上电压的占空比,从而改变平均电压,控制电机的转速。在脉宽调速系统中,当电机通电时其速度增加,电机断电时其速度减低。只要按照一定的规律改变通、断电的时间,即可控制电机转速。而且采用PWM技术构成的无级调速系统启停时对直流系统无冲击,并且具有启动功耗小、运行稳定的特点。根据上述,对驱动电机的控制(即速度控制),要达到的目的就是在行驶过程中,小车要有最有效的加速和减速机制。对驱动电机采用PWM控制使小车能在直道上高速行驶,而在弯道减速则保证了小车运行的稳定,流畅。为了精确控制速度,时时对速度进行监控,我们还引入了闭环控制的思想,在硬件设计,增加了速度传感器实时采集速度信息。(2) 电机控制PWM方案选择 PWM调速工作方式:方案一:双极性工作制。双极性工作制是在一个脉冲周期内,单片机两控制口各输出一个控制信号,两信号高低电平相反,两信号的高电平时差决定电动机的转向和转速。方案二:单极性工作制。单极性工作制是单片机控制口一端置低电平,另一端输出PWM信号,两口的输出切换和对PWM的占空比调节决定电动机的转向和转速。由于单极性工作制电压波开中的交流成分比双极性工作制的小,其电流的最大波动也比双极性工作制的小,所以我们采用了单极性工作制。 PWM调脉宽方式:调脉宽的方式有三种:定频调宽、定宽调频和调宽调频。我们采用了定频调宽方式,因为采用这种方式,电动机在运转时比较稳定;并且在采用单片机产生PWM脉冲的软件实现上比较方便。PWM软件实现方式:方案一:采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只在几个us。方案二:采用软件延时方式,这一方式在精度上不及方案一,特别是引入中断后,将有一定的误差。但是基于不占用定时器资源,且对于直流电机,采用软件延时所产生的定时误差在允许范围,故采用方案二。 对转向电机的控制(即方向控制),采用正负脉冲,改变其转向,用通电时间长短,来决定转向的多少。对机械手电机采用一端通高电平,一端通高低电平,来控制其启动与停止。3 移动机器人模型结构及引导系统设计3.1移动机器人模型结构 方案1:购买玩具电动车。购买的玩具电动车具有组装完整的车架车轮、电机及其驱动电路。一般的说来,玩具电动车具有如下特点:首先,这种玩具电动车装配紧凑,轻巧,经过改造,各种所需传感器的安装方便。其次,这种电动车一般是前轮转向后轮驱动,能适应该题目的环形地图,能方便迅速的实现180度的弯角。再次,玩具电动车的电机多为玩具直流电机,易于控制,而且这种电动车价格一般都较便宜。 方案2:自己制作电动车。制定了左右两轮分别驱动,后万向轮转向的方案。即左右轮分别用两个转速和力矩基本完全相同的直流电机进行驱动,车体尾部装一个万向轮。这样,当两个直流电机转向相反同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车坐标不变的90度和180度的转弯。在安装时我们保证两个驱动电机同轴。当小车前进时,左右两驱动轮与后万向轮形成了三点结构。这种结构使得小车在前进时比较平稳,可以避免出现后轮过低而使左右两驱动轮驱动力不够的情况。为了防止小车重心的偏移,后万向轮起支撑作用。 鉴于实验条件和环境的限制,我选择以第一种方案和自己的一些改造后,为本次设计的实物模型,移动机器人机械本体,采用购买的玩具汽车和自己的改造,其结构大致分为:前后电机盒,电池盒,传感器安置板和机械手部分,其示意图如下: 图3-1 移动小车模型3.2移动机器人引导系统3.2.1 导轨引导系统导轨:金属或其它材料制成的槽或脊,可承受、固定、引导移动装置或设备并减少其摩擦的一种装置。导轨表面上的纵向槽或脊,用于导引、固定机器部件、专用设备、仪器等。导轨又称滑轨、线性导轨、线性滑轨,用于直线往复运动场合,拥有比直线轴承更高的额定负载, 同时可以承担一定的扭矩,可在高负载的情况下实现高精度的直线运动。 导轨在我们的日常生活中的应用也是很普遍的,如滑动门的滑糟、火车的铁轨等等都是导轨的具体应用。还有就是导轨可以用于任何需要带滑动滑动的机器或设备上面,如有用于电梯导轨,还有就是窗帘上有时也会用到它。 导轨引导系统,安全可靠,但其制造和设计成本昂贵,轨道固定,缺乏灵活性,并且工作时,噪音大,磨损严重,寿命短。3.2.2 机器视觉引导系统机器视觉技术是计算机学科的一个重要分支,它综合了光学、机械、电子、计算机软硬件等方面的技术,涉及到计算机、图像处理、模式识别、人工智能、信号处理、光机电一体化等多个领域。自起步发展至今,已经有20多年的历史,其功能以及应用范围随着工业自动化的发展逐渐完善和推广,其中特别是目前的数字图像传感器、CMOS和CCD摄像机、DSP、FPGA、ARM等嵌入式技术、图像处理和模式识别等技术的快速发展,大大地推动了机器视觉的发展。 简而言之,机器视觉就是利用机器代替人眼来作各种测量和判断。在生产线上,人来做此类测量和判断会因疲劳、个人之间的差异等产生误差和错误,但是机器却会不知疲倦地、稳定地进行下去。一般来说,机器视觉系统包括了照明系统、镜头、摄像系统和图像处理系统。对于每一个应用,我们都需要考虑系统的运行速度和图像的处理速度、使用彩色还是黑白摄像机、检测目标的尺寸还是检测目标有无缺陷、视场需要多大、分辨率需要多高、对比度需要多大等。从功能上来看,典型的机器视觉系统可以分为:图像采集部分、图像处理部分和运动控制部分。 机器视觉系统的优点有:非接触测量,对于观测者与被观测者都不会产生任何损伤,从而提高系统的可靠性。具有较宽的光谱响应范围,例如使用人眼看不见的红外测量,扩展了人眼的视觉范围。 长时间稳定工作,人类难以长时间对同一对象进行观察,而机器视觉则可以长时间地作测量、分析和识别任务,机器视觉系统的应用领域越来越广泛。在工业、农业、国防、交通、医疗、金融甚至体育、娱乐等等行业都获得了广泛的应用,可以说已经深入到我们的生活、生产和工作的方方面面。移动机器人引导系统是采用视觉引导系统让移动机器人识别、追踪黑线来实现,黑线的路径就是机器人的引导系统,其原理是不同颜色对光的反射和吸收不同,从而通过光学元器件,机器人可以就识别路线,实现路径跟随,同时,在轨道上设置不同的标记,来让机器人识别弯道和搬用处的识别,其示意图如下: 图3-2 巡线轨道示意图4 控制系统电路设计4.1 单片机的功能特点MCS-51单片机产品兼容 、8K字节在系统可编程Flash存储器、 1000次擦写周期、 全静态操作:0Hz33Hz 、 三级加密程序存储器 、 32个可编程I/O口线 、三个16位定时器/计数器 八个中断源 、全双工UART串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、看门狗定时器 、双数据指针 、掉电标识符 。At89s52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。 图4-1 C52单片机引脚图P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用。在flash编程和校验时,P3口也接收一些控制信号。 图4-2 本设计中的最小系统本系统采用at89S52单片机作为中央处理器。其主要任务是扫描红外检测传感器输入的信号启动机器人,在机器人行走过程中不断读取传感器采集到的数据,将得到的数据进行处理后,根据不同的情况产生占空比不同的pwm脉冲来控制电机,同时从单片机中发射周期为40KHZ的脉冲,采用中断法接受用于检测障碍物的反射信号,将相关数据进行计算判断,从而产生声光报警信号。其中,p10一p13为红外传感器输入口,p14为接触开关接口,p2.0接声光报警单元,p2.1p2.7用于控制两直流电机,p32接超声波接受传感器,p36接超声波发射传感器。P3.0和p3.7用于控制机械手电机。如图4-2所示。4.2 红外检测电路的设计 当检测到黑线时,红外光管接收到反射回来的红外光,其输出立即发生高低电平跳变,该信号经放大整形后送单片机分析处理。为保证小车延黑线行驶,采用了三个检测器并行排列。在小车行走过程中,若向左方向稍微偏离黑线,则右侧和中间的探头就会检测到黑线,把信号传给单片机,单片机控制车头稍微向右转。若小车严重偏离线路时,只有右侧探头可以检测到黑线,单片机控制转向电机。传感器布局图如所示。 图4-3传感器布局 如图所示,整个传感器布局一字状。中间黑线即为跑道中央黑线,在小车头(路面黑线处布局了三个传感器),用来判断小车是否处于轨道的状态。其检测结果与偏移的逻辑表如下: 表4-1 传感器检测逻辑表传感器A测试值传感器B测试值传感器C测试值偏离情况010没偏110微左偏011微右偏001严重左偏000严重右偏路面黑线检测电路如图所示: 图4 -4 路面黑线检测电路4.3 超声波测距的硬件设计 4.3.1超声波测距的原理单片机发出超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波, 从而测出发射和接收回波的时间差t,然后求出距离 S=ct/2 (4-1) 式(4-1)中的c为超声波在空气中传播的速度。限制该系统的最大可测距离存在四个因素:超声波的幅度、反射物的质地、反射和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小可测距离。为了增加所测量的覆盖范围,减少测量误差,可采用多个超声波换能器分别作为多路超声波发射/接收的设计方法。由于超声波发球声波范围,其波速c与温度有关,表1-1列出了几种不同温度下的波速。表4-2 声速与温度的关系温度()3020100102030100声速(m/s)313319325323338344349386波速确定后,只要测得超声波往返的时间t,即可求得距离S。其系统原理框图如图4-5所示。图4-5 超声波测距系统框图单片机AT89C51发出短暂的40kHz信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,读出时间t,再由系统软件对其进行计算、判别后,相应的计算结果。由单片机AT89C51编程产生40kHz的方波,由P3.6口输出,再经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的检波放大、积分整形及一系列处理,送至单片机。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。该测距装置是由超声波传感器、单片机、发射/接收电路和LED显示器组成。传感器输入端与发射接收电路相连,接收电路输出端与单片机相连接,单片机的输出端与显示电路输入端相连接。其时序图如图4-6所示。 图4-6 时序图单片机在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。计算时间差,即可得到超声波在媒介中传播的时间t,由此便可计算出距离。4.3.2 超声波发射电路超声波发射电路原理图如图4-8所示。发射电路主要由反相器74LS04和超声波发射换能器T构成,单片机P1.0端口输出的40kHz的方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。输出端采两个反向器并联,用以提高驱动能力。上位电阻R1O、R11一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡时间。 图4-7 74LS04芯片内部结构图图4-8超声波发射电路原理图 压电式超声波换能器是利用压电晶体的谐振来工作的。超声波换能器内部有两个压电晶片和一个换能板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片会发生共振,并带动共振板振动产生超声波,这时它就是一个超声波发生器;反之,如果两电极问未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收换能器。超声波发射换能器与接收换能器在结构上稍有不同,使用时应分清器件上的标志。4.3.3 超声波检测接收电路集成电路CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38 kHz与测距的超声波频率40 kHz较为接近,可以利用它制作超声波检测接收电路(如图)。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。适当更改电容C4的大小,可以改变接收电路的灵敏度和抗干扰能力。图4-9 超声波检测接收电路4.4 搬用物检测电路 搬用电路采用自制接触开关,其电路图如下: 图4-10 接触开关电路示意图4.5 电机驱动电路直流电机驱动采用恒压恒流桥式2A驱动芯片L298N,L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机。L298N可接受标准TTL逻辑电平信号VSS,VSS可接457 V电压。4脚VS接电源电压,VS电压范围VIH为2546 V。输出电流可达25 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动一台电动机。5,7,10,12脚接输入控制电平,控制电机的正反转。EnA,EnB接控制使能端,控制电机的停转。表1是L298N功能逻辑图。 图4-11 L298内部功能模块表4-3 L298控制逻辑表EabIn1In2运转状态0-停止110正转101反转111刹车100停止In3,In4的逻辑图与表1相同。由表1可知EnA为低电平时,输入电平对电机控制起作用,当EnA为高电平,输入电平为一高一低,电机正或反转。同为低电平电机停止,同为高电平电机刹停。下图是其引脚图: 图4-12 L298芯片引脚图图4-13 L298控制两电机示意图1、15脚是输出电流反馈引脚,其它与L293相同。在通常使用中这两个引脚也可以直接接地。上图是其与51单片机连接的电路图。4.6 电源模块设计电源模块采用三端稳压集成电路7805,从电池供电端,将9V电压稳压到5V。7805是我们最常用到的稳压芯片了,他的使用方便,用很简单的电路即可以输入一个直流稳压电源,他的输出电压恰好为5v,刚好是51系列单片机运行所需的电压,他有很多的系列如ka7805,ads7805,cw7805等,性能有微小的差别,用的最多的还是lm7805,下面我简单的介绍一下他的3个引脚以及用它来构成的稳压电路的资料。 图4-14 7805引脚图其中1接整流器输出的+电压,2为公共地(也就是负极),3就是我们需要的正5V输出电压了。图4-15 电源模块电路图4.7 报警电路设计 报警电路采用三极管开关功能,控制蜂鸣器发声和指示灯的发光,其电路图如下:图4-16 报警模块电路图5 系统软件的设计5.1 编程思路及总流程图5.1.1总流程图YYYNN开始程序初始化 送初值 开中断巡线检测障碍物检测是否有搬运物标记? 是否有弯道标记?是否有障碍物? 检测标志计数为奇?检测标志计数为奇?距离小于30cm是否有搬运物?驱动电机减速停机报警停车20秒机械手动作加速停车20秒机械手动作停机等待YYNNNYYNN 图5-1 总流程图5.1.2 程序设计思路 移动小车在开始工作时,调运巡线子程序,至于小车前端的三个红外传感器检测识别黑色轨道,并引导小车顺着轨道运行,同时超声波检测障碍的程序也用来检测轨道前方路面情况,如果30cm以内用障碍物,小车停止报警;否则,小车继续行驶。在轨道上,设置了用于定位的不同标志,用来识别搬用地点和弯道,当小车移动到搬用物标志处,小城停下来判断是否有搬运物,有则启动机械手搬用,否则停止;在小车识别到时弯道标志时减速运行,如此循环,直到完成任务。5.2 超声波测距的算法设计 超声波测距的原理为超声波发生器T在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器R所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。距离的计算公式为: d=s/2=(ct)/2 其中,d为被测物与测距仪的距离,s为声波的来回的路程,c为声速,t为声波来回所用的时间。在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。 其部分源程序如下:uchar a; /一次发射方波数 TMOD=0x01; /T0计数,方式1 TH0=0; /计数初值 TL0=0; IT0=1; /INT0负脉冲触发 EA=1; /开总中断 EX0=1; /开外部INT0中断 again=1; while(1) while (again=1) P36=1; TR0=1; /T0开始计数5.3 巡线算法设计 在本次设计中要实现寻线功能的基础上,要识别轨道上的不同标示,例如在转弯时,采用将轨道黑线加宽来识别,第一次检测到时,机器人进入弯道,机器人减速;第二次检测到时,跑出弯道,机器人加速。循环进行时,其算法为在检测到全黑线次数为奇数时,机器人减速;为偶数时,加速。在检测搬用物时,采用全白作为标示,在检测到全白时,机器人停止一段时间,然后判断,此处是否有搬运物,有则开启机械手电机,否则停机。 图5-2 巡线子程序流程图其部分源程序如下:if(K1=0)&(K2=0)&(K3=0)/弯道 uint n=2; n+; if(n%2=0) /标志位检测次数为偶数时,加速 CL0=1; else k=2000; / 标志位检测为奇数时 ,减速 pwm(); if(K1=1)&(K2=1)&(K3=1) /目的地 AorB uint m=2; m+; P0=1; /驱动电机刹车 delay(5000); if(K4=0) /有物体 if(m%2=1) Pj=1;/机械手电机停else Pj=0; 5.4电机控制设计 PWM脉宽控制:本设计中采用软件延时方式对脉冲宽度进行控制,延时程序函数如下:void pwm() CL0=1; delay(k); CL0=0; delay(10000-k);此函数为带参数delay,约产生10000个周期的延时,因此一个脉冲周期可以由高电平持续时间系数k和低电平持续时间系数(10000-k)组成,本设计中采用的脉冲频率为12MHz,可得hlt+llt=10000,占空比为k/10000因此要实现定频调宽的调速方式,只需通过程序改变全局变量k的值。5.5 超声波发生子程序与超声波接受中断程序 超声波发生子程序的作用是通过P3.6端口发送100个左右超声波脉冲信号(频率约40kHz的方波),脉冲宽度为12s左右,同时把计数器T0打开进行计时。超声波发生子程序较简单,采用C语言编程。 超声波测距仪主程序利用外中断0检测返回超声波信号,一旦接收到返回超声波信号(即INT0引脚出现低电平),立即进入中断程序。进入中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2以表示此次测距不成功。前方测距电路的输出端接单片机INT0端口,中断优先级最高,左、右测距电路的输出通过与门IC3A的输出接单片机INT1端口,同时单片机P1.3和P1.4接到IC3A的输入端,中断源的识别由程序查询来处理,中断优先级为先右后左。其流程图如下:中断开始关中断计数器停止计数计算距离开中断中断返回开始中断初始化计数器计数发射100个40Hz脉冲子程序返回 图a 中断程序 图b障碍物检测子程序 图5-3 障碍物收发子程序流程图部分源程序如下: for(a=0;a200;a+) /产生100个40KHz的方波 P36=!P36; delays() ; again=0;void intersvro(void) interrupt 0 using 1 /INTO中断服务程序 uchar DH,DL; ulong COUNT; ulong num; TR0=0 ;/停止计数 DH=TH0; DL=TL0; COUNT=TH0*256+TL0; /距离的计算 num= (344*COUNT)/20000; if (num=30) P0=1; TH0=0; TL0=0; 5.6完整源程序源程序如下:#include #include #define uchar unsigned char#define uint unsigned int#define ulong unsigned longsbit K1 =P11 ; /左传感sbit K2 =P12 ; /中传感sbit K3 =P13; /右传感sbit K4 =P10; /物体检测sbit CL0=P25; /PWM输出使能端sbit CL1=P21; /方向使能端sbit O3=P22; /转向向控制sbit O4=P20;sbit O1=P23; /驱动方向控制sbit O2=P24;sbit Pj=P33; /机械手电机sbit Px=P34;sbit P36=P36; /超声收发sbit P32=P32;uint k;sbit Pf=P27 ; /报警控制bit again;void pwm(); void delay(uchar z);void delays () / 脉冲延时程序void main() uchar a; /一次发射方波数 TMOD=0x01; /T0计数,方式1 TH0=0; /计数初值 TL0=0; IT0=1; /INT0负脉冲触发 EA=1; /开总中断 EX0=1; /开外部INT0中断 again=1; while(1) Pf=0; /关报警 Pj=0;/机械手电机转 CL0=1; CL1=1; O1=1; /驱动电机正转 O2=0; while (again=1) /超声波 P36=1; TR0=1; /T0开始计数 for(a=0;a200;a+) /产生100个40KHz的方波 P36=!P36; delays() ; again=0; if(K2=0) if (K1=K3) /直线行驶 O3=1,O4=1; if(K1=0)&(K3=0)/ 驱动程序之弯道 uint n=2; n+; if(n%2=0) CL0=1; else k=2000; /减速 pwm(); else if(K1=1)&(K3=0)/微偏 O3=1,O4=0;delay(80); else O3=0,O4=1;delay(80); if(K2=1) if (K1=K3) /直线行驶 O3=1,O4=1; if(K1=1)&(K3=1) /目的地 AorB uint m=2; m+; P2=1; /驱动电机刹车 delay(5000); if(K4=0) /有物体 delay(20); if(K4=0) /防抖 if(m%2=1) Px=0; /机械手电机停else Pj=0; else if(K1=1)&(K3=0) /大偏 O3=1,O4=0; delay(2000); else O3=0,O4=1; delay(2000); void delay(uchar z)/延时函数 uint i,j; for(i=0;iz;i+) for(j=0;j60;j+) ; void intersvro(void) interrupt 0 using 1 /INTO中断服务程序 uchar DH,DL; ulong COUNT; ulong num; TR0=0 ;/停止计数 DH=TH0; DL=TL0; COUNT=TH0*256+TL0; num= (344*COUNT)/20000; if (num=30) P2=1; Pf=1; TH0=0; TL0=0; void pwm() /延时子程序 CL0=1; delay(k); CL0=0; delay(10000-k);5.7控制效果报告本次设计从开始到最后调试分为两个阶段:第一阶段为软件调试,将每个模块的控制程序写好后,采用仿真实验验证,对于不合理的地方经过几次修改,最终达到目的;第二阶段为硬件调试,根据原理图制好PCB图后,将各模块的硬件设计好后,逐个模块进行测试,经过反复验证和修改后,得到的结果不是令人满意,尤其是在巡线传感器这块,老是出问题,在这块将近花了一个多星期,最后调试好了。但软硬件结合这块没能处理好,没能达到任务要求。具体的调试过程和结果如下:(1) 电源模块。电源模块原理简单,元器件少,但是在试验过程中由于负载作用,其稳压输出端电压并不为5伏,而通常只有4点几伏,不过也能供系统工作。并且采用镍-锌9V电池,其容量只有几百毫安伏,工作时间一般。有时系统负载大,而使7805过热。(2) 红外传感器线路检测模块。其实,刚开始时,选用的是光敏电阻和发光二极管组成的传感器,但其受外界干扰太大,而最后选择了红外收发一体式传感器,其抗干扰性强,硬件电路也较方便,但是在实际中这一块却是费工最多,起初,由于没有对传感器各引脚进行检测,和对其参数的未知,所以在实验室少了不少管子,后来再三试验和思考后,才发现原来每个管子的引脚都不一致;另外,在开始时,选的电阻不合适,而使检测的灵敏度太低,输出的电压变化不到1V,远远不能触发反相器74LS14正常工作,后来采用可调电阻后,发现电压变化达到一点几伏,可以触发反相器工作,达到检测黑线的目的,并且灵敏度也较满意。(3) 电机控制模块,因为此次设计中,要控制两个个直流电机,刚开始,找了许多控制电路图,大都过于复杂,控制起来也不方便。后来,在网上找到一些用于控制直流电机的芯片,其中L298正好能控制两个直流电机,并且控制方便,在实验过程中也很顺利,效果满意。(4) 障碍物检测模块。障碍物检测刚开始选用红外传感器,但由于未采用调制式发射,而使得其检测距离较小,还有其对准要求较高,而放弃。最后查了大量资料,采用软件发射40KHZ的超声波,CX20106A接收超声波。实验过程中,测试到P3.6口有脉冲输出,但导入程序后,并不能实现功能。(5) 搬用模块。这个模块是个难点,开始以为采用电磁铁便可实现,但后来发现,要买现成的电磁铁,提供足够的吸力,需要较高电压,并且装置较复杂。后来,决定自制电磁铁,买了根铁芯,买了漆包线,将漆包线密实绕在铁芯,通9V电压时,其产生的吸力很小,最后将电压提高到12V时,任然很小,连个铁片都吸不起。机械手指,采用自制夹子,后来用电机绕线,来拉动夹子的开合,实验室还能达到目的,但是5V电源提供的电压太小,还有使用的电机为直流电机,其负载能力较弱,驱动力太小,而无法正常工作。(6) 软件调试方面。采用protuse仿真软件,布好原理图,由于红外检测和超声波接受无法直接仿真,就采用开关量简化,采用C语言编好程序,用编译软件Keil uVision3反复调试,将生成Hex文件导入仿真,最后得到达到了预期效果。(7) 软硬件结合调试。虽然仿真成功,硬件单独测试也良好,但导入程序后,发现各电机不能按要求启动,并且时好时坏,大多情况下几乎没反应,只有报警器在该响时不响,不该响时尽响。最后在,在张老师的指导下,采用结合硬件编程,反复调试,仍未能完成任务。6 结 论本课题所设计的巡线搬用机器人具有智能化、效率高、控制简单方便等优点。在许多工业现场和自动控制场合,都有很重要的作用。但由于经验不足,电路硬件、软件部分都有不够完善的地方,由于实验设备和加工条件的限制,实物虽然做出了,但没能很好的实现要求,在今后的学习中我会更加努力。总体来说,最重要的是在本课题的设计过程中我学到了很
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。