您的位置:网站首页 > Solidworks

活塞压缩机零件在Solidworks中二次开发的参数化设计

时间:2010-11-12 16:07:44 来源:未知

随着CAD技术在企业中应用的不断深人,各种CAD设计软件得到了广泛的应用。Solidworks软件是Solidworks公司推出的世界上第一个专门在windows环境下进行机械设计的三维CAD软件,Solidworks软件提供完整的、免费的开发工具(API ),用户可以用微软的Visual Basic, Visual C++或其它支持OLE的编程语言建立自己的应用方案,从而实现参数化设计的目的,有效缩短产品的设计周期。本文通过Solidworks的二次开发技术,研究分析了活塞压缩机主要零件的参数化设计。

  1 Solidworks二次开发技术

  SolidWorks软件支持OLE标准,可以通过软件中提供的完整的、免费的二次开发工具一SolidWorksAPI应用程序编程接口)完全实现OLE自动化。

  SolidWorks API是SolidWorks的OLE编程接口,为程序员提供了大量的OLE对象以及对其所拥有的方法、属性和事件(如图1)。程序员可以在通用的开发平台,如Visual Basic,VBA,Visual C ++和Delphi中对这些OLE对象及其方法和属性进行操作,从而在自己开发的应用软件中实现诸如生成直线、构造实体、检查曲面表面参数等几乎所有SolidWorks软件的现有功能。

  

 

  其中最为常用的是ModelDoc2对象,此对象属于模型层,是SolidWorks的子对象,用ModelDoc2对象可以实现视图设置、轮廓线修改、参数控制、对象选择/打开和保存文档、生成编辑特征参量、生成框架等与实体模型相关的各种操作。

  任何支持OLE和COM的编程语言都可以作为SolidWorks的开发工具。最简单的二次开发工具是VBA,在涉及Excel时用VBA最为方便,VBA常用于录制宏,得到基本程序框架。易学易用的高级开发语言是VB,但功能有限。功能强大的语言是Visual C ++,但是人门较难。Delphi集中了VB和Visual C++两者的优点,学习过程中很容易上手,而且功能也非常强大,尤其在界面设计、数据库编程和网络编程方面更具有独到之处,但遗憾的是SolidWorks常常不支持Delphi + OLE。总之,各种软件都有各自的特点与不足,设计人员根据需要和要求选择合适的开发工具。

  2利用VB开发的过程

  本文通过VB编程软件来对Solid`Vorks进行二次开发,所以主要介绍VB的开发过程,具体的过程如下:

  (1)确定能反映零件特征的尺寸参数作为主要参数,并以此作为设计变量,同时确定尺寸相互关系。

  (2)提出设计意图,分析将要建立的模型,打开VB程序设计软件,根据设计意图创建窗体界面,创建程序主界面。

  (3)基于VB的。olidworks二次开发,最重要的是程序代码的编写。代码可以完全由开发者写人,即完全用程序实现三维模型的参数化设计以及模型的编辑,这种方法编程较为复杂,但可以实现对具有复杂形体的零件造型,这种方法要求开发者对solidworks API函数非常熟悉,但是solidworks API函数有几百个之多,对于初学者往往不容易掌握。一个简单实用的方法是先录制使用solidworks用户界面执行的操作,即录制宏,获得宏操作代码,将其复制添加到程序所需部分,然后编辑修改以达到程序要求,通过程序驱动设计变量实现模型的建立和更新,这种方法编程较简单,通用性好。

  (4)通过给出不同的系列尺寸来自动生成零件的三维模型,从而任意实现类似零件三维模型的创建。

  3实例分析

  活塞压缩机的零件数量较多,可以将主要零部件和常用的标准零部件分别建立数据库,方便设计人员使用和添加扩充零件模型数量。这里仅对活塞压缩机中的活塞件的设计过程举例分析。

  3. 1基本参数确定

  活塞压缩机中采用的活塞基本结构型式有:筒形、盘形、级差式、组合式、柱塞式等。本文以全封闭式压缩机无环部筒形活塞为例分析参数化设计过程。

  

 

  零件的实体建模,要求对实体进行系列化的参数化设计。根据实体的外形尺寸来选择适当的参数变量作为主要参数。如图2所示筒形活塞的基本参数为:活塞直径D、活塞销外径d、连杆宽度B等基本参数确定。

  其它尺寸要素可以通过关系表达式确定。具体几何关系表达式如下

  活塞高度:H=CH·D

  活塞销中心线高度:H1=CH1 · H

  筒形活塞内径分别为D1 = D-20,D2=D-10

  活塞端面厚度;t=0.05xD

  其中CH,CH1分别为活塞高度系数和活塞销中心线高度系数,其中CH取值范围0.6~1.3,CH1的取值范围0. 4~0.5。

  

 

  3. 2程序界面

  运用VB可以方便的建立程序的主界面如图4所示,设计人员只需要在输人参数部分输人相应的参数,默认情况下,零件的参数如表1所示,活塞其它尺寸参数与输人参数之间的关系在输人参数下方有说明,然后点击创建就可以建立所要求的零件模型。

  3. 3程序代码的编写

  对于程序代码的编写,简单实用的方法是先录制使用Solidworks用户界面执行的操作,即录制宏,获得宏操作代码,将其复制添加到程序中"创建"控件的click事件下,然后在代码中找到定义实体模型的尺寸值,用对应的尺寸参数代替这些尺寸值。编辑修改以达到程序要求,通过程序驱动设计变量实现模型的建立和更新,这种方法编程较简单,通用性好。具体代码如下:

  

 

  

 

  以上是模型创建的第一步的程序代码,其余的程序代码与此类似,无论是录制宏,获得宏操作代码,然后将其复制添加到程序所需部分编辑修改以达到程序要求,还是自己编译程序代码都要有以上的格式才能够运行。

  3. 4程序运行结果

  运行程序,输人相应的参数,点击"尺寸计算",程序根据参数的约束关系表达式计算出其它的尺寸参数,然后点击"创建"建立与用户输入参数相对应的零件模型。创建的零件模型如图4。

  

 

  4总结

  本文通过VB对中档建模软件solidworks进行二次开发,结合活塞压缩机设计的实际应用,实现了活塞压缩机零件设计过程的参数化、白动化。有效的缩短压缩机的开发和设计周期,大大的提高了工作效率,也使操作更加的简单方便。而且为压缩机进一步的CAE设计提供3D模型。

  运用solidworks二次开发技术有以下特点:

  (1)同样可以实现零件的参数化设计,对于压缩机设计人员,运用VB开发solidworks的方法更容易上手,能缩短参数化设计时间,提高效率;

  (2)对于生成的三维零件,在solidworks中可以很方便的生成工程图。