用matlab程序画凸轮

用matlab程序画凸轮
用matlab程序画凸轮

其中r0是凸轮基圆半径,r1是滚子半径,e是偏心距,q、w、t为四段位移方程的分界点(弧度),hjkl为四段位移方程,其他程序段不用改。

程序:

r0=80

r1=10

e=20

q=15*pi/36

w=7*pi/6

t=4*pi/3

syms d

s0=sqrt((r0).^2-e^2)

h=111.45*d.^3-123.45*d.^4+37.1*d.^5

j=30+30*(d-15*pi/36)/pi

k=5*(3*(d-pi)/pi-sin(6*(d-pi))/(2*pi))+50

l=55*(1-3*(d-4*pi/3)/(2*pi)+sin(3*(d-4*pi/3))/(2*pi))

s=h

x=(s0+s)*sin(d)+e*cos(d)

y=(s0+s)*cos(d)-e*sin(d)

dx=diff(x,'d')

dy=diff(y,'d')

a=dx/sqrt((dx).^2+(dy).^2)

c=-dy/sqrt((dx).^2+(dy).^2)

m1=x+r1*c

n1=y+r1*a

m2=x-r1*c

n2=y-r1*a

ezplot(n1,m1,[0,q])

hold on

ezplot(y,x,[0,q])

ezplot(n2,m2,[0,q])

s=j

x=(s0+s)*sin(d)+e*cos(d)

y=(s0+s)*cos(d)-e*sin(d)

dx=diff(x,'d')

dy=diff(y,'d')

a=dx/sqrt((dx).^2+(dy).^2)

c=-dy/sqrt((dx).^2+(dy).^2)

m1=x+r1*c

n1=y+r1*a

m2=x-r1*c

n2=y-r1*a

ezplot(n1,m1,[q,w])

ezplot(y,x,[q,w])

ezplot(n2,m2,[q,w])

s=k

x=(s0+s)*sin(d)+e*cos(d)

y=(s0+s)*cos(d)-e*sin(d)

dx=diff(x,'d')

dy=diff(y,'d')

a=dx/sqrt((dx).^2+(dy).^2) c=-dy/sqrt((dx).^2+(dy).^2) m1=x+r1*c

n1=y+r1*a

m2=x-r1*c

n2=y-r1*a

ezplot(n1,m1,[w,t])

ezplot(y,x,[w,t])

ezplot(n2,m2,[w,t])

s=l

x=(s0+s)*sin(d)+e*cos(d)

y=(s0+s)*cos(d)-e*sin(d)

dx=diff(x,'d')

dy=diff(y,'d')

a=dx/sqrt((dx).^2+(dy).^2) c=-dy/sqrt((dx).^2+(dy).^2) m1=x+r1*c

n1=y+r1*a

m2=x-r1*c

n2=y-r1*a

ezplot(n1,m1,[t,2*pi]) ezplot(y,x,[t,2*pi])

ezplot(n2,m2,[t,2*pi])

grid on

基于MATLAB软件的凸轮轮廓曲线设计_

基于MATLAB软件的凸轮轮廓曲线设 计 摘要:以偏置移动从动件盘形凸轮为例,基于MATLAB软件对凸轮轮廓曲线进行了解析法设计.绘制出轮廓曲线。运行结果表明:在从动件运动规律确定的情况下,利用MATLAB软件以很方便、快捷地得到凸轮的轮廓曲线。 关键词:凸轮机构;凸轮轮廓曲线;MATLAB;解析法 前言 凸轮轮廓曲线的设计,一般可分为图解法和解析法.利用图解法能比较方便地绘制出各种平面凸轮的轮廓曲线.但这种方法仅适用于比较简单的结构,用它对复杂结构进行设计则比较困难,而且利用图解法进行结构设计,作图误差较大,对一些精度要求高的结构不能满足设计要求。解析法可以根据设计要求,通过推导机构中各部分之间的几何关系,建立相应的方程,精确地计算出轮廓线上各点的坐标,然后把凸轮的轮廓曲线精确地绘制出来.但是,当从动件运动规律比较复杂时,利用解析法获得凸轮的轮廓曲线的工作量比较大.而MATLAB软件提供了强大的矩阵处理和绘图功能,具有核心函数和工具箱.其编程代码接近数学推导公式,简洁直观,操作简易,人机交互性能好,且可以方便迅速地用三维图形、图像、声音、动画等表达计算结果、拓展思路[1]。因此,基于MATLAB软件进行凸轮机构的解析法设计,可以解决设计工作量大的问题。 本文基于MATLAB软件进行凸轮轮廓曲线的解析法设计,利用《机械原理》课程的计算机辅助教学,及常用机构的计算机辅助设计.其具体方法为首先精确地计算出轮廓线上各点的坐标,然后运用MATLAB绘制比较精确的凸轮轮廓曲线。

