盘形齿轮铣刀三维参数化自动设计系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Sub parametrioSub( ByVal Deg-Passed As Double,
Dim swApp As Object
'定义应用程序对象句柄
Dim Part As Object '定义零件对象句柄
Set swApp = Createobje(t “ SldWorks. Application”) '创建一个应用程序
2 利用 VB 编写程序自动计算盘形 齿轮铣刀的参数
图 1 SolidWorks 对象模型
各种盘形齿轮铣刀的三维 CAD 模型建立后, 根据用户输入的齿轮参数,用 VB 编写程序自动计算盘形齿轮铣刀的参数值,为后面的更新盘形齿轮铣刀
收稿日期:2005 - 05 - 24;修回日期:2005 - 07 - 12。 作者简介:陈善国(1966 - ),男,重庆万州人,副教授,从事机械 CAD / CAM 应及技术、CIMS 领域研究。
第6 期
陈善国,等 :盘形齿轮铣刀三维参数化自动设计系统
613
提供了参数。
(1)建立用户界面的对象。要建立应用程序,首先要明确这个应用程序执行后窗口上显示的形式,
如有哪些控件、对控件进行操作发生的哪些事件、控件间关系等。该设计共涉及除窗体外的 13 个对象,
10 个 Tex(t 文本框)和 3 个 Command( 命令按钮)。
主要有两种方法:一是用人机交互形式建立模型,设置合理的设计变量,再通过 VB 程序驱动设计变 量实现模型的更新,这种方法编程较简单,通用性好;二是完全用程序实现三维模型的参数化设计以及模
型的编辑,这种方法编程较前者复杂,但可以实现对具有复杂形体的零件造型,如生成精确的渐开线齿轮
齿廓。该设计采用第 1 种方法开发盘形齿轮铣刀零件。 3. 2 开发过程
swApp. ExitApp '退出 SolidWorks 应用程序,释放内存资源
614
重庆工商大学学报( 自然科学版)
End Sub
执行上述程序,得到运行结果如图 3 所示。
第 22 卷
图 3 程序运行结果
参考文献:
[1]李启炎,李光耀. SolidWorks 2003 三维设计教程[ M]. 北京:机械工业出版社,2003 [2]龚沛曾,陆慰民,杨志强. Visual Basic 程序设计教程(6. 0 版)[ M]. 北京:高等教育出版社,2001 [3]江洪,魏峥,王涛威. SolidWorks 二次开发实例解析[ M]. 北京:机械工业出版社,2004 [4]四川省机械工业局. 复杂刀具设计手册[ M]. 北京:机械工业出版社,1979 [5]R. S. 普雷斯曼[ 美]. 软件工程[ M]. 北京:国防工业出版社,1988
首先分析针对要建立的实体结构,在 SolidWorks 中创建实体并标注参数尺寸,尺寸的名字尽量表达 出特征,如盘形齿轮铣刀的尺寸名字分别表达为外径 Deg、内径 d、铣刀齿数 Zg 等,并且将它保存起来。第 2 步在 VB 中引用 SolidWorks 的对象库,具体做法是打开 VB,通过“ 工程 / 引用”菜单,为 VB 添加一个名为 “ Sldworks 2003 Type Library”引用。最后一步编制 VB 程序,该程序只包含 1 个 ParametricSub 自定义模 块,直接在 Command3 上编写程序。
第 22 卷第 6 期 Vol. 22 No. 6
重庆工商大学学报( 自然科学版)
J Chongqing Technol Business Univ.(Nat Sci Ed)
文章编号:1672 - 058X(2005)06 - 0612 - 03
2005 年 12 月
Dec. 2005
盘形齿轮铣刀三维参数化自动设计系统
(2)对象属性的设置。对象建立好后,就要为其设置属性值。属性是对象特征的表示,各类对象中
都有默认的属性值,设置对象的属性是为了使对象符合应用程序的需要。
(3)对象事件过程及编程。建立了用户界面并为
每个对象设置了属性后,就要考虑用什么事件来激发对
象执行所需的操作。这涉及选择对象的事件和编写事
件过程代码。根据本设计要求: ① 当单击“ 计算结果”
陈善国,邱全奎,黄英茹
( 重庆工商大学 机械与包装工程学院,重庆 400067)
摘 要:在分析基于 SolidWorks 的 ActiveX 百度文库utomation 的编程接口技术的基础上,利用 Visual
Basic6. 0 完成了对 SolidWorks 软件的二次开发,建立起盘形齿轮铣刀的三维参数化自动设计系统,
钮,程序运行结束,对命令按钮对象 Command2 对应的
Click 事件编程( 在 Click 事件代码中实现计算盘形齿轮
铣刀的参数值)。
当单击计算结果时,就会弹出 FORM1,提示用户输
入齿轮数据,程序运行界面见图 2。
图 2 输入数据界面
3 VB 开发 SolidWorks 应用程序的过程
下面用参数化设计盘形齿轮铣刀的实例来说明如何用 VB 对 SolidWorks 进行二次开发。 3. 1 开发方法
Set Part = swApp. OpenDo(c “ 盘形齿轮铣刀. SLDPRT”,swDocPART) '打开一个已存在的实体文件
Set Part = swApp. ActivateDo(c “ 盘形齿轮铣刀. SLDPRT”) '将打开的实体文件激活
Part. Paramete(r “ Deg@ 草图 2”). System Value = Deg-Passed '读入计算出的盘形齿轮铣刀的外径
有助于实现盘形齿轮铣刀三维 CAD 模型的自动更新。
关键词:盘形齿轮铣刀;SolidWorks;Visual Basic;三维参数化设计;ActiveX Automation
中图分类号:TH 164
文献标识码:A
随着信息时代的到来,尤其是加入 WTO 后,我国机械制造业与国际间的竞争更加激烈。如何利用现 代信息化技术改造传统制造业,是当前面临的技术课题。目前,在我国工业企业中,CAD 应用已较为普 遍,所使用的 CAD 软件种类也比较多,其中 SolidWorks 软件已逐渐成为主流。
SolidWorks 支 持 ActiveX Automation 技 术,在 VB 环 境 下 建 立 的 客 户 程 序 可 以 直 接 访 问 SolidWorks 中 的 对 象。ActiveX Automation 是 Microsoft 公司提出的一个基于 COM( Component Object Model)的技术标准。Windows 本身准许同时运行多个 应用程序,ActiveX Automation 准许这些应用程序 互相通讯。SolidWorks 为二次开发提供了大量的 API 对象,这些对象涵盖了 SolidWorks 的所有数据 模型,通过对这些对象属性的设置和方法的调用, 就可 以 在 用 户 自 己 开 发 的 DLL 中 实 现 与 SolidWorks 相同的功能。图 1 为 SolidWorks 对象模型 的层次结构图,这是一种树型结构模型,根为 SolidWorks 对象,SolidWorks 中的其他对象都是它的子 对象。为了得到一个特定的对象,必须先从 SolidWorks 对象对其子孙进行遍历。
命令按钮,马上根据输入的参数计算盘形齿轮铣刀的参
数值,这 就 要 求 对 命 令 按 钮 对 象 Command3 对 应 的
Click 事件进行编程;② 当单击“ 清屏”命令按钮,清除
10 个文本框的所有内容,就要对命令按钮对象 Com-
mand1 对应的 Click 事件编程;③ 当单击“ 结束”命令按
Key words:disk gear milling cutter;SolidWorks;Visual Basic;3D parameterized design;ActiveX Automation
责任编辑:李翠薇
3D parameterized automatic design system of disk gear milling cutter
CHEN Shan - guo,QlU Quan - kui,HUANG Ying - ru
( Dept. of Mechanics,Chongqing Technology and Business Univ. ,Chongqing 400067,China)
Private Sub Command3-Click( ) Call ParametricSub '调用 ParametricSub 自定义模块 End Sub
ParametricSub 自定义模块中,算法的整个过程可归纳为:创建 Sldworks 对象→打开实体模型文件→激
活文件→修改驱动尺寸→根据新尺寸重建模型→保存改变后的零件文件。具体代码和注释如下:
这里开发出 SolidWorks 三维参数化自动设计系统,设计人员需要不同参数的产品时,只需在相应的 地方输入新的参数值,SolidWorks 就会自动生成新的三维 CAD 模型。利用该系统可大大缩短产品开发周 期,减轻设计人员的劳动强度,提高设计效率。
1 利用 VB 开发 SolidWorks 进行二次 开发的基本原理
………
Part. Paramete(r “ K@ 草图 18”). System Value = K-Passed '读入计算出的盘形齿轮铣刀的铲背量
………
Part. EditRebuild '基于输入的参数更新模型
Part. Save '保存更新后的零件文档
swApp. CloseDoc“ 盘形齿轮铣刀. SLDPRT” '关闭零件文件,如不执行这一步骤 SolidWorks 就处于打开状态
Abstract:Based on analysis of ActiveX Automation and one programming interface technique for solidworks ,the further development of solidworks was finished by using Visual Basic 6. 0 and the 3D parameterized automatic design system of disk gear milling cutter . It helps the automatic updating of the 3D CAD models of the disk gear milling cutters.