资源描述
逆向工程技术与应用Reverse Engineering Technology and Application 摘要:文章综合介绍了逆向工程技术基本概念,重点分析了逆向工程技术过程, 包括数据读入、数据预处理、特征提取、模型优化与再设计,其中表面数字化和 三维CAD建模是逆向工程中的关键技术,指出了应用领域,并给出了实际应用的 案例。关键词:逆向工程 特征 优化 再设计Abstract:The paper outlines the basic conception of Reverse technique, especiall the analysis of the technique process,including data capture , data preprocessing, feature extraction, model optimization and re-designing.Suface digitization and 3D CAD modeling are two key techniques in reverse engineering.Then introduce the application realm of reverse engineering technology and give an exampleKey words:reverse engineering feature optimization re-design1 引言新产品开发是企业确保市场竞争优势、维持企业生存及成长的重要机能。特 别是面对产品更新换代加快某些产品的市场寿命已经比新产品开发周期更短的 环境保持不断地推出适销对路的新产品是企业能够在市场竞争中取胜的基础。逆向工程技术(reverse engineering. RE)是相向工程技术而言的。也称为反求 工程技术訂。它是近年来发展起来的一种产品数字开发方法.它的出现极大地缩 短了产品的开发周期。提高了产品精度.目前越来越受到人们的关注和重视H。 传统的正向工程通常是从概念设计到图样.再制造出产品.也就是说,传统的设 计是由未知到已知、由想象到现实的过程.是“从无到有”:而逆向工程是在现 有实体测量数据的基础上重构其三维CAD信息模型的过程,将模型的格式文件加 以转换.就可以被快速原型制造系统所接受.从而实现了产品的快速开发.其是” 从有到新”。逆向工程包括数据读入、数据预处理、特征提取及建模、STL模型 的优化与再设计。见图 1。尖物模贲一數据劃SL获取1枚据预壮瘪1亠上犠也优化快進成也补一1图1逆向工程流程图2逆向工程的技术过程2.1数据输入数据的读入是进行逆向工程的第一步.将实体的表面进行数字化。根据 数据测量方式的不同可分为接触式测量和非接触式测量。接触式测量方法 通过测量探针与样件的接触而记录样件表面点的坐标位置。根据测量探针 的工作方式又可分为触发式和连续式测量。三坐标测量机是最常见的接触 式测量方式。见图2。非接触式测量方法主要是基于光学、声学、磁学等领域中的基本原理. 一定的物理模拟量通过适当的算法转换为样件表面的坐标点。其中较为成 熟的是光学测量方法.有激光扫描、结构光、莫尔条纹、数字图像处理等 方法E3-5,根据实体的数字化.从而得到逆向工程所需要的点云数据。 2.2数据预处理数据预处理包括异常点去除、数据精简、数据分块。首先要对数据扫描 所获得的点云数据进行异常点去除.包括对杂点和噪声点的去除。必须要 把这些异常点给剔除掉才能进一步保证点云数据的精度。一般采用人机交 互的方法来删除异常点。删除后.点云数据中的点云几乎可以全部认为是 有效点;但是还是要对点云数据进行下一步的数据精简.因为每次扫描都 得到了大量的点云数据.海量的点云数据在计算机处理过程中对计算机需 要有较高的硬件配置.并且在处理过程中耗时较长.而且并不是所有的点对于后续的特征提取和建模都是有用的。数据分块是根据组成实物外形曲 面的子曲面的类型,将属于同一子曲面类型的数据成组.这样全部数据将 划分成代表不同曲面类型的数据域.为后续的曲面模型重建提供方便。数 据分块根据分块的方法可以分为基于边 皿、基于面【7和基于边和面同的数据 分块混合技术。一般采用的是基于边和面的数据分块混合技术。2.3特征提取及建模点云数据经过预处理后得到的是分块的点云.每一个分块的点云对应的是一个或多个已定义特征。下一步的工作就是把这些分块的点云的特征表 示出来.也就是特征提取。特征提取是逆向T程中最关键的环节.直接决定了模型的精度。其主要的是对曲面特征提取。特征曲面分为规则曲面、 扫掠曲面、自由曲面三大类。规则曲面是普通满足式(1)的二次曲面:F(x, y, z)= c x2 + c y 2 + c z2 + c xy + c yz + c xz + c x + c y + c z + c(1)12345678910平面可视为特殊的二次曲面。对二次曲面的特征提取一般是基于最小二 乘原理和区域生长的方法来获得数学参数【9。扫掠曲面分为旋转曲面和托伸 曲面。对于拉伸曲面则是确定其拉伸方向及轮廓线。浙江大学柯映林教授 提出了基于最小主曲率方向且无需三角化的拉伸方向直接提取算法【9。对于旋转曲面主要是确定其旋转中心轴.一般根据旋转面所有法矢均与旋转轴 相交的性质利用直线几何理论来确定旋转轴。自由曲面分为凹面和凸面.由于凹面和凸面很难用精确的数学表达式来表达.因此可以采取曲面细化成 曲线的方法进行特征提取:也就是用蒙皮的方法.对凹面或凸面进行点云 切片从点云切片中获得截面曲线用截面曲线来近似的表达自由曲面【9。见图3。进行特征提取后可以进行建模从而得到 STL模型。2.4模型优化再设计STL模型优化包括三角形个体的形状优化和保证三角网格与实际曲面的 误差在精度要求范围之内两个方面。其中三角形个体的形状优化要尽量保 证三角形均匀.避免出现狭长三角形。由于三角网格是用三角平面片逼近实物曲面.必然会有误差.而网格的空间形状优化就是保证三角网格与实 物曲面的误差在精度要求的范围之内。首先对得到的初始模型投影到二维平面进行优化.使网格模型的三角形形状规则.大小均匀:然后再映射到三维空间实现最后的优化。STI,模型的再设计包括编辑(复制、移动、旋转、缩放)、害0、拼接和 局部变形等功能。通过对读人的STL模型进行编辑.将模型转换到合适的 位置.然后进行STL模型的分割.即将零件的三维模型分割形成多个子模 型.或通过规则形体的STL模型的拼接.产生复杂的STL模型以及局部曲 面重构设计等。3表面数字化技术高效、准确地实现样件表面的数字化,是实现逆向工程的基础和关键技 术之一。在逆向工程中,传统的数字化方法是采用接触式测量,其典型代 表是三坐标测量机(Coordinate Measure Machine,CMM)。CMM通常是基于力-变形原理,通过接触式探头沿样件表面移动,并与表 面接触时发生变形检测出接触点的三维坐标。CMM对被测物体的材质和色泽 没有特殊要求,可达到很高的测量精度一(土 0.5卩m ),对物体边界喝特征 点的测量相对精确,对于没有复杂内部型腔、特征几何尺寸多、只有少量 特征曲面的规则零件反求特别有效。其主要缺点是效率低,测量过程过分 依赖于测量者的经验,特别是对于几何模型未知的复杂产品,难以确定最 优的米样策略和路径。随着快速测量的需求及光电技术的发展,以计算机图像处理为主要手段 的视觉测量技术得到飞速发展bon。激光三角法是目前最成熟,也是应用最 广泛的一种主动式视觉方法。激光三角法具有测量速度快,可达到较高的 精度(土 10卩m )等优点。其存在的主要问题是对被测表面的粗糙度、漫反 射率和倾角过于敏感,存在由遮挡造成的阴影效应,对突变的台阶和深孔 结构易于产生数据丢失。投影光栅法的基本思想是把光栅投影到被测物表面上,受到被测样件表 面高度的调制,光栅投影线发生变形,变形光栅携带了物体表面的三维信息,通过解调变形的光栅影线,从而得到被测表面的高度信息。投影光栅 法的主要优点是测量范围大、速度快、成本低、易于实现,缺点是精度较 低(土0.02mm ),只能测量表面起伏不大的较平坦物体,对于表面变化剧 烈的物体,在陡峭处往往发生相位突变,在测量精度大大降低。由于以上方法均无法测量物体的内部轮廓,因而断层测量近年来呗认为 是最有发展前景的数字化方法而受到重视血。断层测量是利用计算机断层 扫描技术沿某一方向逐层扫描实物断面获得一系列截面图像的测量方法。 断层数据的采集方法为非破坏性测量和破坏性测量两种,非破坏性测量主 要有CT测量法、MRI测量法、超声测量法和激光测量法等,破坏性测量主 要有层去扫描法。目前,设备价格昂贵、获取数据的精度较低,对实物的 材料有所限制是非破坏式方法的主要不足,而破坏式方法相对来说精度较 高,但不宜用于单件或贵重零件的测量,而且花费时间较长。由于CMM的测量精度与视觉方法在测量速度以及范围方面的优势,基于CMM与视觉方法集成的数字化方法也格外受到学者们的重视。其基本思路是 先由视觉系统提供一个被测物体的初始整体模型,再由该模型引导CMM进行有针对性的测量,从而提高CMM的测量效率以及弥补视觉技术再精度方 面的不足bl。4 CAD模型重建技术与软件逆向工程三维CAD模型重建后续产品加工制造、快速成型、工程分析喝 产品再设计的基础,其目标是根据离散的数据点集构造出一段光滑、连续 的CAD模型,因此,模型重建技术是逆向工程的关键技术 t4,i5。在实际的产 品中,只由一张曲面构成的情况不多,产品形面往往由多张曲面混合而成。因此 在曲线、曲面拟合之前还要进行的工作是数据分割。由于组成曲面类型的不同, CAD模型重建的一般步骤为:先根据几何特征对点云数据进行分割,然后分别 对各个曲面片进行拟合,再通过曲面的过度、相交、裁剪、倒圆等手段,将多个 曲面“缝合”成一个整体,即重建的CAD模型。测量数据分割完成后,根据曲面造型方法的不同,分为基于曲线的曲面 造型方法和基于测量点的曲面造型方法。基于曲线的曲面重建方法的原理是在数据分割的基础上,首先由测量点 插值或拟合组成曲面的网格样条曲线,再利用放样、混合、扫描等曲面造 型功能进行曲面重建,最后通过延伸。求交、过渡、裁剪等操作,将各曲 面片拼接或缝合成整体的复合曲面模型。基于测量点的曲面重建方法的原理是直接建立满足对数据点的插值或 拟合曲面,既能处理规则点也可直接拟合散乱点。对于大量数据点,支持 曲面对点的最佳拟合。曲面一般选取 B样条表示,在曲面重建中,能够构 造出标准的B样条曲面。基于断层数据的表面重建方法最早采用基于轮廓线的描述方法,后经发展,形成了如平面轮廓的三角形算法、基于表面轮廓的Delaunay等多种算法山。基于表面的优点是可以采用比较成熟的计算机图形学的方法进行显示, 计算量小,运行速度快,借助于专业硬件支持,可以实现实时显示,但表面重建 需要首先对断层图像进行分割以提取出断层数据,由于目前分割技术所限,缺少 准确有效的方法,在分割时细节信息容易丢失。伴随这逆向工程及其相关技术理论研究的深入进行,其成果的商业应用也日渐受到重视,涌现出了大量的商业化逆向工程CAD建模系统。当前,市场上提供了逆向建模功能的软件达数十种之多,但大致可以分为两类: 一是专用的逆向软件,如 Imageware、Geomagic、Polyworks、CopyCAD、 ICEMSurf 和 RE-soft 等,如 PTC 的 Pro/scantools 模块、UG 的 Point cloudy 功能等。一般,无论是专用的逆向软件,还是提供逆向模块的正向 CAD/CAM/CAE软件,在整个逆向工程的CAD模型建构上,都还不具体优秀而 有理想通用的处理能力,在当前的逆向 CAD建模中,结合实际中不同需求 的逆向特点,将通用型CAD/CAM软件与逆向软件相结合,是有效解决曲面 重建工程问题的重要方法。5基于STL模型的逆向工程实体建模模型是以三角形集合来表示物体外轮廓形状的几何模型 16】。在实际应用 中对STL模型数据是有要求的,尤其是在STL模型广泛应用的RP领域,对STL 模型数据均需要经过检验才能使用。这种检验主要包括两方面的内容:STL模型数据的有效性和STL模型封闭性检查。有效性检查包括检查模型是否存在裂隙、 孤立边等几何缺陷;封闭性检查则要求所有STL三角形围成一个内外封闭的几 何体17。文中讨论的STL模型重建技术中的STL模型,均假定已经进行有效性 和封闭性测试,是正确有效的STL模型。由于STL模型仅仅记录了物体表面的几何位置信息,没有任何表达几何体之 间关系的拓扑信息,所以在重建实体模型中凭借位置信息重建拓扑信息是十分关 键的步骤。另一方面,实际应用中的产品零件(结构件)绝大多数是由规则几何 形体(如多面体、圆柱、过度圆弧)经过拓扑运算得到,因此对于结构件模型的 重构来讲拓扑关系重建显得尤为重要。实际上,目前CAD/CAM系统中常用的 B-rep模型即是基于这种边界表示的基本几何体素布尔运算表达的。因此STL模型重建的过程如下:首先重建STL模型的三角形拓扑关系;其 次从整体模型中分解出基本几何体素;重建规则几何体素;然后建立这些几何体 素之间的拓扑关系,最后中间整个模型。5.1三角形拓扑关系重建STL模型中仅仅包含产品的几何位置信息,而且 STL中的三角形顶点是 重复记录的,其重复度为N (N为以该点为顶点的三角形数目)。为了再后 续步骤中提高运算效率,有必要首先去除冗余数据,提高存储和运算效率 Ml,同时建立STL模型三角形拓扑关系,即建立三角形的边信息结构,记录每 条边的左右三角形。考虑到排序运算的效率,我们采用双向链表的方式记录每一 条边的左右三角形信息。三角型拓扑关系的建立不但精简了 STL模型数据,而且是后续几何体素分离 的基础。5.2 STL模型几何体素分离由于STL模型是由三角形集合构成的,因此直接利用三角形数据无法将不同 的几何体素互相分离。如果将描述模型平面部分的三角形合并,然后提取出平面 的边界,利用边界就可以将不同的几何体素区分开来。平面是最简单的几何元素。根据平面特性,我们可以得到平面边界提取准则: 如果具有相邻边的两三角形法矢平行,则这两个三角形构成一个平面。以此外推, 所有与该平面具有相邻边且法矢平行的三角形都属于该平面。平面识别过程是一个递归循环:设任一三角形为“种子”三角形,其法矢为N。N为与“种子”三角形有相邻边的三角形的法矢,计算N、N的夹角0i0i0二arccos( N0 :竹)。若08( 5为三角形合并阈值),则三角形i可以与“种 lNN子”三角形合并。发生三角形合并后,原来的“种子”三角形边界扩充为多边形 边界,“种子”三角形成为“种子”多边形。以新得到的“种子”多边形边界为 依据,寻找相邻三角形,再重复以上合并步骤,使“种子”多边形不断长大,最 终当所有相邻三角形均无法与“种子”多边形合并时,递归停止。这时得到的是 由多条边界组成的平面多边形。此时我们发现,即使是简单矩形,依然是由很多短边组成的多边形,这显然 不适合特征造型的要求。为此还需要进行边直化。边直化就是将共线的短边合并 成为一条直线边。完成边直化以后就得到了正确的平面多边形,其法矢就是初始 三角形的法矢。对完成平面边界提取的模型基础,从边界边链表中的任意一条边 开始,总可以找到与它位置相连的组成一个封闭几何体的所有边。这时,剩下的 边就成为另一个与当前几何体无几何位置联系的独立几何体。当边界边链表中所 有的边都遍历分离以后,就可以得到所有组成零件的独立几何体的个子的边集 合。按照该方法,类似阶梯孔之类的特征将会被分解为n个(n为阶梯的层次数) 独立的几何体。体素分离的过程见图2。图2a是STL模型,图2b是提取平面边界后的模型。 我们可以看到,原来STL模型上所有的平面都被提取出来了,而诸如圆角、圆柱 面。圆锥面等二次曲面部分则还保留着三角形描述。图2c是体素分离以后的STL 模型(成为4个独立的几何体素)。对于这些独立体素,我们需要将其中规则几 何体重新利用参数化方法重构,这样才能使最终重建模型成为一个参数化的、有 一定拓扑关系的实体模型。(b)提取平面边界后的模型(a)STL模型(c)分离出的四个元素体 图2几何体素的分离5.3规则几何体素重构由于大多数结构件模型可以分解为平面和各种二次曲面(圆柱面、球面、锥 面等)的组合,因此将这些规则几何体利用参数化方法重构以后,就可以得到具 有参数信息的结构件模型。对于由平面围成的体素,可以直接将所有平面拼合在一起构成实体体素,对 于包含圆柱面、圆锥面等非平面的体素。根据这些几何体的特点以及STL模型能 够提供的信息,我们对几类常见几何体的判断给出了准则。通过实际建模证明, 这些准则可以较准确地重建这些几何体。(1)圆柱(外圆柱面、内孔面)体素重建由于STL模型是用离散的数 据表示连续曲面,因此模型中的圆(柱)实际上是一个多边形(体)。对于圆柱面的判断,我们根据其几何特性提出如下准则:条件1 设组成圆柱的三角形集合为0,则0内所有具有相邻边、法矢共 面且平行的三角形组成圆柱的两个端平面,见图3a。条件2内所有具有相邻边、法矢共面但不平行的三角形组成圆柱面图3b。设圆柱侧面三角形的法矢N (i = 0,1,m,m为三角形数量),C为三个法ii矢的混合积:C 二(N X N ) N ,i = 0,1,m-2jii+1i+2若C二0,则所有三角形法矢共面。同时,由于任意两法矢均不平行,故这些三i角形组成圆柱面。以上准则可同样适用于等半径过度圆柱面的判断。(a)圆柱端平面法矢(b)柱面三角形法矢(共面且平行)(共面但不平行)图2圆柱体素边界的提取圆柱体素几何参数提取方法如下:在确定了组成圆柱面的三角形后,就可以 根据这些三角形确定圆柱面的直径、高度、几何位置等参数。首先合并这些三角 形的公共边,得到两个由三角形边界边组成的多边形(即圆柱上下端面的圆)然后 根据多边形顶点数据,计算出两个多边形的几何重心(圆柱位置参数)、外接圆直 径(即圆柱直径)以及由两个几何重心确定的圆柱方向、高度。条件1设组成圆台(锥)的三角形集合为0,则0内所有具有相邻边、法 矢共面且平行的三角形组成圆台(锥)面的端平面。条件2 0内所有具有相邻边 法矢不共面的三角形组成圆台(锥)面。圆台(锥)体素几何参数提取方法如下:首先,合并组成圆台(锥)面的三 角形的公共边,得到由边界边组成的多边形。如果得到两个多边形,则该体素为 圆台,若只有一个多边形(另一个多边形退化为一点)则该体素为圆锥,根据得 到的边界多边形,可以计算出其重心、直径。对于圆台,得到上下圆面直径、方向、几何位置、高度;对于圆锥,得到底面直径、方向、几何位置,由于圆锥只 有一个边界多边形,因此需要借助侧面三角形计算圆锥体的高度。(3) 其他二次曲面体素重建 在完成平面、圆柱面、圆台、圆锥面的提 取后,利用剩下的尚未识别的三角形数据构造逼近曲面,并通过逼近曲面识别出 这些三角形是否为球面、抛物面等二次曲面,并提取二次曲面相关参数。有关通 过逼近曲面识别球面、抛物面、旋转面等的算法很多。根据计算出的曲面类型和 参数,利用现有几何造型软件(如ParaSolid)可直接构造出几何体。6逆向工程技术应用实体逆向工程的应用需求主要有两方面:一方面,作为研究对象,产品实物 是面向消费市场最广、最多的一类设计成果,也是最容易获得的研究对象;另一 方面,在产品开发和制造过程中,虽已广泛使用了计算机几何造型技术,但是仍 有许多产品,由于种种原因最初并不是由计算机辅助设计模型描述的,设计和制 造者面对的是实物样件。这些都需要借助逆向工程技术将实物模型转化为CAD 模型。借助已有的德国Steinbichler公司的COMET非接触式光学扫 描仪和 UG/Imageware软件,进行了部分产品模型的实例应用,如图25所示。图3鼠标点云图4重建的鼠标CAD模型图5灯罩点云图6重建的灯罩CAD模型参考文献1 金涛.童水光.逆向工程技术M.北京:机械工业出版社,2003.2 邓家裎,韩晓建,曾硝.产品概念设计理论、方法与技术M.北京:机械工业出 版社, 2002.3 曾华明.逆向工程中的曲面重构技术研究D.重庆:重庆大学,2004.4 LAI XINMIN , ZNZHONGQIN . HUANG TIANZENG ZIPING . A Study of Reverse Engineering System Based on Vision Sensor for FreeForm Surfaces J. Computer & Industrial Engineering,2001(40): 215227.5 GUNTHER GREINNER. Scattered Data Interpolation Using Data Dependant Optimization Techniques J. Graphical Models,2002(64): 118.6 YANG M. LEE E. Segmentation of measured point data usingJ.Computer Aided Design 1999(31): 449457.7 PAUL J BESL,RAMESH C JAIN,Segmentation Through Variable-Order Surface FittingJ.IEEE Transaction on Pattern Analysis and Machine Intelligence,1988,10(2):167 192.8 万耀青.阮宝湘.机电工程现代化设计方法M.北京:北京理工大学出版社.1994.9 柯映林.反求工程CAD建模理论、方法和系统M.北京:机械工业出版杜.2005.10 成思源,张湘伟,张洪,等基于视觉的三维数字化测量技术与系统J.机床与液压,2006 (5): 125127.11 方新,费仁元实物逆向工程的关键技术J.现代制造工程,2002(12):1821.12 王宗彦,梁远蕾,李奇敏,等.断层数据三维重构技术的研究进展J.工程图学学报, 2002,23(1):125130.13 Carbone V, Carocci M, Savio E, et al, Combination of a vision system and a coordinate measuring machine for the revrse engineering of freeform surfacesJ.The International Journal of Advanced Manufacturing Technology,2001,17(4):263271.14 金涛,童水光,等逆向工程技术M.北京:机械工业出版社,2003.15 柯映林,等反求工程CAD建模理论、方法和系统M北京:机械工业出版社,2005.16 王运赣.快速成形技术.武汉:华中理工大学出版社,1999.17 习俊通,严隽其快速成型中STL模型的自动修复方法与应用软件研究.中国机械工程, 2000,11(增刊):6164.18 崔树标,张宜生,梁书云,等.STL面片中的冗余顶点的快速滤除算法及应用中国机 械工程,2001,12(2):173175.
展开阅读全文