1 设计的意义与已知条件 1.1意义 凸轮机构是由具有曲线轮廓或凹槽的构件,通过高副接触带动从动件实现预期运动规律的一种高副机构,它广泛地应用于各种机械,特别是自动机械、自动控制装置和装配生产线中,是工程实际中用于实现机械化和自动化的一种常用机构。所以,在凸轮的加工中,精确的确定凸轮的轮廓,这对于保证凸轮所带动从动件的运动规律是尤为重要的。 1.2已知条件 偏置移动从动件盘形凸轮设计已知条件(图1): 凸轮作逆时针方向转动,从动件偏置在凸轮轴心的右边 从动件在推程作等加速/等减速运动,在回程作余弦加速度运动 基圆半径rb = 40 mm,滚子半径rt = 10mm,推杆偏距e = 15 mm, 推程升程h = 50 mm,推程运动角ft = 100度,远休止角fs = 60度 回程运动角fh = 90度,推程许用压力角alp = 35度。

滚子摆动从动件凸轮设计matlab程序

} 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 = % mm \n',rb) fprintf (1,' 滚子半径 rt = % mm \n',rt) fprintf (1,' 起始角度 q0= % mm \n',q0) ; fprintf (1,' 最大摆动角度 qm = % mm \n',qm) fprintf (1,' 推程运动角 ft = % 度 \n',ft) fprintf (1,' 远休止角 fs = % 度 \n',fs) fprintf (1,' 回程运动角 fh = % 度 \n',fh) fprintf (1,' 推程许用压力角 alp = % 度 \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 = zeros(ft);pt = zeros(ft); for f = 1 : ft if f <= ft / 2 s(f)=2*(qm/ft^2)*f^2;st1(f)=s(f);s = s(f); %推程加速方程式 ( ds(f)=(qm/ft^2)*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/ft^2;st1(f)=s(f); s = s(f); %推程减速方程式 ds(f)=4*qm*(ft-f)/ft^2;vt(f)=ds(f);ds = ds(f); d2s(f)=-4 *qm/ft^2;at(f)=d2s(f);d2s = d2s(f);

solidworks画凸轮技巧

凸轮。。。应该有。。。升程和回程。。所以你的槽。。应该是围绕圆柱图带旋转切不是标准圆。。。通 俗点就是3坐标都有偏移。 方法还是比较多的。。。。你可以选择。。 1。用包络。画法。。先在平面草绘出槽的中心线。。包络到圆柱体上去后。用扫描切除槽内材料。。即可。。。’ 2。可以用高级功能中的。。。。环形折弯。。。。跟一方法的区别在于这个直接折弯实体。。成一个 也圆柱。。意思就是你先画出槽的平面展开图。。再折弯就行了。 希望对你有所帮助。 直接利用运动曲线画凸轮(上篇) 已有 395 次阅读2012-2-22 15:30|系统分类:技术|曲线, 运动, SolidWorks, 谐波 概述:SolidWorks Toolbox插件里面带有凸轮插件,可以很方便地绘制各种简 单的盘形凸轮和线性凸轮。在此插件里面可以定义:摆线、谐波、正弦等9种运动曲线。但如果我们想利用一些自定义的运动曲线来生成相应的凸轮,应该如何做呢? 下面我将详细介绍如何利用一条已存在的凸轮展开线绘制凸轮。(包括线性凸轮、盘形凸轮和圆柱凸轮) 1.将曲线导入到SolidWorks草图中: 2.直接用此草图拉伸成实体,这是线性凸轮。如下图:

3.做两个坐标系,每个坐标对应另两种凸轮:

4.加入“弯曲”特征。

5.以下分别是盘形凸轮和圆柱凸轮,效果图如下:

6.三种凸轮运动状态见下面的动画。从动画中可以看出,三种凸轮的运动轨迹跟原草图中的运动曲线是一致的。 已同步至香港智诚科技的微博 利用motion生成共扼凸轮(下篇) - 利用跟踪轨迹生成凸轮 已有 235 次阅读2012-2-20 15:15|系统分类:技术|SolidWorks, motion, 共扼凸轮 智诚科技ICT Assistant Technical Manager Lenny Yang 1,概述,在上一篇文章里,我们讲解了如何利用motion生成运动仿真。现在,我将介绍如何使用motion运动仿真进行共扼凸轮的绘制。案例如下图: 2,在motion结果上,我们可以跟踪任意点相对任意物体的运动轨迹。而在凸轮运动中,凸轮的形状跟凸轮中心点相对旋转轴的运动轨迹是相似的。所以我们只要跟踪凸轮中心点的运动轨迹就可以得到正确的凸轮形状。

凸轮运动Matlab仿真-Matlab课程设计

Matlab 课程设计 李俊机自091 设计题目一:凸轮机构设计 已知轮廓为圆形的凸轮(圆的半径为100mm、偏心距为20mm),推杆与凸轮运动中心的距离20mm,滚子半径为10mm,请利用matlab仿真出凸轮推杆的运动轨迹和运动特性(速度,加速度),并利用动画演示出相关轨迹和运动特性。 %总程序代码 clc; clf; clear; p=figure('position',[100 100 1200 600]); for i=1:360 %画圆形凸轮 R=100; %圆形凸轮半径 A=0:0.006:2*pi; B=i*pi/180; e=20; %偏心距 a=e*cos(B);

b=e*sin(B); x=R*cos(A)+a; y=R*sin(A)+b; subplot(1,2,1) plot(x,y,'b','LineWidth',3); %填充 fill(x,y,'y') axis([-R-e,R+e,-R-e,R+e+100]); set(gca,'Xlim',[-R-e,R+e]) set(gca,'Ylim',[-R-e,R+e+100]) axis equal; axis manual; axis off; hold on; plot(a,b,'og') plot(e,0,'or') plot(0,0,'or','LineWidth',3)

%画滚子 gcx=0; %滚子中心X坐标r=10; %滚子半径 gcy=sqrt((R+r)^2-a^2)+b; %滚子中心Y坐标 gx=r*cos(A)+gcx; %滚子X坐标 gy=r*sin(A)+gcy; %滚子Y坐标 plot(gx,gy,'b','LineWidth',2); %画其它部分 plot([0 a],[0 b],'k','LineWidth',4) plot([3 3],[170 190],'m','LineWidth',4) plot([-3 -3],[170 190],'m','LineWidth',4) %画顶杆 gc=120; dgx=[0 0]; dgy=[gcy gcy+gc]; plot(dgx,dgy,'LineWidth',4); hold off

偏置直动滚子推杆盘形凸轮matlab编程(程序)

机械原理大作业 学院:机械与电子信息学院 授课老师:曾小慧 姓名:张京 学号:547 日期:2015-5-23

目录 1.求轮廓曲线 ○1推程阶段 ○2远休止阶段 ○3回程阶段 ○4近休止阶段 ○5Matlab程序设计 ○6轮廓图形 2.求工作廓线 ○1推程阶段 ○2远休止阶段 ○3回程阶段 ○4近休止阶段 ○5Matlab程序设计 ○6轮廓图形 3.求解最大压力角 ○1压力角公式 ○2MATLAB程序设计 ○3根据MATLAB程序作图可得出其压力角与角度的关系并分析○4失真情况分析 4.附录 Matlab程序

凸轮轮廓 9-14试设计偏置直动滚子推杆盘形凸轮机构的理论轮廓曲线和工作廓线。已知凸轮轴置于推杆轴线右侧,偏距e=20mm ,基圆半径r。=50mm ,滚子半径rr=10mm 。凸轮以等角速度沿顺时针方向回转,在凸轮转过角d1=120o的过程中,推杆按正弦加速度运动规律上升h=50mm ;凸轮继续转过d2=30o时,推杆保持不动;其后,凸轮再回转角度d3=60o时,推杆又按余弦加速度运动规律下降至起始位置;凸轮转过一周的其余角度时,推杆又静止不动。 解: 1.求理论廓线 对于偏置直动滚子推杆盘形凸轮机构,凸轮理论廓线上B 点(即滚子中心)的直角坐标为 ]cos sin )[(0δδe s s x ++-= δδsin cos )(0e s s y -+= (a ) 式中mm mm e r s 826.4520502222 00=-=-= ① 推程阶段 3212001π δ=?= )] 2/()3sin()2/3[()]2/()/2sin()/[(110110111πδπδπδπδδδ-=-=h h s (?? ????=32, 01πδ) ② 远休止阶段 63002π δ=?= 502=s ?? ????=6,02πδ

基于MATLAB的平面盘形凸轮机构参数化设计

基于MATLAB的平面盘形凸轮机构参数化设计 作者:李军, LI Jun 作者单位:九江学院,机械与材料工程学院,江西,九江,332005 刊名: 煤炭技术 英文刊名:COAL TECHNOLOGY 年,卷(期):2011,30(3) 参考文献(4条) 1.孙桓;陈作模;葛文杰机械原理 2009 2.任欣;万新南基于MATLAB的AR及BP模型在矿井涌水量预测中的应用与比较[期刊论文]-煤炭技术 2009(03) 3.曹岩MATLEB R2006a基础篇 2008 4.张明;周志锋基于MATLAB与VBML的凸轮机构虚拟设计研究及实现[期刊论文]-机械传动 2006(01) 本文读者也读过(10条) 1.张小委.王振兵.李颖.ZHANG Xiao-wei.WANG Zhen-bing.LI Ying基于余弦定理和Matlab的气弹簧设计计算[期刊论文]-建筑机械化2011,32(5) 2.王锡霖.李举.许文艺.严日明.WANG Xi-lin.LI Ju.XU Wen-yi.YAN Ri-ming基于Matlab的平面正弦连杆机构动力学分析[期刊论文]-长春工业大学学报(自然科学版)2011,32(1) 3.李立全.王进礼基于MATLAB的导杆机构的概率设计[期刊论文]-黑龙江科技信息2008(20) 4.赵利明.温倩.ZHAO Li-ming.WEN Qian SolidWorks在平面连杆机构设计中的应用[期刊论文]-河南纺织高等专科学校学报2005,17(3) 5.林伟艺.蓝兆辉平面凸轮机构位移反求的杆组方法[期刊论文]-机械设计与研究2003,19(z1) 6.卫江红连杆机构运动分析与仿真系统的开发[期刊论文]-内蒙古科技与经济2009(9) 7.陈文.傅蔡安.CHEN Wen.FU Caian混合驱动冲压机构的运动学分析及参数优化[期刊论文]-机床与液压 2011,39(7) 8.徐梓斌.闵剑青.XU Zi-bin.MIN Jian-qing VB/Matlab在机构动力学分析中的应用[期刊论文]-轻工机械2005,23(2) 9.耿姝芳.李晓亮.刘立.Geng Shufang.Li Xiaoliang.Liu Li基于MATLAB的双滑块机构运动学仿真[期刊论文]-冶金设备2007(3) 10.赵春花.汤文成.郭丽华.ZHAO Chun-hua.TANG Wen-cheng.GUO Li-hua识别平面多杆混合驱动机构的元桁架消去法[期刊论文]-机械设计2009,26(2) 本文链接:https://www.360docs.net/doc/ef11226607.html,/Periodical_mtjs201103010.aspx

滚子摆动从动件凸轮设计matlab程序

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,' 滚子半径 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 度 \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 = zeros(ft);pt = zeros(ft); for f = 1 : ft if f <= ft / 2 s(f)=2*(qm/ft^2)*f^2;st1(f)=s(f);s = s(f); %推程加速方程式 ds(f)=(qm/ft^2)*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/ft^2;st1(f)=s(f); s = s(f); %推程减速方程式 ds(f)=4*qm*(ft-f)/ft^2;vt(f)=ds(f);ds = ds(f); d2s(f)=-4 *qm/ft^2;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+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)= (p1^2+p2^2)^1.5/(p1*p4-p2*p3) ;p = pt(f);

凸轮曲线设计

凸轮曲线设计 当根据使用要求确定了凸轮机构的类型、基本参数以及从动件运动规律后,即可进行凸轮轮廓曲线的设计。设计方法有几何法和解析法,两者所依据的设计原理基本相同。几何法简便、直观,但作图误差较大,难以获得凸轮轮廓曲线上各点的精确坐标,所以按几何法所得轮廓数据加工的凸轮只能应用于低速或不重要的场合。对于高速凸轮或精确度要求较高的凸轮,必须建立凸轮理论轮廓曲线、实际轮廓曲线以及加工刀具中心轨迹的坐标方程,并精确地计算出凸轮轮廓曲线或刀具运动轨迹上各点的坐标值,以适合在数控机床上加工。 圆柱凸轮的廓线虽属空间曲线,但由于圆柱面可展成平面,所以也可以借用平面盘形凸轮轮廓曲线的设计方法设计圆柱凸轮的展开轮廓。本节分别介绍用几何法和解析法设计凸轮轮廓曲线的原理和步骤。 1 几何法 反转法设计原理: 以尖底偏置直动从动件盘形凸轮机构为例: 凸轮机构工作时,凸轮和从动件都在运动。为了在图纸上画出凸轮轮廓曲线,应当使凸轮与图纸平面相对静止,为此,可采用如下的反转法:使整个机构以角速度(-w)绕O转动,其结果是从动件与凸轮的相对运动并不改变,但凸轮固定不动,机架和从动件一方面以角速度(-w)绕O转动,同时从动件又以原有运动规律相对机架往复运动。根据这种关系,不难求出一系列从动件尖底的位置。由于尖底始终与凸轮轮廓接触,所以反转后尖底的运动轨迹就是凸轮轮廓曲线。 1). 直动从动件盘形凸轮机构 尖底偏置直动从动件盘形凸轮机构: 已知从动件位移线图,凸轮以等角速w顺时针回转,其基圆半径为r0,从动件导路偏距为e,要求绘出此凸轮的轮廓曲线。 运用反转法绘制尖底直动从动件盘形凸轮机构凸轮轮廓曲线的方法和步骤如下: 1) 以r0为半径作基圆,以e为半径作偏距圆,点K为从动件导路线与偏距圆的切点,导路线与基圆的交点B0(C0)便是从动件尖底的初始位置。 2) 将位移线图s-f的推程运动角和回程运动角分别作若干等分(图中各为四等分)。 3) 自OC0开始,沿w的相反方向取推程运动角(1800)、远休止角(300)、回程运动角(1900)、近休止角(600),在基圆上得C4、C5、C9诸点。将推程运动角和回程运动角分成与从动件位移线图对应的等分,得C1、C2、C3

