基于MATLAB的曲柄滑块机构运动的仿真

合集下载

基于matlab的曲柄滑块机构设计与运动分析_陈长秀

基于matlab的曲柄滑块机构设计与运动分析_陈长秀

变,从第 i+1 个功能块开始逐位交换。
(3)变异运算的改进
由于在每个功能块中,“1”的数目即是该题型试题的数目, 因此在变异过程中应保证整个种群所有功能块中“1”的数目不 变。可执行如下过程,首先,由变异概率决定某位取反;然后,检 查、修正字符串中“1”的数目,保证不发生变化。
(4)用全局最优解替换本次迭代的最差解 为保证好的字符串不至于流失,每次遗传操作前记录本次 迭代的最优解,若该解优于全局最优解则替换全局最优解,否 则全局最优解保持不变。此次遗传操作后,用全局最优解换本 代的最差解。
(上接第 29 页)
图 1 所示的偏置曲柄滑块机构。设 l1=50mm,l2=100mm, e=20mm,w1=2rad/s,设 φ1 的初始值为 0 , 则 φ1 变化时,杆 2 的角位移、角速度和角加速度以及滑块 3 的位移、速度和加速
>> plot(t,xc,t,vc,t,ac);
度的变化值可计算求得,曲柄转角 φ1 在 0- 360°之间变化时, 在 matlab 的计算窗口输入算式后,滑块 3 的位移、速度和加速
2012 年 1 月 第 1 期(总第 158 期)
轻工科技
LIGHT INDUSTRY SCIENCE AND TECHNOLOGY
机械与电气
基于 m a tla b 的曲柄滑块机构设计与运动分析
陈长秀
(陕西国防工业职业技术学院,陕西 西安 71 0302)
【摘 要】 建立了曲柄滑块机构的计算模型,并使用 matlab 对曲柄滑块机构进行了运动分析,提高了设计效率和设计精度。
图 1 偏置曲柄滑块机构 建立坐标系如图 1 所示,由曲柄滑快机构的矢量封闭图[1] 可得:
φl1 cosφ1+l2 cosφ2=xc

matlab机电系统仿真大作业

matlab机电系统仿真大作业

一曲柄滑块机构运动学仿真1、设计任务描述通过分析求解曲柄滑块机构动力学方程,编写matlab程序并建立Simulink 模型,由已知的连杆长度和曲柄输入角速度或角加速度求解滑块位移与时间的关系,滑块速度和时间的关系,连杆转角和时间的关系以及滑块位移和滑块速度与加速度之间的关系,从而实现运动学仿真目的。

2、系统结构简图与矢量模型下图所示是只有一个自由度的曲柄滑块机构,连杆r2与r3长度已知。

图2-1 曲柄滑块机构简图设每一连杆(包括固定杆件)均由一位移矢量表示,下图给出了该机构各个杆件之间的矢量关系图2-2 曲柄滑块机构的矢量环3.匀角速度输入时系统仿真3.1 系统动力学方程系统为匀角速度输入的时候,其输入为ω2=θ2,输出为ω3=θ3,θ3;v 1=r 1,r 1。

