您的当前位置:首页正文

螺纹加工刀具丝锥和板牙的参数化建模方法研究

2022-11-25 来源:易榕旅网
第27卷 第1期 2019年1月 河南机电高等专科学校学报

Journal of Henan Mechanical and Electrical Engineering College Vol.27 No.1 Jan. 2019

螺纹加工刀具丝锥和板牙的参数化建模方法研究

宁廷州1,刘洋凯2

(1.枣庄学院 机电工程学院,山东 枣庄 277160;2.广州市交通技师学院 汽车工程系,广东 广州 510540)

摘要:螺纹加工刀具丝锥和板牙的规格较多,在进行模型设计时需要重复性的操作,使设计效率大为降低。为提高设计效率,基于三维建模软件SolidWorks 2016和计算机编程语言Visual Basic 6.0对其进行了参数化建模。结果表明:通过开发的程序,能直接修改丝锥和板牙的三维模型数据,定制出新的丝锥、板牙模型。

关键词:丝锥;板牙;参数化设计;SolidWorks 2016;Visual Basic 6.0

中图分类号:TG702 文献标识码:A 文章编号:1008–2093(2019)01–0009–08

众所周知,丝锥和板牙均为螺纹加工刀具,丝锥用来加工内螺纹,而板牙用来加工外螺纹。由于丝锥和板牙的切削角度较多,螺旋线的生成过程比较繁琐,而且丝锥和板牙的规格较多,在进行模型设计时需要大量重复性的操作,使设计效率大为降低。

为解决以上问题,基于三维建模软件SolidWorks 2016和计算机编程语言Visual Basic 6.0对丝锥和板牙进行了参数化建模。首先,使用三维建模软件SolidWorks 2016对丝锥和板牙进行了实体建模;其次,应用计算机编程语言Visual Basic 6.0对丝锥和板牙进行了参数化编程;最后在生成的丝锥和板牙的参数化建模程序中,通过交互界面输入相关参数,即可驱动零件尺寸进行调整,快速实现丝锥和板牙的参数化建模,使设计效率大为提高,从而缩短产品的开发周期。

[3]

[2]

[1]

1 参数化建模软件与过程

1.1 建模软件

SolidWorks 2016有强大的三维建模功能,而且也为操作者提供了丰富的应用程序编程接口(API)

[4-6]

,通

过调用这些API,可以将SolidWorks 2016中一些重复单调或者规则明确的操作通过简单的人机交互让计算机来完成。能够支持OLE和COM的编程语言(如Visual Basic 6.0、C++等)都可以成为SolidWorks 2016的二次开发工具。 1.2 编程语言

Visual Basic 6.0是一种可视化的、面向对象的高级计算机编程语言

[8-9]

[7]

。利用Visual Basic 6.0对SolidWorks

2016进行二次开发时,不用编写大量界面代码,只需要根据具体设计要求,利用系统所提供的控件,在界面上放置对象控件,并完成相应的对象控件的属性设置和程序编写。 1.3 参数化建模过程

参数化建模过程如图1所示,其中包括:在SolidWorks 2016中建立实体模型图,在方程式中获取各变量,在Visual Basic 6.0的参数化界面中添加窗体、编写程序和调试等内容,最后创建一套丝锥和板牙的参数化建模程序。

用户进入丝锥和板牙参数化程序后可快速设计交互式系统界面,按照需要,输入相应的参数数据即可

[10]

收稿日期:2018-11-25

基金项目:枣庄学院博士科研启动基金项目(2018BS030)

作者简介:宁廷州(1988―),男,山东泰安人,讲师,博士,主要从事机械设计及理论方向研究。

9

河南机电高等专科学校学报 2019年1期

对模型进行整体建模,最终输出零部件的三维模型。

2 丝锥的参数化建模

2.1 丝锥的实体建模

如图2所示为SolidWorks 2016中建立的丝锥模型。 SolidWorks2016建立实体模型获取及修改变量参数编写程序Visual Basic 6.0用户参数化界面螺纹加工刀具(丝锥和板牙)参数化建模程序图1 参数化建模过程 图2 丝锥实体模型

2.2 丝锥的参数化

查看在SolidWorks 2016中建立好的丝锥模型(图2所示)的方程式,找出相关参数尺寸所对应的属性,如图3所示。

图3 丝锥参数尺寸属性

根据上述方程式结果,找出主要的参数尺寸,采用Visual Basic 6.0编程,得到丝锥的参数化代码如下: Dim swApp As Object Dim Part As Object Dim strfilename As String Dim longstatus As Long

10

宁廷州,等:螺纹加工刀具丝锥和板牙的参数化建模方法研究