凸轮的matlab绘制

附2:习题4-3解答 (1)凸轮的理论廓线方程: 0022 00()sin cos ()cos sin x s s e y s s e s r e ????=++?? =+-?=-式中 (2)从动件在不同阶段的位移方程: 2sin()[0,120]230[120,150][150,300]'0 [300,360] h h s h h π???φπφ???φ??-∈????∈???=? ?-∈????∈???推程阶段远休止阶段回程阶段近休止阶段 (3)求解凸轮的实际廓线: 2222 a r a r 00x =x-r cos y =y-r sin sin cos ()cos sin sin ()sin cos cos dx d dx dy d d dy d dx dy d d dx ds s s e d d dy ds s s e d d θθ ?θ???θ????????????++?? ?? ?=??????? ? ? ?????? ? ?- ?=?????? ? ?? ?????? ?=++-?? ? ?=++-?? 式中而

同样,由于位移s 与从动件所处的运动阶段有关,所以有: 2cos()[0,120]0[120,150]s [150,300]'0 [300,360] h h d h d π??φφφ???φ??-∈????∈???=??∈????∈???推程阶段远休止阶段回程阶段近休止阶段 (4)代入已知条件,并用Matlab 语言编程求解,编程代码如下: disp ' ******** 偏置直动滚子从动件盘形凸轮设计 ********' disp '已知条件:' disp ' 凸轮作逆时针方向转动,从动件偏置在凸轮轴心的右边' disp ' 从动件在推程作摆线运动规律运动,在回程作等速运动规律运动' ro = 50;rr = 10;e = 12;h = 30;ft = 120;fs = 30;fh = 150; fprintf (1,' 基圆半径 ro = %3.4f mm \n',ro) fprintf (1,' 滚子半径 rr = %3.4f mm \n',rr) fprintf (1,' 推杆偏距 e = %3.4f mm \n',e) fprintf (1,' 推程行程 h = %3.4f mm \n',h) fprintf (1,' 推程运动角 ft = %3.4f 度 \n',ft) fprintf (1,' 远休止角 fs = %3.4f 度 \n',fs) fprintf (1,' 回程运动角 fh = %3.4f 度 \n',fh) hd = pi / 180;du = 180 / pi; so = sqrt( ro^2 - e^2 ); d1 = ft + fs;d2 = ft + fs + fh; disp ' ' disp '计算过程和输出结果:' disp ' 1-1 推程(摆线运动规律运动)' s = zeros(ft);ds = zeros(ft);d2s = zeros(ft); for f = 1 : ft s(f) = h * f / ft - h * sin(2 * pi * f / ft) / (2 * pi);s = s(f); ds(f) = h / (ft * hd) - h / (ft * hd) * cos(2 * pi * f / ft);ds = ds(f); d2s(f) = 2 * pi * h / (ft * hd) ^ 2 * sin(2 * pi * f / ft);d2s = d2s(f); end disp ' 1-2 回程(等速运动规律运动)' s = zeros(fh);ds = zeros(fh);d2s = zeros(fh); for f = d1 : d2 s(f) = h - h * (f-150) / fh; s = s(f); ds(f) = - h / (fh * hd);ds = ds(f); d2s(f) = 0;d2s = d2s(f); end disp ' 2- 计算凸轮理论廓线与实际廓线的直角坐标'