(1) 曲柄滑块机构闭环位移矢量方程为:R 2+R 3=R 1(2) 曲柄滑块机构的位置方程{r 2cos θ2+r 3cos θ3=r 1r 2sin θ2+r 3sin θ3=0(3) 曲柄滑块机构的运动学方程通过对位置方程进行求导,可得{−r 2ω2sin θ2−r 3ω3sin θ3=r 1r 2ω2cos θ2+r 3ω3cos θ3=0由于系统的输出是ω3与v 1,为了便于建立A*x=B 形式的矩阵,使x=[ω3v 1],将运动学方程两边进行整理,得到{v 1+r 3ω3sin θ3=−r 2ω2sin θ2−r 3ω3cos θ3=r 2ω2cos θ2将上述方程的v1与w3提取出来,即可建立运动学方程的矩阵形式(r 3sin θ31−r 3cos θ30)(ω3v 1)=(−r 2ω2sin θ2r 2ω2cos θ2) 3.2 M 函数编写与Simulink 仿真模型建立3.2.1 滑块速度与时间的变化情况以及滑块位移与时间的变化情况仿真的基本思路:已知输入w2与θ2,由运动学方程求出w3和v1,再通过积分,即可求出θ3与r1。

基于Matlab的多体动力学仿真实现

基于Matlab的多体动力学仿真实现
I
西南大学本科毕业论文(设计)
基于 Matlab 的多体动力学仿真实现
摘要:本文运用机械原理、理论力学和 MATLAB 运动学仿真的相关知识,对曲柄滑块机构进行 结构分析,拆分基本杆组,运用 MATLAB 的 Simulink 软件包编写各基本构件的函数模块,并 在 Simulink 中建立曲柄滑块的仿真模型,对曲柄滑块机构进行动力学仿真求解,并绘制出构 件 2 的角速度和角加速度,构件 3 速度、加速度,转动 A 副的水平方向力、垂直方向力,曲 柄上作用的力矩,曲柄上力矩作的功,以及滑块上作用的反力曲线。通过分析所绘制出的图 形,可以很好的帮助我们了解曲柄滑块机构在运行过程中各构件、转动副之间的受力情况。 关键词:MATLAB;Simulink;运动学仿真;曲柄滑块
1.2.1 打开 MATLAB..........................................................................................8 1.2.2 操作界面...............................................................................................9 1.2.3 帮助系统...............................................................................................9 1.2.4 MATLAB 常用工具箱...........................................................................10 1.3 认识 Simulink...............................................................................................11 1.3.1 功能..................................................................................................11 1.3.2 特点..................................................................................................12 2 仿真模拟..................................................................................................................12 2.1 模块函数的建立............................................................................................12 2.1.1 曲柄的 MATLAB 运动学仿真模块......................................................12 2.1.2 R-R-PⅡ级杆组基本杆组的 MATLAB 运动学仿真模块....................14 2.1.3 曲柄的 MATLAB 动力学仿真模块......................................................16 2.1.4 R-R-PⅡ级杆组基本杆组的 MATLAB 动力学仿真模块....................18 2.2 Simulink 仿真模型的建立..........................................................................21 2.2.1 曲柄滑块机构各参数分析.................................................................21 2.2.2 曲柄滑块机构各参数分析.................................................................22 2.3 开始仿真.......................................................................................................25 3 仿真结果..................................................................................................................25 参考文献......................................................................................................................27 致谢..............................................................................................................................28

基于MATLAB曲柄滑块机构运动仿真

基于MATLAB曲柄滑块机构运动仿真

基于MATLAB曲柄滑块机构运动仿真1.题目描述题目:对如图1所示的曲柄滑块机构的运动过程进行仿真,并用动画的方式显示曲柄滑块机构的运动过程,位移曲线、速度曲线和加速度曲线。

图中,AB长R2,BC长R3mm,A点为坐标原点。

图1 曲柄滑块机构示意图2.实现方法利用GUI界面设计来对曲柄滑块机构的运动过程进行仿真,并用动画的方式显示曲柄滑块机构的运动过程。

3.界面设计1. Gui 设计1)新建GUI:菜单-新建-gui,并保存为test52)界面设计:拖拽左侧图标到绘图区,创建GUI界面拖拽左侧图标值绘图区设置如下的按钮最终的仿真界面如图所示3)代码添加:进入代码界面4.代码编程%模型求解a1=str2double(get(handles.edit1,'String'));a2=str2double(get(handles.edit2,'String'));a3=str2double(get(handles.edit3,'String'));a4=str2double(get(handles.edit4,'String'));a5=str2double(get(handles.edit5,'String'));a=a1*((1-cos(a4*a5))+0.25*(a1/a2)*(1-cos(2*a4*a5))); set(handles.edit6,'String',a);a0=(a4*a1)*(sin(a4*a5)+0.5*(a1/a2)*sin(2*a4*a5));set(handles.edit7,'String',a0);a6=(a4*a4*a1)*(cos(a4*a5)+(a1/a2)*cos(a4*a5));set(handles.edit8,'String',a6);%绘制位移、速度、加速度曲线axes(handles.axes3);r1=str2double(get(handles.edit1,'String'));r2=str2double(get(handles.edit2,'String'));omiga1=str2double(get(handles.edit4,'String'));x11=1:720;for i=1:720x1(i)=i*pi/180;%sin(x2(i)=r1/r2*sin(x1(i));x2(i)=asin(-r1/r2*sin(x1(i)));x22(i)=x2(i)*180/pi;r3(i)=r1*cos(x1(i))+r2*cos(x2(i));B=[-r1*omiga1*sin(x1(i));r1*omiga1*cos(x1(i))];A=[r2*sin(x2(i)) 1;-r2*cos(x2(i)) 0];X=inv(A)*B;omiga2(i)=X(1,1);v3(i)=X(2,1);endplot(x11/60,0.5*r1*sin(x1));xlabel('ʱ¼äÖá t/sec')ylabel('Á¬¸ËÖÊÐÄÔÚYÖáÉϵÄλÖÃ/mm')figure(2)plot(x11/60,r3);title('λÒÆÏßͼ')grid onhold off;xlabel('ʱ¼ät/sec')ylabel('»¬¿éλÒÆ r3/mm')figure(3)plot(x11/60,omiga2);title('Á¬¸Ë½ÇËÙ¶È')grid onhold off;xlabel('ʱ¼ä t/sec')ylabel('Á¬¸Ë½ÇËÙ¶È omiga2/rad/sec') figure(4)plot(x11/60,v3*pi/180);title('»¬¿éËÙ¶È')grid onhold off;xlabel('ʱ¼ä t/sec')ylabel('»¬¿éËÙ¶È v3/mm/sec')%绘制表格axes(handles.axes3);grid onaxes(handles.axes1);grid on%制作动画axes(handles.axes1);hf=figure('name','Çú±ú»¬¿é»ú¹¹'); set(hf,'color','r');hold onaxis([-6,6,-4,4]);grid onaxis('off');xa0=-5;%»îÈû×󶥵ã×ø±êxa1=-2.5;%»îÈûÓÒ¶¥µã×ø±êxb0=-2.5;%Á¬¸Ë×󶥵ã×ø±êxb1=2.2;%Á¬¸ËÓÒ¶¥µã×ø±êx3=3.5;%תÂÖ×ø±êy3=0;%תÂÖ×ø±êx4=xb1;%ÉèÖÃÁ¬¸ËÍ·µÄ³õʼλÖúá×ø±êy4=0;%ÉèÖÃÁ¬¸ËÍ·µÄ³õʼλÖÃ×Ý×ø±êx5=xa1;y5=0;x6=x3;%ÉèÖÃÁ¬Öá³õʼºá×ø±êy6=0;%ÉèÖÃÁ¬Öá³õʼ×Ý×ø±êa=0.7;b=0.7c=0.7a1=line([xa0;xa1],[0;0],'color','b','linestyle','-','linewidth',40); %ÉèÖûîÈûa3=line(x3,y3,'color',[0.5 0.60.3],'linestyle','.','markersize',300);%ÉèÖÃתÂÖa2=line([xb0;xb1],[0;0],'color','black','linewidth',10);%ÉèÖÃÁ¬¸Ëa5=line(x5,y5,'color','black','linestyle','.','markersize',40);%ÉèÖÃÁ¬¸Ë»îÈûÁ¬½ÓÍ·a4=line(x4,y4,'color','black','linestyle','.','markersize',50);%ÉèÖÃÁ¬¸ËÁ¬½ÓÍ·a6=line([xb1;x3],[0;0],'color','black','linestyle','-','linewidth',10 );a7=line(x3,0,'color','black','linestyle','.','markersize',50);%ÉèÖÃÔ˶¯ÖÐÐÄa8=line([-5.1;-0.2],[0.7;0.7],'color','y','linestyle','-','linewidth' ,5);%ÉèÖÃÆû¸×±Úa9=line([-5.1;-0.2],[-0.72;-0.72],'color','y','linestyle','-','linewi dth',5);%ÉèÖÃÆû¸×±Úa10=line([-5.1;-5.1],[-0.8;0.75],'color','y','linestyle','-','linewid th',5);%ÉèÖÃÆû¸×±Úa11=fill([-5,-5,-5,-5],[0.61,0.61,-0.61,-0.61],[a,b,c]);%ÉèÖÃÆû¸×ÆøÌålen1=4.8;%Á¬¸Ë³¤len2=2.5;%»îÈû³¤r=1.3;%Ô˶¯°ë¾¶dt=0.015*pi;t=0;while 1t=t+dt;if t>2*pit=0;endlena1=sqrt((len1)^2-(r*sin(t))^2);%Á¬¸ËÔÚÔ˶¯¹ý³ÌÖкáÖáÉϵÄÓÐЧ³¤¶Èrr1=r*cos(t);%°ë¾¶ÔÚÔ˶¯¹ý³ÌÖкáÖáÉϵÄÓÐЧ³¤¶Èxaa1=x3-sqrt(len1^2-(sin(t)*r)^2)-(r*cos(t));%»îÈûÔÚÔ˶¯¹ý³ÌÖеÄÓÒ¶¥µã×ø±êλÖÃxaa0=xaa1-2.5;%%»îÈûÔÚÔ˶¯¹ý³ÌÖеÄ×󶥵ã×ø±êλÖÃx55=x3-cos(t)*r;%Á¬¸ËÔÚÔ˶¯¹ý³ÌÖкá×ø±êλÖÃy55=y3-sin(t)*r;%Á¬¸ËÔÚÔ˶¯¹ý³ÌÖÐ×Ý×ø±êλÖÃset(a4,'xdata',x55,'ydata',y55);%ÉèÖÃÁ¬¸Ë¶¥µãÔ˶¯set(a1,'xdata',[xaa1-2.5;xaa1],'ydata',[0;0]);%ÉèÖûîÈûÔ˶¯set(a2,'xdata',[xaa1;x55],'ydata',[0;y55]);set(a5,'xdata',xaa1);%ÉèÖûîÈûÓëÁ¬¸ËÁ¬½ÓÍ·µÄÔ˶¯set(a6,'xdata',[x55;x3],'ydata',[y55;0]);set(a11,'xdata',[-5,xaa0,xaa0,-5]);%ÉèÖÃÆøÌåµÄÌî³äset(gcf,'doublebuffer','on');%Ïû³ýÕð¶¯drawnow;end5.结果(1)对它的结构参数进行设置,如下图所示。

基于某MATLAB曲柄滑块机构运动仿真报告材料

基于某MATLAB曲柄滑块机构运动仿真报告材料

************************计算机仿真技术matlab报告************************曲柄滑块机构目录一、基于GUI的曲柄滑块机构运动仿真二、基于simulink的曲柄滑块机构运动仿真曲柄滑块机构1.题目描述题目:对如图1所示的曲柄滑块机构的运动过程进行仿真,并用动画的方式显示曲柄滑块机构的运动过程,位移曲线、速度曲线和加速度曲线。

图中,AB长R2,BC长R3mm,A点为坐标原点。

图1 曲柄滑块机构示意图2.实现方法利用GUI界面设计来对曲柄滑块机构的运动过程进行仿真,并用动画的方式显示曲柄滑块机构的运动过程。

3.界面设计1. Gui 设计1)新建GUI:菜单-新建-gui,并保存为test52)界面设计:拖拽左侧图标到绘图区,创建GUI界面拖拽左侧图标值绘图区设置如下的按钮最终的仿真界面如图所示3)代码添加:进入代码界面4.代码编程%模型求解a1=str2double(get(handles.edit1,'String'));a2=str2double(get(handles.edit2,'String'));a3=str2double(get(handles.edit3,'String'));a4=str2double(get(handles.edit4,'String'));a5=str2double(get(handles.edit5,'String'));a=a1*((1-cos(a4*a5))+0.25*(a1/a2)*(1-cos(2*a4*a5))); set(handles.edit6,'String',a);a0=(a4*a1)*(sin(a4*a5)+0.5*(a1/a2)*sin(2*a4*a5));set(handles.edit7,'String',a0);a6=(a4*a4*a1)*(cos(a4*a5)+(a1/a2)*cos(a4*a5));set(handles.edit8,'String',a6);%绘制位移、速度、加速度曲线axes(handles.axes3);r1=str2double(get(handles.edit1,'String'));r2=str2double(get(handles.edit2,'String'));omiga1=str2double(get(handles.edit4,'String'));x11=1:720;for i=1:720x1(i)=i*pi/180;%sin(x2(i)=r1/r2*sin(x1(i));x2(i)=asin(-r1/r2*sin(x1(i)));x22(i)=x2(i)*180/pi;r3(i)=r1*cos(x1(i))+r2*cos(x2(i));B=[-r1*omiga1*sin(x1(i));r1*omiga1*cos(x1(i))]; A=[r2*sin(x2(i)) 1;-r2*cos(x2(i)) 0];X=inv(A)*B;omiga2(i)=X(1,1);v3(i)=X(2,1);endplot(x11/60,0.5*r1*sin(x1));xlabel('ʱ¼äÖá t/sec')ylabel('Á¬¸ËÖÊÐÄÔÚYÖáÉϵÄλÖÃ/mm') figure(2)plot(x11/60,r3);title('λÒÆÏßͼ')grid onhold off;xlabel('ʱ¼ät/sec')ylabel('»¬¿éλÒÆ r3/mm')figure(3)plot(x11/60,omiga2);title('Á¬¸Ë½ÇËÙ¶È')grid onhold off;xlabel('ʱ¼ä t/sec')ylabel('Á¬¸Ë½ÇËÙ¶È omiga2/rad/sec') figure(4)plot(x11/60,v3*pi/180);title('»¬¿éËÙ¶È')grid onhold off;xlabel('ʱ¼ä t/sec')ylabel('»¬¿éËÙ¶È v3/mm/sec')%绘制表格axes(handles.axes3);grid onaxes(handles.axes1);grid on%制作动画axes(handles.axes1);hf=figure('name','Çú±ú»¬¿é»ú¹¹');set(hf,'color','r');hold onaxis([-6,6,-4,4]);grid onaxis('off');xa0=-5;%»îÈû×󶥵ã×ø±êxa1=-2.5;%»îÈûÓÒ¶¥µã×ø±êxb0=-2.5;%Á¬¸Ë×󶥵ã×ø±êxb1=2.2;%Á¬¸ËÓÒ¶¥µã×ø±êx3=3.5;%תÂÖ×ø±êy3=0;%תÂÖ×ø±êx4=xb1;%ÉèÖÃÁ¬¸ËÍ·µÄ³õʼλÖúá×ø±êy4=0;%ÉèÖÃÁ¬¸ËÍ·µÄ³õʼλÖÃ×Ý×ø±êx5=xa1;y5=0;x6=x3;%ÉèÖÃÁ¬Öá³õʼºá×ø±êy6=0;%ÉèÖÃÁ¬Öá³õʼ×Ý×ø±êa=0.7;b=0.7c=0.7a1=line([xa0;xa1],[0;0],'color','b','linestyle','-','linewidth',40); %ÉèÖûîÈûa3=line(x3,y3,'color',[0.5 0.6 0.3],'linestyle','.','markersize',300);%ÉèÖÃתÂÖa2=line([xb0;xb1],[0;0],'color','black','linewidth',10);%ÉèÖÃÁ¬¸Ëa5=line(x5,y5,'color','black','linestyle','.','markersize',40);%ÉèÖÃÁ¬¸Ë»îÈûÁ¬½ÓÍ·a4=line(x4,y4,'color','black','linestyle','.','markersize',50);%ÉèÖÃÁ¬¸ËÁ¬½ÓÍ·a6=line([xb1;x3],[0;0],'color','black','linestyle','-','linewidth',10);a7=line(x3,0,'color','black','linestyle','.','markersize',50);%ÉèÖÃÔ˶¯ÖÐÐÄa8=line([-5.1;-0.2],[0.7;0.7],'color','y','linestyle','-','linewidth',5);%ÉèÖÃÆû¸×±Úa9=line([-5.1;-0.2],[-0.72;-0.72],'color','y','linestyle','-','linewidth',5);%ÉèÖÃÆû¸×±Úa10=line([-5.1;-5.1],[-0.8;0.75],'color','y','linestyle','-','linewidth',5);%ÉèÖÃÆû¸×±Úa11=fill([-5,-5,-5,-5],[0.61,0.61,-0.61,-0.61],[a,b,c]);%ÉèÖÃÆû¸×ÆøÌålen1=4.8;%Á¬¸Ë³¤len2=2.5;%»îÈû³¤r=1.3;%Ô˶¯°ë¾¶dt=0.015*pi;t=0;while 1t=t+dt;if t>2*pit=0;endlena1=sqrt((len1)^2-(r*sin(t))^2);%Á¬¸ËÔÚÔ˶¯¹ý³ÌÖкáÖáÉϵÄÓÐЧ³¤¶Èrr1=r*cos(t);%°ë¾¶ÔÚÔ˶¯¹ý³ÌÖкáÖáÉϵÄÓÐЧ³¤¶È xaa1=x3-sqrt(len1^2-(sin(t)*r)^2)-(r*cos(t));%»îÈûÔÚÔ˶¯¹ý³ÌÖеÄÓÒ¶¥µã×ø±êλÖÃxaa0=xaa1-2.5;%%»îÈûÔÚÔ˶¯¹ý³ÌÖеÄ×󶥵ã×ø±êλÖà x55=x3-cos(t)*r;%Á¬¸ËÔÚÔ˶¯¹ý³ÌÖкá×ø±êλÖÃy55=y3-sin(t)*r;%Á¬¸ËÔÚÔ˶¯¹ý³ÌÖÐ×Ý×ø±êλÖÃset(a4,'xdata',x55,'ydata',y55);%ÉèÖÃÁ¬¸Ë¶¥µãÔ˶¯set(a1,'xdata',[xaa1-2.5;xaa1],'ydata',[0;0]);%ÉèÖûîÈûÔ˶¯set(a2,'xdata',[xaa1;x55],'ydata',[0;y55]);set(a5,'xdata',xaa1);%ÉèÖûîÈûÓëÁ¬¸ËÁ¬½ÓÍ·µÄÔ˶¯set(a6,'xdata',[x55;x3],'ydata',[y55;0]);set(a11,'xdata',[-5,xaa0,xaa0,-5]);%ÉèÖÃÆøÌåµÄÌî³äset(gcf,'doublebuffer','on');%Ïû³ýÕð¶¯drawnow;end5.结果(1)对它的结构参数进行设置,如下图所示点击计算按钮动画,结果如下图所示点击表格对图形进行画表格处理点击绘图,即可得到位移、速度、加速度曲线,如下图所示二、基于simulink 的曲柄滑块机构运动仿真(1)运用矢量求解法求解(2)绘制速度接线图,如下图所示:运动仿真结果如下图:(3)绘制加速度接线图,如下图所示:运行结果如图所示:。

曲柄滑块机构的优化设计及运动仿真学位论文

曲柄滑块机构的优化设计及运动仿真学位论文

曲柄滑块机构的优化设计及运动仿真学位论文曲柄滑块机构的优化设计及运动仿真目录目录...............................................................1 摘要............................................................... 第1章绪论........................................................ 选题的目的及意义............................................. 优化设计方法的概述........................................... 国内外的研究现状............................................ 主要研究内容............................................ 第2章曲柄滑块机构的受力分析......................................曲柄滑块机构的分类...........................................曲柄滑块机构的动力学特性.....................................曲柄滑块机构中运动学特性..................................... 第3章偏置式曲柄滑块机构的优化设计................................ 优化软件的介绍.............................................. MATLAB的发展历程和影响...................................MATLAB 在机构设计中的应用................................. 机构优化设计实例分析........................................ 设计目标的建立...........................................根据设计要求,确定约束条件................................利用MATLAB进行优化设计.................................... 编制优化程序.............................................. 程序运行结果及处理........................................ 对优化结果进行验证和分析................................. 第4章偏置曲柄滑块机构的运动学建模与仿真.......................... 偏置曲柄滑块机构运动特性建模................................ 仿真环境简介............................................. 机构的运动学建模........................................ 运动学仿真的实现.......................................... 函数的编制及初始参数的设定............................... 构建Simulink仿真框图.................................... 对仿真结果进行分析...................................... 总结...............................................................〔Toolboxs〕组成虽然该软件的初衷并不是为控制系统设计的,但它提供了强大的矩阵处理和绘图功能,可靠灵活且方便,非常适合现代控制理论的计算机辅助设计。

MATLAB机构动态仿真

MATLAB机构动态仿真

双击 Matlab Fuction 模块图标,改变函数名为 compvel。 双击 Mux 块、DeMux 模块改变输入或输出信号路数。 不同端口之间的连线实现方法:在第一个端口处按下左键不松,移动鼠标到 第二个端口处松开。
将适当的信号联网到 Mux 模块。 注意: 不同信号根据 compvel 函数输入参数 次序连接到 Mux 模块的相应端口。
5000 4000 3000 2000 Piston Speed (mm/s) 1000 0 -1000 -2000 -3000 -4000 -5000
0
0.01
0.02
0.03 0.04 Time (sec)
0.05
0.06
0.07
三 通过运动学仿真求解加速度 对曲柄连杆机构的闭环矢量方程求二阶导数,可得到机构的加速度特性:
2 2 sin 2 r22 3 sin 3 r332 cos 3 r2 cos 2 r3 r 1 2 2 cos 2 r22 3 cos 3 r332 sin 3 0 r2 sin 2 r3
(4)
130
120
Piston Displacement (in)
110
100
90
80
70
0
0.01
0.02
0.03 0.04 Time (sec)
0.05
0.06
0.07
类似地,连杆的速度变化规律可由下述命令画出: plot(tout,yout(:,2)); xlabel('Time (sec)'); ylabel('Connecting Rod Speed (rad/s) '); grid on;

MATLAB基本杆组-运动学仿真

MATLAB基本杆组-运动学仿真

⎡ ri cos (θ i + π ) ⎤ 2 ⎡ xC ⎤ ⎡ xB ⎤ ⎡ ri cos (θ i + π 2 ) ⎤ ⎢ y ⎥ = ⎢ y ⎥ + ⎢ r sin θ + π 2 ⎥ θi + ⎢ r sin θ + π ⎥ θi ( i )⎦ ⎣ i ( i )⎦ ⎣ C⎦ ⎣ B⎦ ⎣ i
xC = xB − riθi sin (θi ) = xD − rjθ j sin (θ j ) yC = yB + riθi cos (θi ) = yD + rjθ j cos (θ j )
再次对时间t求导数,得到点C的加速度为
xC = xB − riθi sin (θi ) − riθi2 cos (θi ) = xD − rjθ j sin (θ j ) − rjθ j2 cos (θ j ) yC = yB + riθi cos (θi ) − riθi2 sin (θi ) = yD + rjθ j cos (θ j ) − riθ i2 sin (θ j )
( (
) )
§5-1 曲柄的MATLAB运动学仿真模块
xB = ri cos (θi ) + rj cos (θ j ) yB = ri sin (θi ) + rj sin (θ j )
对时间分别求两次导数
xB = − rjθ j sin (θ j ) xB = − rjθ j sin (θ j ) − rjθ j2 cos (θ j )
求导数
−riθi sin (θi ) + rjθ j sin (θ j ) = xD − xB riθi cos (θi ) − rjθ j cos (θ j ) = yD − yB

基于MATLAB的曲柄滑块机构运动的仿真

基于MATLAB的曲柄滑块机构运动的仿真

基于MATLAB 的曲柄滑块机构运动的仿真摘要:本文在曲柄滑块机构运动简图的基础上,对其数学运动模型进行分析,用解析法计算曲柄的转角和角速度,及滑块的位移和速度,并用MATLAB软件进行仿真。

1引言在机械传动系统中,曲柄滑块机构是一种常用的机械机构,它将曲柄的转动转化为滑块在直线上的往复运动,是压气机、冲床、活塞式水泵等机械的主机构。

这里用解析法,并用MATLAB对其进行仿真。

2曲柄滑块机构的解析法求解曲柄滑块机构的运动简图如图1所示,在图1中,L i、L2和e分别为曲柄滑块的曲柄、连杆和偏差,‘、2分别为曲柄和连杆的转角,「:、「:分别为曲柄和连杆的角速度,S为滑块的位移。

(1)块的位移S 和速度S2.1位移分析按图1中四边形ABCD 的矢量方向有:AB =CD将上式转化成幅值乘以角度的形式,得到如下等式:L :e 闻十=S + ie分别取上式的虚部和实部,并在 e 前面乘N , N 取值1或—1,用以表示滑 块在x 轴的上方或者下方,得到下面两式:,以及滑L cos 1 L 2cos 2 = S (2) L sin 1 L 2sin 2 = Nb(3)整理上面两个公式得到S 和:2的计算公式:S 二 L i cos 1 L 2 cos 22.2速度分析将(1)式两边对时间求导得(6)式L i -'i ie i 1- L 2 \ ie i 2= S(6)取(6)式的实部和虚部,整理得 S 和:2的计算公式:■L 1 ;*1cos12 ■L 2 COS ®2根据(7)式和(8)式即可得到滑块的速度及连杆的角速度。

2.3实例分析及其MATLAB 仿真 2.3.1实例分析下面对图2所示的曲柄滑块机构做具体分析。

图2曲柄滑块机构简图*二 arcs inNe - L 1 sin 打L2(5)S 「:L i sin (—2)cos :2yx例中:几=36mm,r2=140mm,^60d /sec,求'2,2,S 和S。

曲柄滑块机构的运动学仿真

曲柄滑块机构的运动学仿真

《系统仿真与matlab》综合试题题目:曲柄滑块机构的运动学仿真编号:24难度系数:*****姓名班级学号联系方式成绩第一部分:课题理解1、课题要求:对图示单缸四冲程发动机中常见的曲柄滑块机构进行运动学仿真。

已知连杆长度:m r 1.02=,m r 4.03=,连杆的转速:22θω =,33θω =,设曲柄r 2以匀速旋转,s r / 502=ω。

初始条件:032==θθ。

仿真以2ω为输入,计算3ω和1r,仿真时间0.5s 。

2、个人理解:本实验是对运动进行仿真,根据滑块的运动演示连杆的运动过程。

首先,建立两杆和滑块位置间的数学关系,计算出运动方程;其次,运用matlab 动画功能,对给定的2ω值进行运动仿真;最后,建立友好的界面,方便用户改变2ω,显示3ω和运行动画。

第二部分:试题建模由几何关系可得:两边求导数可得:即得2θ=w2*t; 3θ =arcsin(r2*sin(2θ )/r3);w3=r2/r3*w2*cos(2θ )./cos(3θ );第三部分:程序实现1、程序模块:2、程序流程:特色在于:随动画同时输出的w3值为动画运行到当前位置时的转动角速度。

并可以多次设定w2值,进行波形比较。

2、程序代码:w2 = str2double(get(handles.w2input,'string'));if w2~=0 %判断用户是否输入w2%如果w2被赋值,则进行变量初始化t=0;dt=0.01;r2=0.1;r3=0.4;x0=0.1;y0=0;x1=0.5;y1=0;%在图形显示框axes_d中进行固定图形的绘画axes(handles.axes_d)%画三角支架plot(0,-0.03,'color',[0.5,0.5,0.5],'linestyle','^',...'linewidth',10);hold onplot(0,0,'color',[0.4,0.4,0.4],'linestyle','.',...'markersize',40);%画r3转动轨迹圆m=[0:0.01:2*pi];plot(0.1*cos(m),0.1*sin(m),'color',[0.6,0.8,0.8],'linestyle','.',...'markersize',5);%画水平线plot([-0.2;0.6],[-0.05;-0.05],'color','b','linestyle','--',...'linewidth',1);%画支点等高线plot([-0.2;0.7],[0;0],'color','b','linestyle','--',...'linewidth',1);%设置坐标范围axis([-0.15,0.7,-0.41,0.41]);%不显示坐标轴%axis('off');%创建杆间连接点point=line(x0,y0,'color','k','linestyle','.',...'markersize',30);%创建连接点水平指示线zhishi=line([x0-0.1;x0+0.1],[y0;y0],'color','b','linestyle','--',...'linewidth',2);%创建杆r2body2=line([0;x0],[0;y0],'color',[0.2,0.25,0.25],'linestyle','-',...'linewidth',5);%创建杆r3body3=line([x0;x1],[y0;y1],'color',[0.2,0.25,0.25],'linestyle','-',...'linewidth',5);%创建活塞huosai1=line([x1+0.01;x1+0.15],[y1;y1],'color','b','linestyle','-',...'linewidth',28);%创建活塞连接点huosaidian=line(x1+0.01,y1,'color','k','linestyle','.',...'markersize',40);%创建汽缸qigang1=line([0.651;0.651],[-0.05;0.05],'color',[0.5,0.5,0.5],'linestyle','-',.. .'linewidth',5);qigang2=line([0.3;0.655],[0.056;0.056],'color',[0.5,0.5,0.5],'linestyle','-',...'linewidth',5);qigang3=line([0.3;0.655],[-0.056;-0.056],'color',[0.5,0.5,0.5],'linestyle','-', ...'linewidth',5);set(handles.axes_w3,'XMinorTick','on')%进行动画过程while t<4t=t+dt;a2=w2*t;a3=asin(r2*sin(a2)/r3);w3=r2/r3*w2*cos(a2)./cos(a3);r2=0.1;x0a=r2*cos(a2);y0a=r2*sin(a2);x1a=x0a+r3*cos(a3);y1a=0;x=x0a;y=y0a;%在图形显示框axes_d中进行图形的刷新axes(handles.axes_d)%重绘杆r2set(body2,'xdata',[0;x0a],'ydata',[0;y0a]);%重绘杆r3set(body3,'xdata',[x0a;x1a],'ydata',[y0a;y1a]);%重绘杆活塞set(huosai1,'xdata',[x1a+0.01;x1a+0.15],'ydata',[y1a;y1a]); %重绘活塞连接点set(huosaidian,'xdata',x1a+0.01,'ydata',y1a);%重绘杆连接点set(point,'xdata',x0a,'ydata',y0a);%重绘指示线set(zhishi,'xdata',[x0a-0.1;x0a+0.1],'ydata',[y0a;y0a]);set(handles.axes_d,'XMinorTick','on')%输出实时w3的值set(handles.w3_output,'string',num2str(w3));%在图形显示框axes_w3中绘制w3的实时波形axes(handles.axes_w3)%设置坐标轴axis([0,4,-w2/4-0.1,w2/4+0.1]);hold onplot(t,w3,'color','k','linestyle','.',...'markersize',5);set(handles.axes_w3,'XMinorTick','on')drawnow;endw2=0;end第四部分:GUI界面规划1、控件组成:1.面板(1个):作为背景。

曲柄滑块机构MA AB b动画仿真

曲柄滑块机构MA AB b动画仿真

y=p_copy(5)+R*sin(theta);%连杆与曲柄连接处的铰链在运动过程中的纵坐标,改变 R*sin(theta)的符号可以改变曲柄转向
set(h1,'xdata',[p_copy(2)-H;p_copy(2)],'ydata',[p_copy(5);p_copy(5)]);%更改 h1 确定的图形(活塞)的参数
曲柄滑块机构 MATLAB2015b 动画仿真
曲柄滑块机构 MATLAB 动画仿真程序
y1
x1
x2
x3 x4
图 1 曲柄滑块的简图
上图是曲柄滑块的简图,其中 x1 是滑块左端的横坐标,x2 是滑块右端的横坐标,也是滑块和连杆连接处铰链的坐标,x3 是连杆和曲柄
连接处的铰链,x4 是连接曲柄和转轮铰链的横坐标,y1 是纵坐标。定义曲柄滑块的参数 p=[x1,x2,x3,x4,y1],使用此参数进行 MATLAB 动画仿真。参考程序见下页。
set(h3,'xdata',[p_copy(2);p_copy(3)],'ydata',[p_copy(5);y]);%更改句柄 h3 所确定的图形(连杆)的参数
set(h4,'xdata',p_copy(3),'ydata',y);%更改句柄 h4 所确定的图形(连接连杆和曲柄的铰链)的参数

set(h5,'xdata',p_copy(2));%更改句柄 h5 所确定的图形(连接连杆和活塞的铰链)的参数
Rx=R*cos(theta);%曲柄在运动过程中横轴 x 上的有效长度 Rx
p_copy(2)=p_copy(4)-Lx-Rx;%活塞在运动过程中的其右顶点横坐标

曲柄滑块机构运动的Simulink仿真实验报告

曲柄滑块机构运动的Simulink仿真实验报告

成绩 ________实验日期________________ 教师签字________________ 同组者________________ 审批日期________________ 班级________________ 姓名________________实验名称:曲柄滑块机构运动的Simulink仿真一、实验目的1.运用解析法建立曲柄滑块机构的运动学模型,增强运动学问题解析分析能力;2.掌握MA TLAB软件中Simulink模块的使用方法,以及机构运动学仿真的建模流程;3.通过仿真结果分析曲柄滑块机构的速度和加速度随时间的变化关系;二、实验原理简述(运动学建模)图1 曲柄滑块机构模式图图2 曲柄滑块机构向量模型曲柄滑块机构的模式图和向量模型图如图1, 2所示.显然, 机构的矢量方程为:r = r1 + r2 , 在x, y轴上的投影式如下:⎩⎨⎧=+=+sinsincoscos22112211θθθθrrrrr上式两边对时间t求导, 得到速度间的关系:⎪⎩⎪⎨⎧=+=--•••••coscossinsin222111222111θθθθθθθθrrrrr该系统为单自由度(θ1)系统, 选取θ1为独立变量, 机构的输入运动量为θ1, 1•θ,输出变量为θ2, 2•θ, r, •r. 以矩阵的形式描述如下:⎝⎛2222cos sin θθr r ⎪⎪⎭⎫01•••⎪⎪⎭⎫ ⎝⎛--=⎪⎪⎪⎭⎫⎝⎛111112cos sin θθθθr r r进一步整理可得:⎝⎛=⎪⎪⎪⎭⎫⎝⎛••22222cos sin θθθr r r •-⎪⎪⎭⎫ ⎝⎛--⎪⎪⎭⎫111111cos sin 01θθθr r 对速度关系进一步关于时间t 求导, 得到加速度之间关系:⎪⎩⎪⎨⎧=+-++-=+-+-••••••••••••••0)cos sin ()cos sin ()sin cos ()sin cos (222222111211222222111211θθθθθθθθθθθθθθθθr r rr r 机构的输入运动参数为θ1, ,1•θ 1••θ,输出变量为θ2, 2•θ, 2••θ , r , •r , ••r ,以矩阵形式表达:⎝⎛=⎪⎪⎪⎭⎫⎝⎛••••22222cos sin θθθr r r ⎪⎪⎪⎭⎫ ⎝⎛-+---⎪⎪⎭⎫••••••••-11122221211111222212111cos sin sin sin cos cos 01θθθθθθθθθθθθr r r r r r 因此可以根据两个矩阵方程的输入变量和输出变量在Simulink 中设计逻辑框图, 并在MATLAB 命令窗口中编写方程的源代码, 最终可在虚拟示波器中导出加速度、速度和位移的时间历程曲线.三、加速度求解过程1.Simulink 建模框图图3 匀角加速度(α = 10 rad/s2)下求解加速度和速度以及位移的时间历程曲线的Simulink建模框图2.匀角加速度(α = 10 rad/s2)下求解时间历程曲线的源代码function y = fcn(u)%u(1)=alpha1;u(2)=omega1;u(3)=theta1;u(4)=omega2;u(5)=theta2;%y(1)=alpha2;y(2)=a;y = [0;0];r1 = 15; r2 = 55;A = [r2*sin(u(5)) 1;r2*cos(u(5)) 0];B = [-r1*(u(2)^2)*cos(u(3))-r2*(u(4)^2)*cos(u(5))-r1*u(1)*sin(u(3)); r1*(u(2)^2)*sin(u(3))+r2*(u(4)^2)*sin(u(5))-r1*u(1)*cos(u(3))];y = inv(A)*B;3.运行结果初始条件设置:匀角加速度(α = 10 rad/s2)、仿真时间为5 s下的加速度、速度和位移的时间历程曲线图4 匀角加速度下滑块的加速度时间历程曲线图5 匀角加速度下滑块的速度时间历程曲线图6 匀角加速度下滑块的位移时间历程曲线在匀角加速度(α = 10 rad/s2)条件下, 曲柄滑块的加速度、速度和位移随着时间的增加,并且三个物理量的变化周期越来越小, 此外加速度和速度的振幅也随时间的增加而增大,位移振幅不随时间的增加而增大的,始终保持不变.四、实验结果分析与讨论1.结果分析在初始条件下,曲柄静止不动,滑块没有受到外力作用,因此滑块的加速度为 0,这符合理论预期。

matlab曲柄滑块机构的运动学仿真

matlab曲柄滑块机构的运动学仿真

《系统仿真与matlab》综合试题题目:曲柄滑块机构的运动学仿真编号: 21难度系数:姓名班级学号联系方式成绩《系统仿真与matlab》综合试题 (1)一、引言 (3)二、运动学分析 (3)1、实例题目 (3)2、运动分析 (3)三、MATLAB程序编写 (5)四、使用指南和实例仿真 (8)五、结语 (10)一、引言曲柄滑块机构是指用曲柄和滑块来实现转动和移动相互转换的平面连杆机构,也称曲柄连杆机构。

曲柄滑块机构广泛应用于往复活塞式发动机、压缩机、冲床等的主机构中,把往复移动转换为不整周或整周的回转运动;压缩机、冲床以曲柄为主动件,把整周转动转换为往复移动。

这里使用运动学知识,对其运动进行解析,并用MATLAB为其设计仿真模块。

二、运动学分析1、实例题目对图示单缸四冲程发动机中常见的曲柄滑块机构进行运动学仿真。

已知连杆长度:m r 1.02=,m r 4.03=,连杆的转速:22θω =,33θω =,设曲柄r 2以匀速旋转,s r / 502=ω。

初始条件:032==θθ。

仿真以2ω为输入,计算3ω和1r,仿真时间。

2、运动分析建立封闭矢量方程:r2+r3=r1 (9)将(9)式分解到x与y轴坐标上,得到:r2cosθ2+r3cosθ3=r1r2sinθ2+r3sinθ3=0(10)可得:r1=r2cosθ2+r3cosθ3θ3=-arcsin(r2/r3)(11)对(10)式对时间求导得:-r2ω2sinθ2+r3ω3sinθ3=v1r2ω2cosθ2+ r3ω3cosθ3=0 (12) 将上式用矩阵形式表示,令:A=[ r3sinθ3 1-r3cosθ30]X=[ ω3v1]B=[-r2ω2sinθ2r2ω2cosθ2]则(12)可表示为:AX=B。

(13)从而可解出ω3与v1。

三、MATLAB程序编写源代码如下:function varargout = z1(varargin)% Z1 MATLAB code for% Z1, by itself, creates a new Z1 or raises the existing% singleton*.%% H = Z1 returns the handle to a new Z1 or the handle to% the existing singleton*.%% Z1('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in with the given input arguments.%% Z1('Property','Value',...) creates a new Z1 or raises the% existing singleton*. Starting from the left, property value pairs are % applied to the GUI before z1_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application % stop. All inputs are passed to z1_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help z1% Last Modified by GUIDE 29-Dec-2016 22:57:13% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', z1_OpeningFcn, ...'gui_OutputFcn', z1_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);if nargin && ischar(varargin{1})= str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before z1 is made visible.function z1_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% varargin command line arguments to z1 (see VARARGIN)% Choose default command line output for z1= hObject;% Update handles structureguidata(hObject, handles);axesmap1=imread('');imshow(map1)% UIWAIT makes z1 wait for user response (see UIRESUME)% uiwait;% --- Outputs from this function are returned to the command line. function varargout = z1_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} = ;% --- Executes on button press in pushbuttonRun.function pushbuttonRun_Callback(hObject, eventdata, handles)%主要计算程序r2=;%单位mr3=;%单位momiga2=str2double(get,'String'));; %单位rad/sx11=1:500 %单位msfor i=1:500theta2(i)=i*omiga2/1000;theta3(i)=asin(-r2/r3*sin(theta2(i)));B=[-r2*omiga2*sin(theta2(i));r2*omiga2*cos(theta2(i))];A=[r3*sin(theta3(i)) 1;-r3*cos(theta3(i)) 0];X=inv(A)*B;omiga3(i)=X(1,1);v3(i)=X(2,1);endaxes %制表1plot(x11/1000,omiga3);xlabel('时间(t/s)')ylabel('连杆角速度ω3(rad/s)')axes %制表2plot(x11/1000,v3);xlabel('时间(t/s)')ylabel('滑块速度v1(m/s)')% hObject handle to pushbuttonRun (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)function edit1_Callback(hObject, eventdata, handles)% hObject handle to edit1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit1 as text% str2double(get(hObject,'String')) returns contents of edit1 as a double% --- Executes during object creation, after setting all properties.function edit1_CreateFcn(hObject, eventdata, handles)% hObject handle to edit1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end% --- Executes on button press in pushbuttonExit.function pushbuttonExit_Callback(hObject, eventdata, handles)ss=questdlg('确认退出','退出信息窗口!','继续仿真!','退出仿真!','退出仿真!'); switch sscase '退出仿真!'delete;end% hObject handle to pushbuttonExit (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)四、使用指南和实例仿真进入MATLAB软件,打开并运行程序。

