斜齿轮、圆柱滚花的螺旋线方程详解

Pro/E绘图很多时候要用到圆柱螺旋线,如斜齿轮圆柱滚花。网上很多教程直接以草绘投影的方法就当螺旋线用,其实是不正确。

说圆柱螺旋线,首先来个定义:一动点在圆柱面上绕圆柱轴线作匀速旋转运动,同时又沿轴向作匀速直线运动,该动点的轨迹称为圆柱螺旋线。举个例子:把一张直角三角形的纸卷到一个圆筒上,斜边在圆柱面成了一条圆柱螺旋线了。

下面以斜45度的圆柱滚花为例,简述螺旋线的方程的推导。
假想将下面立体图中的粉红色面展开成平面,根据圆柱螺旋线的定义可知展开的图案必定是下图右边所示的45度直角三角形。

Pro/E中极坐标方程的一般式:
/* 对笛卡儿坐标系,输入参数方程
/* 根据t (将从0变到1)对r, theta和z
/* 例如:对在 x-y平面的一个圆,中心在原点
/* 半径 = 4,参数方程将是:
/* r = 4
/* theta = t * 360
/* z = 0
/*—————————————–

螺旋线是r不变,theta、z随动点的变化而相应变化,因此方程的关键是Roll(即方程的theta)与t关系、 H(即方程的z)与t的关系。
Roll最大值 = (H*tan45)/(pi*d)*360 = H/(pi*d)*360
z最大值 = H

方程出来了:
r = d/2
theta = H/(pi*d)*360*t
z = H*t

结果如右图红色螺旋线,端点在TOP基准上。较理想右图绿色螺旋线的中点在TOP基准上,方便后继镜像。

想想吧,只要红色螺旋线再旋转(Roll最大值/2)度,即是绿色螺旋线了,因此将方程修改一下:

Roll = H/(pi*d)*360
r = d/2
theta = Roll*t-Roll/2
z = H*t

上面方程中引入一个临时变量Roll,可使方程更直观、方便。回到圆柱滚花实例中,代入各项尺寸代码(参数化的图形应该尽量以尺寸代号编写方程,勿直接输入直径、高度的具体数值,这是一个良好的绘图习惯),最终方程为:

Roll=d13/(pi*d12)*360
r=d12/2
theta=t*Roll-Roll/2
z=t*d13

更为复杂的变化就是斜齿轮的螺旋线,其中的齿厚(FACE_WIDTH)、压力角(HELIX_ANGLE)均为变量,需要在INPUT中指定。另外还要判断齿轮旋向是左旋还是右旋(HELIX_DIRECTION)。这里就只作简单解释,先看INPUT的内容:

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: ”
END INPUT

上面定义了斜齿轮的必要参数:齿数(TOOTH_NUMBER)、模数(MODULE)、压力角(PRESSURE_ANGLE)、螺旋角(HELIX_ANGLE)、齿轮旋向(HELIX_DIRECTION,选择YES是左旋,选择NO是右旋)、齿厚(FACE_WIDTH)

再看RELATIONS的内容(只列举有关于螺旋线的部分):

RELATIONS
……
PITCH_RAD = TOOTH_NUMBER*MODULE/2
……
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
……
END RELATIONS

上面关系式中PITCH_RAD为分度圆的半径,用“IF…… ELSE……ENDIF”语句判断齿轮旋向,决定变量TOOTH_HELIX的值是正还是负,正值逆时针变化,负值顺时针变化,配合z的负向变化,使螺旋线相应变成左旋或是右旋。

斜齿轮螺旋线的方程为(以分度圆柱为螺旋线圆柱面):

r=PITCH_RAD
theta=t*TOOTH_HELIX-TOOTH_HELIX/2+90
z=FACE_WIDTH/2-t*FACE_WIDTH

上面方程跟上上上面的基本一至,theta多了个“+90”,目的是将螺旋线放至12点钟方向。而z是负向变化的,所以是“-t*FACE_WIDTH”,加入“FACE_WIDTH/2”目的是使螺旋线中点在FRONT基准平面上。方程的结果是螺旋线的中点同时在FRONT、RIGHT(如果没有“+90”,即是TOP)基准面上。
最后提提,此螺旋线还能用变截面扫描配合关系式得出,但此处就不在说了,多谢指教。

发表评论

电子邮件地址不会被公开。 必填项已用*标注