电加热炉的系统辨识与自适应控制资料Word文件下载.docx
- 文档编号:22951296
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:21
- 大小:201.97KB
电加热炉的系统辨识与自适应控制资料Word文件下载.docx
《电加热炉的系统辨识与自适应控制资料Word文件下载.docx》由会员分享,可在线阅读,更多相关《电加热炉的系统辨识与自适应控制资料Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
电加热炉温度控制系统框图如图1.1所示。
图1.1电加热炉温度控制系统
按照信号的流动,其工作原理大致是:
首先将热电偶传来的带有温度信号的毫伏级电压滤波、放大,送至A/D转换器,这样通过采样和A/D转换,就将所检测的炉温对应的电压信号转换成数字量送入了控制装置(如微机、智能仪表的处理器等);
在控制装置内计算出该电压信号对应的温度值,然后将它与给定的温度值进行比较,并按一定的控制算法进行运算;
运算结果通过控制晶闸管在控制周期内的触发角,也就是控制电加热炉的平均功率的大小来达到温度控制的目的。
设计温度控制算法时还需要将上述的原理图简化成模型如图1.2所示,以便于系统进行分析。
图1.2系统简化模型图
模型中的控制器就是广义的加载到计算机或微处理器上的控制算法,晶闸管模块、电加热炉、加热对象一起归为控制对象,而A/D转换器、热电偶则构成反馈回路。
控制器给定的温度作为系统输入信号r,传感器检测到的温度作为输出信号y,误差e、控制信号u均在控制装置里通过计算得到,最后经过一系列转换实现对热工对象温度的控制,这就形成了一个典型的反馈控制系统[2]。
二、电加热炉系统辨识
2.1电加热炉温度系统模型
电加热炉的温度控制是典型的过程控制。
由于传热问题的复杂性,电加热炉系统具有非线性、时变性、大滞后、不对称等特点。
它的滞后主要是容积滞后,炉体的结构、容量、测温元件及其安装的位置都影响着滞后的大小;
而在使用过程中,随着温度的升降,加热元件的特性发生变化,保温绝热材料会逐渐老化,环境也在不断变化,因而炉温特性是时变的;
又因为绝大多数电加热炉都是在温度上升时强迫加热,而温度下降时则自然冷却,所以其温度特性是不对称的;
另外由于炉温取决于加热元件的发热量、散热量和负荷的情况,发热时间总比传热时间短得多,所以炉温动态特性主要由传热过程决定,传导、对流、辐射三种的传热方式都在起作用,只是在不同温区所占比例不同,三者中只有传导是线性的,辐射是绝对温度的四次方,对流则更加复杂,故电加热炉是一个本质非线性的系统。
由于电加热炉可认为是一个大容积滞后加纯滞后的对象(容积滞后比纯滞后大得多),故在其整个温度工作区域,对象动态参数是随炉温变化的,而每个炉子都有一个设定的工作温区,在工作点附近的小范围内,炉子的动态特性可看成近似线性。
在过程控制中,为了方便,通常把电加热炉温控系统看成是一个线性系统,其模型可以定性描述为:
(2-1)
式中,Y为加热对象温度,
t为加热时间,
为系统时间常数,
为放大倍数,
U为控制电压,
为纯滞后时间。
如果设定控制器输出为u,而u正比于
,即
,对式(2-1)作拉氏变换,可得:
(2-2)
所以
(2-3)
故系统的传递函数为一阶惯性加纯滞后环节,其中K为静态增益[3]。
(2-4)
2.2最小二乘估计的递推算法
最小二乘法由于原理简明、收敛较快、易于理解、易于编程实现等特点、在系统参数估计中应用相当广泛。
而最小二乘法中的递推算法由于能对对象参数在线实时估计,从而改善了估计精度,在系统辨识中倍受青睐。
最小二乘估计递推算法的基本思想可以为:
新的估计值
旧的估计值
+修正项。
最小二乘估计递推算法的公式为[4]
(2-5)
最小二乘估计递推算法如下[5]:
已知:
、
和d。
1设置初值
和
,输入初始数据;
2采样当前输出
和输入
;
3利用式(2-5),计算
4
,返回2,继续循环。
2.3最小二乘估计的递推算法辨识及仿真
已知电加热炉的参数模型,其传递函数表示为[6]
(2-6)
可以考虑利用最小二乘估计递推算法对上述系统进行在线辨识。
为了得到系统的离散模型,可利用MATLAB对系统的传递函数(2-6)进行离散化。
采样时间取T=20s。
在MATLAB中输入命令G=tf(0.44,[5201],'
inputdelay'
20),Gz=c2d(G,20,'
z'
)。
得到系统的离散系统的传递函数为
(2-7)
将电加热炉转换为差分方程,有
(2-8)
在实际的电加热炉模型中,一定存在噪声干扰。
往差分方程里添加噪声干扰项后,得到电加热炉的动态方程为
(2-9)
式中
(k)为白噪声。
取初值
选择M序列为输入信号u(k)[7]。
取1500个采样点。
采用最小二乘估计递推算法进行参数估计,具体程序如下(程序参考《系统辨识与自适应控制MATLAB仿真》,并进行了修改):
%递推最小二乘参数估计(RLS)
clearall;
closeall;
a=[1-0.9623];
b=[0.0166];
d=2;
%对象参数
na=length(a)-1;
nb=length(b)-1;
%na、nb为A、B阶次
L=1500;
%仿真长度
x1=1;
x2=1;
x3=1;
x4=0;
%产生M序列的移位寄存器初值
s=1;
%方波初值
uk=zeros(d+nb,1);
%输入初值:
uk(i)表示u(k-i)
yk=zeros(na,1);
%输出初值
fork1=1:
L
s=not(s);
%产生方波
m(k1)=xor(x3,x4);
%进行异或运算,产生M序列
x4=x3;
x3=x2;
x2=x1;
x1=m(k1);
%寄存器移位
end
xi=sqrt(0)*randn(L,1);
%白噪声序列,修改括号中数值可产生不同方差的白噪声
theta=[a(2:
na+1);
b];
%对象参数真值
thetae_1=zeros(na+nb+1,1);
%thetae初值
P=10^7*eye(na+nb+1);
fork=1:
phi=[-yk;
uk(d:
d+nb)];
%此处phi为列向量
y(k)=phi'
*theta+xi(k);
%采集输出数据
%递推最小二乘法
K=P*phi/(1+phi'
*P*phi);
thetae(:
k)=thetae_1+K*(y(k)-phi'
*thetae_1);
P=(eye(na+nb+1)-K*phi'
)*P;
%更新数据
thetae_1=thetae(:
k);
fori=d+nb:
-1:
2
uk(i)=uk(i-1);
end
uk
(1)=m(k);
%M序列!
!
fori=na:
yk(i)=yk(i-1);
yk
(1)=y(k);
plot([1:
L],thetae);
%line([1,L],[theta,theta]);
xlabel('
k'
);
ylabel('
参数估计a、b'
legend('
a_1'
'
b_0'
axis([0L-1.51.5]);
分别设置不同方差的白噪声,运行程序,具体辨识结果如图2.1-2.4所示。
图2.1白色噪声方差为0时参数辨识结果图2.2白色噪声方差为0.01时参数辨识结果
图2.3白色噪声方差为0.1时参数辨识结果图2.4白色噪声方差为1时参数辨识结果
不同白噪声下的具体数据如表2.1所示:
表2.1
参数
真值
-0.9623
0.0166
白噪声方差为0.01
-0.9628
0.0174
白噪声方差为0.1
-0.9575
0.0199
白噪声方差为1
-0.9647
0.0238
以上参数数据和曲线说明随着扰动强度的增强,辨识的效果会有所下降。
当扰动十分剧烈的时候,系统的辨识效果会十分差。
三、电加热炉系统的自适应控制算法及仿真
3.1电加热炉系统控制问题的提出
第1章中已经介绍了电加热炉的工作原理,电加热炉通常是通过控制系统中传动机构拖动调压器动触头来改变输入电压,保持炉温的稳定平衡,从而保证电加热炉系统稳定正常的工作。
在实际工业生产中,一般要求电加热炉炉温的超调量尽可能小。
因此,对于电加热炉的控制问题是:
给定电加热炉的输入电压大小,通过某种控制方式来调节电加热炉温度,使电加热炉温度的超调量尽可能小并达到目标温度数值。
3.2广义最小方差间接自校正控制算法
自适应控制算法包括有自校正调节器、自校正控制器、自适应极点配置PID控制器、自校正PID控制等。
我选用广义最小方差自校正控制器对电加热炉系统的温度进行自适应控制。
最小方差控制具有算法简单、易于理解、易于实现等优点,是其他自校正控制算法的基础。
其基本思想是:
由于一般工业对象存在纯延时d,当前的控制作用要滞后d个采样周期才能影响输出。
因此,要使输出方差最小,就必须提前d步对输出量作出预测,然后根据所得的预测值来设计所需的控制律。
这样,通过连续不断的预测和控制,就能保证稳态输出方差最小。
由此可见,实现最小方差控制的关键在于输出预测。
由于最小方差控制不适用非最小相位系统,且输入控制量未受到约束,因此,在此基础上,出现了广义最小方差控制算法。
其基本思想为:
在求解控制律的性能指标中引入对控制量的加权项,从而限制控制作用过于激烈变化;
另外,只要适当选择性能指标中的各加权多项式,广义最小方差控制可以可以适用于非最小相位系统。
广义最小方差间接自校正控制算法如下[5]:
及纯延时d。
,输入初始数据,并设置加权多项式
2采样当前实际输出
和期望输出
3利用递推增广最小二乘法在线实时估计被控对象参数
4求解Diophantine方程
,得到多项式E、F和G的系数;
5利用式
计算并实施
6返回2(
),继续循环。
3.3广义最小方差间接自校正控制仿真
在上面系统辨识中已经知道电加热炉转的差分方程,故自校正控制中,被控对象电加热炉的动态方程同为
(2-9)
式中,
为白噪声。
取初值
设置加权多项式
期望输出
为幅值从0.5-10依次递增变化的方波。
具体程序如下(程序参考《系统辨识与自适应控制MATLAB仿真》,并进行了修改):
%广义最小方差自校正控制(间接算法)
clc;
c=[1];
nc=length(c)-1;
%na、nb、nc为多项式A、B、C阶次
nf=nb+d-1;
ng=na-1;
%nf、ng为多项式F、G的阶次
Pw=1;
R=1;
Q=0.01;
%加权多项式P、R、Q
np=length(Pw)-1;
nr=length(R)-1;
nq=length(Q)-1;
L=1200;
%控制步数
uk(i)表示u(k-i);
yrk=zeros(nc,1);
%期望输出初值
yr=10*[0.15*ones(L/8,1);
0.05*ones(L/8,1);
0.4*ones(L/8,1);
0.7*ones(L/8,1);
1*ones(L/8,1);
0.05*ones(L/8+d,1)];
%期望输出
vki=zeros(nc,1);
%白噪声初值
vkie=zeros(nc,1);
%白噪声估计初值
vk=sqrt(0.01)*randn(L,1);
%RLS初值
thetae_1=0.001*ones(na+nb+1+nc,1);
%非常小的正数,此处不能为0
P=10^7*eye(na+nb+1+nc);
time(k)=k;
y(k)=-a(2:
na+1)*yk+b*uk(d:
d+nb)+c*[vk(k)];
%c=[1],故用递推最小二乘法
phie=[-yk(1:
na);
K=P*phie/(1+phie'
*P*phie);
k)=thetae_1+K*(y(k)-phie'
P=(eye(na+nb+1+nc)-K*phie'
%提取辨识参数
ae=[1thetae(1:
na,k)'
];
be=thetae(na+1:
na+nb+1,k)'
;
ce=[1];
[e,f,g]=sindiophantine(ae,be,ce,d);
%求解单步Diophantine方程
CQ=conv(ce,Q);
FP=conv(f,Pw);
CR=conv(ce,R);
GP=conv(g,Pw);
%CQ=Ce*Q
u(k)=(-Q
(1)*CQ(2:
nc+nq+1)*uk(1:
nc+nq)/be
(1)-FP(2:
np+nf+1)*uk(1:
np+nf)...
+CR*[yr(k+d:
k+d-min(d,nr+nc));
yrk(1:
nr+nc-d)]...
-GP*[y(k);
yk(1:
np+ng)])/(Q
(1)*CQ
(1)/be
(1)+FP
(1));
%求控制量
uk
(1)=u(k);
figure
(1);
subplot(2,1,1);
plot(time,yr(1:
L),'
r:
'
time,y);
y_r(k)、y(k)'
y_r(k)'
y(k)'
axis([0L-212]);
subplot(2,1,2);
plot(time,u);
u(k)'
axis([0L-2030]);
figure
(2)
ylabel('
参数估计a1、b0'
legend('
a1'
b0'
axis([0L-1.50.2]);
其中sindiophantine函数程序为:
function[e,f,g]=sindiophantine(a,b,c,d)
%*********************************************************
%功能:
单步Diophanine方程的求解
%调用格式:
[e,f,g]=sindiophantine(a,b,c,d)
%输入参数:
多项式A、B、C系数(行向量)及纯滞后(共4个)
%输出参数:
Diophanine方程的解e,f,g(共3个)
%A、B、C的阶次
ne=d-1;
%E、G的阶次
ad=[a,zeros(1,ng+ne+1-na)];
cd=[c,zeros(1,ng+d-nc)];
%令a(na+2)=a(na+3)=...=0
e
(1)=1;
fori=2:
ne+1
e(i)=0;
forj=2:
i
e(i)=e(i)+e(i+1-j)*ad(j);
e(i)=cd(i)-e(i);
%计算ei
fori=1:
ng+1
g(i)=0;
forj=1:
g(i)=g(i)+e(ne+2-j)*ad(i+j);
g(i)=cd(i+d)-g(i);
%计算gi
f=conv(b,e);
%计算F
分别设置不同方差的白噪声,运行程序,其仿真结果如图3.1-3.3所示:
图3.1白噪声方差为0.01时的仿真输出和控制结果图和参数辨识结果图
图3.2白噪声方差为0.1时的仿真输出和控制结果图和参数辨识结果图
图3.3白噪声方差为1时的仿真输出和控制结果图和参数辨识结果图
不同白噪声下的具体数据如表3.1所示:
表3.1
-0.9612
0.0167
-0.9639
0.0155
-0.9688
0.0158
由以上仿真结果可以看出随着白噪声方差的增大,其在线辨识结果越来越远离真实值,系统输出波形的品质越来越差,也与期望输出相差越来越大。
参考资料
[1]刁鹏飞.电加热炉的单神经元自适应PID控制.硕士学位论文,2000.
[2]朱琳.温控系统仿真实验平台研究与实现.硕士学位论文,2008.
[3]方康玲.过程控制与离散系统.电子工业出版社,2009.
[4]杨承志.系统辨识与自适应控制.重庆大学出版社,2003.
[5]庞中华.系统辨识与自适应控制MATLAB仿真.北京航空航天大学出版社,2009.
[6]陈永秀.伺服转台温控箱控制系统设计与研究.硕士学位论文,2008.
[7]方崇智、萧德云.过程辨识.清华大学出版社,1988.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 加热炉 系统 辨识 自适应 控制 资料