哈工大机械原理大作业凸轮机构设计题
哈工大、机械原理大作业、凸轮机构设计20题

Harbin Institute of Technology机械原理大作业二课程名称:机械原理设计题目:凸轮机构设计院系:能源科学与工程学院班级:1102301设计者:刘平成学号:1110200724指导教师:唐德威设计时间:2013年6月7日凸轮机构设计1.设计题目(1) 凸轮机构运动简图:(2)凸轮机构的原始参数表2-1.凸轮机构原始参数 序号 升程(mm )升程运动角 升程运动规律升程许用压力角20 110 120° 正弦加速度35°回程运动角回程运动规律 回程许用压力角 远休止角近休止角 90°正弦加速度 65°90°60°(二)凸轮运动方程及相关图像、程序凸轮推杆升程、回程运动方程及推杆位移、速度、加速度线图: ○1 凸轮推杆升程、回程方程 πϕπϕϕs)650(πϕ≤≤140)(2=ϕs 511()69πφπ≤≤pi))*5708)/(23.2289)/1.-(sin(2+57083.2289)/1.-(-140(1)(3ϕπϕϕ=s1116()99πφπ≤≤)2914(πϕπ≤≤ 0)(4=ϕs ○2速度方程/2.0944;/2.09440))cos(2-140(1)(1πϕϕ=v 16(2)9πφπ≤≤ 0)(2=ϕv 511()69πφπ≤≤ 708;5708))/1.53.2289)/1.-(cos(2-140(1)(3ϕπϕ=v 1116()99πφπ≤≤ 0)(4=ϕv 16(2)9πφπ≤≤○3加速度方程 .0944^2;/2.0944)/2sin(2280)(1πϕπϕ=a )650(πϕ≤≤0)(2=ϕa 511()69πφπ≤≤08^25708)/1.573.2289)/1.-(sin(2280)(3ϕππϕ=a 1116()99πφπ≤≤ 0)(4=ϕa 16(2)9πφπ≤≤推杆位移、速度、加速度线图matlab编程clear,clcpu=0*pi/180:0.0001:120*pi/180; %升程运动角范围pf=120*pi/180:0.0001:210*pi/180; %远休止角范围pd=210*pi/180:0.0001:300*pi/180; %回程运动角范围pn=300*pi/180:0.0001:2*pi; %近休止角范围h=110e-3; %升程w=10; %凸轮角速度p0=120*pi/180; %升程运动角p01=90*pi/180; %回程运动角ps=90*pi/180; %远休止角%----------推程-----------------------------------------su=h.*(pu./p0-sin(2.*pi.*pu./p0)/(2*pi)); %推杆位移vu=h*w/p0*(1-cos(2*pi*pu./p0)); %推程速度au=2*pi*h*w^2/p0^2*sin(2*pi*pu./p0); %推程加速度%------------远休止----------------------------nf=size(pf);sf=h*ones(nf); %推杆位移vf=zeros(nf); %推程速度af=zeros(nf); %推程加速度%---------------回程------------------------------T=pd-(p0+ps);sd=h/2*(1+cos(pi/p01*T)); %回程位移vd=-pi*h*w/(2*p01)*sin(pi/p01*T); %回程速度ad=-pi^2*h*w^2/(2*p01^2)*cos(pi/p01*T); %回程加速度%--------------------近休止---------------------------------nn=size(pn);sn=zeros(nn); %推杆位移vn=zeros(nn); %推程速度an=zeros(nn); % 推程加速度%------画出推杆位移、速度、加速度线图---------------p=[pu,pf,pd,pn];s=[su,sf,sd,sn];subplot(2,3,1),hold onplot(p,s*1e3,'linewidth',2),xlabel('\phi/rad'),ylabel('s/mm'),grid on,title('推杆位移'),axis([0,2*pi,1.1*min(s)*1e3,1.1*max(s)*1e3]) subplot(2,3,2) v=[vu,vf,vd,vn];plot(p,v,'linewidth',2),xlabel('\phi/rad'),ylabel('v/m/s'),grid on,title('推杆速度'),axis([0,2*pi,1.1*min(v),1.1*max(v)]) subplot(2,3,3) a=[au,af,ad,an];plot(p,a,'linewidth',2),xlabel('\phi/rad'),ylabel('a/m/s^2'),grid on,title('推杆加速度'),axis([0,2*pi,1.1*min(a),1.1*max(a)]) hold off(三)凸轮机构s d ds-ϕ图像及程序代码 %--------------------求ds/d_phi-------------------subplot(2,3,4),plot(v/w*1e3,s*1e3,'linewidth',2),xlabel('ds/d\phi/mm'),ylabel('s/mm'),axis equal,grid on,title('ds/d\phi —s')%---------------------凸轮轴心许用区域--------------------------- alpha_up=35*pi/180; %升程许用压力角 alpha_down=65*pi/180; %回程许用压力角 p1=pi/2-alpha_up; %推程斜率角 p2=alpha_down-pi/2; %回程斜率角 ku=tan(p1); %推程切线斜率 kd=tan(p2); %回程切线斜率 R2=[cos(-p2),-sin(-p2);sin(-p2),cos(-p2)];%推程旋转矩阵 R1=[cos(-p1),-sin(-p1);sin(-p1),cos(-p1)];%推程旋转矩阵 nu=size(pu); for i=1:nu(2)Temp=R1*[vu(i)/w;su(i)];vut(i)=Temp(1); %旋转推程ds/dp-s 曲线 sut(i)=Temp(2); endnd=size(pd); for i=1:nd(2)Temp=R2*[vd(i)/w;sd(i)];vdt(i)=Temp(1); %旋转回程ds/dp-s 曲线 sdt(i)=Temp(2); endfor j=1:nu(2)if sut(j)==min(sut)temu=j; %旋转推程ds/dp-s 曲线后求最低点 end endfor j=1:nd(2)if sdt(j)==min(sdt)temd=j; %旋转回程ds/dp-s曲线后求最低点endendt1=1.2*min(vd/w):0.01:1.2*max(vu/w); %切线定义域t2=min(vd/w)/6:0.01:1.2*max(vu/w);t3=0:0.01:1.2*max(vu/w);s1=ku*(t2-vu(temu)/w)+su(temu); %推程切线s2=kd*(t1-vd(temd)/w)+sd(temd); %回程切线s3=tan(-p1)*t3; %推程起点压力角限制线subplot(2,3,5) %画图hold on,axis equal,grid onplot(v/w*1e3,s*1e3,'linewidth',2)plot(t2*1e3,s1*1e3,'linewidth',1,'color','r')plot(t1*1e3,s2*1e3,'linewidth',1,'color','r')plot(t3*1e3,s3*1e3,'linewidth',1,'color','r')xlabel('ds/d\phi/mm'),ylabel('s/mm'),hold off,title('ds/d\phi—s,轴向许用范围')(四)确定凸轮的基圆半径和偏距、绘制凸轮机圆、偏距圆、理论轮廓曲线---------------画理论廓线图-------------------------e=36e-3;s0=52e-3;r0=sqrt(s0^2+e^2);x=(s0+s).*cos(p)-e.*sin(p);y=(s0+s).*sin(p)+e.*cos(p);x1=r0*cos(p);y1=r0*sin(p);subplot(2,3,6)plot(x*1e3,y*1e3,'linewidth',1),axis equal,grid on,hold on,title('廓线图')plot(x1*1e3,y1*1e3,'linewidth',1,'color','r')%-------------求最小曲率半径-----------------------nx=size(x);nx1=nx(2)-2;dydp=diff(y)./diff(p);%求微分dxdp=diff(x)./diff(p);d2ydp2=diff(dydp)./diff(p(1:nx1+1));d2xdp2=diff(dxdp)./diff(p(1:nx1+1));rho=(dxdp(1:nx1).^2+dydp(1:nx1).^2).^1.5./abs((dxdp(1:nx1).*d2ydp2(1:nx1)-dydp(1:nx1).*d2x dp2(1:nx1)));%理论廓线曲率半径rhomin=min(rho);%最小曲率半径rr=rhomin-3e-3;%----------------实际廓线图----------------X=x(1:nx(2)-1)-rr*dydp./(dxdp.^2+dydp.^2).^0.5;%求实际廓线坐标Y=y(1:nx(2)-1)+rr*dxdp./(dxdp.^2+dydp.^2).^0.5;plot(X*1e3,Y*1e3,'linewidth',2,'color','k')%画实际廓线图Legend('理论廓线','基圆','实际廓线'),axis([1.1*min(x)*1e3,1.1*max(x)*1e3,1.1*min(y)*1e3,1.1*max(y)*1e3])得到基圆半径311mm、偏距36mm。
哈工大机械原理大作业凸轮机构设计第题

哈工大机械原理大作业-凸轮机构设计(第题)————————————————————————————————作者:————————————————————————————————日期:机械原理大作业二课程名称:机械原理设计题目:凸轮机构设计院系:机电学院班级:1208103完成者:xxxxxxx学号:11208103xx指导教师:林琳设计时间:2014.5.2哈尔滨工业大学凸轮机构设计一、设计题目如图所示直动从动件盘形凸轮机构,其原始参数见表,据此设计该凸轮机构。
序号 升程(mm ) 升程运动角(°) 升程运动规律 升程许用压力角(°) 回程运动角(°) 回程运动规律 回程许用压力角(°)远休止角(°) 近休止角(°)3 50 150 正弦加速度 30 100 余弦加速度60 30 80二、凸轮推杆升程、回程运动方程及其线图1 、凸轮推杆升程运动方程(650πϕ≤≤) 升程采用正弦加速度运动规律,故将已知条件mm h 50=,650π=Φ带入正弦加速度运动规律的升程段方程式中得:⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-=512sin 215650ϕππϕS ; ⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-=512cos 1601ππωv ; ω⎪⎭⎫ ⎝⎛=512sin 14421ϕπωa ; 2、凸轮推杆推程远休止角运动方程(πϕπ≤≤65) mm h s 50==;0==a v ;3、凸轮推杆回程运动方程(914πϕπ≤≤) 回程采用余弦加速度运动规律,故将已知条件mm h 50=,95'0π=Φ,6s π=Φ带入余弦加速度运动规律的回程段方程式中得:⎥⎦⎤⎢⎣⎡-+=)(59cos 125πϕs ; ()πϕω--=59sin451v ; ()πϕω-=59cos 81-a 21;4、凸轮推杆回程近休止角运动方程(πϕπ2914≤≤) 0===a v s ;5、凸轮推杆位移、速度、加速度线图根据以上所列的运动方程,利用matlab 绘制出位移、速度、加速度线图。
哈工大机械原理连杆和凸轮大作业24题

班级学号机械原理大作业说明书题目 1、连杆机构运动分析2、凸轮机构设计学生姓名1连杆机构运动分析1.设计题目:一、先建立如下坐标系:二、划分杆组如下,进行结构分析:该机构由I级杆组RR(如图1)、II级杆组RPR(如图2、3)和II级杆组RRP(如图4)组成。
(1)(2)(3)(4)三、运动分析数学模型:(1)同一构件上点的运动分析:如右图所示的原动件1,已知杆1的角速度=10/rad s ω,杆长1l =170mm,A y =0,A x =110mm 。
可求得下图中B 点的位置B x 、B y ,速度xB v 、yB v ,加速度xB a 、yB a 。
θcos 1l xB =,θsin 1l yB =θωυsin 1l xB -=,θωυcos 1l yB =,222B2==-cos =-BxB i d x a l x dt ωϕω2222==-sin =-B yB i B d y a l y dtωϕω。
(2)RPRII 级杆组的运动分析:a. 如右图所示是由2个回转副和1个移动副组成的II 级组。
已知两个外运动副C 、B 的位置(B x 、B y 、c x =110mm 、C y =0)、速度(xB υ,yB υ,xC υ=0,yC υ=0)和加速度(0,0,,==yC xC yB xB a a a a )。
可确定下图中D 点的位置、速度和加速度。
确定构件3的角位移1ϕ、角速度1ω、角加速度1α。
1sin 31..ϕϕl x dt dx C B -= 1s i n 131c o s 13.....2ϕϕϕϕl l x dt x d C B --= 1cos 31..ϕϕl y dt dy C B += 1c o s 131s i n 13.....2ϕϕϕϕl l y dty d C B +-= 根据关系:1111d 122..11.αϕϕωϕϕ====dtd dt , 故可得出: D x =)1cos(4βϕ++l x CD y =)1sin(4βϕ++l y Cb. 如右图所示是由2个回转副和1个移动副组成的II级组。
哈工大机械原理大作业凸轮结构设计3

仅供个人参考Harbin Institute of Technology机械原理大作业二课程名称:机械原理设计题目:凸轮结构设计院系:机电工程学院班级:设计者:学号:指导教师:设计时间:哈尔滨工业大学1、设计题目2、凸轮机构推杆升程、回程运动方程,推杆位移、速度、加速度线图。
(1)推杆各行程运动方程(设定角速度为s s rad /2/1πω==)①从动件推程运动方程(650πϕ≤≤) ⎥⎦⎤⎢⎣⎡⎪⎪⎭⎫ ⎝⎛-=ϕφπφω0012cos 1h v ; 代入数据,可得:②从动件远休程运动方程(πϕπ≤≤65) ③从动件回程运动方程(914πϕπ≤≤) 代入数据,可得:④从动件进休程运动方程(πϕπ2914≤≤) (2)、推杆位移、速度、加速度线图①推杆的位移线图如下②推杆的速度线图如下③推杆的加速度线图如下 3、凸轮机构的dss d ϕ-线图,并依次确定凸轮的基圆半径和偏距凸轮机构的s d ds -ϕ线图如下图所示 由图中范围选定点(-10,-50)为凸轮转轴O 点,则mm r 99.501050220=+=取基圆半径为r 0 =51mm ,偏距e = 10mm 。
4、滚子半径的确定及凸轮理论廓线和实际廓线的绘制由程序计算得凸轮理论轮廓线最小曲率半径mm r 51min = .由滚子半径选择范围∆-<min ρr r ,mm 5~3=∆得到滚子半径mm r r 46≤.又因为凸轮整体尺寸较小,此范围明显过大,故适当减小滚子半径,这里取半径为mm r r 12= .得到图线为:附录1.求位移、速度、加速度的程序(matlab )function f = tulunh=50;x1=150;t1=30;x2=100;t2=80;w=2*pi;x1=x1*pi/180;x2=x2*pi/180;t1=t1*pi/180;t2=t2*pi/180;%升程x=0:0.001:x1;s = h*(x/x1-sin(2*pi*x/x1)/(2*pi));v = h*w*(1-cos(2*pi*x/x1))/x1;a = 2*pi*h*w*w*sin(2*pi*x/x1)/(x1*x1);subplot(3,1,1),plot(x,s),hold onsubplot(3,1,2),plot(x,v),hold onsubplot(3,1,3),plot(x,a),hold on%远休x = x1:0.001:x1+t1;s = h;v=0;a=0;subplot(3,1,1),plot(x,s),hold onsubplot(3,1,2),plot(x,v),hold onsubplot(3,1,3),plot(x,a),hold on%回程x= x1+t1:0.001:x1+t1+x2;s = h*(1+cos(pi*(x-(x1+t1))/x2))/2;v = -pi*h*w*sin(pi*(x-(x1+t1))/x2)/(2*x2);a = -pi*pi*h*w*w*cos(pi*(x-(x1+t1))/x2)/(2*x2*x2);subplot(3,1,1),plot(x,s),hold onsubplot(3,1,2),plot(x,v),hold onsubplot(3,1,3),plot(x,a),hold on%近休x=x1+t1+x2:0.001:x1+x2+t1+t2;s = 0;v = 0;a = 0;subplot(3,1,1),plot(x,s),xlabel('φ/rad'),ylabel('S/mm'),title('位移-转角图线'),hold onsubplot(3,1,2),plot(x,v),xlabel('φ/rad'),ylabel('v/(mm/s)'),title('速度-转角图线'),hold onsubplot(3,1,3),plot(x,a),xlabel(φ/rad'),ylabel('a/(mm/s^2)'),title('加速度-转角图线'),hold on2.绘制凸轮机构s d ds -ϕ线图 function f= jiyuan;x1=150;t1=30;x2=100;t2=80;h=50;x1=x1*pi/180;x2=x2*pi/180;t1=t1*pi/180;t2=t2*pi/180;x= 0:0.001:150*pi/180;%升程 v/ws = h*(x/x1-sin(2*pi*x/x1)/(2*pi));k =-h*(1-cos(2*pi*x/x1))/x1;plot(k,s,'r'),hold on ;x=180*pi/180:0.001:280*pi/180;%回程 v/ws = h*(1+cos(pi*(x-(x1+t1))/x2))/2;k = pi*h*sin(pi*(x-(x1+t1))/x2)/(2*x2);plot(k,s,'g'),hold on ;%回程切线for i=-11:1:-11;f=@(k)k*tan(pi/6)+i;k =-40:0.1:50;s=f(k);plot(k,s),hold on ;end%升程切线for i=-45:0.2:-45;f=@(k)-k*tan(60*pi/180)+i;k =-40:0.1:50;s=f(k);plot(k,s),hold on ;endgrid onf=@(k)k*tan(50*pi/180);k=-50:0.1:0;s=f(k);plot(k,s),hold onxlabel('ds/d φ');ylabel('s(φ)');title('类速度-位移图线 ');plot(-10,-50,’o ’);3.绘制凸轮轮廓曲线function f= lunkuo;h=50;x1=150;t1=30;x2=100;t2=80;x1=x1.*pi./180;x2=x2.*pi./180;t1=t1.*pi./180;t2=t2.*pi./180;s0=51;e=10;rr=12;%升程x=0:pi/200:150.*pi/180;s = h.*(x./x1-sin(2.*pi.*x./x1)./(2.*pi));X1=(s0+s).*cos(x)-e.*sin(x);Y1=(s0+s).*sin(x)+e.*cos(x);%实际轮廓X11=X1-(rr.*(cos(x).*(s + s0) - e.*sin(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);Y11=Y1-(rr.*(sin(x).*(s + s0) + e.*cos(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);plot(X1,Y1,'r',X11,Y11,'r'),hold on;%远休x=150.*pi/180:pi/180:180.*pi/180;s=50;X2=(s0+s).*cos(x)-e.*sin(x);Y2=(s0+s).*sin(x)+e.*cos(x);X22=X2-(rr.*(cos(x).*(s + s0) - e.*sin(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);Y22=Y2-(rr.*(sin(x).*(s + s0) + e.*cos(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);plot(X2,Y2,'g',X22,Y22,'g'),hold on;%回程x=180.*pi/180:pi/180:280.*pi/180;s = h.*(1+cos(pi.*(x-(x1+t1))./x2))./2;X3=(s0+s).*cos(x)-e.*sin(x);Y3=(s0+s).*sin(x)+e.*cos(x);X33=X3-(rr.*(cos(x).*(s + s0) - e.*sin(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);Y33=Y3-(rr.*(sin(x).*(s + s0) + e.*cos(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);plot(X3,Y3,'k',X33,Y33,'k'),hold on;%近休x=280*pi/180:pi/180:2*pi;s=0;X4=(s0+s).*cos(x)-e.*sin(x);Y4=(s0+s).*sin(x)+e.*cos(x);X44=X4-(rr.*(cos(x).*(s + s0) - e.*sin(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);Y44=Y4-(rr.*(sin(x).*(s + s0) + e.*cos(x)))./((sin(x).*(s + s0) + e.*cos(x)).^2 + (cos(x).*(s + s0) - e.*sin(x)).^2).^(1./2);plot(X4,Y4,'b',X44,Y44,'b'),hold on;x=0:pi/200:2*pi;X4=(s0+s).*cos(x)-e.*sin(x); Y4=(s0+s).*sin(x)+e.*cos(x); plot(X4,Y4,'b');text(-40,90,'理论轮廓线');text(-40,72,'实际轮廓线');text(-5,55,'基圆');grid on;axis equal仅供个人用于学习、研究;不得用于商业用途。
哈工大机械原理大作业——凸轮——5号

Harbin Institute of Technology机械原理大作业二课程名称:机械原理设计题目:凸轮机构设计院系:机电工程学院班级:设计者:学号:指导教师:设计时间:凸轮机构设计一. 设计题目表1 凸轮机构原始参数二. 凸轮推杆升程、回程运动方程及推杆位移、速度、加速度线图1. 推杆升程运动方程(ϕ为转角)(203ϕπ≤≤) 令1/rad s ω= 位移:001212040[sin()]sin(3)2s h ϕπϕϕϕφπφππ=-=- 速度:1002120120[1cos()]cos(3)h v ωπϕϕφφππ=-=- 加速度:2120022360[sin()]sin(3)h a πωπϕϕφφπ==2. 推杆回程运动方程(ϕ为转角)7563πϕπ≤≤ 位移:''00128001604014[1sin()]sin(4)]233T s h T πϕϕπφπφππ=-+=-+- 速度:1''00216016014[1cos()]cos(4)]3h v T ωπϕϕπφφππ=--=-+- 加速度:21'2'002264014sin()sin(4)]3h a T πωπϕπφφπ=-=-- 式中:027()()326s T πππϕϕϕϕϕ=-+=-+=-由MATLAB编程得到线位移图像:线速度图像:线加速度图像:三.绘制机构的ds sdϕ-线图由dsds vdtdd wtϕϕ==可知线图即vsw-线图,由MATLAB编程后得图四.确定基圆半径和偏距1.画切线图如上页图,得其切线图2.求基圆半径和偏距从图中读取e=50mmr0=111.80mm五.画理论及实际轮廓附:MATLAB编程1.推杆位移线图代码%升程阶段t=0:0.001:2*pi/3;s=120.*t./pi-40./pi.*sin(3.*t);hold onplot(t,s);%远休止阶段t=2*pi/3:0.001:7*pi/6;s=80;hold onplot(t,s);%回程阶段t=7*pi/6:0.001:5*pi/3;s=800/3-160.*t./pi+40./pi.*sin(4.*t-14*pi/3) hold onplot(t,s);%近休止阶段t=5*pi/3:0.001:2*pi;s=0;hold onplot(t,s);grid onhold off2.推杆速度线图代码%升程阶段t=0:0.001:2*pi/3;v=120/pi-120/pi*cos(3.*t);hold onplot(t,s);%远休止阶段t=2*pi/3:0.001:7*pi/6;v=0;hold onplot(t,s);%回程阶段t=7*pi/6:0.001:5*pi/3;v=-160/pi+160/pi*cos(4.*t-14/3*pi) hold onplot(t,s);%近休止阶段t=5*pi/3:0.001:2*pi;v=0;hold onplot(t,s);grid onhold off3.推杆加速度线图代码%升程阶段t=0:0.001:2*pi/3;a=360/pi.*sin(3.*t)hold onplot(t,a);%远休止阶段t=2*pi/3:0.001:7*pi/6;a=0;hold onplot(t,a);%回程阶段t=7*pi/6:0.001:5*pi/3;a=-640/pi.*sin(4.*t-14/3*pi) hold onplot(t,a);%近休止阶段t=5*pi/3:0.001:2*pi;a=0;hold onplot(t,a);grid onhold off4.dssdϕ-线图代码%升程阶段t=0:0.001:2*pi/3;s=120.*t./pi-40./pi.*sin(3.*t);v=120/pi-120/pi*cos(3.*t);hold onplot(v,s);%远休止阶段t=2*pi/3:0.001:7*pi/6;s=80;v=0;hold onplot(v,s);%回程阶段t=7*pi/6:0.001:5*pi/3;s=800/3-160.*t./pi+40./pi.*sin(4.*t-14*pi/3);v=-160/pi+160/pi*cos(4.*t-14/3*pi)hold onplot(v,s);5.最终轮廓线图代码h=80;w=1;e=50;rr=20;s0=100;m=120*pi/180;ms=(120+90)*pi/180;m1=(120+90+90)*pi/180; for i=1:1:120mm(i)=i*pi/180.0;s1=h.*( mm(i)./m -(1/(2*pi)).*sin(2.*pi.*mm(i)./m));v1=(w*h./m)*(1-cos(2*pi*mm(i)/m));x(i)=(s0+s1)*sin(mm(i))+e*cos(mm(i));y(i)=(s0+s1)*cos(mm(i))-e*sin(mm(i));a(i)=(s0+s1)*cos(mm(i))-e*sin(mm(i))+v1/w*sin(mm(i)); b(i)=-(s0+s1)*sin(mm(i))-e*cos(mm(i))+v1/w*cos(mm(i));xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i)-rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));endfor i=121:1:210mm(i)=i*pi/180;s2=h;v2=0;x(i)=(s0+s2)*sin(mm(i))+e*cos(mm(i));y(i)=(s0+s2)*cos(mm(i))-e*sin(mm(i));a(i)=(s0+s2)*cos(mm(i))-e*sin(mm(i))+v2/w*sin(mm(i));b(i)=-(s0+s2)*sin(mm(i))-e*cos(mm(i))+v2/w*cos(mm(i));xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i)-rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));endfor i=211:1:300mm(i)=i*pi/180;s3=800/3-160/pi.*mm(i)+40/pi.*sin(4.*mm(i)-14/3*pi);v3=-160/pi+160/pi.*cos(4*mm(i)-14/3*pi)x(i)=(s0+s3)*sin(mm(i))+e*cos(mm(i));y(i)=(s0+s3)*cos(mm(i))-e*sin(mm(i));a(i)=(s0+s3)*cos(mm(i))-e*sin(mm(i))+v3/w*sin(mm(i));b(i)=-(s0+s3)*sin(mm(i))-e*cos(mm(i))+v3/w*cos(mm(i));xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i)-rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));endfor i=301:1:360mm(i)=i*pi/180;x(i)=(s0+0)*sin(mm(i))+e*cos(mm(i));y(i)=(s0+0)*cos(mm(i))-e*sin(mm(i));a(i)=(s0+0)*cos(mm(i))-e*sin(mm(i))+v3/w*sin(mm(i));b(i)=-(s0+0)*sin(mm(i))-e*cos(mm(i))+v3/w*cos(mm(i));xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i)-rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));endplot(x,y,'r',xx,yy,'g')text(0,20,'实际轮廓线')text(120,100,'理论轮廓线')hold on。
哈工大机械原理大作业-凸轮机构设计

