欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: MATLAB Pid仿真實(shí)驗(yàn) [打印本頁]

作者: 51黑ss    時(shí)間: 2016-3-30 23:27
標(biāo)題: MATLAB Pid仿真實(shí)驗(yàn)
      
一實(shí)驗(yàn)要求:
學(xué)習(xí)PID控制器的基本原理,掌握PID參數(shù)的物理調(diào)節(jié)規(guī)律,通過仿真驗(yàn)證PID調(diào)節(jié)過程。選擇例題中的任意兩個(gè)實(shí)驗(yàn)進(jìn)行仿真研究,改變參數(shù)后觀察系統(tǒng)的動(dòng)態(tài)性能和穩(wěn)態(tài)性能的變化,確認(rèn)是否和理論分析一致。
二實(shí)驗(yàn)內(nèi)容
實(shí)驗(yàn)一:選擇chap-9.m作為pid調(diào)節(jié)。
1代碼:
%PID Controller with changing integration rate
clear all;
close all;
%Big time delay Plant
ts=20;
sys=tf([1],[60,1],'inputdelay',80);
dsys=c2d(sys,ts,'zoh');
[num,den]=tfdata(dsys,'v');

u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;
y_1=0;y_2=0;y_3=0;
error_1=0;error_2=0;
ei=0;

for k=1:1:200
time(k)=k*ts;
rin(k)=1.0;  %Step Signal
%Linear model
yout(k)=-den(2)*y_1+num(2)*u_5;
error(k)=rin(k)-yout(k);
kp=0.45;kd=12;ki=0.0048;
A=0.4;B=0.6;
%T type integration
ei=ei+(error(k)+error_1)/2*ts;
M=1;
if M==1     %Changing integration rate
if abs(error(k))<=B
   f(k)=1;
elseif abs(error(k))>B&abs(error(k))<=A+B
   f(k)=(A-abs(error(k))+B)/A;
else
   f(k)=0;
end
elseif M==2  %Not changing integration rate
    f(k)=1;
end
u(k)=kp*error(k)+kd*(error(k)-error_1)/ts+ki*f(k)*ei;
if u(k)>=10
   u(k)=10;
end
if u(k)<=-10
   u(k)=-10;
end
%Return of PID parameters
u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);   
y_3=y_2;y_2=y_1;y_1=yout(k);  
error_2=error_1;
error_1=error(k);
end
figure(1);
plot(time,rin,'b',time,yout,'r');
xlabel('time(s)');ylabel('rin,yout');
figure(2);
plot(time,f,'r');
xlabel('time(s)');ylabel('Integration rate f');
2實(shí)驗(yàn)結(jié)果
在沒有更改代碼的情況下,實(shí)驗(yàn)的效果如圖一所示。
圖一
改變kp
(1)增大kp,理論上可以看到pid調(diào)節(jié)的更快更陡。實(shí)際效果如圖2。Kp=3.
圖2
實(shí)際上產(chǎn)生了自激震蕩,說明kp不能調(diào)的過大,否則系統(tǒng)會(huì)不穩(wěn)定。
(2)減小kp,理論上系統(tǒng)調(diào)節(jié)緩慢,會(huì)產(chǎn)生超調(diào)量,調(diào)節(jié)曲線不平滑,有毛刺。Kp=0.1
                              圖3
實(shí)際上也證明比例系數(shù)太小,系統(tǒng)變化時(shí)調(diào)節(jié)相對(duì)緩慢。
改變kd
(1)增大kd,理論上系統(tǒng)穩(wěn)定時(shí)波動(dòng)很大,精度不高,且有很多毛刺與抖動(dòng)。Kd=30.
                     圖4
實(shí)際上系統(tǒng)開始調(diào)節(jié)時(shí)會(huì)有些尖峰,調(diào)節(jié)曲線不平滑。
(2)減小kd,理論上系統(tǒng)調(diào)節(jié)穩(wěn)定時(shí)變化緩慢,會(huì)有些超調(diào)量。Kd=3.
                      圖5
實(shí)際上也可以看出減小kd對(duì)系統(tǒng)影響不大,只是在系統(tǒng)剛進(jìn)入穩(wěn)定狀態(tài)時(shí)有一個(gè)小小的超調(diào)量。
改變ki
(1)增大ki,積分變大,系統(tǒng)系統(tǒng)變得不穩(wěn)定,抖動(dòng)波動(dòng)很厲害。
                         圖6
實(shí)際上可以其變化幅度大,超調(diào)量很高,系統(tǒng)很不穩(wěn)定。
(2)減小ki,系統(tǒng)調(diào)節(jié)變慢,系統(tǒng)可能無法調(diào)節(jié)。
                           圖7