Matlab编程五次凸轮

附录11、用解析法设计凸轮2的实际轮廓曲线。 1、建立凸轮轮廓的数学模型。 图l 为往复式偏心从动件盘形凸轮的机构运动简图,B 为 理论轮廓线上的任意一点,在图示的直角坐标系中,B 的坐 标,即凸轮理论廓线上的直角坐标参数方程为: X=OE+EF=(S0+S )*Sin (J )+e*Cos (J ) Y=BD – FD=(S0+S )*Cos (J ) – e*Sin (J ) 式中: X ,Y :凸轮理论廓线上的某一点坐标 (mm) e :从动件的偏心距(mm),OC R :凸轮的基圆半径(mm),OA S 0:220E R S -=(mm),CK J :凸轮的转角 S :S =f(J)从动件运动方程,KB BC =CK 十KB =S 0十S 因为工作廓线在法线方向的距离处处相等,且等于滚子半径r ’,故当已知理论廓线上的任意一点B(X,Y)时,只要沿理论廓线在该点的法线的方向取距离为r ’,即得到工作廓线上的相应点B ’(X ’,Y ’).由高等数学可知,理论廓线B 点处的法线n-n 的斜率(与切线斜率互为负倒数)应为 Tan a=-dx/dy=(dx/dJ)/(dx/dJ)/(-dy/dJ)=sina/cosa 注: a 为理论廓线B 点处的法线和X 轴的夹角。 根据(1)(2)两式有 dx/dJ=(ds/dJ-e)sin(J)+(s0+s)cos(J) (3) dy/dJ=(ds/dJ-e)cos(J)-(s0+s)sin(J) (4) 可得 Sin a=(dx/dJ)/((dx/dJ)^2+(dy/dJ)^2)^0.5 (5) Cos a=-(dy/dJ)/((dx/dJ)^2+(dy/dJ)^2)^0.5 (6) 工作廓线上对应的点B ’(x ’,y ’)坐标为: x ’=x-r ’cos a y ’=y- r ’sin a 2、 从动件运行规律:五次多项式运行规律 从动件运动形式为:升—停—降—停型 图1

