用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf

上传人:wj 文档编号:14652069 上传时间:2023-06-25 格式:PDF 页数:49 大小:1.99MB
下载 相关 举报
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第1页
第1页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第2页
第2页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第3页
第3页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第4页
第4页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第5页
第5页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第6页
第6页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第7页
第7页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第8页
第8页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第9页
第9页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第10页
第10页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第11页
第11页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第12页
第12页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第13页
第13页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第14页
第14页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第15页
第15页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第16页
第16页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第17页
第17页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第18页
第18页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第19页
第19页 / 共49页
用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf_第20页
第20页 / 共49页
亲,该文档总共49页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf

《用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf》由会员分享,可在线阅读,更多相关《用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf(49页珍藏版)》请在冰点文库上搜索。

用VB二次开发的solidworks渐开线直齿圆柱齿轮参数化设计.pdf

内蒙古科技大学本科生毕业设计说明书(毕业论文)题目:

基于solidworks的渐开线直齿圆柱齿轮参数化设计学生姓名:

李振军学号:

2002041228专业:

机械设计制造及其自动化班级:

机2002-2班指导教师:

李震老师内蒙古科技大学毕业设计说明书(毕业论文)目录摘要.错误!

未定义书签。

错误!

未定义书签。

Abstract.错误!

未定义书签。

错误!

未定义书签。

第一章引言.11.1SolidWorks软件简介.11.1.1功能描述.11.2CAD技术在工程设计中的应用及意义.31.2.1CAD的作用.31.2.2国内外一些流行的软件比较.41.3我国CAD技术现状及发展趋势.8第二章二次开发平台及语言.102.1二次开发的概念.102.1.1概念.102.2二次开发的发起.102.2.1发起原因.102.3SolidWorks二次开发介绍.102.3.1怎样开发SolidWorks.102.3.2选择开发语言.112.3.3开发的基本思路.11第三章渐开线直齿圆柱齿轮的参数化设计.113.1渐开线的形成及数学建模11II内蒙古科技大学毕业设计说明书(毕业论文)3.1.1形成原理及建模.123.2二次开发调用函数.133.2.1调用函数的关系133.2.2定义接口函数.133.3参数化数学模型143.3.1驱动参数.143.3.2建模程序.14第四章结论.51参考文献.51附录III内蒙古科技大学毕业设计说明书(毕业论文)2.3.3开发的基本思路2.3.3开发的基本思路1.录制一个简单实体的创建过程,提取“宏”语句。

2.再VisualBasic6.0中编辑宏语句,找到接口语句,用来调用SolidWorks2006的API。

3.运用渐开线函数建立计算关键点的坐标值。

4.调用样条曲线命令拟合渐开线,绘制出标准齿形。

5.调用拉伸命令,拉出齿轮实体。

6.调用阵列命令,得到完整齿形。

7.拉伸出凸台。

8.切制轴孔和键槽第三章圆柱渐开线直齿轮3D参数化设计第三章圆柱渐开线直齿轮3D参数化设计3.1渐开线的形成及数学建模3.1渐开线的形成及数学建模3.1.1渐开线的形成3.1.1渐开线的形成如图所示,当一直线BK沿着一圆周做纯滚动时,直线上任意点K,就是该圆的渐开线。

这个圆称为渐开线的基圆,它的半径用rb表示,直线BK叫做渐开线的发生线;角k叫做渐开线AK段的展角。

渐开线的性质1.发生线沿基圆滚过的线段长度等于基圆上被滚过的相应弧长。

2.渐开线上任意一点法线必然与基圆相切。

换言之,基圆的切线必为渐开线上某点的法线。

因为当发生线在基圆上作纯滚动时,它与基圆的切点B是发生线上各点在这一瞬时的速度瞬心,渐开线上K点的轨迹可视为以B点为圆心,BK为半径所作的极小圆弧,故B点为渐开线上K点的曲率中心,BK为其曲率半径和K点的法线,而发生线始终相切于基圆,所以渐开线上任意一点法线必然与基圆相切。

3.渐开线齿廓上某点的法线与该点的速度方向所夹的锐角称为该点的压力角。

