滚子摆动从动件凸轮设计matlab程序_第1页
滚子摆动从动件凸轮设计matlab程序_第2页
滚子摆动从动件凸轮设计matlab程序_第3页
滚子摆动从动件凸轮设计matlab程序_第4页
滚子摆动从动件凸轮设计matlab程序_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上disp ' * 滚子摆动从动件凸轮设计 *' disp '已知条件:' disp ' 凸轮作顺时针方向转动,从动件做摆动' disp ' 从动件在推程作等加速/等减速运动,在回程作等加速等减速运动' rb =52;rt = 10;qm=15;ft = 60;fs = 10;fh = 60;alp = 35;a=140;l=122;q0=asin(rb/a)*180/pi; fprintf (1,' 基圆半径 rb = %3.4f mm n',rb) fprintf (1,' 滚子

2、半径 rt = %3.4f mm n',rt) fprintf (1,' 起始角度 q0= %3.4f mm n',q0) fprintf (1,' 最大摆动角度 qm = %3.4f mm n',qm) fprintf (1,' 推程运动角 ft = %3.4f 度 n',ft) fprintf (1,' 远休止角 fs = %3.4f 度 n',fs) fprintf (1,' 回程运动角 fh = %3.4f 度 n',fh) fprintf (1,' 推程许用压力角 alp = %3.4f

3、度 n',alp) hd= pi / 180;du = 180 / pi; %角度弧度互换 d1 = ft + fs;d2 = ft + fs + fh; disp ' ' disp '计算过程和输出结果:' disp ' 1- 计算凸轮理论轮廓的压力角和曲率半径' disp ' 1-1 推程(等加速/等减速运动)' s = zeros(ft);ds = zeros(ft);d2s = zeros(ft);vt=zeros(ft);st1=zeros(ft);at=zeros(ft); at = zeros(ft);atd

4、 = zeros(ft);pt = zeros(ft); for f = 1 : ft if f <= ft / 2 s(f)=2*(qm/ft2)*f2;st1(f)=s(f);s = s(f); %推程加速方程式 ds(f)=(qm/ft2)*f;vt(f)=ds(f);ds = ds(f); d2s(f)=4*qm/ft;at(f)=d2s(f);d2s = d2s(f); else s(f)=qm-2*qm*(ft-f)2/ft2;st1(f)=s(f); s = s(f); %推程减速方程式 ds(f)=4*qm*(ft-f)/ft2;vt(f)=ds(f);ds = ds(f

5、); d2s(f)=-4 *qm/ft2;at(f)=d2s(f);d2s = d2s(f); end at(f)= atan(-l*(1-ds)/(a*sin(s+q0)*hd)-(-1)*cos(s+q0)*hd)/sin(s+q0)*hd);atd(f) = at(f) * du; %推程压力角的角度和弧度表达式 p1= -a*sin(f*hd)+l*sin(s+q0-f)*hd)*(ds-1); p2= a*cos(f*hd)+l*cos(s+q0-f)*hd)*(ds-1); p3=-a*cos(f*hd)+l*(ds-1)2*cos(s+q0-f)*hd)+l*d2s*sin(s+

6、q0-f)*hd); p4=-a*sin(f*hd)-l*(ds-1)2*sin(s+q0-f)*hd)+l*ds*cos(s+q0-f)*hd); pt(f)= (p12+p22)1.5/(p1*p4-p2*p3) ;p = pt(f); end atm = 0; for f = 1 : ft if atd(f) > atm atm = atd(f); end end fprintf (1,' 最大压力角 atm = %3.4f 度n',atm) for f = 1 : ft if abs(atd(f) - atm) < 0.1 ftm = f;break end

7、 end fprintf (1,' 对应的位置角 ftm = %3.4f 度n',ftm) if atm > alp fprintf (1,' * 凸轮推程压力角超过许用值,需要增大基圆!n') end ptn = rb ;ftn=0; for f = 1 : ft if pt(f) < ptn ptn = pt(f); end end fprintf (1,' 轮廓最小曲率半径 ptn = %3.4f mmn',ptn) for f = 1 : ft if abs(pt(f) - ptn) < 0.1 ftn = f;brea

8、k end end fprintf (1,' 对应的位置角 ftn = %3.4f 度n',ftn) if ptn < rt + 5 fprintf (1,' * 凸轮推程轮廓曲率半径小于许用值,需要增大基圆或减小滚子!n') end disp ' 1-2 回程(等加速等减速运动)' s = zeros(fh);ds = zeros(fh);d2s = zeros(fh); ah = zeros(fh);ahd = zeros(fh);ph = zeros(fh); for f = d1 : d2 k = f - d1; if k<=