matlab程序设计与应用(第二版)第三章部分课后答案

第三章1. (1)A=eye(3) (2)A=100+100*rand(5,6) (3)A=1+sqrt(0.2)*randn(10,50) (4)B=ones(size(A)) (5)A+30*eye(size(A)) (6)B=diag(diag(A)) 2. B=rot90(A) C=rot90(A,-1) 3. B=inv(A) ;A的逆矩阵 C=det(A) ;A的行列式的值 D=A*B E=B*A D=E 因此A与A-1是互逆的。 4. A=[4 2 -1;3 -1 2;12 3 0]; b=[2;10;8]; x=inv(A)*b x = -6.0000 26.6667 27.3333 5. (1) diag(A) ;主对角线元素 ans = 1 1 5 9 triu(A) ;上三角阵

ans = 1 -1 2 3 0 1 -4 2 0 0 5 2 0 0 0 9 tril(A) ;下三角阵 ans = 1 0 0 0 5 1 0 0 3 0 5 0 11 15 0 9 rank(A) ;秩 ans = 4 norm(A) ;范数 ans = 21.3005 cond(A) ;条件数 ans = 11.1739 trace(A) ;迹 ans = 16 (2)略 6. A=[1 1 0.5;1 1 0.25;0.5 0.25 2] A = 1.0000 1.0000 0.5000 1.0000 1.0000 0.2500 0.5000 0.2500 2.0000

