系统仿真II大作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统仿真II 大作业
自06A-2 赵众源 06101010215
1、考虑如下的微分方程:
(1)试在Matlab 环境下采用Euler 法编制其仿真程序,给出在[0,10]秒区间上y 的变化曲线。
(2)试在Matlab —Simulink 环境下搭建仿真模型,给出在[0,10]秒区间上y 的变化曲线。
(3)考虑带有输入的情况:
在Matlab —Simulink 环境下进行仿真,给出在[0,10]区间上y 的变化曲线。 (1)
在M 文件中创建Euler 函数:
function [t,y]=euler(odefun,tspan,y0,h) t=tspan(1):h:tspan(2);y(1)=y0; for i=1:length(t)-1
y(i+1)=y(i)+h*feval(odefun,t(i),y(i)); end
t=t';y=y';
在命令窗口得到y 的变化曲线: odefun=inline('2*y*sin(t)-abs(y^3)','t','y'); >> [t,y]=euler(odefun,[0,10],1,0.01); plot(t,y)
3
()(,)2()sin |()|,(0)1dy t f t y y t t y t y dt
==-=3
()(,)2()sin |()|(),(0)1,()2cos 2dy t f t y y t t y t u t y u t t dt ==-+==
0.2
0.4
0.6
0.8
1
1.2
1.4
(2)试在Matlab —Simulink 环境下搭建仿真模型,给出在[0,10]秒区间上y 的变化曲线。
(3)考虑带有输入的情况:
在Matlab —Simulink 环境下进行仿真,给出在[0,10]区间上y 的变化曲线。
3
()(,)2()sin |()|(),(0)1,()2cos 2dy t f t y y t t y t u t y u t t dt ==-+==
2、下图是有电阻R=5、电感L=10和电容C=1组成的无源网络
(1)试列写以Ui为输入量,Uo为输出量时网络的微分方程;
(2)在Matlab-Simulink环境下搭建仿真模型,假设Uo的初始值为2,试给出Ui=5sin(10t)时Uo在[0, 15]区间上的变化曲线。
答:(1)
Ui(t)=LC(Uo(t))’’+RC(Uo(t))’+Uo(t)
(2)
3、考虑如下传递函数:
(1)以采样时间为0.2秒,将其转化为离散差分方程形式(输入为u ,输出为y ); 以采样时间为0.2秒,将其转化为离散差分方程形式 >> num=[0 0 1.5]; >> den=[1 8 12 6];
>> [A,B,C,D]=tf2ss(num,den);
>> [ad,bd,cd,dd]=c2dm(A,B,C,D,0.2,'method'); >> ad ad =
0.8346 1.0000 0 -0.0050 0.8346 1.1153 0 0 0.2878
>> bd bd =
0 0 0.0625
>> cd cd =
0.0694 0.0758 0.0230
>> dd dd =
所以其差分方程如下: x(n+1)=ad*x(n)+bd*u(n) y(n)=cd*x(n)+dd*u(n)
(2)考虑PID 控制器
以0.2秒为采样周期推导出其控制增量的差分方程形式。
32() 1.5
()()8126
Y s G s U s s s s ==+++0.5()10.1C s s
s =++
)(1
.02
10
-=-++
=∑n n s n
i i S
n n c c T c T c p )(1
.02211011
---=---++=∑n n s
n i i S n n c c T c T c p
)2(1
.02)(211---+-++-=∆n n n s
n S n n n c c c T c T c c p
S T s 2.0=
)2(2
1
1.0)(211---+-++-=∆n n n n n n n c c c c c c p
(3)试编写仿真程序得到闭环系统的单位阶跃响应曲线和控制量曲线,初始时刻的输入输出都为0,要求控制量不能大于5。 >> num=[1.5]; >> den=[1 8 12 6];
>> [num,den]=cloop(num,den,-1); >> step(num,den)
(4)在Simulink 下搭建仿真模型,求C (s )和G (s )构成的闭环系统的单位阶跃响应曲线。
阶跃响应曲线为:
(5)试给出一组PID控制器参数,使得控制系统的超调量小于10%,达到稳态(误差小于正负2%)的时间小于15秒,并给出输入输出曲线。
Kp=2.1 Ti=2.2 Td=0.1
4、考虑如下质量-弹簧-阻尼系统:
令x表示物体运动的距离,则其运动方程可表示为:
若m=2,c=1,k=1,f(t)=2,t>=0,试在Matlab—Simulink下搭建其仿真模型,给出在[0,20]区间上x和x’的变化曲线,其中x(0)=1,x’(0)=0.5,x’指x的微分。
答;在Matlab—Simulink下搭建的仿真模型:
x’的变化曲线
2
2()
d x dx
m c kx f t dt dt
++=