clear all clc 带有小齿的齿廓程序。 N=1000; T=02piN2pi; r=50 ;基圆半径为50 h=5;齿高 z1=6;齿数 z2=z1; d=100;中心距 ri1=dz1z1 +z2;节圆半径 h1=08;小齿齿高 m=6;小齿齿数 z1=z1m; z2=z1; l=h1sinz1mT;极坐标系下的齿廓 u=hsinz1T+r; c=hsinz1T+r +h1sinz1m
syms x y f = ((z1hcos(z1x))+z1mh1cos(z1mx)).cos(x)+((hsin(z1x)+r)+h1sin(z1mx)).sin(x); g = ((z1hcos(z1x))+z1mh1cos(z1mx)).sin(x)+((hsin(z1x)+r)+h1sin(z1mx)).cos(x); t = atan2(g,f); t1 = unwrap(t,1.8pi); tn = t1-pi/2; dfdx = diff(f,x); dgdxx = diff(g,x); dtdx = dgdxx./dfdx; dtdx1 = unwrap(dtdx,1.8pi); k = -1./dtdx1; k1 = k-pi/2; x0 = linspace(0,2*pi,N+1); x0(end) = []; y0 = subs(k1,x,x0); rho = ri1./cos(tn); xc = x-rho.*sin(tn); yc = y+rho.cos(tn); xc1 = linspace(0,2pi,N+1); xc1(end) = []; yc1 = subs(k1,x,xc1); xc2 = xc-xc1; yc2 = yc-yc1; xc3 = xc-xc2; yc3 = yc-yc2; plot(xc,yc,'r-'); hold on plot(xc1,yc1,'k-'); plot(xc2,yc2,'g-'); axis equal xlabel('x'); ylabel('y'); title('共轭齿廓及啮合点'); grid o
原文地址: https://www.cveoy.top/t/topic/fnbp 著作权归作者所有。请勿转载和采集!