數(shù)字PID控制器的設(shè)計(jì)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? 數(shù)字PID控制器的設(shè)計(jì)
一、實(shí)驗(yàn)?zāi)康模?/strong>
1. 理解晶閘管直流單閉環(huán)調(diào)速系統(tǒng)的數(shù)學(xué)模型和工作原理;
2. 掌握PID 控制器參數(shù)對控制系統(tǒng)性能的影響;
3. 能夠運(yùn)用MATLAB/Simulink 軟件對控制系統(tǒng)進(jìn)行正確建模并對模塊進(jìn)行正確的參數(shù)設(shè)置;
4. 掌握計(jì)算機(jī)控制仿真結(jié)果的分析方法。
二、實(shí)驗(yàn)工具:
MATLAB 軟件(6.1 以上版本)。
三、實(shí)驗(yàn)原理:
如圖3-1所示,PID 控制器根據(jù)偏差的比例(P)、積分(I)、微分(D)對G(s)的輸出y(t)進(jìn)行控制和跟蹤
? ??


四、實(shí)驗(yàn)內(nèi)容
(1)如圖3-2所示,以單閉環(huán)調(diào)速系統(tǒng)為例,完成模擬PID 控制器的設(shè)計(jì),并運(yùn)用Matlab
軟件對該調(diào)速系統(tǒng)的P、I、D 控制作用進(jìn)行分析。

(2)數(shù)字PID 控制器的設(shè)計(jì)及性能分析。
(3)模擬PID 與數(shù)字PID 控制效果分析。
五、 實(shí)驗(yàn)步驟
模擬PID的設(shè)計(jì)與仿真
比例P的控制作用
為分析純比例P控制器的作用,考察當(dāng)dT=0,Ti=∞,Kp=1~5時(shí)對系統(tǒng)階躍響應(yīng)的影響
G1=tf(1,[0.017 1]);
G2=tf(1,[0.075 0]);
G12=feedback(G1*G2,1);
G3=tf(44,[0.00167 1]);
G4=tf(1,0.1925);
G=G12*G3*G4;
Kp=[1:1:5];
for i=1:length(Kp)
Gc=feedback(Kp(i)*G,0.01178);
step(Gc),hold on
end
axis([0 0.2 0 130]);
gtext(['1Kp=1'])
gtext(['2Kp=2'])
gtext(['3Kp=3'])
gtext(['4Kp=4'])
gtext(['5Kp=5'])

比例積分(PI)控制,積分控制作用分析
G1=tf(1,[0.017 1]);
G2=tf(1,[0.075 0]);
G12=feedback(G1*G2,1);
G3=tf(44,[0.00167 1]);
G4=tf(1,0.1925);
G=G12*G3*G4;
Kp=1;
Ti=[0.03:0.01:0.07];
for i=1:length(Ti)
Gc=tf(Kp*[Ti(i) 1],[Ti(i) 0]);
Gcc=feedback(G*Gc,0.01178);
step(Gcc),hold on
end
gtext(['1Ti=0.03']),
gtext(['2Ti=0.04']),
gtext(['3Ti=0.05']),
gtext(['4Ti=0.06']),
gtext(['5Ti=0.07']),

比例積分微分(PID)控制,微分控制作用分析
G1=tf(1,[0.017 1]);
G2=tf(1,[0.075 0]);
G12=feedback(G1*G2,1);
G3=tf(44,[0.00167 1]);
G4=tf(1,0.1925);
G=G12*G3*G4;
Kp=0.01;
Ti=0.01;
Td=[12:36:84];
for i=1:length(Td)
Gc=tf(Kp*[Ti*Td(i) Ti 1],[Ti 0]);
Gcc=feedback(G*Gc,0.01178);
step(Gcc),hold on
end
gtext(['1Td=12']),
gtext(['2Td=48']),
gtext(['3Td=84']),

數(shù)字PID的設(shè)計(jì)與仿真
比例(P)控制作用,設(shè)采樣周期為0.001s。
G1=tf(1,[0.017 1]);
G2=tf(1,[0.075 0]);
G12=feedback(G1*G2,1);
G3=tf(44,[0.00167 1]);
G4=tf(1,0.1925);
G=G12*G3*G4;
Kp=[1:1:5];
ts=0.001;
for i=1:length(Kp)
Gc=feedback(Kp(i)*G,0.01178);
Gcc=c2d(Gc,ts,'zoh');
step(Gcc),hold on
end
axis([0 0.2 0 130]);
gtext(['1Kp=1']),
gtext(['2Kp=2']),
gtext(['3Kp=3']),
gtext(['4Kp=4']),
gtext(['5Kp=5']),

比例積分(PI)控制,積分控制作用分析,設(shè)采樣周期為0.001s。
G1=tf(1,[0.017 1]);
G2=tf(1,[0.075 0]);
G12=feedback(G1*G2,1);
G3=tf(44,[0.00167 1]);
G4=tf(1,0.1925);
G=G12*G3*G4;
Kp=1;
Ti=[0.03:0.01:0.07];
ts=0.001;
for i=1:length(Ti)
Gc=tf(Kp*[Ti(i) 1],[Ti(i) 0]);
Gcc=feedback(G*Gc,0.01178);
Gccd=c2d(Gcc,ts,'zoh');
step(Gccd),hold on
end
axis([0,0.6,0,140]);
gtext(['1Ti=0.03']),
gtext(['2Ti=0.04']),
gtext(['3Ti=0.05']),
gtext(['4Ti=0.06']),
gtext(['5Ti=0.07']),

比例積分微分(PID)控制,微分控制作用分析,設(shè)采樣周期為0.05s
G1=tf(1,[0.017 1]);
G2=tf(1,[0.075 0]);
G12=feedback(G1*G2,1);
G3=tf(44,[0.00167 1]);
G4=tf(1,0.1925);
G=G12*G3*G4;
Kp=0.01;
Ti=0.01;
Td=[12:36:84];
ts=0.05;
for i=1:length(Td)
Gc=tf(Kp*[Ti*Td(i) Ti 1],[Ti 0]);
Gcc=feedback(G*Gc,0.01178);
Gccd=c2d(Gcc,ts,'zoh');
step(Gccd),hold on
end
axis([0 20 0 100]);
gtext(['1Td=12']),
gtext(['2Td=48']),
gtext(['3Td=84']),
