单自由度系统的振动及matlab分析
- 格式:docx
- 大小:187.75 KB
- 文档页数:6
精品好资料——————学习推荐
1 / 6
单自由度系统的振动及matlab分析
摘要:
以弹簧—质量系统为力学模型,研究单自由度系统的特性有着非常普遍的实际意义。根据单自由度振动系统数学模型,利用Matlab软件设计了单自由度振动系统的数学仿真实验。通过实验可以得到单自由度振动方程的数值
关键字:
有阻尼自由振动、有阻尼自由振动、matlab
正文:
无阻尼自由振动:
如图所示的单自由度振动系统可以用如下微分方程描述:
图1
0••kxxm (1-1)
令 mkn2 ,方程的通解为
tbtaxnncossin (1-2)
式(1-2)表示了图示(1)中质量m的位置随时间而变化的函数关系,反映了振动的形式与特点,称为振动函数。
式(1-2)中,a、b为积分常数,它决定于振动的初始条件。如假定t=0时,质量块的位移 x=x0,其速度 00Vxx••,则
00,xbVan
即
txtVxnnncossin00(1-3) 精品好资料——————学习推荐
2 / 6 或写成
)sin(tAxn (1-4)
2020)(xVAn,00tanVxan
其中A为振幅,n为振动圆频率, 为相位角,)2(/nnf(赫兹)称为固有频率。固有频率与外界给予的初始条件无关,它是系统本身所具有的一种重要特性。
有阻尼自由振动
图1所示的自由振动中,由于系统的能量守恒,如果振动一旦发生,它就会持久的,等幅的一直进行下去。但是,实际上所遇到的自由振动都是逐渐衰减而至最终停止的,即系统存在阻尼。阻尼有相对运动表面的摩擦力,液体与气体的介质阻力,电磁阻力以及材料变形时的内阻力等。
图2所示为考虑了阻尼的单自由度振动系统模型。其运动微分方程为
0•••kxxcxm(2-1)
令2,2nmknmc,则
022•••xxnxn (2-2)
其通解为
)2(22221nnnnntececex
(2-3)
式中c1、c2为积分常数,由振动初始条件确定。
令 nn,称为相对阻尼系数或阻尼率。则式 (2-3)可写为
)(121122tttnnnececex (2-4)
由此可以讨论阻尼对系统的自由振动产生的影响。
一、当1时,称为弱阻尼状态
此时,12为虚数,式 (2-4) 变为
)(221211tititnnnececex (2-5)
利用欧拉公式,式(2-5)可写为
]1sin1cos[22tatbAexnntn (2-6)
图图2 精品好资料——————学习推荐
3 / 6 括号内为两个简谐振动相加,即式 (2-5) 可写为
)1sin(2tAexntn (2-7)
)1arctan(,)1(1)(002022202020xVxxxVAnnnn
由式(2-7)可以看出,弱阻尼自由振动具有如下几种特性:
它是一个简谐振动,振动的频率为n21,这是n为无阻尼时系统的固有频率。一般情况下,常在0.1左右,因此对固有频率的影响不大,即认为 nn21 。
2. 振动的振幅为tnAe,其中A、、n皆为定值。所以振幅随时间变化的规律是一条指数递减曲线(图3)。
二、当1时,称为强阻尼状态
此时,式(1.2.2-4)可写成
12)1(12)1(2020220201)1(2)1(122nnnnttxVcxVcececxnn (2-8)
由于012,故式(2-8 )中二项指数皆为实数。又因为12,故二项之指数皆为负值,所以,式(2-8)所表示的是一根指数递减曲线。这表示系统将不再产生前面所述的振动,而是产生一按指数规律衰减的曲线。
三、当1时,称为临界阻尼状态 12345678910-40-30-20-1001020304050*exp(-0.1*wn*t)-50*exp(-0.1*wn*t)图3 精品好资料——————学习推荐
4 / 6 由于 1nn,nn,则有
kmmkmmcnc222(2-9)
这里 cc 为临界阻尼状态下的阻尼系数,称为临界阻尼系数。显然它是系统本身所具有的特性之一。
由nnmcn2及ncmc2,有ccc。也就是说,相对阻尼系数(阻尼率)反映了系统的实际阻尼与临界阻尼的关系。
在临界阻尼状态下,有
)(21tccextn (2-10)
其中00201,xVcxcn。显然,在这种状态下不能形成振动。
有阻尼自由振动响应计算与 MATLAB实现
根据式(2-7)、(2-8)、(2-10) 编写的程序如下:
function VTB1(m,c,k,x0,v0,tf)
%VTB1用来计算单自由度有阻尼自由振动系统的响应
%VTB1绘出单自由度有阻尼自由振动系统的响应图
%m为质量;c为阻尼;k为刚度;x0为初始位移;v0为初始速度;tf为仿真时间
%VTB1(zeta,w,x0,v0,tf)绘出单自由度有阻尼自由振动系统的响应图
%zeta为阻尼系数;ωn为固有频率
%程序中z为阻尼系数;A为振动幅度;phi为初相位
clc
%该循环确定输入方式是VTB1(m,c,k,x0,v0,tf),还是%VTB1(zeta,w,x0,v0,tf)
ifnargin==5
z=m;wn=c;tf=v0;v0=x0;x0=k;m=1;c=2*z*w;k=w^2;
end
wn=sqrt(k/m);%固有频率
z=c/2/m/wn;
wd=wn*sqrt(1-z^2);
fprintf('固有频率为%.3g.rad/s.\n',wn);
fprintf('阻尼系数%.3g.\n',z);
fprintf('有阻尼的固有频率%.3g.\n',wd);
t=0:tf/1000:tf;
if z<1
A=sqrt(((v0+z*wn*x0)^2+(x0*wd)^2)/wd^2);
phi=atan2(x0*wd,v0+z*wn*x0);
x=A*exp(-z*wn*t).*sin(wd*t+phi);
fprintf('A=%.3g\n',A); 精品好资料——————学习推荐
5 / 6 fprintf('phi=%.3g\n',phi);
elseif z==1
a1=x0;
a2=v0+wn*x0;
fprintf('a1=%.3g\n',a1);
fprintf('a2=%.3g\n',a2);
x=(a1+a2*t).*exp(-wn*t);
else
a1=(-v0+(-z+sqrt(z^2-1))*wn*x0*wn*x0)/2/wn/sqrt(z^2-1);
a2=(v0+(z+sqrt(z^2-1))*wn*x0)/2/wn/sqrt(z^2-1);
fprintf('a1=%.3g\n',a1);
fprint('a2=%.3g\n',a2);
x=exp(-wn*t).*(a1*exp(wn*sqrt(z^2-1)*t)
+a2*exp(wn*sqrt(z^2-1)*t));
end
plot(t,x),grid
xlabel('时间(s)')
ylabel('位移')
title('位移相对时间的关系')
运行该程序时,只需要给出相应参数,例如
>>VTB1(1,0.05,1,1,1,100)
则显示固有频率为n=1(rad/s),阻尼系数=0.03,幅值为A=1.43相位角为phi=0.773。其响应曲线如图 (4) 所示。程序中if语句就是判断ξ大小的,即判断是弱阻尼状态、强阻尼状态还是临界阻尼状态。如果运行>>VTB1(1,2,1,0.1,1,20),则显示固有频率为n=1(rad/s),阻尼系数=1。其响应曲线如图 (5)所示。如果要想求出振动的速度•x(=xd)和加速度••x(=xdd),只要式(2-1)、式(2-2)、式(2-10)分别进行求导,在程序中加入相应的内容,最后增加plot(t,xd),plot(t,xdd)即可给出速度和加速度图。 图4 精品好资料——————学习推荐
6 / 6
参考文献:
【1】 倪振华 振动力学
【2】 刘习军、张文德 工程振动与测试技术
【3】 百度文库 单自由度体系的振动
图5