?? tiqian_tutai_hob.grs
字號:
entity/L(5),Ln1(200),Ln2(200),Ln3(200),Ln4(200),Lnd,Ln5(200),Ln6(200)
$$L(5):齒條封閉直線
$$Ln1(200):齒條修緣直線
$$Ln2(200):齒條加工直線
$$Ln3(200):齒條觸角直線
$$Ln4(200):齒條凸臺直線
$$Lnd:齒條齒形對稱直線
$$Ln5(200):齒條齒頂直線
$$Ln6(200):齒條齒根直線
entity/Ln1d(200),Ln2d(200),Ln3d(200),Ln4d(200)
$$Ln1d(200):齒條修緣直線齒形對稱線
$$Ln2d(200):齒條加工直線齒形對稱線
$$Ln3d(200):齒條觸角直線齒形對稱線
$$Ln4d(200):齒條凸臺直線齒形對稱線
entity/R11(200),R12(200),R21(200),R22(200)
$$R11(200):齒條齒頂左倒角
$$R12(200):齒條齒頂右倒角
$$R21(200):齒條齒根左倒角
entity/PLn1(2),PLn2(2),PLn3(2),PLn4(2),PLnd(3),PLn5(2),PLn6(2)
$$PLn1(2):齒條修緣直線兩端點
$$PLn2(2):齒條加工直線兩端點
$$PLn3(2):齒條觸角直線兩端點
$$PLn4(2):齒條凸臺直線兩端點
$$PLnd(3):齒條齒形對稱直線端點
$$PLn5(2):齒條齒頂直線兩端點
entity/pt1(3),pt1d(3),PLn3s,PLn3ds,LL(6),f1(2),d1(6)
$$pt1(3):齒頂左圓弧的端點及圓心
$$pt1d(3):齒頂右圓弧的端點及圓心
$$PLn3s,PLn3ds,LL(6):為取齒頂圓弧上的點而定義的變量
$$f1(2):切刀具平面
$$d1(6):定義平面的點
entity/gear1(1000),gear2(1000),hob(1000)
$$gear1(1000):齒輪齒形生成模型
$$gear2(1000):齒輪齒形生成旋轉模型
$$hob(1000):滾刀齒條模型
number/mat1(12),mat2(12),mat3(12),mat4(12),mat5(12),mat6(12),mat7(12)
$$mat1(12):齒條法向齒形變換,移動xn
$$mat2(12):齒條齒形變換,鏡像
$$mat3(12):齒條端面齒形變換,移動-D0/2*ja/180*pi
$$mat4(12):齒輪模型變換,旋轉-ja
$$mat5(12):齒條端面齒形變換,移動tn/cosf(B)-D0/2*ja/180*3.1416
$$mat6(12):齒輪端面齒形變換,旋轉B
number/i,j,k,ja,z,pi,xn,D0,D,xx
$$i,j:循環(huán)變量
$$k:齒條回刀變量
$$z:齒條齒數
$$pi:圓周率3.14
$$xn:變位系數,xn=(tn-sfng-sn)/2*/tan(ga)
$$D0:被加工齒輪分度圓直徑,mn*zg/cos(B)
$$D:齒條中心距,D0/2+xn
$$s:模型生成控制變量
$$xx:齒輪旋向控制
number/mn,zg,B,sn,Da,ZB,ga,heg,hg,tn,sfng,cg1,ag1,cjg,ccg,r1,r2
ufargs/mn,zg,B,sn,Da,ZB,ga,heg,hg,tn,sfng,cg1,ag1,cjg,ccg,r1,r2,xx
D0=mn*zg/cosf(B) $$被切齒輪分度圓直徑
Xn=(tn-sfng-sn)/2*cosf(ga)/sinf(ga)
D=mn*zg/cosf(B)/2-Xn $$被切齒輪分度圓直徑
pi=3.1415927
z=15
$$畫出齒條法向齒形的輔助封閉曲線
L(1)=line/0,-D-hg+heg,3,-D-hg+heg
L(2)=line/0,-D-hg+heg,0,-D-hg+heg-3
L(3)=line/0,-D-hg+heg-3,z*tn+6,-D-hg+heg-3
L(4)=line/z*tn+6,-D-hg+heg-3,z*tn+6,-D-hg+heg
L(5)=line/z*tn+6,-D-hg+heg,z*tn+3,-D-hg+heg
$$畫出齒形倒緣直線
PLn1(1)=point/endof,xlarge,L(1)
PLn1(2)=point/PLn1(1),delta,(hg-cg1)*sinf(ag1)/cosf(ag1),hg-cg1,0
Ln1(1)=line/PLn1(1),PLn1(2)
$$畫出齒形切削部分直線
PLn2(1)=point/endof,xlarge,Ln1(1)
PLn2(2)=point/PLn2(1),delta,$
(cg1-cjg)*sinf(ga)/cosf(ga),cg1-cjg,0
Ln2(1)=line/PLn2(1),PLn2(2)
$$畫出齒形觸角部分直線
mat1=matrix/transl,-ccg/cosf(ga),0,0
Ln3(1)=transf/mat1,Ln2(1)
$$畫出齒頂部分直線
PLn5(1)=point/PLn2(1),delta,cg1*sinf(ga)/cosf(ga),cg1,0
PLn5(2)=point/PLn5(1),delta,10,0,0
Ln5(1)=line/PLn5(1),PLn5(2)
$$畫出齒頂圓弧
R11(1)=fillet/xlarge,Ln3(1),ysmall,Ln5(1),radius,R1
delete/Ln3(1),Ln5(1),PLn5(1..2)
PLn3(1)=point/endof,ylarge,Ln2(1)
PLn3(2)=point/endof,ysmall,R11(1)
Ln3(1)=line/PLn3(1),PLn3(2)
$$畫出齒形對稱線
PLnd(1)=point/endof,ysmall,Ln2(1)
PLnd(2)=point/PLnd(1),delta,(cg1-heg)*sinf(ga)/cosf(ga)+sfng/2,cg1-heg,0
PLnd(3)=point/PLnd(2),delta,0,10,0
Lnd=line/PLnd(2),PLnd(3)
mat2=matrix/mirror,Lnd
Ln1d(1)=transf/mat2,Ln1(1)
Ln2d(1)=transf/mat2,Ln2(1)
Ln3d(1)=transf/mat2,Ln3(1)
R12(1)=transf/mat2,R11(1)
PLn5(1)=point/endof,ylarge,R11(1)
PLn5(2)=point/endof,ylarge,R12(1)
Ln5(1)=line/PLn5(1),PLn5(2)
do/lb10:,i,2,z,1
mat1=matrix/transl,tn,0,0
Ln1(i)=transf/mat1,Ln1(i-1)
Ln2(i)=transf/mat1,Ln2(i-1)
Ln3(i)=transf/mat1,Ln3(i-1)
Ln5(i)=transf/mat1,Ln5(i-1)
Ln1d(i)=transf/mat1,Ln1d(i-1)
Ln2d(i)=transf/mat1,Ln2d(i-1)
Ln3d(i)=transf/mat1,Ln3d(i-1)
R11(i)=transf/mat1,R11(i-1)
R12(i)=transf/mat1,R12(i-1)
lb10:
delete/PLnd(1..3),Lnd,PLn1(1..2),PLn2(1..2),PLn3(1..2),PLn5(1..2)
$$畫出齒根圓弧
R21(1)=fillet/xlarge,L(1),ylarge,Ln1(1),radius,R2
R21(1+z)=fillet/ylarge,Ln1d(z),xlarge,L(5),radius,R2
do/Lb20:,i,1,z-1,1
R21(i+1)=fillet/xlarge,Ln1d(i),ylarge,Ln1(i+1),radius,R2
Lb20:
ifthen/B<>0
hob(2)=solext/L(1..5),$
Ln1(1..z),$
Ln2(1..z),$
Ln3(1..z),$
Ln5(1..z),$
Ln1d(1..z),$
Ln2d(1..z),$
Ln3d(1..z),$
R11(1..z),$
R12(1..z),$
R21(1..z+1),$
height,ZB/cosf(B)+sinf(B)/cosf(B)*(z*tn+6),axis,0,0,1
ifthen/xx==0
mat6=matrix/zxrot,-B
mat7=matrix/transl,(ZB/cosf(B)+sinf(B)/cosf(B)*(z*tn+6))*sinf(B),$
0,-(z*tn+6)*sinf(B)
hob(1)=transf/mat6,hob(2)
hob(1)=transf/mat7,hob(1),move
endif
ifthen/xx==1
mat6=matrix/zxrot,B
hob(1)=transf/mat6,hob(2)
endif
delete/hob(2)
d1(1)=point/0,0,ZB
d1(2)=point/10,0,ZB
d1(3)=point/0,10,ZB
d1(4)=point/0,0,0
d1(5)=point/10,0,0
d1(6)=point/0,10,0
f1(1)=plane/d1(1),d1(2),d1(3)
f1(2)=plane/d1(4),d1(5),d1(6)
hob(2..3)=solcut/hob(1),with,f1(1)
delete/hob(2)
hob(1..2)=solcut/hob(3),with,f1(2)
delete/hob(2)
mask/omit,70
delete/all
else
hob(1)=solext/L(1..5),$
Ln1(1..z),$
Ln2(1..z),$
Ln3(1..z),$
Ln5(1..z),$
Ln1d(1..z),$
Ln2d(1..z),$
Ln3d(1..z),$
R11(1..z),$
R12(1..z),$
R21(1..z+1),$
height,zb,axis,0,0,1
endif
gear1(1)=solcyl/origin,0,0,0,height,ZB,diamtr,Da
$$齒輪滾切
k=0
ja=3
do/lb30:,j,2,360/ja+30,1
mat3=matrix/transl,-D0/2*ja/180*pi,0,0
k=k+D0/2*ja/180*pi
ifthen/k>5*tn/cosf(B)
mat5=matrix/transl,tn/cosf(B)-D0/2*ja/180*pi,0,0
hob(j)=transf/mat5,hob(j-1)
k=4*tn/cosf(B)
else
hob(j)=transf/mat3,hob(j-1)
endif
mat4=matrix/xyrot,-ja
gear2(j-1)=subtra/gear1(j-1),with,hob(j-1)
gear1(j)=transf/mat4,gear2(j-1)
delete/gear2(j-1)
lb30:
delete/hob(360/ja+10)
mask/omit,70
delete/all
L100:
halt
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -