足球机器人系统设计_第1页
足球机器人系统设计_第2页
足球机器人系统设计_第3页
足球机器人系统设计_第4页
足球机器人系统设计_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

ABSTRACT摘要绪论1.1引言近年来,多机器人合作问题已经成为人们关注的焦点,核心问题是如何来组织和控制多个机器人去完成单个机器人无法完成的复杂任务,这个问题在很多领域都有潜在的应用价值,比如在工农业生产、医疗卫生和国防工业中都已经有相关的问题被提了出来[1][2]。机器人足球比赛时近年来国际上开展起来的一种高科技对抗活动。虽然历时不长,但由于它集高新技术、娱乐、比赛于一体,所以引起了社会的广泛关注和极大兴趣。机器人足球比赛,已成为人工智能与智能机器人研究领域中一个十分令人注目的热点。其涉及的研究领域包括:智能机器人系统、多智能体系统、实时模式识别与行为系统、智能体结构设计、实时规划和推理、基于网络的三维图形交汇、传感器技术等[3]。足球机器人比赛中双方对抗激烈、比赛场上的情况瞬息万变。机器人足球队必须拥有高度的智能,才能够对场上局势和出现的变化做出正确、及时的感知,并做出迅速和准确的反应。足球机器人在比赛过程中要频繁启动、加速、减速、停止,经常以较高速度完成直行或曲线运动,机器人运动控制系统的灵活性以及射门机构性能的优劣是机器人进攻成败和防守的关键技术。足球机器人性能取决于软件和硬件两个方面,其中机构设计又是硬件中重要部分,他的设计具有现代机构学设计的特点。综合国内外先进的机器人设计技术和足球机器人国际比赛规则,根据指定的设计指标,采用新的设计手段和分析方法应用到机器人设计中具有重要意义。1.2机器人足球比赛系统的研究意义机器人的诞生可以说是20世纪人类科学技术的重大成就之一。在50多年的时间里,机器人从无到有,到今天在世界各个领域和人民生活的众多方面为人类服务,并做出了不可磨灭的贡献,是一个多方面技术与人类思想快速发展的过程。足球机器人竞赛是近年来国际上迅速开展起来的一种高科技对抗活动,他涉及人工智能、智能控制、机器人、通讯、传感及结构等多个领域的前沿研究和技术融合[4]。目前,国际上机器人足球有两大系列:一是有国际机器人协会足球联合会[5](FIRA)组织的微型机器人世界杯足球赛:另一个是有国际人工智能学会组织的机器人世界杯足球赛(Robocup)。国际机器人足联成立于1997年6月5日,总部设在韩国大田的韩国科学(技术)院。现在,许多地区也已成立了地区协会。从1996年开始,FIRA每年组织一次机器人足球世界杯赛(FIRARWC),相伴而行的还要举办这一领域的学术研讨会,相互学习与竞争,使得参赛国家与参赛代表对迅速增加。在第15届国际人工智能联合大会上,来自美、日、瑞典的9位国际著名或知名学者联合发表重要论文,系统阐述了机器人足球的研究意义、目标、阶段设想、近期主要内容和评价原则。至此,机器人足球被正式设立为国际人工智能新的挑战问题。机器人足球的竞赛目标是:到2050年,在“可比”的条件下,战胜人类的世界冠军队。从科学研究的观点看,无论是现实世界中的智能机器人或机器人团队(如家用机器人和军用机器人团队等),还是网络空间中的软件自主体(如用于网络计算和电子商务的各种自主软件以及它们组成的“联盟”),都可以抽象为具有自主性、社会性、反应性和能动性的“自主体”(Agents)。由这些自主体以及相关的人构成的多主体系统(Multi-agentSystems),是未来物理和信息世界的一个缩影。其基本问题是自主体(包括人)之间的协调与发展,因此,足球机器人系统是一个典型的多智能体系统[6]。主要研究内容包括自主体设计、多主体系统体系结构、自主体协商与合作、自动推理、规划、机器学习与知识获取、认知建模、系统生态和进化等一系列专题。这些专题有的是新提出的(如“合作”),有的是过去未能彻底解决并在新的条件下更加复杂化的(如机器学习)。这些问题不解决,未来社会所需的一系列关键性技术就无法得到。上述问题中的大多数都在机器人足球中得到了集中的体现。FIRA中国对研究机器人足球的意义作了精辟地概括:机器人足球是小平台上的技术战争;是发展人工智能的新里程碑;是培养科学精神的理想平台;是机器人社会的缩影。在这个意义下,将机器人足球作为未来人工智能和机器人学的标准问题,是十分恰当、极为明智的;而这一研究意义之深远重大,也是顺理成章、不言而喻的。1.3机器人足球比赛系统国内外研究状况自二十世纪九十年代中期开始的机器人足球运动,经过几年的发展,从仿真比赛、小型组的机器人足球比赛系统、全自动足球机器人比赛到2002年推出的人形机器人规定的动作的比赛,各种类型的比赛在各国同时展开,推动了相关技术的发展。Robocup以机器人足球作为中心研究课题,通过举办机器人足球比赛,旨在促进人工智能、机器人技术及其相关学科的发展。近年来,参加Robocup中型组比赛的球队规模不断扩大,我国也在机器人课题研究上做着不懈的努力。相对于目前机器人足球发展比较好,如欧美、日韩、澳大利亚等国家研究机构,我国在中型足球机器人的研究方面起步相对较晚,所以国内的研究水平跟国外还是有一定的差距,但近年来还是取得了一定的发展。目前,从国际机器人足球比赛上看,随着硬件水平的提高,主要包括机器人制造技术水平,通信技术及计算机视觉信息处理水平的提高,研究的重点转向了多个机器人的协作与单个机器人控制水平的研究,及多个智能体之间协作学习的研究等。RoboCup机器人足球世界杯赛及学术大会是国际上级别最高、规模大、影响最广泛的机器人足球赛事和学术会议,每年举办一次。Robocup机器人足球赛主要是通过各种项目的竞赛,使各种不同的新思想、新原和新技术可以得到客观的评价。近年来,参加RoboCup中型组比赛的球规模不断扩大,国际上中型组机器人强队以德国和日本的研究机构为德国的Brainstormers一Tribots队[7]、CoPsstuttgart队[8],日本的EIGEN[10]、Hibikino一Musashi[11]队是2007年美国亚特兰大机器人足球世界杯的四强。而我国也在机器人研究事业上同样也做着不懈的努力。目前,在FIRA和Rob。两个项目上都有全国数十所高校和科研院所参加,许多理工科院校都拥了自己的机器人足球队。2002年1月,中国863机器人主题专家组正式将足球机器人系统的研究开发列为863项目。2002年6月在上海召开了首届中足机器人竞赛,作为中国自动化学会机器人竞赛工作委员会成立后主办的三大项目,汇聚国内机器人竞赛方面的各方队伍。从2002年开始,中国机器人大赛设置了RoboCup中型组[11-13]机器人比赛项目,同济大学、华南理工大学、中国科学院自动化研究所、国防科技大学[14]、东北大学、广东工业大学、上海大学、山东大学等先后开展该项目的研究工作。纵观足球机器人项目的发展历史,机器人的性能逐年提高;机器人的控制精度越来越高,实现方法多样化。足球机器人正在向全自主化发展,全自主增强了机器人的机动性和灵活性,可以在没有人工干预的条件下更好的完成比赛,随着自动控制的发展和机器人技术的进步,全自主足球机器人运动控制的实时性和快速性有更高的要求,因此,如何实现机器人实时、快速、准确的运动控制就成了该技术领域最主要的研究目标,也成为各个球队设计、研究的重点。1.4本文的主要研究内容与章节安排本文以RoboCup中型组机器人足球比赛系统为研究平台,主要研究内容是数字信号处理器(digitalsignalprocessor,DSP)[15]的全自主中型足球机器人运动控制系统的研制。主要研究工作包括:确定足球机器人运动控制系统的总体结构;设计足球机器人运动控制系统的硬件控制电路;设计足球机器人运动控制系统的控制软件。以下是本文各章内容安排如下:第一章从机器人足球比赛是多智能体的研究平台这一角度出发,介绍了足球机器人比赛的起源和发展、研究意义、国内外在足球机器人比赛方面的研究进展和中型足球机器人运动控制系统的国内外研究状况。第二章介绍了中型足球机器人足球比赛系统,阐述了中型足球机器人的内部体系结构及其各个子系统:视觉系统、数据融合系统、决策子系统、通信系统、运动控制系统等工作原理。第三章的主要内容是根据中型足球机器人运动控制系统的设计要求设计出了足球机器人的硬件部分,对该系统的内部结构进行了详细的说明,并同时详细阐述了运动控制系统的各个部分组织单元和结构包括:处理器单元、存储单元、电机驱动单元、轮速检测单元、通信单元、电源单元等设计过程和数据。第四章主要介绍的内容是中型足球机器人运动控制系统的软件开发环境以及软件设计流程,详细阐述了运动控制系统各个单元的软件设计,并同时介绍了基于PID[16]算法的全向中型足球机器人控制方法的研究。最后的结束语作了一个简单的小结,并提出了本研究内容有待更近一步的提高。

