毕业论文-轮式机器人控制系统设计_第1页
毕业论文-轮式机器人控制系统设计_第2页
毕业论文-轮式机器人控制系统设计_第3页
毕业论文-轮式机器人控制系统设计_第4页
毕业论文-轮式机器人控制系统设计_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

轮式机器人控制系统设计摘要随着移动机器人技术研究的不断深入,机器人涉足的领域越来越广,需要完成的任务越来越精确复杂,运动的实时性和可靠性要求也越来越高。为适应这一发展,对机器人的控制系统的要求也逐渐提高,因此,对移动机器人的运动控制系统进行了设计。本文通过对轮式机器人发展现状的分析,并根据设计要求,对其进行运动控制系统硬件电路的设计,主要包括了主控制器电路和电机控制电路的设计。其中对主控制器电路进行了控制模块和外围模块的设计,对运动控制系统电路板进行了设计,并对扩展性做了简要的介绍。本文还介绍了基于PCI总线的以单片机为控制芯片的运动控制卡的设计,包括芯片的选择,硬件设计,实现了多协调控制。本套运动控制系统的设计方案,对系统进行了有效的资源配置,更好地提高了控制的效率。为移动机器人提供一个可靠的平台,为机器人多种功能的实现提供便利,为今后机器人产业化提供了可能性。关键词:控制系统电路,传感器,运动控制卡I轮式机器人控制系统设计AbstractWiththedevelopmentofrobotics,robotsentervariousfieldstohelppeople.Sotheirtasksbecomemorecomplexandneedtobedonewithgreateraccuracy,andtherequirementsforrealtimeabilityandreliabilitybecomestricter.Toadapttothistrend.Therequirementsofrobotscontrolsystemarealsograduallyincrease,sothemovementcontrolsystemofmobilerobotswasdesignedinthepaper.Basedontheanalysisofwheeledrobotdevelopment,andinaccordancewithdesignrequirements,itsmotioncontrolsystemhardwarecircuitwasdesigned,whichincludethemaincontrollercircuitandmotorcontrolcircuitdesign.Inthepaper,thecontrolmoduleandtheexternalmodulewasdesignedforthemaincontrollercircuits.Andthemotioncontrolsystemcircuitboardsweredesignedwithabriefintroductionofitsexpansion.ThispaperalsointroducedthedesignofthemovementcontrolcardwhichthemicrocontrollerchipisthecontrolchipbasedonthePCIbus.Itincludesthechoiceofchips,hardwaredesign,aimstoachieveamorecoordinatedcontrol.Thisdesignproposalofmotioncontrolsystemmakesaneffectiveallocationofresources,improvestheefficiencyofcontrol.Itprovidesareliableplatformandconvenienceforrealizationofmultiplefunctionsofrobot,andalsoprovidesthepossibilityoftheindustrializationofrobotforinthefuture.Keywords:controlsystemcircuit,sensor,motioncontrolcardII轮式机器人控制系统设计目录第一章绪论.11.1课题背景.11.2移动机器人发展概况.11.2.1移动机器人研究现状.11.2.2移动机器人的发展展望.21.2.3传感技术的应用.21.3本文的研究内容方案及步骤.31.3.1基本内容和问题包括.31.3.2总体的设计方案及步骤.41.4本文的主要内容和结构.4第二章机器人控制系统设计.52.1主控制器硬件电路设计.52.1.1控制模块设计.52.1.2外围器件模块设计.72.2主控制器电路软件设计.92.2.1主控制器功能要求.92.2.2主控制器软件设计.102.3电机控制电路硬件设计.112.3.1控制模块设计.112.4电机控制电路软件设计.132.5运动控制系统电路板设计.152.6本章小结.16第三章基于单片机的控制卡设计.173.1引言.173.2基于单片机的运动控制卡的硬件设计.173.2.1系统总体设计方案.173.2.2主要芯片的选择.193.2.3硬件实现.243.3多单片机协调控制.293.4本章小结.30第四章总结及展望.324.1总结.32III轮式机器人控制系统设计4.2技术经济分析报告.324.2.1技术可行性分析.334.2.2经济优越性分析.334.3展望.33参考文献.34致谢.35声明.36IV轮式机器人控制系统设计第一章绪论1.1课题背景移动机器人技术的发展已日益成熟,各种功能的移动机器人已被应用到各种重要的领域,例如:搜寻救援、战争、煤矿炸弹探测、科学探索、医疗护理等。国内外各个公司、学校等研发机构已将开发眼光瞄准于人们日常生活的方方面面,设计和开发各种功能的机器人来方便人类的生活,这种科研活动的一个重要目的就是尽可能将设计产品推广到未来的市场中去。目前,实验室移动机器人的研究主要集中于功能型的移动机器人研究,例如:高尔夫球童机器人,助老型机器人等。这些机器人虽然功能各异,但是都具有一个共同点:都是在一个稳定的运动控制系统上,来实现自己的具体功能。为了便于实验室移动机器人的研究项目的研究,利用目前移动机器人的研究中的基于慎思、反应混和范式,设计制作了运动控制系统。运动控制系统的功能主要是接收上层系统发送的运动指令,控制执行器的动作执行,搜集各种非视觉传感器信息,将信息反馈给上层系统,以及反应式行为的产生1。在运动控制系统的设计中,主要介绍了主控制器电路的设计。该系统成功的利用各种传感器信息,产生反应式行为或者送入上层系统进行路径规划,并执行路径规划后的指令,完成了整个机器人系统基本的运行。本运动控制系统的设计,为实验室移动机器人的研究提供一个可靠的平台,为上层系统的移动算法的开发以及机器人多种功能的实现提供便利,为今后机器人产业化提供了可能性。1.2移动机器人发展概况1.2.1移动机器人研究现状移动机器人是机器人学领域中的一个重要研究分支,它是一个集环境感知、动态决策与规划、行为控制与执行等多种功能于一体的综合系统。随着机器人技术的不断发展,移动机器人的应用范围和功能都大为拓展和提高,不仅在工业、国防、服务等行业中得到广泛的应用,而且,在野外作业以及在有害与危险环境作业、极限作业和空间领域中的应用,已得到世界各国的高度重视。移动机器人是一种在复杂的环境下工作的具有自规划、自组织、自适应能力的机器人。在移动机器人的相关技术研究中,导航技术可以说是其核心技术,也是其实现真正的智能化和完全的自主移动的关键技术。导航研究的目标就是没有人的干预下使机器人有目的地移动并完成特定任务,进行特定操作。机器人通过装配的信息获取手段,获得外部环境信息,实现自我定位,判定自身状态,规划1轮式机器人控制系统设计并执行下一步的动作。1.2.2移动机器人的发展展望移动机器人技术是传感技术、控制技术、信息处理技术、机械加工技术、电子技术、计算机技术等多门技术的结合。因此对于移动机器人的发展也必然建立在这些技术的高速发展之上的。对于移动机器人导航的研究应该从以下几个方面着手:(1)先进的传感技术:传感器相当于移动机器人的感觉器官,只有先进的传感器技术才能有效的采集环境信息,从而提高导航的效率和准确性。(2)高效的信息处理技术:信息处理主要是指对于传感器采集进来的信息进行处理,包括语音识别与理解技术,图像处理与模式识别技术等。由于目前移动机器人的导航大都采用基于视觉或有视觉参与的导航技术,因此计算机视觉和图像处理技术的水平对于移动机器人导航的发展将起到至关重要的作用。(3)多传感器的信息融合技术:多传感器的导航方式是移动机器人导航发展的必然趋势。这种多传感器的信息融合技术充分利用了多个传感器的资源,通过对这些传感器及其观测信息的合理支配和利用,把多个传感器在空间或时间上的冗余或互补信息根据一定的准则进行组合,从而获得对被测对象的一致性解释或描述,能够很好的提高导航精度。1.2.3传感技术的应用移动机器人的研究始于20世纪60年代,目前,关于移动机器人的研究,诸如,基于感知的位置判断和局部与全局导航方案的研究,障碍物的检测和避障的新方法以及多传感器信息融合等,引起了国内外众多专家学者的广泛关注。多传感器信息融合技术是目前移动机器人领域的研究热点。智能机器人就是一类能够通过传感器感知环境和自身状态,实现在有障碍物的环境中面向目标的自主运动,进而完成不同作业功能的机器人系统2。智能化是移动机器人的发展方向,而传感器技术的发展是实现移动机器人智能化的重要基础。移动机器人多传感器信息融合技术弥补了使用单一传感器所固有的缺陷,现已成为移动机器人智能化研究领域的关键技术。移动机器人在正常工作时,不仅要对自身的位置,姿态、速度以及系统内部状态等进行监控,同时,还要能够感知所处的工作环境,从而使机器人相应的工作顺序以及操作内容能够自然地适应工作环境的改变。因此,准确获取外部和内部状态信息,对于移动机器人的正常工作、提高工作效率、节约能源及防止意外事故的发生等都是非常必要的。目前,应用于移动机器人的传感器,广义上可分为内部传感器和外部传感器两类。内部传感器用于监测机器人系统内部状态参2轮式机器人控制系统设计数,如电源电压、车轮位置等内部传感器主要有里程计,陀螺仪,磁罗盘及光电编码器等。外部传感器用于感知外部环境信息,如环境的温度、湿度,物体的颜色和纹理,与机器人的距离等。外部传感器种类也很多,主要包括视觉传感器、激光测距传感器、超声波传感器、光电传感器、接近传感器等。不同的传感器集成在移动机器人上,构成了多传感器信息融合的感知系统。随着电子技术以及VLSI技术的飞速发展,传感器结构将朝着并行体结构发展,因此,开发并行计算能力的软件和硬件,来满足具有大量数据且计算复杂的多传感器信息融合的要求,是多传感器信息融合技术的主要发展趋势之一。多传感器信息融合技术硬件的主要发展方向为:研究出能处理多传感器信息的集成电路芯片,不断研制出新型移动机器人用传感器,并且,不断使传感器模型和接口实现标准化。目前,多传感器信息融合算法很多,但大多数算法都是以线性正态分布的平稳随机过程为前提。因此,开发新型的信息融合算法,进一步提高多传感器融合系统的性能,解决非线性以及非平稳正态分布的实际信息融合还有待于进行深入的研究。人工智能可使系统本身具有良好的柔性与可理解性,因而,能够处理复杂的问题。对人工智能的研究将会在传感器选择、自动任务误差检测与恢复等领域发挥巨大的作用。目前,人工智能在多传感器信息融合中的应用已经是国内外研究的一个热点。移动机器人在未知环境下的多传感器信息融合,主要解决其自主定位与导航问题。目前,基于多传感器信息融合的移动机器人自主定位与环境建模取得的研究成果,大多局限于室内结构化环境中3。运动规划和控制与机器人动态的综合考虑等方面问题仍有待于深入研究,特别是非结构环境下移动机器人技术将是今后机器人技术发展的重点。1.3本文的研究内容方案及步骤本文的主要研究内容:本文主要研究轮式机器人的控制器外围部件的选择、控制板的设计和控制系统的设计,同时对机器人进行扩展和优化。1.3.1基本内容和问题包括1.开放式系统结构。采用开放式软件、硬件结构,可以根据需要方便扩充功能,使其适用于不同目的的科研需求。2.合理的模块化设计。硬件根据系统要求和电气特性进行模块化设计,不仅方便安装和维护,而且提高系统的可靠性,软件按功能分成不同模块,便于修改、添加。3轮式机器人控制系统设计3.实时性、多任务要求。控制器必须能在确定时间内完成对外部中断的处理,并且可以多个任务同时进行。4.网络通信功能,便于资源共享和多机器人协同。5.具有一定智能,能根据实际情况判断和决策,如给定速度突变或在合理范围之外时的处理、对故障的自动诊断等。1.3.2总体的设计方案及步骤1.通过对创意之星机器人和自主移动机器人的资料阅读,了解机器人的基本控制系统,进而构造出自己的系统设计思想。2确定控制系统的定义,及控制系统研究的意义与目的,在机器人领域的发展和作用。3对主控制系统进行设计,其中包括控制系统的软件及硬件设计。4针对控制卡进行设计,本文主要对基于单片机的控制卡进行设计。1.4本文的主要内容和结构本论文的工作主要由以下几部分组成:1.主要概述了当前移动机器人导航技术和多传感器技术的发展状况,提出了本论文的研究背景和研究内容。2.介绍了控制系统的定义及研究意义与本文研究课题的研究目的与方向。3.根据机器人运动控制系统设计要求,进行运动控制系统中主控制器电路和电机控制电路的硬件电路和软件程序的设计,完成对移动机器人基本行走的控制。4.设计移动机器人基于单片机的控制卡,对其进行了详细的讲解与功能分析。5.总结本论文所作的工作,以及对未来研究进行了展望。4轮式机器人控制系统设计第二章机器人控制系统设计本章讲述了移动机器人运动控制系统的设计,包括了硬件电路和软件程序的设计。运动控制系统的设计主要分为以W78E52B为主控制器的电路硬件以及软件的设计,和以AT89C2051为控制器的电机运动控制电路的设计。主控制器电路由许多功能各异的模块构成,主要包括电源控制模块与其控制器通信模块、与上位机通信模块。主控制器电路的主要作用是连接上位机系统和执行系统的枢纽,上位机与执行系统之间的信息的交互都要通过主控制器电路进行传输和编译。主控制器电路将电机控制命令发送到电机运动控制电路,AT89C2051再由串口发送到电机驱动器MCDC2805,对机器人的行走做出控制。2.1主控制器硬件电路设计2.1.1控制模块设计作为整个系统的主控制器,该控制器主要处理一些任务,如协调控制电路中各个MCU之间的协作、各种传感器信号采集、电机驱动控制等。它与3个AT89C2051进行通信,它们分别控制机器人左右轮的运行和超声传感器信息的采集和处理。另外它还与上位机系统进行通信,辅助机器人在进行路径规划,以及生成环境地图。系统的结构框图如图2-1所示:图2-1系统的结构框图由上面分析可知,主控制器必须运行一定量的程序,提供很多的接口,来完成控制系统的各项任务。需要对控制器提出以下几点要求:(1)具有一定量的程序存储器;(2)具有总线结构;5轮式机器人控制系统设计(3)具有充足的I/O口;(4)编程语言通用;(5)使用方便,价格比较便宜。综合上述几个要求,选择单片机W78E52B作为运动控制系统的主控制器。运动控制系统主控制器:W78E52B是Winbond公司生产的一款MCS-51系列8位微控制器,执行指令与标准8051完全兼容,在性能和价格上,都有自己一定的优势。主控制器W78E52B主要特性有:(1)8位CMOS微控制器;(2)供电电压为4.5V-5.5V;(3)256字节片内数据存储器;(4)8K字节片内FLASHEPROM;(5)具备3组总线(AB,DB,CB);;为了满足系统的要求,根据上述特性,可对主控制器部分进行扩展;(1)数据存储器扩展:用62256进行外部32KBRAM扩展。如图2-2。图2-262256芯片结构(2)总线数据传输:由于通用I/O口有限,数据都通过数据总线传送,需要一些辅助器件:编码器74LS138作为总线地址分配,74HC573作为总线数据锁存。控制系统结构框图如图2-3:6轮式机器人控制系统设计图2-3控制系统结构框图2.1.2外围器件模块设计1.电源管理模块机器人系统电机执行机构需要使用24V电压供电,控制电路需要使用5V电压供电。在设计中,我用一个直流电源(24V,10A)为机器人系统供电,其中,控制电路需要的5V电压也是由24V电源提供的。为了提供稳定的5V直流电源,需要将24V电源稳定到5V。目前,提供稳压直流电压的方法主要有两种:集成线性稳压电路,开关型直流稳压电路。比较而言,开关型直流稳压电路更能降低电源转换芯片的功耗,提高电源的利用效率。在本电路设计中,选择开关型稳压电源LM2576-5作为电压转换模块4。开关稳压电源LM2576-5电气特性如表2-1:表2-1开关稳压电源LM2576-5电气特性符号参数条件MinTypMax单位V输出电压V=12V,I=0.5A4.9005.05.100VV输出电压0.5AI3A4.8005.05.200V8VV40VV输出电压0.5AI3A4.8005.05.225V8VV60VV效率V=12V,I=3A77%7轮式机器人控制系统设计优势:开关稳压电源的功耗极低,其平均工作效率可达70%-90%。在相同电压降的条件下,开关电源调节器件与线性稳压器件相比具有少得多的“热损失”。因此,开关稳压电源可大大减少散热片体积和PCB板的面积,甚至在大多数情况下不需要加装散热片,从而减少了对MCU工作环境的有害影响。LM2576-5在电路中的应用如下图:图2-4LM2576-5在电路中的应用2.复位电路看门狗(watchdog)可以保障系统正常稳定运行,迫使单片微机的程序从“死循环”或者“非程序区”中退出,从硬件或软件的故障中解脱出来。而集成的看门狗芯片MAX7O5-MAX708/MAX813L系列,还有对系统电源的监测作用,更加保障了系统的正常工作。与分散器件相比,芯片MAX7O5-MAX708/MAX813系列减少了电源管理的复杂性和外围器件的数量,大大改善了系统的可靠性和准确性5。MAX7OS-MAX708/MAX813L提供四种功能:(1)电压不足时产生复位信号。(2)如果该的输入在1.6s之内不改变,则输出复位信号。(3)芯片以1.25V为阈值检测电源失败的情况。(4)手动低电平复位。在本电路中,选择了芯片MAX706。MAX706是一种性能优良的低功耗CMOS监控电路芯片,其内部电路由上电复位、可重触发“看门狗”定时器及电8轮式机器人控制系统设计压比较器等。MAX706只要在1.6秒时间内检测到WCI引脚有高低电平跳变信号,则“看门狗”定时器清零并重新开始计时;若超出1.6秒后,WCI引脚仍无高低电平跳变信号,则“看门狗”定时器溢出,WDO引脚输出低电平,进而触发MR手动复位引脚,WDO引脚输出低电平,使MAX706复位,从而使“看门狗”定时器清零并重新开始计时,WDO引脚输出高电平,MAX706的RST复位输出引脚输出大约200毫秒宽度的低电平脉冲,使单片机控制系统可靠复位,重新投入正常运行。3.I/O口扩展由于主控制器W78E52B的通用I/O比较少,只有P1、P3口。所以,很多数据的传输都是通过总线方式来传输的。例如:与超声波电路板的数据、与电机控制电路的数据等等。此时需要I/O口的扩展,采取了两种方式:简单的I/O扩展和可编程I/O口芯片,所用的芯片分别为:(l)74HC245:总线驱动双向三态门74LS245/74HC245/74LS245是三态门的典型电路,8位总线收发器是设计用来在数据总线间的异步双向交流。它分成八个A端和八个B端,到底是A向B送数,还是B向A送数,是由1脚DIR控制的。使能端用以有效隔离数据总线。74HC245一端与W78E52B数据总线相连,另一端与AT89C2051的P0口相连。超声波传感器测得的数据由P0口发出,经过总线驱动双向三态门,再由W78E52B数据总线读入。(2)可编程I/O接口芯片8255A:可编程通用并行接口芯片。8255A共有3个8位口,其中A口和B口是单纯的数据口,供数据I/O使用。而C口即可以作数据口,又可以作控制口使用,用以实现A口和B口的控制功能。8255A共有两种控制字,即8255A工作方一式控制字和C口置位/复位控制字。工作方式控制字用于确定各口的工作方式及数据传送方向;C口置位/复位控制字用来对C口各位置位复位,来定义控制信号和状态信号。2.2主控制器电路软件设计2.2.1主控制器功能要求通过串口与上层上位机系统的通讯:发送传感器信息,辅助上位机建立环境地图、进行路径轨划,并接受上位机规划的运动指令,通过数据总线发送至控制左右轮的AT89C2051。9轮式机器人控制系统设计读取光电传感器数据:通过数据总线采取查寻法直接读取光电传感器信息,由于查寻周期在ms级,故能实时检测到障碍物,进行快速的反应6。读取超声传感器数据:当超声传感器检测到障碍物时,由超声传感器控制板将测得的距离数据送至数据总线,由控制信号引起W78E52B的外部中断,W78E52B通过总线读取锁存在由74HC245的超声传感器数据和控制信号。对各类传感器信息进行融合:由于三种接近传感器不同的量程,可以用来测量不同距离障碍物,有些障碍物可被一种以上的传感器检测到,此时需要对信息进行判断和融合。另外可对传感器采集的周围环境信息进行分类,部分信息直接引起反应式动作的执行,其它部分信息传送上层规划系统。保证基本的运动:若上层规划系统出了故障,路径规划的指令也许是错误的,这时控制系统能够根据感知器保证基本的运动,包括避障和行走,不至于出现严重的碰撞甚至跌倒。2.2.2主控制器软件设计根据主控制器的功能,我进行软件程序的设计。程序设计中,对各个模块的操作主要使用查询和中断两种方式,与上位机系统通讯、超声波数据读取都使用中断方式,对光电传感器信息的读取、人机交互、发送运动指令均使用查询方式。系统经过初始化之后,开始执行电机运动命令,在运动的过程中,读取光电传感器的数据,同时如果超声波系统有读数产生,则通过中断法进行数据的采集。将这些信息收集后,进行判断,是否需要立即改变机器人运动状态。如果需要,则立即改变,否则,将有用的传感器信息送至上位机系统来辅助路径的规划。再一次读取传感器数据。程序的流程图如图2-5所示:10轮式机器人控制系统设计图2-5程序的流程图2.3电机控制电路硬件设计2.3.1控制模块设计根据电机驱动器的指令需求和自身任务的需要,选择了AT89C2051作为电机控制系统的控制器,用AT89C2051扩展串口对电机进行控制,具体框图如图2-6所示:图2-6命令传输途径11轮式机器人控制系统设计对电机驱动器进行简单的ASCII码命令控制可以实现多种模式的电机控制。用两块单片机AT89C2051分别控制左右两个电机:通过数据总线接受W78E52B对左右电机的控制指令,根据电机控制的模式,编写相应的ASCII编码,通过串口送至电机驱动,进行机器人行为的执行,同样可以发送ASCII命令得到电机光码盘的读数和电机的状态,通过P1口发送至锁存器,由W78E52B通过总线读取,并作为上位机构建地图的主要信息通过串口送至上位机7。优点:上位机规划好的命令可以用简单的编码,如十六进制数来表示复杂的传播信息,在AT89C2051中将其转换为对应的ASCII命令,通过串口送至电机驱动器,可加快控制信息的传播速度。用相同的控制信号,使向电机驱动发送命令的动作同时进行,使左右两轮的转动同步化,防止机器人打滑走偏。系统的核心控制器W78E52B通过总线与AT89C2051进行并行数据传播,数据传播速度快。通讯协议:将可编程I/O口芯片8255A连接到主控制器W78E52B数据总线上,器件地址由编码器74LS138来分配。8255A可以将数据线上读到的数据,通过端口选择信号,送入四个可寻址端口。其中,A口和B口分别和控制两个电机控制器的AT89C2051相连。在编程中,根据控制信号TOL/TOR,将控制电机运动的指令分别送入A口和B口。两片AT89C2051同样根据控制信号TOL/TOR由P0口读入数据,转换为可以控制电机控制器的字符串,在通过控制信号TOL/TOR调整两个单片机的同时性,由串口发出。若从控制器MCDC2805向上位机反馈距离信息,则需要用控制信号WT来控制信息的发送接受。发送过程中,由W78E5那向8255A传送的是单字节数据,用以表示电机的某个运动状态,AT89C2051接收到单字节数据,进而转换为控制电机运行的ASCII指令,然后发送到MCDC2805中。由图可知,W78E52B的引脚TOL/T0R直接接到两片AT89C2051上,对这两个信号端的置1和清0可以来控制AT89C2051的读取和发送数据,以及确保数据在某些时候的同步性。在TOL/T0R下降沿时,数据由总线送至8255A的A、B口,在TOL/TOR的上升沿时,两个AT89C2051通过P1口读取各自稳定的数据,再在TOL/T0R下一个下降沿时,将对应转化好的ASCII指令由各自的串口发送至MCDC2805。通讯电路:电机执行命令有控制系统主控制器W78E52B从数据总线中发出,数据总线连接可编程I/0口8255A。12轮式机器人控制系统设计图2-7两片AT89C2051的连接8255A的选通管脚连接着由编码器引出的地址线,主控制器的两位高位地址All、A10接在8255A的A1、A0管脚作为选择8255A的A、B、C或者控制字寄存器。其中A、B口分别连在AT89C2051的P1口,将由主控制器传输的电机执行指令送至P1口。两片MCUAT89C2051分别作为控制机器人移动执行机构中左右两个电机的控制器,控制线WT、TOL/TOR分别由主控制器直接接到AT89C2051的管脚上,用以控制两个MCU之间的信息交互,用以控制电机的运行。两个AT89C2051根据控制线的时序,从P1口读取从主控制器发来的信号,再从串口发出。由于AT89C2051的功能主要是将主控制器的命令转换为ASCII码指令,再由串口发送至MCDC2805,所以通讯设计是比较重要的问题。在软件设计中,系统成功的完成了与电机控制盒的通讯,并采取了合适的编码机制,使通讯过程能够更加高效,而且准确性很高。2.4电机控制电路软件设计软件实现的硬件基础:用两位I/O口TOL/TOR作为控制端来控制主控制器W78E52B和AT89C2051的通信以及两片AT89C2051通过串口向电机控制器发送命令。第一个下降沿时,主控制器W78E52B将单字节指令通过总线发送到8255A的A口和B口上,上13轮式机器人控制系统设计升沿触发AT89C2051从8255A的A口和B口上读取稳定后的数据,再一个下降沿触发AT89C2051向电机控制器MCDC2805发送命令。TOL/T0R作为两个端口可以方便的控制两个电机各自的运动状态。如果电机的行动需要同时进行时,可知两个电机控制信号的时差在1us,对电机同步性影响不大。软件实现的流程:程序执行的过程为控制器AT89C2051在初始化完成后,进行等待,检测I/0口TOL/TOR,当数据到达时,读取数据,按照数据与电机执行命令的对应关系,选择应该执行的电机执行命令,将其发送至电机驱动器;然后程序又一次等待数据的到来。如果电机采取速度模式运行,程序流程图如图2-8所示:图2-8程序流程图软件时序:为了保证电机控制指令能正确无误的传送到电机控制盒MCDC2805,对数14轮式机器人控制系统设计据读取和发送的时序作了很严格的规定,由控制信号TOL/TOR对数据传送进行控制,时序图如图2-9所示:图2-9时序图2.5运动控制系统电路板设计综合系统的各个功能模块,进行原理图和PCB板的设计,设计完成后的运动控制电路板如图2-10所示:图2-10控制电路板15轮式机器人控制系统设计在图中,控制接口可以看到运动控制系统中,主要的接口有:上位机通讯接口,(2个),传感器数据接口(具体包括24V光电传感器接口,5V光电传感器接口,超声波传感器接口),键盘数据接口。通过各个接口,控制系统的各个模块与外接的器件或电路进行交流,完成整个运动控制系统的功能8。2.6本章小结本章首先讲述了根据控制系统的功能要求,对移动机器人控制系统中主控制器电路硬件以及软件的设计,包括主要模块的设计,主要元器件的选择。在完成了电路的设计制作,以及全面的调试之后,通过在程序的编写,主控制器已经可以完成各个模块的功能,为整个系统的正常工作,与上位机的通信,以及对执行机构的控制起到了基础性的作用。其次,对电机的控制电路进行了设计,具体包括电路硬件的设计,软件程序的设计,由于电机电路与主控制器的交互非常频繁,我把这两个逻辑上可以分开的电路设计在一块电路板上,用主控制器多余的I/O口来控制交互的进行,对电机的运动进行控制。16轮式机器人控制系统设计第三章基于单片机的控制卡设计计算机技术的发展在控制领域导致了技术面貌的迅速改变。采用PC技术的PC机的大量涌现,大大地推动和促进了开放式运动控制系统的发展。基于PC的运动控制器可以利用PC强大的软件环境和技术支持,摆脱专用封闭式控制系统的束缚和不便,树立运动控制系统的新概念。而一个PC机本身硬件可支持多条PCI总线,这就给我们设计多单片机的运动控制系统提供了思路。在本章中,首先讨论了单片运动控制卡的设计,然后在单片运动控制卡的基础上分析了各块控制卡之间的协同控制问题。3.1引言我们常说的多单片机系统通常是指由多个单片机或者由PC机与多个单片机构成的更为复杂的控制系统,PC机和多单片机一般构成主从分布式控制系统,而多个单片机之间的关系可能是主从式,也有可能是对等的形式。在运行速度更快、功能更强大、实时性更高、受控制机构更多、任务更复杂、人机界面更完善、地域跨度更广等应用场合,多单片机系统显示出优越性。然而,我们也注意到,这种系统数据的传输需要通过并行或者串行的通信方式来完成。在并行通信方式中,并行传输的数据各位同时传送,数据有多少位,传输线至少就得有多少根。而串行通信方式是将传输数据的每个字符一位接一位(例如先低位、后高位)地传送。而在计算机中数据是并行的,所以当数据由计算机送至数据终端时,要先把并行的数据转换为串行的数据再传送,而在计算机接收由终端送来的数据时,要先把串行的数据转换为并行的数据才能处理9。这就很难适应大数据量的快速传输的要求。由于PC机硬件的支持,本文中我们考虑应用多块运动控制卡同时插入PCI总线的多轴控制策略,这样可以很好的解决大数据块传输过程中传送速度慢的问题。在有效地协调好各控制卡的运行参数后,就可以实现精确、实时的控制,反馈数据也可以通过中断及时发送给PC机,以便PC机及时调整各单片机的运行状况。3.2基于单片机的运动控制卡的硬件设计3.2.1系统总体设计方案在绪论中我们已经提到,今后基于计算机标准总线的开放式运动控制器是市场发展的主流,而早期系统都是由PC机通过ISA总线实现对电机的控制,但由于ISA的自身的缺陷,已经逐步被PCI总线所替代,开发基于PCI的运动控制器是数17轮式机器人控制系统设计控系统发展的一个新要求。PCI总线是Intel公司推出的一种先进的高性能32/64位局部总线,可同时支持多组外围设备,不受制于处理器,数据吞吐量大(33MHz总线频率、32位传输时峰值可高达132MB/s)。目前PCI是处于主流的计算机总线。以往的控制卡一般都是基于ISA总线的,由于ISA传输速率较低,控制卡必须增加中继控制功能,才能够适应控制的高速传输,导致造价高、体积大、传输速率低,不利于ISA总线的推广应用。PCI总线由于传输速度快,而且支持热插拔、电源管理等功能,不但能满足CAN总线的高速数据传输,性能高、功能强,而且体积小、价格低、使用方便、应用范围广。PCI总线是一种不依附于某个具体处理器的局部总线。从结构上看,PCI是在CPU和原来的系统总线之间插入的一级总线,具体由一个桥接电路实现对这一层的管理,并实现上下之间的接口以协调数据的传送。管理器提供了信号缓冲,使之能支持10种外设,并能在高时钟频率下保持高性能10。PCI总线也支持总线主控技术,允许智能设备在需要时取得总线控制权,以加速数据传送。PCI总线是一种先进的局部总线,它的主要优点如下:(1)全部读写传送中可实现突发传送。32位PCI局部总线在读写传送中支持132MB/s的峰值传送速率,对于64位PCI传送支持264MB/s的峰值传送速率。(2)访问时间快。在33MHz总线速度下,访问时间只需要60ns。同时增加了对66MHz总线操作的支持。(3)使用方便,可靠性高,扩展性好。支持64位总线带宽。支持66MHz总线操作。全面兼容ISA/EISA/MCA等扩充总线。(4)低成本、高效益。PCI的芯片将大量系统功能高度集成,节省了逻辑电路,占用较小的线路板空间,成本降低,PCI部件采用地址、数据复用,减少了PCI部件的引脚数。正是因为PCI总线有如此多的优点,使得它成为今天最具发展潜力的局部总线标准。但由于PCI总线协议比较复杂,因此其接口电路实现起来并不容易,而采用通用PCI接口芯片就能很好地解决这一问题。总体设计方案如图3-1所示。本节主要介绍如图所示的运动控制卡的硬件设计,以保证实现PC机的PCI接口与单片机的高速数据通讯,既可以通过PCI向单片机发送指令,也可以取回单片机的反馈数据,以便实现全面监控并及时调整运行参数,达到精确控制。18轮式机器人控制系统设计图3-1总体设计方案3.2.2主要芯片的选择单片机的选择本系统我们采用AT89S52单片机。AT89S52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8kbytes,具有8K在系统可编程Flash存储器和256bytes的随机存取数据存储器(RAM),32个I/O口线,3个16位定时/记数器,一个6向量两级中断结构,一个全双工串行通行口,片内震荡器及时钟电路。同时,AT89S52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但震荡停止工作并禁止其它所有部件工作直到下一个硬件复位。器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容功能强大AT89S52单片机适合于许多较为复杂控制应用场合。主要性能参数:与MCS-51产品指令和引脚完全兼容8K字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz-24MHz三级加密程序储存器19轮式机器人控制系统设计2568字节内部RAM32个可编程I/O口线3个16位定时/记数器8个中断源可编程串行UART通道低功耗空闲和掉电模式桥接芯片的选择目前市场上提供的专用芯片主要是AMCC、PLX、CYPRESS和南京沁恒电子等公司的系列产品。各个型号的PCI接口芯片的比较如表所示。表3-1各个型号的PCI接口芯片的比较生产公司主要特点驱动开发价格技术资料AMCC内置FIFO接口,有DOS下的驱动较昂贵较为全面,提适用于设计数据程序范例供评估板版图采集卡,使用简单,性能好CYPRESS内置DRAM,可以有VXD范例较便宜技术文档比较替代外部缓存,全面有效降低性能成本PLX有较多型号可以提供SDK降低多种选择有价值资料在选择工作量RDK中出售南京沁恒电子国产,使用方便,提供DDL和相关便宜技术文档全面性能好操作函数,可以直接调用综合考虑各芯片情况以及此系统的实际要求,我们选用南京沁恒电子的CH365。CH365是一个连接PCI总线的通用接口芯片,支持I/O端口映像、存储器映像、扩展ROM以及中断。CH365将32位高速PCI总线转换为简便易用的类似于ISA总线的8位主动并行接口,用于制作低成本的基于PCI

温馨提示

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

评论

0/150

提交评论