版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨工业大学工程硕士学位论文摘要汽车表面数码迷彩的喷涂是军事装备生产中的一个重要环节,数码迷彩的喷涂步骤繁琐、耗费人力多且效率低下,针对该情况研究机器人自动化数码迷彩喷涂系统是必要的。相比于传统手工喷涂,机器人自动化喷涂能够显著提高生产效率,同时减少如划线、遮挡等步骤。机器人自动化数码迷彩喷涂系统与传统手工喷涂最大的不同之处是将一些现场需要完成的工作整合到软件中,主要难点是相关算法的开发。在分析了国内外相关技术后,本文将对机器人自动化数码迷彩喷涂系统进行深入的研究,主要研究内容如下:针对喷涂过程中的机器人逆运动学分析及机器人虚拟标定,喷涂系统要想模拟实际机器人的运动情况,首先需要在仿真环境中对机器人进行虚拟标定,使其各参数及运动关系与实际机器人相同。然后通过逆运动学算法模拟机器人的控制柜,求解出达到目标位姿时机器人各关节角度。最后根据喷涂需求及机器人各关节角度生成机器人运动指令。这将成为虚拟和现实的连接接口。针对人工在设备上手绘迷彩的情况,本文将提出一种基于八叉树理论的纹理映射技术,该算法的主要作用是将二维的迷彩映射到三维模型上,并输出映射结果。考虑到喷涂过程中需要对色块边界进行控制,利用基于八叉树的快速剖分算法,对网格的真实数据进行改变。为了满足喷涂的精度要求,本文将研究点云滤波算法并应用到剖分网格,最大程度上减小网格的形变。通过体映射技术,降低映射过程中的视觉形变,达到迷彩军事伪装的目的。针对喷涂过程中机器人末端执行器的运动问题,本文将提出一种基于投影法的喷涂规划算法,主要完成喷涂的轨迹规划和参数规划。该算法将映射结果作为输入,通过空间变换将色块边界变换到轨迹规划平面。考虑到平面间距与投影间距可能不同,提出“扫描”式栅格轨迹规划。为了满足迷彩喷涂色块边界的控制要求,使用栅格型和螺旋型混合轨迹作为最终的喷涂轨迹,并根据喷涂需求对喷涂过程中的相关参数进行规划。本文将设计喷涂规划实验验证系统,并且搭建仿真环境初步验证相关算法。最终通过实物喷涂实验验证机器人自动化数码迷彩喷涂系统的可行性。关键词:数码迷彩喷涂;机器人运动分析;纹理映射;喷涂规划-I-哈尔滨工业大学工程硕士学位论文AbstractSprayingofDigitalCamouflageonautomobilesurfaceisanimportantlinkintheproductionofmilitaryequipment.TheDigitalCamouflagesprayingprocessiscumbersome,costlyandinefficient.Inviewofthissituation,itisnecessarytostudyrobotautomaticdigitalcamouflagesprayingsystem.Comparedwiththetraditionalmanualspraying,robotautomaticsprayingsignificantlyimprovestheproductionefficiency,andreducesthestepssuchasmarkingandshielding.Thebiggestdifferencebetweentherobotautomaticdigitalcamouflagesprayingsystemandthetraditionalmanualsprayingsystemistointegratesomeoftheworkneededinthefieldtothesoftware.Themaindifficultyisthedevelopmentoftherelatedalgorithms.Afteranalyzingtherelatedtechnologiesathomeandabroad,therobotDigitalCamouflagespraysystemisdeeplystudiedinthispaper.Detailsaresummarizedasfollows:Aimingattheinversekinematicsanalysisandvirtualrobotcalibrationoftherobotinthesprayingprocess,thesprayingsystemwantstosimulatetheactualrobotmovement.First,thevirtualcalibrationoftherobotisneededinthesimulationenvironment,sothattheparametersandthemotionrelationoftherobotarethesameastheactualrobot.Thentherobofscontrolcabinetissimulatedbyinversekinematicsalgorithm,andthejointanglesoftherobotareobtainedwhenthetargetpositionisreached.Finally,robotmotioninstructionsaregeneratedaccordingtosprayrequirementsandrobotjointangles.Thiswillbecomeavirtualandrealisticconnectioninterface.Forthehand-paintedcamouflageonthedevice,thispaperproposesatexturemappingtechniquebasedontheoctreetheory.Themainfunctionofthisalgorithmistomapthe2Dcamouflagetothe3Dmodelandoutputthemappingresult.Consideringthatitisnecessarytocontroltheboundariesofthecolorblocksinthesprayingprocess,anoctreebasedfastsegmentationalgorithmisproposedtochangetherealdataofthegrid.Inordertomeetthesprayingprecisionrequirements,thispaperstudiedthepointcloudfilteringalgorithmandappliedittothemeshingmeshtominimizethedefbnnationofthemesh.Throughthetechnologyofvolumemapping,wecanreducethevisualdeformationintheprocessofmapping,andachievethepurposeofcamouflageinmilitarycamouflage.Inordertosolvetheproblemofthemovementoftherobofsendeffectorinthe哈尔滨工业大学工程硕士学位论文sprayingprocess,thispaperproposesasprayingplanningalgorithmbasedontheprojectionmethod,whichmainlycompletesthesprayingtrajectoryplanningandparameterplanning.Thealgorithmtakestheresultofthemappingasinputandtransformstheboundaryofthecolorpatchtothetrajectoryplanningplanethroughspatialtransformation.Takingintoaccountthattheplanespacingandtheprojectionspacingmaybedifferent,a"scanning'*typegridtrajectoryplanningisproposed.Inordertomeetthecontrolrequirementsoftheboundaryofcamouflagecoatingcolorblocks,grid-typeandspiral-typemixingtrajectoriesareusedasthefinalspraytrajectory,andrelevantparametersinthesprayingprocessareplannedaccordingtothesprayingrequirements.Asprayplanningexperimentverificationsystemwasdesigned,andapreliminaryvalidationcorrelationalgorithmwasestablishedfbrthesimulationenvironment.Finally,thefeasibilityofarobotizeddigitalcamouflagesprayingsystemfbrrobotswasverifiedthroughphysicalsprayingexperiments.Keywords:digitalcamouflagespraying;robotmotionanalysis;texturemapping;sprayplanning-in-哈尔滨工业大学工程硕士学位论文目录\o"CurrentDocument"\h摘要 I\o"CurrentDocument"\hAbstract II\o"CurrentDocument"\h第1章绪论 1\o"CurrentDocument"\h课题来源、背景及意义 1\o"CurrentDocument"\h国内外研究现状 2\o"CurrentDocument"\h纹理映射研究现状 2\o"CurrentDocument"\h喷涂机器人轨迹规划现状 4\o"CurrentDocument"\hL3国内外研究现状分析 6\o"CurrentDocument"\h1.4主要研究内容 7\o"CurrentDocument"\h第2章 总体框架设计及逆运动学分析 8\o"CurrentDocument"\h弓I言 8\o"CurrentDocument"\h喷涂规划总体框架设计 8\o"CurrentDocument"\h面向喷涂的逆运动学求解 9\o"CurrentDocument"\h机器人构建 10\o"CurrentDocument"\h机器人逆运动学分析 11\o"CurrentDocument"\h本章小结 19\o"CurrentDocument"\h第3章 基于八叉树理论的纹理映射技术 20\o"CurrentDocument"\h引言 20\o"CurrentDocument"\h基于八叉树理论的网格剖分 20\o"CurrentDocument"\h网格剖分停止条件的判断方法 21\o"CurrentDocument"\h基于平均法向的有效面选择 25\o"CurrentDocument"\h面向四边形网格的平滑算法 25\o"CurrentDocument"\hLaplacian滤波算法 26\o"CurrentDocument"\hHC滤波方法 28\o"CurrentDocument"\h双边滤波法 29\o"CurrentDocument"\h基于体分割的纹理映射技术 30\o"CurrentDocument"\h纹理与模型的预处理 31\o"CurrentDocument"\h基于体分割的纹理映射 32\o"CurrentDocument"\h映射结果保存 33-IV-哈尔滨工业大学工程硕士学位论文\o"CurrentDocument"\h本章小结 34\o"CurrentDocument"\h第4章 基于投影法的喷涂规划 35\o"CurrentDocument"\h引言 35\o"CurrentDocument"\h利用矩阵方法的空间变换 35\o"CurrentDocument"\h空间变换的原因 35\o"CurrentDocument"\h空间变换过程 37\o"CurrentDocument"\h“扫描”式栅格轨迹规划 40\o"CurrentDocument"\h轨迹类型与偏置算法 40\o"CurrentDocument"\h“扫描”式轨迹规划 42\o"CurrentDocument"\h轨迹空间校正 44\o"CurrentDocument"\hCell间喷涂顺序规划 44\o"CurrentDocument"\h喷涂相关参数规划 45\o"CurrentDocument"\h喷枪姿态的确定 46\o"CurrentDocument"\h轨迹间距及喷枪移动速度的确定 47\o"CurrentDocument"\h喷枪颜色切换方式的确定 49\o"CurrentDocument"\h本章小结 49\o"CurrentDocument"\h第5章仿真环境搭建及喷涂规划实验验证 50\o"CurrentDocument"\h引言 50\o"CurrentDocument"\h喷涂要求及仿真环境搭建 50\o"CurrentDocument"\h数码迷彩喷涂要求 50\o"CurrentDocument"\h基于OpenGL的仿真系统开发 50\o"CurrentDocument"\h基于空间细分的干涉检测 50设备选择与实验系统设计 53实验设备选择 53\o"CurrentDocument"\h喷涂规划验证系统总体框架 54\o"CurrentDocument"\h喷涂规划验证系统实验流程 55\o"CurrentDocument"\h喷涂规划系统实验验证 56\o"CurrentDocument"\h文件加载及纹理映射验证 56\o"CurrentDocument"\h喷涂规划验证 56\o"CurrentDocument"\h机器人控制指令生成 57\o"CurrentDocument"\h喷涂实验 58\o"CurrentDocument"\h本章小结 61\o"CurrentDocument"\h结论 62-V-哈尔滨工业大学工程硕士学位论文\o"CurrentDocument"\h参考文献 64\o"CurrentDocument"\h哈尔滨工业大学学位论文原创性声明和使用权限 68\o"CurrentDocument"\h致谢 69-VI-哈尔滨工业大学工程硕士学位论文第1章绪论1.1课题来源、背景及意义本课题为实验室横向合作课题。军事伪装一直以来在战争中都占据重要地位,伪装可以很好的隐藏士兵和作战装备,保证军队在战场的持续作战能力。同时也可以为军事突袭、重要情报侦查等军事活动提供安全保障。从一战时期,各战争国就已经认识到士兵服装、作战装备表面颜色在战争中的重要性。当时使用的是单一颜色,以军绿色、褐色居多,颜色的选取主要和作战场地有关。到了二战时期,随着战争范围的扩大及战斗激烈程度的加剧,单一颜色不能适用于多种复杂地形环境,多种颜色的军装进入人们视野,当时的衣服在外观上看已经类似于现代的迷彩服,也就是多色迷彩。迷彩伪装技术是一种最基本、最常用的伪装方式⑴,其存在成本低、伪装效果好、方便易用等优点,所以被各国广泛使用。随着科技的进步,侦查手段越来越多、范围越来越广、分辨率越来越高。面对侦查手段的不断发展,伪装技术也必须向精细化、自动化、智能化方向发展⑵,数码迷彩进入人们视野,数码迷彩的设计基于色彩混合理论,可以显著提高伪装效果,人眼对数码迷彩图案空间色彩混合效果的感知是一个复杂的信息传输接收和处理的过程⑶,所以数码迷彩可以很好的迷惑敌人,达到伪装的效果。随着“中国制造2025”战略的实施,我国在装备制造业领域取得了长足的进步。然而由于作战装备表面数码迷彩喷涂工艺的复杂性,作战装备的上色仍然以传统手工喷涂方式为主。目前常用的数码迷彩喷涂方案为胶带纸遮蔽后喷涂和模板喷涂,需要一些有经验的老师傅把迷彩图案画在作战装备上,然后以此为基准进行喷涂,精度难以保障。而且每当喷涂一种颜色时需要把其他颜色的色块进行遮蔽处理,步骤很繁琐。手工喷涂数码迷彩存在着生产施工时间长、工作效率低、工人暴露在有毒环境、不确定影响因素较多等问题1久目前,国内对于汽车自动化喷涂的研究多以解决单一颜色喷涂问题为主,而对于类似于数码迷彩这种多色自动化喷涂问题的研究还处在初步阶段。国内外机器人公司均有成熟的喷涂机器人产品,为了解决数码迷彩手工喷涂存在的一些问题,提出一种基于机器人的数码迷彩自动化喷涂解决方案是非常必要的。具体意义如下:(1)缩短工作时间,提高生产效率。首先工人不需要将数码迷彩画在作战装-1-哈尔滨工业大学工程硕士学位论文备上;其次是在喷涂一种颜色时不需要对其它色块进行遮挡,避免了繁琐的喷涂步骤。这两种工作方式的改变都在最大程度上对工作时间进行了压缩,极大的提高了生产效率。(2)提高喷涂精度。传统的数码迷彩喷涂需要有经验的老师傅把图案画在作战装备上,这一过程很大程度上受到工作者熟练度、情绪、身体状况等因素的影响,精度难以保证。而基于机器人的数码迷彩自动化喷涂解决方案借助计算机的图形处理算法,将设计完成的数码迷彩通过纹理映射的方式贴敷到待喷涂模型表面,可以最大程度上还原设计者设计的真实尺寸,从而提高喷涂精度。(3)改善工人工作环境。传统的手工喷涂方式,工作人员不得不把自己暴露在有毒的工作环境中,尽管有一些保护措施,但对人体还是有一定的危害性。而自动化喷涂可以利用机器人代替人工完成喷涂工作,从而改善工人工作环境。国内外研究现状由于数码迷彩喷涂技术直接影响军事作战能力,国外一直对此类相关技术进行保密,至今还没有看到数码迷彩喷涂设备相关的报道⑶。而国内对此类技术的研究也处于初级阶段。2014年,初苗等人设计了一种数码迷彩喷涂装置网,并进行了验证,能够完成平面上数码迷彩的喷涂任务,但对于复杂自由曲面的喷涂效果并没有给出相关说明。2015年,谢卫等人构建了数码迷彩自动涂装系统⑵,基本可以解决数码迷彩喷涂问题,但系统的数据采集和网格图案设计都需要大量的人工交互。其数码迷彩的设计在三维模型中完成,与传统工艺脱节,导致以前的技术积累和经验不能得到很好的运用。2016年,初苗等人对数码迷彩喷涂机器人的控制算法进行了优化⑺,实现了快速喷涂。数码迷彩的喷涂要实现自动化一般需要完成两个步骤:纹理映射和喷涂机器人轨迹规划,下面以这两方面为主要研究内容进行概述。纹理映射研究现状最初人们直接使用三维模型来模拟自然界中的真实场景,但随着计算机技术的发展,人们对显示效果提出了更高的要求,尤其以电影和游戏为主。此时单纯用三维模型来刻画细节会带来很大的计算量,不能满足实时性要求,从而发展了纹理映射技术。纹理映射是一种基于计算机图形学,在不改变模型的基础上,对模型进行细节刻画的技术,该技术使模型在视觉上更具真实感。纹理映射可以分为以下几个类型。(1)颜色纹理映射⑻的主要目的是把二维纹理贴敷到三维模型上,在不改变原-2-哈尔滨工业大学工程硕士学位论文模型数据结构的基础上使其得到更好的渲染效果。颜色纹理映射的难点在于建立纹理空间和模型空间的对应关系。根据被映射表面能否参数化,颜色纹理映射又分为参数化纹理映射和非参数化纹理映射。Catmull最早提出的纹理映射技术就是针对参数化表面的⑼,参数化纹理映射的关键就是将被映射表面参数化,即建立映射关系。这样一来,三角网格模型的参数化又成为了一个研究热点,国内外学者对此做了大量的研究。其中Michael和Floater提出了一种基于图论的整体参数化的方法[⑼,通过确定每个点的邻域关系来确定逼近曲面的三角面片顶点序号,最小程度的减小纹理映射过程中的形变。Praun和Hoppe研究了封闭曲面到球面域的参数化⑴】,使用均匀细分多面体域采样技术方案,取得了理想的映射效果,但该方法不适用于非封闭曲面。Sander和Snyder通过构造渐进网格的方法[⑵,使得渐进网格序列中的所有网格拥有共同的纹理参数,并用以纹理密度为衡量标准的启发式算法分割网格。鲍玉凤研究了均匀面积参数化的方法〔⑶,首先使用均匀坐标变换将网格进行平面参数化,而后同过迭代的方法进行网格优化。晏冬梅提出了网格分块参数化的方法口4】,将网格按图论的方法进行分割并进行参数化,最终根据拓扑关系实现整体网格的参数化。对于难以参数化的曲面通常使用非参数化纹理映射技术,常用的方法有两步纹理映射法和纹理图册法。Bier和Sloan首先提出了两步纹理映射的概念口习,将整个纹理映射过程拆分为两个步骤:一是将纹理映射到一个已知的容易参数化的中介曲面上,二是将中介曲面上的映射结果映射到目标曲面。由于第一步映射可控性比较强,成为学者的研究热点。胡学龙和富煜清通过使用双线性变换和面扩展算法等技术,使用四边形网格逼近复杂曲面,基于两步纹理映射法实现了快速纹理映射〔⑹。唐晶磊等人提出了•种基于两步法的交互式纹理映射方法[⑺,操作者可以根据需求选择纹理映射范围,使得两步法的灵活性和易用性都得到了极大的提高。唐勇、刘连军等人应用长宽等比约束算法提高了半球纹理映射质量〔网,由于球面的不可展性,球面的纹理映射一直是一个难点,而长宽等比约束可以在很大程度上降低映射产生的形变。江巨浪等人[⑼与刘晓梅等人RO]分别提出了一种基于面积比等比约束的两步纹理映射算法的改进方法,该方法通过利用面积比等比约束条件进行保形映射,进一步降低了纹理形变。而后,江巨浪团队针对环形物体对两步纹理映射法进行优化⑷〕,使用环形曲面作为中间曲面,取得了良好的纹理映射效果。纹理图册这一•概念最早由Petitjean和Ray提出⑦】,其思想是将待映射模型分割成拓扑等价的小曲面而形成纹理图册,对每个小曲面进行映射后拼接以实现整体映射。Ray、Jean等人基于光照理论提出了一种新型的纹理图册生成算法[2引,改善了复杂曲面分片较多的问题,实现了复杂场景的快速渲染。Guthe和Klein针对NURBS-3-哈尔滨工业大学工程硕士学位论文模型对纹理图册法进行了改进侬],依据NURBS模型的特点直接在原始模型上生成纹理图册,有效的减小了纹理图册生成过程中的形变。(2)凹凸纹理映射的概念最早由Blinn提出磔】,是一种通过对模型施加扰动信号,使模型的点法向发生改变,从而达到凹凸视觉效果的方法。很好的解决了粗糙表面的细节显示问题。针对凹凸纹理渲染像素效率低的问题,Peercy.Airey等人提出了基于硬件的高效算法126】,通过将插值向量转换到切线空间作为多边形的顶点和存储预处理的纹理,避免了重建切线空间,显著的提高了渲染速度。随后,衍生出浮雕凹凸纹理映射技术理刀,该方法与早期的凹凸纹理映射方法不同,并不需要依照每个像素的光照模型来计算点法向,而是通过固定的光照模型计算所有点的法向,很好的模拟了灯光照射时的漫反射现象。Fujita和Kanai利用多纹理映射和基于图像渲染的混合方法[2叫使得基于纹理的图像具有高质量的阴影效果。(3)过程纹理映射网不同于上文所述映射,不需要通过纹理空间和模型空间的对应关系来完成映射,而是直接将模型嵌入到根据函数定义的纹理空间来获取模型的表面纹理。可以很好的解决纹理不连续和纹理形变问题,但应用范围受到空间纹理函数的限制,所以开发新的纹理函数自然就成为了学者们研究的热点。Noise函数最初由Perlin提出,该函数可以模拟一些自然纹理,如木纹、火焰等。Noise函数使用非常广泛,至今还有学者对其改进。Horace等人提出了一种基于纹理生长和纹理湍流的高效算法网】,其基本理论为Noise函数。霍星和檀结庆针对木纹纹理对Noise函数进行了优化⑴】,对不同维度的噪声进行了合成并对法向进行了扰动,取得了较好的效果。Witkin和Kass提出了一种基于局部非线性相互作用过程纹理合成方法WJ,建立了一种适用于计算机图形学的反应扩散模型,该模型可以很好的模拟云雾的扩散。Worley提出了一种新型的基函数13叫将纹理空间划分为随机的单元阵列,模拟了岩石、山脉等自然景观。Ashikhmin等人基于物理方法模拟生成海浪,对水面进行了精确的建模,成功的模拟了海浪的动态纹理mi。Schpok等人使用隐含式骨骼结构和噪声独立变换的方法,建立了体积云模型,通过设置不同的云属性模仿不同天气时的云彩[均。喷涂机器人轨迹规划现状喷涂机器人轨迹规划是一种依托于离线编程软件,针对喷涂业务和现实喷涂场景,通过人机交互或自动生成喷涂轨迹的离线编程方法。其主要目的是使涂料均匀的分布在被喷涂表面。由于目前喷涂需求大多集中在汽车行业,对喷涂美观要求较高。喷涂机器人轨迹规划的研究热点分为以下两个方面:喷枪漆膜厚度分布模型的建立与喷涂轨迹规划。-4-哈尔滨工业大学工程硕士学位论文(1)喷枪漆膜厚度分布模型的建立早期Antonio就提出了喷漆厚度模型的概念供】,使用带有约束的矢量函数建立喷涂模型,并采用标准化非线性规划技术验证解决方案的有效性。最终建立的高斯分布模型,为喷漆模型的建立打下了坚实的基础。Hansb。和Nylen针对转台热喷涂提出一种建模方法口刀,用于喷雾沉积在旋转的大物体上,具有平滑的、旋转对称的、弯曲的表面,而且允许改变喷雾的距离和方向,对于小曲率模型的喷涂效果较好。冯川和孙增圻针对釉料堆积建立了喷雾模型并搭建了三维显示环境进行验证138】,通过实验初步确定釉料空间分布形状,并用函数逼近最终得出空间分布模型,同时该函数可以计算模型的边缘部分和模型厚度。Conner等人针对汽车行业常用的旋杯喷枪建立分析沉积模型13叫该喷枪雾化效果好,使得喷漆分布空间进一步加大,模型的建立十分困难。沉积模型既考虑了表面曲率的影响,又考虑了模型在计算上的可伸缩性,适用性广泛。实际喷涂生产中,喷漆覆盖面积一般并非标准的圆形,而是类似于椭圆形。Arikan和Balkan采用实验法对椭圆喷雾涂料厚度分布进行建模14叫重点分析了喷漆流速对分布模型的影响,流速不同会导致椭圆长轴与短轴的比例不同,通过实验法确定了两者的关系,最终建立了椭圆喷雾模型。张永贵、黄玉美等人基于Arikan研究成果进一步对椭圆喷雾模型进行优化⑼,通过BP神经网络处理实验数据,得到更为精确的分布模型。赵德安等人针对复杂曲面先建立平面喷枪模型142】,然后对曲而进行分片处理,重点优化各片接缝处的喷漆分布模型,使得算法运行速度加快并有一定的适应性。夏薇、杜铮等人使用遗传算法对油漆模型进行拟合口引,对比神经网络发现在精度相同的情况下,遗传算法在运算速度上更有优势,最终使用遗传算法得到油漆分布模型的具体表达式。(2)喷涂轨迹规划轨迹规划实质上是一种离线编程技术,通过算法自动生成机器人运动轨迹,代替传统的示教模式,提高机器人工作效率。Klein早在1986年就提出了基于CAD的喷涂机器人离线编程概念HU对一些简单的模型的喷涂取得了很好的效果,为离线编程的发展奠定了基础。随后,Suk-Hwan等人自主研发了软硬件结合的自动喷涂系统口叫可以自动生成基于零件几何有效的机器人轨迹,实验验证该系统的有效性,但被喷涂模型表面质量不是十分理想。Chen等人针对汽车制造业研发出一种用于自由曲面的CAD引导的喷枪轨迹生成系统KB,提高了被喷涂模型表面质量,而且该系统还可以生成其他引导式的轨迹程序。Atkar等人针对复杂的汽车表面提出了一种新的分割算法[4为,将汽车表面分割成几何形状和拓扑关系简单的单元,对每个单元可以进行单独的喷涂规划,但对于接缝处还需要优化。针对接缝处轨迹优化问题,赵德安等人通过实验方法,分析各个单元格的拼接类型最终确定平-5-哈尔滨工业大学工程硕士学位论文行轨迹喷漆分布模型叠加效果最好阳】。刘能广、任天然等人将喷涂机器人分为两层[4用,上层为决策者,使用混合遗传算法。下层为执行者,使用最小二乘法,提高了轨迹规划的求解速度。Chen等人对基于CAD模型的轨迹规划做了总结【49】,指出细分后的CAD模型在轨迹规划时有许多优点,但模型本身缺乏边缘和连接信息,不适用于类似于焊接的边缘业务。对于喷涂业务的连续表面处理优势明显,能够对汽车部件一次性生成连续的喷涂路径。Gyorfi等人首次提出了约束路径规划的概念[5瞑首先在不设置任何约束的条件下找到全局解决方案,然后将子路径、路径交叉限制和避障作为路径规划的约束条件,使用图形搜索算法对全局路径进行调整,得到最终结果。同年,曾勇等人针对直纹曲面采用最小二乘法拟合曲面⑶】,使分片数极大降低,并且对各片连接区域重新计算喷漆涂料分布模型,在一定程度上提高了喷涂表面质量。清华大学缪东晶、王国磊等人将数控机床加工轨迹规划思想应用于喷涂业务BL在保证涂层厚度的前提下,开创了一种变速的喷涂方法,显著提高了喷涂效率。兰州理工大学的张鹏等人将粒子群算法应用到大曲率曲面的喷涂业务上[53],使得路径求解的复杂度降低,同时重新构建了目标函数,经实验该方法有较强的适用性。Andulkar等人提出了一种新的轨迹规划方法,增量式轨迹规划制。其主要思想是将喷枪移动速度、喷涂曲面曲率以及喷涂压强等作为涂料分布模型的参数,考虑轨迹上涂料的函数重叠区域,计算出最佳的轨迹间距,最终效果理想。国内外研究现状分析同样的,由于数码迷彩喷涂不同于传统单一颜色的喷涂,必须有纹理映射的过程,所以本节将在两个方面进行论述:一方面为纹理映射,一方面为轨迹规划。经过认真阅读相关文献,从多个方面进行分析。发现与该课题相关的关键技术主要存在以下几个问题:(1)纹理映射过程纹理形变问题。目前纹理映射的方法有多种,参数法、两步映射法、纹理图册法等。这些方法都通过各种方式进行保形映射,争取在最大程度上减小纹理的形变,但纹理形变是不可避免的。而汽车迷彩的主要作用是伪装,要求汽车六视图中除仰视图外都需要与原纹理达到80%以上的相似度。目前的纹理映射方法在对弯折角度较大的折面进行映射时,会出现压缩现象。(2)纹理映射纹理不连续问题。目前,针对复杂曲面常用的纹理映射方法是先依据某种规则将曲面进行分片,而后对各片单独映射后进行拼接,这样就很容易出现纹理不连续的问题。而迷彩不存在中间色,各色块边界清晰,所以不能使用加权插值的方法解决该问题。(3)多颜色轨迹规划问题。目前喷涂轨迹规划方法大多数是针对单一颜色的,-6-哈尔滨工业大学工程硕士学位论文没有边界限制,不能适用于迷彩的轨迹规划方案。目前喷涂使用的喷枪多数为旋杯喷枪,具有喷漆雾化效果好、效率高等优点。但该喷枪不能适用于自动化迷彩喷涂业务,会造成两个色块间的混色问题。(4)复杂曲面统一路径规划问题。复杂曲面一直是轨迹规划的难点,当前的研究热点为将复杂曲面分片后单独规划,而后优化拼接处的喷漆厚度。还没有一个统一的解决方案。而迷彩喷涂又受到色块边界的限制,原则上不能将一个色块分为两个面片。所以需要对每个色块进行统一的轨迹规划,而不能再细分,可能会出现同一个色块曲率变化很大的情况。主要研究内容喷涂机器人轨迹规划依托于离线编程软件,而且需要通过虚拟仿真对轨迹进行正确性验证。综合上文中的叙述,本课题的主要研究内容分为三部分:仿真系统开发、曲面纹理映射、喷涂机器人轨迹规划。(1)曲面纹理映射。这一部分的研究内容主要针对迷彩喷涂与传统单色喷涂的区别,传统喷涂并不需要将二维图映射到三维模型上。该部分的主要研究内容为防止纹理映射过程中纹理发生视觉形变、纹理接缝处颜色突变问题。以上两点是为了达到军事伪装目的所必须满足的条件。难点在于很多映射方法主要目的是显示逼真,而作为轨迹规划的前处理,映射过程中需要对真实数据进行处理。(2)机器人喷涂规划。同样受到迷彩的限制,该部分的研究内容与传统的喷涂规划有着很大的区别,迷彩的喷涂要以色块为单位,不能按曲率将曲面分割进行单独的轨迹规划。该部分主要研究内容为色块内统一轨迹规划和各色块间的喷涂次序规划。主要难点为同一色块内曲率可能发生很大的变化,影响统一规划的结果,甚至导致无法全部覆盖被喷涂表面。(3)喷涂规划实验验证及仿真环境搭建。根据实际情况,设计实验验证系统,同时确定实验具体流程,最后进行实物喷涂,验证理论的可行性。仿真环境搭建的意义在于可以初步验证映射算法及喷涂规划算法的准确性,三维可视化环境为算法的开发与调试提供了极大地帮助,可以在一定程度上代替实际实验,当仿真结果达到预期后再进行实际实验,可以显著缩短开发周期。-7-哈尔滨工业大学工程硕士学位论文第2章总体框架设计及逆运动学分析引言汽车表面数码迷彩喷涂机器人轨迹规划技术不同于传统的汽车喷涂技术。由于传统的汽车喷涂多为单一颜色,喷涂规划时只需要考虑模型本身的形状特点,进行分片或其他处理,逐个进行规划。而数码迷彩的喷涂需要以每个色块为基本单位,不能根据模型本身的形状特点进行分片处理,所以不能直接使用传统的喷涂规划方式。而且传统的喷涂规划方式不需要考虑色块的边界保护及颜色切换等问题。综上所述,可以得知定制化数码迷彩喷涂的难度要远远大于传统喷涂。本章针对数码迷彩喷涂的特点,对每个功能实现过程进行深入研究,设计出喷涂规划系统的总体框架。同时,对机器人的逆运动学分析进行了深入研究。喷涂规划总体框架设计数码迷彩喷涂规划过程分为:纹理及模型加载、曲面纹理映射、喷涂规划、仿真验证。(1)纹理及模型加载。纹理为自定义格式,模型为STL或IGS格式。纹理加载到后台作为数据,读取色块颜色信息、色块间的位置关系及色块大小等信息。三维模型加载到显示环境中,提取相关数据信息。两者之所以加载到不同的位置,主要是因为显示环境一般承载三维模型,而很少用于显示图片。而且将纹理加载到显示环境中是没有意义的,纹理的具体形态可以通过对话框查看。(2)曲面纹理映射。将纹理及模型的加载结果作为输入,对模型网格进行剖分、平滑等处理,使其满足映射需求。根据面片之间的拓扑关系与纹理色块依次对应,建立映射关系。映射后,在三维模型上提取出每个色块的颜色信息、边界信息、边界点的法向信息等进行保存。(3)喷涂规划。考虑到对模型网格进行处理后会与原模型有误差,为了保证轨迹规划的精度,需要重新加载原始三维模型。将纹理映射的结果作为输入,依据边界信息和模型信息进行轨迹规划。由于没有对模型进行参数化处理,色块边界所包含区域的形状为未知量,需要进行空间变换后采用投影法确定包含区域内的轨迹点。最终将喷涂规划结果输出。(4)仿真验证。将喷涂规划结果作为输入,通过建立与真实场景位置关系相同的虚拟场景,依据位置关系和目标姿态求解出每个轨迹点对应的机器人六关节-8-哈尔滨工业大学工程硕士学位论文的旋转角度,以旋转角度作为输入驱动机器人进行仿真,验证喷涂过程的可行性。如果出现两点间旋转角度过大、干涉等不合理情况,需要及时对轨迹进行调整。数码迷彩喷涂规划总体框架如图2-1所示:纹理加载颜色信息、边界信
息、尺寸信息模型加我解析模型的点及法
向、面及法向图2-1喷涂规划总体框架2.3面向喷涂的逆运动学求解本课题使用的机器人为钱江机器人,具体型号为QJRH4-1。关节示意图如图2・2所示:图2・2课题使用机器人关节示意图-9-哈尔滨工业大学工程硕士学位论文2.3.1机器人构建机器人构建的主要目的是确定每个部件的编号、构建旋转轴、设置旋转范围、标定零位,使仿真环境中的机器人与实际机器人的运动学属性相同,保证在仿真环境中求出的解能够正确的在实际机器人上使用。首先需要给每个部件定构建一个局部坐标系,然后对机器人所有部件进行有序组合,最后确定各关节的旋转范围。(1)构建局部坐标系。当一个部件加载完成后,默然创建了一个与世界坐标系重合的局部坐标系,但该坐标系不一定是用户所期望的。通过交互的方式,用户可以自定义局部坐标系。就旋转自由度的机器人而言,局部坐标系需要满足两个条件:一是坐标系的z轴必须是该部件实际运动时的旋转轴;二是各部件组合成完整的机器人后,z轴方向需要与逆运动学求解时建立的D-H各坐标系z轴方向相同。(2)各部件有序组合。根据实际机器人各部件之间的关系确定每个部件的序号,序号从0到6,0号部件为机器人底座,6号部件为与末端执行器装配的法兰,中间序号按顺序依次排列。当1号部件按旋转轴旋转时,2-6号部件均需要按1号部件的旋转矩阵进行旋转,这保证了仿真时虚拟机器人与实际机器人动作一致。序号确定后,需要建立各部间的装配关系同时标定零位,要求与实际机器人相同。本课题使用的机器人为六旋转自动度机器人,装配关系可以由同心圆装配和面到面装配两种基本形式组合完成。装配原理如图2-3所示:图2-3装配原理图下面以同心圆装配为例对装配过程进行说明。在图形环境中选择一个圆面为基准面,选择另一个圆面为装配而。图2-3中为两个待装配的圆面,其中乌、生分别为两圆面的圆心,4、万2分别为两圆面的法向。定义射线4的端点为4,方向为4,同理定义四、P2为圆面旋转变换后与任意公垂线与两射线所在直线的交点。以圆面1为基准,对圆面2进行旋转变换。轴为>员=(小4/),角度为。=arccos(万1•&),根据Goldman公式:-10-哈尔滨工业大学工程硕士学位论文勺2(1一c)+c
GG(l-c)+S
5(~)一弓540(1一。)-4sGF(l-c)+《s汽l-c)+cryrz(\-c)-rxsryr:(y-c)+rxsr2(l-c)+c(2-1)式中c代表cos。,s代表sin。。旋转完成后沿向量P20=Pi-P2方向平移面2,使其与面1P2P;=(p「Py,P1则变换矩阵M为:同心。定义r;(l-c)+c
rxry(\-c)+rzs
W-
0rvr(l-c)+rv5方(1-。)+。W"s「3(1—。)+勺5 r2(l-c)+c0 0Px
Py
Pz
1(2-2)M=R=最后将2部件的所有数据按变换矩阵M进行变换,完成同心圆装配。如果为
面到面装配,则将平移向量替换。移动方向为旋转后的饱,移动距离为。「g两点
连线在瓦方向上的投影。装配结果如图2Y所示:a)装配前b)完成同心圆装配图2-4装配过程标定零位的主要目的是让仿真环境中机器人的初始姿态与实际机器人的初始姿态相同,而且每个电机的旋转角度为零。部件组装后将部件按旋转轴进行旋转,使其达到零位,完成虚拟标定。(3)设置旋转范围。实际机器人每个关节都有旋转范围,机器人的杆长和旋转角度共同决定了机器人的工作空间,而且需要注意的是机器人并不能以任意姿态到达工作空间中的任一点。仿真环境中的机器人同样需要设置关节旋转范围,与实际机器人相同仿真才有意义,不然可能出现仿真有解而实际没解的情况。2.3.2机器人逆运动学分析本课题使用机器人的具体结构尺寸如图2-5a)所示,图b)为依据实际使用机器-11-哈尔滨工业大学工程硕士学位论文图2-5本体与D-H坐标系对应图本文将使用D-H法求解各个关节的角度值,结合实验使用机器人的结构尺寸给出从工具末端到基座的完整解。具体步骤如下:Stepl:D-H坐标系的建立,D-H坐标系如图2-5b)所示,图中各参数的具体值见表2・1,需注意的是表中a与d的值均与实际机器人一一对应。表2-1坐标系参数表i%%a410°04(0。)4(449.5mm)290°a1(160mm)©90。)4(35mm)30°〃2(580/w〃)©0。)0490°%(200mM4(0。)(640/77/77)5-90°04(0。)0690°04(0。)0Step2:构建各部件之间的变换矩阵。一般的,机器人部件i与i・l之间的变换矩阵如公式(2・3)所示:cosg -sing 0 4Tsinqcos%coscos -sin%-sina^J-(2-3)sin耳sin%cos^sincr,^cos%cosaj_icli0 0 0 1首先定义下列符号:Sj=sinq,q=「cosq,%=s《+c»,%=qs»-12-哈尔滨工业大学工程硕士学位论文根据公式(2・1)可以得到各部件间的变换矩阵为:~s\0o-石_$20%3_$30a2\T=40q001047=0$20G-10々20*邑00010000~S400ia:00飞010o-0%0~S6001o-7=0%0a-1007=0_$50~C5100000。6-1000000100010001式中7为部件o与部件1之间的变换矩阵。机器人各部件间的变换矩阵求解完成,下面求解末端执行器到法兰末端的变换矩阵。由于末端执行器的种类多种多样,不符合D・H坐标系的建立规则,所以不能简单的用公式(2・2)来进行求解。一般的,末端执行器可以看成一个刚体,即末端执行器的工作坐标系在第六坐标系(法兰坐标系)的相对位置是不变的。利用相对位置不变理论可以求解出执行器到达目标位置后法兰末端位姿,将其作为逆运动学求解的输入,则可以得出机器人每个关节的角度值。执行器与法兰末端的相对位置关系如图2・6所示:图2-6执行器与法兰相对位置图2-6中,左图为机器人各部件有序组合后执行器与法兰局部坐标的相对位置示意图,其中q为法兰局部坐标系,q为执行器局部坐标系,两者位置关系由机器人本体结构所决定。部件组合后,两坐标系相对于世界坐标的位置关系就确定了,即左图所示两坐标系为已知量。右图所示的弓为执行器的目标位姿,4为执行器到达指定位置后法兰的位姿,即为所求。首先选择参考坐标系为4坐标系,求解向量而。向量在世界坐标系中可用。承。=。6一%=(%,兀,zj表不,在4坐标系中可用o6oo=(n-nx,n-ny,n.%)表不,其中万=4—。°,亢a,&=%-4,瓦4。当执行器坐标系达到目标-13-哈尔滨〔业大学工程硕士学位论文位置后,以。。为参考坐标系的而向量的值不变,设向量而;=(〃,,外,小)。沿向量访将q坐标系平移到反位置,使两坐标系原点重合,完成位置调整。然后是姿态调整。空间中任意两原点位置相同的坐标系,可以推算出两坐标系间的变换矩阵。如图2-7所示为两原点位置相同坐标系的示意图:图2-7两坐标系原点位置相同图2-7中,点P在xyz坐标系中可表示为&=虫.+Pjy+卫£,在uvw坐标系中可表示为Pltnv=Pjtt+PjY+Pwkwo这两种表示方式表达的是空间中的同一点P,固有用卬=之工。即:2=盯=(就+**]'Py=PuJy=(或+PJV+廉" Q-4)2=吼£=(欧+々工+匕匕/从而求得旋转矩阵为:"工hJv〔KvR=jyLJyJvJy^w(2-5)kJ,Kl2院旋转矩阵由心和。。两个已知坐标系求得,与平移向量组合成目标坐标系到法兰末端的变换矩阵T。凯i.Jvi人AT=jyjV Py一一1一——(2-6)kf”k2jvkzkwP:0 0 0 1在空间中给定一目标坐标系,将目标坐标系按矩阵T进行变换,得到机器人法-14-哈尔滨工业大学工程硕士学位论文兰的目标位姿,将该位姿做为逆运动学求解的输入,求解各个关节的运动角度。St叩3:求解各关节的运动角度。各部件间变换矩阵相乘可以得到机器人法兰末端到机器人基坐标系的变换矩阵丁,其计算公式为(2-7):4%%p;7=?(4)才®2)如(幻犷(&)才(4加电)=nyoyaypy(2-7)nzq生P二000 1将公式两端同时乘7(用尸,计算出两端各自矩阵,使矩阵合适的对应项对应相等,求解出各部件的转角9。.求解仇根据等式7(4/)h(4)1(4):丁(4)1(4)求解4。首先计算等式的右端61tx60x6ax6Px)=1以广®3胪(以籽电)加4)=i%R,,6:Py6电64 6生6P二0 0 0 1其中(2-8)6〃x=一5s23-。4。5。23)-$4s6。236〃y=4s6—JC6s4=。6($5c23+°4c5s23)一54s6s23f>°x=$615s23—C4c5c23)-C6s4c23f>°y=。5s4$6一。4c6l°z=一$6($503+0。5“3)-QS4s23;/=23+0S5c231ay=-s4s56az~。4s5s23—。5c23lpx=ax+a2c2+a3c13+d,s23bPy=~^26Pz=a2s2+“3$23-d4c23下面计算等式左端-15-哈尔滨工业大学工程硕士学位论文/=:的7=C、M+"卢n.0。4一。£ayc}-axs{°z az0 0C|Px+PyS|ClPy-P.MPz-d\1(2-9)令矩阵方程左右两端所以(2,4)元素相等,得到9P)一=一4(2-10)0=atan2|j-一。tan2(一35(2-11)'"IpJ[±比+〃;一1225)式中〃tan2类似于〃tan函数,但计算时更稳定。在C++语言里返回的是指方位角,即与x轴的夹角。返回值为弧度,值域为(-加万],定义如下:y>0,x<0y<0,x<0y>O,x=Oy<O,x=Oy=0,x=0(2-12).求解%在公式(2・8)和(2-9)的计算结果中,我们能够找到合适的对应项求解四。令矩阵方程两端的(1,4)和(3,4)元素对应相等,得到PxJ+"⑼=4+02c2+。3c23+4邑3 八,八, (2-13)P二一4=。2$2+43s23-d4c23求得f \n个 A2+B2-113200 d-八02=atan2——/ -atan2—(2-14)±7134560C(A2+B2)-(A2+B2-113200)2) ⑺式中-16-哈尔滨工业大学工程硕士学位论文A=PXC\+Pys\-1603=凡一449.5.求解4根据(2・13),可推出A—42c2+“3。23+d4s23B=a2s2+43s23-14c23将(2-15)两式做三角变换,得到如下结果二〃(人一华力+生仍一心邑)(A-a2c2)2+(B-42s21二七(A-a2c4一么仍一七邑)(A—a,。2)〜+(B—々iS?)(2-15)(2-16)进一步可以推出023=夕2+,3=a32d/A-a2c2)+%(8〃252)
〃3(4-〃2c2)-&(8-〃2$2)(2-17)通过公式(2-17)我们可以看出,当4、冬的值固定时,a的值是唯一确定的。由于4+4的值可能超过atan2的值域(-必乃],所以不能用该式求解”。公式(2・a)两端同乘步(3%尸可得才("名尸7=7包工7(,4)才(4)汀(4)首先计算等式右端一。6(s3s5-C3c4c5)-。3s456。6(。3s5+。4c5S3)-$3s4$6C4s6+C5c6s40$6($3s5一。3。4。5)一6s4
~Sfi(。3s5+。4c5s3)—C6s3s4C4c6— 4s60。5s3+。3c4s5C453s5—。3c$S4%0a2+03c3+d4s3
a3s3-c3d401(2-18)下面计算左端令矩阵方程两端的午2一沁§10(1,4)4G
一*2~C\
0$2“00一(年2+4电)-&4-岫)-d21元素对应相等,pxPyPz1(2-19)7冏幻*=得0-17-哈尔滨工业大学工程硕士学位论文p.S2-452-a\C2+PxC\C2+PxS\C2=+〃3。3+"4s3 (2-20)所以4=〃tan2一 3+澳-580 _1735489 (2-21)、士)449600-(5.+Aq-580)2,式中A,B与公式(2-15)推导结果中相同。a的两个值与a的两个值一一对应。经数学验证:当区开根号取正时,对应a开根号取负。当。2开根号取负时,对应a开根号取正,a共有四组解。.求解。4公式(2-8)两端同乘7(%为,名尸可得7@纵名尸7=/(%,4©) (2-22)为了简练,下面将不一一将左右两端结果进行展示。根据计算结果,令矩阵方程两端对应项(1,3)和(3,3)相等,得S4S5=axS\~%。c,Vz%+Lq+qsh(2-23)当sing。0时,这种情况可以通过检查上式是否趋近于零来判断。如果都趋近于零,则“的值可以任意选取(一般选择不改变当前的名)/、ars.-ac,%=Qtan2 ~~匕 、 (2-24)I生£23+。£+。/后3).求解a公式(2-8)两端同乘才(d尸可得组6,%,a0『叮中&4) (2-25)令矩阵方程两端对应项(1,3)和(3,3)相等,得S5="4岛+23c4)-a(C]$4-S]C23c4)+O'23c4(2-26)%=3%+4Ms23-〃/23所以e=3rctan1+qc23c4)-4(('&-$△-)+生s23c4] .)l 。£523+%6科23一生C'23 J-18-哈尔滨工业大学工程硕士学位论文.求解g6令矩阵方程(2-25)两端(2,1)和(2,2)对应相等,得$6=%($£一"23s4)—%(午4+S]C23s4)一为$23s4。6= -。%氏+%C23c4c5)-%(卯5+川23$5fC23c4c5)+%(。23邑+S23c4c5)’所以4=4tan2?($巾4 -4,(qc、4+山&4)一〃323s4(2-29)、及X(S|S4c5一C|S23s5+Cg23c4c5)一〃y(qS4c5+5/2355-S|C23c4c5)+%(。23%+$23c4c5),%即4求出来只有一组解,但由于物理结构的特性,机械臂腕关节的“翻腕”动作使得心即4共两组解,与前面四组解相乘,共八组解。“翻腕”公式如下:0\=6>4±180°(当名>0时,a取4一1800当仇<0时,a取仇+180°),4=_& (2-30)4二&±180°侗团2.4本章小结本章首先叙述了喷涂机器人轨迹规划总体框架设计,明确了仿真模块、纹理映射模块、喷涂规划模块、辅助模块各自的作用以及几个模块之间的关系,其中辅助模块主要负责文件加载及输出结果保存等;然后说明了虚拟机器人标定的目的、方法及标定过程;最后重点介绍了面向喷涂的逆运动学分析,给出了机器人逆运动学从末端执行器到机器人基座的完整求解过程。-19-哈尔滨工业大学工程硕士学位论文第3章基于八叉树理论的纹理映射技术引言纹理映射是一种基于计算机图形学,在不改变模型的基础上,对模型进行细节刻画的技术,该技术使模型在视觉上更具真实感,多用于游戏和电影复杂场景的演染。由于要求实时性较高,该技术并不存储映射结果的边界信息、法向信息等,无法输出轨迹规划所需要的信息。由此可见,传统的纹理映射技术不能满足轨迹规划前处理的需求的。而导致该问题的根本原因是传统纹理映射技术是不改变模型的,即不对网格进行处理,这样一来就无法提取映射结果的色块边界。本章针对传统纹理映射不能满足轨迹规划前处理需求问题,提出了一种基于八叉树理论的纹理映射技术。通过对网格进行剖分、平滑等处理,保存了纹理映射结果的各种信息,很好的解决了传统纹理映射在该方面的不足。基于八叉树理论的网格剖分八叉树是一种数据结构,由一个根节点和若干个子节点构成,一般根节点为模型的最小正方体包围盒。该数据结构常用于三维空间分割,每一次分割会产生八个新的子节点,每个子节点的编号如图2-8所示,基本原理如图3-1所示。每个节点的数据结构类似于包围盒,只需要存储最大值和最小值两个极值点。例如第i个节点,可表示为:OctR={(x/max,y.111axe11m),(xZmin,y,min,z,min)} (3-1)由于八叉树具有严格的父子关系,每个节点除了极值点还需要存储一组指向子节点的指针,保证每个节点均可以在内存中被取到,避免内存泄漏。八叉树剖分的停止条件可以根据实际需求进行设置,例如设置剖分层数、判断空间中是否含有模型顶点以决定是否停止剖分等,多数情况下停止条件不止一种。图3-1八又树原理-20-哈尔滨工业大学工程硕士学位论文网格剖分停止条件的判断方法本课题网格剖分的停止条件有两个:一是剖分层数;二是选择含有Mesh格子继续向下剖分,而不含有原Mesh的格子停止剖分,所谓格子就是子节点,以下所有子节点均称为格子。具体流程如3-2所示:图3・2基于八叉树网格剖分流程图由图3-2可以看出,网格剖分算法的关键在于两个停止条件的判断,其中是否到达设置的剖分层数相对容易,只需在剖分过程加入层数参数,每进行一次剖分层数减一,当层数为零时停止剖分。而格子中是否含有Mesh的判断就相对复杂一些,对于含有Mesh的格子定义为有效格子。本课题加载的模型为STL或IGS模型,这两种模型(Mesh)均为三角面片模型。剖分时所有的格子为正方形。经过对空间中正方体和三角面片的空间相对位置关系的总结,格子中含有网格的情况分为三种:(1)三角形面片三个顶点至少一个在格子内部,如图3-3a);(2)三角形的边与格子的面相交,如图3・3b);(3)格子的边与三角形的而相交,如图3-3c)。第二、三种情况可能同时存在,只要其中一种有效则该格子为有效格子。-21-哈尔滨工业大学工程硕士学位论文a)点在格子内b)边与格子面相交c)棱与三角面片相交图3-3格子与三角面片位置关系第一种情况判断较为简单,只需要判断三角形的三个顶点是否在格子内,只要有一个点在该格子内,则判断为有效格子。设点P为三角形的一个顶点,判断公式如下:巴YXmax,Vmin<AVXnax (3-2)/min<^<Zmax三个等式同时成立时,则判断点P在格子内。对三角面片的三个顶点分别进行判断,只要有一个顶点在格子内,则判断该格子为有效格子。第二种情况判断则复杂些。首先一条线与一个面相交,线段两顶点一定在面的两侧。以正方形格子底面为例,判断一条线与一个面相交的情况。为了说明方便,设底面正方形四个顶点分别为al、a2、a3、a4,线段两顶点分别为pl、p2。由图3・3可以看出正方形四个顶点的z值相同,alz表示al的z值,x、y同理。a2x、a2y分别为x、y的最大值,a4x>a4y为x、y的最小值。设直线与平面的交点为p,则判断公式如下:(plz-alz)x(p2z-alz)<0小_Qlz-〃lz)x(〃2x-plx)PX"(p2z-plz)+P”py=(alz—plz)x(p2y-ply)(p2z—plz)+ply(3-3)a4x<px<a2x44y<py<a2y如果线段与平面满足公式(3-3),则线段与平面相交,格子判断为有效。一个三角形的三条边要分别与一个格子的六个面做相应的判断,只要有一条边与一个面相交,则判断该格子为有效格子。-22-哈尔滨工业大学工程硕士学位论文第三种情况判断类似于第二种,但稍有不同。四边形的法向为x、y、Z轴方向中的一个方向或者反方向,可控性较强。而三角形面片的法向基本不可控,这就导致了判断方法的不同。己三角面片和ala5棱为例进行推导。首先判断ala5两点是否在面的两侧。其原理如图3-4a)所示:a)判断线段顶点是否在面的两侧 b)判断交点是否在面内图3-4判断相交原理图如果ala5两点在面的两侧,则满足如下公式:,=(p3-pl)x(p2-pl)](〃5-pl).司x[(al-pl).司<0然后判断正方形格子的棱与三角形的交点在三角形内部还是外部。将三角形的三个顶点向与ala5垂直的底面投影,投影结果如图3-4b)所示,点在三角形内部则满足公式:%=(“2-H)x(pl-a\)万2=(pl-t71)x(p3-£zl)<&=(〃3-al)x(p2-al) (3-5)4♦力2>04.网>o三角面片分别与正方形格子的12条棱分别进行相交判断,只要有一条棱与三角面片相交,则判断该格子为有效格子。针对三角面片与格子的三种空间位置关系,相应的给出了三种判断方法。这三种不是简单的对立关系,甚至有的有效格子是符合这三种情况的。为了避免重复判断,提高算法的效率。首先从计算简单的第一种情况进行判断,如果第一种判断为有效格子,则不进行后面的两种判断。如果第一种无效,则进行第二种情况的判断。如果第二种情况仍无效,则进行第三种判断。同样,如果第二种有效,则停止判断。如果三种判断情况均为无效,则该格子视为无效格子,停止剖分。对于无效格子停止剖分是非常有意义的,避免了大量的无效计算,减少了内存的使用,从而加快了算法的运行速度。例如要将一个模型分为七层,分到第二层时-23-哈尔滨工业大学工程硕士学位论文一共有64个格子,其中判断出15个格子为无效格子,而这15个格子分到第七层时将生成32768个格子,通过判断就避免了大量的计算。即使在网格剖分过程中不进行有效格子的挑选,最终在进行有效面挑选时,也必须挑选出有效的格子。最终结果如图3-5b)所示:a)原始网格 b)剖分结果图3-5网格剖分结果剖分后的有效格子经过数据扩展成为上图所示结果。上文已经提到为了节省内存,每个格子只存储最大值点和最小值点以及指向叶子节点的一组指针,但两个极值点是无法构成格子的六个面的,所以为了得到完整的信息需要通过两个极值点先构建八个顶点,然后通过各顶点之间的位置关系构建六个面,最终这些数据组成一个体。有效格子的具体存储数据结构如图3・6所示:HexahedronSetHexahedronld Pointld Facetld图3-6有效格子数据结构图中S路线为上层所保存的数据,C为数据抓取路线,确定到哪个集合取抓取数据。共四种数据集合:六面体集合、原始模型三角面片集合、四边形面片集合、点集合。整个数据结构存储了上下层的关联,而且这种关联不是单一的。例如一个面由多个点组成,而一个点又可以属于多个面。-24-哈尔滨工业大学工程硕士学位论文3.2.2基于平均法向的有效面选择由图3・5a)可以看出,原始网格为单一表面,其中灰色表示面的正方向,黄色表示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论