[V,D]=eig(A) V = 0.7212 0.4443 0.5315 -0.6863 0.5621 0.4615 -0.0937 -0.6976 0.7103 D = -0.0166 0 0 0 1.4801 0 0 0 2.5365

机械原理课程设计matlab程序 凸轮机构

clear h=70;w=2*pi*300/60; %行程h(单位mm),凸轮角转速(rad/s)d1=pi/2; d2=10/180*pi; d3=pi/2; d4=170/180*pi;%算出凸轮的推程角,远休止角,回程角,近休止角(弧度) d=1:1:360; d0=d/180*pi; %定义向量 %推程 for i=1:45 %等加速运动 s(i)=2*h*d0(i)^2/d1^2; v(i)=4*h*w*d0(i)/d1^2; a(i)=4*h*w^2/d1^2; end for i=46:90 %等减速运动 s(i)=h-2*h*(d1-d0(i))^2/d1^2; v(i)=4*h*w*(d1-d0(i))/d1^2; a(i)=-4*h*w^2/d1^2; end for i=91:101 s(i)=s(i-1); v(i)=0; a(i)=0; end %回程 for i=102:146 %等加速运动 s(i)=h-2*h*d0(i-100)^2/d3^2; v(i)=-4*h*w*d0(i-100)/d3^2; a(i)=-4*h*w^2/d3^2; end for i=147:192 %等减速运动 s(i)=2*h*(d3-d0(i-100))^2/d3^2; v(i)=-4*h*w*(d3-d0(i-100))/d3^2; a(i)=4*h*w^2/d3^2; end for i=193:360 s(i)=s(i-1); v(i)=0; a(i)=0; end r0=61;e0=39; s0=sqrt(r0^2-e0^2); for i=1:1:360 x(i)=(s0+s(i))*sin(d0(i))+e0*cos(d0(i));

MATLAB程序设计及经典例题解析3

MATLAB程序设计 用MATLAB语言编写的程序,称为M文件。M文件可以根据调用方式的不同分为两类:命令文件(Script File)和函数文件(Function File)。 例3-1 分别建立命令文件和函数文件,将华氏温度f转换为摄氏温度c。 程序1:首先建立命令文件并以文件名f2c.m存盘。 clear; %清除工作空间中的变量 f=input('Input Fahrenheit temperature:'); c=5*(f-32)/9 然后在MATLAB的命令窗口中输入f2c,将会执行该命令文件,执行情况为: Input Fahrenheit temperature:73 c =22.7778 程序2:首先建立函数文件f2c.m。 function c=f2c(f) c=5*(f-32)/9 然后在MATLAB的命令窗口调用该函数文件。 clear; y=input('Input Fahrenheit temperature:'); x=f2c(y) 输出情况为: Input Fahrenheit temperature:70 c =21.1111 x =21.1111 3.1.2 M文件的建立与打开 M文件是一个文本文件,它可以用任何编辑程序来建立和编辑,而一般常用且最为方便的是使用MATLAB提供的文本编辑器。

1.建立新的M文件 为建立新的M文件,启动MATLAB文本编辑器有3种方法: (1) 菜单操作。从MATLAB主窗口的File菜单中选择New菜单项,再选择M-file命令,屏幕上将出现MATLAB 文本编辑器窗口。 (2) 命令操作。在MATLAB命令窗口输入命令edit,启动MATLAB文本编辑器后,输入M文件的内容并存盘。 (3) 命令按钮操作。单击MATLAB主窗口工具栏上的New M-File命令按钮,启动MATLAB文本编辑器后,输入M文件的内容并存盘。 2.打开已有的M文件 打开已有的M文件,也有3种方法: (1) 菜单操作。从MATLAB主窗口的File菜单中选择Open命令,则屏幕出现Open对话框,在Open对话框中选中所需打开的M文件。在文档窗口可以对打开的M文件进行编辑修改,编辑完成后,将M文件存盘。 (2) 命令操作。在MATLAB命令窗口输入命令:edit 文件名,则打开指定的M文件。 (3) 命令按钮操作。单击MATLAB主窗口工具栏上的Open File命令按钮,再从弹出的对话框中选择所需打开的M文件。 3.2 程序控制结构 3.2.1 顺序结构 1.数据的输入 从键盘输入数据,则可以使用input函数来进行,该函数的调用格式为: A=input(提示信息,选项); 其中提示信息为一个字符串,用于提示用户输入什么样的数据。 如果在input函数调用时采用's'选项,则允许用户输入一个字符串。例如,想输入一个人的姓名,可采用命令: xm=input('What''s your name?','s'); 2.数据的输出 MATLAB提供的命令窗口输出函数主要有disp函数,其调用格式为

