...
Seuraavaksi suunnitellaan PID-säädin ja lisätään se järjestelmään. Luo ensin uusi m-tiedosto ja syötä seuraavat komennot (katso DC-moottorin mallia, josta löytyy tiedot miten kyseinen malli on tehty)
...
Yläpuolella olevasta kuvaajasta näemme, että sekä vakaan tilan että ylityksen virhe on liian suuri. Aiemmista esimerkeistä tiedämme että PID-säätimen integraali kertoimen (Ki) lisääminen poistaa vakaan tilan virheen ja derivointi kerroin (Kd) alentaa ylitystä. Testataan PID-säädintä pienillä Ki ja Kd arvoilla. Muuta m-tiedostoa seuraavanlaiseksi:
Code Block |
---|
J=0.01;
b=0.1;
K=0.01;
R=1;
L=0.5;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];
motor=tf(num,den);
Kp=100;
Ki=1;
Kd=1;
saadin=tf([Kd Kp Ki],[1 0]);
sys_cl=feedback(saadin*motor,1);
step(sys_cl)
title('PID_säädin pienellä Ki ja Kd arvolla')
|
...
Nyt asettumisaika on liian pitkä. Ki termiä kasvattamalla voimme alentaa asettumisaikaa. Muuta m-tiedostossa Ki arvoon 200. Suorita jälleen komentoikkunassa ohjelma ja kuvaajan pitäisi näyttää seuraavalta:
Nyt näemme että reagointi on paljon nopeampaa kuin aikaisemmin. Suuri Ki:n arvo on kuitenkin huonontanut kasvattanut ylitystä. Seuraavaksi suurennetaan Kd arvoa jolla voidaan pienentää ylitystä. Muuta m-tiedostossa Kd arvo 100. Suorita ohjelma ja kuvaajan pitäisi näyttää seuraavanlaiselta:
...
Tulevat kaikki vaatimukset täytetyksi.