1 用面向对象技术表达特征
- 特征表达有利于数据抽象和代码抽象
- 在几何造型中,最常用的表示形式是CSG和B-rep法。CSG和B-rep表示法能很好地表达形体的形状,但是,它们不能够表达零件的工艺信息和制造信息。特征表示从应用层来定义形体,可以较好地表达设计者的意图,为编制工艺、制造和检验产品提供依据。基于特征的设计面向制造全过程,是CAD/CAPP/CAM集成的关键,因而具有高度抽象的对象化属性,表述了对象的群体特征,这一点与面向对象的程序中的类(class)的功能是相同的。
- 用类(class)来表达特征,能很方便地实现数据抽象和代码抽象。使CAPP运用决策树、决策表进行推理时,不必把决策写到源程序中,从而提高了程序重用性。特征类可一般地表示为如图H 的形式。
- 特征类中protected成员有两个:存储几何索引数据的结构指针和存储几何参数的结构指针,将几何信息分别存储于两个结构中,目的是让经常使用的项存放到内存中,而一般数据项存放到硬盘上,可以节省程序运行时占用的内存空间。private成员是非几何特征参数,它们以属性的方式挂靠到几何信息上。 Public的成员有很多,比如文件存储函数,构造函数和析构函数等等。我们最关心是的几何参数和非几何参数操作函数,设计得好的操作函数可以方便地实现特征的代码抽象。
图1 特征类的一般表示形式 - 特征具有封闭性
- 特征具有封闭性。特征是在设计、加工、装配过程中进行推理所需的关于零件形状和其它属性的信息集合。我们提到的某一个特征或某一类特征,是指特定的信息内容。比如圆孔,它就是指用中心线、长度、直径来表达的一个空的圆柱,从而使之与槽等其它特征区别开来。同时,我们知道孔和槽之间交流数据的行为是很难发生的。即孔特征具有封闭性。对象的一个最大特点就是封装,它将数据抽象和代码抽象结合在一起,增加了软件的模块化程度,增强代码的重用性。面向回转体零件,仿照VC++的MFC类库,我们为CAPP系统建立一个特征类库(Feature class Library),它包括形状特征类以及非形状特征的各种特征类定义,供实例化特征时使用,每个特征类封装了一些有关操作特征属性的操作方法。
- 特征具有层次性
- 第二节中我们提到孔与槽之间很难发生数据交换,但是孔与螺纹孔之间就发生了数据交流。因为,螺纹孔是孔的派生。从此可知特征具有层次性,特征的层次从设计、工艺和加工等不同的角度有不同的划分。生产条件、加工设备、加工用刀具的不同,特征层次的划分也是不同的。比如阶梯轴,在普通车床上加工,阶梯轴是光轴的派生;而在仿形车床上加工,阶梯轴就无需经过光轴来派生,而是经过成型加工得到。为了方便特征层次的划分,本文以几何形体的加工要求为例,将特征分为孔、槽、轴肩、阶梯、型腔、圆角。其中对孔作了重点分析,运用面向对象的技术作出了如图$ 的划分。面向对象的技术提供了类的继承性,通过继承和参数化赋值可以方便地实现动态特征定义和扩充。
图2 加工特征的动态层次结构- 特征在性质上与面向对象技术有许多沟通点,用面向对象技术表达特征是很自然的事。引入面向对象类的概念,使得特征很方便地实现数据与代码的抽象和封装。许多不必要的具体数据能从源程序中剔除,增强了代码重用性。特征与特征之间的区别有了明确的界线,不会产生混乱现象,给程序员提供了有效的编程工具。引入面向对象的技术,可以使特征方便地被扩充,实现特征类库的动态管理。在程序编制过程中只需补充代码派生新类,无需对整个程序做大的改动。从而使得程序设计具有清晰的信息流和数据结构。
- 第二节中我们提到孔与槽之间很难发生数据交换,但是孔与螺纹孔之间就发生了数据交流。因为,螺纹孔是孔的派生。从此可知特征具有层次性,特征的层次从设计、工艺和加工等不同的角度有不同的划分。生产条件、加工设备、加工用刀具的不同,特征层次的划分也是不同的。比如阶梯轴,在普通车床上加工,阶梯轴是光轴的派生;而在仿形车床上加工,阶梯轴就无需经过光轴来派生,而是经过成型加工得到。为了方便特征层次的划分,本文以几何形体的加工要求为例,将特征分为孔、槽、轴肩、阶梯、型腔、圆角。其中对孔作了重点分析,运用面向对象的技术作出了如图$ 的划分。面向对象的技术提供了类的继承性,通过继承和参数化赋值可以方便地实现动态特征定义和扩充。
2 约束条件下的特征表示
图3 精度约束 |
图4 同轴度约束的表示形式 |
3 面向对象技术表达零件工艺特征
- 装载零件信息
- 本文的工作是从设计CAPP系统的过程中提出来的。CAPP的零件信息是通过数据接口与微机网络从CAD信息库中获取的。零件信息在内存中的表达方式基于特征二叉树的数据结构。每个主特征类根据制造要求从基本形状特征类派生或给其对象赋值而得;辅特征类是主特征类的继承和扩展。
- 如图5所示,如果圆柱Ø60K6与圆柱Ø50f6之间没有同轴度约束,可以按一般要求一般加工,机床的选择和工序工步的排列满足经济要求即可。如果两圆柱之间要求较高的同轴度约束,那它们必须在较高精度机床上一次安装加工成型。从程序设计的角度来看,两台阶同轴度约束类是两主特征(Ø60K6圆柱面和Ø50f6圆柱面)类的公有派生,同轴度是通过指向这两个主特征类的指针实现的。各主、辅特征类和约束派生类的对象是CAPP系统执行的实例,它们是CAPP系统进行工艺决策的依据和基础。
图5 一个示例零件 - 选择加工方法
- 系统以特征的类型和加工要求为依据,从加工方法知识库中自动搜索到与某一特征相匹配的加工方法,并以规则形式给出,其结论链表就是该特征的加工方法链,将结论链表靠挂在零件特征二叉树的每个结点上就完成了该特征加工方法链的选择。若某特征是一全新的特征或其加工要求特殊,在加工方法知识库中找不到相应的加工方法链规则时,系统将弹出对话框供用户方便选择或输入该特征的加工方法,经确认后,系统自动将所补充的加工方法链存入加工方法知识库中供下次决策选用。
4 结束语
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。
网友评论
匿名:
最新反馈
- 暂无反馈
无须注册,轻松沟通