matlab凸轮轮廓设计与仿真说明书

偏置盘型凸轮创新课程设计 课程名称:机械原理 设计题目:偏置盘型凸轮设计院系:机电学院 班级: 09机41 设计者:辉 学号: 09294040 指导教师:王卫辰 学校:师大学

前言 凸轮轮廓曲线的设计,一般可分为图解法和解析法.利用图解法能比较方便地绘制出各种平面凸轮的轮廓曲线.但这种方法仅适用于比较简单的结构,用它对复杂结构进行设计则比较困难,而且利用图解法进行结构设计,作图误差较大,对一些精度要求高的结构不能满足设计要求.解析法可以根据设计要求,通过推导机构中各部分之间的几何关系,建立相应的方程,精确地计算出轮廓线上各点的坐标,然后把凸轮的轮廓曲线精确地绘制出来.但是,当从动件运动规律比较复杂时,利用解析法获得凸轮的轮廓曲线的工作量比较大.而MATLAB软件提供了强大的矩阵处理和绘图功能,具有核心函数和工具箱.其编程代码接近数学推导公式,简洁直观,操作简易,人机交互性能好,且可以方便迅速地用三维图形、图像、声音、动画等表达计算结果、拓展思路口。因此,基于MATLAB软件进行凸轮机构的解析法设计,可以解决设计工作量大的问题。 本此课程设计基于MATLAB软件进行凸轮轮廓曲线的解析法设计,并对的运动规律凸轮进行仿真,其具体方法为首先精确地计算出轮廓线上各点的坐标,然后运用MATLAB绘制比较精确的凸轮轮廓曲线和推杆的位移、速度及加速度曲线以及仿真。

目录 前言 1 第一章:工作意义 3 1.1本次课程设计意义 3 1.2 已知条件 4 第二章:工作设计过程 5 2.1:设计思路 5 2.2:滚子从动件各个阶段相关方程 6 2.3:盘型凸轮理论与实际轮廓方程 7 第三章:工作程序过程 7 3.1:滚子从动件各各阶段MATLAB程序编制 8 3.2:凸轮的理论实际运动仿真程序编制 12 第四章:运行结果 17 4.1:滚子运动的位移图 17 4.2:滚子运动的速度图 17 4.3:滚子运动的加速度图,局部加速度图 18 4.4:滚子运动的仿真图 19 4.5:滚子运动的理论与实际轮廓图 20 第五章:设计总结 21 5.1:总结 21 第六章:参考文献 22

凸轮轮廓线的绘制(MATLAB)

H a r b i n I n s t i t u t e o f T e c h n o l o g y 课程名称:精密机械学基础 设计题目:直动从动件盘形凸轮的设计 院系:航天学院控制科学与工程系 班级: 0904102班 设计者:陈学坤 学号: 1090410229 设计时间: 2011年10月

直动从动件盘形凸轮机构的计算机辅助设计 说明: 凸轮轮阔曲线的设计,一般可分为图解法和解析法,尽管应用图解法比较简便,能简单地绘制出各种平面凸轮的轮廓曲线,但由于作图误差比较大,故对一些精度要求高的凸轮已不能满足设计要求。此次应用MATLAB 软件结合轮廓线方程用计算机辅助设计。首先,精确地计算出轮廓线上各点的坐标,然后运用MATLAB 绘制 比较精确的凸轮轮廓曲线以及其S-α曲线、v-t 曲线、a-t 曲线。 。 1 凸轮轮廓方程 *()()*() ()*()*() X OE EF E Cos J So S Sin J Y BD FD So S Cos J E Sin J =+=++=-=+- (X,Y):凸轮轮廓线上的任意一点的坐标。 E :从动件的偏心距,OC 。 R :凸轮的基园半径,OA 。 J :凸轮的转角。 S :S=f(J)为从动件的方程。 So :22O S R E =-。 H 为从动件的最大位移(mm )。 J1、J2、J3、J4为从动件的四个转角的区域。 S1、S2、S3、S4为与J1、J2、J3、J4对应的从动件的运动规律。 2 实例 R=40,E=10,H=50,J1=J2=J3=J4=900。 3 MATLAB 程序设计 用角度值计算,对于给定的J1、J2、J3、J4,把相应的公式代入其中,求出位移S 和轮廓线上的各点的坐标X 、Y ,最终求出描述凸轮的数组: J=[J1,J2,J3,J4]; S=[S1,S2,S3,S4]; X=[X1,X2,X3,X4]; Y=[Y1,Y2,Y3,Y4]; 用函数plot (X,,Y )画出凸轮的轮廓曲线; 用plot (J,S )函数位移S 的曲线; 对于速度曲线V-t 和加速度曲线a-t ,