曲柄滑块机构的运动学matlab仿真

曲柄滑块机构的运动学matlab仿真

代码实例[anim_zzy1.m]function f=anim_zzy1(K,ki)% anim_zzy1.m 演示红色小球沿一条封闭螺线运动的实时动画% 仅演示实时动画的调用格式为anim_zzy1(K) % 既演示实时动画又拍摄照片的调用格式为f=anim_zzy1(K,ki)% K 红球运动的循环数(不小于1 )% ki指定拍摄照片的瞬间,取1 到1034 间的任意整数。

% f 存储拍摄的照片数据,可用image(f.cdata) 观察照片。

% 产生封闭的运动轨线t1=(0:1000)/1000*10*pi;x1=cos(t1);y1=sin(t1);z1=-t1;t2=(0:10)/10;x2=x1(end)*(1-t2);y2=y1(end)*(1-t2);z2=z1(end)*ones(size(x2));t3=t2;z3=(1-t3)*z1(end);x3=zeros(size(z3));y3=x3;t4=t2;x4=t4;y4=zeros(size(x4));z4=y4;x=[x1 x2 x3 x4];y=[y1 y2 y3 y4];z=[z1 z2 z3 z4];plot3(x,y,z, 'b' ), axis off % 绘制曲线% 定义" 线" 色、" 点" 型(点)、点的大小(40 )、擦除方式(xor) h=line( 'Color' ,[1 0 0], 'Marker' , '.' , 'MarkerSize' ,40, 'EraseMode' , 'xor' );% 使小球运动n=length(x);i=1;j=1;while 1 % 无穷循环set(h, 'xdata' ,x(i), 'ydata' ,y(i), 'zdata' ,z(i)); % 小球位置drawnow; % 刷新屏幕<21>pause(0.0005) % 控制球速<22>i=i+1;ifnargin==2 &nargout==1 % 仅当输入宗量为2 、输出宗量为1 时,才拍摄照片if (i==ki&j==1);f=getframe(gcf); end % 拍摄i=ki时的照片<25>endif i>ni=1;j=j+1;if j>K; break ; endendend(2)在指令窗中运行以下指令,就可看到实时动画图形。

