逆向工程技术及应用(ReverseEngineering)一、逆向工程概述作为产品设计制造的一种手段,在20世纪90年代初,逆向工程技术开始引起各国工业界和学术界的高度重视。特别是随着现代计算机技术及测试技术的发展,利用CAD/CAM技术、先进制造技术来实现产品实物的逆向工程,已成为CAD/CAM领域的一个研究热点,并成为逆向工程技术应用的主要内容。二、逆向工程组成1.定义逆向工程(ReverseEngineering)也称反求工程、反向工程等,是指用一定的测量手段对实物或模型进行测量,根据测量数据通过三维几何建模方法,重构实物的CAD模型,从而实现产品设计与制造的过程。逆向工程框图CAD曲面构建样品数据处理3D轮廓测量外形装饰模具加工CAM产生NC文档逐层产生STL文档模具成型产品复制RPM快速原型与传统的“产品概念设计→产品CAD模型→产品(物理模型)”的正向工程相反。逆向工程是在没有设计图纸或图纸不完整,而有样品的情况下,利用三维扫描测量仪,准确快速地测量样品表面数据或轮廓外形,加以点数据处理、曲面创建、三维实体模型重构,然后通过CAM系统进行数控编程,直至利用CNC加工机床或快速成型机来制造产品。特点2、逆向工程结构组成(1)逆向工程技术的硬件条件三维数据信息的提取是逆向工程技术设计中的重要内容,为产品三维信息的获取提供了硬件条件。德国GOM公司逆向(逆向)技术的软硬件技术与设备--AtosII流动式光学扫描仪、Tritop三维照相测量系统。英国LK公司的精密三坐标测量设备(非接触式)。体现了检测设备的高速化、廉价化和功能复合化的特点。在实际三坐标测量时,应该根据测量对象的特点以及设计工作的要求确定合适的扫描方法并选择相应的扫描设备。例如,材质为硬且形状较为简单、容易定位的物体,应尽量使用接触式扫描仪。但在对橡胶、油泥、人体头像或超薄形物体进行扫描时,则需要采用非接触式测量方法,但设备成本较高。(2)逆向工程技术实施的软件条件目前比较常用的通用逆向工程软件有Surfacer、CopyCAD。一些CAD软件也逐渐为逆向工程提供了设计模块。例如Pro/E的ICEMSurf和Pro/SCANTOOLS模块,可以接受有序点(测量线),也可以接受点云数据。其它商品化软件(如Delcam、Cimatron和Strim)的功能模块也逐渐丰富起来。为逆向工程的实施提供了软件条件。我国清华大学、华中科技大学、天津大学、西安交通大学等众多高校近年来也加强了对反求工程测量设备的研发,现已实现产品化,并广泛应用于机械、汽车、家用电器、医疗、轻工等行业中。由于国产设备价格远远低于国外,且功能不断增强,因此有较大的发展潜力与竞争力。(1)零件原形的数字化通常采用三坐标测量机(CMM)或激光扫描等测量装置来获取零件原形表面点的三维坐标值。激光测量可以采用CCD相机和3D激光扫描相结合,CCD相机用来确定实物的空间位置,指导测量路径的编程。激光扫描的速度已经达到15000点/秒,测得的数据量很大,可以充分表示零件表面信息,非常适合对于复杂自由曲面的测量。利用高分辨率CCD相机拍照片的方法,应用Tritop软件,通过定义相机型号、定义比例尺、定义计算参数、自动读取相片、进行完全计算,计算出非数码点、定义坐标系等过程,通过数码照片得到单张的点云数据。3.逆向工程阶段划分测量方法分类接触式数据提取方法非接触式探针测量磁光ICT断层扫描内外结构测量无损测量破坏性测量声外轮廓测量测量数据的定位(registration)需要将多次测量的数据转换到同一个坐标系中,形成同一坐标系下的一个完整的测量数据及图像。可将单张点云数据输入Atos软件,将测得的单张点云数据拼接成整张点云数据。(2)数据点的处理&几何特征提取按测量数据的几何属性对其进行分割,采用几何特征匹配与识别的方法来获取零件原形所具有的设计与加工特征。(3)曲面重构将分割后的三维数据在CAD系统中分别做表面模型的拟合,并通过各表面片的求交与拼接获取零件原形表面的CAD模型。(4)模型的检验与修正采用根据获得的CAD模型重新测量和加工出样品的方法来检验重建的CAD模型是否满足精度或其他试验性能指标,对不满足要求者,重复以上过程,直至达到零件的设计要求。(5)后续处理CNCRPM曲面重构可以说是逆向工程的核心,是以所量测的CMM或扫瞄点数据为输入数据来重新建构曲面模型。得到产品的数据后,选取适当的算法(或用逆向工程软件)进行点数据的处理,如:格式转换、噪声滤除、平滑、对齐、点线面与实体误差的比对后,再重新建构曲面模型,产生CAD数据。4、曲面重构曲面重构框图(1)扫瞄数据庞大数据点的处理,分块等(2)复合曲面特征数据提取一般而言,CAD模型是由许多不同的几何形状所组合而成,而每一种几何形状皆有其特性(二次曲面特征&自由曲面特征提取)。(3)曲面的光顺效果难以保证精度和光顺性有时是一对矛盾。曲面重构时面临的困难:三、逆向工程的应用1、逆向工程包括形状反求、工艺反求和材料反求等几个方面(推测原设计者的设计意图),在工业领域的实际应用中,主要包括以下几个内容:(1)新零件的设计,主要用于产品的改型或仿形设计(在原有产品基础上的创新)。(2)现成零件测量及复制,再现原产品的设计意图及重构三维数字化模型。(3)损坏或磨损零件的还原,以便修复或重制。(4)产品的检测,例如检测分析产品的变形,检测焊接质量等,以及对加工产品与三维数字化模型之间的误差进行分析。(5)艺术品、考古文物(稀世珍品)的复制。(6)人体中的骨头和关节等的复制、假肢制造(医学)。(7)特种服装、头盔的制造等(航空服装)。定制﹛﹜逆向工程开发流程产品模型模型数字化接触式测量(CMM)非接触式测量(激光扫描)测量数据的处理噪声数据滤波边界的确定测量点精简测量数据分段CAD模型重构空间几何(三次曲线,Bezier,B样条和NURBS物理概念(能量法或有限元法空间几何(三次曲线,Bezier,B样条和NURBS实体制造快速原型机(STL文件)数控机床(NC代码)反求出的实体模型产品检测和误差对比2逆向工程系统接口﹙1﹚NC代码输出将扫描点经过数字化点处理后(或者CAD重构),直接输出NC程序;﹙2﹚CAE网格信息输出将扫描信息直接转化为网格信息,输入到CAE系统,进行数据分析;﹙3﹚STL输出将扫描信息进行表面三角化,生成STL文件,实现快速原型制造﹙RPM﹚,从而实现设计、制造、检测集成闭环系统;﹙4﹚CAD输出将产品模型信息输出到CAD系统,实现产品再设计。逆向工程技术并不是孤立的,它和测量技术、CAD/CAM技术有着千丝万缕的联系。最终目标:从理论角度分析,逆向工程技术能按照产品的测量数据建立与现有CAD/CAM系统完全兼容的数字模型;但目前人们所掌握的技术,包括工程上的和理论上的(如曲面建模理论),尚无法满足这种要求。特别是针对目前比较流行的大规模“点云”数据建模,更是远没有达到直接在CAD系统中应用的程度(希望增加智能,测量后能够通过软件系统。3、逆向工程在CAD/CAM体系中的应用应用举例1.逆向工程技术的应用图1测量点云及其定位(1)读入点云数据。Surfacer可以接收几乎所有的三坐标测量数据,此外还可以接收其它格式,例如:STL、VDA等。将点群资料计算成三角形网格,可判断点群特征形状,利用网格的着色功能可观察点群的外观。(2)对点云数据进行判断,去除噪音点(即测量误差点)。在进行曲面拟合之前,要对数据点云进行判断并去除噪声点,以保证结果的准确性和精确性。Surfacer有很多工具来对点云进行判断并去掉噪音点,以保证结果的准确性。通过可视化点云观察和判断,规划如何创建曲面。(3)定位(registration)由于零件形状复杂,一次扫描无法获得全部的数据,或是零件较大无法一次扫描完成,这就需要移动或旋转零件,这样会得到很多单独的点云,一般测量设备得到的点群资料,并不在绘图坐标系上。因此,需要将点群资料,移动、定位到方便绘图的坐标位置上,即定位操作。Surfacer可以利用诸如圆柱面、球面、平面等特殊的特征信息将点云准确对齐。针对如图2(a)所示点云形状,其底面为一个平面,有以下几个步骤完成定位:(1)从底面点云中构造新点云,再用所构造点云生成一个平面;(2)选取显示菜单,视线对齐所构平面;(3)旋转90度方向后,利用interactive切片生成两个切片点云;(4)用切片点云生成二个圆,通过两个圆心构造一条直线;至此,定位的二个条件:一个底平面和一条直线已经生成,与点云一起构成群组,如图2所示。(5)在构图坐标系中,生成一个平面和一条直线,对群组用StepwiseRegistration完成定位,如图2(c)所示。(6)定位完成后,调用ResetHomeXform执行新的坐标位置设定,ResetXform将物体的设定坐标转换成与原点坐标一致,这两个选项配套使用。3.2曲线创建过程自由曲面点云数据经分段或切片之后,应根据需要判断和决定生成哪种类型的曲线。在反求工程中,最终目标是希望生成准确度高而且光顺性好的曲线、曲面,而准确度和光顺性永远是矛盾的。(1)判断和决定生成哪种类型的曲线。曲线可以是精确通过点云的、也可以是很光顺的(反映点云代表的曲线主要形状),或介于两者之间,根据构造实体类型选择生成曲线的类型。(2)创建曲线。由切片点云根据需要创建曲线,同时可以改变控制点的数目来调整曲线。控制点增多则形状吻合度好,控制点减少则曲线较为光顺。对点云信息运用CrossSection生成平行切片点云,而后构造相应圆弧曲线,如图3所示。图3曲线生成(3)诊断和修改曲线。可以通过曲线的曲率来判断曲线的光顺性,可以检查曲线与点云的吻合性,还可以改变曲线与其它曲线的连续性(连接、相切、曲率连续)。Surfacer提供很多工具来调整和修改曲线。3.3曲面创建过程在点的处理、曲线的处理和曲面处理的整个过程中,可以用Surfacer软件提供的各种诊断方法来保证精度。用前边生成的圆弧曲线作为截面线,用Loft命令生成曲面,注意所有生成曲面的线,有相同的方向和起始点,否则生成的曲面可能扭曲。对顶面提取点云,生成一个平面并延伸一定距离;–对生成的Loft曲面延伸一定距离使得与上下两个面相交;–求出Loft曲面与上下两个平面的交线并修剪,从而得到构造的曲面实体形状,如图4所示3.4诊断和修改曲面误差比对比较曲面与点云的吻合程度,检查曲面的光顺性及与其它曲面的连续性,并且可以进行修改,例如可以调整曲面的控制点让曲面更光顺,或对曲面进行重构等处理。由图4可以看出,构造曲面与点云的最大误差0.2039可以满足应用要求,这样的重构精度可以接受。(4)用MasterCAM等软件进一步处理模型可以通过接口文件导入到其他系统(UG、Ideas、SolidWork等)中进行进一步的处理(编辑、修改、光照仿真等操作)。2.逆向工程在汽车车身设计中的应用车身外覆盖件的逆向工作流程油泥设计汽车造型设计油泥模型制订曲面分块方案模型表面数据采集曲面数据质量评估最终造型审查曲面分析、修剪曲线曲面的构建、分析&光顺点云数据分析处理补测数据在车身外覆盖件逆向工程应用中有三项关键技术(1)快速、准确的从1:1汽车车身油泥模型上采集三维点云数据。(2)快速、高质量的创建曲面数学模型。(3)对曲面数学模型做正确的分析与评估。关键技术车身外覆盖件数据测量中,主体采用光栅投影式测量方法,其后采用接触式三坐标测量对车身上的曲面特征线进行测量,最终获得完整的车身外覆盖件的点云数据。如图1所示图1点云数据(1)三维点云数据的采集(2)车身覆盖件的分块车身覆盖件的表面是由若干个自由曲面片所组成的。这些曲面片大小、形状都存在着差异。如何将车身覆盖件表面分成合理的自由曲面分块,是构造车身覆盖件曲面数学模型的关键准备技术。如图2所示图2自由曲面分块在车身外覆盖件曲面模型的建立过程中,通常的构造方法有三种:a.网格曲面:又称点到面。即直接由点云