2中型足球机器人足球比赛系统简介2.1引言机器人足球比赛是近年来出现的一项集娱乐、体育和科研于一体的比赛活动。机器人足球比赛有多种比赛项目和形式,而RoboCup中型组是其中一种最具代表性、技术含量最高的比赛。全自主机器人足球比赛系统是一个多智能体系统的典型问题,又是研究分布式人工智能的理想平台,己经引起越来越多学者的重视。根据RoboCup中型组国际比赛规则,比赛场地最大为18m、12m,场地上有参照国际标准足球场比例画的中线、中圈及门区等,场地颜色为绿色,场地用线为白色。除了机器人的大小、重量有限制外,规则还对机器人的颜色、标记、传感系统、带球机构和通讯等方面都有相应的要求或规定。学术界认为,机器人足球是人工智能技术的新里程碑。它将过去以计算机象棋为首的单智能体在表态环境下非实时知识处理技术发展为多智能体在动态环境下实时知识处理技术,大大拓宽了人工智能技术的应用领域。机器人足球比赛系统是多机器人组成的分布式系统,是一个多学科多领域系统的集成,其目的在于促进分布式人工智能和机器人领域,及其各相关学科的发展。机器人足球比赛系统涉及:智能体结构设计、机器视觉、传感器融合技术、任务分配、实时规划和推理、无线通讯等研究领域。2.2系统的组成和工作原理中型足球机器人主要研究了多机器人系统要解决的、分布的多机器人在错综复杂的动态环境下,通过相互协商完成某一任务的问题。整个系统包括:若干机器人车体及其相应的车载笔记本电脑、教练机、裁判机和将教练机和若干个机器人连在一起的无线路由器。每个机器人队员在结构上是基本一样的,它们都是全自主的机器人。它们都具有独立的视觉感知、行为决策、运动控制和无线通讯功能,所以对于单个中型足球机器人来说,硬件一般包括:车体底盘,驱动电机,全向轮,全向视觉,传感器,控制电路,驱动电路和射门机构等模块。Robocup中型组机器人足球比赛系统的硬件组成如图2-1所示:图2-1RoboCup中型组机器人足球比赛系统的硬件组成我们可以把机器人足球系统分为下面几个部分:机器人小车子系统视觉子系统无线通讯子系统机器人控制子系统决策子系统上述五个子系统构成了大的闭环系统。决策系统的指令通过无线通讯系统发送给机器人小车系统,控制子系统根据指令控制机器人相应的运动,再由视觉子系统采集场地信息,反馈给决策系统,完成闭环控制。决策子系统处理来自视觉的视觉、决策和通讯四个子系统组成,其相互联实时场景辨识数据,作出决策发出命令,通过无线通讯给机器人小车,决策子系统相当于机器人的“大脑”,视觉子系统相当于机器人的“眼睛”,机器人小车相当于机器人的“手脚”。足球机器人系统结构见图2-2点线框内。图2-2足球机器人系统结构图2.2.1视觉子系统1.全景视觉系统足球机器人的摄像机是最重要的传感器,它的重要性就相当于眼睛对于人。在RoboCup中型组比赛中,机器人普遍采用全景视觉系统。它由全向反射镜面、1394数字彩色摄像机和三自由度安装调解机构组成。全向反射镜面装在机器人顶部,镜面向下,摄像机朝上正对着反射镜。全向反射镜面有水平等比镜面和垂直等比镜面组合而成,能够实现机器人周围近6.5米范围内的水平场景无畸变,远处垂直场景成像变形较小。1394数字摄像机对反射镜面的成像光线进行采集,并经过1394高速数据传输总线传输到笔记本电脑进行处理,三自由度安装调解机构可以保证摄像机与镜面安装轴线与地面垂直。该全景视觉系统通过图像处理能够实现机器人的目标识别和自定位,即获得球、球门、立柱、白线等比赛场地目标信息和机器人在场地上的位置、朝向等定位消息,用于机器人的控制和决策。前向视觉是一个安装在机器人前部的一个USB网络摄像头。该摄像头能够完成机器人前方目标的精确识别,用于实现机器人带球、射门等精确控制。前向视觉的够工作流程包括:图像采集、图像预处理、图像分割和目标识别等模块,其工作框图如图2-3所示。图2-3前向视觉的工作框图前向单目视觉系统采集图像如图2-4所示图2-4向单目视觉系统采集图像2.通讯子系统RoboCup中型组足球机器人的比赛规则决定了智能中型足球机器人要使用无线通信。在RoboCup中型组比赛中,有两个裁判在赛场上主持裁决工作,一个是场地主裁判,他的工作是根据规则判定每个机器人的行为是否犯规,以及发出开球,暂停,进球有效等指令。这些指令时以哨声和话语发出的,但是场上的机器人并不能直接了解他的指令意图,这就需要另一个裁判,即副裁判,他的工作就是操作场边的一台计算机,这台计算机和双方的服务器计算机相连,裁判计算机中安装有裁判盒程序,程序的作用就是向双方的服务计算机发送裁判指令。根据比赛规则,RoboCup中型组机器人足球比赛系统必须采用无线通讯。中型组机器人足球比赛通信系统采用基于无线局域往(IEEE802.11b标准)的通信技术,每个机器人和场外计算机作为网络的节点,共同构成一个无线局域网络系统。通信系统是在比赛中足球机器人之间实现通信交互的最基本手段,足球机器人之间交换的信息包括任务、相关的状态、决策参数、运动数据等。由于每个机器人带有具备独立的视觉、决策、通讯和运动控制子系统,这使得机器人的数据运算量大,为了保证机器人在比赛过程中数据处理的实时性,每个机器人搭载了一台笔记本电脑。电脑采用ThinkPadX61的配置如下:处理器型号Intel酷睿2双核T8300处理器主频(Ghz)2.4移动计算机迅驰技术SantaRosa迅驰4代标准内存容量(MB)2048MB硬盘容量(GB)160GB显示屏尺寸(in)12.1机器人通讯系统的主要作用如下:将裁判盒发出的裁判指令实时可靠地发送给场上的机器人。实时地监视场上机器人的状态,主要包括自定位的信息和识别球的信息。接收教练机向各机器人队员广播的全局地图信息和它们的子任务。参赛队伍通讯网络示意图如图2-5示。图2-5通讯网络连接示意图在比赛过程中的每个周期内,各机器人通过通讯子系统向教练机发送本机数据,教练机对这些数据进行数据处理之后再处理结果通过无线通讯系统广播发送给各机器人。同时,若裁判盒有指令发送下来,教练机立刻通过无线通讯子系统将指令发送给其他机器人。2.3决策子系统视觉子系统和通信子系统完成了智能中型足球机器人在场上需要获取的所有信息的收集工作,这些工作都是为了决策子系统服务的。决策系统在智能中型足球机器人系统中处于非常重要的地位,相当于机器人的大脑。对于复杂的比赛,可能采取的策略大不相同,而对于智能中型足球机器人来说,它在场上的表现就是设计者的思想的重现。只要视力正常,腿脚方便,这些运动员就会按照教练事先预定好的技术路线不偏不倚地正常发挥。而这个教练,就是我们决策子系统的软件设计者。足球比赛是一种竞争性、对抗性很强的运动,机器人足球比赛也不例外。比赛场上的形势瞬息万变,决策系统必须能够准确判断攻防态势,灵活实现比赛阵型变化和战术配合,同时机器人的动作必须流畅[17]。2.4运动控制系统运动控制子系统是整个智能中型机器人软件系统的输出端,也是连接上位机和底层运动控制电路的桥梁。这一部分的主要工作是将最终的执行结果——三个轮子的轮速和射门信号发送给DSP.上位机和DSP之间的通信用RS-232串口来实现。(1)机械部分移动平台,采用的是全向移动方式[18]。这是一种可以再平面内获得任意运动方向的运动方式,可以完全控制机器人的平面运动的三个自由度。具有全向运动能力的运动系统使机器人可以直接向任意方向做直线运动,而不需要提前做旋转运动,并且这种轮系可以满足一边做直线运动一边旋转的要求,达到终状态所需要的任意姿态角。踢球系统对比了很多种方式,采用的是电磁铁式踢球机构[19],就是利用通电螺线管上通电,由于电磁感应原理产生磁力,推动踢杆将球踢出。其在控制踢球速度方面的灵活性高,但设计和安装不好的话,容易导致螺线管内壁与磁性圆柱体踢杆之间存在很大的摩擦力,从而影响射门速度。通过计算机仿真优化电磁铁结构,可以使射出的球速达到12m/s左右。实际应用时,需要解决智能中型足球机器人内部的电磁干扰问题等。带球机构采用的是目前普遍用的摩擦式被动带球机构。(2)控制电路部分:硬件电路由主/从DSP控制板、电动机驱动电路、电动机编码盘接口电路、串口通信电路、电源及上电复位电路组成。具体分析在后面的章节做了详细的介绍[20]。2.5本章小节主要对RoboCup中型组足球机器人比赛系统作了一个概括性的介绍,包括系统的组成和工作原理,介绍了全自主足球机器人的视觉、通讯[21]、决策和运动控制子系统。