基于MATLAB的曲柄滑块机构模拟与仿真

基于MATLAB的曲柄滑块机构模拟与仿真
2.1课题的背景和意义…………………………………………………………11
2.2设计内容和任务…………………………………………………………..12
2.3实现技术路线……………………………………………………………..12
2.4关键问题和难点分析……………………………………………………..12
2.5设计结果和应用…………………………………………………………….13第三章、程序设计与实现……………………………………………………………14
1.3 用软件进行机构运动学分析的现状和趋势…………………………………9
1.4使用MATLAB/SIMLINK的优势………………………………………………9
1.5 MATLAB/SIMULINK 的特点………………………………………………10
第二章、设计任务分析…………………………………………………………….11
图7曲柄滑块机构运动简图………………………………………………………14
图8Simulink界面展示图…………………………………………………………14
图9曲柄滑块机构运动简图………………………………………………………15
图10new mode…………………………………………………………………15
图11SimMechanics………………………………………………………………15
This design MATLAB GUI design tools and M program combination, the movement of planar four-bar linkage analysis, through the GUI realize interface design, through the M program complete programming and commissioning, and through the interface implementation the slider mechanism analysis and simulation of movement, interface operation mechanism type and judge the pole, the slider shows the driven the instantaneous angular velocity, instantaneous Angle acceleration, extreme position Angle, minimum transmission Angle and anyway, the stroke ratio coefficient.

