2007年4月6日

Pro/E参数化斜齿轮建模

  论坛上关于斜齿轮的教程和Part并不少,但我觉得它们总是不够完美。比如:不能以参数的形式改变斜齿轮的螺旋方向,螺旋角度太大会再生不了……。可能是我的要求太过苛刻了吧。经本人N久的思考,终于想出了一些方法吧。如右图是同一个Part的两个不同的螺旋方向截图,螺旋角可以很大,整个齿面可旋转到0°~355°范围内。


1.编辑Program。
在INPUT和END INPUT之间加入以下内容:
TOOTH_NUMBER NUMBER
"Enter the number of teeth: "
MODULE NUMBER
"Enter the module: "
PRESSURE_ANGLE NUMBER
"Enter the pressure angle: "
HELIX_ANGLE NUMBER
"Enter the helix angle: "
HELIX_DIRECTION YES_NO
"Select the Left or Right direction (YES=Left-side / NO=Right-side): "
FACE_WIDTH NUMBER
"Enter the face width: "
在RELATIONS和END RELATIONST之间加入以下内容:
TOOTH_NUMBER=ABS(TOOTH_NUMBER)
MODULE=ABS(MODULE)
PRESSURE_ANGLE=ABS(PRESSURE_ANGLE)
HELIX_ANGLE=ABS(HELIX_ANGLE)
FACE_WIDTH=ABS(FACE_WIDTH)
PITCH_RAD = TOOTH_NUMBER*MODULE/2
ADDENDUM_RAD = PITCH_RAD+1*MODULE
DEDENDUM_RAD = PITCH_RAD-1.25*MODULE
BASE_RAD = PITCH_RAD*COS(PRESSURE_ANGLE)
IF HELIX_DIRECTION==YES
TOOTH_HELIX = FACE_WIDTH*TAN(HELIX_ANGLE)/PITCH_RAD*(180/PI)
ELSE
TOOTH_HELIX = -FACE_WIDTH*TAN(HELIX_ANGLE)/PITCH_RAD*(180/PI)
ENDIF
ROLL_ANGLE=SQRT((ADDENDUM_RAD+0.5)^2-BASE_RAD^2)/BASE_RAD
THETA_AT_RP=SQRT(PITCH_RAD^2-BASE_RAD^2)/BASE_RAD*(180/PI)-PRESSURE_ANGLE
保存退出并输入参数数值,合理就OK了。如:齿数TOOTH_NUMBER=20、模数MODULE=1、压力角PRESSURE_ANGLE=20、螺旋角HELIX_ANGLE=15、螺旋方向HELIX_DIRECTION=yes(YES左旋/NO右旋)、齿厚FACE_WIDTH=3。

2.创建齿顶圆ADDENDUM_CIRCLE、分度圆PITCH_CIRCLE、齿根圆DEDENDUM_CIRCLE拉伸曲面
  齿顶圆为Both Side/Capped Ends;分度圆和齿根圆均为Open Ends,深度为Up to Surface,如下图为尺寸所加入的关系内容。其中358°是控制齿根圆开口的,可保证齿形转过180°仍能顺利生成。

3.以方程的形式创建螺旋线
  Inster=>Datum=>Curve=>From Equation选择默认的PRT_CSYS_DEF坐标系,点先圆柱坐标Cylindrical,在记事本中加入以下方程:
r=PITCH_RAD
theta=t*TOOTH_HELIX-TOOTH_HELIX/2+90
z=FACE_WIDTH/2-t*FACE_WIDTH

4.以方程的形式创建齿形曲线
  Inster=>Datum=>Curve=>From Equation选择默认的PRT_CSYS_DEF坐标系,点先圆柱坐标Cylindrical,在记事本中加入以下方程:
A=ROLL_ANGLE*t
r=BASE_RAD*sqrt(1+A^2)
theta=A*180/PI-atan(A)-THETA_AT_RP+90+90/tooth_number-TOOTH_HELIX/2
z=FACE_WIDTH/2
创建通过齿形曲线的端点且垂直于齿形曲线的Datum Plane(如下图1),以Datum Plane镜像齿形曲线,并用逼近合并两曲线。(如下图2)


5.以方程的形式创建第2条齿形曲线
  Inster=>Datum=>Curve=>From Equation选择默认的PRT_CSYS_DEF坐标系,点先圆柱坐标Cylindrical,在记事本中加入下面方程。再用步骤4的方法创建Datum Plane,镜像曲线合并之,如右图之效果。
