自动控制原理4控制系统数字仿真.docx
- 文档编号:3004510
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:11
- 大小:167.42KB
自动控制原理4控制系统数字仿真.docx
《自动控制原理4控制系统数字仿真.docx》由会员分享,可在线阅读,更多相关《自动控制原理4控制系统数字仿真.docx(11页珍藏版)》请在冰豆网上搜索。
自动控制原理4控制系统数字仿真
自控原理实验四:
控制系统数字仿真
一、实验目的
通过本实验掌握利用四阶龙格-库塔法进行控制系统数字仿真的方法,并分析系统参数改变对系统性能的影响。
二、实验方法
1、四阶龙格一一库塔法
(7-1)
卄一阶微分方程如2则在切L(如A巾}处,F仇+J的近似值为:
加1=儿-:
馆-2雇+比-駐)〔m0
式中:
/r=fHU
K=fi^yn)
孤三/(匚十可k儿十—^1)
■■
俎二/久卄片乩儿亠:
展丿
■*
h=f(f.+九儿十碣}
(7-3)
如果微分方程是如下丿枚式的向馆微分方程,Jgf)=d⑴少⑴)
U(O)=兀
M中<X(t)为E维向量,u⑴均为标m.则在匸处(gfgj的近似(f[为:
兀+】二兀+£[£+皿42心+瓦](7-4)
O
(7-5)
v(s)
M(S)
(7-6)
(7-7)
(7-8)
(7-9)
(7-10)
(7-11)
式中:
“也
K严F(r”Kr』)
K严弘+杯兀+*,心))
AB亠
K3=F(r”+£・X”+£KyM(Fj)
瓦=尸亿+力丄”+也3・?
心))
n=01
2.控制系统数字仿真
设系统的闭环传递函数为^
如=凹=**宀…%Z
M($)Sn+“s"T十…+心_]+a”
引入中间变量7(s)则上式叮化为:
如二凹m(s)v(s)令:
型=!
h(5)s"十as"T+・..a”]S+a”
誥=5严+巾严+…c”4q
由以上两式吋得如下两个微分方程
vw(r)+av^(『)+•••+d”_p(r)+anv(t)=w(r)
W)=epi(r)+c2v(w_2)(/)+•■•+c』(r)+e„v(r)
令:
v(B_1)(0)=v(n_2)(0)=-=v(0)=v(0)=0
H(0=啲,心(0="(『)••,耳(0=E(0
则(7-8)式可化为如下一阶微分方程组:
AW=^2(r)
右”)=x3(r)
亢-1⑴=X”(0
九(0=一讣(r)-务丙⑴叭(r)+u(t)
(7~9)式口J丐成:
J(0=c”“(r)+存辺⑴+…中左)
方程(了-10)和(7-11)可写成如下向量形武:
x(r)=-IV(r)+iu(r)
y(t)=cX(t)”(2-12)
x(0)二0
这里疋⑴为H錐列向量FM(f)为标量,/为?
常数矩阵.
b为"维列向量,£为鬥维列向量,并分别具育如下形式・
x(t)=
巧(0伙)
*
b=
0
0
<1
耳(f)
I
■
0
10
…o
0
01
…0
A=
*
曲i
占b
Q
00
…1
5-
7一1一口
n-2
…—0]
e=l
57
.…订
对比(7~3)式口J得:
F(t,JT(t),u(0)=+6w(O
三冒实验内容
已知系统结构如图7-1
Rqic
辄即”~r*
图7_1
若输入为单位阶跃帼数.计算肖超调蜀分别为非作叭,25%,和50%时K的取值(用主导极点方法佔算),并根据确定的K值在计算机上进行数字仿真。
四、实验设备
硬件:
PC机一台
软件:
MATLAB^件,MicrosoftWindowsXP。
五、实验报告
1、由公式
%e12100%
计算出%分别为5%、25%50%时的分别为0.690、0.404、0.216
K
画出Gs2在K为0到,时的闭环根轨迹,如下图
ss5
ReaAxb
再画出分别为0.690、0.404、0.216的阻尼线,求出阻尼线与
根轨迹的3个交点。
则可求出K分别为30.88、59.25和103.55。
K也可以这样算:
若系统有超调量,则由主导极点法可知原系统可简化为二阶系统,两个闭环极点共轭靠近虚轴,另一个闭环极
恥)=-_处——y旦
点远离虚轴,分别设为九为厂也,贝V'70胪+笑$+巧
.22322、2
(S2nSn)(SS3)S(S32n)S(2nS3n)SnS3,故
22
S32n10,2nS3n25,nS3k,即可算出Ko
2、根据仿真结果,绘制阶跃响应曲线并求出&(thesettling
time)和彷%(theoverShoot)
①当K=30.88时,
以矩阵形式输入a:
[10,25,30.88]
以矩阵形式输入c:
[0,0,30.88]
请输入步长h:
0.025请输入打印步长mh之m:
8
请输入迭代次数N*m之N:
60
theovershoot%=4.425886%
theSettlingtimetS=3.000000s.
②当K=59.25时,
以矩阵形式输入
a:
[10,25,59.25]
以矩阵形式输入
c:
[0,0,59.25]
请输入步长h:
0.025
请输入打印步长
mh之m:
8
请输入迭代次数
N*m之N:
80
theovershoot
%=23.117615%.
thesettlingtime
ts=3.150000s.
③当K=103.55时,
以矩阵形式输入a:
[10,25,103.55]
以矩阵形式输入c:
[0,0,103.55]
请输入步长h:
0.025
请输入打印步长mh之m:
8
请输入迭代次数N*m之N:
80
theovershootis%=45.722310%
thesettlingtimets=4.950000s
六、实验结论
可以看出,当系统其它参数不变,根轨迹增益K的值增加时,一对主导极点起作用;调节时间增大,响应速度变慢,快速性降低;超调量增加,振荡加剧,稳定性变坏。
附录程序:
functiony=runge_kutta(f)
%输入ai,ci,h,m,N.
a=input('以矩阵形式输入a:
\n');%闭环传递函数分母的系数,除最高项系数1外。
cc=input('以矩阵形式输入c:
\n');%闭环传递函数分子的系数,元素数与a的相同。
h=input('请输入步长h:
');
m=input('请输入打印步长mh之m:
');
N=input('请输入迭代次数N*m之N:
');
%计算A,b,c
A=[010;001;-a(3)-a
(2)-a
(1)];
b=[001]';
c=[cc(3)cc
(2)cc
(1)];
u=1;%时域形式的u(t),单位阶跃输入时u(t)=1.
x=zeros(3,N*m);%给X初值
t0=0;%t初值
t=t0+[0:
N*m]*h;
y0=0;%y初值
y=zeros(N*m,1);
y(1,:
)=y0;
fprintf('t的值为%f\n',t0);%输出t,y的初值。
fprintf('y的值为%f\n',y0);
f=fun;%函数句柄
fori=1:
N
forj=1:
mk1=h*feval(f,t(j+m*(i-1)),x(:
j+m*(i-1)),u,A,b);k2=h*feval(f,t(j+m*(i-1))+h/2,x(:
j+m*(i-1))+k1/2,u,A,b
);k3=h*feval(f,t(j+m*(i-1))+h/2,x(:
j+m*(i-1))+k2/2,u,A,b
);k4=h*feval(f,t(j+m*(i-1))+h,x(:
j+m*(i-1))+k3,u,A,b);x(:
j+1+m*(i-1))=x(:
j+m*(i-1))+(k1+2*k2+2*k3+k4)/6;
y(j+1+m*(i-1),:
)=c*x(:
j+1+m*(i-1));
end%四阶龙格库塔算法
fprintf('t的值为%f\n',t(m*i+1));
fprintf('y的值为%f\n',y(m*i+1));%打印(m*i+1)*h步长
时的t,yend
[Y,k]=max(y);%将一系列y中的最大值赋给Y
percentovershoot=100*(Y-1)/1;%计算超调量(对稳定系统的
单位阶跃响应,终值为1)
fprintf('theovershootis%f%%.\n',percentovershoot);打印超调量值
i=length(t);
while(y(i,:
)>0.98)&(y(i,:
)<1.02)
i=i-1;
end
settlingtime=t(i);%找出2%误差带时的调节时间
fprintf('thesettlingtimeis%fs.\n',settlingtime);%打印调节时间值
plot(t,y);%利用数值解绘制单位阶跃响应曲线grid;
title('stepresponse');
xlabel('t/s');
ylabel('y/v');
functionf=fun(t,x,u,A,b)
%给出函数关系式
f=A*x+b*u;
程序流程图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自动控制 原理 控制系统 数字 仿真
![提示](https://static.bdocx.com/images/bang_tan.gif)