|
一、前言
6 I2 u( K5 T, e; M( O+ w; c4 `4 k6 F7 {3 y1 V4 q2 [8 D
SolidWorks采用了特征建模技术和设计过程的全相关技术,具有功能强大、易学易用和技术创新三大特点,是目前领先的、主流的三维CAD软件,具有配置管理、协同工作、零件建模、装配设计、全相关工程图、钣金设计、有限元分析、动态仿真等多项功能,在机械制造业应用非常广泛。该软件为用户提供了功能强大的API接口,而且具有宏录制功能,所以基于该软件进行二次开发。本文以挤压模CAD/CAPP系统为例介绍以VB为开发平台开发SolidWorks的过程。7 x- w2 |, G/ P) J8 u" m& X& \
8 G0 r3 p3 A3 x3 N3 k6 m9 C二、实体建模与装配
* s- W9 X4 J4 u' {9 j/ O% T
, L- P# a% I r5 B, _ t+ K1、系列零件
" @( D& P2 H& F, [
o3 ?* a) c$ M. M对于公司的系列零件及标准件可以先创建零件图模板,以供随时调用,避免重复劳动。由于SolidWorks软件是一个OLE/2应用软件,因此Excel的电子表格可用于建立设计表并输入到SolidWorks中。先用SolidWorks创建一个实体零件,再插入系列零件设计表以建立不同的配置用来驱动不同系列零件。配置适用于两个或两个以上的零件具有相同的特征,但在一些局部特征或局部尺寸上又存在着一定差异的情况。合理地使用配置,对零件系列、产品系列开发与管理有非常重要的意义。配置为产品设计提供了快捷有效的设计方法,最大限度地减少了重复设计,同时也减少了设计错误。Excel电子表格用来设定配置名称(列A)和尺寸或特征名称(行2),每一个配置的尺寸值放在内部对应的单元格中,如表1所示。对于需要系列驱动的尺寸,使用尺寸的全名"(尺寸名@特征名")插入到系列零件设计表中;对于特征的状态,用"|S状态@特征名"的格式插入。另外备注列和用户注释列可用来给各个配置增加文本字符串,使用格式为"|S备注"和"|S用户注释"。在应用时,调用相应的零件配置即可。
; y( k5 g0 ~4 Y: O4 | Q' T& Q# p3 `
9 x/ O. I. I( V4 \# B" ~
1 L' }1 D `5 v0 V% \2、非系列零件
# ]# T: P7 k5 _, ?+ u7 m3 ?" a8 X) S% {' l1 C6 u" c k& D: n
对于常用而又非系列零件,可以按形状特征分类,用VB调用SolidWorks的API函数创建零件模型,通过用户界面交互的形式或者采用知识库改变及驱动模型。由于SolidWorks提供了宏录制功能,可以先应用该软件创建零件模型并录制其创建过程,然后在VB环境中编译运行宏,即可调用SolidWorks创建相似零件,从而避免重复建模达到提高效率的目的。创建零件后还需要给模型添加一些自定义信息,以便在工程图中自动调用添加,该过程不能宏录制,调用API函数实现如下;
5 Z* L. G* r6 u# w! k3 O2 ?) \. e
retval=ModelDoc.AddCustomInfo3(configuration,FieldName,FieldType,FieldValue)
( C5 k }3 I' D5 C0 e/ i) U
( h; k) {6 A P. H5 F参数configuration为空,FieldName为要添加的自定义的名称,FieldType取1、2、3、4分别表示自定义的数值类型为文字、日期、数字、是与否,FieldValue为自定义属性的数值。
5 Y; l" ^; n2 n* F3 x ?8 `2 A' o& \; ?/ C; D: u
三、工程图二次开发; R" L! j( i$ o* X9 J, s
$ e6 O9 H( A6 w' e1 v" A$ F
二次开发的最终目的是更快捷地利用CAD技术进行产品开发、设计与制造。尽管现在许多公司都采用了CAM技术直接采集CAD数据信息在数控机床上加工零件,但工程图仍是目前大多数厂家表达设计思想、加工零件和检验产品不可缺少的工具。所以一个完整的二次CAD/CAPP系统最终应该能为用户生成工程图文件。8 l) X9 }! ]7 I+ D0 Y
6 M& J9 m* i; ?" H; e" c1 o0 b1、建立工程图格式文件
$ l f) l* u: N7 w0 K" W s/ w$ ^" j, Z
! A" x, G* Q, _% a0 V. a0 `7 C7 N首先在SolidWorks中按公司自己的图纸格式要求建立工程图的格式文件。按照不同的图纸格式绘制图框模板(包括图幅、图框、标题栏),分别在标题栏中相应的位置上添加链接到属性的注释。添加自定义属性采用如下格式:S|PRPSHEET":自定义属性名称",系统文件自定义属性采用链接。输入自定义属性的注释文字时,自定义属性的名称必须和模型中所添加的自定义属性名称完全一致,才能保证能够正确链接。. S4 h& z, F/ r5 U' D1 N, z
% H. ]2 V9 O5 Z6 n* l R* G
2、材料明细表5 C+ z5 J6 h# U2 ^
0 a+ Z6 E2 n* Z/ |先在图框模板中设定材料明细表的定位点,然后修改材料明细表。利用Excel修改SolidWorks提供的默认模板,按照公司习惯添加一些自定义项目的内容,行1各列的名称必须和自定义属性名称完全一致,如表2所示。
, |. I% Z. I6 [* z. [" _/ S 0 d9 c7 V" p( v7 V; L
2 J* N. f3 [( F
8 @, M- `- V" N) K9 x4 b* q
所有这些准备工作都做完后,就可以调用API函数绘制工程图。先打开图纸格式文件,按需要插入各种视图,标题栏和明细表的内容会按照模型的自定义属性自动填充,非常快捷、方便,而且格式统一。插入明细表调用API函数:retval=View.InsertBomTable(Template,Xloc,Yloc,Errors),其中Template为材料明细表Excel模板的路径及文件名称,Xloc、Yloc为插入明细表的位置,Errors为返回的错误类型。2 M% \: Q$ B- b3 j" L
0 I" ~$ \: q6 K9 r/ b! [, A$ I; L
四、挤压模CAD/CAPP系统开发2 |" i4 B' T% b z) z
. Z2 A+ z4 s" M( y$ d
挤压工艺是一种经验性要求很强的少、无切削加工工艺,考虑到目前的各种大型的CAD软件难以满足这种专业化设计的要求,为把专家丰富的知识与经验集成起来,设计了一套挤压模计算机辅助专家系统。该系统以VB为开发平台,对SolidWorks进行二次开发作为该系统的图形输入、输出子系统,完成了挤压力计算、挤压工艺分析、压力机选择和模具设计模块的设计。该系统对适用于挤压加工的零件进行分类编码,针对特定的类零件进行相应的工艺分析和模具设计,是对挤压行业专家的经验总结,大大提高了挤压工艺分析与模具设计的效率。本系统有如下功能:: u' T6 }6 T6 l* `
$ t& b9 ~4 d+ {
1、根据零件的材料和形状,自动选择挤压方案$ O6 U0 j9 A h- N
2、自动确定挤压工序。
+ q/ M' M: ]- ^; _( X, o+ c' t$ Z3、自动计算工序的工艺参数及压力。' ^4 x7 T0 G2 U1 @. v, J! v# r/ \
4、根据计算的挤压力和材料性能自动优化工艺参数,输出工艺卡。
/ ~# H9 u1 z8 ^1 V0 I5、人机对话选择合乎要求的压力机。
% Z" Y& A. p* \7 I2 t6、自动根据挤压工艺进行模具设计,向用户输出零件图、装配图及工程图,图1所示为模具的装配模型。( Q+ O0 i+ k: t) W i4 r
0 N4 w) v9 d7 m% t
5 G# P+ X5 f7 i' R# i9 V) {
G; Y0 C/ ~/ x. O& }; ?" N. g6 v6 y五、总结
/ z: ]+ ?: Z7 S% R( s/ O) f6 P4 o5 M. N2 F
本文通过对SolidWorks二次开发,自行设计了一套挤压模CAD/CAPP系统,是对SolidWorks专业化应用的开拓与实践,对其他专业的人员从事SolidWorks用户化、本地化的二次开发有重要的借鉴意义。通过集成大量挤压方面的资料和专家的经验,形成了挤压工艺与模具设计知识库,从而使缺乏挤压经验的技术人员也能依靠本系统进行挤压工艺和模具的设计,有利于挤压技术的推广与应用。 |
|