系統(tǒng)無法達(dá)到設(shè)定的穩(wěn)態(tài)值,無法調(diào)節(jié)。
實(shí)驗(yàn)二:選擇char2_1.m作為實(shí)驗(yàn)
1代碼:
%Series System Control
clear all;
close all;
ts=2;
sys1=tf(1,[10,1]);
dsys1=c2d(sys1,ts,'z');
[num1,den1]=tfdata(dsys1,'v');
sys2=tf(1,[10,1]);
dsys2=c2d(sys2,ts,'z');
[num2,den2]=tfdata(dsys2,'v');
dph=1/zpk('z',ts);
Gc2=dph/(dsys2*(1-dph));
[nump,denp]=tfdata(Gc2,'v');
u1_1=0.0;u2_1=0.0;
y1_1=0;y2_1=0;
e2_1=0;ei=0;
for k=1:1:2000
time(k)=k*ts;
r1(k)=1;                           
%Linear model
y1(k)=-den1(2)*y1_1+num1(2)*y2_1;  %Main plant
y2(k)=-den2(2)*y2_1+num2(2)*u2_1;  %Assistant plant
error(k)=r1(k)-y1(k);
ei=ei+error(k);
u1(k)=1.2*error(k)+0.02*ei;   %Main Controller
e2(k)=u1(k)-y2(k);            %Assistant Controller
u2(k)=-denp(2)*u2_1+nump(1)*e2(k)+nump(2)*e2_1;
d2(k)=0.01*rands(1);
u2(k)=u2(k)+d2(k);
%----------Return of PID parameters------------
u1_1=u1(k);
u2_1=u2(k);
e2_1=e2(k);
y1_1=y1(k);
y2_1=y2(k);
end
figure(1);     %Assistant Control
plot(time,u1,'b',time,y2,'r');
xlabel('time(s)');ylabel('u1,y2');
figure(2);     %Main Control
plot(time,r1,'b',time,y1,'r');
xlabel('time(s)');ylabel('r1,y1');
figure(3);
plot(time,d2,'r');
xlabel('time(s)');ylabel('disturbance');
2實(shí)驗(yàn)效果
在沒有更改遠(yuǎn)代碼的情況下,實(shí)驗(yàn)的結(jié)果如下所示
                       圖8
第3個(gè)圖是隨機(jī)數(shù)的隨時(shí)間的分布。
同理,改變kp,ki的值,系統(tǒng)會(huì)發(fā)生改變。
改變kp
(1)增大kp,系統(tǒng)變化會(huì)更快,會(huì)有超調(diào)量。Kp=3.
                            圖9
實(shí)際沒有發(fā)現(xiàn)系統(tǒng)有超調(diào)量,但在系統(tǒng)開始調(diào)節(jié)得時(shí)候會(huì)會(huì)產(chǎn)生尖峰脈沖,系統(tǒng)調(diào)節(jié)很快。
(2)減小kp,系統(tǒng)調(diào)節(jié)緩慢,但系統(tǒng)穩(wěn)定。
                    圖10
結(jié)果可以看出系統(tǒng)調(diào)節(jié)很穩(wěn)定,但調(diào)節(jié)時(shí)間有點(diǎn)長(zhǎng)。
該變kd
(1)增大ki,系統(tǒng)很快達(dá)到穩(wěn)定,調(diào)節(jié)速度快.ki=0.2
                      圖11
結(jié)果顯示系統(tǒng)在轉(zhuǎn)換開始時(shí)系統(tǒng)產(chǎn)生了尖峰脈沖,然后很快地達(dá)到穩(wěn)定。
(2)減小ki,系統(tǒng)會(huì)很慢的達(dá)到穩(wěn)定.ki=0.005。
                      如圖12
結(jié)果顯示系統(tǒng)經(jīng)過相當(dāng)漫長(zhǎng)的時(shí)間達(dá)到了穩(wěn)定狀態(tài)。
三實(shí)驗(yàn)感想
通過此在MATLAB上運(yùn)用pid,對(duì)pidd的實(shí)際作用有了基本了解。對(duì)于kp,要選取的合適,不能過大,否則會(huì)產(chǎn)生震蕩,過小可能會(huì)產(chǎn)生超常量,調(diào)節(jié)緩慢。對(duì)于kd,太大了產(chǎn)生毛刺抖動(dòng),太小了會(huì)有些超常量。對(duì)于ki,太大了調(diào)節(jié)很快,但會(huì)產(chǎn)生過沖,尖峰脈沖,太小了調(diào)節(jié)很慢,可能無法調(diào)試達(dá)到穩(wěn)定狀態(tài)。
總結(jié)這三點(diǎn),在調(diào)試pid時(shí),kp應(yīng)從小到大調(diào)試,kd從小到大調(diào)試,ki從小到大調(diào)試。每次只調(diào)一個(gè)參數(shù),直到最滿意的時(shí)候,再調(diào)下個(gè)參數(shù)。

   







歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1