1内蒙古科技大学毕业设计说明书(毕业论文)4.渐开线的形状只取决于基圆大小。

5.基圆内无渐开线。

sincoscossinbbbbxruruuyruruu=当用直角坐标来表示渐开线时,其方程为:

3.2二次开发调用的函数3.2二次开发调用的函数2内蒙古科技大学毕业设计说明书(毕业论文)3.2.1调用函数的关系3.2.1调用函数的关系在调用solidworks的过程中,我们只有对各个函数之间的关系和层次分的明了清楚,才能保证正确调用。

如上表所示,在编程中可以用作对象参考。

3.2.2定义接口函数3.2.2定义接口函数要调用solidworks的API其他功能,必须先调用接口对象。

一般的在程序里写作:

3内蒙古科技大学毕业设计说明书(毕业论文)DimswAppAsObjectSetswApp=CreateObject(SldWorks.Application)3.3参数化数学模型3.3参数化数学模型3.3.1驱动参数3.3.1驱动参数本次设计需要做到全参数化的有,齿数Z、模数m、压力角、轴径以及键槽的相关尺寸。

3.3.2建模程序3.3.2建模程序下面我就本次的设计程序附图说明设计过程。

在创建模型的过程中,首先,经过在VB环境下的数学模型的计算,得出重要数据。

并准备好传递给SolidWorks数据接口API,等待调用。

1*数据的定义及引用*DimswAppAsObjectDimPartAsObjectDimboolstatusAsBooleanDimlongstatusAsLong展角度数(弧度)DimuAsDouble基圆直径DimDbAsDouble齿顶圆直径DimDaAsDouble模数DimmAsDouble齿数DimZAsDouble分度圆直径DimDAsDouble4内蒙古科技大学毕业设计说明书(毕业论文)齿根圆直径DimDfAsDouble周节DimzhoujAsDouble法节DimfajAsDouble键槽宽及计算所用参数DimbAsDoubleDimbbAsDoubleDimt1AsDoubleDimDDAsDoubleDimLAsDoubleDimb1AsDouble压力角DimAsDouble齿顶高系数DimhAsDouble顶隙系数DimcAsDouble坐标函数点值:

x,yDimx00()AsDoubleDimy00()AsDoubleDimx0()AsDouble5内蒙古科技大学毕业设计说明书(毕业论文)Dimy0()AsDoubleDimx29()AsDoubleDimy29()AsDouble坐标函数点值:

p,qDimp00()AsDoubleDimq00()AsDoubleDimp0()AsDoubleDimq0()AsDouble过渡圆角DimAsDoublepi的近似值DimpiAsDoubleDimt0AsDoubleDimqAsDoubleDimnAsDoubleDimoAsDoubleDimADAsDoubleDimhhAsDoubleDimccAsDouble需要的数据定义完成后,下面就是完成渐开线及齿轮的其他参数相应计算。

这里程序中分为输入参数和输出参数,俩大部分。

前文已经论述过,创建一个渐开线直齿圆柱齿轮需要三个最基本的参数,模数、齿数、压力角。

我国标准齿轮的齿顶高系数及顶隙系数已经固定,这里不做参数化考虑。

下面就是有关的几个基本计算的程序:

pi=3.141592653589796内蒙古科技大学毕业设计说明书(毕业论文)Z=Val(Combo1.Text)m=Val(Combo2.Text)=Val(Combo3.Text)*pi/180Z=Val(Combo1.Text)m=Val(Combo2.Text)齿顶高系数h=1顶隙系数c=0.25齿顶圆直径Da=m*(Z+2*h)分度圆直径D=m*Z基圆直径Db=m*Z*Cos()齿根圆直径Df=m*(Z-2*h-2*c)周节zhouj=pi*m法节faj=pi*m*Cos()*输出值*Text1.Text=Str$(D)7内蒙古科技大学毕业设计说明书(毕业论文)Text2.Text=Str$(Df)Text3.Text=Str$(Da)Text4.Text=Str$(Db)Text5.Text=Str$(zhouj)Text6.Text=Str$(faj)*展角度数(弧度)u=Sqr(Val(Da)/Val(Db)2-1)DimtAsDouble*有了如上数据的准备,接下来就可以进行渐开线的计算了。