基于MATLAB的曲柄滑块机构仿真研究

基于MATLAB的曲柄滑块机构仿真研究

图 3 示波器显示仿真曲线 F ig. 3 The cu rve of si m u lation in the scope
同样可以键入连杆角速度和滑块速度曲线 : p lot( tou, t si m out( : , 2) , tou, t si m out( : , 5) ) 绘制仿真曲线如图 5所示 ( 波动大者为连杆加速度曲线 ) 。 利用仿真得到各变量的响应曲线 , 就可以对机构作出大概的评价。但是为了更加准确评价机构的运 动学特性, 我们常常更加关心各变量的极值大小, 可以使用 MATLAB 的 m ax 命令求出。 在命令行键入: w 2= m ax( si m ou t( : , 2) ) ; a= m ax ( si m out(: , 4) ), v= m ax( si m out( : , 5) ) 即可得到 :
参考文献 : [ 1] 郑文纬 , 吴克坚 . 机械原理 [M ]. 北京 : 高等教育出版社 , 2004 . 33- 103. [ 2] [ 美 ] 约翰 . F. 加得纳 . 机构动态 仿真 2002. [ 3] [ 美 ] Edward B. M ag rab 等 . M ATLA B 原理与工程应用 [ M ]. 高会生 , 等译 . 北京 : 电子工业出版社 , 2002 . 125- 139. [ 4] 张森、 张正亮 . M ATLAB 仿真技术与 实例应用教程 [M ]. 北京 : 机械工业出 版社 , 2004 . [ 5] 张葛祥、 李娜 . M ATLAB 仿真技术与 应用 [M ]. 北京 : 清华大学出版社 , 2003 . 55- 83 . ( 责任编辑 : 李 孟良 ) 使用 M ATLA B 和 SI M UL I NK [M ]. 周进 雄 , 等译 . 西安 : 西 安交通 大学 出版社 ,

