1、内容提要 引言 特征的定义和分类 基于特征的零件信息模型 特征的表示 特征的创建与识别 几何形状特征及UDF 特征造型系统的关键技术 特征造型技术的发展 特征造型系统简介 CAD技术发展的几次革命 特征造型是近二十年来发展起来的一种新的造型方法,它是CAD第三次技术(参数化技术)革命的里程碑。 特征(Feature)一词的出现,最早是在一九七八年MIT的Gossard D.C.所指导的Soltes J.W的学士论文“A Feature-Based Representation of Parts for CAD”中。特征定义 特征的认识不同,至今尚无统一的特征定义,Shah指出一个特征所至少需要
2、满足以下几个条件中的一个: 零件的物理组成部分; 可以映射到某一个具体的形状; 有工程意义; 有可以预知的属性。 特征定义 通用定义:特征就是任何已被接受的某一个对象的几何、功能元素和属性,通过它们我们可以很好地理解该对象的功能、行为和操作。 更为严格的定义也被使用:特征就是一个包含工程含义或意义的几何原型外形。特征在此已不是普通的体素,而是一种封装了各种属性(attribute)和功能(function)的对象。特征的作用 在CAD系统引入“特征”后,能够起到以下三方面的作用: 表示设计意图; 简化传统CAD系统中繁琐的造型过程; 从高层次上对具体的几何元素如点、线、面进行封装。 特征的分类
3、 从产品整个生命周期来看,可分为:设计特征、分析特征、加工特征、公差及检测特征、装配特征等;(STEP产品模型) 从产品功能上,可分为:形状特征、精度特征、技术特征、材料特征、装配特征; 从复杂程序上讲,可分为:基本特征、组合特征、复合特征。基于特征的零件信息模型 特征的表示 面向对象的特征表示 特征标示ID 特征类型 Brep 特征引用FDG 参数与约束CBG 特征操作特征创建方法 (Next) 特征交互定义 特征自动识别 特征转换 基于特征(库)的设计特征创建方法几何造型器设计师几何模型特征定义系统特征模型工艺规划实体模型特征识别特征提取特征模型设计师特征造型器实体造型器特征模型几何模型(
4、a)特征交互式定义(b)特征识别(c)基于特征的设计特征识别特征的自动识别包含以下几个步骤: 进行拓扑和几何模式匹配; 提取被识别的特征; 决定特征的参数; 完成特征模型; 组合单个的特征以获取高层意义上的特征。后面详细介绍后面详细介绍 特征转换A、B为不同特性造型系统: 等价转换等价转换 A中的一个特征转换到B中有相同几何的特征,如设计模型中的一个通孔转换到加工特征模型中的一个通孔。 投影转换投影转换 A中的一个特征转换到B中一个具有更少信息的特征。 关联转换关联转换 A中的一个特征转换到B中一个与之相关联的特征,如设计模型中的一个肋特征转换到有限元分析特征模型中的一个负载特征。 组合转换组
5、合转换 A中的多个特征通过重新组合转换到B中的多个特征。形状特征布尔操作:实体加、实体减 扫:拉伸,旋转,轨迹扫 放样:变截面 修饰特征(二次):倒角,凸台(boss)、打孔(hole)、凹槽(pocket)、筋板、抽壳(hollow) ,拷贝,阵列,镜像曲面特征:偏置(offset)、缝合(sew)、修补(patch)、修整(trim)、分割(split) InteSolid形状特征虚拟形状特征virtual_feature草图特征sketch_feature参考特征reference_feature参考面特征reference_plane_feature参考轴特征reference_axi
6、s_feature基于草图的特征sketch_based_feature拉伸扫特征extrude_feature旋转扫特征revolve_feature广义扫特征sweep_feature放样特征loft_feature局部特征local_feature圆角特征round_feature常半径圆角特征constant_round_feature变半径圆角特征variable_round_feature倒角特征chamfer_feature薄壳特征shell_feature拔模特征draft_feature切角特征corner_feature镜像特征mirror_feature阵列特征patte
7、rn_feature线性阵列特征linear_pattern_feature圆周阵列特征circular_pattern_feature用户自定义特征user_define_featureInteSolid形状特征(续)虚拟形状特征virtual_feature草图特征sketch_feature参考特征reference_feature参考面特征reference_plane_feature参考轴特征reference_axis_feature基于草图的特征sketch_based_feature拉伸扫特征extrude_feature旋转扫特征revolve_feature广义扫特征swe
8、ep_feature放样特征loft_feature局部特征local_feature圆角特征round_feature常半径圆角特征constant_round_feature变半径圆角特征variable_round_feature倒角特征chamfer_feature薄壳特征shell_feature拔模特征draft_feature切角特征corner_feature镜像特征mirror_feature阵列特征pattern_feature线性阵列特征linear_pattern_feature圆周阵列特征circular_pattern_feature用户自定义特征user_defi
9、ne_feature用户自定义特征用户自定义特征 用户自定义特征(User defined feature,UDF):是对设计人员而言具有明确工程语义,包含约束和设计过程的形状特征集合。在产品的设计过程中,UDF可以根据不同的尺寸值和约束关系产生设计变体,并作为一个整体参与零件的布尔运算。 自定义特征可以形式化定义为 UDF=(Geometry,Attribute,History,Constraint).UDF形式化定义 Geometry表示UDF对应的几何形状。几何形状是与具体实例相关的,同一个UDF的不同实例,具有不同的几何形状。 Attribute表示特征的属性。如特征的名称、体积、材料
10、、公差以及其它用户自定义的工程描述信息。它把具有多义性的几何形状映射到具体的物理实体。 History表示UDF的设计过程。History可以使用特征依赖图来表达。特征依赖图中结点代表组成UDF的各个子特征,弧代表子特征之间的依赖关系。 Constraint表示构成UDF的几何元素之间的拓扑约束、尺寸约束及自定义方程约束。这些约束通过对各个子特征之间约束关系的定义,起着维护UDF工程语义,判别UDF有效性的作用。 UDF = 零件?用户自定义特征内部特征1内部特征2内部特征3内部特征n.依赖关系与约束依赖关系与约束UDF定义与实例化内部特征内部特征内部特征几何定义属性定义约束定义一般化UDF模
11、型实例化过程1实例化过程n实例化过程2具体的UDF实例1具体的UDF实例2具体的UDF实例n.定义过程定义过程UDF的定义过程包括几何定义、属性定义和约束定义三步。 由于UDF系统是建立于已有的特征造型系统基础上,所以,事实上几何定义过程就是使用特征造型系统进行造型的过程。对于一个已经存在的零件,几何定义的过程则表现为用户从特征历史树上选取子特征的过程,被选取的子特征构成UDF所包含的内部特征集合。 属性定义的过程是定义UDF所包含的描述信息的过程,描述信息可能包括密度,体积,重量等具有工程意义的参数。 约束的定义分为两步,首先用户选择具有工程意义的尺寸和参数,而后用户建立个参数之间的约束方程
12、。 UDF的实例化 UDF的实例化过程包括UDF定位、参数赋值、约束检查和内部特征重构四步。实例化过程也是用户对UDF定义过程中选取的各个属性和参数进行重新赋值的过程。通过对属性和参数重新赋值,进而驱动UDF模型得到不同的实例。 UDF内部特征依赖关系与零件中特征依赖关系的融合 基体槽孔圆角矩形阵列孔基体槽圆角矩形阵列实心体FAC1特征造型的关键技术几何表达/显示布尔操作 几何约束求解 特征编码几何约束求解 数值代数方法;符号代数方法; 推理方法; 图论方法;数值方法 变量几何法(Variational geometry)。该方法把几何形状定义成一系列的特征点,约束则表示成以特征点的坐标为变元
13、的非线性代数方程组,通过数值迭代方法求解方程组,从而确定出系统中几何元素的特征点坐标。 变量几何法p1(x1,x2)p3(x5,x6)p2(x3,x4)p4(x7,x8)f1f2f3f5f4图 2-1 示例1 fxxxxdfxxxxdfxxxxdfxxxxdfxxxxdfxxfxdfxd1132412152623374834576845354656250716827222222222222222:()():()():()():()():()():牛顿拉普逊迭代法 1()(),.,()0TmFFF XXX11()()kkkkJFXXXX1111.().nkmmnFFxxJFFxxX牛顿拉普逊迭代
14、法的优缺点 牛顿拉普逊迭代法的优点是如果迭代收敛的话,则收敛速度很快。 其缺点是对迭代初始值要求较高,如果初始值偏离方程组的真根过远,迭代难以收敛;而且当约束方程数目和自变量数目不相等,即方程组处于过约束或欠约束状态时,雅可比矩阵的逆不存在,牛顿拉普逊迭代法失效。系数矩阵是稀疏的三角分块方法x1 x2 x5 x6 x3 x4 x7 x8 1 0 0 0 0 0 0 0 f7 0 1 0 0 0 0 0 0 f8 0 1 1 0 0 0 0 0 f6 1 1 1 1 0 0 0 0 f2 1 1 0 0 1 1 0 0 f1 0 0 1 1 1 1 0 0 f5 0 0 0 0 1 1 1 1
15、f3 0 0 1 1 0 0 1 1 f4基于几何推理的人工智能方法 采用一个基于符号推理和操作的专家系统来求解约束。它基于这样一个事实,即在工程图中的绝大多数图形都可以通过直尺、圆规和量角器绘出。该方法建立了一个规则体系,将几何形体的约束关系用一阶逻辑谓词描述,存入知识库中。系统从知识库中提取出有关信息 ,通过推理机逐步推导出几何细节。该方法具有基于规则方法的优点,诸如几何知识清晰的表示 ,知识和处理的分离,规则库的可扩充性,而且完全避免了数值算法的不稳定性。 缺点是系统庞大、速度慢、无法处理循环约束等。 基于图论的方法 基于图论的约束求解方法该方法用图来表达几何约束系统。图论的方法将几何图
16、形用图表示,形成几何约束系统,运用图论的知识进行处理,将约束系统转化成一系列不可分割的子系统,将约束网格归约成约束树的形式,从而大大减少了问题求解的耦合度和求解规模。 GCGL1P1P2L2P3CP4L3P5L4a1a2d1d2rrrrper递次归约生成的归约树 L1 P2 L2 P3 C L4 P5 L3 P4 P1 rg1 rg2 rg3 rg4 rg5 rg6 rg7 rg8 特征编码技术 特征编码技术(基础):从AutoCAD三维造型,到ACIS实体造型核心,没有进行特征编码会出现的问题。指针的直接引用是不能够解决这个问题的,因为指针的直接引用毕竟是暂态的,因此是不稳定和不可靠的。 特
17、征编码思路:基于Brep表示法,体面线点,研究拓扑实体的命名规则,以确保零件在重构时,被引用的拓扑实体能够被识别出来。 特征编码的主要功能:拓扑实体编码、传播、记录和解码。基于面的编码以原始特征体上的拓扑面作为编码的基础实体,而不是以零件体上的拓扑面作为编码的基础实体,更不是以原始特征体上或零件体上的拓扑点或拓扑边为编码的基础实体无疑是最佳的选择,这是因为: 零件体和其上的拓扑实体处于不断的变化过程中,而原始特征体上的拓扑面却处于一种相对稳定的状态;使得拓扑实体的编码有规律可循。那就是以原始特征面编码为基础,对零件上的拓扑面实体、点实体和边实体进行记录。 草图编码P1P2P1P1P2P1P2直
18、线Line编码由起点P1和终点P2确定园circle编码由圆心P1确定弧Arc编码由起点P1和终点P2确定样条Spline编码由起点P1和终点P2确定Idi inpoint|, , ,123 草图编码。p1p2p3p4p5p6p7p8p9line1line2line3arc1line4splinearc2arc3circleIDIdIdelementpp12,IDIdIdlinepp12,IDIdcirclep10,草图编码Sweep编码终止面扫成面起始面二维轮廓路径1路径2CFACEFeatIDFeatID IDFeatIDIDsweepfacesweepPelementPathtrajec
19、tory,二维轮廓草图为P,element为其中的某草图轮廓边,路径为Path,trajectory为其中的某个路径片断 扫特征编码CFACEFeatIDFeatIDFeatIDIDFeatIDFACEStartFaceFACESweepFaceFACEEndFaceExtrudeExtrudeExtrudepelementExtrude, , , , , ,010 00 002 0 0CFACEFeatIDFeatIDFeatID IDFeatID IDFeatIDFACEStartFaceFACESweepFaceFACEEndFacevolvevolvevolvepelementpaxi
20、svolveReReRe,Re, , , , , ,0 1000 200CFACEFeatIDCFeatIDFACEStartFaceFACESweepFaceFACEEndFaceSweepSweepsweepfaceSweep, , , , ,0 1000 200零件OPn-1特征nOP2特征3OP1特征1特征2.PFB(Sn)PFB(S1)PFB(S3)PFB(S2)PB(s1)PB(s2)PB(s3)PB(sn)零件的造型过程特征运算 FeatureOperation() GetRefEntityByID(); /解码得到引用特征/实体的指针GetVarListValue(); /得到
21、全局求解的变量值,或者 /特征的属性赋值 CalcAllParameters();/求解特征的位置和几何参数 Regenerate(); /特征实体重构并与零件体作布尔运算 FeatureCoding(); /特征编码特征技术的发展 变量化(VGA) 基于知识的工程(KBE) 行为建模(BM)VGA 在分析三维参数化技术不足的基础上,论文1提出在零件设计过程中,应允许三维约束以陈述式方式处理的观点。以陈述式方式处理约束的前提是存在一个可供求解的约束模型。为此,本文提出了通过提取边界表示和特征定义中隐含的约束信息,自动生成三维几何约束模型的方法。VGA算法 由于基于几何元素生成的约束模型规模大、
22、不易于约束分解和求解,本文基于特征对三维约束进行建模和求解,降低了约束系统的规模。本文首先介绍了特征装配法,将三维约束划分为定形约束和定位约束,其中定位约束确定特征位置而定形约束确定特征形状。 尺寸映射法,通过由特征编码机制维护的三维拓扑元素和二维草图元素之间的对应关系,将三维尺寸映射为二维草图约束进行间接求解,从而将三维约束满足问题转化为相对容易处理的二维约束满足问题。本文对三维尺寸值变化导致多个特征同时变形的情况进行了讨论,指出处理这种情况需要约束求解引擎必须具有从变量层次求解约束方程组的能力。KBE 由于KBE技术的开放性,迄今为止,尚无一种公认、完备的定义。KBE的基本内涵是面向工程,
23、以提高市场竞争力为目标,通过工程产品知识的继承、繁衍、集成和管理,建立工程产品的分布式开放设计环境,并获得创新能力的工程设计方法。由此可见,KBE的特点在于: KBE不仅是一个知识的处理过程,包含知识放继承、繁衍、集成和管理,而且产品创新设计的重要使能技术。 KBE不仅能够表示多种形式的知识,而且能够处理多应用领域的知识,因而是集成化的大规模知识处理环境。 KBE是面向工程产品全生命周期的系统集成,是一种开放的体系结构,对不同领域具有不同的解决方案。 UG/KF UG作为一个CAD/CAM/CAE的集成软件,致力于从概念设计到功能分析、工程图纸生成、数控代码生成及加工的整个产品开发过程。UG提
24、供了知识驱动自动化(Knowledge Driven Automation)解决方案,将KBE 系统与CAx软件系统完全集成。KDA是一个能够记录、重复使用工程知识并用来驱动、建立、选择和装配相应的几何模型的系统。这套解决方案包括UG/KF(Knowledge Fusion,知识融合)和一系列过程向导。UG/KF UG中采用创成(Generative)和吸纳机制(Adoption)将知识与CAx系统融合。特别是吸纳机制解决了从现有的成熟产品与实践中总结和反求知识的问题。使用Adoption可以为一个已存在的UG对象建立规则,使这个UG对象与规则相关。因为用KF语言建立复杂造型过于繁琐,所以可以
25、用交互方式进行几何建模。对象建立后,使用Adoption,系统自动生成相应的规则,这个对象的参数定义为规则的属性。规则通过属性来控制对象。 行为建模(BM)因为具有新的行为建模改进功能 - PTC用于目标驱动式设计的专利技术,现有21,000多套正在用户现场发挥效能,它能使零件自适应地进行目标追踪。凸轮轴力求保持动平衡;集装箱争取保持正确的容积;机械装置自适应寻求性能与间隙目标的最佳配合。在任何行业,行为建模技术都能使Pro/ENGINEER成为设计过程中的生力军,使用户能以更低的成本获得更好的质量。 优化模型建立: 优化目标建立分析 约束函数关系和分析 设计变量的设定特征造型系统(流行) 1
26、. PTC公司的Pro/Engineer 2. SDRC公司的I-DEASMasterSeries 3. AutoDesk公司的MDT 4. Integraph公司的SolidEdge 5. SolidWorks Corp.公司的SolidWorks 6. Dassault Systems公司的CATIA1. PTC公司的Pro/Engineer Pro/Engineer通过记录设计历史来捕捉设计意图,设计历史的操作顺序可以被修改。Pro/Engineer的参数化特征造型功能贯穿于整个产品,它为所有类型的模型提供了参数化的方式,包括特征、曲面、曲线以及线框模型等。所有几何体都必须被完全约束,不
27、支持欠约束的几何体。系统经过十多年的努力,已经把参数化造型技术应用到工程设计的各个方面:绘图、工程分析、数控编程、布线设计、板金件设计等领域。Pro/Engineer还提供双向数据关联的能力,这样设计的修改能自动更新到出图、分析、制造以及其它CAD/CAM领域。Pro/E 用Pro/Engineer进行设计要求预先考虑好整个产品的控制参数以及设计操作的顺序;必须提防双向数据关联可能会引起未授权用户擅自修改设计;另外Pro/Engineer的用户界面非常复杂,这对于用户来说是不方便的。 2. SDRC公司的I-DEAS Master Series 5 I-DEAS Master Series 5
28、与SDRC公司的先前版本相比,是一个全新的突破。在整个系统中支持所有类型的特征造型功能,包括支持特征、曲线、曲面等,更为重要的是,其VGX技术的推出陈述性三维约束表达 SDRC新的VGX变量几何技术真正做到使设计者将注意力集中在工程方面的问题上,直接体现自己的设计思路,基于VGX的变量化特征允许CAD用户通过相同零件的特征在3D中动态捕捉各种关系,并且历程顺序不影响关系的有效性。VGX功能扩展了检验产品的约束推理能力。 但是,VGX技术只是刚刚起步,其先进性有待进一步检验,而且目前VGX特征仅仅表示了拉伸特征,尚不能够表示旋转等其他特征,并且3D约束中的相切功能也只适用于平面或解析面。3. A
29、utoDesk公司的MDT2.0 MDT2.0不仅包含了完整的二维绘图工具集,而且提供非参数化实体造型和基于特征的参数化实体造型、基于约束的装配造型、NURBS复杂曲面造型、实体与曲面融合以及IGES、STEP、VDA-FS数据交换器等一系列先进的三维设计功能及工具,圆满地将2D绘图与3D造型技术融于一体。MDT2.0能够自动从3D实体模型中生成多个视图的各种配置,支持设计模型与工作图纸的双向数据关联,这些都是它的极为优异的功能特性。 当然,MDT2.0还存在一些值得改进的地方。例如不支持多个文档,造型手段不如哪些老牌的工作站系统丰富。但是MDT2.0的价格优势将使之成为Pro/Enginee
30、r或SDRC的重要竞争对手。4. Integraph公司的SolidEdgeSolidEdge是Integraph公司在Microsoft Windows操作系统上全新的CAD系列软件的旗舰。SolidEdge最大的特色是它独具创意的使用者界面,这方面SolidEdge比任何其他的实体模型系统。SolidEdge不仅可以报告模型的定位过约束和欠约束的情形,并使约束的修改变得十分容易,而且它还可以通过一个被称为“Show Variability”的工具用图形显示可以变化的情况。SolidEdge可以读入AutoCAD或Microstation所产生的实体模型进行装配设计,并且可以在装配文档中进行
31、零件编辑。SolidEdge还具有极为出色的出图能力,对模型所作的修改可以自动反应在视图上。当然,SolidEdge也具有一些缺陷,它不能够支持一些造型功能,如在实体模型中加入自由曲面;其变半径倒角能力不强,不支持零件或装配模型与工程图的双向关联不能够产生爆炸图的工程视图。 5. SolidWorks Corp.公司的SolidWorks 2003 SolidWorks 97是SolidWorks公司推出的Windows 95和Windows NT环境下的3D参数化特征造型系统SolidWorks 95的第三代产品,是第一个基于微机平台的高度商品化的特征造型系统。 SolidWorks 97采
32、用了独特的特征树管理技术,极大地方便了实体模型的构造与修改,并能够最大限度地保持设计者的意图。在SolidWorks 97中,可以实现零件、装配体和工程图间的双向关联,其变量化技术代表了目前商品化软件中该项技术的最高水平。值得一提的是其全OLE风格的二次开发接口,使得在SolidWorks 97上作二次开发变得极为简单,如使加工特征识别技术达到实用水平的CAMWorks的开发成功就是一例。 6. Dassault Systems公司的CATIA CATIA诞生于航空业,目前是航空工业内无可争议的主导CAX软件,但是在汽车工业,CATIA几乎可以被称作行业标准,同时在其他行业CATIA也显示了其强大的实力。 CATIA采用了许多最新的技术、如可变、可编辑的参数;NURBS;智能实体;基于知识;基于特征;面向对象的设计技术;集成数据管理功能,它的复合建模的技术极大地增强了其机械设计的实体、曲面设计和修改能力; CATIA能够对现有的实体和曲面模型施加约束。模型中的实体可以不必被完全约束。除了参数化造型能力,CATIA还提供了其它的造型手段。它还支持与绘图和NC的双向数据关联。现在,CATIA正在扩展它已经非常强大的曲面造型能力,力争使之发展成为一个全面的机械设计系统。