当前位置:文档之家› PID控制器设计

PID控制器设计

PID 控制器设计
PID 控制器设计
被控制对象的建模与分析
在脑外科、眼科等手术中,患者肌肉的无意识运动可能会导致灾难性的后果。

为了保证合适的手术条件,可以采用控制系统自动实施麻醉,以保证稳定的用药量,使患者肌肉放松,图示为麻醉控制系统模型。

图1结构框图
被控制对象的控制指标
取τ=0.5,k=10,要求设计PID 控制器使系统调节时间t s ≤8s,超调量σ%不大于15%,并且输出无稳态误差。

控制器的设计
PID 控制简介
PID 控制中的积分作用可以减少稳态误差, 但另一方面也容易导致积分饱和, 使系统的超调量增大。

微分作用可提高系统的响应速度, 但其对高频干扰特别敏感, 甚至会导致系统失稳。

所以, 正确计算控制器的参数, 有效合理地实现 PID 控制器的设计,对于PID 控制器在过程控制中的广泛应用具有重要的理论和现实意义。

在PID 控制系统中, PID 控制器分别对误差信号e (t )进行比例、积分与微分运算, 其结果的加权和构成系统的控制信号u (t ),送给对象模型加以控制。

PID 控制器的数学描述为
其传递函数可表示为:
1
1.0)
1.0(++s s k τ
)1.0()15.0(1
2++s s
控制器

药物
输入
R(s ) 预期松弛程度 C(s)
实际松弛程度
+
-
从根本上讲, 设计PID 控制器也就是确定其比例系数Kp 、积分系数T i 和微分系数T d , 这三个系数取值的不同, 决定了比例、积分和微分作用的强弱。

控制系统的整定就是在控制系统的结构已经确定、控制仪表和控制对象等处在正常状态的情况下, 适当选择控制器的参数使控制仪表的特性和控制对象的特性相配合, 从而使控制系统的运行达到最佳状态, 取得最好的控制效果。

下面介绍基于MATLAB 的 Ziegler-Nichols 算法PID 控制器设计。

原系统开环传递函数G(s)=)1.0)(15.0)(11.0(10
+++s s s
做原系统零极点图
图2原系统零极点图
根据Ziegler — Nichols整定公式在M文件下编写一个MATLAB函数ziegler_std ( ) 并保存为ziegler_std.m:
function [num,den,Kp,Ti,Td,H]=Ziegler_std (key,vars)
Ti=[ ];Td=[ ];H=[ ];
K=vars(1) ;
L=vars(2) ;
T=vars (3);
a=K*L/T;
if key==1
num=1/a; %判断设计P 控制器
elseif key==2
Kp=0.9/a;Ti=3.33*L; %判断设计PI 控制器
elseif key==3,
Kp=1.2/a;Ti=2*L;Td=L/2; %判断设计PID控制器
end
switch key
case 1
num=Kp;den=1; % P控制器
case 2
num=Kp*[Ti,1];den=[Ti,0]; % PI控制器
case 3 % PID控制器
p0=[Ti*Td,0,0];
p1=[0,Ti,1];p2=[0,0,1];
p3=p0+p1+p2;
p4=Kp*p3;
num=p4/Ti;
den=[1,0];
end
在MATLAB中command window下输入下列语句可得原函数的阶跃响应曲线以及K的值如下:
num=10;den=conv([0.1,1],conv([0.5,1],[1,0.1]));
>> step(num,den);K=dcgain(num,den)
K=100
图3原系统单位阶跃响应曲线
由此可得K=100,L=0.5,T=11.5,从而T KL
=
α=4.3478,可用MATLAB 语言求
出K p ,T i 以及T d 的值如下:
K=100;L=0.50;T=11.5;[num,den,Kp,Ti,Td]=Ziegler_std(3,[K,L,T]) num =
0.0690 0.2760 0.5520 den = 1 0 Kp = 0.2760 Ti = 1 Td = 0.2500
由此得出PID 控制器的三个参数,从而可得PID 控制器传递函数为
)25.01
1(276.0s s G PID
++=,分别作出加入PID 控制器前后控制系统的单位阶
响应曲线:
图4. 未加入PID控制器时系统结构图
图5. 未加入PID控制器时系统单位阶跃响应曲线
图6. 加入PID控制器后系统结构图
图7.加入PID控制器后系统单位阶跃响应曲线
由以上加入PID控制器前后所得系统单位阶跃响应曲线对比知,未加入PID控
t s=55s,加入PID控制器后系统存在较大稳态误差, 且超制器时系统调节时间
调量σ%大于15%,
t=28s,因此所得PID控制器不满足要求,通过不断改变
s
PID控制器各参数最终获得比较满意的效果如下:
图8.改变PID控制器参数后系统结构图
图9.改变PID控制器参数后系统单位阶跃响应曲线
由此知,当将各参数改为K p =4,T i =0.22以及T d =1.2时系统可获得较好的特
性,此时)2.122.01
1(4s s G PID ++
=,由系统单位阶跃响应曲线知,加入此PID 控制器后系统调节时间t s =6.5s, 超调量σ%≈8%,且无稳态误差,而未加入PID 控制器时系统调节时间t s =28s ,由此知,加入此PID 控制器后系统响应速度明显提高,性能得到很大改善,故此PID 控制器满足系统要求。

结论
从系统接入PID 控制器前后的阶跃响应曲线中, 我们可以明显地看到系统性能的改善。

通过这次实习,我深深认识到利用MATLAB 可以实现PID 控制器的离线设计和整定, 并可实现实验室仿真的方便,若用实际电路进行尝试,将费力费时,同时成本也会很高,利用仿真软件很好的克服了这一缺点,可以直接离线设计,给控制系统的设计带来很大的方便,并且一个理想控制器的设计很难一次性设计成功,需要一次次不断改变参数进行尝试,最终才可获得满意的结果。

通过不断的调试,我明白了增大T i 可减小稳态误差,适当增大K p 可缩短调节时间,适当增大T d 可减小超调量。

这次实习使我明白,任何事都要靠自己,只有自己的知识才是真正的知识,这让我在以后的学习生活中有了更好的动力,感谢老师的耐心教导。

参考文献
胡寿松 自动控制原理第五版同步辅导及习题全解 中国矿业大学出版社。

相关主题