基于SolidWorks二次开发的自动建模技术研究_第1页
基于SolidWorks二次开发的自动建模技术研究_第2页
基于SolidWorks二次开发的自动建模技术研究_第3页
基于SolidWorks二次开发的自动建模技术研究_第4页
基于SolidWorks二次开发的自动建模技术研究_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要:文章介绍了基于 SolidWorks为平台的二次开发原理。并选用 VB作为编程语言,以阶梯轴的二次开发为 例,详细说明具体开发步骤。实例证明,对要 SolidWorks进 行特定目标的二次开发,对于企业实现系列零件集成化,提 高产品设计柔性具有重要的现实意义。关键词:SolidWorks;参数化设计; VB1概述SolidWorks是世界上第一个基于 Windows平台的CAD设 计软件,它可实现零件造型、大型装配设计及工程图自动生 成等功能,且采用全相关技术,使得任何零件结构的修改, 都可以实现装配图和工程图的同步更新。功能强大、操作简 便,使其为越来越多的设计人员和企业所使用,已成

2、为目前 世界上最流行的CAD软件之一。然而,SolidWorks无法实现图纸复制、图形难以修改, 无法将草图导由建模,没有符合我国国家标准的零件库等不 足日益突显由来。企业对SolidWorks进行本土化的二次开发, 缩短设计周期,节约设计成本,已成为企业提高竞争力的必 然选择。2 SolidWorks二次开发原理与方法2.1 开发原理基于SolidWorks平台的参数化系统设计途径主要是利用SolidoWorks 提供的数以百计的 API (Appliation Programming Interface)函数1。如图1可见,Solidworks API的对象是一个多层次结构。 其中,Sld

3、Works对象是最顶层对象, 其子对象有 ModelDoc、 AttributeDef、 Frame、 Environment, SWPropertySheet 等, ModelDoc2 的子结构有 PartDoc、AssemblyDoc和 DrawingDoc, 程序访问的顺序是依上而下的遍历顺序,即要想访问低层对 象,必须先访问高层对象。SolidWorks提供的API函数涵盖了全部数据模型,故通 过调用API函数,并对各对象进行方法和属性的设置,就可 以轻松访问SolidWorks,实现草图绘制、特征生成、尺寸修 改、工程图信息提取等操作,使参数化系统设计成为可能。2.2 开发方法基于S

4、olidworks平台的二次开发的方法主要有两种2:其一是 OLE (Object Linking and Embedding )对象的链接与嵌 套技术,它的开发原理是是通过ID ispatch来暴露对象的属性和方法实现开发,生成.exe格式的文件,不可嵌套在 SolidWorks中运行,无法与SolidWorks实现链接。其二是COM(Component Object Model )组件对象模型技术,它的开发 原理是通过调用API函数的方法和属性来实现开发,生成动态链接.dll格式文件,可以桂于 SolidWorks的菜单中,实现与SolidWorks的集成。任何支持OLE技术和COM技术的

5、编程语言均可作为二 次开发的工具,如今流行的开发语言主要有:Visual C+、Delphi、Visual Basic 6.0等。这些开发语言各有千秋,其中VB语言由于其语言规则简单、可视化程度高,且宏命令所生成 的代码完全符合 VBA的语言格式,这使得 VB在二次开发优 势突生,成为选用较多的编程语言。3 SolidWorks二次开发实践研究对于二次开发初学者,宜采用变量与编程相强者合的开 发方法,即通过Solidworks的宏命令来录制一个完整零件的 建模过程,获得基础代码,再此基础上对代码进行一定的修 改和编辑,找到设计变量,作为程序运行和模型重建的纽带。 为了得到简明高效的基础代码,要

6、求在建模时采用尽量少的 尺寸和尽量简单特征命令。结合以上理论,选用VB作为开发工具,以阶梯轴为例, 在SolidWorks平台上对其进行二次开发,并对开发流程进行 详细阐述。3.1 开发流程3.1.1 绘制一个典型阶梯轴零件该实例中,在 Solidworks草图环境中绘制一个三阶阶梯 轴草图,用旋转特征命令进行旋转,生成实体零件。对整个过程用宏命令进行录制,得到.swp格式文件并保存,得到基 础代码。3.1.2 确定决定零件特征的设计变量在该设计实例中,决定阶梯轴特征的参数分别为:阶梯 轴的阶数及每段轴的轴长和轴径。所以将基础代码中的具体 数值分别用设计变量 L1、Phil、L1+L2 Phi

7、2、L1+L2+L3 Phi3 代替,通过设计变量从而实现程序与模型的链接,使零件自 动化和系列化成为可能。同理,可得到四阶、五阶、六阶阶 梯轴的代码。3.1.3 人机交互界面设计在宏命令中插入一个用户窗体,命名为“阶梯轴二次开 发系统”,并为其添加标签、复选框、文本框、命令按钮、 图像控件等,如图2所示。3.1.4 将二次开发系统嵌于 Solidworks菜单中将此二次开发系统通过【工具】的【自定义】命令添加 到Solidowrks菜单中,如图3所示。再次使用时,只需要输 入零件的参数即可生成一系列尺寸不同的阶梯轴,整个自动 化建模过程只需要几秒钟即可实现,大大缩短了设计周期。以下是关于阶梯

8、轴关键代码及主要的API函数功能的说明:Dim swApp As Object / 声明对象是 Solidworks 应用程序Dim Part As Object /声明对象是零件Private Sub CommandButton1_Click ()定义命令按钮的单击事件Set swApp =Application.SldWorks /Phi1 = TextBox1 将 textbox1 的数值赋予 Phi1L1 = TextBox2 将 textbox2 的数值赋予 L1SetPart=swApp.NewDocument ("C: ProgramDataSolidWorks Sol

9、idWorks2013templates gb_part.prtdot 工0, 0, 0)新建一个 SolidWorks文件swApp.ActivateDoc2 "零件 1 工 False, longstatusSet Part = swApp.ActiveDocDim skSegment As Object/ 对象声明Set skSegment = Part.SketchManager.CreateLine( 0#, 0#,0#, 0#, phi1 / 2000 , 0#) / 创建一条轮廓线Dim myFeature As Object/ 定义特征对象Set myFeature = Part.FeatureManager.FeatureRevolve2(True, True, False,False,False,False,0, 0,6.2831853071796, 0,False,False,0.01,0.01,0,0, 0, True, True,True) 草图旋转4结束语Solidworks提供的基于 COM技术的API接口函数的理论知识,设计开发了具有实际意义的阶梯轴参数化设计系统, 对企业的参数化设计具有重大的实际意义。参考文献1张华,陈定方.Visual Ba

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论