- 2022-09-27 发布 |
- 37.5 KB |
- 89页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
六自由度机械臂控制系统设计与运动学仿真
北京工业大学硕士学位论文六自由度机械臂控制系统设计与运动学仿真姓名:马江申请学位级别:硕士专业:模式识别与智能系统指导教师:孙亮20090501\n摘要摘要机械臂作为机器人最主要的执行机构,对于它的研究有着重要的意义。机械臂系统包括机械、硬件、软件、算法这四个部分。各个部分都是紧密相联,需要互相协调来设计的。课题主要开展了以下几个方面的工作:首先,依据工作空间中机械臂抓持器要想达到任意位姿,至少需要六个自由度的结论,采用了六自由度链式关节的结构。根据自平衡机器人的尺寸设计了一套机械臂的结构方案,并通过各连杆的质量,采用静力学估算各个关节的力矩,从而选择与之匹配的电机。采用了一种基于CAN总线分布式的控制方案。将工控机和关节控制器挂在CAN总线上。工控机主要功能是对关节控制器进行监控,同时也完成机械臂运动学、轨迹规划方面算法的实现。关节控制器采用TI公司的TMS320LF2407DSP,主要实现位置,速度和力矩伺服控制算法的实现。其次,采用标准的D.H建模方法,建立了机械臂的数学模型。对机械臂的正运动学进行了分析,采用解析法对关节角进行解耦运算,推导出了逆运动学的封闭解析解,并采用功率最省做为性能指标,确定了唯一解。使用基于Matlab平台下的RoboticsToolbox机器人工具箱对推导过程的正确性进行了验证与仿真。再次,重点分析了机械臂在关节空间中轨迹规划的两种实现方法:三次多项式和五次多项式轨迹规划方法。仿真结果表明三次多项式轨迹规划方法计算量较小,但是不能保证角加速度连续:五次多项式轨迹规划方法计算量较大些,但能够保证角加速度的连续性,从而使电机平稳地运行。然后又在笛卡儿空间中对机械臂进行了轨迹规划,采用了空间直线和空间圆弧插补算法,详细地介绍了这两种轨迹计划的实现算法,并且对种插补算法进行了仿真实验。最后,根据六自由度机械臂的构型,基于MFC框架类和OpenGL图形库,在VC++6.0开发平台上专门开发了一套适用于这种构型的三维仿真工具。仿真工具把运动学和轨迹规划算法融入了其中,有效地验证了机械臂数学模型以及正、逆运动学求解过程的正确性,并且对四种轨迹规划方法的效果做了直观的比较。有效地解决了运动学和轨迹规划分析结果不易验证以及在实际本体上试验成本较高的问题。关键词机械臂;控制系统;轨迹规划:OpenGL;三维仿真\nABSTRACTABSTRACTManipulatoristhemostimportantimplementingmechanismofrobot,SOthereisaimportantsignificationforitsresearch.Amanipulatorsystemincludesfourmajorsections,suchasthemechanicalstructure,algorithm,hardwareandsoftware.AIlVar·iouspartsarecloselylinkedandrequiredCO—ordinateddesign.Thesubjecet‘‘ControlSystemDesignandKinematicsSimuluationOfsixDegreesOfFreedomManipula-tor’’istheimportantpartofnational863Project‘‘ResearchandPracticeofBionicSelf-OrganizingLearningControlofFlexibleTwo—WheeledBalancingRobot”.Inthispaper,Ourworkmainlyresidesonthefollowingaspects:Firstly,togetanypositionandorientation,themanipulatorneedssixdegreesoffreedomatleast.Inthispaper,usingthesixdegreesoffreedomjointchainstructure,amanipulatorconfigurationmapsfiredesignedinaccordancewiththesizeofflexibletwo—wheeledbalancingrobot.eachjointtorqueisestimatedbythelinkqualityandeachmotorisselectedbythetorque.Secondly,thispaperpresentsadistributedcontrolsolutionsbasedCAN-bus.TheindustrialpersonalcomputerandjointcontrollerareconnectedtotheCAN-bus.Themainfunctionsofindustrialpersonalcomputerarecommunicationandtheimple—mentationofkinematics,trajectoryplanningalgorithm.JointcontrollerUSeStheTMS320LF2407DSPmadebyTexasInstrumentscompanywhosefunctionistoachievelocation,speedandtorqueservocontrolalgorithm.Jointcontrolleriscon-nectedtotheCAN·—busbytheCAN-·cardmadebyAdvantechCompany.DSP2407includesCANmodule,anditcanbeconnectedtotheCAN—busbyexternaltransmit—ter.Thirdly'themathematicalmodelissetup.Kinematicsandinversekinematicsareanalyzed.Twomethodsoftrajectoryplanningbasedonjointspacewereanalyzedaswellaslinearandcircularinterpolationalgorithm.Forthly,three—dimensionalsimulationtoolisdevelopedbasedOpenGLaimingat6-DOFmanipulator.ThesimulationtoolisdevelopedonVC++6.0platform,basedontheMFCframeworkclassandOpenGLgraphicslibrary.Thesimulationtoolof6-DOFmanipulatorshowsthevalidityofthekinematicsmodelandeasilycomparedthefourtypesoftrajectoryplanningmethods.Inthissubject,three—dimensionalsi-mulationtoolisdevelopedwhichnotonlyshowsthevalidityofthekinematicsmodelandintuitivelycomparesthefourtypesoftrajectoryplanningmethods,butalsosolvetheproblemthattheresultofkinematicsanalysisisdifficulttoverifyandthecostofthetrialishighonthemachineentity.1(cy、、’Ol’d11mnipulat01‘,conti’olsystmiI,trajcctoryplanning,OpcnGl,three.dimensionalsimulation.\n独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得j匕塞工些太堂或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。签名:马返日期:三!!呈生笸因J目关于论文使用授权的说明本人完全了解jE哀王些太堂有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。(保密的论文在解密后应遵守此规定)签名:刍丝一导师签名:羁毛隰毕丛\n绪论第1章绪论1.1研究的背景和童义机器人是一种能够进行编程并在自动控制下执行某些操作和移动作业任务的机械装置⋯。机器人技术作为二十一世纪非常重要的技术,与网路技术、通信技术、基因技术、虚拟现实技术等一样,属于高新技术【2】。它涉及的学科有材料科学、控制技术、传感器技术、计算机技术、微电子技术、通讯技术、人工智能、仿生学等等很多学科口J。机械臂作为机器人最主要的执行机构,对它的研究越来越受到工程技术人员的关注。一个机械臂系统主要包括机械、硬件和软件、算法这四个部分。到具体设计需要考虑结构设计、控制系统设计、运动学分析、动力学分析、轨迹规划研究、路径规划研究、运动学动力学仿真等部分。对于一套轻便型机械臂的研发,需要把各个部分紧密联系,互相协调设计。随着时代的进步,机器臂技术的应用越来越普及。己逐渐渗透到军事、航天、医疗、日常生活及教育娱乐等各个领域。目前实际应用的绝大多数机器臂都是固定在基座上的,它们只能固定在某一位置上进行操作,因而其应用范围多限于工业生产中的重复性工作【4]。于是实际生产生活中迫切需要一种活动空间大,能适用于各种复杂环境和任务的可移动机器人。由于移动机器人工作空间大、运动灵活等优点.对它们的研究也是越来越多,但是这种机器人很多都是实现移动的.并没有可控制的手臂,所以没有抓取物体的功能。为了让移动机器人能够完成简单的作业,在它上面安装两只轻型服务型机械臂显的尤其必要。图1.1为德国宇航中心研制的具有视觉伺服可控机械臂的移动机器人。笛靼幽li具柏机械臂的移动Wl器人Figure1。1Mobilerobotswithmanipulators\n北京I业大学I学硕±学位论文1.2国内外机械臂研究现状机械臂的研究最早可追溯到20世纪40年代,美国Argonne&OakRidge国家实验室开发了用于处理放射性物质的遥控机械操作手。1954年,美国的GeorgeDevol首先把远程控制器的杆结构与数控铣床的伺服轴结合起来,研制出了第一台通用机械臂。1978年.Devol的Unimation公司(现在叫StaubliUaimation)推出通用工业机器人PUMA,标志着工业机器人技术已经完全成熟。这属于第一代机器臂.这类机器臂主要是指能以“示教一再现”方式工作的工业机器人【lJ。智能机器人和第一代工业机器人不一样,它具有像人那样的感觉、识别、推理、判断能力,可以根据外界条件的变化,对自己的工作做相应的调整。如果修改程序的原则由人预先给以规定,这种智能机器人便是初级智能机器人,即第二代机器人。这种智能机器臂技术也逐渐成熟,走向实用。在工业生产中,许多用于组装的机器臂,便是这类机器臂。如果智能机器人自己可以通过学习、总结经验来获得修改程序的原则,便是高级智能机器人,也就是第三代机器人。这种机器人是我们机器人学中一个理想的最高级阶段,它可以不按照人的安排,完全独立地工作.故又被称为自律机器人。目前的发展还只是相对的,在局部有这种智能的概念和含义,而真正完整意义上的这种智能机器人并不存在。但无法否定的是随着我们科学技术不断发展,智能的概念也会越来越丰富,其内涵也会越来越宽泛。1.2.1国外机械臂研究现状从20世纪40年代机械臂诞生到现在,已经有70多年了,随着时间的推移对机械臂的研究热度非但没有减弱,相反对它的研究是越来越深入。图1-2显示出机械臂应用的一些场合。比如:航天、喷漆、弧焊、医疗等都用到了机械臂。机械臂给我们生活带来方便的同时,也改变着我们的生活,以前必须用人完成的任务,现在一款机械臂便能出色地完成所有任务。图I-2机械臂应用领域]FigureI-2Maldpulatorapplications\n绪论下面从工业机器人、空间机械臂、服务型机械臂等几类机械臂的情况来介绍国外机械臂的研究现状。(1)工业机器人工业机器人的发展情况,国外可分为四个阶段:1.研制阶段美国原子能委员会的阿尔贡研究所为了解决代替人处理放射性物质,于1947年研制遥控机械手,接着1948年又开发了电气驱动的机械式主从机械手,解决了对放射性材料的远距离操作问题。1951年,美国麻省理工学院(MIT)开发成功了第一代数控机床,与NC机床相关的控制技术及机械零部件的研究,为机器人的开发奠定了技术基础。1954年,美国人乔治-德沃尔(Dev01)最早提出了工业机器人的方案,设计并研制了第一台可编程序的电气工业机器人样机,并于1961年发表了该项机器人专利。2.生产定型阶段20世纪60年代初美国ConsolidatedControl公司与Devol结合,成立了Unimation公司。1962年定型生产了Unimate工业机器人。同时美国“机床与铸造公司”(舢心)设计制造了另一种可编程的工业机器人Versation。这两种型号的机器人以“示教再现”的方式在汽车生产线上成功地代替工人进行传送、焊接、喷漆等作业,它们在工作中表现出来的经济效益、可靠性、灵活性,使其它发达国家工业界为之倾倒。于是,Unimate和Versation作为商品开始在世界市场上销售。3.推广应用阶段1970年,第一次国际工业机器人会议在美国举行,工业机器人多种卓有成效的实用范例促进了机器人应用领域的进一步扩展。同时,又由于不同应用场合的特点,导致了各种坐标系统、各种结构的机器人相继出现。西德Kuka公司生产了一种点焊机器人,采用关节式结构和程序控制。瑞士RETAB公司生产一种涂漆用机器人,采用示教方法编制控制程序。日本是工业机器人发展最快、应用最多的国家。1967年,日本丰田纺织自动化公司购买了第一台Versation机器人。1968年,川崎重工业公司从美国引进Unimate机器人生产技术,开始了日本机器人发展的时代。60年代末,日本大力发展经济型的机器人。成功地把机器人应用到汽车工业、铸塑工业、机械制造业,从而大大提高了制成品的质量和一致性,形成了一定规模的机器人产业。4.产业化、实用化、商品化阶段随着大规模集成电路技术的飞跃发展,微型计算机性能的不断提高和普遍应用,机器人的控制性能大幅度地得到提高,成本不断下降。工业机器人进入了商品化和实用化阶段,形成了大规模化的机器人产业。80年代工业机器人技术得到了巨大发展,所开发的四大类型机器人产品(点焊、弧焊、喷漆、上下料)主要用于汽车工业。由于汽车工业装备更新的变化,工业机器人出现了暂时的相对饱\n北京I业大学I学硕±学位论文和现象。随着以提高产品质量为目标的装配机器人及柔性装配线的开发成功,到1989年机器人产业又出现了转机,首先在日本,之后在各主要工业国家又呈发展趋势。进入90年代后,装配工业机器人及柔性装配技术进入了大发展时期,由于不同用途的要求,使不同结构、不同控制方法、不同种类的机器人相继出现,又促进了机器人的发展I扣”。现在工业机器人的厂家有很多,具有代表性有,ABB、莫托曼、Panasonic、发郏科、Adept和kuka等。下面以ABB新研制出来的IRB6400RF机械臂为代表介绍下工业机器人现在的一些特点,如图1-3左。IRB6400RF的到达距离为2.5ra,承载能力为200kg.在同类机器人中精确度最高,刚度最大,主要用于铝铸件的清理及预:bfla-等。特点是可靠性强,正常运行时间长,维护工作量降至最低。先进的运动控制功能和碰撞检测功能可显著减小工具或工件的损坏风险。速度快,采用ABB独有的控制技术机器人始终能够根据实际载荷对加速度和减速度进行优化。尽可能缩短操作周期。精度高,零件生产质量稳定。具有一流的路径跟踪精度和重复定位精度(RV=1.0mm),配套使用ABBTrueMove功能,该机器人不论速度如何,均可保持运行路径始终不变。坚固耐用适合恶劣生产环境。采用强度很高的全钢结构。整个机械臂达到1P67级密闭性。耐高压蒸汽清洗,非常适合应用于恶劣生产环境【8】。如图1-3右,可以看出IRB6400RF有六个自由度,前三个可以用做确定位置,后三个可阻用做确定姿态。这六个自由度的分配方式.是最优化的自由度分配方式,很多工业机器人都采用这种形式。后三个自由度的轴线交于一点,可以作为机械臂的手腕,这种构性的优点是它存在利于表示和计算的封闭逆解。可见工业机器人的设计比较中规中矩,一般都采用六个自由度,且构性变化不大,重要目的还是用于生产.所以对精度、速度、稳定性等因素要求很高。嚣,擎图1.3ABBIRB6400RF机械臂Figurel-3ABBIRB6400manipulator(2)空间机械臂空间机械臂是一个机、电、热、控一体化的高集成度的空间机电系统【”。随着空间技术的飞速发展,特别是空问站、航人飞机、空间机器人等的诞生及成功\n镕论应用,空间机械臂作为在轨支持、服务的一项关键性技术己经进入太空,并越来越受到人们的关注。空间机械臂有舱内和舱外两大类。舱内机械臂通常尺寸不大、运动范围有限,主要完成舱内装配、更换部件、对漂浮物体的抓取等。舱外机械臂长从几米到十几米不等,针对不同任务的需求自由度从5个到10个不等,安装载体有航天飞机、空间站、以及小型飞行器或空间机器人。它主要完成辅助对接、目标搬运、在轨建设、摄像、对卫星等空间合作或非合作目标的捕获释放等,此外还可以作为航天员出舱活动的辅助设备。1993年德国宇航中心研制且成功发射的小型空间机器臂系统ROTEX,它有6个自由度,安装有各类传感器和执行器,能够在Im的运动范围内进行指定的操作。目前正在进行Inspector系列自由飞行机器人的研究。最具代表性的空间机械臂是“国际空间站”的美国舱段上,由加拿大和NASA联合研制的移动服务系统(MSS)”⋯,如图1-4所示,它主要由一个空间站遥控操作臂系统fssRMslf长176m,7个自由度)和一个特殊用途的灵巧操作臂(SPDM)(长35m,15个自由度)组成⋯。图14“国际空间站”美国舱上的MSSFigure14MSSofⅡmIntemationalspaceStation此外,在咽际空间站”的俄罗斯舱和日本舱还装配了两个大型空间舱外机器人系统,即欧洲航天局资助研制的欧洲机械臂ERA[”I(长Ilm,7个自由度),如图1.5所示。图1-5“国际空间站”俄罗斯舱E的ERAFigure15ERAoftheintemationalspaceStation和同奉实验舱机械手系统JEMR/,ASI”1(长10m,6个自山度),未端安装\n北京I业大学I学硬±学位论文个2m长的6自由度小型灵巧机械臂。除“国际空间站”的多机械臂系统外,在航天飞机上由加拿大设计的加拿大机械臂Canadarm[“1(长15m,6个自山度),如图I-6所示,可以由宇航员在航天飞机的后甲板通过两个操纵杆进行操作,来完成从航天飞机的货舱中取出卫星并释放,协助航天员完成空间任务等工作。图1.6航天飞机上的CanadarmFigure1-6CanadarmoftheinternationalspaceStation可见,空间机械臂技术含量很高,对机械臂的定位精度、冗余、容错性等性能指标要求极高.国外已经研究30多年了。(3)轻便服务型机械臂由于机械臂技术应用的普及,很多地方都能看到它的身影,与以往不同的是,现在使用机械臂的场合发生了变化.以前的机械臂多以工业机器人为主,其工作任务和用途比较单一,一旦程序编写以后就不需要人工修改。但现在机械臂要服务于很多场合的很多任务,所以开发较为智能能应用于各种环境的轻便行机械臂变的尤其重要。如图1.7,这款机械臂既能帮人倒饮料,又能通过视觉伺服进行装配工作。图1-7不同的工作任务Figurel·7Differemmsks如rthesamemanipulator下面介绍两款当今技术比较完善的机械臂,一敖来自于瑞士苏黎世的Neuronics公司的Katana机械臂和另一款是来自于德国宇航中心的LWRIII轻便型机械臂。1Katana机械臂“”瑞士Neurolfies公司磺新发却的机器臂Katana1.2。这款机械臂有六个自由度,重4kg,最大Eg/5,12Vt最大电流6A,电大功率60W,最大能够载重0.5kg,\n镕*定位精度±0Irma,拉直长才055m。它具有一个功能强大主板,该主板提供了充足的外设接口,使得Katana很容易就能集成到任何自动化环境中去。主板采用了高端的PowerPC处理器.该处理器集成了FPU(浮点数计算单元1,2个USB主机,1个USB器件,CAN,Etllemet,2个串口以及一些标准数字I/O接口。通过板上的FPGA,还可以进一步实现其它需要的接口。主板具有实时最优的嵌入式Linux内核,使得它具备了很强的通用性及多功能性,在可连接性,可配置性,标准API可用性以及单机独立性等方面都有很好的性能。通过Katana本地接口KNI,Katana12机器手臂可以完全独立运行。基于KNI的应用程序可以下载到机器手臂上.井在机器手臂平台上直接运行,而不需要另外连接一台主机来运行。但是仍能通过标准I/O接口来与其所处的自动化环境进行交互。以上特征使得Katanal2机器手臂具备了其它同种类机器人所不具备的单机独立性。本地程序以及应用也可以通过标准的脚本语言来获得,使得编写和运行应用程序都变得非常简单。K“arIa在6关节中分别用了六个32位的TITMS320LF2812DSP控制器,对每个电机和编码器进行控制。关节控制器采用CAN总线连接到主板,这样对于实时要求高的信息,例如碰撞检测,不再需要将信息输入到主控制器中进行循环和计算,而可以直接由每个节点的控制器来处理。它采用开源的cH语言类库控制手臂的运动,它可以完成传统的工业机器人所不可能完成的海量自定义设置。这款机械臂另一个亮点就是设计者在它的抓持器上也煞费苦心,一个抓持器上面就集成了15个传感器,包括压力,红外线传感器等,如图1_8。图1-8Katana机械臂和抓持嚣Figure1-8Kalanamaalpulatorandgripper2LWRIII=}d[械臂‘16i德国宇航r¨山(DLR)的轻型机器人的设计理念是实现一种与人手臂运动冗余度t|_11似的操作器(肩上兰个自由度,肘上一个,腕上三个),ⅡⅡ具有7个自山度,\n北京工n大学I学硕±学位论文负重比在l:2到1:3(工业机器人约为1:20)之间,系统总重不到20kg,手臂的可达空间为1.5m。如图I-9左。图l·9LWR机械臂和四指灵巧手FigureI-9LWRmanipulatorandfour-fingereddexteroushandLWR上没有大量的连接电缆(不像工业机器人那样装有电子箱),具有较高的动力学性能。由于现代机器人控制法的基础都是控制关节转矩,因此LWR的第一个碳纤维型手臂中使用了一个感应型转矩测量系统,该系统是双行星齿轮系统的一个组成部分。在一个完整的逆动力学(关节转矩)控制系统中(用了一个BP神经网学习系统用来补偿重力建模误差)使用了该系统。从控制的角度来看,DLR的轻型机械臂采用了齿轮箱及集成式转矩传感器的结构,这属于柔性关节机器人的范畴。其动力学模型可以利用拉格朗日方程来建立。在分解操作器动力学上,LWR将模型转换到一个新的坐标系中,其中关节转矩被看作是一个状态变量,而不是电机位置。这样做就可以得到了所谓的机器人动力学奇异摄动表达式。在较高的层次上,采用了一个混合学习方法得到了特别有意义的控制结果.它是基于一个能够实现转矩控制的全逆动力学模型。由于任意一个模型都不会是完美的,LWR利用BP神经网络来学习剩余的不确定因素。LWR机械臂在力矩控制上面做了那么多工作,其中一个重要目的就是保证机械臂在运动时碰到障碍物立即朝反方向弹开。这也迎合了德国宇航中心宣扬的安全的理念.当机械臂碰到人的时候会自动的弹开,而不会伤害到人。同时德国宇航中心与哈尔滨工业大学合作联合研发了一款多传感器的4指灵巧手,见图1.9右,灵巧手总共具有12自由度(每个手指具有3个主动自由度),它有112个传感器,约1000个机械部件及1500个电子部件,是迄今所制作的最复杂的机器人手。其手指采用位置一力控制方式(阻抗控制),进行重力补偿,利用适当的避碰算法防碰。其中全部驱动器都基于位置一力控制式人造肌肉,集成在手掌中或直接集成在手指中。这种手是完全模块式的,可以安装在任意一台机器人\n一\n北京I业大学工学硕±学位论文图l-ll水下机器人Figure1-1lUnderwaterrobot国防科技大学研制的两足类人机器人,北京航空航天大学研制的三指灵巧手,华南理工大学研制的点焊、弧焊机器人及各种机器人装配系统、哈尔滨工程大学研制的蒸汽发生器检修机械臂。图1.12北航三指灵巧手Figure1.12Tnere_fmgereddexteromhandfrombuaa总之,国内机械臂技术跟国外的机械臂相比还有很大的差距,还需要我们投入更多的精力、人力和财力去研究。1.3机械臂关键技术进展一个机械臂系统,可谓是一个项系统工程。它涉及的学科有材料科学、控制技术、传感器技术、计算机技术、微电子技术、通讯技术、人工智能和仿生学等等很多学科。具体到设计一个机械臂系统,需要考虑机械设计、控制系统设计、运动学分析、动力学分析、轨迹规划研究、路径规划研究、运动学动力学仿真等部分。下面根据课题已开展的工作分别对控制系统、轨迹规划和运动学仿真的研究近况进行阐述。1.3.1械臂控制系统研究现状对于一个机器臂控制系统,需要对多台电机进行联动控制。为了实现多台电机之间的通信和控制,必须建立一套数据通信系统来完成主计算机与各运动控制\n绪论单元间的数据交换。一般控制系统有中央式和分布式的体系结构。常用的分布式体系结构有RS。485总线,USB总线,SERCOS总线和CAN总线等,下面对各种体系结构的研究现状进行分析。中央式的体系结构是比较传统的运动控制方法,但这种控制体系随着工业控制系统复杂性的增加,固有的缺点也就逐渐暴露出来。比如当需要控制的节点不断增加,需要反馈的传感器信号不断增多时,如果处理信息和产生控制信号都由一个中央处理器来完成,那么对它来说是不堪重负的。一旦中央控制器出现故障,将对整个生产装置甚至整个生产系统带来严重的影响。另外由于这种体系结构线路复杂,给日常维护带来了很大的难度【l91。所以这种体系结构已经用的很少了。随着基于现场总线的分布式控制技术的提出,一举攻破了中央式的体系结构不能解决的难题。它是将处理信息和产生控制信号的任务分配给各个控制节点的微处理器来完成,中央处理器只需要和各个控制节点上的微处理器通过现场总线连接以及完成一些机械臂运动学算法,即可完成对整个系统的控制,这样做可以极大的简化控制设备,减少了系统控制的复杂性,降低了成本,并且提高了系统的稳定性【I91。目前在机器臂领域常用的现场总线有RS.485总线,USB总线,SERCOS总线和CAN总线等,下面对这四种总线进行介绍和比较。RS.485总线是现代工业应用最广的总线之一。属于总线形拓扑结构,数据传输速度最高达10Mbps最多可以扩展32个节点【201。RS.485总线包括两线制和四线制。RS.485总线两线制允许多个主节点,但仅能工作在半双工模式下;RS.485总线四线制只允许总线中有一个主节点,而从节点间不能交换数据,可以工作在全双工模式下,现在很多工业控制采用RS.485总线。技术支持也比较完善。哈尔滨工业大学2006年仿人形机器人技术与系统中就采用这种总线【551。USB总线是种通用的串行总线,它是针对多媒体传输需要而提出的连接系统,可以支持声音、音频以及压缩视频的实时传送【211。快速是USB总线的突出优点之一,USBl.1接口的最高传输速率可达12Mbps,比并口速率快近10倍:USB2.0接151的最高传输速率高达480MbpsoUSB总线还支持热插拔。USB总线是树形的拓扑结构,虽然最多可以接127个USB外设,但是串联3个以上USB设备时必须使用USB集线器,增加了成本和体积。另外线缆长度受限制,低速传输要求线缆不超过5m,高速传输要求线缆不超过3m,USB总线在工业和机械臂领域的应用并不多见,技术支持不太完善。SERCOS(SerialReal.timeCommunicationSpecification,串行实时通信协议)是一种专门用于在工业机械电气设备的控制单元与数字伺服装置及可编程控制器之问实现串行实时数据通信的协议标准【221。1995年被批准为国际标准IEC61491。SERCOS总线采用环形拓扑结构,一个环包括一个主站和多个从站f最多254个),主从站之问无须查询和应答。采用光纤作为传输介质,能够提供很强的抗电磁干扰能力。数据传输速率最高达16Mbps,而且可以保证数据的严格\n北京工业大学工学硕士学位论文同步实时传输,有效数据传输效率相当于100Mbps以太网。但是,SERCOS总线目前主要要应用于数控机床,在国内用于机械臂领域的案例很少。它的技术支持,相对于其它总线来说不够完善。图1-9中的LWR机械臂就采用的这种总线。控制器局域网(CAN)总线是20世纪80年代德国Bosch公司为解决众多的测量控制部件之间的数据交换问题而开发的一种串行数据通信总线【2引。它己成为国际标准IS011898和IS011519。CAN从本质上讲是一种多主或者对等的网络,网络上任意节点均可以主动发送报文,可以实现点对点、多点播送、广播等几种数据传送方式。总线长度可达10km,这时速率为5kbps以下,当总线长度为40m及其以下时,数据传输速度可达1Mbps。目前网络上的节点数可达110个,其数量主要取决于总线驱动电路。具有多种检错措施以及相应的处理功能,可靠性高。对于CAN总线系统,挂在CAN总线上面的各个模块是相互独立的,缺少某个模块系统都能够运行。就比如说一个机器人系统,它包括手臂,双腿等很多控制器,采用CAN总线,机器人系统中的各个模块就可以独立挂在CAN总线上,这样就易于扩展其功能了。现在CAN总线的应用非常广泛。图l-8中Katana机械臂就采用这种总线。1.3.2轨迹规划研究的现状为了提高生产效率和改进跟踪精度,轨迹规划一直是机械臂研究的一个热点。机械臂轨迹规划一个最重要的要素是性能优化指标。如时间最优和系统能量最优指标等。其中对时间最优下机械臂轨迹规划算法研究的较多。在过去的十多年中,对全驱动刚性机械臂最优时间轨迹规划问题的描述和计算一直比较活跃。现有的大部分工作可以被广泛地分为两类。一类是沿着一条预设连续路径的最优时间动作轨迹算法;另一类是针对最优时间下点到点(Point.to.Point.P.P)动作的优化处理算法。1.最优时间下沿着一条特定预设连续路径运动的动作序列求解算法。在基于机械臂运动学方面设计的轨迹规划算法中,主要有以下几个成果。VolpeR等人在考虑了机器人在位置、速度、加速度和二阶加速度方面的运动学约束后提出了一种最优时间下的轨迹规划方法,并使用柔性多面体搜索(FlexiblePolyhedronSearch,FPS)算法来进行具体求解,这种方法通过使用高次多项式曲线来连接机器人关节空间中一系列的关键点而得到满意的轨迹【2引。但是这种算法只是一种局部搜索算法,算法的性能与初试条件的选取紧密相关。Tondu等人基于同样的约束条件,提出了类似的最优时间下轨迹规划方法。不过为了简化起见,这种方法使用了带有光滑转折的直线段来连接关节空间中的关键点,这样做的缺陷是在产生的轨迹中不能对给定的中间点进行捅值操作。Bazaz等人指出在考虑了速度和加速度约束的前提下,进行最优时问轨迹规12\n绪论划的过程中,三次样条曲线是连接关节空间中各个关键点的最简单的多项式曲线形式,并据此提出了相应的算法。但遗憾的是,在使用三次样条曲线的过程中,在关键点的连接处没有考虑加速度的连续性,这可能会引起机械手移动过程中的振动。此后,Bazaz等人(对前面的方法进行了一定的综合,提出利用带有光滑转折的三次曲线段来连接关键点的新方法,据此设计的算法取得了一定的效果。另外,还有在同时考虑了机械臂运动学和动力学约束条件的前提下而设计的时间最优轨迹规划算法。如杨国军和崔平远提出了一种基于模糊遗传算法的机械手时间最优轨迹规划算法,该算法将模糊原理应用于遗传算法,对遗传算法中的交叉概率和变异概率进行模糊控制,综合考虑了机械臂的运动学和动力学特性,克服了传统的非线性规划方法易陷入局部极小的不足,不过他们对机械手运动学及动力学特性的考虑不甚全面(如没有考虑加速度或二阶加速度方面的约束等),另外仅对低自由度的机械手进行了仿真【25l。2.最优时间下点到点(P—P)动作的优化处理算法。基于P.P动作的机械手工作任务,一般是指需要机械手在工作空间中设定的各个工作点之间来回移动来完成的一类工作任务,其中限定机械手必须到达每个工作点,并在相应的各点停留。目前,已经有一些具有代表性的处理最优时间下机械手P.P动作的优化控制算法。在运动学最优轨迹规划方面,机器人结点之间的轨迹规划采用多项式插值的方法[26】,各关节的运动是线性独立的。Zha[271在直角坐标空间内用遗传算法进行机械臂的运动学最优轨迹规划,利用Bezier曲线,将机器人的位姿向量所构成的直纹而作为机器人的轨迹,并对其进行插值。Yun[28】在关节空间内用遗传算法进行了最优轨迹规划。为了更好地控制机械臂,在进行轨迹规划时,还要考虑机器人的动力学,最典型的方法是以机械臂系统的动能为指标,应用拉格朗日乘子法进行动能最小的轨迹规划。与之相对应的问题是时间最短的轨迹规划,Linetal在直角坐标系内给定的连续轨迹上选择足够多的中间点,并把他们通过逆运动学转换到关节空间内,通过多项式插值,在满足位置、速度、加速度约束的前提下,使总的运行时间最小。从充分利用灵活性提高操作性能出发,郭立新,赵明扬,张国忠129]研究了关节力矩最小的冗余度机器人最优轨迹规划,取得良好的控制效果。从工作过程的安全性角度出发,Hollerbachl301最小关节驱动力矩为目标应用最小二乘法进行最优轨迹规划。Herzingeretalt31】以时间最短为目标进行了最优轨迹规划。Bessonnet和Lallemand【32J研究了考虑负载力矩约束的轨迹规划问题。Saramago”将系统的动能和运动时间同时加以考虑,目的是使系统动能最小和时间最短两者达到综合最优,在给定各节点间进行多项式插值,以生成连续轨迹。Papadopoulosetalt弱J研究了各种约束下的轨迹规划问题。可见,无论是运动学最优轨迹规划还是动力学最优轨迹规划,在各节点间生\n北京工业大学工学硕士学位论文成连续轨迹时,都是在运动学反解和多项式插值的基础上,应用各种优化方法得到机器人的最优轨迹。多项式插值的方法具有简单和计算速度快的优点,因此,目前该方法仍在研究和应用之中。1.3.3仿真技术研究现状仿真是近30年在系统科学、系统识别、控制理论、计算技术和控制工程等多种技术发展基础上发展起来的一门综合性很强的新兴技术。在计算机面世以前,仿真只是局限于用物理模型来模仿实际系统的物理仿真。随着计算机技术、计算方法的发展,人们建立数学模型的能力、计算机求解复杂模型的能力以及存储能力都得到了显著加强,系统仿真也逐步过渡到数字仿真,图形仿真,继而到虚拟现实。计算机成了系统仿真中不可或缺的工具。因此,计算机系统仿真就是,以计算机为工具,以相似原理、仿真技术、系统技术及其应用领域有关的专业技术为基础,利用系统模型对实际的或设想的系统进行试验研究的一门综合性技术。它集成了当代科学技术中的多种现代化顶尖手段,正在极大地扩大着人类的视野、时限和能力,在科学领域里产生着日益重要的作用。目前,计算机系统仿真已广泛地应用于航空航天、通信、交通、化工、军事、生物、医学等领域,其重要性已广为人知。机器人的仿真研究已经成为机器人学中一个引人瞩目的领域,而机械臂三维运动仿真是机器人仿真研究中一个很重要的组成部分。机械臂仿真有各种方式,比如可以用MATLAB,ADAMS等这些平台进行运动仿真,都能达到一定的效果。CorkePI【34】在MATLAB平台下开发了ROBOTICS工具箱,能够通过函数实现简单的运动学仿真。曹春芳[35J等人基于ADAMS软件对机械臂进行运动学仿真。SokHaK.im[36】等人基于OpenGL图形库开发了一套机械臂仿真系统,实现了机械臂的正、逆运动学仿真。严勇杰p7J利用文【36]的方法,且通过定时器,不断刷新视图,达到了动画的效果。文[34】和文[35】都是基于MATLAB开发平台的,想在机械臂仿真平台上扩展些新功能并不是很方便,而且显示效果也不是很好,文[371和文f38]的仿真方式,有很好的移植性,虽融入了正逆运动学算法,但并没有阐述具体轨迹规划算法的实现。1.4课题的来源及主要研究内容1.4.1课题来源本文的研究工作得到了国家”863计划”项目(2007AA042226)、国家自然科学基金项目(60774077)、北京市教委重点项目(Kz200810005002)、北京市人才强教计划项目、教育部博士点基金项目的支持。14\n绪论1.4.2研究内容设计一套机械臂需要考虑结构设计、控制系统设计、运动学分析、动力学分析、轨迹规划研究、运动学动力学仿真等部分。本文从实际情况出发,从硬件系统、运动学分析、轨迹规划和三维仿真工具开发这四大部分对机械臂系统进行了研究。每个部分又细分为各个研究点。如图1.13。图1—13机械臂系统研究方案图Figure1-13Manipulatorsystemprogramplan本课题正文包括五章:第一章:绪论部分,主要介绍课题的研究背景及意义。通过工业机器人、空间机械臂以及轻便服务机械臂分析了国内外机械臂的研究现状,接着又从控制系统、轨迹规划和仿真技术这三个机械臂关键技术分析了机械臂的研究现状。第二章:介绍了机械臂的选型依据,设计一套机械臂的结构方案,并通过各连杆的质量,估算出各个关节的力矩,从而对机械臂关节所需的电机进行了选型。采用CAN总线分布式的控制方案,对机械臂的控制系统进行设计。将工控机和关节控制器挂在CAN总线上,各自实现模块化控制。第三章:采用标准的D.H建模方法,建立了机械臂的数学模型。对机械臂的正运动学进行了分析,采用解析法对关节角进行解耦运算,推导出了逆运动学的封闭解析解,并采用功率最省做为性能指标,确定了唯一解。使用基于Matlab平台下的RoboticsToolbox机器人工具箱对推导过程的正确性进行了验证与仿真。第四章:重点分析了机械臂在关节空间中轨迹规划的两种实现方法:三次多项式和五次多项式轨迹规划方法。结果表明三次多项式轨迹规划方法计算量较小,但是不能保证角加速度连续;五次多项式轨迹规划方法计算量较大些,但能够保证角加速度的连续性,从而使电机平稳地运行。然后又在笛卡儿空间中对机械臂进行了轨迹规划,采J1J了空问直线和空间圆≯氏插补算法,仔细地介绍了这两种轨迹计划的实现算法,并且对种插补算法进行了仿真实验。\n北京工业大学工学硕士学位论文第五章:根据六自由度机械臂的构型,基于MFC框架类和OpenGL图形库,在VCH6.0开发平台上专门开发了一套适用于这种构型三维仿真工具。并把运动学和轨迹规划算法融入其中,有效地验证了第四章中对机械臂建模以及正、逆运动学分析的正确性,并对四种轨迹规划方法的效果做了直观的比较。最后,对本文研究的内容和提出的方法和观点做出总结性的介绍,同时明确其应用前景和下一步需要继续研究的工作。16\n第2章六自由度机械臂硬件系统设计2.1概述机器臂系统是一个典型的机电一体化系统。从组成原理上讲,它由机械本体结构和控制驱动系统组成。本章首先根据任务要求拟定机器人的基本技术参数(自由度以及构型),然后通过估算关节力矩,推倒出了待选电机的功率,对电机进行选型。比较了当前热门的几种分布式控制系统,最后采用CAN总线来实现机械臂的分布式控制。介绍了机械臂控制系统的总体设计,接着具体介绍了系统各部分硬件电路的具体实现。2.2机械臂构型选择要求机器臂的抓持器能够以准确的位置和姿态移动到给定点,这就要求机器人具有一定数量的自由度。机器臂的自由度是设计的关键参数,其数目应该与所要完成的任务相匹配。一般来说自由度越多,机械臂的灵活性越大,通用性越广,其结构也越复杂。为了使安装在双轮自平衡机器人上的机械臂能够具有完善的功能,能够完成复杂的任务,将其自由度数目定为6个,这样抓持器就可以达到空间中的任意位姿,并且不会出现冗余问题。在确定自由度后,就可以合理的布置各关节来分配这些自由度了。对于串联的运动连杆,关节数目等于要求的自由度数目。同时,机器人的结构形式与机器人运动学逆解有着非常密切的关系,所以机械臂的构型选择对于机械臂正、逆运动学的推导有着密切的联系,一般来说选择一种计算量较小,而且能够达到我们要求的机械臂构型是我们设计系统的一个重要指标。尽管运动学方面的一个重要结论指出,所有包含转动关节和移动关节的串联自由度机构都是可解的,但这种解一般是数值形式的,而存在封闭解的机器臂一般具有以下特性:存在几个正交关节轴或者有多个连杆转角为0或士900,对具有6个旋转关节的机器人存在封闭解的充分条件是相邻的3个关节轴线相交于一点。这是充分条件,但不是必要条件。由于计算数值解远比封闭解费时,数值解很难用于实时控制,因此,当今文献中设计的六自由度串联机械臂几乎都有三根相交轴,且大多数是设计成后3个关节相交,相交点称为腕关节原点。这样,后3个关节就确定了末端执行器的姿态,而前3个关节确定腕关节原点的位置。采用这种方法设计的机械臂可以认为是由定位结构及其后面串联的定向结构或手腕组成的。这样设计出来的机器人都具有封闭解。另外,定位结构都采用简单结\n北京工业大学工学硕士学位论文构连杆转角为0或900的形式,连杆长度可以不同,但是连杆偏距都为0,这样的结构会使推倒逆解时计算简单。本课题的机械臂也按照以上的一些设计规则,定位结构采用转角为0或900简单结构连杆,连杆偏距都为0,对于相邻的3个关节轴线尽量交于一点这个要求,考虑到机械臂的用途是要装在双轮自平衡机器人上,如果3个关节轴线交于一点的话,机器人会很难看,而且这种构造的工作空间与双轮自平衡机器人的实体重合比较多,于是机械臂所能达到的位姿受到了很大的限制,所以本课题采用图2.1所示的六关节链式结构。六个关节分别用六个直流有刷力矩电机来驱动,电机轴与旋转方向已在图中标出,图2,1六自由度机械臂结构简图Figure2·1Structuraldiagramofthesixdegreesoffreedommanipulator2.3电机选择对于电机的选择首先要考虑的是电机的类型,现在世面上有很多类型的电机应用到了机械臂关节上,比如工业机器人用的电机以交流伺服电机居多,教学机器臂一般采用舵机,还有一些对精度要求较高的轻便型机械臂,采用简单而且利于控制的直流有刷伺服电机。其次还要考虑的是其对应的关节所承受的最大力18\n第2章六自由度机械臂硬件系统设计矩,以及各个关节的最大角速度。这样就可以估算出需要采用电机的功率,于是电机峰值堵转功率成为电机选择的一个重要参数。对于电机的其他参数就按照最优方式选择,比如根据世面上电源情况选择峰值堵转电压,其次选择电机的长度和厚度也很重要。一般来说电机在低速运动下的力矩很小(即使是力矩电机,采用的各种驱动方式1,也无法达到机械臂关节所要求的力矩,所以对于每个电机来说都必须加减速器。这样就可以使电机转速在很低的情况下产生很大的力矩。2.3.1各关节力矩估算各关节的动力参数要求是各关节的驱动元件和传动件选型的重要依据。由机器人动力学知识可知,完整的机器人动力学方程具有如下形式:Q=M(g)互+C(q,0)0+,(口)+G(g)(2.1)式(2.1)中,q表示关节位置向量,口表示关节速度向量,百表示关节加速度向量,M表示惯性张量,C表示与哥矢加速度和向心加速度有关的量,F表示与粘性摩擦和库仑摩擦有关的量(它还与关节转角位置有关),G表示惯性负载,Q表示关节广义力向量。在设计时,机器人的动力参数计算方法主要有两类:一是静力学方法,二是动力学方法。对于低速机械,其运动构件因惯性力而引起的动载荷不大,即式(2.1)中C项的影响很小,可以忽略不计,同时也可以忽略摩擦力的因素。这种不计动载荷而仅考虑静载荷的计算称为静力计算。对于高速运动,由于其动载荷很大,C项的影响很大,往往大大超过其它静载荷,因此不能忽略不计,且粘滞摩擦也须加以考虑,这种同时涉及静载荷和动载荷的计算称为动力学计算。考虑到机械臂是安装在双轮自平衡机器人上,只要动作协调,并不要求工业机器人那样必须达到很快的移动速度,所以机械臂各个关节的速度比较低,于是采用静力学方法来估算机械臂所需要的力矩p9.40J。为估算各关节所需力矩,假定各关节的重量集中在关节理论中心点,各连杆重量集中在连杆中间,且按设计的零件图纸估计各关节及关节连杆重量如图2.2左。关节极限力矩由重力负载和加速度负载组成。计算方法如下:关节一:受到关节六(包括负载)、连杆五、关节五、连杆四、关节四、连杆三、关节三、连杆二、关节二重力产生的扭矩和加速度附加扭矩。估算得到式(2.2),其中Ll:0.25表示机械臂关节一轴线到关节二与关节六之间质心的距离。T1=(2+o.4+0.8+0.3+0.6+0.2+0.6+0.1+0.5)木9.8'LI=13.48(N.M)(2-2)如图2—2右所示,由于关节和杆重都是估算,还有重心位置也是估算而得,所以存在一些误差,而且没有考虑动力学项,所以在实际设计时应该比求得的力矩大上20%的余量,后面关节同理。关节二:受到关:1j.六(包括负载)、连杆五、关2肖五、连桐:叫、关节四、连杆三、关节三、连杆二重力产生的扭矩和加速度附加扭矩。可以估算得到式(2—3),19\n北京工业大学I学硕±学位论主其中L2.03为机械臂关节二轴线到连杆二与关节六之间质心的距离。n=(O4+08+03+06+02十06+0I+05)+98+L2=1029(NM)(2-3)关节三:受到关节六(包括负载)、连杆五、关节五、连杆四、关节四、连杆三重力产生的扭矩和加速度附加扭矩。可以估算得到式(2·4),其中L。=02为机械臂关节三轴线到连杆三与关节六之间质心的距离。T3=(O3+o6+02+06+0140.5)+9.8+L3=4508(N.M)(2-4)图2-2六自由度机械臂结构图Figure2-2Structureofthesixdegreesoffreedommanipulator关节四:受到关节六(包括负载)、连杆五、关节五、连杆四重力产生的扭矩和加速度附加扭矩。可以估算得到式(2.5),其中b=014为机械臂关节四轴线到连杆四与关节六之间质心的距离。T4=(0.2十o6+01+0.5)’98+L4=1.92(NM)(2-5)关节五:受到关节六(包括负载)、连杆五重力产生的扭矩和加速度附加扭矩。可以估算得到式(2.6),其中L,=O.065为机械臂关节五轴线到连杆五与关节六之间质心的距离。T5=(01+05)+9,8+L5=038(NM)(2_6)关节六;受到加速度附加扭矩及摩擦力。可以估算得到如下式,力矩很小,使用关节五的电机足以达到要求。\n第2章六自由度机械臂硬件系统设计2.3.2各关节功率估算及电机选型下面给定各个关节的最大转速,要求关节一的转速是60度/秒,关节二的转速是30度/秒,关节三的转速是30度/秒,关节四的转速是30度/秒,关节五的转速是30度/秒,关节六的转速是80度/秒。即n1=600/s21.05rad/s(2-7)112=300/s=0.523rad/s(2·8)n3=300/s20.523rad/s(2—9)n4=300/s20.523rad/s(2—10)n5=300/s20.523rad/s(2—11)n6=80。/s21.43rad/s(2-12)根据功率=转矩×角速度,可得P1=T1枣nl=14.15W(2—13)P2=T2卑n2=5.38W(2—14)P3=T3牛n3=2.36W(2—15)P4=T4宰n4=1.00W(2—16)P5=T5木n5=0.20W(2—17)P6=T6宰n6=0.1水1.05=0.105W(2-18)对于电机的连续堵转力矩可以用上面估算出来的实际关节力矩除以减速比和减速效率(60%)来求得。下表为采用的力矩电机,由北京勇光高特微电机有限公司提供。对于电机的减速器和编码器(1024线),准备由电机提供商提供电机时一起设计提供,这里就不再赘述。表2.1电机选型表T{lble2.1Motorselectiontable蜂值堵转最大空我连续堵转型号转矩电流电压功率转速转矩电’瀛电压功率质量(辟Ⅱ)(A)(V)(W)(r/rain)(NI)(A)(V)(W】(蚝)I2582"Il兑.6Ia如0j23儿2.5.30.9270LYXD3关节一耵Ln∞l0.227.7129243∞000642.2635379803关节=36LE皿300983.2123943如00.02940963.634560.22关节三36Ln∞I00492.71232458000.01470.8I362916022关节四36LYxDI0049271232.4j铷0.叭470.8l362.9160.22关节五36LYXDl00492712324霓000014708l362916022关节六2l\n北京工业大学工学硕士学位论文2.4硬件系统设计对于六自由度的机器臂控制,需要对多台电机进行联动控制。为了实现多台电机之间的通信和控制,必须建立一套数据通信系统来完成主计算机与各运动控制单元间的数据交换。对传统的运动控制系统采用中央式的体系结构,随着系统复杂性的增加,这种控制体系固有的缺点逐渐暴露出来,所以不予考虑。基于现场总线的分布式控制技术能够解决这些问题。但常见的分布式控制系统又有USB总线,SERCOS总线,RS.485总线和CAN总线等这几种,具体选用哪种还需要进行调研。USB总线是种通用的串行总线,它是针对多媒体传输需要而提出的连接系统,可以支持声音、音频以及压缩视频的实时传送。但是USB总线在工业和机械臂领域的应用并不多见,技术支持也相对太少。SERCOS(SefialReal.timeCommunicationSpecification,串行实时通信协议)是一种专门用于在工业机械电气设备的控制单元与数字伺服装置及可编程控制器之问实现串行实时数据通信的协议标准。SERCOS总线目前主要要应用于数控机床,在国内外用于机械臂领域的案例很少,所以它的技术支持,相对于其它总线来说相对较少。RS.485总线是现代工业应用最广的总线之一。属于总线形拓扑结构,数据传输速度最高达10Mbps最多可以扩展32个节点。RS.485总线包括两线制和四线制。RS.485总线两线制允许多个主节点,但仅能工作在半双工模式下;RS.485总线四线制只允许总线中有一个主节点,而从节点间不能交换数据,可以工作在全双工模式下。它是工业控制上常用的一种总线形式,技术支持相对完善。控制器局域网(CAN)总线是20世纪80年代德国Bosch公司为解决众多的测量控制部件之间的数据交换问题而开发的一种串行数据通信总线。CAN从本质上讲是一种多主或者对等的网络,网络上任意节点均可以主动发送报文,可以实现点对点、多点播送、广播等几种数据传送方式。具有多种检错措施以及相应的处理功能,可靠性高。它也是工业控制上常用的一种总线形式,技术支持也相对完善。考虑到可靠性、技术支持、各个关节模块化、增减接点数对网络修改不大等多方面因素,本课题将采用CAN总线来实现机械臂的分布式控制。图2.3为六自由度机械臂系统的控制总体方案图。图中的工控机的功能是进行通讯,轨迹规划,曲线插补,各轴电机同步轨迹实现等。由于一般的工控机没有CAN模块,所以还需要一块CAN卡把工控机挂在CAN总线上,这里采用的是研华的PCI一1680CAN卡。下面的电机控制单元,主要实现电机的速度控制、关节位置控制、关节力矩控制算法。控制器采用\n第2章六自由度机械臂硬件系统泣汁图20六自由度机械臂控制系统总体设计方案图Figure2-3ControlsystemdesignofthesixdegreesoffreedommanipulatorTI的DSP2407,这块DSP在电机控制领域用的很多,它集成了CAN模块,只要加一块PCA82C250接收芯片就能挂到CAN总线上了,使用非常方便。2.4.1关节控制器设计本课题选用了TI公司的2000系列DSPTMS320LF2407作为控制单元。其时钟频率可达40MHz,具有高速的处理能力,片内资源丰富,特别是它特有两个内置事件管理器模块(EVA、EVB),使其在电机控制领域具有非常广泛的应用。该芯片本身尺寸很小,需要外扩的资源不多,节省了电路板的空间。通过JTAG接口可以方便的对DSP进行全速的在系统调试仿真。1Ms320LF2407的电源电压为33V.正常下作电流为80mA左右,抗干扰能力较强⋯】。下面图2-4给出了控制关节速度、位置的组成框图。通过DSPTMS320LF2407来实现电机的位置环控制和速度环控制.采用了速度环,可以使系统的动态性性能得到显著提高。两个闭环可以采用积分分离P1D控制,根据实际调试情况,可以对控制律进行适当的化简。零位霍尔接近开关在系统上电时用于较粗略的确定电机的绝对位置,再结合增量编码器的z通道的信号,就可以较精确的确定出电机的绝对位置。在工控机上输入机械臂抓持器需要期望到达的位姿,然后经过轨迹规划求得的目标位置,接着换算成增量码盘的脉冲数后,发给关节控制器。关节控制器利f『|它和从增量编码器实际测得的脉冲数进行比较,利州积分分离PID算法求觯位置虾的控制量。位置虾控制器的控\n北京工业大学工学硕士学位论文图2—4机械臂关节速度、位置控制系统组成框图Figure2-4Speed,positioncontrolsystemofthesixdegreesoffreedommanipulator制量作为速度环的给定,与速度反馈值比较,再利用积分分离PID算法求解速度环的控制量,从而产生不同占空比的PWM,经过电机驱动器来控制电机运行。2.4.2关节控制器硬件电路关节控制器是以DSP芯片为核心,芯片本身及其外围电路的性能直接决定了系统的性能。故芯片的选择及其外围电路的设计,也就显得十分的重要。下面将通过单个模块电路的方式分别介绍控制器硬件电路。(1)电源电路通过开关电源,接入B0505LS模块产生稳定的的5V电压作为TPS7333芯片的供电电压,管角8做为2407的上电复位信号。管角5,6通过滤波电容输出作为2407的供电电压(3.3V)。如图2.5。(2)时钟电路TMS320LF2407的时钟源可以来自外部有源晶振也可以用晶体,利用内部振荡器。一般经常使用外部时钟输入,因为使用外部时钟时,时钟的精度高、信号比较稳定。考虑系统对时钟质量要求很高,所以4管角的有源晶振。TMS320LF2407的时钟源还采用了锁相环技术,可以对外部时钟源进行倍频,得24\n第2章六自由度机械臂硬件系统设计图2.5电源电路Figure2-5Powercircuit到非常稳定的内部时钟。外部时钟电路和锁相环电路如图2-6所示。图2-6时钟电路Figure2-6Clockrcircuit(3)JTAG接口电路仿真接口电路如图2.7所示。目标层次的TI调试标准使用5个标准的IEEEll49.I(JTAG)信号(TRST、TCK、TMS、TDI、TDO)和两个TI扩展口(EMU0、EMUl)。JTAG目标器件通过专用的仿真端口支持仿真,此端口由仿真器直接访问并提供仿真功能。JTAG接口电路为仿真器与微机的接口电路,便于系统进行在线调试。E凑鬣篱嘲誊\n北京工业大学工学硕士学位论文器(B0,B1,B2块);当CNF=I时,288字被配置为数据存储器(B0,B2块),256字被配置为程序存储器(Bl块)。由于LF2407采用四级流水线工作,在流水线操作过程中,CPU在第三个时钟周期中读数据,并在第四个时钟周期中写数据。因此在一个时钟周期内可以访问DARAM两次,完成数据的读和写,从而提高了CPU的速度。TMS320LF2407中集成了32K字的Flash和1.5K字的RAM,除了片内这些存储器之外,TMS320LF2407还提供通过外部存储器接口,该接口有16根外部地址线、数据线以及选择数据、程序和I/0空间的相关控制线。TMS320LF2407最多可寻址64K的外部程序空间和64K的外部数据空间。由于控制算法的需要,本系统需扩充外部RAM。TMS320LF2407片内的Flash可用作程序存储器,但在开发阶段使用Flash作为程序存储器极为不便,因为每一次程序的修改都需要对Flash进行清除、擦除和编程操作,而且进行CCS调试时只能设置硬件断点,故从调试的角度考虑,应扩充程序RAM。这里用的是CY7C1021V33芯片,它是64K*16bit的SRAM,存取时间为15ns,故不需要插入等待周期,可保证系统全速运行。图2.8为外接SRAM扩展电路图。冀】|l蘑lll篚区谶崖ll篚lll《隧隧誊j:::;;;:三:::;;;二茸誊。B;图2.8SRAM扩展电路图Figure2-8ExemalSRAMcircuit(5)编码器处理电路增量式编码器信号处理电路如图2-9所示。图2-9增量式编码器信号处理电路Figure2-9Processingcircuitofincrementalencodersignal\n第2章六自由度机械臂硬件系统设计ENCODE是编码器的信号输入接口,采用26LS32把编码器输出的3个通道的RS.422差分信号转换成1vrL电平A,B,Z三个脉冲信号。为了测量电机的转速和位置,A。B经过6N137光耦隔离接DSP内部的正交编码器电路单元(QEP)的CAPl/QEP和CAP2/QEP2引脚。QEP选定一个计数器,设置为双向加/减计数模式。QEP电路使能时,A,B信号的两个边沿(上升沿和下降沿)都被QEP计数,因此送到计数器中的信号CLK的频率是A,B信号脉冲频率的4倍;QEP的方向检测逻辑能够测定A,B哪个脉冲序列领先,然后产生一个方向信号DIR,控制计数器的计数方向。图2.10是DSP正交编码器电路单元译码原理。Z信号可以经过6N137光耦隔离接到DSP外部中断输入引脚XINTl上,通过中断可捕捉到Z脉冲。伽●⋯一厂]厂!¨一⋯⋯厂]⋯一广一厂QEItCLK啾广——————一图2.10DSP正交编码器电路单元译码原理图Figure2-10ScliematicdiagramofDSPQEPunitcoding测量电机的转速有两种方法【56】:1.M法,即把前述正交编码器电路单元和计数器测得的电机位置信号作差分,这种方法在电机转速较大时测量比较准确。2.T法,即把A和B通道的信号接到CAP3/IOPC6以及CAP4/IOPC7引脚上,利用DSP内部的捕捉单元和定时器,测量A或B信号脉冲的宽度,计算出脉冲的频率,进而求出电机的转速。这种方法在电机转速较小时测量值比较准确。(6)霍尔接近开关电路为了对电机转速和关节绝对位置进行测量,又考虑到机械臂关节的尺寸,尽量采用一个编码器来减小它的大小。而光电绝对式编码器只能精确定位,无法做到速度控制。而光电增量式编码器只能对转速进行测量,无法给出关节的零位。在这里为了通过一个光电增量式编码器就能够得到机械臂关节的绝对位置,首先必须记录关节的零位。我们可以采用霍尔接近开关和光电增量编码器的Z脉冲信号,来确定关节的绝对位置。这需要机械臂在正常工作之前通过零度标定算法确定各关节的绝对零位。接近开关的种类很多,例如机械式接近开关、霍尔接近丌关,以及光电式接近开关等。机械式接近开关由于磨损会影响位置测量精度。光\n北京工业大学工学硕士学位论文电式接近开关精度最高,但是考虑要安装在关节内部光线可能会被阻挡。本课题选用A31443E常开型霍尔接近开关。其接法如图2.11,提供电压为5V,由于输出采用了集电极开路门,必须通过10K的上拉电阻接到5V电源上。当磁源的某一极与霍尔传感器的距离达到一定范围以内时,输出低电平,否则输出高电平,不需要外接放大电路。一套关节控制器将采用3支霍尔接近开关。HALLl、HALL2分别固定在关节控制器运动的极限位置,其信号通过IOPE5、IOPE6不断查询。HALL3用于绝对零位检测,采用中断的方式。2.5CAN总线图2.II霍尔接近开关的接法Figure2-11ConnectionofHallproximityswitchesPCA82C250是驱动CAN控制器和物理总线间的接口,提供对总线的差动发送和接收功能,硬件原理如图2.12所示。由于PCA82C250是提供5V电源供电,但LF2407A是用3.3V供电,因此要做电平转换。这里采用最简单的电阻分压来实现,其中R7,R8分别取1k和2k,R6取10k,对于二极管D2,这里采用具有快速恢复能力的肖特基二极管1N5819,总线两端必须接两个终端匹配电阻R5(120欧),忽略掉它们,会使数据通信的抗干扰性及可靠性大大降低。图2.12CAN总线接口电路Figure2—12CANbusinterfacecircuit28PLLFPLLF2B10f10PCI.罄一一一一一一~一一\n第2章六自由度机械臂硬件系统设计曼曼曼曼曼!!皇!!!曼!!!!曼!!!!!!曼!!苎曼!I.III!!!曼!!!!!曼曼曼曼曼!曼!曼!曼皇曼曼曼曼曼!曼曼曼曼鼍!曼曼!!!曼!曼曼曼!蔓!曼曼曼12.6本章小结本章就机械臂自由度和构型这两个因素对机械臂设计进行了分析。最后采用六自由度链式关节的结构,根据柔性两轮直立式机器人的尺寸设计了一套机械臂的结构方案,并通过各连杆的质量,采用静力学估算出各个关节的力矩,从而对机械臂关节所需的电机进行了选型。分析和对比了几种控制方案,最后给出了一种基于CAN总线分布式的控制方案。将工控机和关节控制器挂在CAN总线上。工控机主要功能是对关节控制器进行监控,同时也完成机械臂运动学、轨迹规划方面算法的实现。关节控制器主要完成位置、速度、力矩伺服控制算法的实现。工控机通过研华公司的PCI一1680通讯CAN卡挂在CAN总线上,DSP2407芯片内部有CAN模块,系统经过调试全部可以正常运行。最后对关节控制器的硬件电路进行了设计,各个电路进行了分析和测试。并且制作出了PCB电路。29\n第3章六自由度机械臂的建模3.1概述第3章六自由度机械臂建模本章将分析六自由度机械臂的构型,建立机械臂的参考坐标系以及各关节的坐标系,利用标准D-H参数法推导出正运动学模型,采用机器人工具箱进行仿真。接着采用代数法推导出逆运动学模型,并进行仿真验证。这些研究是机械臂末端轨迹规划以及反馈控制的重要基石。3.2机械臂位姿描述3.2.1位置描述建立了一个坐标系,我们就能够用某个3x1位置矢量来确定该空间内任一点的位置,对于直角坐标系{A)‘421,如图3.1所示,空间任一点P的位置可用列矢量爿p:lZI表示,其中,见,以,见是点p在坐标系{A)中的三个坐标分p:I量。我们称_P为位置矢量。图3.1位置表示Figure3·1positiondescription3.2.2方位描述为了研究机器人的运动与操作,往往不仅要表示空间某个点的位置,而且要表示物体的方位。物体的方位可由某个固接于此物体的坐标系描述。为了规定空问某刚体B的方位,设置一直角坐标系{B)与此刚体吲接。Jfj坐标系{B)的三个单位主矢量嘞,YB,z丑相对于参考坐标系{A)的方向余弦组成的3x3\n/\f咒112r131管R=laxB)AyB,AZB]2I、";1:吩r2:2笔;j‘3-1)来表示刚体B相对于坐标系{A>的方位。蓄R称为旋转矩阵。式(3.1)中,上标A代表参考坐标系{A),下标B代表被描述的坐标系(B}。冒R共有9个元素,但只有三个是独立的。--+Y09毛-i-彳‰,一Y肛一Z曰都是单位矢量,且两两相互垂直,易知,旋转矩阵署R是正交的,并且满足条件岔R~=参R7’;I鲁RI=1。对应于轴X,y,Z作转角为0的旋转变换,其旋转矩阵分别为Rcx,口,=[童姜0;_:≥]c3.2,R(y,0)=1010(3-3)L—J00coj肥瑚=盱劲B4,3.2.3位姿描述要完全描述刚体B在空间中的位姿,通常将物体B与某一坐标系{B)相固接。{B)的坐标原点一般选在物体B的特征点上,如质心等。相对参考坐标系{A),坐标系{B)的原点位1-且"坐7,,钶-i轴的方位,分别由位置矢量一P占和旋转矩阵署尺描述。这样,刚体B的位姿可由坐标系{B)来描述:{B)={台尺一P口)(3.5)3.2.4平移坐标变换空间中任意点P在不同坐标系中的描述是不同的,为了阐明从一个坐标系到另一个坐标系的描述关系,需要讨论坐标变换的关系。设坐标系{B>与{A)具有相同的方位,但两坐标系的原点不重合。用位置矢量一P舢描述{B}相对于{A>的位置,则物体P相对于坐标系{A)的位置矢量一P可由矢量相加得出,见式(3.6)。32\n第3章六自由度机械臂的建模彳P=曰p+彳P肋(3—6)3.2.5旋转坐标变换设坐标系{B)与{A)有共同的坐标原点,但两者的方位不同。用旋转矩阵吾R描述{B)相对于{A)的方位。同一点P在两个坐标系{A>和{B}中的描述一P和占P具有如下变换关系,见式(3-7)。彳P=鲁R口P(3.7)3.2.6复合变换对于一般情形:坐标系{B)与{A)的原点既不重合,方位也不相同。结合前面平移和旋转的关系,可得出任一点P在两个坐标系{A)和{B)中的描述彳P和曰P具有如下变换关系,见式(3—8)。爿P=署R占p+一PBo(3.8)3.2.7齐次坐标变换复合变换式(2.2)对于点BP而言是非齐次的,齐次变换形式,见式(3-9)。阱泞』训卅但是可以将其表示成等价的(3-9)式(3.9)中,4xl的列矢量表示三维空间的点,称为点的齐次坐标,将它表述为:一P=暑丁口P,其中齐次坐标一p和占p是4xl的列矢量,齐次变换矩阵锣是4x4的方阵。实质上,该变换式与(3.8)式是等价的。1.平移齐次坐标变换:空间某点由矢量口f+够+如描述,其中,i,j,k为轴x,y,z上的单位矢量,此点可用平移齐次变换表示为:Trans(a,b,c)20口10bOlcO0l2.旋转齐次坐标变换:对应于轴x,y,Z作转角为0的旋转变换,分别可得:(3—10)\n北京工业大学工学硕士学位论文Rot(x,0)=Rot(y,p)2Rot(z,p)=1O0cO.S0S0c0ca0S0Ol0.sO0C007目.S00秒c00(3—11)(3—12)(3—13)Rot表示旋转变换,sO表示sin0,c0表示COS0。3.复合齐次变换:空间某点既有平移变换又有旋转变换时,按照变换的先后顺序可得到式(3.14),这个变换矩阵表示对原参考坐标系进行旋转和平移操作。T=Trans(a1,bl,C1)⋯Trans(a.,12n,a.)Rot(y,0)⋯Rot(x,a)。(3.14)3.3六自由度机械臂建模及正运动学分析3.3.1建立数学模型对于机械臂,可以将之看作是一系列由关节连接起来的连杆构成的,为机械手的每一连杆建立一个坐标系,并用齐次变换来描述这些坐标系间的相对位置和姿态。通常把描述一个连杆与下一个连杆间相对关系的齐次变换叫做A矩阵,一个A矩阵就是一个描述连杆坐标系间相对平移和旋转的齐次变换。如果以04表示第一个连杆相对于基坐标系的位置和姿态,14表示第二个连杆相对于第一个连杆的位置和姿态,以此类推,卜14表示第i个连杆相对于第i.1个连杆的位置和姿态。那么,第i个连杆在基坐标系中的位置和姿态变换矩阵04j可由下列矩阵乘积给出:oAi=oAl1A2⋯·卜14;若知道目标物体在第i个连杆坐标系中的位置‘P,则物体在基坐标系中的位置oP可由式(3.15)表示。.oP=041As⋯.H4‘P=04‘P(3.15)六自由度链式(6R)机器臂是具有六个关节的空间机构,为描述末端执行器在空间的位置和姿态,可以在每个关节上建立一个坐标系,利用坐标系之间的关系来描述末端执行器的位置。一般采用Denavit—HartenBerg法(D—H法)建立坐标系并推导机械臂的运动方程。D.H法(四参数法)是1995年由Denavit和O00●0O●0O01\n第3章六自由度机械臂的建模HartenBerg提出的一种建立相对位姿的矩阵方法。利用齐次变换描述各个连杆相对于固定参考坐标系的空间几何关系,用一个4x4的齐次变换矩阵描述相邻两连杆的空间关系,从而推导出末端执行器坐标系相对于基坐标系的等价齐次坐标变换矩阵,建立操作臂的运动方程。在直角坐标系中,可以用齐次矩阵表示饶X、Y、Z轴的平移和沿X、Y、Z轴的转动。如式(3.10)、(3.11)、(3.12)和(3.13)。当使用标准的上关节Denavit.Hartenberg法时,如图3.2。图3-2标准D-HFigure3-2StandardD—H定义连杆参数如下:口。表示沿%轴方向z川轴与乙轴之间的距离;口。表示绕矗轴线由z川轴到乙轴所旋转的角度;以表示沿乙轴方向Xn一。轴到矗轴的距离;包表示绕乙轴由%一。轴到毛轴所旋转的角度。相邻两坐标系之间的关系”1乙为式(3-16)。’=4l=Rot(z,包)×乃邪(o,O,c1.)×rrans(a.,O,O)×Rot(x,%)msO.·——西nO.cosa.sinO.smaoa.coso.sin0.cosO.cosa.一00s幺s证%a.sinO.0sin%OCOS%0吃O(3—16)3.3.2正运动学分析正运动学的求解过程是根据已知关节变量q,02,03,幺,幺,皖,求末端抓持器相对于参考坐标系的位姿的过程。要对机械臂进行分析,首先要对机械臂建立坐标系,其坐标系如图3.3,为了更能直观地表示出机械臂的构型,采用标准的上关节D.H表示法的各个关节变量并不等于零,各个关节变量分别是8=0,02=0,03=0,04=0,缺=90。,包=0。包为旋转关节n的关节变量。\n北京工业大学工学硕士学位论文图3-3六自由度机械臂坐标系图Figure3-3Coordinateof6Rmanipulator将参考坐标系设在6R机械臂的基座上,于是可以从基座开始变换到第一关节,然后到第二关节⋯⋯,最后到末端抓持器。若把每个变换定义为4,那么6R机器臂的基座和手之间的总变换为:R乙=尺roo五1兀2死3t4正5%=AoAlA2A3A4A5AHq(白GG一·‰莲)C:心GG一≤bG)q((;嘏)一SG蝎S莲qG点([二GG一是。磊)墨(.岛GG一-‰G)-5;((≥。磊)蚂S莲-查看更多