您的当前位置:首页正文

面向逆向工程的曲面再设计系统与接口技术

2023-03-10 来源:个人技术集锦
第33卷第6期 2013年6月 西安工业大学学报 Vo1.33 No.6 Journal of Xi’an Technological University Jun.2013 文章编号: 1673—9965(2013)06—463—07 面向逆向工程的曲面再设计系统与接口技术 刘 峥,孙 波 (西安工业大学机电工程学院,西安710021) 摘要: 在逆向工程研究领域,由于专业性和自主版权的要求,针对坐标测量机开发曲面评 测、设计系统一直是难点之一.文中基于OpenGL技术自底层构建三维曲面重构以及再设计 系统,为自主版权的逆向设计系统研究做出了探索.首先,实现点阵数据的读取以及基于双三 次B样条曲面的模型重构,进而完成基于控制点调控的曲面再设计.其次,运用造型API构建 了三维模型操作与场景控制系统,方便设计人员交互.最后,开发出基于STEP格式的自由曲 面接口模块,实现了系统与商用CAD系统的衔接.与传统的二次开发模式相比,采取自底层 开发三维设计系统的方法可扩展性好、灵活性强、具有自主版权. 关键词: 曲面重构;样条曲面;开放式图形接口;数据交换标准;曲面再设计 中图号:TN911 文献标志码:A 逆向工程通常用于从实物上采集三维曲面数 据,再将这些数据所描绘的信息转变为计算机内部 的模型.要实现被测曲面的数字化,首要的步骤是 中,采用样条曲面的方法对高级曲面建模仍然和国 外大型商用软件如UG、CATIA等有很大的差 距l3].对于自由曲面的三维建模环境开发,一般可 以采取两种方式,基于商用软件的二次开发模式或 者完全自底层构建三维环境.前者较为容易实现, 然而由于涉及版权以及应用的特殊性,针对专用加 工设备开发软件环境往往采用后一种方式[4].尽管 这种模式较为复杂,三坐标测量机配套的系统采用 OpenGL技术自底层构建的方式可以较为灵活的 实现特定的交互要求,而且可以享有自主版权. OpenGL是三维图形环境开发API,自主开发的许 多系统都基于该技术l_5 ].逆向工程系统在经过曲 面重构、误差评定后,一般还需要与商用CAD系 利用测量设备获取表面测量点的数据.在接触式测 量方式中,三坐标测量机是应用最为广泛的设备, 具有精度高和重复性好的特点.它可以在一次装夹 的情况下完成曲面几何元素的测量工作并借助配 套软件完成对所测元素尺寸的计算与误差分析[1]. 三坐标测量机应用测头沿着曲面的表面移动,测得 点阵数据后通过传感器传输到计算机内.对原始的 数据做分析与处理后采用反求的算法构建曲面模 型,进而分析并实现曲面的二次设计.该领域的研 究对于测量方式集成化、数字化发展有着重要的意 义和应用前景. 统衔接,实现曲面的性能分析以及数控加工,这就 涉及到接口技术的研究,其也是研究的热点问题之 一采集自测量曲面的点云数据处理是逆向工程 所面临的首要关键步骤,合理的重构曲面才能进入 下一步形状的调控,进而导人成熟商用软件系统生 成数控加工代码.在多种曲面拟合方式中,样条曲 面具有许多优良的性质,被广泛采用[2].然而,由于 .在数字化设计与制造环境中,STEP格式的中 性文件可以通用于现今几乎所有CAD系统,而且 作为面向产品全生命周期的信息描述方法,它具有 更加广阔的发展空间¨7 ].尽管依靠目前的接口技 术,还无法交换基于历史记录和特征参数的产品建 样条曲面的复杂性,目前自主研发的CAD软件 *收稿日期:2013 03 07 基金资助:陕西省科学技术研究发展计划项目(2011K07—11);陕西省教育厅科研计划项目资助(11JK0864) 作者简介:刘峥(1977一),男,西安工业大学讲师,博士,主要研究方向为CAD/CAM、微器件cAD Email:Z liumail@sohu.corn 464 西安工业大学学报 第33卷 模过程【9].但是对于自由曲面而言,型值点的处理 在程序中完成,后续的调控主要涉及到控制点, STEP文件中这些信息完备,不存在问题.综上所 述,采用二次开发方式基于商用系统构建三维环境 难于满足专用领域的特定需求,根据特定应用开发 逆向工程曲面设计系统以及相应的接口系统具有 重要的研究意义.如何自底层构建三维环境,实现 和动态的平移、旋转、缩放等控制功能.元素的显示 模块提供针对自由曲线、自由曲面、型值点、控制点 的显示控制功能,自由曲面的线框和渲染切换功 能,曲面切向矢量和法向矢量的显示功能等.在接 口技术中,和商用CAD软件的接口实现了基于 STEP的文件格式输出,和用户的接口则包括各种 数据报表以及评测报表.文中主要涉及基于STEP 的文件接口. 对采集点阵的处理、曲面重构、再设计以及模型的 输出是自主开发配套系统中的困难所在. 1 系统框架 如图1所示,面向逆向工程的曲面再设计系统 包括六个模块:曲面拟合与再设计,三维场景控制 与元素显示,接口技术与报表,数据库接口与数据 管理,应用程序框架和误差评定系统.曲面拟合与 再设计方法,三维场景控制与元素显示技术以及接 口技术是主要论述内容. 图1系统框架 Fig.1 The framework of the system 曲面拟合与再设计模块首先实现测量点阵数 据的读取、分析,然后基于双三次均匀有理B样条 曲面对控制点进行反求以完成曲面拟合功能.可以 在三维环境下观察反求结果,并提供误差分析功 能.根据误差分析结果以及特定的形状要求,可以 对控制点进行调控以实现自由曲面的再设计功能. 三维场景的控制模块除了涉及场景的光照、观测比 例、观测空间、颜色等设置,还包括场景操作中定量 2 面向逆向工程的自由曲面建模与 调控 2.1 自由曲面拟合 对于均匀双三次B样条曲面,表达式为 P(u, )一【 QM VT (1) 其中:M, ∈[0,1];u一[ 。 1];V一 [ 。 1];Q为控制点矩阵,每4×4控制一 片曲面. 坐标测量机测得的测头球心离散点坐标数据 作为型值点,经均匀双三次B样条拟合成曲面.在 进行球测头半径补偿后,这些型值点的坐标可用文 本文件的形式存储.曲线和曲面文件分别以“.cur” 和“.sur”为后缀,都是包含点系列,27、 三坐标值 的文本文件.系统通过对坐标文件的分析,自动判 断曲面的行、列数据. 由于坐标测量机测得的数据是离散的点阵数 据,要针对这些数据生成曲面就必须先进行控制点 的反求,系统中对均匀三次B样条曲面控制顶点的 反求是利用双向曲线反算法.先对 向的m组型值 点,按照B样条曲线进行控多边形的反求,得到顶 点.再将这些顶点看作是 向的型值点,再作( + 1)次B样条曲线的反求,即可得到均匀双三次B样 条曲面的控制点矩阵. 在进行均匀三次B样条曲线的控制点反求时, 需要补充两个边界条件才能使方程与未知数个数 相等.三坐标测量机获取的数据需要进行球测头的 半径补偿,在补偿的过程中涉及二阶导数矢量计 算.而由于在曲线的端点处理论上无法确定测头的 接触方向,所以采取提供端点处二阶导数矢量进行 信息的补充,即采用给定始、终点的二阶导数矢量 R 和R 的边界条件进行控制点的反求. 在始点处有 Q0—2121一Q2+R1;Q1一PI—R1/6 在终点处有 466 西安工业大学学报 第33卷 3三维场景构建 3.1三维元素显示 三维元素的显示见图4.该模块处理点对象, 自由曲线对象和自由曲面对象的显示.点对象又分 为型值点和控制点,曲面也包括理论值曲面、测头 半径补偿后曲面、误差曲面等部分.还包括切矢、法 矢等其他对象的显示. 图4三维对象的显示 Fig.4 Display of the 3D objects 所有的对象都采取参数化的形式,只有这样才 能对其属性进行修改,然后刷新显示.点对象包括 设置尺寸,设置颜色和选取功能等操作.这里的选 取功能是针对自由曲线、自由曲面再设计的要求而 提供的.文中的自由曲面、自由曲线是以三次B样 条拟合的.三次B样条具有很好的局部可控性,这 对于曲线、面的形状修改是很有利的.可以对想要 编辑的特征点(包括型值点和控制点)进行选择,然 后加以调控,最终对曲线、面的形状进行再设计.自 由曲线和自由曲面对象包括宽度设置、颜色设置、 显示模式和特征要素的显示控制等操作.对自由曲 面而言,其特征由型值点、控制点和曲面本身组成, 程序中对这三类特征分类加以控制显示.自由曲面 可以线框或渲染的形式显示,线框形式显示较快, 而渲染后的效果较好. 文中自由曲线、自由曲面采用B样条拟合的 方式,运用OpenGL中的NURBS函数实现.自由 曲面的显示主要经历以下步骤: 1)先声明NRUBS对象,GLUnurbsObj* pNurb,然后产生NRUBS对象pNurb—gluN— ewNurbsRenderer(). 2)设置NURBS对象属性.使用gluNurb— sProperty()函数,可通过传递参数设置各种属性, 如最大长度(GLU—SAMPLING—TOI ERANCE), 渲染模式(GLU—DISPI AY—M()DE),参数方向每 单位长度采样点数(GI U—D()MAIN—DIS TANCE)等. 3)定义节点.自由曲面要定义“、u两个方向 上的节点数组,且为两端重复度4,等间距分布. 4)调用gluBeginSurface()函数开始定义曲 面,调用gluNurbsSurface()函数计算曲面.其中的 参数含义为:nObj是指向NURBS对象的指针; uknotCount是“方向上的节点数,节点数为该方 向上控制点数与阶数的和;uknot是“方向上的节 点值数组;vknotCourit是u方向上的节点数; vknot是 方向上的节点值数组;ustride指定“方 向上的偏移量;vstride指定73方向上的偏移量;ct一 1Array指向控制点数组指针,控制点数组由型值 点矩阵双向反求后再转换为OpenGL数据类型得 到;uorder是 方向上的阶数,阶数为该方向上次 数加一;vorder是 方向上的阶数;type是曲面类 型.然后调用gluEndCurve()结束曲线定义. 5)gluDeleteNurbsRenderer()删除NURBS 对象. 3.2场景操作 场景操作情况如图5所示. 图5三维场景操作 Fig.5 The operations in 3D scene 视区设置进行绘图窗口区域的设定,它与 第6期 刘峥,等:面向逆向工程的曲面再设计系统与接口技术(boundedsurface) _467 MFC中“视”的概念紧密联系,需要根据“视”的大 小合理调整绘图区域.剪裁空问设置是对视区进行 u_degree:INTEGER; 映射,分别指定左、右,上、下和前、后的值.背景设 置可以按数字或拾取设置方式设置颜色.光照设置 对光源的属性进行设置.视图设置对“视”进行设 置,可将当前视图变成前视图、后视图、左视图、右 视图、顶视图和底视图六种视图.图形变换实现实 体的观测功能,包括旋转变换、平移变换和缩放变 换. 显示控制功能如图6所示.包括显示对象的分 类,各种图形操作对话框,鼠标事件监测处理,图形 刷新操作的控制,数据接口,文件管理接口几个部 分.显示对象的分类使新生成的对象按类管理,当 设计者发出命令时可针对不同类的对象给予不同 的操作.各种图形操作对话框和鼠标事件监测处理 是用户与图形显示的接口.他解决用户对参数的设 置,通过鼠标对图形的操作等.对象的增加、删除甚 至是参数的变化都要进行刷新操作.每一次刷新实 际上是重画过程.数据接口和文件管理接口是负责 图形信息获取与发送的.比如当产生一个自由曲面 对象时,该自由曲面的特征(型值点、控制点)就要 向数据库写入,当另一个对象成为当前操作对象 时,又要从数据库读出,修改对象时也要同步数据 库中内容,这些都需要同数据库的接口.由于系统 有自己的文件系统,所以当从文件载入对象或将对 象存入文件时同样需要从数据到显示对象的转换. 图6三维显示控制 Fig.6 The control module for 3D display 4接口技术 4.1 自由曲面的STEP信息描述 STEP标准中B样条曲面的EXPRESS描述 主要包括: ENTITY b——spline——surface SUBTYPE OF v_degree:INTEGER; u_upper:INTEGER; v_upper:INTEGER; control—points:ARRAY[0:u_upper]OF ARRAY[0:v_upper]OF cartesian_point; u_uniform_data:OPTIONAL knot—type; v_uniform_data:OPTIONAL knot—type; knotu—_up_data:OPTIONAL INTEGER; knotv_—up—data:OPTIONAL INTEGER; u_mult—data:OPTI()NAL ARRAY r 1:knot u—_upper]OF INTEGER; v_mult—data:OPTI()NAL ARRAY厂1:knot v——_upper]OF INTEGER; U—knots—data:OPTIONAL ARRAY r 1: knotu——_upper]OF REAL; v_knots_data:OPT10NAI ARRAY厂1:knot v—_upper]OF REAI ; weights—data:OPTIONAL ARRAY[0:u— upper]ARRAY[0:v_upper]OF REAL; self_intersect:OPTIoNAL BOOLEAN; u_closed:OPTIONAL BOOLEAN; v_closed:OPTIONAL BOOLEAN; surfaceform:OPTIONAL bspline—surfaceform; END_ENTITY; 定义中“oPTIONAL”代表可选属性,即如果 无任何值则按隐含值处理.从以上定义可以了解定 义一个B样条曲线或B样条曲面实体的实例应该 遵循的步骤和需要设置的属性.B样条曲面所要传 递的主要数据为:曲面在“、 方向的代数次数,3D 控制顶点,“、 方向节点的重复度, 、 方向节点矢 量及对应的权, 、 方向闭合情况等. 4.2基于STEP的接口开发 自由曲面STEP接口功能的实现主要涉及输 出曲面对象数据获取和文件操作.首先,需要输出 的曲面对象由用户通过图形子系统中的显示控制 模块选定.一条B样条曲面在系统内部有特定的 数据结构,包括型值点,控制点,节点矢量,节点重 复度、颜色,样条基矩阵,切矢矩阵,主法矢矩阵,封 闭性等大量信息,因此要先将对象的信息由系统内 部的数据结构中提取出来.接下来要获取一些系统 第6期 刘峥,等:面向逆向工程的曲面再设计系统与接口技术 469 Measuring Machine in Reverse Engineering[J].Ma— Integration:Multimodal Immersive Interaction and chinery Design Manufacture,2007(7):72. Advanced Haptic Paradigms for Implicit Edition of (in Chinese) CAD Models EJ].Computer—Aided Design,2010,42 [2] CHEN X,MA W,PAUL J.Cubic B-spline Curve Ap— (5):445. proximation by Curve Unclamping[J].Computer—Ai— [63叶舸,田兆锋,闫楚良.基于OpenGL的飞机飞行实测 ded Design,2010,42(6):523. 数据可视化研究[J].航空学报,2011,32(6):1050. L3] 吴广领,张秋菊.计算机辅助NURBS曲面建模技术 YE Ge,TIAN Zhao—feng,YAN Chuliang.Flight—test 的研究与实现[J].江南大学学报,2011,10(2):158. Data Visualization of Aircraft’s Flight Course Based WU Guang-ling,ZHANG Qiu—ju.Study on Computer on OpenGL[J].Acta Aeronautica ET Astronautica Aided NURBS Surface Modeling Technology and Its Sinica,2011,32(6):1050.(in Chinese) Implementation[J ̄.Journal of Southern Yangtze Uni— l 7 I LYER A,KAPOOR S G DEVOR R E.CAD Data versity,2011,10(2):158.(in Chinese) Visualization for Machining Simulation Using the [4] 石勇,刘文涛.面向并联机床的叶片加工程序后置处 STEP Standard[J].Journal of Manufacturing Sys— 理及仿真软件研究[J].机械设计,2011,28(8):73. tems,2001,20(3):198. SHI Yong。LIU Wen—tao.Research on Post Process [8]ⅦAY S Standardizing the Specification,Verification, and Simulation Software of Steam Turbine Blade’s and Exchange of Product Geometry:Research,Status and Processing Program for Parallel Kinematic Machine TrendsI-J].Computer—Aided Design,2008,40(7):738. EJ].Journal of Machine Design,2011,28(8):73. [9]ALgXANDR K,CHRISTOPH H.On、,alidarign STEP (in Chinese) Prdouct Data Exchange[J].Computer—Aided Design, [5] BoURDOT P,CONVARD T,PICON F.VR—CAD 2008,40(2):133. Redesigning of Surface and Interface Technology for Reverse Engineering LIUZheng,SUNBo (School of Mechatronic Engineering,Xi’an Technological University,Xi’an 710021 China) Abstract: In the area of reverse engineering,the development of the surface evaluating and designing system for the coordinate measuring machine is always one of the key points because of the requirement of specialization and property right.The 3D system for reconstructing and redesigning surface was constructed based on OpenGL technology,which made contribution for the development of reverse designing system with independent property right.Above all,the data of point lattice was read to reconstruct the uniform bicubic B——spline fitted surface.The surface was redesigned based on the revising strategy of the control points.Furthermore,the 3D environment for the operations of models and scene were developed with the modeling API,which benefits the interface between the designer and the system.Finally,the linkage was built between the system and the popular commercial CAD systems with the developed interface module based on STEP standard.The development of 3D design system with OpenGL technology has complete property right and better flexibility,expansibility than the method of secondary development. Key words: surface reconstruction;b—spline fitted surface;openGL;data exchange specification; surface redesign (责任编辑、校对魏明明) 

因篇幅问题不能全部显示,请点此查看更多更全内容