基于Matlab的机构动力学仿真分析

基于Matlab的机构动力学仿真分析

1 r2 sinθ2
v3 x
r1ω1 sinθ1
0 - r2 cosθ2 ω2 = r1ω1 cosθ1
(11)
1 r2 sinθ2
a3 x
0 - r2 cosθ2 ε2 =
- r1ε1 sinθ1 - r1ω21 cosθ1 - r2ω22 cosθ2
r1ε1 cosθ1 - r1ω21 sinθ1 - r2ω22 sinθ2
如图 2 所示 。图中函数模块 sxh f1 是根据式 (9) 编
写的 M 函数对机构进行动力分析 ,计算约束反力和
力矩 。函数模块 sxh m1 、sxh m2 ,是根据式 (10) 、
式 (12) 编写的 M 函数对机构进行运动分析 ,计算加
速度 。工作阻力的方向随滑块速度方向变化而变
化 ,通过函数 sxh Fpx 来实现 。在仿真运行之前还 应确定图中 5 个积分器的初始条件。选择从 θ1 = 0 开始 ,则初始位置 θ2 = 0 , x3 = r1 + r2 ;ω1 = 100 radΠ s ,根据式 (10) 可求出速度初值 ω1 = - 20 radΠs , v3 x = 0 。最后设定仿真系统运行 0112 s ,机构运动约 2 个 循环周期 ,执行仿真命令 。仿真运动学结果保存在 矩阵 simout 中 ,动力学结果保存在矩阵 simout1 中 。
4 结语 液压支架设计阶段综合运用 CAE ,借助于三维
造型对液压支架进行有限元分析 ,运动仿真 ,动力学 分析 ,避免运动中的机构干涉现象 ,能够使设计中的 “虚拟样机”检验发挥强大作用 ,确保液压支架安全 可靠 ,结构优化合理 ,探索液压支架设计的新思路 , 提高液压支架设计水平 。
参考文献 : [1 ]赵慧设 ,等 1 基于 Internet 的三维模型协同浏览与批注系统 [J ]1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于MATLAB 的曲柄滑块机构运动的仿真
姓名:夏小品 学号:2100110114 班级:机械研10
摘要:本文在曲柄滑块机构运动简图的基础上,对其数学运动模型进行分析,用解析法计算曲柄的转角和角速度,及滑块的位移和速度,并用MATLAB 软件进行仿真。

