先进控制技术及应用Word文档下载推荐.docx
- 文档编号:15015262
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:12
- 大小:189.40KB
先进控制技术及应用Word文档下载推荐.docx
《先进控制技术及应用Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《先进控制技术及应用Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
3.2MAC算法仿真
3.2.1预测模型
该被控对象是一个渐近稳定的对象,预测模型表示为:
,j=1,2,3,……,P.
(2)
这一模型可用来预测对象在未来时刻的输出值,其中y的下标m表示模型,也称为内部模型。
(2)式也可写成矩阵形式为:
预测误差为。
3.2.2参考轨迹
在k时刻的参考轨迹可由其在未来采样时刻的值来描述,取一阶指数变化的形式,可写作:
j=1,2,3…(3)
3.2.3MATLAB编程实现
MATLAB代码见<
附1>
3.2.3程序流程图及仿真结果
其程序的流程框图如图3-1所示:
图3-1程序流程图
仿真结果如图3-2所示:
图3-2仿真结果
3.3DMC算法仿真
3.3.1预测模型
在k时刻,假定控制作用保持不变时对未来个时刻输出的初始预测值为
(3-1)
M个连续控制增量△u(k),△u(k+1),…,△u(k+M-1)作用时,未来时刻输出值:
(3-2)
3.3.2滚动优化
在每一时刻k,要确定从该时刻起的M个控制作用增量使被控对象在起作用下未来P个时刻的输出预测值尽可能接近给定的期望值w(k+i)(i=1,2,。
。
,P).k时刻优化性能指标可取为
(3-3)
式中,qi,rj是加权系数,它们分别表示对跟踪误差及控制量变化的抑制。
3.3.3反馈校正
当k时刻把控制量u(k)施加给对象时,相当于在对象输入端加上了一个幅值为△u(k)的阶跃,利用预测模型式可算出在去作用下未来时刻的输出预测值
(3-4)
下一时刻检测对象的实际输出和模型预测算出的输出相比较,构成输出误差:
(3-5)
整个控制就是以结合反馈校正的滚动优化反复地在线进行,其算法结构如图3-3所示:
图3-3DMC算法结构示意图
3.3.4MATLAB编程实现
附2>
3.3.5仿真结果
结合matlab中simulink仿真框图如图3-4和程序对对象进行仿真,得出的结果图3-5所示:
图3-4simulink仿真框图
图3-4仿真结果
4、总结
本文主要工作是利用DMC算法和MAC算法对被控对象进行控制并采用MATLAB编程仿真。
本次任务涉及的内容包括了先进控制理论、预测控制理论、预测控制算法的仿真、控制算法在MATLAB中的实现等。
给定的被控对象在利用DMC算法和MAC算法的预测控制方式下都取得了良好的控制效果、鲁棒性,有效地克服了系统的非线性。
参考文献
【1】方康玲.过程控制技术及其MATLAB实现(第2版)[M].北京:
电子工业出版社,2013
【2】俞金寿.工业过程先进控制技术[M].上海:
华东理工大学出版社,2008
【3】齐蒙,石红瑞.预测控制及其应用研究[D].2013
(1).
附1:
MAC程序代码
clc
clear
num=[0.2713];
den=[10.9];
numm=[0.2713];
denm=[11];
%定义对象及模型的传递函数
n=40;
t1=0:
0.1:
n/10;
g=1*impulse(num,den,t1)'
;
gm=1*impulse(numm,denm,t1)'
fori=1:
n
g(i)=g(i+1);
end
gm(i)=gm(i+1);
a=g;
am=gm;
N=40;
p=15;
M=1;
m=M;
G=zeros(p,m);
p
forj=1:
m
ifi==j
G(i,j)=g
(1);
elseifi>
j
G(i,j)=g(1+i-j);
elseG(i,j)=0;
end
ifi>
s=0;
fork=1:
(i-m+1)
s=s+g(k);
G(i,m)=s;
end
F=zeros(p,n-1);
k=1;
forj=(n-1):
-1:
1
F(i,j)=g(n);
j
F(i,j)=0;
elseF(i,j)=g(i+k);
k=k+1;
end
R=1.0*eye(m);
Q=0.9*eye(p);
H=0.3*ones(p,1);
%定义各系数矩阵
e=zeros(4*N,4);
y=e;
ym=y;
U=zeros(4*N,4);
w=1;
Yr=zeros(4*N,4);
b=[0.1;
0.4;
0.6;
0.9];
fori=1:
4
fork=N+1:
4*N
y(k,i)=a(1:
N)*U(k-1:
k-N,i);
%求解对象输出
ym(k,i)=am(1:
%求解模型输出
e(k)=y(k)-ym(k);
forj=1:
p
Yr(k+j,i)=b(i)^(j)*y(k)+(1-b(i)^(j))*w;
dt=[1zeros(1,m-1)]*inv(G'
*Q*G+R)*G'
*Q;
U(k,i)=dt*(Yr(k+1:
k+p,i)-F*U(k-N+1:
k-1,i)-H*e(k));
t=0:
11.9;
subplot(2,1,1);
plot(t,y(N:
N+119,1))
holdon;
N+119,2))
holdon
N+119,3))
N+119,4))
%t,y(N:
N+119,3),t,y(N:
N+119,4),t,Yr(N:
N+119,1),t,w*ones(1,120));
%gridon
%legend('
输出1'
'
输出2'
输出3'
输出4'
柔化曲线'
期望曲线'
);
%title('
PlotofMAC'
%plot(U);
%gridon;
附2DMC程序代码
%DMC控制算法
%DMC.m动态矩阵控制(DMC)
num=0.2713;
den=[1-0.83510000];
G=tf(num,den,’Ts’.0.4);
%连续系统
Ts=0.4;
%采样时间Ts
G=c2d(G,Ts);
%被控对象离散化
[num,den,]=tfdata(G,'
v'
N=60;
%建模时域N
[a]=step(G,1*Ts:
Ts:
N*Ts);
%计算模型向量a
M=2;
%控制时域
P=15;
%优化时域
M
P-j+1
A(i+j-1,j)=a(i,1);
end%动态矩阵A
Q=1*eye(P);
%误差权矩阵Q
R=1*eye(M);
%控制权矩阵R
C=[1,zeros(1,M-1)];
%取首元素向量C1*M
E=[1,zeros(1,N-1)];
%取首元素向量E1*N
d=C*(A'
*Q*A+R)^(-1)*A'
%控制向量d=[d1d2...dp]
h=1*ones(1,N);
%校正向量h(N维列向量)
I=[eye(P,P),zeros(P,N-P)];
%Yp0=I*YNo
S=[[zeros(N-1,1)eye(N-1)];
[zeros(1,N-1),1]];
%N*N移位阵S
sim('
DMCsimulink'
)%运行siumlink文件
%图形显示
plot(y,'
LineWidth'
2);
plot(w,'
:
r'
xlabel('
\fontsize{15}k'
ylabel('
\fontsize{15}y,w'
legend('
输出值'
设定值'
)
gridon;
subplot(2,1,2);
plot(u,'
g'
\fontsize{15}u'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 先进 控制 技术 应用