3中型足球机器人运动控制系统的硬件设计3.1引言中型足球机器人运动控制系统的任务是根据决策子系统发送过来的动作指令,控制执行机构执行相应的动作,从而使机器人顺利完成足球比赛。运动控制系统[22]是整个中型足球机器人的基础,机器人的所有动作都由运动控制系统来执行,因而从某种意义上说运动控制系统的控制质量对整个机器人系统的性能有着决定性的作用。硬件设计是足球机器人运动控制的基础,其性能决定了其构建的运动控制系统的主要性能,它的硬件电路也决定了运动控制系统的基本功能。运动控制系统的处理速度、处理能力、可靠性、抗干扰能力等都取决于其硬件设计,因此,硬件设计的是实现机器人运动控制系统功能的前提条件,且其决定了运动控制系统性能的高低。3.2运动控制系统的设计要求(1)运动控制系统必须具备通信功能,与上层计算机进行通信,接收上层计算机的控制指令,返回足球机器人运动控制系统的信息到上层计算机。(2)运动控制系统必须具备电机驱动的功能,控制的对象是全向移动机构的四个驱动电机,因此系统应该具有四个或者四个以上的独立的电机驱动单元。(3)为了实现足球机器人各个驱动轮闭环调速,运动控制系统应有轮速检测单元,轮子速度有各个轮子的驱动电机上的增量式编码盘的信号反馈到运动控制系统。(4)足球机器人应有踢球机构,运动控制应具有对踢球机构控制的功能,实现足球机器人的射门、传球和防守。(5)辅助功能,如时钟振荡源、电源电压转变功能、电子指南针模块。3.3运动控制系统的体系结构设计根据足球机器人运动控制系统的设计要求,运动控制系统应该具有串口异步通信功能与上位计算机通信;能对足球机器人移动机构的四个电机独立进行速度闭环控制;能对踢球机构的进行踢球力度控制;自检功能。中型足球机器人运动控制系统内部结构框图如图3-1所示。图3-1足球机器人控制系统内部结构框图3.4足球机器人控制系统的硬件设计3.4.1处理器单元1.处理器选型处理器是底层控制电路的主体,机器人平台底层的控制指令均有它发出。处理器的处理能力和运算速度制约着系统整体性能。选择一款高性能的处理器,可以将球队的水平提上一个新台阶。选择一款合适的处理器,需要考虑很多的因素,包括处理器本身的参数和性能,处理器的开发环境,以及各公司对各自处理器资料的详细情况和技术支持情况。本系统设计过程中对TI[23]、Intel、Atrnel公司进行了选择,最后选择了TI公司的数字信号处理器(DigitalSignalProcessor)DSP[24]芯片的主要特点如下:(1)快速的指令周期,支持在一个指令周期内可完成一次乘法和一次加法运算。(2)采用改进的哈佛总线结构,可以同时完成获取指令和数据读取操作。(3)片内具有快速RAM,可通过独立的总线对多个存储器快并行访问。(4)硬件支持低开销或无开销的循环及跳转指令,使得FFT、卷积等运算速度大大提高。(5)快速的中断处理和硬件I/O支持,保证了实时响应能力。(6)专用寻址单元,具有在单周期内操作的多个硬件地址产生器。(7)采用流水线操作,使取指、译码、取操作数和执行指令等操作可以重叠执行。根据以上优点,本系统设计采用的是TI公司的TMS320F2812型芯片。TMS320F2812[25]是TI推出的新一代32位定点数字信号处理器。TMS320F2812主要特性如下:(1)采用高性能的静态CMOS技术,主频高达150MHz,每个时钟周期为6.67ns。采用低电压供电,当主频为135MHz时内核电压为1.8v,当主频为150MHz是内核电压为1.9v,I/O引脚电压为3.3v(2)支持JTAG在线仿真接口(3)32位高性能处理器,支持16b×16b和32b×32b的乘法加法运算,采用哈佛总线结构模式,快速的中断响应和中断处理能力,兼容C/C++语言以及汇编语言。(4)片内内置可固化程序的128K×16为FLASH、18K×16位SRAM、4K×16位BOOTROM(5)两个事件管理器模块EVA和EVB,每个包括通用定时器、比较单元、PWM产生电路、捕获单元(CAP)以及正交编码脉冲电路(QEP)。其中,通用定时器为事件管理器提供时间基准,也可用于产生定时器中断。他们能够实现:三相反相器控制;PWM的对称和非对称的波形。(6)可扩展的外部存储器总共192K字节空间;64K字程序存储空间;64K字数据存储空间;64KI/O寻址空间(7)看门狗定时器模块(WDT)。(8)串行通信接口(SCI)模块。(9)三个外部中断源。(10)支持动态锁相环倍频。片内振荡器。(11)16位的串行外设(SPI)接口。(12)该开发板提供了可手工复位的专用复位芯片MAX706T;提供一路RS-232可方便连接PC进行事先;提供16路0-3v的AD输入接口;提供6路的PWM波输出接口。2.双DSP架构单个TMS320F2812芯片具有双事件管理器EVA和EVB,每个事件管理器只有一个电机码盘接口(QEP)单元,因此单个DSP只能接两路的电机码盘信号,而中型组机器人的全向移动机构有四个电机,另外两个电机的码盘信号可以经过专用的集成芯片将码盘信号处理后送回DSP,但是这种方法会导致电路复杂,电路可靠性降低,而且单个DSP要处理四个电机的信号和其他的外围事件,使得DSP芯片负担很重,实时性很难保证。为了解决这个问题,本设计采用的是双DSP架构,其中一个DSP芯片为主处理器,另外一个DSP芯片为从处理器,主从DSP分别处理两路的电机码盘信号和输出电机驱动信号。主从DSP通过SPI通信接口连接。3.电源及上电复位电路电源由外部电源提供,+5V的稳压直流电源输入,通过电源转换芯片SPX1117-3.3为电路板提供主电源VCC(3.3V);通过芯片为AD提供3.3V;通过SPX1117-1.8为DSP内核使用提供电源1.8v。输出端通常接一个10uf或者47uf的电容来改善瞬状的响应和稳定性。在复位电路上,本设计使用了专门的复位芯片SP708R,以保证DSP芯片可靠复位,并可对DSP进行手工的按钮复位,方便调试。图3-2电源电路与上电复位电路4.时钟电路时钟产生模块由片内振荡器和锁相环电路组成。芯片内部的PLL电路利用高稳定度的锁相环锁定时钟振荡频率,可以提供稳定、高质量的时钟信号。F2812处理器内部集成了基于PLL的时钟模块,可以为器件及其他的外设提供时钟信号。锁相环有4位倍频设置位,可以为处理器提供各种频率的时钟信号。时钟发生器要求外部硬件电路提供一个参考时钟输入,外部时钟源OSCCLK有一下两种配置方案供选择。(1)使用片内振荡器:如果使用片内振荡器,将一个石英晶体跨接到F2812的两个输入引脚X1与X2/XCLKIN之间,构成内部振荡器的反馈电路。(2)使用外部时钟源:如果采用外部振荡器产生时钟信号,可以将一个外部时钟信号直接接到引脚X1/XCLKIN上,而将引脚X2悬空。在这种模式下,DSP的片内振荡器被旁路。本系统设计采用内部振荡器,在X1/XCLKIN和X2两个引脚之间连接一个晶体,其振荡频率为30M。在晶体两近侧分别接22pf的电容以方便起振和使晶体更快进入稳定状态。如图3-3所示。图3-3晶振电路5.JTAG硬件仿真接口电路国际电气和电子工程师协会于1990年公布的1149.1标准,又称作JTAG[26]标准,是针对超大规模集成电路测试、检测面临的困难而提出的基于边界扫描机制和标准测试接口的国际标准。通过JTAG接口可对芯片内部的所有部件进行访问,因而是开发调试嵌入式系统的一种简洁高效的手段。标准的JTAG接口是4线:TMS、TCK、TDI和TDO,分别为测试方式选择、测试时钟、测试数据输入和测试数据输出。JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对多个器件分别测试。TMS320F2812芯片里面含有32K的FLASH,在控制系统的开发过程中,需要对DSP的FLASH进行反复的修改和擦写工作,TMS320F2812带有JTAG接口电路,通过JTAG接口电路可以对DSP芯片进行硬件仿真与程序烧写。仿真电缆长度不能超过6英寸。DSP芯片的JTAG仿真接口和仿真器电缆间的连接关系如图3-4所示。图3-4JTAG接口电路6.看门狗在设计DSP应用系统是,可靠性是一个必须考虑且非常重要的问题,尤其是在某些恶劣的工业生产现场,系统的抗干扰能力显得尤为重要。为了解决干扰问题,除了对干扰源采取各种抑制措施外,在系统设计是应该采取一些专门的防范措施,尽可能避免由于外界干扰而引起的程序“跑飞”或“死机”现象,以免导致系统工作异常。为了提高系统的抗干扰能力[27],F2812的DSP芯片配置了称为看门狗的定时电路。看门狗模块监视系统软件和硬件的运行,它可以按照用户设定的时间间隔产生中断或复位系统。如果软件进入非正常循环或运行到非法的程序空间,使得系统无法正常工作,那么看门狗定时器的计数器上溢,可以产生一个中断或复位信号,使得系统进入用户预先设定的状态。在大多数情况下,系统由于外界干扰而引起的异常情况可以通过看门狗模块的操作清除,使系统恢复至正常工作状态。因此,合理配置看门狗模块,可大大提高系统运行的稳定性好可靠性。当8位的看门狗计数器进行加计数到最大值(0×FF)是,用户可选择看门狗模块通过WDRST输出一个低电平脉冲来复位CPU,或通过WDINT来产生一个外设中断事件,该低电平脉冲的宽度等于512个振荡器时钟周期。在系统正常工作时,为了避免看门狗模块产生不希望的脉冲信号,需要用户屏蔽看门狗模块或软件周期性地向看门狗复位寄存器WDKEY写入序列0×55+0×AA来为看门狗计数器清零。3.4.2通信单元1.串行通信(SCI)电路串行通信接口(SCI)[28]是采用双线通信的异步串行通信接口。每个SCI模块包含13个控制寄存器,有两个外部引脚,即数据发送引脚SCITXD和数据接收引脚SCIRXD,采用低速外设时钟LSPCLK作为时钟源,具有独立的发送中断TXINT和接收中断RXINT。概括起来,SCI模块具有如下特点。(1)F2812片内包含两个功能相同的SCI模块,分别称作SCI-A和SCI-B。(2)16位的波特率寄存器,可设置多达64×1024种不同的波特率。(3)串行数据帧包括:一个起始位,可编程为1-8个数据位;可选择为奇/偶检验或无校验位模式;可选择1~2个停止位。(4)发送和接收可以采用中断或查询方式。(5)独立的发送和接收中断使能控制。(6)自动通信速率检测。(7)支持两种多处理器唤醒方式:空闲线唤醒或地址位唤醒。(8)标准模式下接收器和发送器采用双缓冲结构。RS-232C是目前最常用的串行通信总线接口。计算机、外设、显示端等都属于数据终端设备,而调制解调器则是数据通信设备。RS-232C接口特点如下:机械特性:定义了DB25型和DB9型等连接器的机械特性。电平规范:采用负逻辑电平,-3v到-15v为逻辑“1”必须经过专门的转换芯片将TTL或CMOS逻辑电平转换为RS-232C的标准电平。RS-232C串口具有较多的控制和状态信号,便于实现和调制解调器的接口,实现远距离通信。RS-232C是非平衡线路,接收器检测的是信号线和地线之间的电压差,易受地线上的干扰信号影响,抗共模干扰能力低。本设计使用的是符合RS-232C标准的MAX3232芯片。MAX3232芯片具有以下特点:引脚可编程为两路RS-232传输速率:1Mb/s允许串行总线上扩展256个收发器单电源工作(3.0-5.5v)图3-5串口通信电路MAX3232芯片功耗低,集成度高,+3.3V供电,实现了真正的+3.0V到+5.5V电源供电标准,在满载荷的工作情况下可达到最小120Kbps数据速率,具有两个接收和发送通道,其端口只需接一个0.1uf的电容便可有3.3V的电压下实现稳定工作。电路图如3-5所示。F2812的串口支持16级接收和发送FIFO为了减少串行通信时CPU的开销,系统采用F2812的SCIA接口完成与上位机的通讯功能,使用符合RS-232标准的MAX3232驱动芯片,实现DSP与上位机的电平转换。3.4.3电机驱动单元1.PWM调速原理为了控制直流电动机,需用半导体功率器件进行驱动。大多数直流电动机驱动采用开关型驱动方式,其中又以定频脉宽调制(PWM)为常见。其优越性在于驱动电子设备的简单性和计算机接口的容易性[29]。PWM[30]信号是一个周期固定而脉冲宽度可变的脉冲序列。在每个固定长度的周期中有一个脉冲出现,该固定长度的周期为PWM周期。通常,在一个电机控制系统中,通过功率器件将所需的电流和能量送到电机线圈绕组中来控制电机的速度和转矩,而PWM信号即是用来控制功率器件的开启和关闭时间的。使用DSP对BLDC实现一个BLDCM的控制至少需要用到的信号有:全桥式驱动的六路信号PWM1,2,3,4,5,6,用于确定BLDC转子相位位置,进而实现移相控制的三路霍尔传感器检测信号H1,2,3,其中,PWM1-6分别接上100欧电阻后通过光电隔离,接到驱动BLDCM的驱动电路相应的接口上,对驱动电路进行控制。而cap1-3则是接收BLDCM霍尔传感器传出来的信号。2.电动机驱动电路IR2133[31]系列是IR国际整流器公司推出的,专为高电压、高速度的功率MOSFET和IGBT栅极驱动而设计的集成电路芯片。其内部集成相互独立的三组高侧(HIN1,2,3)和底侧(LIN1,2,3)桥臂栅极驱动电路,因此特别适合应用于三相电动机驱动。芯片的输入信号与TTL及CMOS电平兼容,其内部集成了独立的运算放大器,可通过外接采样电阻构成电流模拟反馈输入,且具有故障电流保护功能和欠电压保护功能,可关闭6个输出通道,同时能输出提供具有锁存的故障信号FAULT,此故障信号可由FLT-CLR管脚清除。通过反馈电流在ITRIP接口引入,到内部集成的电流比较器,使其具有故障电流保护功能,内部集成具有欠电压保护功能的欠电压检测单元,可关闭HO1,2,3和LO1,2,3六个取得弄个输出。驱动电路如图3-6所示:图3-6三相桥栅极驱动电路3.逆变电路和电流检测电路从IR2133中出来的控制信号HO1,2,3和LO1,2,3,分别接到如图所示的两个MOS管中,在IGBT的高低两侧分别介意电机驱动电压后,这六个控制信号即可作为各MOS管的开关信号驱动电机的运行。MOS管两侧接以单向二极管以防止MOS管的反向导通而被烧坏。如图3-7所示图3-7三相无刷直流电动机控制的逆变电路在IGBT对电动机进行驱动的过程中,一方面,系统需要电流环的反馈控制,另一方面,系统为了防止过流烧坏器件对电流进行监听,因此,可以在驱动电路中接以检流电阻以检测电路中的电流。如图所示,检测到的一路电流经过去耦电阻进入LM358电流放大器,使电流调节到0-3.3V范围内,再将相应的电流值传输到DSP的ADC电路中。DSP将检测到的电流经过处理,存储到ADC相应的转换结果寄存器中。当系统要使用这些数据时,只需从转换结果寄存器中读出电流值便可。图3-8电流检测电路4.PWM电路带有比较电路的脉冲宽度调制(PWM)电路可以产生6个带有可编程死区和输出极性的PWM输出通道[34]。(1)全比较单元在EVA模块中有三个全比较单元,在EVB模块中同时也有三个比较单元。每个比较单元有两个相关的PWM输出。比较单元的时基由GP定时器1和GP定时器2提供。(2)比较操作模式比较单元的操作模式由COMCONx中的位来确定。连续不断地将GP定时器1计数器的值与比较寄存器的值相比较,当有一个匹配产生时,就会在劝比较单元的两个输出上出现一个跳变,这个跳变根据行为控制寄存器(ACTRA)的位来进行。ACTRA的位可以单独制订比较单元的每个输出在比较匹配时为触发高有效或触发低有效。如果比较操作被时能,当GP定时器1和该比较单元的比较寄存器之间产生比较匹配时,与比较单元相联系的比较中断标志被置位。如果没有屏蔽中断,那么通过标志位可以发出一个外部中断请求,输出跳变的定时、中断标志的设置及中断请求的产生于GP定时器的比较操作相同。在比较模式中由输出逻辑、死区单元就空间矢量PWM逻辑来修改比较单元的输出。(3)可编程死区单元EVA和EVB拥有自己的颗可编程死区单元DBTCONA和DBTCONB。死区单元的操作由死区定时器控制寄存器DBTCONA和DBTCONB控制。死区单元的输入是PH1、PH2和PH3,他们分别来自于比较单元DTPHx和DTPHx­。当比较单元和与它们相关的输出的死区被禁止时,这两个信号是相同的。当比较单元的死区使能时,两个信号的边沿变化被称为死区的时间间隔分割开。这个事件间隔由DBTCONx的相应位来确定。设置死区单元的目的就是为了在由两个与比较单元相关的PWM输出控制的上位机和下位机操作中,防止重叠的发生。在这些情况下包括了当空占比为100%或0%时,装载的死区值大于空占比。如果发生这种情况,当比较单元的死区使能时,在周期结束时与比较单元相关的PWM输出将无法回到禁止状态。3.4.4轮速检测单元对机器人的行走要实现精确控制,必须知道行走机构的位置及速度信息,对机器人驱动结构而言,要保证良好的运动性能,一定要对全向轮的速度进行协调,所以所以电机速度的检测十分重要。为了获得直流电动机的转速和位置的反馈,通常采用驱动电机配套的编码器产生的正交编码脉冲信号进行电机转速反馈控制。光电编码器是以一种通过光电转换装置将输出轴的角度变化转换为脉冲信号的传感器,主要由光栅盘和光电检测电路组成。在伺服系统中,光电编码盘通常与电动机同轴安装,当系统运行时光栅盘与电动机转子同步旋转,经光源和光敏二极管等元件组成的检测装置输出的脉冲信号可反映转角变化,而脉冲的频率反映了电机的转速。此外,为了便于判别旋转方向,增量式编码器均提供一组相位相差90。的输出脉冲,根据两路输出脉冲的相位可确定电机的旋转方向。本文的控制系统中的驱动电机是MaxonRE30直流电机,配套500线的增量式光电码盘,它每转一圈输出500个A相或B相脉冲和一个索引脉冲即是零位,A、B脉冲相位相差90。。图3-9增量码盘的相位输出增量式光电码盘是在一个码盘上只开出3条码道,由内向外分别为V1、V2、0。在V1、V2码道上,等距离地开出透光的缝隙,2条码道上相邻的缝隙相互错开半个缝隙。第三条码道只开出一个缝隙,用来表示码盘的零位,输出的脉冲信号如图所示,码盘转动一圈,脉冲信号V1、V2产生的脉冲个数是固定的。电动机正转时,脉冲信号V1的相位超前脉冲信号V2的相位90度;当电动机反转时,脉冲信号V2的相位超前V1的相位90度,由此可知,通过脉冲信号V1和V2之间的相位差可以确定出电动机的方向。3.5本章小结本章根据中型足球机器人运动控制系统的设计要求,设计了运动控制系统的硬件部分。对该系统的内部结构进行了说明;详细阐述了运动控制系统的各个内部组成单元包括:处理器单元,电机驱动单元、轮速检测单元及其通信单元的设计过程。

