- 积分
- 31
- 注册时间
- 2003-6-24
- 仿真币
-
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2004-6-3 21:41:53
|
显示全部楼层
来自 湖北武汉
从线框、实体造型到特征建模
从线框、实体造型到特征建模
1968-1973年前后,CAD中的二维绘图和曲面造型已经取得了突破性进展,形成了公认比较满意的技术体系,并且相应开发了软件,已经小规模投入生产应用。于是,人们的注意力开始转入怎样才能更完整地表达产品的三维几何形状,使得计算机能够“理解”产品数据的意义,从而获得一定程度的智能化分析、计算能力。当时正在使用的表示三维零件的方法是线框模型,如图4.56中的支座,是用空间线条搭成铁丝笼状的框架。为了方便设计人员的交互输入,每次定义一个工作平面,在工作面上构造二维图形,然后通过坐标变换,将画在工作面局部坐标系中的二维线条变换成产品总体坐标系中的三维线条。设想图4.56中支座的底面为x-y平面,x轴沿底面的长边方向,y轴沿短边方向。支座的高度方向是z坐标。依次在z=0, z=15, 和z=70的三个水平面上分别绘制:矩形框;矩形框加f60和f36两个同心圆;以及带缺口的两同心圆。当绘制这些轮廓线时,工作平面都旋转到与计算机图形显示器的屏幕相重合的位置。然后将总体坐标系旋转到使支座的x向侧面正对屏幕,绘制f36和f20两个圆。这样,通过二维构图与三维变换相结合,就可以在计算机里建立起零件的三维模型。当然,这种建模方法很笨,没有脱离传统画法几何的范畴,完全靠人来一步一步操作。计算机所起的作用跟在二维绘图系统中相近,基本上处于同一水平上。
将实体的概念首先引入三维几何造型的第一个尝试是日本北海道大学冲野教郎(Norio Okino)教授,他从1968年起主持研制了TIPS系统,TIPS是英文“技术信息处理系统”的缩写。他用代数方程表示机械零件的规则曲面形状。为了判别一个空间点是在曲面之外、之内还是之上,只要将点的(x, y, z)坐标值代入曲面的代数方程中,计算方程的值是大于,小于,还是等于零。用垂直于x、y、z坐标轴的三组密集平面去切割零件模型的所有表面,将求得的交线消除隐藏部分后就得到类似于图4.57所示的零件立体图。1972年冲野教授公布了TIPS第一版,并组织了TIPS应用协会,免费赠送FORTRAN源程序,在英国、美国等大学中产生了很大影响。中国纺织大学、清华大学、华中理工大学的教师先后访问过冲野教授,北京航空航天大学也得到了TIPS源程序磁带和全套手册的馈赠,并成功地移植到IBM主机上运行。当时的TIPS系统已是一个CAD/CAM集成系统的原型,可以自动计算零件的重量、惯性矩,自动生成有限元网格,产生数控加工的粗铣和精铣走刀轨迹。
1972年美国罗切斯特(Rochester)大学沃尔克(H.B.Voelcker)教授开始研制PADL系统。PADL是零件与装配描述语言的缩写,1976年后向外界扩散,提供PADL-1.0版的源程序和全套文档。对于非赢利的教育单位只收象征性的100美元,作为磁带复制和资料成本费。到1981年,已有美国通用汽车公司和英国Leeds大学等40多个学校和公司引用了这一系统。北京航空航天大学当时也通过中国航空技术进出口公司申请引进一套,但由于对方在合同文本中写了“凡是因使用此软件而引起质量事故损失,本单位概不承担法律责任”等条款,中航技公司不能接受这些条款,终止了签署合同,仅购买了全套软件资料。
沃尔克教授及其课题组的主要成员雷奎卡(A.A.G. Requicha)对于实体造型的理论基础发表了很多论著,至今在我国的CAD和计算机图形学教材中有广泛引用。实体造型简称体素拼合,它是用三维基本体素,如立方体、圆柱体、圆锥体、球、斜楔、圆环作为积木块,通过两两相加或相减来产生规则形状的机械零件。例如图4.56中的支座,可以按照图4.58中的自下而上顺序,逐步用立方体、圆柱体和斜楔三种体素通过加、减运算拼合而成。沃欠克将体素拼合看作是一个集合运算过程,A和B两个正则集通过并、差、交三种操作得出另一个正则集。他企图为实体造型的集合运算建立一个严密、完整的理论体系,使得体素拼合的算法实现可以表示为这一理论体系的一系列形式化描述。遵循这一方法,就可以保证开发的软件正确无误,运行可靠。1979年起沃尔克进一步联合工业界力量,在国家科学基金委的支持下开发了PADL-2.0系统,于1982年推出试用版。当时美国的Unigraphics(简称UG),Calma, Auto-trol, AutoCAD12版都使用PADL2作为自己CAD/CAM商品系统的实体造型模块。图4.58所示的体素拼合二叉树,在PADL系统中称作CSG,直译为构造性实体几何。这一名词已被全世界普遍接受,成为实体造型中记录体素拼合过程的一种标准描述形式。
1973年,英国布雷德(Ian Braid)在剑桥大学CAD实验室发表了题为“用体素进行设计”(Designing with Volumes)的博士论文,提出了用体素拼合建立几何形体边界表示(Boundary representation,简称B-rep)的原型试验系统。他也使用规则形状的体素,但用参数方程表示二次圆锥曲面。在体素拼合中求出各个相贯表面之间的交线,并且沿交线将参与集合运算的两个体素组合为一个整体。仍以支座为例,图4.62(c)表示水平方向的圆柱体与竖直圆柱体的内外表面相贯,得出了四条交线。图(d)表示经过拼合后的消除隐藏线图形。实体造型中的拼合操作,在文献中往往也称作布尔操作(Boolean operation),借用英国数学家乔治·布尔(George Boole)所提出的与、或、非逻辑运算法则来表示拼合后的相贯曲面取舍准则。所谓B-rep边界表示法,就是显式表示最终拼合所得形体的每张表面的有效边界范围。对于支座的主体圆柱外表面,经展开后大体将有图4.59所示的形状。表面的外边界称作外环,表面内孔的边界称作内环。一张表面只有一个外环,而内环的数量不限。在计算机内,将实体的所有几何元素通过指针连成一整体,从任何一个元素出发,都可以遍历所有其他元素。这就为CAD/CAM系统中的各种分析计算创造了智能化、自动化处理的基本前提。图4.60简要说明了由布雷德等逐渐发展起来的实体模型边界表示的数据结构。图中内容划分成两大部分,右边称作拓扑结构;左边虚线框中称作几何表示。拓扑结构描述几何元素的相互连接关系及其构成层次。最底层的构成元素是顶点(vertex),两点相连成边(edge),由边构成的封闭轮廓称作环(loop),一组外环和内环界定一张面(face),若干张面构成子壳(subshell),子壳形成封闭的壳(shell),壳组合成块(lump),块再组合成体(body)。由于存在线框模型,所以子壳和壳也可以由线(wire)构成。拓扑结构中的顶点、边和面都有几何属性,分别用左边的单元来加以说明。顶点的空间位置记录在点(point)单元内。边的几何定义,如直线、圆弧、B样条曲线等记录在曲线(curve)名下。同样,面的几何定义记录在曲面(surface)名下。因为参数曲线、曲面同时存在参数域和空间域两种表示形式,所以需要用参数域上的曲线(pcurve)来加以限定。体带有坐标变换矩阵(transform)。由于在正常形态的体中,每一条边都为左、右两个邻面所共享,为了方便程序中的处理,在边之外增加一个共边(coedge)单元。当需要查找一张面的邻面时,首先找到该面边界环中的边,从边指向共边,再由共边指向邻面。在体素拼合过程中,面与面频繁求交,重组边环,拓扑结构中的指针关系不断发生变化,所以数据结构的设计要适应快速检索相关几何元素和简捷变更拓扑指针关系的要求,以保证软件的运行高效、可靠。1973年布雷德完成论文答辩后,继续留在CAD实验室里研究实体造型技术,接连发表了几篇内容翔实的研究报告,并先后研制了Build1和Build2两个新的实验系统。其中Build2采用了当时欧洲最新推出的Algol 68结构化编程语言。与此同时,布雷德和他的导师Charles Lang, 同窗Alan Grayer合作,聘请荷兰人Peter Veenman作市场策划,于1974年创办了Shape Data公司,用Fortran语言开发出第一代实体造型商品系统Romulus,并从1978年起推向市场。
1982年3月北航吴骏恒等与航空工业部下属510厂合作,去英国剑桥CAD中心接收引进的GINO-F图形软件包。经福累斯特教授介绍,访问了Shape Data和另一家实体造型系统Medusa开发公司。当时的Shape Data设在一栋三层的住宅楼内,使用一台VAX-780超小型机和Prime机网络,共20人,其中15人为研究开发人员。图形终端用Tektronix 4014存储管,刚添置了Evans & Sutherland 公司的PS300型刷新式随机扫描显示器。PS300的画面清晰,而且有x, y, z, α,β,γ六个旋钮,用硬件实现图形的平移和旋转变换。参观中演示了车床上的车刀设计过程。车刀基本上是一多面体,见图4.61。先画车刀的二维底面轮廓,用Lift命令将底面提升成三维棱柱体,然后在刀柄部分打两台阶孔,刀头部分开出镶嵌硬质合金刀片用的台阶。从三维模型可以自动生成各种投影视图、剖面图,并且产生零件的平面展开图。用剪刀剪出纸样的外形轮廓,沿折叠线折弯,就能得到零件的三维纸模型。Romulus只提供三维几何造型能力,绘图输出衔接剑桥另一家公司的GDS通用绘图系统,加工编程衔接CAD中心的GNC,有限元建模衔接FEMGEN。当时Romulus已卖出25套,目标程序约3万英磅,Fortran源程序要再加3万英磅。英国的Ferranti数控机床公司在1981年将Romulus纳入公司自己开发的CAM-X加工编程系统中,转卖出15套。此后,北京航空工艺研究所的黄无忌等也访问了Shape Data,洽谈购买Romulus的源程序,共约10万美元,最后未能在国内办妥手续而作罢。1981年后Evans & Sutherland公司收购了Shape Data,并在布雷德等的支持下,从1986年起着手开发美国版权的第二代实体造型Parasolid系统,其中增强了二次曲面造型和交互查询几何数据、局部修改形状等功能。1988年前后,UG买下了Parasolid,并用它取代PADL2。由于UG的曲面造型系统一开始采用插值于四条边界的孔斯曲面,开发了很强的二次曲面功能,所以与Parasolid的几何算法有很好的兼容性,移植很快完成。但是1989年9月航空部CAD小组去洛杉矶附近的Cypress访问麦道公司的UG系统集成组时,演示Parasolid的曲面求交功能过程中仍很快出现死机。经过持久的应用磨合后,Parasolid已成为当前CAD系统中性能最稳定的通用几何开发平台之一。1996年夏,Autodesk公司主管MDT软件开发的执行副总裁Dominic Gallello在北京谈到Parasolid时情不自禁地流露出自豪感,认为这是美国开发CAD软件的一项重大成果。至于Medusa实体造型系统,于1983年被美国CV公司并购,并进入中国市场销售,国内有一批用户,所以大家很熟悉这一软件。这是一个多面体造型系统。
1986年美国创建了Spatial Technology公司,从事基于NURBS的新一代CAD通用支撑平台开发。其中的实体造型功能从国际上流行的16种商品系统中优选,最后还是决定与 布雷德等人合作。NURBS曲面功能则以波音公司于1980~1985年开发的CAD系统TIGER为基础。1989年12月推出了ACIS1.0版。ACIS就是布雷德的同窗Alan Grayer,导师Charles Lang,以及Ian Braid本人加上Solid的字首。ACIS自称是世界上最好的CAD三维几何造型平台,专供CAD厂商进行增值产品开发和大学、研究所进行CAD技术研究。1993年6月Autodesk与Spatial公司签约,采用ACIS作为三维机械设计系统MDT的开发平台,从此成为ACIS的最大用户。
从1968年算起,在实体造型技术近20年的发展历程中,世界各国曾经提出了多种多样的实现方案,也涌现了品种繁多的商品系统,但是经过应用实践的筛选,最后的优胜者是英国剑桥的布雷达。这是为什么!
凑巧,英国Cardiff大学的马丁(Ralph R. Martin)教授来访问清华大学,而布雷德正是Cardiff的名誉教授,我们就此问题请教了马丁。他认为这是一个心理学问题,正如英国自己生产的计算机性能很好,但是顾客还是热中IBM品牌。不错,崇尚名牌确是一个重要因素,然而再深究一步还应该看到布雷德三人小组和剑桥大学的特殊优势。导师Charles Lang原来在美国MIT访问,奉命召回剑桥大学参与筹建CAD实验室。1968年福累斯特在此实验室里完成了题为“计算机辅助设计用曲线与曲面”的博士论文。Alan Grayer所作的博士论文课题是平板零件的自动数控加工。1967年,剑桥大学还与英国政府共同创办了CAD中心。这是一个国营企业,专门从事CAD软件的开发和销售。当时的产品有GINO-F通用图形处理软件包,POLYSURF曲面造型系统,GNC数控加工编程系统和PDMS石化、电力等行业的工厂设计管理系统。1983年CAD中心从国营企业变为私有化。此外,英国还从1968年起创办了CAD国际期刊,从1978年起每两年召开一次CAD国际会议。置身剑桥CAD产业蓬勃向上的氛围,两位年轻的CAD博士,一位从MIT归来从事计算机软件技术研究的导师,一位富有机械设计系统开发经验的经纪人,共同专心致志开拓市场,追求创新软件的实用、可靠。而且布雷德等三人从1970年起,直到2000年7月5日法国达索系统公司签约以2,150万美元现金收购ACIS业务,三人决定退出ACIS为止,整整30年来都将主要精力集中在实体造型平台的开发和完善上。对比其他实体造型系统的发展,很多教授大多着眼于技术研究,注重提出新的技术方案,创造新的理论体系,而具体工作则让年轻教师和研究生去做。这些作法都是正确和必要的,是科学技术发展的正常道路。但是对于实体造型类CAD应用软件来说,理论上的难度不能说很大,而工程应用中的需求却复杂多变,软件系统庞大,需要有精干、稳定的队伍持久进行维护,而且每经过一段时间,例如7~8年后需要更新软件的体系结构,以适应当前的主流软件技术环境。正是布雷德等作到了这一点,而很多其他系统则不能。所有这些综合因素才是布雷德等获得成功的根本原因。
实体造型的最大难点在于体素拼合的可靠性。一道典型的考题是作一正立方体,再沿立方体的中心线减去一正圆柱体。当圆柱的直径稍小于正方体的边长时,正方体中打出一个圆孔,而体的四周侧面不受影响。相反,当圆柱的直径稍大于正方体边长时,体被切成四瓣。问题就出在当圆柱体直径精确等于立方体边长时,圆柱表面与立方体表面想切,将出现奇异情况,造成死机。对于这类问题,只有用工程方法来处理,软件系统内要设定统一的容差精度体系。例如ACIS的约定是,当两点距离小于10-6时,认为两点重合;当两张邻面的法矢夹角小于10-10时,认定两面有公共切平面;用样条拟合一条精确曲线的逼近误差为10-3;计算机对数字的最大分辨能力为10-11,即将10-11设定为零。对于计算中出现的奇异问题,要约定特殊的处理方法。不同厂商的CAD系统设定的精度体系可能不同,由此造成了异构系统间交换产品几何模型数据的困难。当前不少CAD商品系统正在修补自己产品的几何容差体系,以便与其他CAD系统更好集成。
用实体造型技术进行产品三维设计的思想,被CAD应用界接受得很慢。原因之一是这种交互设计方式不符合设计人员的构思习惯。1987年秋,美国参数化技术公司,简称PTC推出了参数化特征造型软件Pro/Engineer,在CAD界引起了轰动。这一新的构思产生于Samuel Geisberg。他出生于苏联,数学专业,1974年37岁时来到美国,先在CV公司工作,以后领导Applicon公司的实体造型软件组。他认为现有体素拼合的操作方式需要改造,使得更符合工程设计习惯。在风险投资商的支持下,于1985年自立公司,提出了新的三维设计流程。这就是一般情况下先在某一基准面上进行二维草图设计,可以随意设定和修改尺寸标注值,让计算机自动生成正规图。然后通过拉伸命令,将二维轮廓提升为三维柱体。此后不断更换作图基准面,以二维轮廓为构架,扫成各种曲面形状。这时,设计零件的组成单元不再是单纯的几何体,而是赋以工程语义,例如箱体、凸缘、螺孔、销钉孔等,统称为特征(feature)。图4.62表示按照特征建模思想来构造支座的主要步骤。图(a)中首先采用系统设定的三个基准面构成x, y, z 直角坐标系。坐标原点位置也已设定。在xy平面上画一70×120毫米矩形框,提升成15毫米厚的平板。然后将坐标系移到平板的上表面,以原点为中心,画f60毫米圆,图(b)中已生成了空心圆柱。再将坐标系移到平板的侧表面,在此基准面上画一f36毫米圆。图(c)表示新定义的水平圆柱体与原有的空心圆筒相贯,产生四条交线。图(d)是完成集合运算后的消隐图。图(e)表示在俯视图的零件顶面上画一矩形框,准备开槽用。图(f)中已完成开槽,并在零件的纵向对称面上画出加强筋的斜轮廓线。图(g)表示已完成的零件消隐图。
图(h)表示系统所记录的特征造型步骤,称作特征树,自上而下,顺序执行。特征树与前面图4.58中CSG树相比,主要区别在于:
1)突出了基准面的概念。因为一切尺寸标注都需要有计量的参考点,例如在零件图上标注尺寸公差和形位公差,在加工机床上定位毛坯和测量加工精度,在装配中分析装配尺寸链误差和检查工作面配合精度,都要用基准作为参照依据。设计过程中使用的基准面都要明确记录下来,并且给以唯一的标识号;
2)特征造型的建模过程实际上是让设计人员在工作面上绘制二维图,再让计算机自动产生三维边界模型。前者继承和发展了线框造型的人机界面优点,后者则隐蔽了实体的拼合过程。凡是添加凸台,一定是加法运算;凡是开出凹槽,一定是减法运算,这是由特征的语义所约定的。需要注意的是,这里的凹槽包含了打出圆柱孔,是一种简化的作法,目的为了减少操作命令的数量。其次,由于凸台和凹槽都有特定的操作语义,都是在工作平面上向上提升或切割一个形体,所以计算机内的边界模型重组过程可以直接显式定义,而不必采用通用的体素拼合算法。例如图4.62(b)中在底板上增加一个圆柱体,只需在底板原数据结构的绘制草图平面上增加一个圆形内环,从内环向上生成一个圆柱体。将原底面上的内环连向外环,并将其内环的共边指针指向圆柱体侧表面。整个圆柱体就与底面的边界表示融为一体,算法简单可靠。而在常规的体素拼合算法中,首先要将两个拼合体素的所有各张面循环求交一遍,求得相贯线,然后沿相贯线完成相交曲面的裁剪和拼合,人为增加了问题求解的复杂度。
3)特征树较详细地记录了设计对象的交互构建过程,有利于零件的设计更改。设计人员可以修改某些尺寸,用光标拖动特征树中的某些操作命令来改变命令执行的先后顺序,然后重新运行一遍命令文件,让计算机自动生成更改尺寸后的零件形状。需要说明的一点是,图4.62(f)的特征树是用微软Windows系统提供的功能生成的,图中右侧的+、-号与特征的加减运算无关。
怎样改进特征设计的交互操作界面,增强软件的主动导航能力,简化用户的输入步骤,提高产品特征模型的灵活修改变异能力,这是当前CAD系统发展中受到普遍关注的核心内容之一。从几何造型技术的角度来看,特征模型的修改有两种层次:一种是在既定的拓扑结构下改变几何元素的尺寸数据,通常称作参数化设计;另一种是更改几何元素间的拓扑连接关系,称作变量化设计或变异设计。后一种的实现难度更大,很多著名的CAD厂商都在朝此方向努力。图4.63和4.64反映了我国所作的一种探索性尝试[23]。图4.63(a)是客户提供的焊枪铝枪体的设计图,需要依此设计和制造精铸用的全套模具。图4.43(b)是铸造下模的设计图,由于考虑铸造中的金属收缩率,零件图中标注的尺寸在模具中都要留出收缩余量。图中还标注了几个重要的基准面,用Dpl表示。图4.64表示从图(a)的零件模型生成的全套铸模。这里使用的是特征剪贴技术,即将图(a)中的零件表面特征,根据铸模的设计需要,逐个从零件的三维模型上取下(称作剪),移植到对应模具的适当部位,使之成为铸模的一部分工作表面(称作贴)。这里涉及的关键技术是首先要从焊枪零件的三维模型上切取所要的表面特征,将该部分曲面的原始母线连同定义母线时所用的基准体系剥离零件模型,使之游离出来。然后将这部分浮动的基准体系移植到对应模具的三维模型中,与模具模型的对应基准体系相匹配,并加以固定。如果被移植曲面的控制尺寸需要更改,这时可以改动曲面母线的形状,然后重新生成新的曲面。图4.65表示特征模型中的曲面构造过程[24]。图(a)是柴油发动机的铸造模,对照图4.66的平面图可以看到型腔3是发动机的气缸部分,型腔2是曲轴的轴承座,后者通过一组向外辐射的加强筋与发动机的外表面相连。图4.65(b)和(c)表示型腔2左侧面的构造方法。图(b)中曲线Pro-1是母线,Pro-2和Pro-3是准线,母线沿准线扫动就生成图(c) 所示的表面特征Fea-1和Fea-2。图(d)说明了这两表面特征与基准体系Dpl-1, 2, 3, 以及母线与准线的层次依赖关系。要想置换发动机的左侧外形表面,必须首先提取图(d)所示的全套特征关系有向图,将其从发动机模型中移走,然后用类似方法重新生成与图(b)、(c)、(d)的特征体系相兼容的新的表面特征,并且让加强筋与新的曲面连成一体。
不难理解,为了提高特征建模的灵活修改、变异能力,必然要在软件的实现技术上付出代价。模型的变异能力越强,软件的结构和算法也将越复杂。这就需要作出权衡,究竟应将软件作得简单、可靠,但是人工干预多,操作的自动化程度低,还是应该提高软件的复杂度,要求用户接受更高层次的培训和掌握更高的操作技巧,使软件达到更高的应用水平。这类问题不能简单地作出回答,但是一般说来,总应循序渐进。必须首先实现前一目标,软件达到实用可靠,为广大用户所接受,才有可能向后一目标迈进。忽视稳固的基础工作而过早设定过高的技术目标,往往要前功尽弃,全军覆没。而过分稳妥,不能快速更新软件功能,同样也要被市场所淘汰。这是稳妥求实和锐意创新、跨越式发展之间的一对辩证关系。
与特征造型技术密切相关的另一个理论课题是基于约束的产品形状描述及其求解算法。在绘制二维草图中需要约定几何元素之间的连接关系及其尺寸约束,在产品的三维装配和运动机构设计中要规定相关零件之间的尺寸配合和运动约束。
必然要在软件的实现技术上付出代价。模型的变异能力越强,软件的结构和算法也将越复杂。这就需要作出权衡,究竟应将软件作得简单、可靠,但是人工干预多,操作的自动化程度低,还是应该提出软件的复杂度,要求用户接受更高层次的培训和掌握更高的操作技巧,使软件达到更高的主尖用水平。这类问题不能简单地作出回答,但是一般说来,总应循序渐进。必须首先实现前一目标,软件达到实用可靠,为广大用户所接受,才有可能向后一目标迈进。忽视稳固的基础工作而过早设定过高的技术目标,往往要前功尽弃,全军覆没;而过分稳妥,不能快速更新软件功能,同样也要被市场所淘汰。这是稳妥求实和锐意创新、跨越式发展之间的一对辩证关系。
与特征造型技术密切相关的另一个理论课题是基于约束的产品形状描述及其求解算法。在绘制二维草图中需要约定几何元素之间的连接关系及其尺寸约束,在产品的三维装配和运动机构设计中要规定相关零件之间的尺寸配合关系和运动约束。这需要联立求解很多组方程组。由于工程设计中的情况千变万化,难以用一种通用算法来处理所有问题,所以在算法设计中仍有很大的研究和优化空间。 |
|