一曲柄滑块机构运动学仿真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。
(1) 编写Matlab 函数求解运动学方程将该机构的运动学方程的矩阵形式用M 函数compv (u )来表示。
设r2=15mm ,r3=55mm ,r1(0)=70mm , θ2(0)=θ3(0)=0。
其中各个零时刻的初始值可以在Simulink 模型的积分器初始值里设置M函数如下:function[x]=compv(u)%u(1)=w2%u(2)=sita2%u(3)=sita3r2=15;r3=55;a=[r3*sin(u(3)) 1;-r3*cos(u(3)) 0];b=[-r2*u(1)*sin(u(2));r2*u(1)*cos(u(2))];x=inv(a)*b;(2)建立Simulink模型M函数创建完毕后,根据之前的运动学方程建立Simulink模型,如下图:图3-1 Simulink模型同时不要忘记设置r1初始值70,如下图:图3-2 r1初始值设置设置输入角速度为150rad/s,运行时间为0.1s,点击运行,即可从示波器中得到速度和时间以及位移和时间的图像。
3.2.2 滑块位移和滑块速度之间的图像为了得到滑块位移和滑块速度之间的图像,需要通过to workspace 模块将simulink里位移和时间的数据传递到Matlab的工作区中,从而在M文件中再次利用,从Simulink模块传递到工作区的数据的名称是simout。
相应的M文件程序编写如下:a=simout.data; %Simulink传输到工作区的数据不能直接当作数组来使用,因此需要通过这个语句转换成普通矩阵,从而正常被使用。
x=a(:,2);y=a(:,1);plot(x,y);xlabel('位移');ylabel('速度');3.2.3 滑块位移和滑块加速度之间的图像程序编写思路和3.2.2节相同,不再赘述。
程序如下:a=simout.data;x=a(:,2);y=a(:,3);plot(x,y);%在这里要注意,to workspace得到的是1X1数据,因此要转换成正常矩阵,xlabel('位移');%设置x轴名字ylabel('加速度');%设置y轴名字3.3 仿真结果分析图3-3 滑块速度,滑块位移与时间图像从图像中可以看出,速度呈周期性变化,变化的周期大约为0.04s,正反向速度的极值都大约是2400mm/s。
周期性变化的原因是曲柄作为动力源,在做圆周运动。
位移也是随着时间呈周期性变化,变化的周期与速度变化的周期一样,都是大约0.04s。
位移的极大值是70mm,位移的极小值是40mm,因此滑块的实际行程是70-40=30mm。
图3-5 滑块位移与速度图像从图像3-5可以看出,滑块位移和速度之间的关系是封闭的曲线,当位移达到极大值与极限值得时候,速度的值都是零,这说明此时滑块运行到了左右极限位置,接下来将开始反向运动。
图3-6 滑块加速度与位移关系图3-7 极限位置时加速度值放大图加速度的极值出现在左右极限位置,正方向最大值约为2.45*10^5mm,反向最大值约为-4.3*10^5mm。
因此左右极限位置的时候,加速度最大,随着位移增加,加速度趋向于零,最终在位移为55与57左右的时候变为零。
需要说明一点,图3-6,位移为70mm处,有一个加速度的突变,这个不是模型出错导致的,这个现象产生的原因是,曲柄滑块机构在第一次运动之前,是静止的,这和之后的连续运动的情况有所不同,因此产生了加速度从0到-4.3*10^5mm 的突变。
因此,位移大概在55与57左右的时候,是速度最快的时候,也是加速度为零,发生方向变化的时刻,此时速度由上升趋势变为下降趋势,即由加速变为减速。
4. 匀角加速度输入时系统仿真4.1 系统动力学仿真当输入为匀加速的时候,为求出此时系统的动力学方程,需要对之前的系统位置方程式进行二阶求导才能得到含有加速度的表达式,如下图:{−r2w2sinθ2−r2w22cosθ2−r3w3sinθ3−r3w32cosθ3=r̈1 r2w2cosθ2−r2w22sinθ2+r3w3cosθ3−r3w32sinθ3=0此时,输入连杆2的角加速度α2=θ2为仿真系统的输入量;而α3=θ3,r1为系统输出;位移(r1,θ2,θ3)和速度(r1,θ2,θ3)为已知量。
写成A*x=B的矩阵形式为:(r3sinθ31−r3cosθ30)(α3r1)=(−r2α2sinθ2−r2w22cosθ2−r3w32cosθ3r2α2cosθ2−r2w22sinθ2−r3w32sinθ3)4.2 M函数编写以及Simulink 仿真模型建立根据之前得到的矩阵形式的含有加速度的系统动力学方程式,可以编写如下的M函数来求解加速度:function[x]=compa(u)%u(1)=a2%u(2)=w2%u(3)=w3%u(4)=sita2%u(5)=sita3r2=15;r3=55a=[r3*sin(u(5)) 1;-r3*cos(u(5)) 0];b=[-r2*u(1)*sin(u(4))-r2*u(2)^2*cos(u(4))-r3*u(3)^2*cos(u(5));...r2*u(1)*cos(u(4))-r2*u(2)^2*sin(u(4))-r3*u(3)^2*sin(u(5))];x=inv(a)*b然后建立Simulink动力学模型,将该M函数嵌入,并设置输入角加速度为5rad/s^2,r1(0)=70mm,其他位移和速度的初始值都是0,并且将滑块位移的范围限制在40~70(因为实际系统中滑块位移不可能超过这个范围),该范围设置可以通过双击r1的积分器,在参数里进行修改。
同时,为了进一步得到连杆3转角和位移间的关系,将各个变量的数据通过to workspace模块存储到Matlab工作区之中,然后再编写后续程序得到这两条曲线的双纵坐标图。
Simulink模型如下:图4-1 Simulink动力学模型下图是滑块位移范围上下限设置窗口图4-2 滑块位移范围设置窗口后续数据处理程序,从而得到连杆3转角和位移间的关系,如下:t=tout; %与simulink里的时间变量对应起来a=sita2w3sita3v1r1.data;[ax,h1,h2]=plotyy(t,a(:,3),t,a(:,5),'plot');%在这里要注意,to workspace得到的是1X1数据,因此要转换成正常矩阵,%转换方法是a=sita2w3sita3v1r1.data,这样就可以了%返回该plotyy的纵坐标设置句柄,h1是左纵坐标参数,h2是右纵坐标参数set(get(ax(1),'Ylabel'),'string','连杆3转角/rad');%设置左纵坐标轴的名字set(get(ax(2),'Ylabel'),'string','滑块位移/mm');%设置右纵坐标轴的名字xlabel('t/s');%设置x轴名字set(h1,'Linestyle',':');%设置左纵坐标轴线型text(0.8,0.2,'连杆转角\rightarrow');text(0.1,0.1,'滑块位移\rightarrow');%设置箭头和文字标注的位置4.3 仿真结果分析图4-3 滑块位移与连杆转角双纵坐标图图4-4 连杆转角数据分析从4-3图中可以看出,无论是连杆3转角还是滑块位移,都是进行周期变化,周期大小和曲柄转一周的时间相同,而位移的上下限是之前已经设好的,即40~70。
但由于图4-3并不能看出连杆3转角的范围,因此做了进一步的数据分析,从图4-4可以看出,连杆3转角范围是-0.27~0.27,换算成角度就是-15度~正15度。
此外,从图4-3还可以看出,转角的极值和位移的极值的出现时刻并不相同,位移极值的出现时刻总是比转角极值出现时刻慢。
二悬吊式起重机动力学仿真1、设计任务描述起重机械是现代经济建设中改善物料搬运条件,实现生产过程自动化、机械化,提高劳动生产率不可缺少的物流运输设备。
起重机械是一种空间运输设备,其通过起重吊钩或其他取物装置起升或起升加移动重物。
当起重机起升机构抓举物料在空中移动时,希望物料的空间摆动越小越好。
这样利于物料的准确吊装,保证吊装场地操作工人的安全。
本文以工厂企业中最常用的悬吊式起重机为例,建立起重机的数学模型,得到起重机起重物在垂直方向的偏摆角与起重机小车驱动力之间的关系,分析了起重机在启动、稳定工作和停止时起重物在垂直方向的偏摆情况。