9、fh / 2 s(f) =qm-2*qm*(k)2/fh2;st1(f)=s(f); s = s(f); ds(f)=-4*qm*k/fh2;ds = ds(f); d2s(f)= -4*qm/fh2;d2s = d2s(f); else s(f) =2*qm*(d2-f)2/fh2;st1(f)=s(f); s = s(f); ds(f)=-4*qm*(d2-f)/fh2;ds = ds(f); d2s(f)=4*qm/fh2;d2s = d2s(f); end at(f)= atan(-l*(1-ds)/(a*sin(s+q0)*hd)-(-1)*cos(s+q0)*hd)/sin(s+q

10、0)*hd);atd(f) = at(f) * du; %推程压力角的角度和弧度表达式 p1= -a*sin(f*hd)+l*sin(s+q0-f)*hd)*(ds-1); p2= a*cos(f*hd)+l*cos(s+q0-f)*hd)*(ds-1); p3=-a*cos(f*hd)+l*(ds-1)2*cos(s+q0-f)*hd)+l*d2s*sin(s+q0-f)*hd); p4=-a*sin(f*hd)-l*(ds-1)2*sin(s+q0-f)*hd)+l*ds*cos(s+q0-f)*hd); pt(f)= (p12+p22)1.5/(p1*p4-p2*p3) ;p = pt(

11、f); end atm = 0; for f = 1 : ft if atd(f) > atm atm = atd(f); end end fprintf (1,' 最大压力角 atm = %3.4f 度n',atm) for f = 1 : ft if abs(atd(f) - atm) < 0.1 ftm = f;break end end fprintf (1,' 对应的位置角 ftm = %3.4f 度n',ftm) if atm > alp fprintf (1,' * 凸轮推程压力角超过许用值,需要增大基圆!n')

12、end ptn = rb ;ftn=0; for f = 1 : ft if pt(f) < ptn ptn = pt(f); end end fprintf (1,' 轮廓最小曲率半径 ptn = %3.4f mmn',ptn) for f = 1 : ft if abs(pt(f) - ptn) < 0.1 ftn = f;break end end fprintf (1,' 对应的位置角 ftn = %3.4f 度n',ftn) if ptn < rt + 5 fprintf (1,' * 凸轮推程轮廓曲率半径小于许用值,需要增大

13、基圆或减小滚子!n') end disp ' 2- 计算凸轮理论廓线与实际廓线的直角坐标' n = 360; s = zeros(n);ds = zeros(n);r = zeros(n);rp = zeros(n); x = zeros(n);y = zeros(n);dx = zeros(n);dy = zeros(n); xx = zeros(n);yy = zeros(n);xp = zeros(n);yp = zeros(n); xxp = zeros(n);yyp = zeros(n); for f = 1 : n if f <= ft/2 s(f)=

14、2*(qm/ft2)*f2;s = s(f); ds(f)=(qm/ft2)*f;ds = ds(f); elseif f > ft/2 & f <= ft s(f)=qm-2*qm*(ft-f)2/ft2; s = s(f); ds(f)=4*qm*(ft-f)/ft2;ds = ds(f); elseif f > ft & f <= d1 s = qm;ds = 0; elseif f > d1 & f <= (d2-fh/2) k = f - d1; s(f) =qm-2*qm*(k)2/fh2; s = s(f); ds(f)

15、=-4*qm*k/fh2;ds = ds(f); elseif f>(d2-fh/2)&f<=d2 s(f) =2*qm*(d2-f)2/fh2; s = s(f); ds(f)=-4*qm*(d2-f)/fh2;ds = ds(f); elseif f > d2 & f <= n s = 0;ds = 0; end xx(f) = a*cos(f*hd)-l*cos(s+q0-f)*hd);x=xx(f); yy(f) = a*sin(f*hd)+l*sin(s+q0-f)*hd);y=yy(f); dx(f) = -a*sin(f*hd)+l*sin

16、(s+q0-f)*hd)*(ds-1); dx = dx(f); dy(f) = a*cos(f*hd)+l*cos(s+q0-f)*hd)*(ds-1); dy = dy(f); xp(f) = x-rt*(dy/sqrt(dx2+dy2);xxp=xp(f); yp(f) = y+rt*(dx/sqrt(dx2+dy2);yyp = yp(f); r(f) = sqrt (x 2 + y 2 ); rp(f) = sqrt (xxp 2 + yyp 2 ); end disp ' 2-1 推程(等加速/等减速运动)' disp ' 凸轮转角 理论x 理论y 实际x

17、实际y' for f = 10 : 10 :ft nu = f xx(f) yy(f) xp(f) yp(f); disp(nu) end disp ' 2-2 回程(等加速/等减速运动)' disp ' 凸轮转角 理论x 理论y 实际x 实际y' for f = d1 : 10 : d2 nu = f xx(f) yy(f) xp(f) yp(f); disp(nu) end disp ' 2-3 凸轮轮廓向径' disp ' 凸轮转角 理论r 实际r' for f = 10 : 10 : n nu = f r(f) rp(f); disp(nu) end disp '绘制凸轮的理论轮廓和实际轮廓:' plot(xx,yy,'r-.') % 理论轮廓(红色,点划线) axis (-(150) (150) -(150) (150) % 横轴和纵轴的下限和上限 axis equal % 横轴和纵轴的尺度比例相同 text(50,0,'X') % 标注横轴 text(0,50,'Y') % 标注纵轴 text(-5,5,'O'

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论