‘ VB与SolidWorks进行连接 Dim (大径)D As Double Dim(螺距)P As Double Dim (螺纹长度)l2 As Double Dim(方头长度)l3 As Double Dim(方头宽度)a As Double Dim(螺纹总长)L As Double Dim(切削缘长度)l1 As Double Dim(槽数)Z As Byte ‘定义相关参数

If Dir(strfilename) = \"\" Then

MsgBox (\"文件不存在,请检查路径:\"& vbCrLf & strfilename) Set swApp = CreateObject(\"SldWorks.Application\") Exit Sub End If

strfilename = \"E:\\计算机\\丝锥.SLDPRT\" ‘定义模型文件的存放路径

Set swApp = CreateObject(\"SldWorks.Application\")‘open SolidWorks swApp.Visible = True

‘设置和获取SolidWorks应用程序的可见性

Set Part = swApp.OpenDoc4(strfilename, 1, 0, \"\‘打开丝锥模型文件

Set Part = swApp.ActivateDoc(\" 丝锥 \") ‘返回当前活动的文件

Part.Parameter(\" D1@草图1@丝锥.SLDPRT \") .systemValue = (大径)D / 1000

Part.Parameter(\" D1@凸台-拉伸1@丝锥.SLDPRT \") .systemValue = (螺纹总长)L / 1000 ‘建立棒料模型

Part.Parameter(\" D1@草图3@丝锥.SLDPRT \") .systemValue = (方头宽度)a / 1000

Part.Parameter(\" D3@草图3@丝锥.SLDPRT \") .systemValue = (大径)D / 2000 - (方头宽度)a / 1000 Part.Parameter(\" D2@草图3@丝锥.SLDPRT \") .systemValue = (方头长度)l3 / 1000 Part.Parameter(\" D1@切除-拉伸1@丝锥.SLDPRT \") .systemValue = 2 * (大径)D / 1000 ‘建立锥柄

Part.Parameter(\" D3@螺旋线/涡状线1@丝锥.SLDPRT \") .systemValue = (螺纹长度)l2 / 1000 Part.Parameter(\" D1@草图6@丝锥.SLDPRT \") .systemValue = (大径)D / 1000 ‘生成校正区螺旋线

Part.Parameter(\" D1@草图7@丝锥.SLDPRT \") .systemValue =(螺距)P / 1000 Part.Parameter(\" D5@草图7@丝锥.SLDPRT \") .systemValue = (大径)D / 2000 Part.Parameter(\" D4@草图7@丝锥.SLDPRT \") .systemValue = (螺距)P / 4000 ‘定义生成螺旋槽的直径和螺纹深度

Part.Parameter(\" D2@草图5@丝锥.SLDPRT \") .systemValue = (大径)D / 2000 Part.Parameter(\" D3@草图5@丝锥.SLDPRT \") .systemValue =(丝锥总长) L / 4000

Part.Parameter(\" D1@草图5@丝锥.SLDPRT \") .systemValue =(螺纹长度) l2 / 1000+5 / 1000 Part.Parameter(\" D4@草图5@丝锥.SLDPRT \") .systemValue = (大径)D / 5000 ‘定义容屑槽的长度及深度

11

河南机电高等专科学校学报 2019年1期

Part.Parameter(\" D1@阵列(圆周)2@丝锥.SLDPRT \") .systemValue = (槽数)Z ‘选择容屑槽数

Part.Parameter(\" D1@草图4@丝锥.SLDPRT \") .systemValue = (大径)D / 2000 Part.Parameter(\" D2@草图4@丝锥.SLDPRT \") .systemValue = 3 *(大径) D / 5000 ‘生成切削刃螺旋线

Part.Parameter(\" D1@草图6@丝锥.SLDPRT \") .systemValue = (大径)D / 1000

Part.Parameter(\" D4@螺旋线/涡状线1@丝锥.SLDPRT \") .systemValue = (螺距)P / 1000 Part.Parameter(\" D3@螺旋线/涡状线1@丝锥.SLDPRT \") .systemValue = (螺纹长度)l2 / 1000 ‘定义切削刃的深度,直径

Part.Parameter(\"D1@草图8@丝锥.SLDPRT\").systemValue = ((大径)D - 1) / 1000 Part.Parameter(\"D1@草图19@丝锥.SLDPRT\").systemValue = ((大径)D - 1) / 2000 Part.Parameter(\"D2@草图19@丝锥.SLDPRT\").systemValue = (螺距)P / 4000

Part.Parameter(\"D4@草图19@丝锥.SLDPRT\").systemValue = (螺距)P / 1000 + 1 / 10000 Part.Parameter(\"D4@螺旋线/涡状线2@丝锥.SLDPRT\").systemValue = (螺距)P / 1000

Part.Parameter(\"D3@螺旋线/涡状线2@丝锥.SLDPRT\").systemValue = (切削缘长度)l1 / 1000 ‘定义切削缘的长度 Part.EditRebuild

‘对丝锥模型文件进行重建 Part.ViewZoomtofit2 ‘全屏显示零件 End Sub

2.3 丝锥参数化建模实例

(1)在Visual Basic 6.0VB窗口界面输入丝锥M6×1参数,如图4所示。

图4 丝锥M6×1参数化VB界面

(2)SolidWorks 2016加载的丝锥M6×1模型如图5所示。

3 板牙的参数化建模

3.1 板牙的实体建模

如图6所示为SolidWorks 2016中建立的板牙的实体模型。

12

宁廷州,等:螺纹加工刀具丝锥和板牙的参数化建模方法研究

图5 丝锥M6×1模型 图6 板牙实体模型

3.2 板牙的参数化

查看在SolidWorks 2016中建立好的板牙模型(图6所示)的方程式,找出相关参数尺寸所对应的属性,如图7所示。

图7 板牙参数尺寸属性

根据上述方程式结果,找出主要的参数尺寸,采用Visual Basic 6.0编程,得到板牙的参数化代码如下: Dim swApp As Object Dim Part As Object Dim strfilename As String Dim longstatus As Long ‘ VB与SolidWorks进行连接 Dim(公称直径)M As Double Dim(螺距)P As Double Dim(板牙宽度)E As Double Dim(螺钉直径)d As Double Dim(板牙大径)D1 As Double Dim(板牙倒角)C As Double Dim (容屑槽数) Z1 As Byte

13

河南机电高等专科学校学报 2019年1期

Dim (调节孔数) Z2 As Byte ‘定义相关参数

If Dir(strfilename) = \"\" Then

MsgBox (\"文件不存在,请检查路径:\"& vbCrLf & strfilename) Set swApp = CreateObject(\"SldWorks.Application\") Exit Sub End If

strfilename = \"E:\\计算机\\板牙.SLDPRT\" ‘定义模型文件的存放路径

Set swApp = CreateObject(\"SldWorks.Application\") swApp.Visible = True

Set Part = swApp.OpenDoc4(strfilename, 1, 0, \"\‘打开板牙模型文件

Set Part = swApp.ActivateDoc(\"板牙\") ‘返回当前活动的文件

Part.Parameter(\" D1@草图1@板牙.SLDPRT \") .systemValue = (板牙大径)D1 / 1000 Part.Parameter(\"D1@草图4@板牙.SLDPRT\").systemValue =(公称直径) M / 2000 Part.Parameter(\" D3@草图1@板牙.SLDPRT \") .systemValue = (公称直径)M / 2000 Part.Parameter(\"D1@阵列(圆周)1@板牙.SLDPRT\").systemValue = (容屑槽数)Z1

Part.Parameter(\"D1@草图32@板牙.SLDPRT\").systemValue = ((公称直径)M - 0.5) / 1000 Part.Parameter(\"D2@草图32@板牙.SLDPRT\").systemValue = (公称直径)M / 1000 Part.Parameter(\" D1@凸台-拉伸1@板牙.SLDPRT \") .systemValue = (板牙宽度)E / 1000 Part.Parameter(\" D1@切除-拉伸2@板牙.SLDPRT \") .systemValue = (板牙宽度)E / 1000 Part.Parameter(\" D1@倒角1@板牙.SLDPRT \") .systemValue = (板牙倒角)C / 1000 ‘建立容屑孔和调节槽模型

Part.Parameter(\"D1@草图33@banya.SLDPRT\").systemValue = (板牙宽度)E / 2000 Part.Parameter(\"D2@草图33@banya.SLDPRT\").systemValue = (螺钉直径)d / 1000 Part.Parameter(\"D1@基准面4@板牙.SLDPRT\").systemValue = (板牙宽度)E / 1000 Part.Parameter(\"孔直径@草图36@板牙.SLDPRT\").systemValue = (螺钉直径)d / 1000 Part.Parameter(\"D1@阵列(圆周)2@板牙.SLDPRT\").systemValue = (调节孔数)Z2

Part.Parameter(\"D1@基准面4@板牙.SLDPRT\").systemValue = ((板牙大径)D1 + 10) / 2000 ‘生成调节孔和紧固孔

Part.Parameter(\"D4@螺旋线/涡状线5@板牙.SLDPRT\").systemValue =(螺距) P / 1000

Part.Parameter(\"D5@螺旋线/涡状线1@板牙.SLDPRT\").systemValue = (板牙宽度)E /(螺距) P + (螺距)P

Part.Parameter(\"D4@螺旋线/涡状线1@板牙.SLDPRT\").systemValue = (螺距)P / 1000 Part.Parameter(\"D3@螺旋线/涡状线1@板牙.SLDPRT\").systemValue =(板牙宽度) E / 1000 Part.Parameter(\"D1@草图4@板牙.SLDPRT\").systemValue =(公称直径) M / 1000 Part.Parameter(\"D1@草图8@板牙.SLDPRT\").systemValue = 7 *(螺距) P / 8000 Part.Parameter(\"D5@草图8@板牙.SLDPRT\").systemValue = (螺距)P / 8000

Part.Parameter(\"D2@草图8@板牙.SLDPRT\").systemValue = ((公称直径)M -(螺距) P) / 2000 Part.Parameter(\"D1@草图30@板牙.SLDPRT\").systemValue = (公称直径)M / 1000 Part.Parameter(\"D1@草图31@板牙.SLDPRT\").systemValue =(螺距) P/ 8000

Part.Parameter(\"D2@草图31@板牙.SLDPRT\").systemValue = 7 * (螺距)P / 8000 + 1 / 10000

14

宁廷州,等:螺纹加工刀具丝锥和板牙的参数化建模方法研究

Part.Parameter(\"D3@草图31@板牙.SLDPRT\").systemValue = (公称直径)M / 2000 ‘生成螺纹孔及两端的切削锥部分 Part.EditRebuild

‘对板牙模型文件进行重建 Part.ViewZoomtofit2 ‘全屏显示零件 End Sub

3.3 板牙参数化建模实例

(1)在Visual Basic 6.0窗口界面输入板牙M5×1参数如图8所示。

图8 板牙M5×1参数化VB界面

(2)用SolidWorks 20167加载板牙M5×1模型如图9所示。

图9 板牙M5×1模型

4 结论

基于SolidWorks 2016和Visual Basic 6.0实现了螺纹加工刀具的参数化建模,包括螺纹加工刀具丝锥的参数化设计和板牙的参数化设计。通过开发的程序,能直接修改丝锥和板牙的三维模型数据,定制出新的丝锥、板牙模型,有效地提高了螺纹加工刀具(丝锥和板牙)的模型设计效率。

(责任编辑 王 磊)

15

河南机电高等专科学校学报

参考文献:

2019年1期

[1] 谭建华.浅谈螺纹的数控铣削加工[J].中国设备工程,2017(6):131-132.

[2] 姚建平,邓远超,赵丽.基于SolidWorks的丝锥三维模型与二维图形的双向尺寸驱动[J].工具技术,2010,44(3):72-75. [3] 牛拴平,王建卫.基于UG的丝锥参数化建模与丝锥库建立[J].工具技术,2016,50(11):115.

[4] 刘敏,何智敏.基于Solidworks的阶梯轴类零件参数化设计研究[J].电脑编程技巧与维护,2013(4):58-61. [5] 索超,李玉翔,林树忠.基于VB语言对SolidWorks参数化设计的二次开发[J].制造业自动化,2013,35(8):137-139. [6] 孙付春.李玉龙.基于SolidWorks API的渐开线齿轮的参数化建模[J].中国农机化学报,2014,35(1):202-204. [7] 徐宏海,华利敏,詹宁.基于VB和SolidWorks的调节阀参数化设计[J].机电工程技术,2009,38(4):30-32. [8] 何远超.基于SolidWorks的离心通风机参数化设计及研究[D].淮南:安徽理工大学,2011. [9] 叶修梓,陈超祥.SolidWorks高级教程:二次开发与API[M].北京:机械工业出版社,2009.

[10] 韩泽光,孙君祥,郝瑞琴.基于VB对SolidWorks参数化设计的二次开发[J].机电产品开发与创新,2017,30(5):79-81.

Study on Parametric Modeling Method of Threaded Cutting Tool Screw

Tap and Threading Die

NING Ting-zhou,et al

(College of Mechanical and Electrical Engineering, Zaozhuang University, Zaozhuang 277160, China)

Abstract: Because the cutting angles of threaded cutting tool screw tap & threading die are more, the generation of screw thread is more complicated. Moreover, screw tap & threading die have many specifications and require repetitive operation when drawing, which greatly reduces the design efficiency of screw tap & threading die. In order to improve the design efficiency of screw tap & threading die, parametric modeling of the screw tap & threading die is studied based on the 3D modeling software SolidWorks 2016 and the computer programming language Visual Basic 6.0. The results showed that the parametric modeling of screw tap& threading die is realized.

Key words: screw tap; threading die; parameterization; SolidWorks 2016; Visual Basic 6.0

16

因篇幅问题不能全部显示,请点此查看更多更全内容