控制系统仿真Word下载.doc
- 文档编号:15409636
- 上传时间:2022-10-30
- 格式:DOC
- 页数:12
- 大小:307.50KB
控制系统仿真Word下载.doc
《控制系统仿真Word下载.doc》由会员分享,可在线阅读,更多相关《控制系统仿真Word下载.doc(12页珍藏版)》请在冰豆网上搜索。
);
B(1,:
),B(2,:
C(1,:
),C(2,:
)]’
NEW=
-745
129
856
-372
2.绘制函数曲线,要求写出程序代码
(1)在区间均匀的取50个点,构成向量X。
(2)在同一窗口绘制曲线y1=sin(2*t-0.3);
y2=3cos(t+0.5);
要求y1曲线为红色点划线,标记点为圆圈;
y2为蓝色虚线,标记点为星号。
程序代码:
t=linspace(0,2*pi,50);
y1=sin(2*t-0.3);
y2=3*cos(t+0.5);
plot(t,y1,'
r.'
t,y2,'
b-'
holdon
o'
*'
holdoff
3.写出生成下图所示波形的MATLAB程序。
图中三个波形均为余弦波,x范围为[pi/2~7*pi/2]。
要求它的正半波被置零;
且在和处被削顶。
程序:
x=linspace(pi/2,7*pi/2,100);
y1=cos(x);
figure
(1)
plot(x,y1)
y1(find(y1>
0))=0;
figure
(2)
n=find((x>
2*pi/3&
x<
4*pi/3)|(x>
8*pi/3&
10*pi/3));
y1(n)=cos(2*pi/3);
figure(3)
4对于x=[-2π,2π],y1=sinx、y2=cosx、y3=sin2x、y4=cos2x
① 用MATLAB语言分四个区域分别绘制的曲线,并且对图形标题及横纵坐标轴进行标注。
② 另建一个窗口,不分区,用不同颜色、线型绘出四条曲线,并标注图例注解。
Matlab:
x=linspace(-2*pi,2*pi,1000);
y1=sin(x);
y2=cos(x);
y3=sin(2*x);
y4=cos(2*x);
subplot(2,2,1)
xlabel('
º
á
×
ø
±
ê
x=[-2*pi,2*pi]'
ylabel('
Ý
y=sin(x)'
)
title('
y=sin(x)Ô
Ú
[-2*pi,2*pi]Ö
®
¼
ä
µ
Ä
Ç
ú
Ï
ß
Í
'
subplot(2,2,2)
plot(x,y2)
y=cos(x)'
y=cos(x)Ô
subplot(2,2,3);
plot(x,y3);
y=sin(2x)'
y=sin(2x)Ô
subplot(2,2,4);
plot(x,y4);
y=cos(2x)'
y=cos(2x)Ô
plot(x,y1,'
r-'
x,y2,'
b.'
x,y3,'
ko'
x,y4,'
g*'
legend('
'
y=sin(2x£
©
5.请分析并修改下面的程序,使用矩阵或数组运算的顺序结构完成嵌套语句的相同功能。
A=[123;
456;
789];
[rc]=size(A);
fori=1:
1:
r
forj=1:
c
if(A(i,j)>
8|A(i,j)<
2)
A(i,j)=0;
end
end
end
修改后的matlab:
A=[123;
A(find(A>
8|A<
2))=0;
A
6.假设a是这样一组数组:
,且。
试分别用循环指令for以及while来寻求该数组中第一个大于10000的元素。
a
(1)=0;
a
(2)=1;
a(3)=2;
fori=4:
inf
a(i)=a(i-1)^2-a(i-2)^2+a(i-3)^2;
ifa(i)>
10000
break
a(i),i
871431
i=
8
7.编写分段函数的函数文件,存放在文件ff.m中,用input语句输入x值,计算的值。
x=input('
ë
Ê
È
x='
ifx>
=0&
1
f(x)=x;
elseifx>
=1&
=2
f(x)=2-x;
else
f(x)=0;
f(x)
请输入x=-2
f=
0
>
ff.m
请输入x=sqrt
(2)
0.5858
请输入x=inf
0
8.
(2)将上题编程改为M函数程序文件,该函数文件满足:
对于任意输入的正整数n,能够输出对应次数小球反弹的高度。
functionff=f(x)
ifnargin==0,x=1;
elseifx<
disp('
´
í
Î
ó
else
9.已知两个传递函数分别为:
①在MATLAB中分别用传递函数、零极点、和状态空间法表示;
②在MATLAB中分别求出通过反馈、串联、并联后得到的系统模型;
sys1=tf([1],[31])
ss(sys1)
zpk(sys1)
sys2=tf([2],[3,1,0])
ss(sys2)
zpk(sys2)
feedback(sys1,sys2,-1)
parallel(sys1,sys2)
series(sys1,sys2)
10.已知系统的方框图如图所示,试推导出从输入信号到输出信号的总系统模型。
sys1=tf([1],[1,1]);
sys2=tf([1,0],[1,0,2]);
sys3=tf([4,2],[1,2,1]);
sys11=feedback(sys1*sys2,sys3,-1);
sys4=tf([1],[1,0,0]);
sys22=feedback(sys4,50,-1);
sys5=tf([1,0,2],[1,0,0,14]);
sys=3*feedback(sys11+sys22,sys5,-1)
Transferfunction:
6s^8+15s^7+168s^6+417s^5+384s^4+2358s^3+4662s^2+2436s+84
-----------------------------------------------------------------------------------
s^10+3s^9+55s^8+177s^7+305s^6+1382s^5+2775s^4+3882s^3
+7952s^2+5716s+1404
11.设单位负反馈控制系统的开环传递函数为:
(1)试绘制K=10,100时闭环系统的阶跃响应曲线,并计算上升时间,超调量和过渡时间;
(2)绘制K=1000时闭环系统的阶跃响应曲线,与K=10,100所得的结果相比较,分析增益系数与系统稳定性的关系。
K=input('
请输入增益系数K='
sys1=tf([K],[1,7,17,0]);
sys=feedback(sys1,1);
[y,t]=step(sys);
plot(t,y)
grid
[Y,k]=max(y);
timeopeak=t(k);
c=dcgain(sys);
percentovershoot=100*(Y-c)/c%Ç
½
â
³
¬
¶
Á
¿
n=1;
whiley(n)<
0.1*c
n=n+1
m=1;
whiley(m)<
0.9*c
m=m+1;
risetime=t(m)-t(n)%Ç
É
ý
i=length(t);
while(y(i)>
0.98*c&
y(i)<
1.02*c)
i=i-1;
settingtime=t(i)%Ç
¹
K=10时闭环系统的阶跃响应曲线
percentovershoot=
-0.1162
risetime=
2.7802
settingtime=
5.1279
K=100时闭环系统的阶跃响应曲线
76.0846
0.3180
24.5778
K=1000:
9.6105e+026
0.0674
22.1165
由k=10,100,1000,过渡时间依次为:
5.1279,24.5778,22.1165,且由第三个图看出K=1000时系统已经呈现高度不稳定性,由此可以看出增益系数越高,过渡时间越长,系统稳定性更差
*12.设单位负反馈控制系统的开环传递函数为
(1)利用Matlab建立上述控制系统的数学模型。
(2)利用Matlab绘制系统的单位阶跃响应曲线和单位冲激响应曲线。
(3)利用LTIViewer工具绘制系统的单位阶跃响应曲线和单位冲击响应曲线,并分析系统性能。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制系统 仿真