1 前言
三维参数化设计方式 因为其高效率、简易、可扩展性强等特性,正得到很多的研究设计工作人员的关心。运用VB对SolidWorks开展二次开发就是完成三维参数化设计方式 常见的方式之一。SolidWorks为客户对它进行二次开发给予了内置的运用程序接口(API),一切适用OLE和COM的程序设计语言都能够做为开发环境,如Delphi、C 、VisualC 、VisualBasic等。
调节阀门又被称为调压阀(如下图1所显示),是过程控制系统选用驱动力实际操作去更改液体总流量的设备,伴随着自动化技术水平的不断提升,已广泛运用于冶金工业、电力工程、化工厂、原油、纺织工业、造纸工业、装饰建材等产业部门 。调节阀门产品种类、规格型号多种多样,人力设计方案周期时间较长、高效率低。因而,科学研究Solid-Works二次开发技术性在调节阀门参数化设计中的运用,针对减少调节阀门新产品开发周期时间,提升设计方案效果和品质,具备关键实际意义。
2 开发设计基本原理与构思
对SolidWorks开展二次开发主要是根据此软件本身带来的API插口来保持的,该插口带来了大批量的OLE目标(对象系统架构如下图2所显示)。客户可以依靠高端计算机语言做为软件开发平台,在设计方案友善页面的与此同时,运用程序流程启用OLE目标对SolidWorks开展浏览和实际操作,进而完成Solid-Works的参数化设计。
有关软件开发平台的选择问题,可以融合开发者的实际情况采用。针对非软件工程专业的项目专业技术人员来讲,应用VisualBasic语言做为SolidWorks的二次开发服务平台较为理想化。该语言表达标准简易、开发设计高效率,所具有作用已能考虑研发规定。除此之外,SolidWorks宏拍摄作用的VBA自然环境与VisualBasic语言环境完全一致,有利于开发者迅速入门。
在选用VisualBasic6.0对SolidWorks开展二次开发全过程中,根据VB撰写的应用软件为手机客户端,SolidWorks为服务器端,VB撰写的应用软件推动SolidWorks进行规定的制定工作中。其基本上开发设计构思是在SolidWorks自然环境中,随意挑选某一型号规格的调节阀门商品,按恰当的设计方案关联制作出零件实体模型,与此同时运用SolidWorks宏拍摄作用获得有关编码,随后按照零件设计方案必须剖析并明确实体模型的主要参数自变量,根据VB程序编写环境艺术设计应用软件操作面板,以规格推动方法完成对调节阀门零件的设计方案。因为调节阀门多见通用化商品,零件构造类似程度高,因而VB应用软件在设计方案时,可以经过创建Access数据库查询,为客户给予零件设计方案时需需主要参数。该开发设计构思的工作内容如下图3所显示。
3 运用案例
下边融合调节阀门高压闸阀的参数化设计,论述根据VB和SolidWorks的二次开发技术性在调节阀门参数化设计中的运用。
3.1 实体模型特点制作
SolidWorks是一套根据特性模型的三维软件,它以手稿的形态和规格为基本,根据“拉申”、“转动”、“扫描仪”、“施工放样”指令将2D手稿变换为3D数字模型,随后在以上实体模型的基本上开展“摘除”、“圆弧”、“倒圆角”、“打孔”等实际操作,进行单独零件的制做。
电动蝶阀零件构造大部分具备旋转体特点,在制作实体模型时常见“拉申”、“转动”指令。制作调节阀门高压闸阀零件实体模型如下图4所显示。
3.2 明确自变量主要参数与管束
为了更好地使后面程序流程可以便捷地启用、改动实体模型主要参数,应融合实体模型的制定需要挑选和取名主要参数自变量,加上必需的大小管束关联。调节阀门高压闸阀设计方案自变量主要参数及管束关联如下所示:
Extrude1——顶端特点圆直径:D1、顶端特点圆长短:H1;
Extrude2——退刀槽孔径:D2;
Extrude3——外螺纹公称直径:D3,管螺纹长短:H2;
Cut-Extrude1——核心孔孔径:D4,核心孔长短:H;
Cut-Extrude2——加工工艺孔孔径:D5,加工工艺孔孔深:HD,工艺孔孔距:L;
Cut-Revolve1——加工工艺孔圆锥体一部分。
针对制作加工工艺孔圆锥体一部分的手稿,必须为其加上约束“HoleRadius@Sketch6”=“Exclude2_D1@Sketch5”/2,使加工工艺孔圆锥体底端半经与加工工艺孔直径成1:2的关联。
具体步骤为:开启制作好的高压闸阀实体模型,在加工工艺孔手稿里将直径名字取名为Exclude2_D1,在加工工艺孔圆锥体手稿里将圆锥体底端半经取名为HoleRadius,随后在工具栏“Tools”挑选“Equations”,在弹出来的窗口中添加以上约束就可以。
3.3 创建动态链接
运行VisualBasic6.0新创建规范exe工程项目,在“工程”→“引入”中使用必须载入的种类元件库,主要包含:SldWorks 2007 Type Library、SolidWorks 2007 Constant Type Library、SolidWorks2007 Commands Type Library和SolidWorks 2007 Exposed Type Libraries for add-inuse。载入种类元件库后,基本构建了VB与SolidWorks中间的通讯联接,促使VB可以启用SolidWorks的目标、方式 和特性。
3.4 设计方案客户浏览页面
依据上边所确认的自变量主要参数,设计方案高压闸阀主要参数,界定操作界面,如下图5所显示。
3.5 实体模型升级程序流程
要使自变量主要参数可以推动模型库中的实体模型,完成实体模型的自动升级,在进行以上流程,还要根据实体模型升级程序流程来推动。一部分调节阀门高压闸阀实体模型自动升级程序流程如下所示。
SetswApp=CreateObject(″SldWorks.Application″) '开启SolidWorks插口为启用其API函数做准备
swApp.Visible(True) '运行SolidWorks,使其对话框可视性
Set Part=swApp.OpenDoc(MyPath ″\Class_高压闸阀.SLDPRT″,swDocPART) '启用零件库实体模型
If Part Is Nothing Then
ExitSub
Else
Set Part=swApp.ActivateDoc(″Class_高压闸阀.SLDPRT″) '激话实体模型,使模型可改动
End If
Part.Parameter(″TopDiameter@Sketch1″).SystemValue=Class_Top '顶圆直径D1
Part.Parameter(″D1@Extrude1″).SystemValue=Class_Extrude1_D1 '顶端长短H1
Part.Parameter(″MidDiameter@Sketch2″).SystemValue=Class_Mid '退刀槽孔径D2
Part.Parameter(″D1@Extrude2″) .SystemValue=Class_Extrude2_D1 '退刀槽长短H-H1-H2
Part.Parameter(″DownDiameter@Sketch3″).SystemValue=Class_Down '外螺纹公称直径D3
Part.Parameter(″D1@Extrude3″) .SystemValue=Class_Extrude3_D1 '管螺纹长短H2
Part.Parameter(″Exclude1_D1@Sketch4″).SystemValue=Class_Exclude1_D1 '核心孔孔径D4
Part.Parameter(″Exclude2_D1@Sketch5″).SystemValue=Class_ScrewHoleDia '加工工艺孔孔径D5
Part.Parameter(″HoleDistance@Sketch5″).SystemValue=Class_ScrewHoleDis '加工工艺孔孔距L
Part.Parameter(″D1@Cut-Extrude2″).SystemValue=Class_ScrewHoleDepth '工艺孔孔深
HDPart.EditRebuild '再次创建实体模型
Part.ShowNamedView2 ″*Trimetric″,8 '调节实体模型角度
Part.ViewZoomtofit2
MsgBox″三维造型设计完毕″,vbOKOnly,″提醒″'表明实体模型升级结束信息内容
注:此程序流程在WindowsXp SolidWorks 2007 EN下调节根据。
3.6 创建规格主要参数数据库查询
依据之前所确认的调节阀门高压闸阀零件自变量主要参数,运用Access创建符合规定的数据库查询。数据库创建后,在系统中根据数据信息控制与特殊的数据分析表相互连接,为客户带来可选用的零件设计方案主要参数。
4 结果
用VB6.0对SolidWorks软件系统开展二次开发,完成了设计方案因素与计算机语言紧密结合的调节阀门零件参数化设计,其智能化水平高,可以更加方便快捷地制定出一系列构造类似的零件参数化设计实体模型,简单化了零件设计过程,提升了设计方案工作效能。因而,该办法在机械零件设计方案行业有着广泛的应用前景。
论文参考文献
[1] 江洪,李仲兴,邢启恩.SolidWorks2003二次开发基本与入门教程[M].北京市:电子工业出版社出版,2003.
[2] 何衍庆,邱宣振,杨洁,等.调压阀建筑工程设计与运用[M].北京市:化工出版社出版,2005.
[3] 徐国权,黄志超.根据SolidWorks的参数化设计二次开发科学研究[J].机械结构设计与科学研究,2007,23(1):68-87.
[4] 曾祥光,张玲玲.根据VB的SolidWorks二次开发[J].机械工程师,2006(3):131-132.
咨询需求
