最后6个实验答案Word格式文档下载.docx
《最后6个实验答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《最后6个实验答案Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
![最后6个实验答案Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2022-11/20/c01e48c6-2e32-4c63-b8b1-eeca879dbd87/c01e48c6-2e32-4c63-b8b1-eeca879dbd871.gif)
2.0000-1.0000i4.0000
1.00009.0000-1.0000i
A'
5.0000-1.0000i0-6.0000i
2.0000+1.0000i4.0000
1.00009.0000+1.0000i
(4)使用冒号选出指定元素
已知:
A=[123;
456;
789];
求A中第3列前2个元素;
A中所有列第2,3行的元素;
A([1,2],3)
3
6
A([2,3],:
)
456
789
(5)方括号[]
用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列。
magic(4)
162313
511108
97612
414151
ans(:
4)=[]
1623
51110
976
41415
3、多项式
(1)求多项式
的根
(2)已知A=[1.2350.9;
51.756;
3901;
1234]
求矩阵A的特征多项式;
求特征多项式中未知数为20时的值;
把矩阵A作为未知数代入到多项式中;
p=[10-2-4]
p=
10-2-4
roots(p)
2.0000
-1.0000+1.0000i
-1.0000-1.0000i
A=[1.2350.9;
A=
1.20003.00005.00000.9000
5.00001.70005.00006.0000
3.00009.000001.0000
1.00002.00003.00004.0000
poly(A)
1.0000-6.9000-77.2600-86.1300604.5500
polyval(ans,20)
7.2778e+004
P1=poly(A)
P1=
1.0000-6.9000-77.2600-86.1300604.5500
poly2str(P1,'
A'
A^4-6.9A^3-77.26A^2-86.13A+604.55
4、基本绘图命令
(1)绘制余弦曲线y=cos(t),t∈[0,2π]
(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π]
t=0:
2*pi/100:
2*pi;
y=cos(t);
plot(t,y)
y1=cos(t-0.25);
y2=sin(t-0.5);
holdon
plot(t,y1,'
r--'
t,y2,'
b-.'
5、基本绘图控制
绘制[0,4π]区间上的x1=10sint曲线,并要求:
(1)线形为点划线、颜色为红色、数据点标记为加号;
(2)坐标轴控制:
显示范围、刻度线;
(3)标注控制:
坐标轴名称、标题、相应文本;
4*pi/200:
4*pi;
x1=10*sin(t);
plot(t,x1,'
r-.+'
axis([0,14,-10,10])
title('
x1=10*sin(t)'
xlabel('
x'
'
FontSize'
18)
ylabel('
t'
6、基本程序设计
(1)编写命令文件:
计算1+2+…+n<
2000时的最大n值;
m=0;
n=0;
while(m<
2000)
n=n+1;
m=m+n;
end
n=n-1
n=
62
(2)编写函数文件:
分别用for和while循环结构编写程序,求2的0到n次幂的和。
1)新建sy162.m文件,然后输入以下内容并保存在work目录下。
sum=0;
fori=0:
1:
7
sum=sum+2^i;
2)新建sy162w.m文件,然后输入以下内容并保存在work目录下。
a=0;
i=0;
while(i<
=10)
a=a+2^i;
i=i+1;
(3)如果想对一个变量x自动赋值。
当从键盘输入y或Y时(表示是),x自动赋为1;
当从键盘输入n或N时(表示否),x自动赋为0;
输入其他字符时终止程序。
在程序编辑器中输入以下内容,并按默认设置保存为函数文件。
function[x]=abcd()
a=input('
'
s'
);
switcha
case'
y'
x=1;
Y'
n'
x=0;
N'
otherwise
实验二控制系统分析
(一)
1、掌握如何使用Matlab进行系统的时域分析
2、掌握如何使用Matlab进行系统的频域分析
3、掌握如何使用Matlab进行系统的根轨迹分析
1、时域分析
(1)根据下面传递函数模型:
绘制其单位阶跃响应曲线并从图上读取最大超调量,绘制系统的单位脉冲响应、零输入响应曲线。
num=5*[156];
den=[16108];
sys=tf(num,den);
step(sys)
grid
ymax=max(y)
impulse(sys)
sys1=ss(sys)
x0=[3;
1;
2]
initial(sys1,x0)
(2)典型二阶系统传递函数为:
当ζ=0.7,ωn取2、4、6、8、10、12的单位阶跃响应。
建立命令文件,输入以下内容,保存在默认目录中。
wn=[2:
2:
12];
z=0.7;
0.1:
12;
holdon
fori=1:
length(wn)
Gc=tf(wn(i)^2,[1,2*z*wn(i),wn(i)^2]);
step(Gc,t)
gridon,holdoff
(3)典型二阶系统传递函数为:
当ωn=6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的单位阶跃响应。
wn=6;
zetas=[0.20.40.60.81.01.52.0];
t=0:
length(zetas)
Gc=tf(wn^2,[1,2*zetas(i)*wn,wn^2]);
gridon,holdoff
2、频域分析
(1)典型二阶系统传递函数为:
当ζ=0.7,ωn取2、4、6、8、10、12的伯德图。
bode(Gc,t)
当ωn=6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的伯德图。
3、根轨迹分析
根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析系统稳定的K值范围。
sys=tf(1,[1320])
rlocus(sys)
[x,y]=ginput
(1)
p=x+i*y;
K=rlocfind(sys,p)
运行结果p=0+1.4037iK=5.9115在0<
K<
5.9115系统稳定。
实验三控制系统分析
(二)
一、实验目的
1、掌握如何使用Matlab进行系统的稳定性分析
2、掌握如何使用Matlab进行系统的能观测性、能控性分析
3、掌握如何使用Matlab进行离散系统分析
二、实验内容
1、系统稳定性分析
(1)代数法稳定性判据:
(用求分母多项式的根和routh函数两种方法来判定)
已知系统的开环传递函数为:
试对系统闭环判别其稳定性
1)>
clear
k=100;
z=-2;
p=[0-1-20];
[num,den]=zp2tf(z,p,k);
p=num+den;
roots(p)
-12.8990
-5.0000
-3.1010
因为闭环特征方程的根全部为负值,所以系统是稳定的。
2)先在work目录下建立routh.m,具体函数内容请见课本附录。
然后建立.m文件,输入以下内容。
s=tf('
);
sys=100*(s+2)/(s*(s+1)*(s+20))
close_sys=feedback(sys,1)
den=close_sys.den{1}
[rtab,msg]=routh(den)
Transferfunction:
100s+200
-------------------
s^3+21s^2+20s
--------------------------
s^3+21s^2+120s+200
den=
121120200
rtab=
1120
210
1200
00
msg=
Allelementsinrow4arezeros;
劳斯表第一列全部为正,不变号,所以系统稳定。
(2)根轨迹法判断系统稳定性:
已知一个单位负反馈系统开环传递函数为:
试在系统的闭环根轨迹图上选择一点,求出该点的增益及其系统的闭环极点位置,并判断在该点系统闭环的稳定性。
g=(s+3)/(s*(s+5)*(s+6)*(s^2+2*s+2));
gh=feedback(g,1);
rlocus(gh)
[K,poles]=rlocfind(gh)
运行结果:
Selectapointinthegraphicswindow
selected_point=
-6.3803+2.7640i
K=
509.3252
poles=
-6.4319+2.7310i
-6.4319-2.7310i
1.3488+3.0406i
1.3488-3.0406i
-2.8338
有2个闭环极点在S右半平面,系统在该点不稳定。
(3)Bode图法判断系统稳定性:
已知两个单位负反馈系统的开环传递函数分别为:
用Bode图法判断系统闭环的稳定性。
g1=2.7/(s^3+5*s^2+4*s);
g2=2.7/(s^3+5*s^2-4*s);
bode(g1)
[Gm1,Pm1,Wcg1,Wcp1]=margin(g1)
grid
figure
(2)
bode(g2)
[Gm2,Pm2,Wcg2,Wcp2]=margin(g2)
2、系统能控性、能观性分析
已知连续系统的传递函数模型,
当α分别取-1,0,+1时,判别系统的能控性与能观性
当α=-1时,
num=[1-1];
den=[1102718];
[A,B,C,D]=tf2ss(num,den);
Tc=ctrb(A,B);
rank(Tc)
To=obsv(A,C);
rank(To)
运行结果
能控与能观矩阵都满秩,系统能控且能观。
当α=0,1时,与上类似。
实验十一古典控制系统设计---根轨迹法
掌握使用根轨迹法进行控制系统设计的方法
1、根据二阶系统如图所示,其中ζ=0.6,ωn=5rad/s,当有一阶跃信号作用于系统时,试计算特征量tr、tp、ts、σp。
zet=0.6;
wn=5;
num=wn^2;
den=[12*zet*wn0];
sys=tf(num,den)
sys_close=feedback(sys,1)
[pos,tr,ts,tp]=stepchar(sys_close,0.02)
2、根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析系统稳定的k值范围和使系统无超调的K值范围。
sys=tf(1,[1,4,5,0])
[x,y]=ginput(3);
p=x+i*y
K=rlocfind(s,p)
3、设单位负反馈系统的开环传递函数为:
试确定带惯的PD控制器的串联超前校正参数,使之满足:
(1)阶跃响应的超调量:
σ≤30%;
(2)阶跃响应的超调时间:
ts≤0.8s(Δ=0.02)。
KK=5;
bp=0.30;
ts=0.8;
delta=0.02;
ng0=[256];
dg0=conv([1,0],conv([1,8],[1,16]));
g0=tf(ng0,dg0);
s=bpts2s(bp,ts,delta);
[ngc,dgc]=rg_lead(ng0,dg0,s);
gc=tf(ngc,dgc)
g0c=tf(g0*gc);
b1=feedback(g0,1);
b2=feedback(5*g0c,1);
figure(4);
step(b1,'
b2,'
b'
gridon
[pos,tr,ts,tp]=stepchar(b2,delta)
实验十二古典控制系统设计——Bode图法
掌握使用Bode图法进行控制系统设计的方法
1、设单位负被控对象的传递函数为:
其设计要求:
KK=25;
Pm=40;
wc=2.5;
ng0=KK*[1];
dg0=conv([1,0],conv([0.05,1],[0.25,1]));
t=[0:
0.01:
5];
w=logspace(-2,2);
[ngc,dgc]=fg_lag_wc(ng0,dg0,w,wc);
gc=tf(ngc,dgc),g0c=tf(g0*gc);
b2=feedback(g0c,1);
b2,'
t);
axis([0,5,-0.5,1.5]);
gridon
figure,bode(g0,'
g0c,'
w);
gridon,
[gm,pm,wcg,wcp]=margin(g0c)
2、设有单位负反馈系统,其开环传递函数为:
,相角裕度为50度,幅值裕度为10dB,试确定超前—滞后串联校正装置,以满足性能指标。
KK=10;
delta=0.05;
ng0=[1];
dg0=conv([1,0],conv([1,1],[0.5,1]));
b1=feedback(KK*g0,1);
[gm,pm,wcg,wcp]=margin(KK*g0)
roots(b1.den{1})
Pm=45;
wc=2.5;
[ng1,dg1]=fg_lead_pm_wc(ng0,dg0,Pm,wc,w);
gc1=tf(ng1,dg1)%超前校正控制器
g01=KK*g0*gc1;
[ng2,dg2]=fg_lag_pm(g01.num{1},g01.den{1},w,Pm);
gc2=tf(ng2,dg2)%滞后校正控制器
g02=g01*gc2;
b2=feedback(g02,1);
bode(KK*g0,'
g02,'
w),gridon;
[gm,pm,wcg,wcp]=margin(g02)
figure,step(b1,'
gridon;
[pos,tr,ts,tp]=stepchar(b2,delta)
gc=zpk(KK*gc1*gc2)
实验十三控制系统SIMULINK仿真
学习使用SIMULINK进行系统仿真的方法
1、Simulink的基本操作
(1)运行Simulink
(2)常用的标准模块和模块的操作
2、系统仿真及参数设置
(1)算法设置(Solver)
(2)工作空间设置(WorkspaceI/O)
3、使用Simulink创建系统,求解非线性微分方程
其初始值为
绘制函数的波形。
第一个积分环节initialcondition为0,第二个积分环节为2。
4、已知系统结构图如下:
图1含饱和非线性环节系统方框图
已知输入为信号电平从1~6,非线性环节的上下限为±
1,仿真时间为10秒,试绘制系统的响应曲线。
5、PID控制系统的结构如图所示,试设计串联补偿器,使系统速度稳态误差小于10%,相角裕量PM=45º
,并对系统进行仿真。
图2典型PID控制系统结构图
%PID校正装置的函数模型为Kp*[1+1/(Ti*S)+Td*S];
在此Kp=10;
假设Ti=1.50;
Td=0.25
clear;
num1=400;
den1=conv([1,0],[1,30,200]);
G1=tf(num1,den1);
figure;
step(feedback(G1,1),5);
bode(G1);
grid;
Kv=10;
%根据误差小于10%得来
Ti=1.50;
%假定的
Td=0.25;
%假定的
Gc=Kv*(Ti*Td*s*s+Ti*s+1)/(Ti*s);
%通分后的PID模型
bode(G1*Gc);
step(feedback(G1*Gc,5),2.5);
G=G1*Gc;
要求速度误差小于10%,即在单位斜坡输入的响应误差小于10%。
TransferFcn
TransferFcn1
上面几乎重合的两条曲线分别为单位斜坡曲线与校正后的响应曲线,可看出误差已经很小,几乎与原曲线重合,已经满足题设要求,达到了设计PID的目的。
进一步可绘制系统波特图,验证相角裕量PM>
45º