软件设计高月.docx
《软件设计高月.docx》由会员分享,可在线阅读,更多相关《软件设计高月.docx(9页珍藏版)》请在冰豆网上搜索。
软件设计高月
软件设计报告
班级:
自控1105班
姓名:
高月
学号:
2011014152
目录
目录2
一、题目3
二、原理4
1、增量式PID控制原理4
2、继电法整定PID参数4
三、程序设计7
1、程序设计详单7
(1)增量式PID控制程序7
(2)整定9
四、结果展示与分析9
五、体会11
六、参考文献12
一、题目
题目10:
连铸机拉矫辊的液压压下装置是一个电液伺服系统,是实现复杂自动控制动作的关键,在冶金行业中有着广泛的应用。
通过机理分析可知,该电液伺服控制系统实际是一个非线性控制系统,经过线性化处理后,其传递函数形式为:
根据现场实测数据可知,该液压压下控制系统中增益K=8,阻尼比ζ=0.3,固有频率ω=200rad/s。
该系统常采用PID控制,其中PID参数的选取对控制效果的影响至关重要。
控制目标是实现对压力的连续可调,超调小,并保证无静态误差。
控制要求:
1.采用增量式PID控制算法实现炉温控制
2.采用继电法整定PID参数
3.整定效果验证:
当工作时间到达200s时,输出端出现宽度为50s,幅值为0.4的干扰时,讨论PID控制的抗扰动性,说明上述PID参数是否选取合适。
二、原理
1、增量式PID控制原理
在工业控制中,按偏差的比例、积分、微分进行控制的PID控制具有原理简单,易于、适用面较宽等优点,多年来一直是应用最广泛的一种控制器。
在本设计中,运用程序编写控制方案。
由于计算机控制系统在时间上是离散的,控制器每隔一个控制周期进行一次控制量的计算并输出到执行机构。
运用增量型PID控制算法,可知:
Δu(k)=u(k)-u(k-1)
=Kc{[e(k)-e(k-1)]+(T/Ti)*e(k)+(Td/T)*[e(k)-2e(k-1)+e(k-2)]}
或写为
Δu(k)=Kc[e(k)-e(k-1)]+Kie(k)+Kd[e(k)-2e(k-1)+e(k-2)]
其中Ki=KcT/Ti………………………………
(1)
Kd=KcTd/T………………………………
(2)
2、继电法整定PID参数
上图所示为继电型PID自整定结构,当开关开向整定时,得到系统临界信息震荡幅值A和震荡频率ωC;而当开关切向控制时,此时系统按照PID控制方式运行,由PID控制器对系统的动态性能进行调节。
开关整定切换到控制时,这中间就需要我们利用得到的系统临界信息整定出PID控制器参数值。
这里面包含两个步骤:
确定整定过程中的临界信息和确定PID控制器的参数值。
临界信息的确定:
使系统的闭环特征方程发生振荡的条件可以写成:
1+N(A)G(s)︱s=jωc=0
即:
G(jωC)=-1/N(A)
令该式的实部和虚部分别等于零,则可以得出振荡频率ωC和振荡幅值A。
假设继电非线性环节不带有滞环,即若设ε=0,则描述函数可以简化成:
N(A)=4M/πA,这时可立即求出振荡频率ωC并求出临界周期Tu及临界增益KC:
下面来对本设计进行详细计算说明:
其中:
K=8,ζ=0.3,ω=200rad/s
则
c=200,
解得:
Tu=2
/
c
=0.0314,Ku=
PID控制器参数值的确定:
PID的参数可能根据经验公式得出:
控制器
Kc
Ti
Td
P
0.5Ku
PI
0.4Ku
0.8Tu
PID
0.6Ku
0.5Tu
0.12Tu
然后进一步根据公式(1)和(2)可得出PID参数以及Ki、Kd如下:
控制器
Kc
Ti
Td
Ki
Kd
P
7.5
PI
6
0.02512
1.2
PID
9
0.0157
0.003768
2.57
6.78
三、程序设计
1、程序设计详单
(1)增量式PID控制程序
clearall;closeall;
ts=0.01;%采样时间0.01s
%比例作用
kp=7.5;
Ti=99999;
Td=0;
sys=tf(320000,[1,120,40000,0]);%系统传递函数
dsys=c2d(sys,ts,'z');%求离散化传递函数
[num,den]=tfdata(dsys,'v');%求得离散传递函数的分子和分母
%设定初始值
u1=0;u2=0;u3=0;
y1=0;y2=0;y3=0;yy1=0;
e1=0;e2=0;
ki=kp*ts/Ti;%
(1)式
kd=kp*Td/ts;%
(2)式
A=kp*(1+ts/Ti+Td/ts);
B=-kp*(1+2*Td/ts);
C=kp*Td/ts;
fork=1:
300
t(k)=k*ts;
r(k)=1;%阶跃信号
y(k)=-den
(2)*y1-den(3)*y2-den(4)*y3+num
(2)*u1+num(3)*u2+num(4)*u3;%根据离散系统传函求出差分方程
D(k)=0;%干扰
yy(k)=y(k)+D(k);
e(k)=r(k)-yy(k);%计算偏差值
u(k)=A*e(k)+B*e1+C*e2;%对偏差进行PID计算
u(k)=u1+u(k);
u3=u2;u2=u1;u1=u(k);
y3=y2;y2=y1;y1=y(k);
yy1=yy(k);
e2=e1;e1=e(k);
end
figure
(1);
plot(t,r,'r',t,yy,'b');
xlabel('time/s');ylabel('输出响应');
ylim([02])
%比例积分作用
kp=6;
Ti=0.02512;
Td=0;
比例积分微分时同理:
%比例积分微分作用
kp=9;
Ti=0.0157;
Td=0.003768;
(2)整定效果验证
%干扰信号
ifk<=200
D(k)=0;
elseifk<=250
D(k)=0.4;
elseifk>250
D(k)=0;
end
四、结果展示与分析
整定效果验证(如下图):
只有比例(P)作用时:
由上图可见,在干扰处输出变化较大,而且不会回到给定值;
当进行比例积分(PI)控制时:
积分作用具有消除系统余差的能力,所以在克服偏差时的控制效果要比纯比例的好
当进行比例积分微分控制(PID)时:
图像发散,完全不可以消除干扰,不能用此方法控制。
结论:
由两组图像可知,比例积分的控制效果最好,无论是在稳定时间和克服扰动方面都很好,纯比例控制效果虽然在克服输入端单位阶跃时效果很好,但对于输出端的扰动无能为力;而加入微分作用后,系统趋向于发散。
是由于积分具有消除余差作用的能力,所以在克服偏差时的控制效果要比纯比例的好,而微分的作用是消除系统的滞后,而且加入微分后系统会趋向于不稳定,本题目中存在滞后,所以不宜加入微分作用。
五、体会
通过本次软件设计,我深有感触,不仅对Matlab的基本用法有了一定的了解,熟悉增量式PID的原理及其算法,会使用Matlab对其过程进行编程仿真,了解了继电法整定PID参数,知道如何对于传递函数设定适应的PID参数。
并且,这次动手操作,还锻炼了我分析、查找资料和排除编程错误的能力,让我今后可以更加熟练的使用Matlab。
六、参考文献
1、自动控制原理 厉玉鸣等 化学工业出版社
2、计算机控制系统 王慧化学工业出版社
3、基于继电型的PID参数模糊整定的研究张丽
4、先进PID控制及其MATLAB仿真程序刘金琨电子工业出版社