哈工大机械原理大作业-凸轮机构设计(第3题)(共15页)-本页仅作为预览文档封面,使用时请删除本页-机械原理大作业二课程名称:机械原理设计题目:凸轮设计院系:机电学院班级: 1208103完成者: xxxxxxx学号: xx指导教师:林琳设计时间:工业大学凸轮设计一、设计题目如图所示直动从动件盘形凸轮,其原始参数见表,据此设计该凸轮。
二、凸轮推杆升程、回程运动方程及其线图1 、凸轮推杆升程运动方程(650πϕ≤≤) 升程采用正弦加速度运动规律,故将已知条件mm h 50=,650π=Φ带入正弦加速度运动规律的升程段方程式中得:⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-=512sin 215650ϕππϕS ;⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-=512cos 1601ππωv ; ⎪⎭⎫ ⎝⎛=512sin 14421ϕπωa ; 2、凸轮推杆推程远休止角运动方程(πϕπ≤≤65) mm h s 50==; 0==a v ;3、凸轮推杆回程运动方程(914πϕπ≤≤)回程采用余弦加速度运动规律,故将已知条件mm h 50=,95'0π=Φ,6s π=Φ带入余弦加速度运动规律的回程段方程式中得:⎥⎦⎤⎢⎣⎡-+=)(59cos 125πϕs ;()πϕω--=59sin451v ; ()πϕω-=59cos 81-a 21;4、凸轮推杆回程近休止角运动方程(πϕπ2914≤≤) 0===a v s ;5、凸轮推杆位移、速度、加速度线图根据以上所列的运动方程,利用matlab 绘制出位移、速度、加速度线图。
①位移线图 编程如下: %用t 代替转角 t=0::5*pi/6;s=50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5)); hold on plot(t,s); t=5*pi/6::pi; s=50; hold on plot(t,s); t=pi::14*pi/9;s=25*(1+cos(9*(t-pi)/5));hold onplot(t,s);t=14*pi/9::2*pi;s=0;hold onplot(t,s),xlabel('φ/rad'),ylabel('s/mm'); grid onhold off所得图像为:②速度线图编程如下:%用t代替转角,设凸轮转动角速度为1t=0::5*pi/6;v=60/pi*(1-cos((12*t)/5));hold onplot(t,v);t=5*pi/6::pi;v=0;hold onplot(t,v);t=pi::14*pi/9;v=-45*sin(9*(t-pi)/5);hold onplot(t,v);t=14*pi/9::2*pi;v=0;hold onplot(t,v),xlabel('φ(rad)'),ylabel('v(mm/s)'); grid onhold off所得图像为:③加速度线图利用matlab编程如下:%用t代替转角,设凸轮转动角速度为1t=0::5*pi/6;a=144/pi*sin(12*t/5);hold onplot(t,a);t=5*pi/6::pi;a=0;hold onplot(t,a);t=pi::14*pi/9;a=-81*cos(9*(t-pi)/5);hold onplot(t,a);t=14*pi/9::2*pi; a=0; hold onplot(t,a),xlabel('φ(rad)'),ylabel('a(mm/s^2)'); grid on hold off所得图形:三、绘制s d ds -ϕ线图根据运动方程求得:()⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧≤≤≤≤-≤≤≤≤--=πϕππϕππϕπϕππϕπππϕ2914.0914,59sin 4565,0650),512cos 6060(d ds 利用matlab 编程:%用t 代替φ,a 代替ds/d φ, t=0::5*pi/6;a=-(60/pi-60/pi*cos(12*t/5));s=50*((6*t)/(5*pi)-1/(2*pi)*sin(12*t/5)); hold on plot(a,s); t=5*pi/6::pi; a=0; s=50; hold on plot(a,s); t=pi::14*pi/9;a=45*sin(9*(t-pi)/5); s=25*(1+cos(9*(t-pi)/5)); hold on plot(a,s);t=14*pi/9::2*pi; a=0; s=0; hold onplot(a,s),title('ds/d φ-s'),xlabel('ds/d φ(mm/rad)'),ylabel('s(mm)'); grid on hold off 得s d ds-ϕ图:凸轮压力角的正切值s s e d ds +-=0/tan ϕα,左侧为升程,作与s 轴夹6π角等于升程许用压力角的切界线t t d D ,则在直线上或其左下方取凸轮轴心时,可使[]αα≤,同理右侧回程,作与s 轴夹角等于回程许用压力角3π的切界线''t t d D ,则在直线上或其右下方取凸轮轴心时,可使[]αα≤。
哈工大机械原理大作业——凸轮——2号

哈工大机械原理大作业——凸轮——2号————————————————————————————————作者:————————————————————————————————日期:Harbin Institute of Technology机械原理大作业课程名称:机械原理设计题目:凸轮机构设计一、设计题目(1)凸轮机构运动简图:(2)凸轮机构的原始参数序号升程升程运动角升程运动规律升程许用压力角回程运动角回程运动规律回程许用压力角远休止角近休止角14 90°120°余弦加速度35°90°3-4-5多项式65°80°70°(1) 推杆升程、回程运动方程如下:A.推杆升程方程:设为1rad sω=升程位移为:()()1cos451cos1.52hsπψψψ⎡⎤⎛⎫=-=-⎢⎥⎪Φ⎝⎭⎣⎦23ψπ≤≤升程速度为:()()1100sin67.5sin1.52hvπωπψψωψ⎛⎫==⎪ΦΦ⎝⎭23ψπ≤≤升程加速度为:()()2221100cos101.25cos1.52haπωπψψωψ⎛⎫==⎪ΦΦ⎝⎭23ψπ≤≤B.推杆回程方程:回程位移为:()()345111110156s h T T T ψ⎡⎤=--+⎣⎦1029918ψπ≤≤ 回程速度为:()()22111103012h v T T T ωψ=--+'Φ 1029918ψπ≤≤ 回程加速度为:()()221111260132h a T T T ωψ=--+'Φ 1029918ψπ≤≤其中:()010s T ψ-Φ+Φ='Φ1029918ψπ≤≤ (2) 利用Matlab 绘制推杆位移、速度、加速度线图 A. 推杆位移线图clcclearx1=linspace(0,2*pi/3,300);x2=linspace(2*pi/3,10*pi/9,300); x3=linspace(10*pi/9,29*pi/18,300); x4=linspace(29*pi/18,2*pi,300); T1=(x3-10*pi/9)/(pi/2); s1=45*(1-cos(1.5*x1)) s2=90;s3=90*(1-(10*T1.^3-15*T1.^4+6*T1.^5)); s4=0;plot(x1,s1,'r',x2,s2,'r',x3,s3,'r',x4,s4,'r') xlabel('角度ψ/rad'); ylabel('位移s/mm') title('推杆位移线图') gridaxis([0,7,-10,100]) 得到推杆位移线图:B.推杆速度线图clcclearx1=linspace(0,2*pi/3,300);x2=linspace(2*pi/3,10*pi/9,300);x3=linspace(10*pi/9,29*pi/18,300);x4=linspace(29*pi/18,2*pi,300);T1=(x3-10*pi/9)/(pi/2);v1=67.5*1*sin(1.5*x1);v2=0;v3=-30*90*1*T1.^2/(pi/2).*(1-2*T1+T1.^2);v4=0;plot(x1,v1,'r',x2,v2,'r',x3,v3,'r',x4,v4,'r') xlabel('角度ψ/rad');ylabel('速度v/(mm/s)')title('推杆速度线图')Grid得到推杆速度线图:C.推杆加速度线图clcclearx1=linspace(0,2*pi/3,300);x2=linspace(2*pi/3,10*pi/9,300);x3=linspace(10*pi/9,29*pi/18,300);x4=linspace(29*pi/18,2*pi,300);T1=(x3-10*pi/9)/(pi/2);a1=101.25*1.^2.*cos(1.5*x1);a2=0;a3=-60.*90.*T1./((pi/2).^2).*(1-3*T1+2*T1.^2); a4=0;plot(x1,a1,'r',x2,a2,'r',x3,a3,'r',x4,a4,'r') xlabel('角度ψ/rad');ylabel('加速度a/')title('推杆加速度线图')Grid得到推杆加速度线图:三、凸轮机构的ds/dψ-s线图,并依次确定凸轮的基圆半径和偏距.1、凸轮机构的ds/dψ--s线图:x1=linspace(0,2*pi/3,300);x2=linspace(2*pi/3,10*pi/9,300);x3=linspace(10*pi/9,29*pi/18,300);x4=linspace(29*pi/18,2*pi,300);T1=(x3-10*pi/9)/(pi/2);s1=45*(1-cos(1.5*x1))s2=90;s3=90*(1-(10*T1.^3-15*T1.^4+6*T1.^5));s4=0;v1=67.5*1*sin(1.5*x1);v2=0;v3=-30*90*1*T1.^2/(pi/2).*(1-2*T1+T1.^2);v4=0;plot(v1,s1,'r',v2,s2,'r',v3,s3,'r',v4,s4,'r')xlabel('ds/dψ');ylabel('(位移s/mm)')title('ds/dψ—s曲线')gridaxis([-120,80,-10,100])得到ds/dψ—s曲线:2、确定凸轮的基圆半径和偏距:在dssdϕ-线图中,右侧曲线为升程阶段的类速度-位移图,作直线D t d t与其相切,且与位移轴正方向呈夹角[α1]=350, 故该直线斜率:32sin2=tan5533cos2okϕϕ⨯=⨯通过编程求其角度。
哈工大机械原理大作业凸轮设计

哈工大机械原理大作业凸轮设计Harb inIn stituteofTech no logy大作业设计说明书课程名称:设计题目:院班学级:机械原理凸轮机构设计1208103系:机械设计制造及其自动化设计指导教师:设计时间:林琳2019425哈尔滨工业大学一、运动分析题目如图所示直动从动件盘形凸轮机构,其原始数据参数见表2-1,。
从表2-1中选择一组凸轮机构原始参数,据此设计该凸轮机构。
二、凸轮运动规律升程运动角(°)90升程运动规律生程许回程运用压力动角角(°)等加等4080减速回程运动规律回程许远休用压力止角角(°)余弦加7040速度近休止角(°)150升程(mm)1501 、升程运动规律(0 /4)位移s=2h(速度v2 /2 4*150*w( /2)A24*150*w A2( /2)人2加速度a2 、升程运动规律(/4 /2)位移s 1502*150( /2 )A2(/2)A2速度v4*60*w( /2 )( /2)A24*60*wA2( /2)A2加速度a3 、回程运动规律(/2 2/2 2 ) 93 位移s 75*{1 cos[ (/2 2 )]}949速度vhw*sin*[ ( /2 2 )]92*4 499加速度aA2hw A2cos[ ( /2 2 )]94 2*(4 )A299根据运动规律做出的曲线以及源代码如图所示位移线图速度线图加速度线图位移线图源代码fl=pi/180;x0=0:fl:pi/4;x1=pi/4:fl:pi/2;x2=pi/2:fl:13*pi/18;x3=13*pi/18:fl:7*pi/6;x4=7*pi/6:fl:2*pi;s0=300*(2*x0/pi)A 2;s1=150-1200*(pi/2-x1).*(pi/2-x1)/(pi.*pi);s2=150+x2*0;s3=75*(1+cos(9/4*(x3-13*pi/18)));s4=x4*0;Plot(x0,s0,x1,s1,'b',x2,s2,'b',x3,s3,'b',x4,s4,'b')axis([070200])title('杆位移线图')xlabel(' 0 (rad)')ylabel('V(mm⑸')gridon速度源代码fl=pi/180;x0=0:fl:pi/4;x1=pi/4:fl:pi/2;x2=pi/2:fl:13*pi/18;x3=13*pi/18: fl:7*pi/6;x4=7*pi/6:fl:2*pi;w=30;v0=600.*w.*x0/(pi/2)A2;v1=600.*w.*(pi/2-x1)/(pi/2)A2;v2=0*x2;v3=-150*30*pi/(2*4*pi/9).*si n(9/4*(x3-13*pi/18));v4=0*x4;Plot(x0,v0,'b',x1,v1,'b',x2,v2,'b',x3,v3,'b',x4,v4,'b')title('推杆速度')xlabel(' 0 (rad)')ylabel('v(mm/s')gridon加速度源代码fl=pi/180;x0=0:fl:pi/4;x1=pi/4:fl:pi/2;x2=pi/2:fl:13*pi/18;x3=13*pi/18: fl:7*pi/6;x4=7*pi/6:fl:2*pi; w=30;a0=600*w.A2/(pi/2).A2+xO*0;a 仁-600*w.A2/(pi/2)A2+x1*0;a2=x2*0; a3=-pi*pi*150*30*30/(2*4*pi/9)A2.*cos(9/4*(x3-13*pi/18));a4=x4*0;Plot(x0,a0,'b',x1,a1,'b',x2,a2,'b',x3,a3,'b',x4,a4,'b')title('推杆加速度')xlabel(' 0 (rad)')ylabel('a(mm/sA2')gridon三、凸轮机构的dss曲线绘制d由凸轮机构位移公式可知4h(/2)A2(0 /4)ds 4*60 ( /2 )( /4 /2)d ( /2)A275*4*s in 9( 13 )( /2 2 /2 2 4 ) 9418999 则其曲线如图所示其源代码如下clcfl=pi/180;x0=0:fl:pi/4;x1=pi/4:fl:pi/2;x2=pi/2:fl:13*pi/18;x3=13*pi/18: fl:7*pi/6;x4=7*pi/6:fl:2*pi;w=30;d0=-600.*x0/(pi/2)A2;d1=-600.*(pi/2-x1)/(pi/2)A2;d2=0*x2;d3=75*4/9.*si n(9/4*(x3-13*pi/18));d4=0*x4;s0=300*(2*x0/pi)A2;s1=150-1200*(pi/2-x1).*(pi/2-x1)/(pi.*pi);s2=150+x2*0;s3=75*(1+cos(9/4*(x3-13*pi/18)));s4=x4*0;Plot(d0,s0,'b',d1,s1,'b',d2,s2,'b',d3,s3,'b',d4,s4,'b')title(' 类速度-位移曲线')xlabel(' 类速度(mm/rad)')ylabel(' 位移(mmm)')gridon四、确定凸轮的基圆半径和偏距以ds/df-s图为基础,可分别作出二条限制线,以这二条线可确定最小基圆半径及所对应的偏距e,在其下方选择一合适点,即可满足压力角的限制条件图像如图所示由图像可知,设置点(50,-100 )为凸轮轴心位置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Har bi n I nst i t ute of Technol ogy械原理大作业二课程名称:机械原理设计题目:凸轮机构设计凸轮推杆运动规律1.运动规律(等加速等减速运动)推程 0 450推程 4509002.运动规律(等加速等减速运动)回程16002000回程20002400ds s三.推杆位移、速度、加速度线图及凸轮d线图采用VB编程,其源程序及图像如下:1.位移:Private Sub Command1_Click()Timer1.Enabled = True ' 开启计时器End SubPrivate Sub Timer1_Timer()Static i As Single表角度 Picture1.CurrentX = 0Picture1.CurrentY = 01 = i + 0.1If i <= 45 Thenq = is = 240 * (q / 90) ^ 2Picture1.PSet Step(q, -s), vbRedElseIf i >= 45 And i <= 90 Thenq = is = 120 - 240 * ((90 - q) ^ 2) / (90 ^ 2)Picture1.PSet Step(q, -s), vbGreenElseIf i >= 90 And i <= 150 Thenq = is = 120Picture1.PSet Step(q, -s), vbBlackElseIf i >= 150 And i <= 190 Then q = is = 120 - 240 * (q - 150) ^ 2 / 6400Picture1.PSet Step(q, -s), vbBlueDim s As Single, q As Single 'i 作为静态变量,控制流程; s 代表位移; q 代q = is = 240 * (230 - q) ^ 2 / 6400Picture1.PSet Step(q, -s), vbRedElseIf i >= 230 And i <= 360 Thenq = is = 0Picture1.PSet Step(q, -s), vbBlackElseEnd IfEnd Sub2.速度Private Sub Command2_Click()Timer2.Enabled = True ' 开启计时器End SubPrivate Sub Timer2_Timer()Static i As Singleq代Dim v As Single, q As Single, w As Single 'i为静态变量,控制流程;表角度;w代表角速度,此处被赋予50Picture1.CurrentX = 0Picture1.CurrentY = 0w = 501= i + 0.1q = iv = 480 * w * q / 8100Picture1.PSet Step(q, -v), vbRedElseIf i >= 45 And i <= 90 Thenq = iv = 480 * w * (90 - q) / 8100Picture1.PSet Step(q, -v), vbBlackElseIf i >= 90 And i <= 150 Thenq = iv = 0Picture1.PSet Step(q, -v), vbGreenElseIf i >= 150 And i <= 190 Then q = i v = -480 * w * (q - 150) / 6400Picture1.PSet Step(q, -v), vbBlueElseIf i >= 190 And i <= 230 Then q = i v = -480 * w * (230 - q) / 6400Picture1.PSet Step(q, -v), vbRedElseIf i >= 230 And i <= 360 Then q = iElseEnd IfEnd Sub3.加速度Private Sub Command3_Click()Timer3.Enabled = True ' 开启计时器End SubPrivate Sub Timer3_Timer()Static i As SingleDim a As Single, w As Single, q As Single 'ia代为静态变量,控制流程;表加速度;q 代表角度;w代表角速度w = 50Picture1.CurrentX = 0Picture1.CurrentY = 0i = i + 0.1If i <= 45 Thenq = ia = 480 * w ^ 2 / 8100Picture1.PSet Step(q, -a), vbRedElseIf i >= 45 And i <= 90 Then q = ia = -480 * w ^ 2 / 8100ElseIf i >= 90 And i <= 150 Thenq = ia = 0Picture1.PSet Step(q, -a), vbGreen ElseIf i >= 150 And i <= 190 Then q = i a = -480 * w ^ 2 / 6400Picture1.PSet Step(q, -a), vbBlueElseIf i >= 190 And i <= 230 Then q = i a = 480 * w ^ 2 / 6400Picture1.PSet Step(q, -a), vbRedElseIf i >= 230 And i <= 360 Then q = i a = 0Picture1.PSet Step(q, -a), vbBlackElseEnd IfEnd Sub4.ds/dq---dsPrivate Sub Command4_Click()Timer4.Enabled =True开启计时器;建立坐标系End SubPrivate Sub Timer4_Timer()Static i As SingleDim x As Single, s As Single, q As Single, scaley As Single, t As Single'i 为静态变量,控制流程;x 代表位移;s 代表纵坐标ds/dq ;q 代表角度Picture1.CurrentX = 0Picture1.CurrentY = 0scaley = 1t = 3.14 / 180i = i + 0.1If i <= 45 Thenq = i * tx = 194.734 * qs = 240 * (2 * q / 3.14) ^ 2Picture1.PSet Step(x, -s), vbRedElseIf i >= 45 And i <= 90 Thenq = i * tx = 194.734 * (3.14 / 2 - q)s = 120 - 97.367 * (3.14 / 2 - q) ^ 2Picture1.PSet Step(x, -s), vbRed ElseIf i >= 90 And i <= 150 Thenx = 0s = 120 * scaleyPicture1.PSet Step(x, -s), vbRedElseIf i >= 150 And i <= 190 Thenq = i * tx = -246.46 * (q - 5 * 3.14 / 6)s = 120 - 123.23 * (q - 5 * 3.14 / 6) ^ 2 Picture1.PSet Step(x, -s), vbRedElseIf i >= 190 And i <= 230 Thenq = i * tx = -246.46 * (23 * 3.14 / 18 - q)s = 123.23 * (23 * 3.14 / 18 - q) ^ 2Picture1.PSet Step(x, -s), vbRedElseIf i >= 230 And i <= 360 Thenq = i * tx = 0s = 0Picture1.PSet Step(x, -s), vbRedElseEnd IfEnd Sub四.确定凸轮基圆半径和偏距1.求切点转角在图中,右侧曲线为升程阶段的类速度-位移图,作直线D t d t 与其相切,且位移轴正方向呈夹角[ 1]=300, 则切点处的斜率与直线D t d t 的斜率相等,因为k Dtdt=tan600, 右侧曲线斜率可以表示为:q;q=tan60 0继而求出切点坐标( 337.272,292.084 ) 。
同理可求出另一切点( -89.766,16.347 )2.确定直线方程y-292.084=1.732* ( x-337.272 )y-16.347=-0.364* ( x+89.766)3.绘图确定基圆半径和偏距程序如下:Private Sub Command5_Click() ' 开启计时器;画出ds/dq-s 图的切线Timer5.Enabled = TruePicture1.Scale (-400, -400)-(400, 400)Picture1.Line (-50, 378.671)-(200, -54.329), vbRedPicture1.Line (-200, -65.683)-(40, -481.363), vbBluePicture1.Line (-200, -209.127)-(200, -63.527), vbBlackPicture1.Line (-200, -56.472)-(200, 89.128), vbGreenEnd SubPrivate Sub Timer5_Timer() 'i 为静态变量,控制流程;x 代表位移;s 代表纵坐标ds/dq ;q 代表角度;scaley 是图形比例系数;t 为角度,弧度转化系数Static i As SingleDim x As Single, s As Single, q As Single, scaley As Single, t As SinglePicture1.CurrentX = 0 Picture1.CurrentY = 0 scaley = 1t = 3.14 / 180 i = i + 0.1If i <= 45 Then q = i * tx = 194.734 * qs = 240 * (2 * q / 3.14) ^ 2Picture1.PSet Step(x, -s), vbRedElseIf i >= 45 And i <= 90 Thenq = i * tx = 194.734 * (3.14 / 2 - q)s = 120 - 97.367 * (3.14 / 2 - q) ^ 2 Picture1.PSet Step(x, -s), vbRedElseIf i >= 90 And i <= 150 Thenq = i * tx = 0s = 120 * scaleyPicture1.PSet Step(x, -s), vbRedElseIf i >= 150 And i <= 190 Thenq = i * tx = -246.46 * (q - 5 * 3.14 / 6)s = 120 - 123.23 * (q - 5 * 3.14 / 6) ^ 2 Picture1.PSet Step(x, -s), vbRedElseIf i >= 190 And i <= 230 Thenx = -246.46 * (23 * 3.14 / 18 - q)s = 123.23 * (23 * 3.14 / 18 - q) ^ 2Picture1.PSet Step(x, -s), vbRedElseIf i >= 230 And i <= 360 Thenq = i * tx = 0s = 0Picture1.PSet Step(x, -s), vbRedElseEnd IfEnd Sub在轴心公共许用区内取轴心位置,能够满足压力角要求,现取直线红线与直线绿线的交点为轴心位置,通过解方程组:x=131.557 y=-64.214 r 0=146.392 偏距e=131.557s0=64.013五.绘制凸轮理论廓线和实际廓线1.绘制凸轮理论轮廓Private Sub Command6_Click() ' 开启计时器;建立坐标系Picture1.Scale (-500, -500)-(500, 500)Timer6.Enabled = TrueEnd SubPrivate Sub Timer6_Timer() 'i 为静态变量,控制流程; e 为偏距;s 为基圆半径平方减去偏距平方再开方所得;q 为角度;x 为横坐标;y为纵坐标Static i As SingleDim e As Single, q As Single, s As Single, x As Single, y As Single e = 131.557s = 64.213Picture1.CurrentX = 12.764Picture1.CurrentY = -95.125i = i + 0.001If i <= 3.14 / 4 Thenq = ix = (s + 240 * (2 * q / 3.14) ^ 2) * Cos(q) - e * Sin(q)y = (s + 240 * (2 * q / 3.14) ^ 2) * Sin(q) + e * Cos(q)Picture1.PSet Step(x, -y), vbRedElseIf i >= 3.14 / 4 And i <= 3.14 / 2 Thenq = ix = (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * Cos(q) - e * Sin(q)y = (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * Sin(q) + e * Cos(q)Picture1.PSet Step(x, -y), vbRedElseIf i >= 3.14 / 2 And i <= 5 * 3.14 / 6 Thenq = ix = (s + 120) * Cos(q) - e * Sin(q)y = (s + 120) * Sin(q) + e * Cos(q)Picture1.PSet Step(x, -y), vbRedElseIf i >= 5 * 3.14 / 6 And i <= 19 * 3.14 / 18 Thenq = ix = (s + 120 - 123.23 * (q - 5 / 6 * 3.14) ^ 2) * Cos(q) - e * Sin(q) y = (s + 120 - 123.23 * (q - 5 / 6 * 3.14) ^ 2) * Sin(q) + e * Cos(q) Picture1.PSet Step(x, -y), vbRedElseIf i >= 19 / 18 * 3.14 And i <= 23 / 18 * 3.14 Thenq = ix = (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * Cos(q) - e * Sin(q)y = (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * Sin(q) + e * Cos(q) Picture1.PSet Step(x, -y), vbRedElseIf i >= 23 / 18 * 3.14 And i <= 2 * 3.14 Thenq = ix = s * Cos(q) - e * Sin(q)y = s * Sin(q) + e * Cos(q)Picture1.PSet Step(x, -y), vbRedElseEnd IfEnd Sub2.确定滚子半径并绘制曲率半径图Private Sub Command7_Click() ' 开启计时器,建立坐标系Timer7.Enabled = TruePicture1.Scale (-10, -500)-(10, 10)End SubPrivate Sub Timer7_Timer() 'i 为静态变量,控制流程;x 代表dx/dq;y 代表dy/dq ;p 代表曲率; e 为偏距;s 为基圆半径平方减去偏距平方再开方所得Static i As SingleDim s As Single, q As Single, x As Single, y As Single, p As Singles = 64.213e = 131.557Picture1.CurrentX = 0Picture1.CurrentY = -Sqr(e ^ 2 + s ^ 2)1= i + 0.01If i <= 3.14 / 4 Thenq = ix = (480 * 4 * q / 3.14 ^ 2) * Cos(q) + (s + 240 * (2 * q / 3.14) ^ 2) *(-Sin(q)) - e * Cos(q)y = (480 * 4 * q / 3.14 ^ 2) * Sin(q) - e * Sin(q) + (s + 240 * (2 * q / 3.14) ^ 2) * Cos(q)p = Sqr(x ^ 2 + y ^ 2)Picture1.PSet Step(q, -p), vbRedElseIf i >= 3.14 / 4 And i <= 3.14 / 2 Thenq = ix = (2 * 97.367 * (3.14 / 2 - q)) * Cos(q) + (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * (-Sin(q)) - e * Cos(q)y = (2 * 97.367 * (3.14 / 2 - q)) * Sin(q) + (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * Cos(q) - e * Sin(q)p = Sqr(x ^ 2 + y ^ 2)Picture1.PSet Step(q, -p), vbRedq = ix = (s + 120) * (-Sin(q)) - e * Cos(q)y = (s + 120) * Cos(q) - e * Sin(q)p = Sqr(x ^ 2 + y ^ 2)Picture1.PSet Step(q, -p), vbRedElseIf i >= 5 / 6 * 3.14 And i <= 19 / 18 * 3.14 Thenq = ix = (-2 * 123.23 * (q - 5 / 6 * 3.14)) * Cos(q) + (s + 120 - 123.23 *(q - 5 / 6 * 3.14) ^ 2) * (-Sin(q)) - e * Cos(q)y = (-2 * 123.23 * (q - 5 / 6 * 3.14)) * Sin(q) + (s + 120 - 123.23 *(q - 5 / 6 * 3.14) ^ 2) * Cos(q) - e * Sin(q)p = Sqr(x ^ 2 + y ^ 2)Picture1.PSet Step(q, -p), vbRedElseIf i >= 19 / 18 * 3.14 And i <= 23 / 18 * 3.14 Thenq = ix = (-2 * 123.23 * (23 / 18 * 3.14 - q)) * Cos(q) + (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * (-Sin(q)) - e * Cos(q)y = (-2 * 123.23 * (23 / 18 * 3.14 - q)) * Sin(q) + (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * Cos(q) - e * Sin(q)p = Sqr(x ^ 2 + y ^ 2)Picture1.PSet Step(q, -p), vbRedq = ix = s * (-Sin(q)) - e * Cos(q)y = s * Cos(q) - e * Sin(q)p = Sqr(x ^ 2 + y ^ 2)Picture1.PSet Step(q, -p), vbRedElseEnd IfEnd Sub其中曲率最小值为126.026mm 可以得到滚子半径为63.013mm3. 绘制实际轮廓线Private Sub Command8_Click()Picture1.Scale (-500, -500)-(500, 500) ' 建立坐标系;开启计时器Timer8.Enabled = TrueEnd SubPrivate Sub Timer8_Timer() 'i 为静态变量,控制流程;q 代表角度;x代表dx/dy ;y 代表dy/dq ; a 代表理论轮廓的横坐标; b 代表理论轮廓的纵坐标;m代表横坐标;n 代表纵坐标Static i As SingleDim s As Single, q As Single, x As Single, y As Single, p As Single, rr As Single, a As Single, b As Single, m As Single, n As Singlerr = 63.013 s = 64.213e = 131.557Picture1.CurrentX = 12.764Picture1.CurrentY = -95.175i = i + 0.001If i <= 3.14 / 4 Thenq = ix = (480 * 4 * q / 3.14 ^ 2) * Cos(q) + (s + 240 * (2 * q / 3.14) ^ 2) * (-Sin(q)) - e * Cos(q)y = (480 * 4 * q / 3.14 ^ 2) * Sin(q) - e * Sin(q) + (s + 240 * (2 * q / 3.14) ^ 2) * Cos(q)a = (s + 240 * (2 * q / 3.14) ^ 2) * Cos(q) - e * Sin(q)b = (s + 240 * (2 * q / 3.14) ^ 2) * Sin(q) + e * Cos(q)p = Sqr(x ^ 2 + y ^ 2)m = a - rr * y / pn = b + rr * x / pPicture1.PSet Step(m, -n), vbBlackElseIf i >= 3.14 / 4 And i <= 3.14 / 2 Thenq = ix = (2 * 97.367 * (3.14 / 2 - q)) * Cos(q) + (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * (-Sin(q)) - e * Cos(q)y = (2 * 97.367 * (3.14 / 2 - q)) * Sin(q) + (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * Cos(q) - e * Sin(q)a = (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * Cos(q) - e * Sin(q)b = (s + 120 - 97.367 * (3.14 / 2 - q) ^ 2) * Sin(q) + e * Cos(q)p = Sqr(x ^ 2 + y ^ 2)m = a - rr * y / pn = b + rr * x / pPicture1.PSet Step(m, -n), vbBlackElseIf i >= 3.14 / 2 And i <= 5 / 6 * 3.14 Thenq = ix = (s + 120) *(-Sin(q)) - e * Cos(q)y = (s + 120) *Cos(q) - e * Sin(q)a = (s + 120) *Cos(q) - e * Sin(q)b = (s + 120) *Sin(q) + e * Cos(q)p = Sqr(x ^ 2 + y ^ 2)m = a - rr * y / pn = b + rr * x / pPicture1.PSet Step(m, -n), vbBlackElseIf i >= 5 / 6 * 3.14 And i <= 19 / 18 * 3.14 Thenq = ix = (-2 * 123.23 * (q - 5 / 6 * 3.14)) * Cos(q) + (s + 120 - 123.23 * (q - 5 / 6 * 3.14) ^ 2) * (-Sin(q)) - e * Cos(q)y = (-2 * 123.23 * (q - 5 / 6 * 3.14)) * Sin(q) + (s + 120 - 123.23b = (s + 120 - 123.23 * (q - 5 / 6 * 3.14) ^ 2) * Sin(q) + e * Cos(q) p = Sqr(x ^ 2 + y ^ 2)m = a - rr * y / pn = b + rr * x / pPicture1.PSet Step(m, -n), vbBlackElseIf i >= 19 / 18 * 3.14 And i <= 23 / 18 * 3.14 Thenq = ix = (-2 * 123.23 * (23 / 18 * 3.14 - q)) * Cos(q) + (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * (-Sin(q)) - e * Cos(q)y = (-2 * 123.23 * (23 / 18 * 3.14 - q)) * Sin(q) + (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * Cos(q) - e * Sin(q)a = (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * Cos(q) - e * Sin(q)b = (s + 123.23 * (23 / 18 * 3.14 - q) ^ 2) * Sin(q) + e * Cos(q)p = Sqr(x ^ 2 + y ^ 2)m = a - rr * y / pn = b + rr * x / pPicture1.PSet Step(m, -n), vbBlackElseIf i >= 23 / 18 * 3.14 And i <= 2 * 3.14 Thenq = ix = s * (-Sin(q)) - e * Cos(q)y = s * Cos(q) - e * Sin(q)a = s * Cos(q) - e * Sin(q)b = s * Sin(q) + e * Cos(q)p = Sqr(x ^ 2 + y ^ 2)m = a - rr * y / pn = b + rr * x / pPicture1.PSet Step(m, -n), vbBlack ElseEnd IfEnd Sub内部轮廓为实际轮廓,外部轮廓为理论轮廓。