首先,通过渐开线的直角坐标方程,联立方程组,可以求出u的最大值,也就是齿顶圆上的展角度数。

我们知道,在齿数小于等于41的时候,齿廓上的渐开线的起点是在基圆上,所以在基圆上的展角度数等于零。

本次设计将展角度数7等分。

下面就是正向渐开线的的计算程序。

这里运用循环语句实现计算Fori=1To8Ift=uThen渐开线方程x0(i)=0.5*Db*Sin(t)-0.5*Db*t*Cos(t)y0(i)=0.5*Db*Cos(t)+0.5*Db*t*Sin(t)p00(i)=-0.5*Db*Sin(t)+0.5*Db*t*Cos(t)q00(i)=0.5*Db*Cos(t)+0.5*Db*t*Sin(t)t=t+g8内蒙古科技大学毕业设计说明书(毕业论文)p0(i)=p00(i)*Cos(j)+q00(i)*Sin(j)q0(i)=-p00(i)*Sin(j)+q00(i)*Cos(j)EndIfNexti在计算出正向渐开线的基础上,利用y轴的对称关系,可以计算出反向渐开线的坐标点值。

如下面的程序:

p00(i)=-0.5*Db*Sin(t)+0.5*Db*t*Cos(t)q00(i)=0.5*Db*Cos(t)+0.5*Db*t*Sin(t)t=t+gp0(i)=p00(i)*Cos(j)+q00(i)*Sin(j)q0(i)=-p00(i)*Sin(j)+q00(i)*Cos(j)通过上面俩段程序的计算,渐开线的点值就计算出来了。

这里反向渐开线仅仅是跟正向渐开线关于y轴对称,从理论上还不能形成齿廓,需要将其旋转一个齿厚所对应的角度。

程序如下:

DimsAsDoubleDiminvAsDoubleDimsbAsDoubleDimzjAsDoubleDimjAsDoubles=pi*m/2inv=Tan()-sb=Cos()*(s+m*Z*inv)j=2*sb/Db9内蒙古科技大学毕业设计说明书(毕业论文)有前面叙述可知41齿以下的齿廓曲线由径向线和渐开线组成。

径向线的起点为齿根圆的半径终点为基圆的半径。

数据如下:

xx=0yy=0.5*(Df-5)Xx1=xx*Cos(j)+yy*Sin(j)Yy1=xx*Sin(j)+yy*Cos(j)可知俩条径向线已经准备完毕。

接下来就是VB与SolidWorks之间的数据传递。

SolidWorks的API是完全对外开放的。

外部数据想要驱动SolidWorks就必须先打开他的数据接口,我们运用的语句是:

SetswApp=CreateObject(SldWorks.Application)SetPart=swApp.ActiveDoc数据接口打开后,程序中的绘图语句就会自动接收数据创建草图模型。

本次设计先绘制一个轮齿的草图。

主要步骤:

1.连接齿顶圆弧劣弧2.连接径向线与渐开线3.连接齿根圆优弧实现语句如下:

*样条曲线拟和*Part.SketchSpline8,0.001*xx,0.001*yy,0Part.SketchSpline7,0.001*x0

(1),0.001*y0

(1),0Part.SketchSpline6,0.001*x0

(2),0.001*y0

(2),0Part.SketchSpline5,0.001*x0(3),0.001*y0(3),0Part.SketchSpline4,0.001*x0(4),0.001*y0(4),0Part.SketchSpline3,0.001*x0(5),0.001*y0(5),010内蒙古科技大学毕业设计说明书(毕业论文)Part.SketchSpline2,0.001*x0(6),0.001*y0(6),0Part.SketchSpline1,0.001*x0(7),0.001*y0(7),0Part.SketchSpline0,0.001*x0(8),0.001*y0(8),0Part.SketchSpline8,0.001*xx1,0.001*yy1,0Part.SketchSpline7,0.001*p0

(1),0.001*q0