关键字:曲柄滑块机构;运动分析;MATLAB
The Simulation of Crank Slider Mechanism Motion Based on MATLAB Abstract:This article analyses the motion mathematical model of crank slider mechanism based on its motion diagram. Use analytical method to calculate crank angle,crank angular velocity,slider position and slider velocity and do the simulation of the resultes witn MATLAB software.
Key Words:Crank slider mechanism;Motion analysis;MATLAB 1 引言
在机械传动系统中,曲柄滑块机构是一种常用的机械机构,它将曲柄的转动转化为滑块在直线上的往复运动,是压气机、冲床、活塞式水泵等机械的主机构。

这里用解析法,并用MATLAB 对其进行仿真。

2 曲柄滑块机构的解析法求解
曲柄滑块机构的运动简图如图1所示,在图1中,1L 、2L 和e 分别为曲柄滑块的曲柄、连杆和偏差,1ϕ、2ϕ分别为曲柄和连杆的转角,1ϕ•
、2ϕ•
分别为曲柄和连杆的角速度,S 为滑块的位移。

图1 曲柄滑块机构运动简图
设已知已知1L 、2L 、e 、1ϕ和1ϕ•,求连杆的角位移2ϕ和角速度2ϕ•
,以及滑块的位移S 和速度S •。

2.1 位移分析
按图1 中四边形ABCD 的矢量方向有:
AB CD →