A=ROLL_ANGLE*t
r=BASE_RAD*sqrt(1+A^2)
theta=A*180/PI-atan(A)-THETA_AT_RP+90+90/tooth_number+TOOTH_HELIX/2
z=-FACE_WIDTH/2

6.创建齿面
  以Swept Blend创建齿面,特征属性垂直于轨迹线(注意非原始轨迹线),并草绘Section,Section旋转角度均为0°。如果采用Select Section的方式,Wildfire将无法再生,我研究了N久也不知何解。进入第一个草绘后以Use Edge选择步骤4的合并曲线,Done;第二个草绘同样以Use Edge选择步骤5的合并曲线,Done。2001的命令过程如下:Swept Blend/Done=>Sketch Sec/Norm To Traj/Done,如下图:

  Surface=>Transform=>Move/Copy旋转出另一齿面,旋转轴采用默认坐标系PRT_CSYS_DEF的Y轴,旋转角度180°,Done。
  将两个齿面分与齿根圆Merge在一起。如下图1
  Copy齿顶圆的两个端面,与上一步的齿面Merge在一起。倒圆角,圆角半径加入以下关系式0.4*MODULE。如下图2。

7.阵列出齿形
  以Surface=>Transform=>Move/Copy旋转第二个齿形,旋转轴采用默认坐标系PRT_CSYS_DEF的Z轴,旋转角度加入关系式360/TOOTH_NUMBER,Done。
  阵列刚才旋转的齿形,选用角度尺寸为驱动尺寸。增量值和数量暂可任意。之后给增量值加入关系式360/TOOTH_NUMBER,给阵列数量P加入关系式TOOTH_NUMBER-1,再生。
  先将第一个齿形与齿顶圆合并,再将第二个旋转出来的齿形(也就是上面第一个旋转出来的齿形)与齿顶圆合并。用参考阵列合并所有齿形。如下图

8.将曲面生成实体

  此法做出来的Gear文件大小跟以前的方法比应该是最小的了。欢迎大家对此方法提出意见。想要本人Part的朋友可在评论处留下Email地址。Thanks!

17 条评论:

匿名 说...

唉!一大串,没心机看哦!

匿名 说...

xwb0727@163.com
齿轮这好东西还请给我一份

匿名 说...

好东西留一份给我,absing1234565@163.com 精诚合作。

匿名 说...

太厉害了,也给我一个吧,谢谢!
gengjie11117@163.com
不胜感激!

匿名 说...

谢谢,你的PART文件对我帮助很大。如果有机会可以跟你学习吗?

匿名 说...

很好的文章
可是我照着做,怎么老不行
可不可以麻烦你给我发个PART文档
zhlm226@yahoo.com.cn

匿名 说...

写得不错,但是根据你写的东西,偶做不出来呀,能不能发给我一份prt文件呀,wangaigui@126.com,非常感谢

匿名 说...

好东西留一份给我,谢谢!

Email:mdong@126.com

匿名 说...

blog收藏了,期待你能出新的。
也给我个part,想学习下。

wdzhou@163.com 不胜感激!!

匿名 说...

bengofjc@gmail.com
希望得到你的prt,真心感谢

匿名 说...

tangzhi20@163.com
给我传一个学习下,谢谢/

匿名 说...

我画斜齿时参数总是不对
网上的一些part也不能如意的生成我需斜齿
请你把part 给我一份学习一下,谢谢
haiyuanbin@163.com

匿名 说...

麻烦把你的齿轮part档给我一份,学习下,谢谢
yj0252@163.com

匿名 说...

不知能不能学会。
但,还是乞求这个part学习下,非常感谢!
dd29599@gmail.com

匿名 说...

以住的模型再生后会有问题,麻烦part 给我一份学习一下,谢谢:
jhzjr@163.com

匿名 说...

sunwei小弟多次看你在开思网上的教程,受益不少,真是谢谢你了,今天又看了你网站上的文章,感到自已不会的东西太多了。
小弟想收藏一份你的斜齿轮PRET,不知您愿意不?小弟的邮箱:weiyu5211314@163.com 再次感谢!!

Unknown 说...

您好,想請問還可以要的到該檔案嗎?
您真是太強了,感謝您!
email:chaomin.chang@gmail.com

发表评论