矩量法matlab程序设计实例

矩量法m atla b程序设计实例: Ha llen 方程求对称振子天线 一、条件与计算目标 已知: 对称振子天线长为L,半径为a ,且天线长度与波长得关系为,,设,半径a=0、0000001,因此波数为。 目标: 用H all en 方程算出半波振子、全波振子以及不同值得对应参数值。 求:(1)电流分布 (2)E 面方向图 (二维),H 面方向图(二维),半波振子空间方向性图(三维) 二、对称振子放置图 图1 半波振子得电流 分布 半波振子天线平行于z 轴放置,在x轴与y轴上得分量都为零,坐标选取方式有两种形式,一般选取图1得空间放置方 式。图1给出了天线得电流分布情况,由图可知,当天线很细时,电流分布近似正弦分布。 三、Ha llen 方程 得解题思路 ()()()()2 1 ' ' ' ' 12,cos sin sin 'z z i z z z z i z k z G z z dz c kz c kz E k z z dz j ωμ'++=-?? 对于中心馈电得偶极子,Hallen 方程为 ()22'1222 ('),'cos sin sin ,2L L i L L V i z G z z dz c kz c kz k z z j η + -- ++= <<+? 脉冲函数展开与点选配,得到 ()1121 ,''cos sin sin ,1,2,,2n n N z i n m m m m z n V I G z z dz c kz c kz k z m N j η +''=++= =???∑? 上式可以写成 矩阵形式为 四、结果与分析 (1)电流分布

matlab程序设计例题及答案

1.编写程序:计算1/3+2/5+3/7+……+10/21 法一: s=0; for i=1:10 s=s+i/(2*i+1); end s s = 4.4096 法二: sum((1:10)./(3:2:21)) ans = 4.4096 2.编写程序:计算1~100中即能被3整除,又能被7整除的所有数之和。 s=0; for i=1:100 if mod(i,3)==0&&mod(i,7)==0 s=s+i; end,end s s = 210 3.画出y=n!的图(1<=n<=10),阶乘的函数自己编写,禁用MATLAB自带的阶乘函数。 x=1:10; for i=1:10 try y(i)=y(i-1)*i; catch y(i)=1; end,end plot(x,y)

12345678910 0.511.522.533.54x 10 6 4.一个数恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1,2,3,而6=1+2+3,因此6就是一个完数。编程找出2000以内的所有完数。 g=[]; for n=2:2000 s=0; for r=1:n-1 if mod(n,r)==0 s=s+r; end end if s==n g=[g n]; end end g g =6 28 496

5.编写一个函数,模拟numel函数的功能,函数中调用size函数。 function y=numelnumel(x) m=size(x); y=m(1)*m(2); numelnumel([1 2 3;4 5 6]) ans = 6 6. 编写一个函数,模拟length函数的功能,函数中调用size函数。 function y=lengthlength(x) m=size(x); y=max(m(1),m(2)); lengthlength([1 2 3;4 5 6]) ans = 3 7.求矩阵rand(5)的所有元素和及各行平均值,各列平均值。 s=rand(5); sum=sum(sum(s)) mean2=mean(s,2) mean1=mean(s) sum = 13.8469

MATLAB程序设计基础

第三章MATLAB程序设计基础 chapter 3: Foundation of MATLAB program design 一、数据及数据文件(Data and Data file) 1. 数据类型:(Data mode)为适应各种不同计算和处理的需求,MATLAB提供了多种数据类型,主要有: 数值数组(Numeric array)— 包括整形(int8,uint8,int16,uint16,int32,uint32)单精度 (signal), 双精度(duble)(MATLAB最常用的变量类型), 稀疏(sparce)数组。按维数分有一维、二维和多维数 组。 Int---Integrate. Uint---Unsigned Integer data 字符数组(Character array):由字符串组成的数组 单元数组(Cell array):用不同类型和大小的数组组成的数组,同 一个元胞数组中各元胞的内容可以不同。 结构数组(Structure array):与单元数组类似,但其数据的组织能 力更强,更富于变化。 Java类(Java class):由JavaAPI或第三方定义的类函数。 函数句柄(Function handle):可以在一个参数列表中传递,并使 用feval运行. 在工作空间浏览器中不同的数据类型有着不同的图标标识。2. 数据文件(Data file) MATLAB支持的各种数据文件(Readable file formats of MATLAB)的主要类型及其存取方法如下述: (1)二进制数据文件:(Binary date file)以.mat为扩展名。是标准的MATLAB数据文件,以二进制编码形式存储。.mat文件可以由MATLAB提供的save和load命令直接存取。 (2)ASCⅡ码数据文件:(ASCⅡcode data file)扩展名为.txt, .dat

相关文档
最新文档