一曲柄滑块机构运动学仿真1、设计任务描述通过分析求解曲柄滑块机构动力学方程,编写matlab程序并建立Simulink模型,由已知的连杆长度和曲柄输入角速度或角加速度求解滑块位移与时间的关系,滑块速度和时间的关系,连杆转角和时间的关系以及滑块位移和滑块速度与加速度之间的关系,从而实现运动学仿真目的。2、系统结构简图与矢量模型下图所示是只有一个自由度的曲柄滑块机构,连杆𝑟2与𝑟3长度已知。图2-1曲柄滑块机构简图设每一连杆(包括固定杆件)均由一位移矢量表示,下图给出了该机构各个杆件之间的矢量关系图2-2曲柄滑块机构的矢量环3.匀角速度输入时系统仿真3.1系统动力学方程系统为匀角速度输入的时候,其输入为𝜔2=𝜃2̇,输出为𝜔3=𝜃3̇,𝜃3;𝑣1=𝑟1̇,𝑟1。(1)曲柄滑块机构闭环位移矢量方程为:𝑅2+𝑅3=𝑅1(2)曲柄滑块机构的位置方程{𝑟2cos𝜃2+𝑟3cos𝜃3=𝑟1𝑟2sin𝜃2+𝑟3sin𝜃3=0(3)曲柄滑块机构的运动学方程通过对位置方程进行求导,可得{−𝑟2𝜔2sin𝜃2−𝑟3𝜔3sin𝜃3=𝑟1̇𝑟2𝜔2cos𝜃2+𝑟3𝜔3cos𝜃3=0由于系统的输出是𝜔3与𝑣1,为了便于建立A*x=B形式的矩阵,使x=[𝜔3𝑣1],将运动学方程两边进行整理,得到{𝑣1+𝑟3𝜔3sin𝜃3=−𝑟2𝜔2sin𝜃2−𝑟3𝜔3cos𝜃3=𝑟2𝜔2cos𝜃2将上述方程的v1与w3提取出来,即可建立运动学方程的矩阵形式(𝑟3sin𝜃31−𝑟3cos𝜃30)(𝜔3𝑣1)=(−𝑟2𝜔2sin𝜃2𝑟2𝜔2cos𝜃2)3.2M函数编写与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-1Simulink模型同时不要忘记设置r1初始值70,如下图:图3-2r1初始值设置设置输入角速度为150rad/s,运行时间为0.1s,点击运行,即可从示波器中得到速度和时间以及位移和时间的图像。3.2.2滑块位移和滑块速度之间的图像为了得到滑块位移和滑块速度之间的图像,需要通过toworkspace模块将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);%在这里要注意,toworkspace得到的是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系统动力学仿真当输入为匀加速的时候,为求出此时系统的动力学方程,需要对之前的系统位置方程式进行二阶求导才能得到含有加速度的表达式,如下图:{−𝑟2𝑤̇2sin𝜃2−𝑟2𝑤22cos𝜃2−𝑟3𝑤̇3sin𝜃3−𝑟3𝑤32cos𝜃3=𝑟̈1𝑟2𝑤̇2cos𝜃2−𝑟2𝑤22sin𝜃2+𝑟3𝑤3̇cos𝜃3−𝑟3𝑤32sin𝜃3=0此时,输入连杆2的角加速度𝛼2=𝜃2̈为仿真系统的输入量;而𝛼3=𝜃3̈,𝑟1̈为系统输出;位移(𝑟1,𝜃2,𝜃3)和速度(𝑟1̇,𝜃2̇,𝜃3̇)为已知量。写成A*x=B的矩阵形式为:(𝑟3sin𝜃31−𝑟3cos𝜃30)(𝛼3𝑟1̈)=(−𝑟2𝛼2sin𝜃2−𝑟2𝑤22cos𝜃2−𝑟3𝑤32cos𝜃3𝑟2𝛼2cos𝜃2−𝑟2𝑤22sin𝜃2−𝑟3𝑤32sin𝜃3)4.2M函数编写以及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转角和位移间的关系,将各个变量的数据通过toworkspace模块存储到Matlab工作区之中,然后再编写后续程序得到这两条曲线的双纵坐标图。Simulink模型如下:图4-1Simulink动力学模型下图是滑块位移范围上下限设置窗口图4-2滑块位移范围设置窗口后续数据处理程序,从而得到连杆3转角和位移间的关系,如下:t=tout;%与simulink里的时间变量对应起来a=sita2w3sita3v1r1.data;[ax,h1,h2]=plotyy(t,a(:,3),t,a(:,5),'plot');%在这里要注意,toworkspace得到的是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、设计任务描述起重机械是现代经济建设中改善物料搬运条件,实现生产过程自动化、机械化,提高劳动生产率不可缺少的物流运输设备。起重机械是一种空间运输设备,其通过起重吊钩或其他取物装置起升或起升加移动重物。当起重机起升机构抓举物料在空中移动时,希望物料的空间摆动越小越好。这样利于物料的准确吊装,保证吊装场地操作工人的安全。本文以工厂企业中最常用的悬吊式起重机为例,建立起重机的数学模型,得到起重机起重物在垂直方向的偏摆角与起重机小车驱动力之间的关系,分析了起重机在启动、稳定工作和停止时起重物在垂直方向的偏摆情况。2、系统动力学方程首先,悬吊式起重机的结构简图如下。图2-1悬吊式起重机简图根据该结构简图,我们要进行受力分析,然后建立该模型的动力学方程。该小车水平方向的受力有外力,轨道摩擦力,以及吊重的水平分力,因此,水平方向上动力学方程为:该小车,垂直方向的受力有重力,单摆竖直方向分力与小车和钢丝相互作用力,而且竖直方向上小车没有位移,因此,竖直方向上的受力平衡方程为:又有小车并发生角位移,因此,对小车进行力矩平衡的分析,方程如下:上述三个公式中用到的字母含义如下:𝑚𝑡:起重机的小车质量,kg;𝑚𝑝:起重机的吊重,kg;Θ:钢丝绳在铅直方向的摆角;I:起重机的吊重惯量,kg.m^2;c:起重机车轮与导轨之间的等效粘性摩擦系数,N/(m.s^2);l:钢丝绳长,m;F:小车驱动力,N;X:小车水平位移,m;P:吊车与小车相互作用力在垂直方向上的分力,N。根据小车的竖直方向的受力平衡方程与小车的力矩平衡方程,参数P可以消去,得到公式:(I+𝑚𝑝∗𝑙2)𝜃̈+𝑚𝑝∗𝑔∗𝑙∗𝜃=𝑚𝑝∗𝑙∗𝑥̈至此,该起重机系统的动力学方程为(1)(I+𝑚𝑝∗𝑙2)𝜃̈+𝑚𝑝∗𝑔∗𝑙∗𝜃=𝑚𝑝∗𝑙∗𝑥̈(2)为了便于建模,对公式(2)中的二次微分项进行展开,得到公式:(3)𝑚𝑡=𝐹−𝑐∗𝑥̇−𝑚𝑝(𝑥̈−𝑙∗𝜃̈∗cos𝜃+𝑙∗𝜃̇2∗sin𝜃)将公式(1)和公式(3)进行变换得到最终表达式:{𝑥̈=𝐹−𝑐𝑥̇+𝑚𝑝𝑙(𝜃̈cos𝜃−𝜃̇2