4中型足球机器人运动控制系统的软件设计4.1引言足球比赛时一种竞争性、对抗性很强的运动,机器人足球比赛也不例外。比赛场上的形势瞬息万变,机器人的运动必须灵活,能快速响应。全向移动平台是足球机器人有良好的运动性能的前提条件;高质量的运动控制系统软件是足球机器人有良好运动性能的必要条件。软件设计的质量,决定了整个运动控制系统的控制质量和效率,是影响整个足球机器人性能的主要因素之一。由于中型足球机器人运动控制系统应用环境的特殊性,其软件设计具有以下特点:(1)实时性足球比赛场上的形势瞬息万变,机器人控制系统必须能快速响应事件如控制系统必须准确的接收上位机的指令,能够快速实现启动、加速、减速、后退、停止等基本动作,并根据指令要求完成决策系统的意图,以保证按预定的轨迹动作。因此要求机器人控制系统软件要有很强的实时性。(2)可靠性足球比赛时一种竞争性、对抗性很强的运动,要求足球机器人控系统必须具有可靠性。软件的可靠性是指软件在运行过程中避免发生故障的能力,以及一旦发生故障后的解脱和排除故障的能力,如软件设计时应该考虑电机在运行过程中可能出现的一切非正常情况,如电机堵转。过流等情况。软件设计应考虑容错和放错措施,以进一步提高系统的可靠性。(3)易修改性一个完善的控制系统软件,需要经过逐次修改和不断完善最终才满足所要求的功能和特性。因此软件在总体设计时,必须要有良好的结构设计,以有利于提高软件在反复测试、修改和补充过程中的效率,且保证最终完成的软件仍具有简明了的结构。4.2软件开发环境4.2.1CCS简介CCS3[32](CodeComposerStudioVersion3的简称)是专门对DSP高级语言程序开发而设计的一款代码调式器及代码设计套件,它提供了强健、成熟的核心功能、简便易用的配置和图形可视化工具,使系统设计更快。基于DSP的软件开发流程和CCS3的应用软件开发过程[1]如下图所示。图4-1基于DSP的软件开发流程4.2.2文件的组织文件组织是指每一个DSP工程文件所应该包含的所有文件。(1)头文件工程文件包含头文件:f240regs.h,将DSP的各个寄存器和地址对应起来,这些主要包括片外寄存器、中断屏蔽寄存器、内核寄存器、中断标志寄存器[33]等。(2)库文件DSP的库函数是指rts2xx.lib,这个库文件包含适合TMS320系列的DSP芯片的标准运行支持函数和编译工具函数。(3)源文件源文件有两个:一个是C源文件robot.c,一个是汇编文件vectors.asm。前者是本控制系统的主程序,在经过代码生成器后生成汇编文件。后者是指出中断程序的入口地址。(4)链接文件链接文件的后缀名为.CMD文件,主要用来实现对程序存储器和数据存储空间的分配。包括MEMORY伪指令和SECTIONS伪指令。(5)MEMORY伪指令MEMORY伪指令用来标识实际存在的目标系统中可使用的存储器的范围,每个存储器都有名字、起始地址和长度。通常情况下,PAGE0规定程序存储器,PAGE1规定数据存储器。(6)SECTIONS伪指令SECTIONS伪指令的作用是:描述输入段怎样被组合到输出段内:在可执行程序内定义输出段;规定在存储器内何放置输出段;允许重命名输出段。这些段包括如下reset复位中断向量pvecs外围模块中断向量表text可执行代码和浮点常数switch大型的switch语句的跳转表const已初始化的字符变量、全局变量和局部变量volatile修饰的标量被分配到未初始化块cregister仅用于文件范围内,而不能用于函数内的变量声明4.3软件设计流程足球机器人控制系统的软件编写实际上是在CCS3开发环境中对DSP的编程。整个系统软件编程采用C语言,程序采用模块化的方式进行编写,这样程序可读性强,结构清晰,易于修改和扩展。控制系统的流程图如4-2所示。图4-2控制系统的流程图运动控制系统软件设计采用前后台的方式,主程序完成程序的初始化之后在后台工作,与上位机的串行通信中断子程序、定时中断子程序为前台工作,软件设计分为如下几个模块:初始化模块、主程序模块、PID控制算法模块、SCI串行通信模块、中断服务程序模块。程序流程:进行系统初始化后,主程序循环等待中断,当上位机发送信息,触发串口通信中断,控制系统接受上位机发送的信息,对上位机发送信息进行分析,根据分析结果,判断是否执行电机调速、SCI通信等子程序。DSP的周期为2ms定时时间到,触发定时器中断,在定时器中断子程序读取电机码盘信息,进行PID控制算法的闭环调速。4.4初始化模块初始化包括DSP的初始化,变量初始化,相关模块初始化设置等。4.4.1PLL初始化晶体振荡器及锁相环电路(PLL)为整个器件提供时钟信号,同时还控制着器件的低功率模式的进入。当复位DSP芯片是,引脚XF_XPLLDIS为低电平,则屏蔽PLL模块,直接引用X1/XCLKIN输入的时钟信号作为CPU时钟,当TMS320F2812上电时,PLL没有被禁止,则PLL将配置为旁路模式,此时引脚X1/XCLKIN输入时钟信号经过二分频后作为CPU时钟。初始化主要是通过锁相环控制寄存器PLLCR可以配置是否旁路PLL。如果使能PLL,则可以通过4位倍频系数设置位来设置CPU的是时钟频率。DIV域用来设定PLL是否被旁路。如果未被旁路,则设置PLL的倍频系数为下表4-1格所示位名称类型描述15~4保留位R-0未定义3~0DIVR/W-0DIV域用来设定PLL是否被旁路。如果未被旁路,则设置PLL的倍频系数0000CLKIN=OSCCLK/2(旁路PLL)0001~1010CLKIN=(OSCCLK×DIV)/21011~1111无效值表4-1锁相环控制寄存器PLLCR注:类型中,R为可读,R/W为可读写,-0表示复位后的值为0初始化函数如下Voidmain(void){Initpll(0×0A);}VoidInitpll(unsignedintall){EALLOW;SysCtrlRegs.PLLCR.bit.DIV=val;EDIS;}4.4.2看门狗(WD)初始化当8位的看门狗计数器进行加计数到最大值(0×FF)时,用户可选择看门狗模块通过WDINT输出一个低电平脉冲来复位CPU,或通过WDINT来产生一个外设中断时间,为了避免看门狗产生不希望的脉冲信号,需要用户屏蔽看门狗模块或软件周期性地向看门狗复位寄存器WDKEY写入序列0×55+0×FF来为看门狗计数器清零。初始化函数如下:VoidkickDog(void){EALLOW;SysCtrlRegs.WDKEY=0×0055;SysCtrlRegs.WDKEY=0×00AA;EDIS;}4.4.3串行通信接口(SCI)初始化TMS320F2812的SCI初始化包括:把相对应的I/O口配置成具有SCI的特殊功能,设置操作方式、设置数据位数、有无校验位、停止位的位数、波特率的选择、中断允许、中断优先级、内部时钟使能,所有设置都是通过相对应的串行通信接口控制寄存器实现。串行异步通信波特率的计算:串行异步通信时钟由系统时钟SYSCLK频率和波特率选择寄存器决定。串行异步通信接口使用16位波特率选择寄存器决定。串行通信接口使用16位波特率选择寄存器,数据传输的速度可以被编程为65000多种不同的方式。不同通信模式下的串口异步通信波特率由下列方法决定:BRR=1到65536时的串行异步通信波特率为:SCI异步波特率=SYSCLK/[(BRR+1)×8]其中BRR=SYSCLK/(SCI异步波特率×8)-1上层计算机与主DSP,从DSP与数字指南针模块通信波特率设置都为19200bps,DPS系统时钟频率为SYSCLK=40MHZ,根据公式可以确定的是BRR=40×106/(19200×8)-1=103H所以波特率选择寄存器设置为SCIHBAUD=0×0001;SCILBAUD=0×0003。串行通信接口(SCI)初始化函数为:VoidSci_init(){EALLOW;GPIOMuxRegs.GPGMUX.all=0×0030;EDIS;ScibRegs.SCICCR.all=0×0007;//一个停止位,8位数据,//无奇偶校验,空闲线模式ScibRegs.SCICTL1.all=0×0003;//软件复位SCI,使能发送器和//接收器,sleep=1;ScibRegs.SCICTL2.all=0×0002;//使能TXRDY和RXRDY中断ScibRegs.SCIHBAUD=0×0001;//高位,40MHZ,串口发送与中断//接收程序,波特率设置为19200ScibRegs.SCILBAUD=0×0003;//低位ScibRegs.SCICTL1.all=0×23;//对位SWRESET写1,使SCI//退出复位状态,初始化完成PieCtrl.PIEIER9.bit.INT×3=1;//使能PIE中断SCIBRXINTPieCtrl.PIEIER9.bit.INT×4=1;//使能PIE中断SCIBTXINT4.4.4PIE中断控制和配置寄存器初始化VoidInitPiectrl(void){DINT;PieCtrlRegs.PIECRTL.bit.ENPIE=0//禁止CPU级中断PieCtrlRegs.PIEIER1.all=0//屏蔽PIE中断向量表PieCtrlRegs.PIEIER2.all=0//清零所有的PIEIER寄存PieCtrlRegs.PIEIER12.all=0PieCtrlRegs.PIEIFR1.all=0//清零所有的PIEIFR寄存PieCtrlRegs.PIEIFR2.all=0PieCtrlRegs.PIEIFR12.all=0PieCtrlRegs.PIRCRTL.bit.ENPIE=0//使能PIE中断向量表PieCtrlRegs.PIEACK.all=0×0FFFF//对某位写1可清零该位主程序开始主程序开始初始化系统控制,设置T1周期、计数方式使能PWM输出引脚,PWM1-6有效输出禁止所有CPU中断初始化PIE控制寄存器初始化PIE中断向量表循环等待设置死区时间图4-3PWM波形发生与速度调节本程序的主要工作包括对T1计数器、通用/特殊功能接口的设置、PWM的周期、占空比和触发中断的初始化;在相位检测的基础上得到相位号,通过设置PWM1-6的高低电平得到对相位的调整需要;调整比较器的值修改占空比得到速度的调整。其基本的程序如下所示:#include“DSP2812_Device.h”#include“f2812bldcpwm.h”voidf2812_EV1_BLDC_PWM_Init(PWMGEN*p)//初始化设置voidmain(void){InitSysCtrl();EALLOW;GpioMuxRegs.GPAMUX.all=0×00FF;//使能PWM输出引脚EDIS;DINT;//禁止所有CPU中断InitPieCtrl()IER=0×0000//禁止CPU中断并清除所IFR=0×0000//有CPU中断标志位InitPieVectTable();//初始化PIE中断向量表,当//中断发生时,程序会自动//跳转init_eva()//初始化事物管理器EVAfor(;;)//循环等待}voidinit_eva(){EvaRegs.T1PR=0×FFFF;//定时器1周期EvaRegs.T1CMPR=0×3C00;//定时器1比较器EvaRegs.T1CNT=0×0000;//定时器1计数器EvaRegs.T1CON.all=0×1042;//设置计数模式为连续增//减//使能定时器和比较操作EvaRegs.T2PR=0×0FFF;//定时器2周期EvaRegs.T2CMPR=0×03C0;//定时器2比较器EvaRegs.T2CNT=0×0000;//定时器2计数器EvaRegs.T2CON.all=0×1042;EvaRegs.GPTCONA.bit.TCMPOE=1;//设置T1PWM和T2PWM//通过比较//逻辑产生T1/T2PWMEvaRegs.GPTCONA.bit.T1PIN=1;//GP定时器1比较时低有//效EvaRegs.GPTCONA.bit.T2PIN=2;//GP定时器2比较时高有//效EvaRegs.CMPR1=0×0C00;//使能比较器产生PWM1-PWM6EvaRegs.CMPR2=0×3C00;EvaRegs.CMPR3=0×FC00;EvaRegs.ACTRA.all=0×0666;EvaRegs.DBTCONA.all=0×0000;//禁止死区EvaRegs.COMCONA.all=0×A600;4.5数字PID控制算法直流电动机是一个典型的滞后时间很小的二阶惯性环节,有时也可以近似看作是一阶惯性环节。理论和实践均证明了,对于这种被控对象,PID是一种较好的控制算法,PID控制是最早发展起来的控制策略之一,目前较常用的电机控制方法是数字PID控制算法,它具有结构简单、控制效果好、使用灵活的特点。它可以分为位置式PID控制算法和增量式PID控制算法。位置式PID控制算法在每次计算输出时都要对以前的误差进行累加,而且出现故障时可能产生严重的不良影响,而增量式控制算法则客服了以上的缺点。因此,在本系统设计中选用增量式PID控制算法。PID控制器PID控制器速度分配矩阵码盘信号检测MVrobotVwheel图4-4电机调速框图4.5.1足球机器人运动控制数学模型的建立足球机器人的基本动作要通过当前姿态的确定来实现期望的位置和速度。由于机器人的运动需要在平移过程中完成旋转,因此建立总坐标系X0-Y0,同时以足球机器人原点为中心建立坐标系Xr-Yr,当机器人在运动过程中机器人的中心以速度V平移,平移过程中的旋转角度为ω,机器人中心到车轮的垂直距离为R,每个车轮的速度为Vi,两个坐标系的夹角即x0与xr的夹角为θ,φ为车轮1、2与yr所夹锐角,即可知速度为车轮平移速度分量与车轮旋转的切线方向线速度的合成,即为:(4.1)可建立速度方程为:(4.2)(4.3)(4.4)由于系统设定的机器人为三轮机器人,由实际的结构可以推知φ=30o则转换为矩阵形式为:V1V2V3=-sin(30+θ上述(5)式可简化为:V=Ps式中V=[V1V2V3]T为全向轮线速度矢量s=[x0y0ω]T为机器人期望速度矢量图4-5机器人运动分析4.5.2增量式PID数字算法在模拟系统中,PID算法的表达式为:(4.6)式中:p(t)-调节器的输出信号e(t)-调节器的偏差信号Kp-调节器的比例系数Ti-调节器的积分时间Tp-调节器的微分时间计算机是采样控制,只能根据采样时刻的偏差来计算控制量,因此,在计算机控制系统中,必须对上式进行离散化处理,用数字形式的差分方程式代替连续系统的微分方程,此时积分项和微分项可用来求和及增量式表示:(4.7)(4.8)将以上两式带入(1)式中可得到离散的PID表达式:(4.9)式中Δt=T—采用周期,必须使T足够小,才能保证系统有一定的精度;E(k)—第K次采样时的偏差值;E(k-1)—第K-1次采样时的偏差值;k—采样序号,k=0,1,2,…P(k)—第k次采样时调节器的输出由式可知,要想计算P(k),不仅需要本次与上次的偏差信号E(K)和E(k-1),而且还要把积分项中把历次的偏差E(j)进行相加,这样,不仅计算繁琐,而且为保存E(j)还要占用很多内存。所以,用式很麻烦,所以采用增量式的根据递推原理,可写出P(k-1)次的PID输出表达式;(4.10)用式(4.9)减去式(4.10),可得式中,———积分系数———微分系数由上式可知,要计算第k次输出值P(k),只需知道P(k-1),E(k),E(k-1),E(k-2)即可。由于一般计算控制采样采取恒定的采样周期T,一旦确定了Kp,Ki,Kd,只要使用前后3次测量值得偏差,即可由上式求出控制量的增量。增量式控制虽然只是在算法上做了一些改进,却带来了不少的优点[36]:①由于计算机输出增量,所以误动作时影响小,必要时可用逻辑判断的方法去掉。②算式中不需要累加。控制增量ΔP(k)的确定,仅与最近K次的采样值有关,所以容易通过加权处理来获得比较好的控制效果。4.5.3PID控制算法的实现PID控制算法作为一个结构体对象来设置。结构体内包含了目标量、比例常数、积分常数和微分常数,由于是数字化的PID控制,结合图4-6可设上一次的误差值Ek1和上上次的误差值Ek2保存各时段的瞬间误差用于微分计算;设误差之和变量用于积分运算。typedefstructPID{doubleDesired;//设定目标doubleProportion;//比例常数doubleIntegral;//积分常数doubleDerivative;//微分常数doubleEk1;//E(k-1)doubleEk2;//E(k-2)doubleSumofError;//积分误差}doublePIDCale(PID*PP,doubleFeedBack){doubled1Error,d2ErrorError;Error=pp-﹥Desired-FeedBack;d1Error=Error-pp-﹥Ek1;d2Error=pp-﹥Ek1-pp﹥Ek2;pp-﹥Ek2=pp-﹥Ek1;pp-﹥Ek1=Error;return(pp-﹥Proportion*(d1Error+pp-〉Intergral*Error+pp-〉Derivative*(d1Error-d2Error)));}voidPIDInit(PID*pp){memset(pp,0,sizeof(PID));}4.6本章小结本章首先介绍了全自主中型足球机器人运动控制系统的软件开发环境以及软件设计流程,详细阐述了运动控制系统各个组成单元的软件设计,对各个组成单元进行了初始化,同时阐述了PWM波形的发生和对其速度的调节。最后,介绍了足球机器人进行的刚体运动进行了运动分析,同时对机器人轮子闭环调速的增量式PID控制算法以及对于其控制进行了实现。

总结足球机器人是人类对现代高科技技术进行研究的一个方法,涉及到的领域广泛,技术精深,在现实当中为各学科的研究解决了重大的难题,具有很好的研究价值和应用前景,一直以来都吸引了全世界许多人的注意。足球机器人比赛,已成为人工智能与智能机器人研究领域中一个十分令人注目的热点。随着科技的发展和技术的创新,足球机器人的控制系统在不断地更新与升级。其表现为从硬件上采用新型材料和性能更高的器件,或从控制上采用更先进的算法。足球机器人要出色的完成踢球任务,需要一个高可靠性、高运动性能的运动控制系统。本文在对于足球机器人运动控制系统作了较深入的了解和学习,从基于F2812的三相无刷直流电机的控制设计入手,结合现代增量式PID控制算法实现控制,对足球机器人小车的控制系统作了分析和研究。本文的主要工作和研究成果如下:(1)研究出了基于双DSP构架的全自主足球机器人运动控制系统。根据全自主足球机器人运动控制系统的设计要求,研究出基于双DSP架构的运动控制系统,该系统采用主从双DSP架构的方式共同处全自主足球机器人底层硬件信息,有效的解决了单个DSP容易导致电路复杂,电路可靠性低,系统处理速度不高,实时性不强等缺点。本文设计的运动控制系统在全向移动平台的足球机器人上,充分发挥了全向移动平台的优势,使得机器人运动性能得到了很大的提高。(2)本文分析了足球机器人运动的分析,并同时分析增量式离散PID控制算法并加以实现。尽管本文对足球机器人的控制系统作了一些研究,但是由于课题内容太大,时间有限,未能对其做更深入的探究,仍有很多方面的工作需要进一步的深入探究和分析。主要有以下几个方面:可以利用更好的软件进行上位机的软件开发,设计人机能够交互,而不是需要中间的传感装置,完善足球机器人控制系统设计平台的功能,提供一个更好的调试和实现仿真的平台。增加一些测量的传感器,能够去更好的实现足球机器人自身姿态的检测。对于系统软件的编写,采用的是CCS3的C语言和汇编语言直接编写方式,开发周期较长,而且编写过程中容易出现一些问题,可以适当的采用MATLAB中的DSP仿真模块工具,对系统作简单的图形化设计和DSP的功能寄存器的简单设置,便可直接导出DSP的软件编写,再加以简单的中断服务程序与其他模块进行融合,可以进行图形化的编程来减少编写程序的繁杂工作。

参考文献[1]JaequesFerber.Multi-AgentSystems[M],ThesecondEdition.PublishedintheUnitdeStatesofAmericanbyaddisonWeslyLonglnanlne,Newyork,1999.[2]BernardoHuberman,H.Clearwater.Amulti-agentSystemforControlling[3]王文学,许心和,机器人足球:高科技的对抗[J],百科知识,2000.10[4]蔡自兴.机器人学[M].北京:清华大学出版社[5]RobotCup日本委员会的公开网站:www.RobotCup.or.jp[6]唐平、杨宜民.多智能体协调系统研究及实现方法[J].现代计算机,1999(11).[7]Brainstormers-Tribots.http://www.1s1-www.cs.uni-dortmund.de/asg.[8]CoPSStuttgart.rmatik.uni-stuttgart.de/ipvr/bv/projekte/cops/[9]EIGEKEIOUNIV.http://www.yoshida.sd.keio.ac.jp/`robocup/index.htm[10]Hibikino-Musashi.http://robocup.is.env.kitakyu-u.ac.jp/[11]ThiloWeigel,AlexanderKleiner,FlorianDiesch,etal.RoboCup2001:RobotSoccerworldCupV[M],38,2001.[12]YasutakeTakahashi,ShoichiJkenoue,ShujiroInui,etal.RoboCup2001:RobotSoccerWorldCupV[M],664,2001.[13]KazuoYoshiida,RyoichiTsuzaki,JunichiKougo,etal.RoboCUp2001:RobotSoccerworldCupV[M],664,2001.[14]国防科技大学机器人足球队.[15]张雄伟,曹铁勇等《DSP芯片的原理与开发应用》[M],高等教育出版社,2007.5[16]刘金琨著.先进PID控制MATLAB仿真(第二版)[M].北京:电子工业出版社2004.9[17]KueTY,BaekSM.Anintelligentcontrolstrategyforrobotsoccer[A].ProcofTheFourthIntSymponArtificialLifeanedRobotics(AROB4th’99)[C].Japan,1999.658-664.[18]王学慧,柳林.足球机器人小车总体设计思想及其DSP选型[J],机器人技术与应用,2001(5):10-14.[19]洪炳熔,韩学东,孟伟.机器人足球比赛研究[J].机器人,2003,25(4):373-377[20]谭民,王硕,曹志强.多机器人系统[M].北京:清华大学出版社,2005.[21]元晓彬,杨宜民.FIRA足球机器人无线通信子系统的设计与实现[J].广东工业大学学报,2008,25(2):78-81.[22]足球机器人底层自动控制系统硬件.现代电子技术,2007,30(13):118-120.[23]王晓明,王玲.电动机的DSP控制--TI公司的DSP应用[M].北京:北京航空航天大学出版社,2004[24]韩丰田.TMS320F281XDSP原理及应用技术[M].北京:清华大学出版社,2009.[25]谢青红,张筱荔.TMS320F2812DSP原理及其在运动控制系统中的应用[M].北京:电子工业出版社,2009.[26]刘德生,李杰.基于JTAG的DSP外部FLASH在线编程与引导技术.[J]电子技术应用,2005(3):61一63.[27]张培仁,张志坚,郑旭东,张华宾编著.基于16/32位DSP机器人控制系统设计与实现.北京:清华大学出版社,2006[28]刘和平、王维俊、江渝等编著.TMS32OLF24OXDSPC语言开发应用[M]北京:北京航空航天大学出版社,2003[29]韩彬.基于DSPF2812的无刷直流电机模糊控制系统的设计[D].江苏大学,电力电子与传动,2009.[30]潘新民,王燕芳.微型计算机控制技术。北京:电子工业出版社,2006[31]眭相林,欧阳敏.基于IR2133的三相桥驱动电路设计[J].江西理工大学机电工程学院,2008,(5):173-176[32]彭启琮,张诗,

温馨提示

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

评论

0/150

提交评论