=
将上式转化成幅值乘以角度的形式,得到如下等式:
1
2
12i i L e L e S ie ϕϕ+=+ (1)
分别取上式的虚部和实部,并在e 前面乘N ,N 取值1或-1,用以表示滑块在x 轴的上方或者下方,得到下面两式:
1122cos cos L L S ϕϕ+= (2)
1122sin sin L L Nb ϕϕ+= (3)
整理上面两个公式得到S 和2ϕ的计算公式:
1122cos cos S L L ϕϕ=+ (4)
11
22
sin arcsin
Ne L L ϕϕ-= (5) 2.2 速度分析
将(1)式两边对时间求导得(6)式
1
2
1212i i L ie L ie
S ϕϕϕϕ•


+= (6)
取(6)式的实部和虚部,整理得S •
和2ϕ•
的计算公式:
1211
2
sin()
cos S L ϕϕϕϕ•

-=- (7)
111
222
cos cos L L ϕϕϕϕ•
•=-
(8)
根据(7)式和(8)式即可得到滑块的速度及连杆的角速度。

2.3 实例分析及其MATLAB 仿真 2.3.1 实例分析
下面对图2所示的曲柄滑块机构做具体分析。

图2 曲柄滑块机构简图
例中:1236,140r mm r mm ==,160/sec d ω=,求2ϕ,2ω,S 和S •。

建立图示的封闭矢量方程:
12r r S →


+= (9)
将上式分解到x 与y 轴坐标上,得到:
11221122cos cos sin sin 0r r S r r ϕϕϕϕ+=⎫
⎬+=⎭
(11)
得:
1122122cos cos arcsin S r r r r ϕϕϕ=+⎫

⎬=-⎪⎭
(11)
对(10)式对时间求导得:
111222111222sin sin cos cos 0r r S r r ωϕωϕωϕωϕ•
⎫⎪--=⎬+=⎪⎭
(12) 将上式用矩阵形式表示,令:
222111
22111sin 1sin [],[],[]cos 0cos r r A X B r r S ωϕωϕϕωϕ•-===- (13)
则(12)可表示为:AX B =。

从而可解出2ω和S •。

2.3.2 MATLAB 仿真 Matlab 仿真程序如下: r1=36;%单位mm r2=140;
omiga1=60;%单位d/sec x11=1:720;
for i=1:720
x1(i)=i*pi/180;
%sin(x2(i))=-r1/r2*sin(x1(i));
x2(i)=asin(-r1/r2*sin(x1(i)));
x22(i)=x2(i)*180/pi;
r3(i)=r1*cos(x1(i))+r2*cos(x2(i));
B=[-r1*omiga1*sin(x1(i));r1*omiga1*cos(x1(i))];
A=[r2*sin(x2(i)) 1;-r2*cos(x2(i)) 0];
X=inv(A)*B;
omiga2(i)=X(1,1);
v3(i)=X(2,1);
end
plot(x11/60,0.5*r1*sin(x1));
xlabel('时间t/sec')
ylabel('连杆质心在Y轴上位置/mm')
figure(2)
plot(x11/60,r3);
xlabel('时间t/sec')
ylabel('滑块位移r3/mm')
figure(3)
plot(x11/60,omiga2);
xlabel('时间t/sec')
ylabel('连杆角速度omiga2/rad/sec')
figure(4)
plot(x11/60,v3*pi/180);
xlabel('时间t/sec')
ylabel('滑块速度v3/mm/sec')
图 4 MATLAB中连杆质心位置图图5 MATLAB中连杆角速度图
图6 MATLAB中滑块位移图图7 MATLAB中滑块速度图
3 结语
通过解析法计算,利用Matlab程序编程得出仿真结果与实际情况符合.
参考文献:
[1]文路松.曲柄滑块机构的运动特性分析.中国高新技术企业技术论坛:117,118.
[2]陈德为.曲柄滑块机构的MATLAB仿真.太原科技大学学报,2005,3 (26):172-175.
[3]任晓丹.曲柄滑块机构的计算机辅助分析.电脑知道与技术,2010,5(6):1184,1185.。

相关文档
最新文档