(1),0Part.SketchSpline6,0.001*p0

(2),0.001*q0

(2),0Part.SketchSpline5,0.001*p0(3),0.001*q0(3),0Part.SketchSpline4,0.001*p0(4),0.001*q0(4),0Part.SketchSpline3,0.001*p0(5),0.001*q0(5),0Part.SketchSpline2,0.001*p0(6),0.001*q0(6),0Part.SketchSpline1,0.001*p0(7),0.001*q0(7),0Part.SketchSpline0,0.001*p0(8),0.001*q0(8),011内蒙古科技大学毕业设计说明书(毕业论文)加入绘制草图命令即可实现目的,程序运行后会出现如上效果:

接下来,就是要通过执行拉伸命令制作出单个轮齿齿坯。

那么这里拉什的厚度也是有严格的数学关系保证的。

具体关系如下:

齿轮的拉伸厚度hh=L*0.3式中的L是随后凸台的拉伸厚度。

下面是拉伸命令及模型图Part.ShowNamedView2*上下二等角轴测,8boolstatus=Part.Extension.SelectByID2(草图1,SKETCH,0,0,0,False,0,Nothing,0)boolstatus=Part.Extension.SelectByID2(草图1,SKETCHREGION,0.003264443858942,0.001427552799902,-0.00269246083619,True,4,Nothing,0)Part.ClearSelection2Trueboolstatus=Part.Extension.SelectByID2(草图1,SKETCH,0.003264443858942,12内蒙古科技大学毕业设计说明书(毕业论文)0.001427552799902,-0.00269246083619,False,4,Nothing,0)Part.SelectionManager.EnableContourSelection=1boolstatus=Part.Extension.SelectByID2(草图1,SKETCHREGION,0.003264443858942,0.001427552799902,-0.00269246083619,True,4,Nothing,0)Part.FeatureManager.FeatureExtrusion2True,False,False,6,0,0.001*hh,0.001*hh,False,False,False,False,0.01745329251994,0.01745329251994,False,False,False,False,1,1,1,0,0,FalsePart.SelectionManager.EnableContourSelection=0从上图可以很直观地看出齿廓的对称拉伸。

SolidWorks2006版本中我们使用的是阵列命令生成完整的轮齿。

这里关键的命令有俩个:

1.基准轴的选取13内蒙古科技大学毕业设计说明书(毕业论文)2.阵列特征选择程序如下:

boolstatus=Part.Extension.SelectByID2(前视,PLANE,0,0,0,True,0,Nothing,0)boolstatus=Part.Extension.SelectByID2(点1原点,EXTSKETCHPOINT,0,0,0,True,0,Nothing,0)Part.InsertAxis2Trueboolstatus=Part.Extension.SelectByID2(拉伸1,BODYFEATURE,0,0,0,True,0,Nothing,0)Part.ActivateSelectedFeaturePart.ClearSelection2Trueboolstatus=Part.Extension.SelectByID2(拉伸1,BODYFEATURE,0,0,0,False,4,Nothing,0)14内蒙古科技大学毕业设计说明书(毕业论文)boolstatus=Part.Extension.SelectByID2(基准轴1,AXIS,0,0,0,True,1,Nothing,0)SetFeature=Part.FeatureManager.FeatureCircularPattern2(Z,2*pi/Z,False,NULL,False)最终效果如下图所示本次设计作的是整体式齿轮,所以需要拉伸一个凸台出来。

数学关系及命令如下:

拉伸凸台boolstatus=Part.Extension.SelectByID2(前视,PLANE,0,0,0,False,0,Nothing,0)Part.CreateCircle0,0,0,0,0.001*(b1/2),0Part.FeatureManager.FeatureExtrusion2False,False,False,6,0,0.0011*L,0.0011*L,False,False,False,False,0.01745329251994,0.01745329251994,False,False,False,False,1,1,1,0,0,FalsePart.SelectionManager.EnableContourSelection=015内蒙古科技大学毕业设计说明书(毕业论文)效果如图所示:

以上就是此次齿轮设计的主要步骤,下面进行键槽、圆角、轴孔等的处理。

