版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
限制系统仿真试验
Matlab部分试验结果
目录
试验一MATLAB基本操作......................................................1
试验二Matlab编程.........................................................5
试验三Matlab底层图形限制.....................................................6
试验四限制系统古典分析.......................................................12
试验五限制系统现代分析........................................................15
试验六PID限制器的设计......................................................19
试验七系统状态空间设计.......................................................23
试验九直流双闭环调速系统仿真.................................................25
试验一MATLAB基本操作
1用MATLAB可以识别的格式输入下面两个矩阵
1233
-1+4/43678
2357
233554+2z
A=1357B=
26+7z5342
3239
189543
1894-
再求出它们的乘积矩阵C,并将C矩阵的右下角2X3子矩阵赋给D矩阵。赋值完成后,调
用相应的叮嘱查看MATLAB工作空间的占用状况。
A=[l,2,3,3;2,3,5,7;l,3,5,7;3,2,3,9;l,8,9,4];
B=[l+4iz4z3z6,7,8;2,3,3,5,5,4+2i;2,6+7i,5,3,4,2;l,8,9,5,4,31;
C=A*B;
D=C(4:5Z4:6);
whos
NameSizeBytesClassAttributes
A5x4160double
B4x6384doublecomplex
C5x6480doublecomplex
D2x396doublecomplex
2选择合适的步距绘制出下面的图形
sin(l〃),其中re(-1,1)
t=[-l:0.1:l];
y=sin(l./t);
plot(t,y)
3对下面给出的各个矩阵求取矩阵的行列式、秩、特征多项式、范数、特征根、特征向量和
逆矩阵。
-7.53.500--5765-
8334.1071087
A=,B=
09103--1.568109
_003.719.3_57910
」23丁-3-3-24-
56785-518
c=,D=
91011121185-7
131415165-1-3-1
A=[7.5,3.5,0,0;8,33,4.1,0;0,9,103,-1.5;0,0,3.7,19.3];
B=[5,7,6,5;7,10,8,7;6,8,10,9;5,7,9,10];
C=[l:4;5:8;9:12;13:lrtf6];
det(A);det(B);det(C);det(D);
rank(A);
rank(B);
rank(C);
rank(D);
a=poly(A);
b=poly(B);
c=poly(C);
d=poly(D);
norm(A);
norm(B);
norm(C);
norm(D);
[v,d]=eig(Aznobalance');
[vzd]=eig(B,nobalance*);
1
[vzd]=eig(C,nobalance);
[v,d]=eig(D,nobalance1);
m=inv(A);
n=inv(B);
p=inv(C);
q=inv(D);
4求解下面的线性代数方程,并验证得出的解真正满足原方程。
721-241321390
9153-27721-264
(a)X=,(b)X=
115-19153-2117
132130-2-2115-2-1
(a)
A=[7,2,1,-2;9,15,3,-2;-2,-2,11,5;1,3,2,13];
B=[4;7;-1;0];
X=A\B;
C=A*X;
(b)
A=[l,3,2,13;7,2,1,-2;9,15,3,-2;-2,-2,11,5];
B=[9,0;6,4;ll,7;-2,-l];
X=A\B;
C=A*X;
5.
(1)初始化一10*10矩阵,其元素均为1
ones(10,10);
(2)初始化一10*10矩阵,其元素均为0
zeros(10,10);
(3)初始化-10*10对角矩阵
v=[l:10];
diag(v);
(4)输入A=/7/5;256;315],B=[lI1;222;333],执行下列叮嘱,理解其含义
A(2,3)表示取A矩阵第2行、第3列的元素;
A(:,2)表示取A矩阵的第2列全部元素;
A(3,:)表示取A矩阵第3行的全部元素;
A(:,1:2:3)表示取A矩阵第1、3列的全部元素;
A(:,3).*B(:,2)表示A矩阵第3列的元素点乘B矩阵第2列的元素
A(:,3)*B(2,:)表示A矩阵第3列的元素乘以B矩阵第2行
A*B矩阵AB相乘
A.*B矩阵A点乘矩阵B
AA2矩阵A的平方
A32矩阵表示求矩阵A的每一个元素的平方值
B/A表示方程AX=B的解X
B./A表示矩阵B的每一个元素点除矩阵A的元素
6在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-O.5),te[0,2Jt],
用不同颜色,不同线的类型予以表示,留意坐标轴的比例限制。
t=[0:0.01:2*pi];
yl=cos(t-0.25);
plot(t,yl,1r-1)
holdon
y2=sin(t-0.5);
1r
plot(try2rk)
试验二Matlab编程
1分别用for和while循环结构编写程序,求出
63
==1+2+22+23++262+263
/•=0
并考虑一种避开循环的简洁方法来进行求和。
(a)j=l;n=0;sum=l;
forn=n+l:63
fori=l:n
j=j*2;
end
sum=sum+j;
j=l;
end
sum
(b)j=l;n=l;sum=l;
whilen〜=64
i=l;
whilei<n+l
j=j*2;
i=i+l;
end
n=n+l;
sum=sum+j;
j=l;
end
Sum
(c)i=0:63;k=sum(2.Ai);
2计算l+2+-+n<2000时的最大n值
s=0;m=0;while(s<=2000),m=m+l;s=s+m;end,m
3用MATLAB语言实现下面的分段函数
h,x>D
y=f(x)=<hlDx,|x|<D
—h,x<—D
存放于文件ff.m中,令D=3,h=l求出,如1.5),40.5),45).
D=3;h=l;
x=-2*D:l/2:2*D;
y=-h*(x<-D)+h/D./x.*((x>=-D)&(x<=D))+h*(x>D);
plot(x,y);
gridon
fl=y(find(x==-1.5))
f2=y(find(x==0.5))
f3=y(find(x==5))
试验三Matlab底层图形限制
1在MATLAB叮嘱行中编程得到y=sin(t)和yl=cos⑴函数,plot(t,y);自gure(10);plot(t,yl);
»t=[-pi:O.O5:pi];
»y=sin(t);
»yl=cos(t);
»plot(t,y)
»figure(lO);
»plot(t,yl)
2在MATLAB叮嘱行中键入h=get(O),查看根屏幕的属性,h此时为根屏幕句柄的符号表
示,0为根屏幕对应的标号。
»h=get(O)
BeingDeleted:'off
BusyAction:'queue'
ButtonDownFcn:"
Callbackobject:[]
Children:[2x1double]
Clipping:'on'
CommandWindowSize:[8927]
CreateFcn:"
CurrentFigure:1
DeleteFcn:"
Diary:'off
DiaryFile:'diary*
Echo:'off
FixedWidthFontName:'CourierNew'
Format:'short'
FormatSpacing:loose1
HandleVisibility:'on'
HitTest:'on'
Interruptible:'on'
Language:'zh_cn.gbk'
MonitorPositions:[1114409001
More:'off
Parent:[]
PointerLocation:[1048463]
PointerWindow:0
RecursionLimit:50()
ScreenDepth:32
ScreenPixelsPerlnch:96
ScreenSize:[111440900]
Selected:'off
SelectionHighlight:'on'
ShowHiddenHandles:'off
Tag:"
Type:‘root'
UIContextMenu:[]
Units:'pixels'
UserData:[]
Visible:'on'
3hl=get(l);h2=get(I0),1,10分别为两图形窗口对应标号,其中1为Matlab自动支配,标号
10已在figure。0)中指定。查看hl和h2属性,留意CurrentAxes和CurrenObject属性。
»hl=get(l)
hl=
Alphamap:[1x64double]
BeingDeleted:'off
BusyAction:'queue*
ButtonDownFcn:"
Children:170.0012
Clipping:'on'
CloseRequestFcn:'closereq'
Color:[0.800()0.80000.8000J
Colormap:[64x3double]
CreateFcn:"
CurrentAxes:170.0012
CunentCharacter:"
Currentobject:[]
CunentPoint:[00]
DeleteFcn:"
DockControls:'on,
FileName:"
FixedColors:[10x3double]
Handlevisibility:'on,
HitTest:'on'
IntegerHandle:'on'
Interruptible:*on*
InvertHardcopy:'on'
KeyPressFcn:"
KeyReleaseFcn:"
MenuBar:'figure'
MinColormap:64
Name:"
NextPlot:'add'
NumberTitle:'on'
PaperOrientation:'portrait'
PaperPosition:[0.63456.345220.304615.2284]
PaperPositionMode:'manual1
PaperSize:[20.984029.6774]
PaperType:'A4'
PaperUnits:'centimeters'
Parent:0
Pointer:'arrow*
PointerShapeCData:[16x16double]
PointerShapeHotSpot:[11]
Position:[440378560420]
Renderer:'painters'
RendererMode:'auto'
Resize:'on'
ResizeFcn:"
Selected:'off
SelectionHighlight:'on'
SelectionType:'normal1
Tag:"
ToolBar:'auto,
Type:'figure'
UIContextMenu:[]
Units:'pixels'
UserData:f]
Visible:'on'
WindowButtonDownFcn:"
WindowButtonMotionFcn:"
WindowButtonUpFcn:"
WindowKeyPressFcn:"
WindowKeyReleaseFcn:"
WindowScrollWheelFcn:"
WindowStyle:'normal'
WVisual:*00(RGB32GDI,Bitmap,Window),
WVisualMode:'auto'
»h2=get(10)
h2
Alphamap:[1x64double]
BeingDeleted:*off
BusyAction:'queue1
ButtonDownFcn:"
Children:342,0011
Clipping:'on'
CloseRequestFcn:'closereq'
Color:[0.80000.80000.8000]
Colormap:[64x3double]
CreateFcn:"
CurrentAxes:342.0011
Currentcharacter:"
Currentobject:[1
CurrentPoint:[00]
DeleteFcn:"
DockControls:'on,
FileName:"
FixedColors:[10x3double]
Handlevisibility:'on'
HitTest:'on,
IntegerHandle:'on'
Interruptible:'on'
InvertHardcopy:'on'
KeyPressFcn:"
KeyReleaseFcn:"
MenuBar:'figure'
MinColormap:64
Name:"
NextPlot:'add'
NumberTitle:'on'
PaperOrientation:'portrait'
PaperPosition:[0.63456.345220.304615.2284]
PaperPositionMode:'manual*
PaperSize:[20.984029.6774]
PaperType:'A4'
PaperUnits:'centimeters'
Parent:0
Pointe亡'arrow'
PointerShapeCData:[16x16double]
PointerShapeHotSpot:[11]
Position:[440378560420]
Renderer:'painters*
RendererMode:'auto'
Resize:‘on'
ResizeFcn:
Selected:'off
SelectionHighlight:'on'
SelectionType:'normar
Tag:"
ToolBar:'auto'
Type:'figure'
UIContextMenu:[]
Units:'pixels'
UserData:f]
Visible:'on'
WindowButtonDownFcn:"
WindowButtonMotionFcn:"
WindowButtonUpFcn:"
WindowKeyPressFcn:"
WindowKeyReleaseFcn:"
WindowScrollWheelFcn:"
WindowStyle:'normal'
WVisual:'00(RGB32GDI,Bitmap,Window)1
WVisualMode:'auto'
4输入h.Children,视察结果。
»h.Children
ans=
1
10
5键入gcf,得到当前图像句柄的值,分析其结果与h,hl,h2中哪个一样,为什么?
ans=
I
结果与h的一样
6鼠标点击Figure1窗口,让其位于前端,在叮嘱行中键入gcf,视察此时的值,和上一步
中有何不同,为什么?
ans=
1
7视察hl.Children和h2.Children,gca的值。
»hl.Children
ans=
170.0012
»h2.Children
ans=
342.0011
»gca
ans=
170.0012
8视察以下程序结果h3=hl.Children;set(h3,'Color*/green');h3_1=get(h3,'children,);set(h3_l,
,Color1,Yed*);其中h3_l为Figure1中线对象句柄,不能干脆接受h3_l=h3.Children叼嘱获
得。
9叮嘱行中键入plot(t,sin(t-pi/3)),视察曲线出现在哪个窗口。h4=h2.Children;axes(h4);
plot(t,sin(t-pi/3)),看看此时曲线显示在何窗口。
pk>t(t,sin(t-pi/3))后,曲线出现在figure1窗口;h4=h2.Children;axes(h4);plot(t,sin(t-pi/3))后,
曲线出现在figurelO
试验四限制系统古典分析
10
3.已知二阶系统G(s)=
52+25+10
(1)编写程序求解系统的阶跃响应;
a=sqrt(10);
zeta=(1/a);
num=[10];
den=[12*zeta*a10];
sys=tf(num,den);
t=0:0.01:3;
figure(1)
step(sysft);grid
修改参数,实现J=1和J=2的阶跃响应;
"1时:
a=sqrt(10);
zeta=l;
num=[10];
den=[12*zeta*a10];
sys=tf(num,den);
t=0:0.01:3;
figure(1)
step(sysrt);grid
4=2时:
a=sqrt(10);
zeta=2;
num=[10];
den=[12*zeta*a10];
sys=tf(num,den);
t=0:0.01:3;
figure(1)
step(sys,t);grid
修改参数,实现/〃1=和口〃2=的阶跃响应(G“=JI6)
时:
a=sqrt(10);
zeta=(1/a);
num=[0.25];
den=[12*zeta*0.5*a0.25];
sys=tf(num,den);
t=0:0.01:3;
figure(1)
step(sys,t);grid
%2=2%时:
a=sqrt(10);
zeta=(1/a);
num=[40];
den=[12*zeta*2*a40];
sys=tf(num,den);
t=0:0.01:3;
figure(1)
step(sys,t);grid
(2)试做出以下系统的阶跃响应,并比较与原系统响应曲线的差别与特点,作出相应的试验
分析结果。
2s+10/+0.5s+10s2+0.5s
G(s)=G(5)=;G.3(S)=
+2s+102s2+25+1052+2s+10
G(5)=
252+25+10
要求:分析系统的阻尼比和无阻尼振荡频率对系统阶跃响应的影响;
分析响应曲线的零初值、非零初值与系统模型的关系:
分析响应曲线的稳态值与系统模型的关系;
分析系统零点对阶跃响应的影响;
a=sqrt(10);
zeta=(1/a);
num=[10];
den=[12*zeta*a10];
sys=tf(num,den);
t=0:0.01:3;
step(sys,t);
holdon
numl=[0210];
sysl=tf(numl,den);
step(sysl,t);
num2=[10.510];
sys2=tf(num2zden);
step(sys2zt);
num3=[10.50J;
sys3=tf(num3,den);
step(sys3,t);
num4=[010];
sys4=tf(num4,den);
step(sys4zt);grid
•ZjFigure1□00
FileEditVie»InsertToolsDeskiopWindovHelp
口目金)玲,,门@*房•③口国・国
StepResponse
System:sys1
Time(sec):0.646
Amplitude:1.35
System:sys
Time(sec):0.827
■Afriplifude:T26--
3
.8
pg6
snsSystem:sys2
dTime(sec):0.731
与4AmnOhMle*A80S
sSystem:sys4
2Time(sec):0.676
Amplitude:0.152
o.o
System:sys3
-0.2-------Time(sec):0.904
Amplitude:-0.396
11.5
Time(sec)
5
k(s+1)
已知G(s)=
52(0.15+1)
令k=l作Bode图,应用频域稳定判据确定系统的稳定性,并确定使系统获得最大相位
裕度的增益k值。
G=tf([11],[0.1100]);
figure(1)
margin(G);grid
Figure1
FileEditViewInsertToolsDesktopWindowHelp
q通|巧®要/,|曰|口目Ind
BodeDiagram
Gm=-InfdB(at0rad/sec),Pm-44.5deg(at1.26rad/sec)
m
p
)
①
p
n
v
u
o
e
w
-150
Frequency(rad/sec)
试验五限制系统现代分析
(2)Bode图法推断系统稳定性:
已知两个单位负反馈系统的开环传递函数分别为:
2727
G(s)=3…“;G,(s)=3一,
53+5s-+4s's+5s--4s
用Bode图法推断系统闭环的稳定性。
Gl=tf([2.7],[1540]);
figure(1)
margin(G);grid
G2=tf([2.7]z[15-40]);
figure(2)
margin(G2);grid
igure1
FileEditViewInsertToolsDesktopWindowHelp
□ddQ+、、争⑨0/□SI■O
BodeDiagram
Gm=-InfdB(at0rad/sec),Pm=44.5deg(at1.26rad/sec)
100
m50
p
)
g
p
n
u0
g
e
w
-100
-120
(
aB
)p
8
s
e
q
d
Frequency(rad/sec)
Figure2[二]叵|区
FileEditVie*InsertToolsDesktopWindowHelp
□t3J4+、,C®编/•学□IDl・国
BodeDiagram
Gm=Inf,Pm=-58.1deg(at0.535rad/sec)
(
B
p
)
0p>
n
w
罩
se
ie
di
Frequency(rad/sec)
2
系统能控性、能观性分析
已知连续系统的传递函数模型:
s+a
G(s)=
?+10J2+275+18
当a分别取一1,0,+1时,判别系统的能控性与能观性。
当Q取-1时:
num=[1-1];
den=[l102718];
G=tf(num,den);
Gl=ss(G)
a=[-10-3.375-2.25;800;010];
b=[0.5;0;0];
A
Uc=[bza*b,a2*b];
rank(Uc)
a=
xlx2x3
X1-10-3.375-2.25
x2800
x3010
b=
ul
xl0.5
x20
x30
c=
xlx2x3
yl00.25-0.25
d=
ul
yl0
Continuous-timemodel.
rankUc=
3
rankUo=
3
由此,可以得到系统能控性矩阵Uc的秩是3,等于系统的维数,故系统是能控的。能观性矩
阵U。的秩是3,等于系统的维数,故系统能观测的。
当a取0时:
a
xlx2x3
xl-10-3.375-2.25
x2800
x3010
ul
xl0.25
x20
x30
x1x2x3
yl00.50
ul
yl0
Continuous-timemodel.
rankUc=
3
rankUo=
3
由此,可以得到系统能控性矩阵Uc的秩是3,等于系统的维数,故系统是能控的。能观性矩
阵U。的秩是3,等于系统的维数,故系统能观测的。
当a取1时:
a=
xlx2x3
xl-10-3.375-2.25
x2800
x3010
b=
ul
xl0.5
x20
x30
c
xlx2x3
yl00.250.25
d=
ul
yl0
rankUc=
3
rankUo=
2
由此,可以得到系统能控性矩阵Uc的秩是3,等于系统的维数,故系统是能控的。能观性矩
阵U。的秩是2,小于系统的维数,故系统不能观测的。
试验六PID限制器的设计
1.已知三阶对象模型G(s)=l/(s+l)3,利用MATLAB编写程序,探讨闭环系统在不同限
制状况下的阶跃响应,并分析结果。
(1)8,%->0时,在不同KP值下,闭环系统的阶跃响应;
S=tf(*S1);
G=l/(s+1)A3;
forK=[0:0.5:2];holdon
step(feedback(G*K,1))
end
I3回区
E.xleEditView工nsertToolsDesktopWindowHelp
□aj\-xo©c口园-回
StepResponse
1.4
1.2
8
o
p
n
M
d
lo.
u
vo.6
比例环节:成比例地反映限制系统的偏差信号e⑴,偏差一旦产生限制器立刻产生限制作用,
以减小偏差。比例系数越大,误差越小。
(2)K〃=l,7;->0时,在不同7;值下,闭环系统的阶跃响应;
s=tf(*s1);
G=l/(s+1)A3;
forTi=[1:0.5:3];holdon
Gl=l+tf(1,[Tiz0]);
step(feedback(G*G1Z1))
end
13间国
FileEditViewInsertToolsDesktoplindowH«lp
□aJ口国■□
StepResponse
1.6
1.4
1.2
o
p
n
s8
d
uso.
/
v
6
51015202530354045
Time(sec)
积分环节.•主要用于消退静塞提高系统的无差度。积分作用的强弱取决于积分时间常数"
力越大,积分作用越弱,反之则越强。
(3)Kp=7;=l时,在不同7;值下,闭环系统的阶跃响应;
s=tf(*s*);
G=l/(s+1)A3;
forTd=[1:0.5:3];holdon
Gl=l+tf(1,[1,0])+tf([Td0],[Td/101]);
step(feedback(G*G1,1))
end
微分环节:反映偏差信号的变更趋势(变更速率),并能在偏差信号变得太大之前,在系统中引
入一个有效的早期修正信号,从而加快系统的动作速度,削减调整时间。
2.被控对象同上,选择合适的参数进行模拟PID限制(PID参数整定)
S=tf(*S1);
G=l/(s+1)A3;
[KIzLIrT1rG1]=getfolpd(1FG);G1
N=10;K=1.014;T=2.101;L=l.l;a=K*L/T;
Kp=l.2/arTi=2*L,Td=0.5*LrG2=Kp*(1+tf(1,[Ti,0])+tf([Td0],[Td/N
1]));
step(sysl=feedback(G*G2,1));grid
holdon
step(feedback(G,1))
Figure1□00
FileEditViewInsertToolsDesktopWindowHelp
QT百Hfe+、4c⑨组/,曼□0:TQ
S8
o
np
dw
/u
vo.6
0.2
1012
Time(sec)
试验七系统状态空间设计
3.已知对象模型
--0.30.1-0.05112]
x(t)-10.10x(Z)+0
—1.5—8.9-0.054
y=[l23]x
⑴假如我们想将闭环系统的极点配置到-1,2-3,利用MATLAB设计限制器,并绘出闭环
系统的阶跃响应曲线。(说明:用两种方法配置极点)
接受Ackermann公式计算:
A=[-0.30.1-0.05;l0.10;-1.5-8.9-0.05];
B=[2;0;4];
C=[l23];
D=0;
P=[-l-2-3];
k=acker(A,B,P)
Ac=A-B*k
eig(Ac)
G=ss(Ac,B,C,D)
Gl=tf(G)
t=0:0.01:3;
step(G1tt);grid
Figure1;□iX
FileEditViewInsertToolsDesktopWindowHelp
□后UJ玲+、入踮黝0/,显□国■Q
Time(sec)
接受鲁棒极点配置算法:
A=[-0.30.1-0.05;l0.10;-l.5-8.9-0.05];
B=[2;0;4];
C=[l23];
D=0;
P=[-l-2-3];
k=place(A,B,P)
Ac=A-B*k
eig(Ac)1
G=ss(Ac,B,C,D)
Gl=tf(G)
t=0:0.01:3;
step(G1ft);grid
•JFigure113回区
FileEditVie»InsertToolsDesktopWindowHelp
StepResponse
2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 舞蹈之美解读
- 膝痹针灸治疗课程
- 基于核心素养小学数学《综合与实践》的开发与实施研究课题开题报告
- 旅游业务发展回顾与展望
- 湖南工程学院《线性代数》2021-2022学年第一学期期末试卷
- 湖南工程学院《金融会计学》2021-2022学年第一学期期末试卷
- 中考数学复习第4章三角形第19课时等腰三角形课件
- 艾滋病MSM相关知识
- 肺癌术后护理新进展
- 脑小血管病诊治
- 设备维保的故障分析和故障率统计
- 一例止血带放气不全导致的不良事件
- 网络工程职业生涯展示
- 冬季呼吸道疾病的中医药防治方案
- 朗诵比赛的打分准则及评分表
- 心脏粘液瘤护理查房
- 2024年日历工作日程计划表
- 艾滋梅毒乙肝健康知识讲座
- 教育心理学在教学中的应用培训课件
- 医院零星维修工程投标方案(技术方案)
- 手术再授权申请表
评论
0/150
提交评论