版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学本科毕业设计(论文)ADAMS环境下工业机器人运动控制和联合仿真MotionControlAndCo-simulationOfIndustrialRobotiNADAMSEnvironment年级:2005级学号:20051035姓名:*****专业:机械设计制造及其自动化指导老师:@@@@@2009年6月西南交通大学本科毕业设计(论文)第PAGEI页院系机械工程学院专业机械设计制造及其自动化年级2005姓名题目ADAMS环境下工业机器人运动控制和联合仿真指导教师评语指导教师(签章)评阅人评语评阅人(签章)成绩答辩委员会主任(签章)年月西南交通大学本科毕业设计(论文)第PAGEII页毕业设计(论文)任务书班级机械05-7班学生姓名学号20051035发题日期:2009年3月20日完成日期:2009年月日题目ADAMS环境下工业机器人运动控制和联合仿真本论文的目的、意义在制造系统中,工业机器人扮演着重要的角色,从加工、制造、装配,配送等过程环节,工业机器人因其自身的灵活性应用越来越广泛,它已经成为当代工业自动化三大领域之一,它的水平高低和应用程度反应出了一个国家工业水平的高低。本项目通过对工业机器人运动学、系统模型建立与仿真,研究工业机器人在使用中的运动学分析以及基本的控制方法,并通过ADAMS实现对工业机器人实际运动的研究和仿真,将控制响应过程通过OpenGL环境实现视景仿真。2、学生应完成的任务1)源程序及相应的文档,实现如下功能:工业机器人运动学模型建立与仿真,动力学模型建立与仿真,通过Matlab控制模型输出的数据实现视景仿真等。2)翻译课题相关外文资料。3)毕业论文说明书。3、论文各部分内容及时间分配:(共12周)第一部分实习调研、收集资料(1-2周)第二部分方案选择、总体设计、软件熟悉(3-4周)第三部分系统建模、编程(5-8周)第四部分联合仿真、测试及文档的编写(9周)第五部分编写毕业论文说明书(10-11周)评阅及答辩(12周)指导教师: 年月日审批人: 年月日摘要虚拟样机技术就是在建造第一台物理样机之前,设计师利用计算机技术建立机械系统的数字化模型,进行仿真分析并以图形方式显示该系统在真实工程条件下的各种特性,从而修改并得到最优设计方案的技术。ADAMS软件是目前国际上应用最为广泛的虚拟样机分析软件,用户可以运用该软件非常方便地对虚拟机械系统进行静力学、运动学和动力学分析。但针对复杂的机器人机械系统,要想准确的控制其运动,仅依靠ADAMS软件自身也很难做到;MATLAB软是Mathworks公司开发的一种集计算、图形可视化和编辑功能于一体的优秀数学应用软件,具有强大的计算能力,能够建立复杂的控制模型准确控制复杂机器人系统的运动;OpenGL(开放式图形库全称)是SGI公司开发的底层三维图形API,目前在图形开发领域已成为工业标准。使用OpenGL可以创建视觉质量接近射线跟踪程序的精致漂亮的3D图形。VisualC++6.0已经成为集编辑、编译。运行、调试为一体的功能强大的集成编程环境,在Windows编程中占有重要地位。OpenGL和VisualC++6.0有紧密接口,利用二者可以开发出优秀的视镜仿真系统。ADAMS、MATLAB和VisualC++6.0由于定位不同,都有各自的优势和缺点,但是三者之间又可以通过接口联合控制或者混合编程。本文分别利用ADAMS对三自由度机器人的运动学和轨迹优化方案进行研究,利用VisualC++6.0、OpenGL和从MATLAB里导出的控制模型的数据对三自由度机器人进行了视景仿真的研究。论文首先通过建立坐标系和矩阵变换,对刚体的空间表示进行了阐述,然后采用通用的D-H法则,将机器人关节角度参数化,推导出其正运动学方程和逆运动关节角,并计算出机器人手部的初始坐标。其次采用ADAMS软件,详细介绍了机器人三维建模过程,包括整体框架构建,单个构件绘图和布尔运算等,并对机器人关节点进行了参数化设计。最后从机器人轨迹规划的基本原理和方法出发,比较分析了关节空间轨迹规划和直角坐标空间轨迹规划的差别,并采用三次多项式和五次多项式对机器人进行了轨迹规划,利用ADAMS软件中内嵌的Step函数对运动轨迹进行了仿真分析。然后在WindowsXPProfessional的系统环境下,以VisuallC++6.0为开发工具,建立了三自由度机械手视景仿真系统模型,实现了仿真系统对MATLAB控制模型导出数据的读取和利用。关键词:运动学轨迹规划ADAMS虚拟样机技术视景仿真纹理映射AbstractBeforemanufacturingthefirstphysicalprototype,thedesignersusedcomputertechnologytobuildamechanicalsystemofdigitalmodelforanalysissimulation,whichshowedthatthesystemworksinrealconditionsofthevariouscharacteristics,soastoberevisedandOptimaldesign.ThisprocessiscalledVirtualprototypingtechnology.NowADAMSsoftwareiswidelyusedinvirtualprototypinganalysisintheworld,itisveryconvenientfortheusertousethissoftwareotdothestatics,kinematicsanddynamicsanalysisforthevirtualmachinesystem.Buttothecomplicatedrobotmechanicalsystem,itisalsoveryhardtodotheaccuratecontrolofitsmovementonlyrelyonADAMSsoftwareitself;MATLABisoneoftheoutstandingmathematicsapplicationsoftwareintegratingcalculation,graphicalvisualizationandeditingfunctionsdevelopedbytheMathworkscompany,andithasstrongabilityincomplexcalculation,beingabletocreatethecontrolmodeltodoaccuratecontroloftherobotsystem'scomplicatedmovement.OpenGL(thefullnameofOpengraphicslibraries)isa3DgraphicsApplicationProgrammingInterfaceinthebottom,nowhavingbeentheindustrystandardintheareaofgraphicsdeveloping.Youcancreatedelicateandbeautiful3DgraphicsusingOpenGL,whosevisualqualityisclosetoraytracingprogram.VisualC++6.0hasbecomepowerfulintegratedprogrammingenvironmentwithediting,compiling.Operatinganddebugging,andoccupiesanimportantpositionintheWindowsprogramming.VisualC++6.0andOpenGLhascloseinterface,usingthemwecandevelopgoodendoscopicsimulationsystem.Becauseofthedifferentdue,ADAMS,VisualC++6.0andMATLABhavetheirownrespectiveadvantagesanddisadvantages,butwecanalsodothejointcontrolormixingprogrammingthroughtheinterfacebetweenthethree.Inthispaper,theauthordoresearchtokinematicsandtrackoptimizationschemeof3-dofrobotbasedonADAMS,alsodotheVisualsimulationresearchof3-dofrobotusingthedataofthecontrolmodelderivedfromtheMATLABbasedonVisualC++6.0andOpenGL.Firstofall,throughtheestablishmentofcoordinatesandmatrixtransformation,therigidbodyofthespacethatwaselaborated,andthenusetheD-Hrule,Robotparametersofthejointweregained,equationsofmotionweregiven,andthejointsanglewereknown,initialcoordinatesofRobothandcanbecalculated.FollowedbyADAMSsoftware,weprocesseddetailsoftherobotthree-dimensionalmodeling,includingtheoverallframeworkforbuilding,mappedasinglecomponentandBooleanoperation,designedparametersfortherobotandthekeypoints.Finally,weintroducedthebasicprinciplesandmethodsofrobottrajectoryplanning,andcompareddifferencesbetweenthejointspacetrajectoryplanningandrectangularcoordinatesspacetrajectoryplanning.thecubicpolynomialandfivepolynomialoftherobottrajectoryplanningwerecarriedout,theStepfunctionwereusedonatrajectorysimulationanalysisofADAMSsoftware.TheninWindowsXPsystemenvironment,usingVisualC++6.0asdevelopmenttool,theauthorestablisha3-dofmanipulatorvisualsimulationsystem,realizingtheaccessingandusingtothedataofcontrolmodelderivedfromMATLAB.Keywords:kinematicstrajectoryplanningADAMSvirtualprototypingtechnologyVisualsimulation目录第一章绪论 11.1工业机器人的发展现状 11.2虚拟样机技术简介 11.2.1虚拟样机的定义和特点 21.2.2研究现状和发展趋势 21.4本文要研究的主要内容 4第二章机器人运动学 52.1空间点和坐标系的表示 52.1.1空间点的向量表示 52.1.2坐标系在固定参考坐标系中的表示 62.2坐标系的变换 62.2.1齐次变换 62.2.2坐标系相对于旋转坐标系的变换 102.2.3变换矩阵的逆 102.3机器人的正逆运动学 112.3.1正运动学的D-H表示法 122.3.2逆运动学方程的求解 152.4微分运动 16第三章基于ADAMS的机器人的虚拟样机分析 183.1ADAMS概述 183.2ADAMS中机器人模型的建立 183.2.1设置建模环境 193.2.2机器人实体建模 193.2.3机器人模型的设置 203.3轨迹规划仿真分析 213.3.1轨迹规划方法的理论分析 213.3.2轨迹规划仿真分析 27第四章基于模型的视景仿真系统的设计与实现 324.1OpenGL概述 334.1.1OpenGL工作方式 334.1.2OpenGL绘制过程 344.2机器人三维可视化框架建立 354.2.1利用MFC建立单文档应用程序框架 354.2.2设置OpenGL绘图环境 374.3机械手三维模型的建立 404.3.1导入机械手模型 404.3.2在OpenGL中建立机械手的模型 414.4建立仿真场景 445.4.1纹理贴图的实现 454.4.2设置光照 484.5基于模型的视景仿真的实现 514.5.1数据的读取 524.5.2利用读取的数据控制机械手的运动 554.5.3实现观察视角的交互式键盘控制 60结论 63致谢 65附录 66参考文献 73实习报告 74第一章绪论1.1工业机器人的发展现状1961年,美国的ConsolidedControlCorp和AMF公司联合制造了第一台实用的示教再现型工业机器人,迄今为止,世界上对工业机器人的研究已经经历了四十余年的历程,日本、美国、法国、德国的机器人产业已日趋成熟和完善。工业机器人由操作机(机械本体)、控制器、伺服驱动系统和检测传感装置构成,是一种仿人操作、自动控制、可重复编程、能在三维空间完成各种作业的机电一体化自动化生产设备。特别适合于多品种、变批量的柔性生产。【1】它对稳定、提高产品质量,提高生产效率改善劳动条件和产品的快速更新换代起着十分重要的作用。采用工业机器人,不仅可提高产品的质量与产量,而且对保障人身安全,改善劳动环境,减轻劳动强度,提高劳动生产率,节约原材料消耗以及降低生产成本,有着十分重要的意义。和计算机、网络技术一样,工业机器人的广泛应用正在日益改变着人类的生产和生活方式。在制造业中,尤其是在汽车产业中,工业机器人得到了广泛的应用。如在毛坯制造(冲压、压铸、锻造等)、机械加工、焊接、热处理、表面涂覆、上下料、装配、检测及仓库堆垛等作业中,机器人都已逐步取代了人工作业。如,2004年德国汽车制造业中每1万名工人中拥有工业机器人的数量为1140台。【2】在国外,工业机器人技术日趋成熟,已经成为一种标准设备被工业界广泛应用。从而,相继形成了一批具有影响力的、著名的工业机器人公司,它们包括:瑞典的ABBRobotics,日本的FANUC、Yaskawa,德国的KUKARoboter,美国的AdeptTechnology、AmericanRobot、意大利COMAU,英国的AutoTechRobotics公司,这些公司已经成为其所在地区的支柱性产业。在我国,工业机器人的真正使用到现在已经接近20多年了,已经基本实现了试验、引进到自主开发的转变,促进了我国制造业、勘探业等行业的发展。2004年全年国产工业机器人数量(主要指在国内生产和组装的)突破1400台,产值突破8亿元人民币。进口机器人数量超过9000台,进口额达到2.6亿美元。国内各个工业机器人厂家都呈现出产销两旺的局面。截至2004年底,我国工业机器人市场已经突破30亿元人民币。【3】现阶段,我国工业机器人正逐步发展成为一种有影响力的产业。1.2虚拟样机技术简介1.2.1虚拟样机的定义和特点虚拟样机技术就是在建造第一台物理样机之前,设计师利用计算机技术建立机械系统的数字化模型,进行仿真分析并以图形方式显示该系统在真实工程条件下的各种特性,从而修改并得到最优设计方案的技术。该技术以机械系统运动学、动力学和控制理论为核心,加上成熟的三维计算机图形技术和基于图形的用户界面技术,将分散的零部件设计和分析技术集成在一起,提供一个全新研发机械产品的设计方法。它是一种计算机模型,它能够反映实际产品的特性,包括外观、空间关系以及运动学和动力学的特性。借助于这项技术,设计师可以在计算机上建立机械系统的模型,伴之以三维可视化处理,模拟在真实环境下系统的运动和动力特性,并根据仿真结果精化和优化系统。虚拟样机技术利用虚拟环境在可视化方面的优势以及可交互式地探索虚拟物体的功能,对产品进行几何、功能、制造等许多方面交互的建模与分析。它在CAD模型的基础上,把虚拟技术与仿真方法相结合,为产品的研发提供了一个全新的设计方法。它具有以下特点:A全新的研发模式虚拟样机技术实现了系统性的产品优化,使产品在概念设计阶段就可以迅速地分析、比较多种设计方案,确定影响性能的敏感参数,并通过可视化技术设计产品、预测产品在真实工况下的特征,从而获得最优工作性能。B研发成本低、周期短、产品质量高通过计算机技术建立产品的数字化模型,可以完成无数次物理样机无法进行的虚拟试验,不但减少了物理样机的数量,降低了成本,而且缩短了研发周期、提高了产品质量。C实现了动态联盟广泛地采用动态联盟,通过Internet共享和交流,临时缔结成的一种虚拟企业,适应了快速变化的全球市场,克服单个企业资源的局限性。1.2.2研究现状和发展趋势虚拟样机技术在一些较发达国家,如美国、德国、日本等已得到广泛的应用,应用领域从汽车制造业、工程机械、航空航天业、到医学以及工程咨询等很多方面。美国航空航天局(NASA)的喷气推进实验室(JPL)研制的火星探测器“探路号”,就是JPL工程师利用虚拟样机技术仿真研究研发的。美国波音飞机公司的波音777飞机是世界上首架以无图方式研发及制造的飞机,其设计、装配、性能评价及分析就是采用了虚拟样机技术,不但缩短了研发周期、降低了研发成本,而且确保了最终产品一次接装成功。我国从“九五”期间开始跟踪和研究虚拟样机的相关技术,主要研究集中在虚拟样机的概念、系统结构以及相关的支撑技术,应用多集中在一些高精尖领域。近年来,才尝试着将虚拟样机技术用于一般机械的开发研制。天津大学与河北工业大学采用虚拟样机技术联合开发了冲击式压实机,对其进行了仿真计算,得到各部件的运动规律曲线,验证了压实机各部件参数值的合理性。【4】虚拟样机概念正向广度和深度发展,今后的虚拟样机技术将更加强调部件、技术、知识的重用,强调便于虚拟样机柔性协同的运行管理的组织重构,强调跨领域技术的沟通支持,重点在以下几个方面进行研究:(1)基于虚拟样机的优化设计;(2)以虚拟样机为中心的并行设计设计;(3)分析和仿真工具的集成;(4)虚拟样机系统的容错性研究。1.3视景仿真技术简介1.3.1视景仿真的定义和特点视景仿真又称虚拟仿真虚拟现实仿真。它是21世纪最有前景的高科技技术之一,它是计算机技术,图形图象技术,光学技术,控制技术等多种高科技的结合,是延伸人类感觉器官的一门科学,通过对现实世界或者是人类想象的虚拟世界进行三维建模并实时驱动,通过头盔显示器或者三维投影技术显示出来。
视景仿真(VisualSimulation)是一种基于可计算信息的沉浸式交互环境,具体地说,就是采用以计算机技术为核心的现代高科技生成逼真的视、听、触觉一体化的特定范围的虚拟环境,用户借助必要的设备以自然的方式与虚拟环境中的对象进行交互作用、相互影响,从而产生“沉浸”于等同真实环境的感受和体验。其作为计算机技术中最为前沿的应用领域之一,它已经广泛应用于虚拟现实、模拟驾驶、场景再现、城市规划及其它应用领域。计算机仿真又称全数字仿真,是根据相似原理,利用计算机来逼真模仿研究系统中的研究对象,将研究对象进行数学描述,建模编程,并且在计算机中运行实现.作为计算机仿真的组成部分,视景仿真采用计算机图形图像技术,根据仿真的目的.构造仿真对象的三维模型并再现真实的环境,达到非常逼真的仿真效果.目前,视景仿真技术在我国已广泛应用于各种研究领域:军事演练、城市规划仿真、大型工程漫游、名胜古迹虚拟旅游、模拟训练以及交互式娱乐仿真等.视景仿真技术对作战装备的使用效果有很好的实时显示,给人以强烈的视觉上的冲击,对提高武器装备的性能、研制效率有着重要的作用1.3.2工业机器人视景仿真系统研究的意义由于机器人价格昂贵,以及机器人的作业空间需要较大而独立的试验场地等诸多原因,不可能达到每个需要学习机器人的人都能亲自操作机器人的要求。而可视化技术的出现,使得人们能够在三维图形世界中观察机器人,并通过计算机交互式对机器人进行示教仿真。基于VC++6.0的OpenGL上的工业机器人的视景仿真系统可以提供一个真实的实验平台,在不接触实际机器人及其工作环境的情况下,通过图形技术,提供一个和机器人进行交互的虚拟环境。此系统充分利用OpenGL的实时交互性,模拟工业机器人的示教/再现过程,可以在此系统上编辑工业机器人的程序并动态模拟工业机器人的运动过程,观察工业机器人的运动结果,检验所编写工业机器人程序的正确性。进行实物实验之前,可以先在仿真系统上进行模拟仿真,观察实验的运动过程以及运动结果,避免直接在现实中操作对工业机器人及周围物体可能造成的伤害。另外,对于刚接触工业机器人的操作员来说,此系统可以提供与现实工业机器人几乎相同的操作步骤,在操作员真正操作工业机器人之前,可以增加其操作的熟练程度,增加安全系数。1.4本文要研究的主要内容为了简化研究,本文采用一个3自由度关节机器人,分别通过ADAMS软件的建模和仿真,结合MATLAB的运算功能,进行了机器人运动学分析和空间坐标的轨迹规划,实现运动轨迹的最优化。又在WindowsXP环境下,利用VisualC++6.0和OpenGL完成了基于模型的视景仿真系统的设计与实现,具体工作如下:(1)进行运动学分析。按照通用的D-H法则,通过矩阵变换,得到了机器人的正运动学方程和初始坐标,推导出机器人逆运动学的关节角度。(2)在ADAMS/View中构造机器人部件,运用约束库中的移动和旋转副对部件进行链接,添加驱动力,实现机器人的运动,完成三维建模。(3)对机器人的运行轨迹进行多项式优化,利用ADAMS/View的仿真和后处理模块,绘制小臂末端处所取点的位置、速度、加速度、角速度和角加速度曲线,结合曲线进行三次多项式和五次多项式轨迹规划的仿真分析,并进行比较分析。(4)利用VisualC++6.0和OpenGL导入并建立机械手模型,建立仿真场景,实现基于模型数据的运动仿真,并实现视角的交互式键盘控制。第二章机器人运动学机器人运动学指研究机器人各个连杆相对运动的空间几何关系。在实际应用中,最为感兴趣的问题是机器人手部(即末端执行器)相对于参考坐标系的空间描述。机器人可以看成为一个开环的运动链,该链是由一组杆件相连而成,其一端固定在基座上,另一端固定在机器人手部上。两个杆件之间通过关节相连,关节由驱动器驱动,使杆件之间产生相对运动,从而使机器人手部达到期望的位置和姿态。在机器人运动学的研究过程中,又可以分为两类基本问题,即机器人运动学的正问题与逆问题。其中,机器人运动学的正问题指在已知杆件几何结构参数和关节变量值的前提下,求解机器人手部相对于参考坐标系的位置与姿态的问题;机器人运动学的逆问题指根据机器人手部在笛卡尔坐标系中的位置与姿态求解机器人各关节的关节变量值的问题。【5】2.1空间点和坐标系的表示2.1.1空间点的向量表示在直角坐标系中,可以用一个3×1的位置矢量来表示空间内任意一点的位置。对于直角坐标系中任意一点p的位置可以用3×1的位置矢量P表示为(2-1)如图2-1所示,,和分别表示点P在当前坐标系中的三个坐标轴方向的分量。这里P称为位置矢量,这种表示法也可变化为如下形式:图2-1空间点的位置表示(2-2)加入一个比例因子,使得,为的齐次坐标。【10】2.1.2坐标系在固定参考坐标系中的表示当一个坐标系位于另一个坐标系中时,如图2-2所示,通常用三个互相垂直的单位向量n、o、a表示,这三个变量分别代表法线(normal)、指向(orientation)与接近(approach)向量(如图2-2所示)。每一个单位向量都可以由它所在参考坐标系中的三个分量表示,这样,坐标系F就可以表示为由四个向量组成的矩阵:(2-3)图2-2一个坐标系在另一个坐标系中的表示式(2-3)中前三个列向量取w=0,表明该坐标系三个单位向量n、o、a的方向。而第四个列向量中w=1,表示该坐标系相对于参考坐标系的位置。2.2坐标系的变换坐标系的变换包括绕固定参考坐标系的变换和绕运动参考坐标系的变换。2.2.1齐次变换空间中一个坐标系相对于固定的参考坐标系的运动称为齐次变换。齐次变换可以是平移运动,可以是旋转运动,也可以是平移与旋转的复合运动。(1)纯平移齐次变换如果一个坐标系(它可能表示的是一个物体)在空间运动中相对于固定参考坐标系的姿态不发生变化,即该坐标系的三个单位向量方向不变,只改变它的坐标原点位置,则称这种运动为平移运动。如图2-3所示,坐标系{A}沿平移向量d平移到新的位置:(2-4)其中是平移向量d相对于固定参考系三个坐标轴方向的分量。【7】图2-3坐标系的平移平移后新的坐标系原点位置向量可以表示为原来坐标系的原点位置向量与位移向量d的矢量和。若采用矩阵形式,新坐标系的矩阵表示可以通过将坐标系左乘变换矩阵。由于平移过程中方向向量保持不变,所以平移变换矩阵T可以简单地表示为:(2-5)可以看到,矩阵的前三列没有旋转运动(等同于单位矩阵),而最后一列表示平移运动,这个方程可以用符号表示如下:(2-6)即(2-7)(2)绕轴纯旋转齐次变换为了简化旋转变换的推导,假设坐标系{B}位于坐标系{A}的原点。纯旋转就是{B}坐标系在空间中运动中相对于固定参考坐标系{A}的位置不发生变化,即只改变该坐标系三个单位向量的方向而不改变其原点位置。这样坐标系{B}可以由坐标系{A}经过旋转次变换后得到,由此可以推广到其他旋转情况。设向量x,y,z为坐标系{A}的三个单位向量,空间任意一点p的位置可以用向量p表示。向量p在坐标系{A}中的表示为:(2-8)向量p在坐标系{B}中的表示为:(2-9)则向量在坐标系{A}中的投影分别为(2-10)(2-11)(2-12)写成齐次矩阵形式则为:(2-13)(2-14)当坐标系{B}只相对于坐标系{A}单个轴转动时称为基本变换矩阵。如坐标系{B}只绕坐标系{A}的x轴转动角度θ时,基本转动变换矩阵记为Rot(x,θ),由式(2-14)可以计算得:(2-15)可以用同样的方法来分析坐标系{B}绕坐标系{A}的y轴和z轴旋转的情况,结果如下:(2-16)(2-17)(3)复合齐次变换复合齐次变换是有由固定坐标系或当前运动坐标系的一系列沿轴平移和绕轴旋转变换所组成的,此时该固定坐标系在参考系中不仅原点位置发生变化,同时它的三个坐标轴单位向量的方向也发生变化。此时的变换顺序很重要,变换顺序不同,结果不同。我们假设坐标系(n,o,a)相对于参考坐标系(x,y,z)依次进行了下列四个变换:绕z轴旋转θ度绕z轴平移d绕x轴平移a绕x轴旋转α度则复合齐次变换可由下式求解:(2-18)可见,齐次变换矩阵是由一组平移和旋转矩阵依次左乘获得,矩阵书写的顺序和进行变换的顺序正好相反,而且变换的顺序不能更改,否则结果会随之改变。【6】2.2.2坐标系相对于旋转坐标系的变换前面我们所讨论的所有变换都是相对于固定参考坐标系的。也就是说,所有平移和旋转都是相对于参考坐标系的轴来测量的。然而事实上,也有可能相对于运动坐标系或当前坐标系的轴的变换。例如,相对于运动坐标系(当前坐标系)的n轴而不是参考坐标系的x轴旋转θ度。为了计算当前坐标系中点的坐标相对于参考坐标系的变化,我们需要右乘变换矩阵而不是左乘。由于运动坐标系中的点或刚体的位置总是相对于运动坐标系测量的,所以必须右乘来表示该点或刚体的位置矩阵。2.2.3变换矩阵的逆在分析机器人时,如果已知坐标系{B}相对于坐标系{A}的值,为了得到{A}相对于{B}的描述,需要求这个矩阵的逆。一个直接求逆的方法就是将44齐次变换求逆。同样,我们还可以通过变换的性质求逆。下面是关于x轴简单旋转矩阵的求逆过程。旋转矩阵如下:(2-19)我们采用以下的步骤来计算旋转矩阵的逆:计算矩阵的行列式将矩阵转置将转置矩阵的每个元素用它的子行列式代替用转置后的矩阵除以行列式通过以上步骤我们得到:(2-20)关于x轴的旋转矩阵的逆与它的转置矩阵相同,即:(2-21)2.3机器人的正逆运动学对于一个已知构型的机器人,当它的连杆长度和关节角度都已知时,计算机器人手的位姿就称为正运动学。也就是说,如果已知机器人所有的关节变量,用正运动学方程就能计算任一瞬间机器人的位置和姿态。如果要将机器人的手放到一个期望的位姿,就必须知道机器人所有关节的长度和角度。由机器人手的位姿来求关节和连杆变量的过程就称为机器人的逆运动学。对于正运动学,必须推导出一组特定方程,我们只要将已知的关节和连杆变量代入方程就能计算出机器人的位姿,然后再根据这些方程求解出逆运动学方程。在空间中,要确定一个物体的几何状态需要确定其3个位移坐标(位置)和三个旋转坐标(姿态)。机器人手部的空间位置和姿态的表示可以借助一个固连在它上面的参考坐标系来表示,只要这个坐标系可以在基座的参考坐标系的空间中表示出来,那么该机器人手部相对于基座的位姿就是已知的了,可采用齐次坐标变换的方法完成这两个坐标系的坐标转化。图2-3机器人手的位置和姿态描述机器人手部的位姿如图2-3所示,可由固接在机器人手部的坐标系{B}来表示。该坐标系由其原点位置和三个单位矢量(n,o,a)唯一确定。坐标系{A}表示固连在机器人基座上的固定参考坐标系。向量P为坐标系{B}原点在坐标系{A}中的位置矢量。前面已经讨论过了一个坐标系在固定坐标系的表示故这里直接给出坐标系{B}在坐标系{A}中的位姿的表示:(2-22)2.3.1正运动学的D-H表示法机器人建模采用的是Denavit和Hartenberg提出来的标准方法,我们简称为D-H模型,该模型可用于任何复杂的机器人构型。假设机器人由一系列的关节和连杆构成,这些关节包括滑动的和旋转的,连杆长度任意,确保在空间能构成任意想要的机器人模型。为了表示这个模型,我们需要为每个关节指定一个参考坐标系,然后再考虑从一个关节到下一个关节的变换。假设一个机器人由任意多的连杆和关节以任意形式构成。如图2-4所示,任意三个顺序连接的关节和连杆,每个关节都可以平移或旋转。指定第一个关节为关节n,第二个第三个关节分别为n+1和n+2,连杆n位于关节n和n+1之间,连杆n+1位于关节n+1和关节n+2之间,这些关节和连杆前后还有其他连杆和关节。图2-4关节-连杆组合的通用D-H表示法D-H表示法建模的第一步是为每个关节指定本地参考坐标系,每个关节都必须指定x轴和轴,由于D-H法不用y轴,一般不指定y轴。具体步骤如下:所有关节用轴表示,如果关节是旋转,轴位于按右手规则旋转的方向,如果关节是滑动的,轴为沿直线运动的方向。关节n处轴的下标记作n-1。对于旋转关节,绕轴的旋转(角)是关节变量,对于滑动关节,沿轴的连杆长度d是关节变量。如图2-4所示,通常关节不一定平行或相交,因此z轴通常是斜线,但总有一条公垂线,正交于任意两条斜线。通常在公垂线方向上定义本地参考坐标系的x轴。例如表示和之间的公垂线,的方向即沿方向。如果两个关节的轴平行,那么它们之间就有无数条公垂线,我们可以挑选与前一公垂线共线的公垂线,从而简化模型。若两相邻的关节轴相交,则不存在公垂线,我们选择垂直于两轴平面的任意直线,同样简化了模型。在图2-4中,角表示绕轴的旋转,表示轴上两相邻公垂线之间的距离,表示每一条公垂线的长度,角表示相邻两轴的夹角。通常只有和是变量。从一个参考坐标系变换到另一个参考坐标系(例如从-到-),可以通过以下四步标准运动实现:绕轴旋转,使得和相互平行且共面。沿轴平移距离,使得和共线。沿轴平移距离,使得的原点重合,此时两个坐标系的原点在同一位置。将轴绕旋转,使得和对准。至此,坐标系和坐标系+1完全一致,变换结束。在+1和+2坐标系间按照同样的运动顺序也可以实现坐标系间的变换。我们可以从参考坐标系开始,转换到机器人底座,再到第一个关节,依次下去直至末端执行器。每个变换矩阵(记作A)都是由上述四个矩阵依次右乘的结果:(2-23)(2-24)从机器人基座到手(末端执行器)之间的总变换可以表示为:(2-25)为了简化计算,我们为关节和连杆参数制作一个表格,每个参数可以从机器人的原理图上读出,计算时再这些参数代入A矩阵。在本文中设计的简单三自由度机器人模型参数如图2-5所示。所有链接采用旋转关节,D-H参数如表2-1所示。图2-5简单三自由度机器人(单位:英寸)表2-1机器人D-H参数表(逆转为正,顺转为负)连杆ida190°000°20°650-90°3-30°02000°4-30°01500°将上述角度值代入式(2-25),运用MATLAB进行计算出机器人初始位置坐标:2.3.2逆运动学方程的求解为了让机器人处于适当的位姿,我们需要求解每个关节的角度值,这就是机器人的逆运动学。我们可以通过矩阵左乘来求解,如下:(2-26)为了求解角度,我们从开始,依次左乘上述矩阵,得到每个关节角度表达式:(2-27)因此,我们的三自由度机器人逆运动关节角度表达(2-28)2.4微分运动微分运动即机器人的微小运动,可以用它来推导不同部件之间的速度关系。图2-6(a)具有两自由度平面结构(b)速度图如图所示的两个自由度的简单机构,表示第一个连杆相对于参考坐标系的旋转角度,表示第二个连杆相对于第一个连杆的旋转角度。B点的速度可以计算如下:(2-29)将速度方程写成矩阵形式得到如下结果:(2-30)方程左边表示B点速度的x,y分量。B点的位置我们可以用下述方程表示:(2-31)对方程中的和微分,写成矩阵形式如下:(2-32)我们看到,(2-29)和(2-31)式在形式上很相像,只是前者表示的是速度关系,后者表示的是微分运动的关系。因此在机器人运动中,我们可以将关节的微分运动与速度联系起来。第三章基于ADAMS的机器人的虚拟样机分析3.1ADAMS概述美国MSC.Software公司在2003年3月收购了全球最大机构的仿真软件、咨询服务、系统集成供应商MDI/ADAMS。MSC.Software公司的ADAMS软件是虚拟样机领域内广泛使用的软件,可以使工程师、设计人员能够在物理样机构造前,建立机械系统的“模拟样机”,预估出机器的工作性能。ADAMS软件具有如下特点:(1)分析类型包括运动学、静力学分析以及线性和非线性动力学分析(2)具有二维和三维建模能力(3)具有50余种联结副、力和发生器组成的库和强大的函数库(4)具有组装、分析和动态显示模型的功能,包含刚体和柔体分析(5)具有与CAD、UG、Pro/E、Matlab、ANSYS等软件的专用接口(6)具有开放式结构,允许用户集成自己的子程序基于ADAMS的虚拟样机技术是在制造物理样机前,利用计算机技术建立该产品的数学模型,通过基于实体的可视化仿真分析,模拟该系统在实际工作环境中的运动学和动力学特性,并反复修改设计,从而得到最优方案。A创建模型创建机械系统模型时,首先要创建构成模型的各个零部件。零部件创建完后,需要使用运动关节约束库创建零部件之间的约束副,确定部件之间的连接情况以及仿真过程中构件之间的位置关系。最后,施加运动及各种载荷使样机按照设计要求进行仿真。B测试验证模型并细化模型创建过程中和完成后,都可以对模型进行运动仿真测试。通过对模型的性能测试,验证设计方案的正确性,然后,在模型中增加更复杂的因素,进一步细化模型。为便于不同方案的比较,通过设计变量不同取值的迭代仿真,求出设计变量的最优值。C优化设计采用设计和优化分析的研究手段,确定各个设计变量相对于解算结果的灵敏度并最终确定目标函数的最优值。【8】3.2ADAMS中机器人模型的建立本文机械手模型参考了PUMA机器人的结构,建模过程中依照模块化的思想先绘制各个部件,然后通过布尔运算和参数的调整,完成建模。【15】3.2.1设置建模环境打开ADAMS/View,选择创建新模型,将机械手模型命名为model_2jixieshou,其他采用系统默认值,进入建模界面。在建模界面中,首先要设定工作栅格,点击菜单Settings中的WorkingGird.如图3-1所示,根据建模需要,栅格范围设置为1000×1000(mm),大小为50×50(mm)。图3-1工作栅格设置设置完工作栅格就可以开始建模。3.2.2机器人实体建模ADAMS/View中集成了很多图形模板,包括点,线,面,体各方面。我们构建的是机器人的三维立体模型,其主要部件都是刚体。ADAMS中的刚体模板包括圆柱,圆锥,长方体,球体,拉伸体,平板等。我们选择圆柱体(圆盘)作为机器人的底座,圆柱体作为机器人的腰部,拉伸体作为机器人的手臂。在建模过程中,作者一直根据模块化的原则,在建立每一个部件的过程中都同时通过布尔运算等对模块进行优化,很好的美化了模型,并且是模型更加合理。这种工作方法为最后的总装提供和很大的便利和好处,节省了很多时间,提高了工作效率,值得在其他工作中借鉴。由于建模过程主要是ADAMS软件的操作过程,如果对ADAMS比较熟悉这个过程就很简单。本文不再对建模过程做详细介绍。建立好的机械手实体模型如下图3-2所示:图3-2机械手实体模型3.2.3机器人模型的设置机器人实体模型建好以后,应对其属性进行修改。我们设计用的机器人材料为铝材,初始位移为各个点的初始位置,初始速度设置为零。选定材料后,物体的密度就自动确定了,同时系统会自动计算构件的质量。然后对关节添加相应的约束和驱动力。如果我们要模拟某些特殊的工作过程,我们还应该在相应的位置处添加力和力矩。如我们模拟提升物体的操作过程,那么我们就在小臂(PART6)的端部PART6_MARKER_6处添加一个大小为10N方向向下的力。完成这个设置后机器人的模型如下图3-3所示:图3-3机器人最终模型至此,我们已经完成了三自由度机器人的建模过程,通过软件自检功能,可以判定模型正确与否,建模完成以后就可以进行运动学仿真分析。3.3轨迹规划仿真分析完成建模过程后,我们就可以运用软件的仿真功能对模型的运动学,静力学,动力学进行分析,本文对所建立的模型进行了运动学的理论分析,然后又结合轨迹规划进行了仿真分析。轨迹规划一般分为两种:一种是在关节空间进行规划,将关节变量表示成时间的函数,并规划它的一阶和二阶时间导数;另一种是在直角空间(笛卡尔空间)进行规划,将末端位姿、速度、加速度表示为时间的函数,而相应的关节位移、速度和加速度由末端信息导出。【12】本文分别给出了对模型进行关节空间和直角空间轨迹规划方法的理论分析,并在ADAMS/View的仿真和后处理模块中利用ADAMS内嵌的step函数对关节空间内三次多项式和五次多项式轨迹规划进行了分析比较。3.3.1轨迹规划方法的理论分析(1)关节空间内三次多项式轨迹规划假设机器人的初始位姿是已知的,通过逆运动学方程可以求得期望位姿对应的关节角。若考虑其中某一关节在运动开始时刻的角度,希望该关节在时刻运动到新的角度,使用多项式函数可以保证初始和末端的边界条件与已知条件相匹配,这些条件信息可以求解下面的三次多项式方程。(3-1)这里的初始条件和末端条件是:(3-2)对4-1式求导,得:(3-3)将4-2式分别代入4-1和4-3式得:(3-4)联立求解这四个方程就可以得到任意时刻的关节位置,控制器则据此来驱动关节。每个关节分别规划,同步运行。如果要求机器人依次通过多个点,则每一段末端求解出的速度和位置都可用作下一段的初始条件,每一段的轨迹都可采用上述的三次多项式来规划。针对本文设计的三自由度机器人,在其初始位置基础下,我们要求机器人手臂在6S后分别运动=180°,=60°,=30°。表4.1三次多项式规划关节角度00.00000.00000.0000113.33334.44442.2222246.666715.55567.7778390.000030.000015.00004133.333344.444422.22225166.666755.555627.77786180.000060.000030.0000将上述边界条件代入4-4式,解得第一个关节轨迹参数为=0,=0,=15,=-5/3轨迹方程为:;同样可得出第二个关节轨迹参数=0,=0,=5,=-5/9轨迹方程为:;第三个关节参数=0,=0,=5/2,=-5/18轨迹方程为:我们将运动过程分为5段,则每秒钟机器人运动的关节角度如表4-1所示。(2)关节空间内五次多项式轨迹规划在三次多项式规划中,我们采用的边界条件是起点和终点的位置与速度,如果同时指定起点和终点的加速度,这样边界条件就增加到6个,可以用同样的方法进行五次多项式的规划:(3-5)(3-6)(3-7)(3)关节空间内抛物线过渡的线性运动轨迹规划在关节空间轨迹规划的另一种方法就是让关节以恒定的速度在起点和终点之间运动,轨迹方程相当于一次多项式,速度为常数,加速度为零。这样意味着在起点和终点的加速度必须为无穷大,为避免这一情况,线性运动在起点和终点可以用抛物线来过渡。如图4-6,抛物线与直线过渡段在时间和处是对称的,由此得到:(3-8)图4-6抛物线过渡的线性段规划方法此时抛物线运动段的加速度为一常数,在A点和B点速度连续,将边界条件代入得:从而得出抛物线的方程为:(3-9)将零初速度,线性段常值速度以及零末端速度代入上式,得到:(3-10)从而可求出过渡时间:(3-11)显然,不能大于总时间的一半,否则整个过程中只有加减速而没有直线运动。终点的抛物线段与起点是对称的,只是加速度为负而已。我们依然用设计的三自由度机器人来进行规划。在其初始位置基础上,我们要求机器人手臂在6S后分别运动=180°,=60°,=30°中间匀速运动的速度分别为,,,那么过渡时间分别为:,,匀加速,匀速,匀减速运动方程分别如下:第一个关节角:第二个关节角:第三个关节角:则在0s到6s关节的角度分别如表4-2所示:表4-2抛物线过渡规划关节角度t0000140/3632501893903015413042215500/3542761806030(4)直角空间轨迹规划直角坐标空间轨迹与机器人相对于直角坐标系的运动有关,机器人末端执行器的位姿就是沿循直角坐标空间的轨迹。实际上所有的关节空间轨迹规划的方法都可用于直角坐标空间的轨迹规划。其差别在于:对于关节空间的轨迹规划,规划函数生成的值就是关节值,而直角坐标空间轨迹规划函数生成的值是机器人末端执行器的位姿,必须通过反复求解逆运动学方程来计算关节角。其过程可以综合如下:将时间增加一个增量;利用所选择的轨迹函数计算末端执行器的位姿;利用机器人逆运动学方程计算位姿对应的关节量;将关节信息传递给控制器;重复以上循环过程。3.3.2轨迹规划仿真分析(1)三次多项式轨迹规划仿真分析我们在ADAMS里进行三次多项式轨迹仿真时,用的是STEP函数。[13]STEP函数利用的是三次多项式逼近海赛阶跃函数。STEP阶跃函数有连续的一阶导,但在起点处的二阶导不连续,在速度图像上表现为速度连续但加速度不连续。我们设定机器人三个部分在6S时间内分别转动180°,60°,30°,为了分析其运动特性,我们分别选取机器人小臂PART6末端的PART6_MARKER_6点的运动参数进行分析。机器人小臂末端的PART6_MARKER_6在X,Y,Z三个方向上的位移曲线如下:图4-7PART6_MARKER_6在X,Y,Z三个方向上的位移图从上图中我们看到,在三次多项式规划条件下,X,Y,Z三个方向上的点都呈现出起伏变化,与匀速驱动条件下情况不同。PART6_MARKER_6点从(248.2051,70.0962,-40.0)运动到(-303.1089,475.0,40.0)处。PART6_MARKER_6速度和加速度曲线如图4-8所示,我们可以看到,速度由0mm/s增大到297.6708mm/s,然后又逐渐下降到0mm/s,而加速度最大值达到了253.6641mm/,并且在0.012s和5.988/s处存在突变。图4-8PART6_MARKER_6速度和加速度图像PART6_MARKER_6角速度和角加速度曲线如图4-9所示,PART6_MARKER_6角速度和角加速度变化与速度变化类似,最大角速度为50.3512d/s,角加速度最大为33.4069d/,在0.012s和5.988/s处存在突变。图4-9PART6_MARKER_6角速度和角加速度图像(2)五次多项式轨迹规划仿真分析我们运用ADAMS内嵌的step5函数对机器人关节进行五次多项式轨迹规划,step5函数是通过五次多项式逼近海塞阶跃函数。同样选取我们分别选取机器人小臂PART6末端PART6_MARKER_6点的运动参数进行分析。PART6_MARKER_6在X,Y,Z三个方向上的位移曲线如图4-16所示:图4-16PART6_MARKER_6在X,Y,Z三个方向上的位移图像从上图中我们可以看出,三次多项式和五次多项式轨迹规划相比,机器人手臂末端的始末位置不变,都是从(248.2051,70.0962,-40.0)运动到(-303.1089,475.0,40.0),中间点的位移也没太大变化。但是其速度和加速度等运动参数变化却比较大。五次多项式轨迹规划条件下PART6_MARKER_6的速度和加速度曲线如图4-17所示:图4-17PART6_MARKER_6的速度和加速度图像PART6_MARKER_6的角速度和角加速度曲线如图4-18所示:图4-18PART6_MARKER_6的角速度和角加速度图像从上面的图像中我们可以看到,PART6_MARKER_6的速度先增后减,加速度变化也一样。速度从开始时刻的0mm/s增大到中间时刻的370.1791mm/s再减小到终点时刻的0mm/s,加速度变化较三次多项式规划时平缓,不存在突变点。在0s时最小,为0mm/,中间时刻达到最大值396.2381mm/,然后逐渐下降到终点时的0mm/。角速度和角加速度的变化情况如下:最大角速度为62.8912d/s,最大角加速度为32.826d/,角加速度不存在明显突变。(3)轨迹规划比较分析从上面的两种轨迹仿真结果中可以看出,三次多项式轨迹规划和五次多项式轨迹规划最大的区别就在前者的加速度和角加速度在中间点存在跳变,而后者的加速度和角加速度的变化则趋于平缓。我们对两种情况下PART6_MARKER_6点的运动参数变化情况进行比较,如下表所示:表4-3PART3_MARKER_12点的运动参数比较比较项目三次多项式五次多项式最大速度mm/s297.6708370.1791最大加速度mm/253.6641396.2381加速度突变有无最大角速度d/s50.351262.8912最大角加速度d/33.406932.826角加速度突变有无之所以有这种区别,原因在于三次多项式轨迹规划中,我们的边界条件只有四个,初始位移和速度,终点的位移和速度;而在五次多项式轨迹规划中,我们的初始条件中包含了加速度,分别为初始位移、速度和加速度,终点位移、速度和加速度。因此在一般的三次多项式轨迹规划中,我们应该加入最大速度变化的限制条件,从而保证机器人的运动更平稳。第四章基于模型的视景仿真系统的设计与实现随着机器人研究的不断深入,机器人三维可视化技术作为机器人设计和研究中安全可靠、灵活方便的工具,越来越受到重视。机器人的三维图形仿真,就是要建立一个精确、逼真的机器人模型以及机器人工作环境。三维可视化是数学模拟和科学计算可视化技术相结合的产物,它一般包括两方面内容:一是将传统数字仿真计算的结果转换为图形和图像形式;二是仿真交互界面可视化,即具有可视化交互和动画展示能力,要求能够实时跟踪显示仿真计算结果。可视化技术的出现,使得人们能够在三维图形世界中观察机器人,并通过计算机交互式对机器人进行示教仿真。一般来说,机器人可视化仿真系统主要由三个模块组成:工业机器人的三维模型模块(实现仿真系统的基础)、示教和再现模块(实现示教和再现的功能)、离线编程模块,见图4-1。但是由于时间和知识限制,本文只研究了后两个模块的实现,对离线编程并没有采取通常的做法,根据老师的建议想将Matlab软件和VC++结合起来,用在Matlab里建立的控制模型来控制OpenGL里机械手的运动,本章按照这个思路实现了利用Matlab里建立的控制模型导出的数据来控制机械手的运动。图4-1通用机器人可视化仿真系统模块本章将通过VC++6.0和OpenGL来完成机械手的三维可视化仿真系统的设计与实现,它提供一个真实的实验平台,在不接触实际机器人及其工作环境的情况下,通过图形技术,提供一个和机械手进行交互的虚拟环境。本章主要内容为:(1)建立程序框架;(2)建立机械手三维模型;(3)建立仿真场景;(4)实现基于模型的视景仿真。4.1OpenGL概述OpenGL即开放性图形库(opengraphiclibary)是美国高级图形和高性能计算机系统公司SGI所开发的三维图形标准库,具有绘制三维图形的各项功能,它是处理专用图形硬件的软件接口,支持可视化的实现,它是三维计算机图形和模型库,独立于窗口系统和操作系统。从开发人员角度看,OpenGL是一些绘图指令或函数的集合。这些指令允许用户对二维几何对象或三维几何对象进行说明,允许用户对对象实施操作以便把这些对象着色到帧存上。OpenGL可以方便地实现三维图形的交互操作。对于OpenGL的实现者而言,OpenGL是影响硬件操作的指令集合。如果硬件仅仅包括一个可以寻址的帧存,那么OpenGL就不得不在CPU上实现对象的描绘,OPenGL可以保存数量较大的状态信息,这些状态信息可以用来指示OpenGL如何往帧存中画物体。有一些状态,用户可以直接使用,通过调用就可得到状态值;而另一些状态只有作用在所画物体上,才能使其产生的影响可见。4.1.1OpenGL工作方式OpenGL在Windows环境下的工作过程如图4-2所示。OpenGL的库函数被封装在OPengl犯.dll动态链接库中,从客户应用程序发布的对openGL函数的调用首先被Opengl32处理,在传给服务器后,被winsry.dll进一步进行处理,然后传给DDx(nivieeDriverInterface),最后传递给视屏驱动程序。【18】图4-2OpenGL在Windows环境下的工作过程4.1.2OpenGL绘制过程OpenGL具有较强的图形绘制能力,包括绘制物体、启动光照、管理位图、纹理映射、动画、图形增强及交互技术等功能。综合以上功能,作为图形硬件的软件接口,OpenGL主要是将三维的物体投影到一个二维平面上,之后处理得到像素,进行显示。OpenGL首先将物体转化为可以描述物体几何性质的顶点(Vertex)与描述图像的像素(Pixel),在执行一系列操作后,最终将这些数据转化成像素数据。也就是说,OpenGL是基于点的。有一组顶点定义的图元(Pirmitive)执行完绘制操作后,后继图元才能作用。简单的图形生成过程如图4-3所示。图4-3OpenGL中简单图形的绘制过程对图元的定义:图元由一组顶点定义,这一组顶点可以是一个或是多个顶点。每个顶点信息可以是二维的也可以是三维的。顶点信息可以由位置坐标、颜色值、法向量、纹理坐标组成。法线、纹理、颜色值会在处理每个顶点的过程中被使用。OpenGL将点、线段、多边形等通过在函数glBegin()和glEnd()之间一系列顶点的数据绘制出图形。对图元的操作:OpenGL用交换矩阵、光照、反走样、像素操作等方法控制图元的绘制。图元的操作处理过程结束后,只留下图元可见部分,准备进行光栅化(投影)处理。像素处理比较特殊:对像素、位图、影像直接进行像素操作,然后进行光栅化,后者是有些数据被存储在纹理中供顶点使用。光栅化过程:将图元转化为二维图像,完成每个图像点的颜色与深度的计算,生成结果为基片,即各图元的二维结果。基片操作:处理过程包括基片是否遮挡、测试、融合等,最后得到像素,存入显示帧缓冲中,完成整个绘制过程。4.2机器人三维可视化框架建立4.2.1利用MFC建立单文档应用程序框架VC++6.0能够创建多种类型的MFC应用程序,不同的应用程序具有不同的应用程序框架,VC++6.0系统的设计者创建了程序框架生成工具Appwizard,用它来建立开发各种MFC应用程序所需要的程序框架,通过APpwizard就可移动生成包含基本程序框架的应用程序包,这样就可以在此基础上进行程序设计。在参考许多数字处理、图像处理软件的基础上,决定采用单文档的应用程序框架。【16】创建工程:启动VC++6.0进入VC++的集成开发环境,新建一个工程,选择MFCAppwizard选项,在应用程序类型中选择singledocument(单文档)类型。设置编译环境:设置编译环境主要包括设置包含文件和设置库文件路径。加入OpenGL库:选择菜单ProjectSetting,将弹出ProjectSettings对话框,在该对话框选择Link标签页,如图4-4所示。在该对话框中的Object/LibraryModule文本框中加入opengl32.lib、glu32.lib、glaux.lib三个函数库文件。在头文件中加入gl/glu.h(OpenGL核心函数的头文件)和gl/glut.h(使用函数的头文件),这样就可以调用openGL软件包了。图4-4加入OpenGL库函数这样,我们就很容易的建立了一个在Windows环境下进行OpenGL编程开发的框架,按快捷键F7进行编译,按快捷键F5执行就会弹出一个窗口,包含一个主菜单、一个工具条和一个状态条等部件。如下图4-5所示:图4-5程序框架4.2.2设置OpenGL绘图环境创建RC在window
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 木结构工程混凝土施工承包合同
- 商业大厦铁艺施工合同
- 职业培训师录用合同模板
- 城市广场太阳能路灯安装施工合同
- 城市供暖挖机租赁协议
- 乒乓球馆内部装修施工合同
- 砂石料运输合同协议
- 农田水利防洪排水施工合同
- 物业管理劳动合同要点解析
- 四川省城市规划备案管理要求
- 上海铁路局招聘2023届(高职)大专毕业生3367人笔试参考题库(共500题)答案详解版
- JGT501-2016 建筑构件连接处防水密封膏
- 踝关节MRI详细版课件
- 山东省济南市钢城区2023-2024学年三年级上学期11月期中语文试题
- 智能交通概论全套教学课件
- 各工序的产能计算
- 家长会课件:三年级上册期中数学家长会课件
- 附录-瓦斯抽采指标计算方法
- 廉洁提醒谈话记录表 (空表)
- 一年10亿销售,细数故宫背后的营销手段
- 《急性胰腺炎诊治指南》解读急性胰腺炎外科诊治现状与进展
评论
0/150
提交评论