同样我们也要参数化键槽和轴孔。

具体数学关系如下:

计算键槽和轴径DD=Val(Text5.Text)b=Val(Text6.Text)t1=Val(Text7.Text)bb=Sqr(DD/2)*(DD/2)-(b/2)*(b/2)L=1.4*DDb1=1.6*DD齿轮的拉伸厚度16内蒙古科技大学毕业设计说明书(毕业论文)hh=L*0.3通过4个点绘制出一优弧及三条直线的草图,然后再通过切除命令完成轴孔跟键槽的切制。

命令语句如下:

*切除键槽跟轴孔boolstatus=Part.Extension.SelectByID2(前视,PLANE,0,0,0,False,0,Nothing,0)Part.ClearSelection2TruePart.CreateArc20,0,0,0.001*-b/2,0.001*bb,0,0.001*b/2,0.001*bb,0,1Part.CreateLine20.001*b/2,0.001*(DD/2+t1),0,0.001*-b/2,0.001*(DD/2+t1),0Part.CreateLine20.001*-b/2,0.001*(DD/2+t1),0,0.001*-b/2,0.001*bb,0Part.CreateLine20.001*b/2,0.001*bb,0,0.001*b/2,0.001*(DD/2+t1),0boolstatus=Part.Extension.SelectByID2(前视,PLANE,0,0,0,True,0,Nothing,0)boolstatus=Part.Extension.SelectByID2(草图2,SKETCHSEGMENT,0,0,0,False,0,Nothing,0)Part.FeatureManager.FeatureCutFalse,False,False,6,0,0.0011*L,0.0011*L,False,False,False,False,0.01745329251994,0.01745329251994,False,False,False,False,0,1,1*如图所示:

17内蒙古科技大学毕业设计说明书(毕业论文)18在生成整个齿轮后,需要对齿根和齿廓作进一步进行。

实际上,在齿根与齿廓之间有一个过渡圆角,其值的大小为:

=0.38*m由于程序中实现自动实现。

最终效果放大后,如下图内蒙古科技大学毕业设计说明书(毕业论文)在本次设计中,我还尝试制作了腹板式齿轮的参数化,由于时间关系,不允许完成程序调试,这里我只将部分结果做一个展示。

程序以及最终效果如下:

腹板式及减重孔DimD2AsDoubleDimD0AsDouble腹板式及减重孔尺寸D2=Da-10-2.5*mD0=18AD=0.5*(DD+D2)cc=0.15*hh腹板式减重孔切除boolstatus=Part.Extension.SelectByID2(前视,PLANE,0,0,0,False,0,Nothing,0)Part.ShowNamedView2*正视于,0Part.ClearSelection2TruePart.CreateCircle0,0.001*AD,0,0,0.001*D0,0boolstatus=Part.Extension.SelectByID2(Arc1,SKETCHSEGMENT,0,0,0,False,0,Nothing,0)Part.FeatureManager.FeatureCutFalse,False,False,6,0,0.001*L,0.001*L,False,False,False,False,0.01745329251994,0.01745329251994,False,False,False,False,0,1,1Part.SelectionManager.EnableContourSelection=0Part.ActivateSelectedFeatureboolstatus=Part.SetUserPreferenceToggle(7,True)19内蒙古科技大学毕业设计说明书(毕业论文)Part.ActiveView().RotateAboutCenter0.00942906,0Part.ActiveView().RotateAboutCenter0.00942906,0Part.ActiveView().RotateAboutCenter0.00471453,0Part.ActiveView().RotateAboutCenter0.0141436,0Part.ActiveView().RotateAboutCenter0.00471453,0Part.ActiveView().RotateAboutCenter0.00942906,-0.00629463Part.ActiveView().RotateAboutCenter0.0141436,-0.0188839Part.ActiveView().RotateAboutCenter0.0141436,-0.0125893boolstatus=Part.Extension.SelectByID2(基准轴1,AXIS,-1.264530836956E-04,-5.422169130361E-04,0.02452875562676,True,0,Nothing,0)Part.ClearSelection2Trueboolstatus=Part.Extension.SelectByI

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2