background image

Politechnika Śląska

              Gliwice, 2006/2007

Wydział: Automatyki, Elektroniki i Informatyki

Semestr: 6 (letni)

Kierunek: Automatyka i robotyka

Podstawy Automatyki

– laboratorium

Ćw. 1:  Elementy CAD UR – wprowadzenie do  Matlab-a.

Data ćwiczeń laboratoryjnych:

21.02.2007

Grupa: 1
Sekcja: 3

Skład osobowy sekcji:
Zięba Andrzej
Bojko Marcin

background image

1. Cel ćwiczenia:

Celem ćwiczenia było opanowanie podstawowych funkcji środowiska Matlab niezbędnych 

przy analizie i projektowaniu układów regulacji. W ramach sprawozdania miał powstać program 
realizujący poniższy program.

2. Program ćwiczenia:

Dla obiektu ciągłego o transmitancji: 

 s=

k

sT

1

1sT

2

1 sT

3

1

gdzie :k =3, T

1

=

2, T

2

=

5, T

3

=

10

Wzmocnienie „k” zostało narzucone, natomiast stałe czasowe T wybrano dowolnie (każda o innej 
wartości).

I. UKŁAD CIĄGŁY 
 Analiza układu otwartego: 

1.Wprowadzić transmitancję K(s). 
2. Przedstawić K(s) w różnych postaciach zapisu. 
3. Odpowiedź skokowa: 

a) transformata odpowiedzi skokowej 
b) rozkład na ułamki proste 
c) analityczna postać czasowa odpowiedzi 
d) przebieg odpowiedzi 

4. Narysować charakterystyki częstotliwościowe ( w osobnych oknach): 

a) amplitudowo-fazową 
b) logarytmiczną amplitudy oraz fazy 

 Analiza układu zamkniętego (regulator + obiekt + ujemne sprzężenie zwrotne) 

5. Sprawdzić stabilność metodami algebraicznymi – kryterium Hurwitza 
6. Wyznaczyć przebieg linii pierwiastkowych 

    Dla wzmocnienia regulatora kr = 2: 

7. Wyznaczyć zapas amplitudy oraz fazy 
8. Wyznaczyć transmitancję główną. 
9. Odpowiedź skokowa 

a) transformata odpowiedzi skokowej 
b) rozkład na ułamki proste 
c) analityczna postać czasowa odpowiedzi 
c) przebieg odpowiedzi 

10. Narysować przebieg wskaźnika nadążania (moduł transmitancji głównej)oraz wskaźnika regulacji ( moduł 
transmitancji uchybowej). 

II. UKŁAD DYSKRETNY 
 Analiza układu otwartego 
(impulsator idealny + ekstrapolator + obiekt) 

11. Wyznaczyć transmitancję dyskretną K(z) - Ti=0.5T1 
12. Odpowiedź skokowa 

a) transformata odpowiedzi skokowej 
b) rozkład na ułamki proste 
c) analityczna postać czasowa odpowiedzi odpowiedzi 
d) przebieg odpowiedzi 

13. Narysować charakterystykę amplitudowo-fazową 

 Analiza układu zamkniętego (impulsator idealny + ekstrapolator + regulator + obiekt + ujemne sprzężenie zwrotne) 

14. Wyznaczyć warunki stabilności (k

gr

). 

15. Wyznaczyć przebieg linii pierwiastkowych. 

    Dla kr = (0.5 - 0.75 )k

gr

 : 

16. Wyznaczyć transmitancję główną 
17. Odpowiedź skokowa 

a) transformata odpowiedzi skokowej 
b) rozkład na ułamki proste 
c) analityczna postać odpowiedzi 
d) przebieg odpowiedzi 

background image

3. Kod źródłowy programu:

Program został napisany w taki sposób że, umożliwione jest wpisanie większości typów 

transmitancji na kilka możliwych sposobów (wzorem od "s"; za pomocą wektorów 
współczynników licznika i mianownika; za pomocą wektorów zer, biegunów i wzmocnienia; za 
pomocą macierzy równań stanu). Wzmocnienie regulatora P jest stałe i dla układu zamkniętego 
ciągłego wynosi k

r

 = 2, a dla układu zamkniętego dyskretnego k

r

 zostało wyznaczone jako 57,15% 

wzmocnienia granicznego k

gr

 dla zadanej transmitancji K(s) obiektu (k

r

 = 1,8). Współczynnik 

okresu próbkowania impulsatora idealnego jest wybierany automatycznie jako połowa najmniejszej 
co do modułu stałej czasowej obiektu.

Kod źródłowy funkcji „step_d”:

function step_d(Kz,koniec,kolor);
%   step_d(Kz,t_koniec,kolor)
% Kz- transmitancja dyskretna zmiennej z
% t_koniec - czas koncowy symulacji
% Funkcja rysujaca odpowiedz skokowa układu dykretnego w postaci punktow 

if nargin==1
    koniec=Kz.Ts*10;
    kolor='b';
elseif nargin==2
    kolor='b';
end

rozmiar_palki=5; %6-domyslnie

ilosc=round(koniec/Kz.Ts);
[y,t] = step(Kz,0:Kz.Ts:ilosc*Kz.Ts);

%t=t/Kz.Ts;

plot([t t]',[zeros(length(y),1) y]',['-' kolor])
hold on
plot([t],[y]',['o' kolor],'MarkerFaceColor',kolor,'Markersize',rozmiar_palki)
hold off
xlabel('Czas [s]')
ylabel('Amplituda')

Kod źródłowy funkcji „trans2symb”:

function [symb] = trans2symb(L,M)
% Funkcja na podstawie wektorow wspolczynikow wielomianow licznika i
% mianownika zwraca transmitancje zapisana przy urzyciu zmiennej
% symbolicznej.
syms p symb_l symb_m;     % Zmienne symboliczne
[m,lL]=size(L);
[m,lM]=size(M);
symb_l=0;
symb_m=0;
for i=1:lL
    symb_l=symb_l+L(i)*p^(lL-i);
end
for i=1:lM
    symb_m=symb_m+M(i)*p^(lM-i);
end
symb=symb_l/symb_m;

background image

Kod źródłowy programu głównego „PA1”:

% PA lab 1:
clc;
clear all;
close all;

% 1) Wprowadzenie transmitancji K(s):
wariant=0;
s=tf('s');
while 1
    disp('Wybierz warjant wprowadzenia transmitancji obiektu K(s):');
    disp('  1 - Wzorem od "s";');
    disp('  2 - Za pomoca wektorow wspolczynnikow licznika i mianownika;');
    disp('  3 - Za pomoca wektorow zer, biegunow i wzmocnienia;');
    disp('  4 - Za pomoca macierzy rownan stanu.');
    wariant=input('Wariant --> ');
    disp(' ');
    if wariant==1
        K=input('K(s) = ')
        break;
    end
    if wariant==2
        L=input('Podaj wektor wspolczynnikow licznika   --> ');
        M=input('Podaj wektor wspolczynnikow mianownika --> ');
        K=tf(L,M)
        break;
    end
    if wariant==3
        Zera=input('Podaj wektor zer      --> ');
        Bieguny=input('Podaj wektor biegunow --> ');
        Wzmocnienie=input('Podaj wzmocnienie     --> ');
        K=zpk(Zera,Bieguny,Wzmocnienie)
        break;
    end
    if wariant==4
        A=input('Podaj macierz A --> ');
        B=input('Podaj macierz B --> ');
        C=input('Podaj macierz C --> ');
        D=input('Podaj macierz D --> ');
        % Zbudowanie transmitancji z macierzy rownan stanu.
        [L,M]=ss2tf(A,B,C,D);
        K=tf(L,M)
        break;
    end
end

disp(' ');
disp('ANALIZA OBIEKTU:');

% 2) Przedstawienie K(s) w roznych formach zapisu:
K=minreal(K);     % Skracanie zer i biegunow
disp(' ');
disp('Przedstawienie K(s) w roznych formach zapisu.');
disp(' ');
disp('  Transmitancja obiektu w postaci wielomianowej:');
tf(K)
[L,M]= tfdata(K,'v');   % Odzyskanie wspolczynnikow wielomianow licznika i mianownika
disp('  Transmitancja obiektu w postaci zera/bieguny/wzmocnienie:');
zpk(K)
[Zera,Bieguny,Wzmocnienie] = zpkdata(K,'v');    % Odzyskanie zer, biegunow i wzmocnienia
disp('  Opis w przestrzeni stanow:');

background image

[A,B,C,D]=tf2ss(L,M)
figure;
pzmap(K);   % Wyrysowanie rozkladu zer i biegunow

% 3) Odpowiedz skokowa:
% 3.a) Transformata odpowiedzi skokowej:
disp(' ');
disp('Transformata odpowiedzi skokowej:');
Kt=minreal(K*1/s)
[Los,Mos]=tfdata(Kt,'v');
% 3.b) Rozklad na ulamki proste:
disp('Rozklad na ulamki proste transformaty odpowiedzi skokowej:');
   % [R,P,K] = RESIDUE(B,A) finds the residues, poles and direct term of
   % a partial fraction expansion of the ratio of two polynomials B(s)/A(s).
   % If there are no multiple roots,
   %    B(s)       R(1)       R(2)             R(n)
   %    ----  =  -------- + -------- + ... + -------- + K(s)
   %    A(s)     s - P(1)   s - P(2)         s - P(n)
% Uwaga moga wystepowac podwojne bieguny.
[R_K,P_K,Reszta_K] = residue(Los,Mos)
% 3.c) Analityczna postac czasowa odpowiedzi skokowej:
disp('Analityczna postac czasowa odpowiedzi skokowej:');
  % ilaplace() - wyznaczenie postaci analitycznej z transformaty ze zmienna symboliczna
  % trans2symb() - funkcja tworzaca transformate ze zmienna symboliczna
  %  jej parametry to wspolczynniki licznika i wspolczynniki mianownika
kt=ilaplace(trans2symb(Los,Mos))
% 3.d) Przebieg czasowy odpowiedzi skokowej:
figure;
step(K);    % Wyrysowanie przebiegu odpowiedzi skokowej
title('Przebieg czasowy odpowiedzi skokowej dla transmitancji K(s)')
grid;

% 4) Rysowanie charakterystyk czestotliwosciowych:
% 4.a) Charakterystyka amlitudowo-fazowa:
figure;
nyquist(K);
% 4.b) Charakterystyki logarytmiczne amplitudy oraz fazy:
figure;
bode(K);    % Charakterystyki logarytmiczne amplitudy oraz fazy
figure;
bodemag(K); % Charakterystyka logarytmiczna amplitudy

% ANALIZA UKLADU ZAMKNIETEGO (regulator P + obiekt + ujemne sprzezenie zwrotne)
disp(' ');
disp('ANALIZA UKLADU ZAMKNIETEGO:');

% 5) Sprawdzenie stabilnosci analitycznie (w sprawozdaniu).

% 6) Wyznaczenie przebiegu linii pierwiastkowych:
figure;
rlocus(K);

% Wzmocnienie regulatora kr=2.
% 7) Wyznaczenie zapasu fazy i amplitudy:
kr=2;
Ko=K*kr;
figure;
nyquist(Ko); % => odczytac zapas fazy (narysowac kolo jednostkowe) i amplitudy (w decybelach)
figure;
bode(Ko); % => Powtorzyc odczyt

% 8) Wyznaczyć transmitancje glowna:
disp('Transmitancja glowna G(s)=Y(s)/W(s)');

background image

G=minreal(Ko/(1+Ko))
disp('Transmitancja glowna G(s) (zera, bieguny, wzmocnienie)');
zpk(G)
% Wyznaczenie transmitancji uchybowej:
Ge=minreal(1/(1+Ko));

% 9) Odpowiedz skokowa:
% 9.a) Transformata odpowiedzi skokowej:
disp(' ');
disp('Transformata odpowiedzi skokowej:');
Gt=minreal(G*1/s)
[Los_G,Mos_G]=tfdata(Gt,'v');
% 9.b) Rozklad na ulamki proste:
disp('Rozklad na ulamki proste transformaty odpowiedzi skokowej:');
[R_G,P_G,Reszta_G] = residue(Los_G,Mos_G)
% 9.c) Analityczna postac czasowa odpowiedzi skokowej:
disp('Analityczna postac czasowa odpowiedzi skokowej:');
gt=ilaplace(trans2symb(Los_G,Mos_G))
% 9.d) Przebieg czasowy odpowiedzi skokowej:
figure;
step(G);    % Wyrysowanie przebiegu odpowiedzi skokowej
title('Przebieg czasowy odpowiedzi skokowej dla transmitancji G(s)')
grid;

% 10) Narysowanie przebiegu wskaznika nadazania i wskaznika regulacji:
figure;
bodemag(G);
title('Wskaznik nadazania');
figure;
bodemag(Ge);
title('Wskaznik tlumienia zaklocen');

% ANALIZA UKLADU DYSKRETNEGO OTWARTEGO (impulsator idealny + ekstrapolator + obiekt)
disp(' ');
disp('ANALIZA UKLADU DYSKRETNEGO OTWARTEGO:');

% 11) Wyznaczenie transmitancji dyskretnej K(z) dla Ti=0,5*T1:
disp(' ');
disp('Transmitancja dyskretna H(z):');
% Przyjmujemy ze T1 jest najmniejsza stala czasowa w mianowniku K(s).
% Zeby ja odzyskac posluzono sie biegunami transmitancji K(s).
Ti=0.5/max(abs(Bieguny));
H=c2d(K,Ti,'zoh')   % Zamiana transmitancji ciaglej na dyskretna
disp(' ');
disp('Transmitancja dyskretna H(z) (postac zera, bieguny i wzmocnienie):');
zpk(H)

% 12) Analiza odpowiedzi skokowej:
% 12.a) Transmitancja odpowiedzi skokowej:
skok_dyk=tf([1 0],[1 -1],Ti);
disp('Transformata odpowiedzi skokowej:')
Ht=minreal(H*skok_dyk)
% 12.b) Rozklad na ulamki proste:
disp(' ');
disp('Rozklad na ulamki proste:');
[L_H,M_H] = tfdata(H,'v');
[R_H,P_H,Reszta_H] = residue(L_H,M_H)
% 12.c) Analityczna postac odpowiedzi skokowej obiektu dyskretnego:
disp('Analityczna postac odpowiedzi skokowej obiektu dyskretnego:')
ht=iztrans(trans2symb(L_H,M_H))
% 12.d) Przebieg odpowiedzi skokowej obiektu dyskretnego:
figure;
step_d(H,59,'r'); 

background image

title('Odpowiedz skokowa H(z)'); 
grid;

% 13) Charakterystyka amplitudowo fazowa:
figure;
nyquist(H);
title('Nyqiust ukladu dykretnego');

% ANALIZA ZAMKNIETEGO UKLADU DYSKRETNEGO:
disp(' ');
disp('ANALIZA UKLADU DYSKRETNEGO ZAMKNIETEGO:');

% 14) Sprawdzenie stabilnosci analitycznie (w sprawozdaniu) => kgr=?.

% 15) Wyznaczyc przebiegi linii pierwiastkowych:
figure;
rlocus(H);
title('Linie pierwiastkowe dla ukladu dyskretnego');

% Przyjmujemy kr=(0.5 - 0.75)kgr
kgrh=1.8; % kgr = 3.15; kgrh=0.5715*3.15 (okolo 1,8)

% 16) Wyznaczenie transmitancji glownej:
Ho=H*kgrh;
disp(' ');
disp('Transmitancja dyskretna Hz(z) ukladu zamknietego:');
Hz=minreal(Ho/(1+Ho))
disp(' ');
disp('Transmitancja dyskretna Hz(z) ukladu zamknietego (postac zera, bieguny i wzmocnienie):');
zpk(Hz)

% 17) Odpowiedz skokowa:
% 17.a) Transformata odpowiedzi skokowej zamknietego ukladu:
disp('Transformata odpowiedzi skokowej zamknietego ukladu dyskretnego Hz(z)');
Ht=minreal(Hz*skok_dyk) 
% 17.b) Rozklad na ulamki proste:
disp(' ');
disp('Rozklad na ulamki proste:');
[L_Hz,M_Hz] = tfdata(Hz,'v');   % Odzyskanie zer, biegunow i wzmocnienia
[R_Hz,P_Hz,Reszta_Hz] = residue(L_Hz,M_Hz)
% 17.c) Analityczna postac czasowa odpowiedzi skokowej:
disp('Analityczna postac odpowiedzi skokowej dyskretnego ukladu zamknietego');
ht=iztrans(trans2symb(L_Hz,M_Hz))
%17.d) Przebieg odpowiedzi skokowej:
figure;
step_d(Hz,119,'r'); 
title('Odpowiedz skokowa dyskretnego ukladu zamknietego');
grid;

background image

4. Przebieg działania programu:

Ad 1)

Wybierz warjant wprowadzenia transmitancji obiektu K(s):
  1 - Wzorem od "s";
  2 - Za pomoca wektorow wspolczynnikow licznika i mianownika;
  3 - Za pomoca wektorow zer, biegunow i wzmocnienia;
  4 - Za pomoca macierzy rownan stanu.
Wariant --> 1
 
K(s) = 3/(2*s+1)/(5*s+1)/(10*s+1)
 
Transfer function:
             3
---------------------------
100 s^3 + 80 s^2 + 17 s + 1

Ad 2)

Przedstawienie K(s) w roznych formach zapisu.
 
  Transmitancja obiektu w postaci wielomianowej:
 
Transfer function:
            0.03
-----------------------------
s^3 + 0.8 s^2 + 0.17 s + 0.01
 
  Transmitancja obiektu w postaci zera/bieguny/wzmocnienie:
 
Zero/pole/gain:
         0.03
-----------------------
(s+0.5) (s+0.2) (s+0.1)
 
  Opis w przestrzeni stanow:

A =

   -0.8000   -0.1700   -0.0100
    1.0000         0         0
         0    1.0000         0

B =

     1
     0
     0

C =

         0         0    0.0300

D =

     0

background image

Ad 3.a)

Transformata odpowiedzi skokowej:
 
Transfer function:
              0.03
---------------------------------
s^4 + 0.8 s^3 + 0.17 s^2 + 0.01 s

Ad 3.b)

Rozklad na ulamki proste transformaty odpowiedzi skokowej:

R_K =

   -0.5000
    5.0000
   -7.5000
    3.0000

P_K =

   -0.5000
   -0.2000
   -0.1000
         0

Reszta_K =

     []

Ad 3.c)

Analityczna postac czasowa odpowiedzi skokowej:
 
kt =
 
-15/2*exp(-1/10*t)+3+5*exp(-1/5*t)-1/2*exp(-1/2*t)

- 0 . 5

- 0 . 4 5

- 0 . 4

- 0 . 3 5

- 0 . 3

- 0 . 2 5

- 0 . 2

- 0 . 1 5

- 0 . 1

- 0 . 0 5

0

- 1

- 0 . 8

- 0 . 6

- 0 . 4

- 0 . 2

0

0 . 2

0 . 4

0 . 6

0 . 8

1

  S y s t e m :   K  

  P o le   :   - 0 . 2  

  D a m p in g :   1  

  O v e r s h o o t   ( % ) :   0  

  F r e q u e n c y   ( r a d / s e c ) :   0 . 2  

P o le - Z e r o   M a p

R e a l  A x is

Im

a

g

in

a

ry

 A

x

is

background image

Ad 3.d)

Ad 4.a)

0

1 0

2 0

3 0

4 0

5 0

6 0

0

0 . 5

1

1 . 5

2

2 . 5

3

  S y s t e m :   K  
  T im e   ( s e c ) :   2 4 . 1  
  A m p lit u d e :   2 . 3 7  

P r z e b ie g   c z a s o w y   o d p o w ie d z i  s k o k o w e j  d la   t r a n s m it a n c ji  K ( s )

T im e   ( s e c )

A

m

p

lit

u

d

e

- 1

- 0 . 5

0

0 . 5

1

1 . 5

2

2 . 5

3

3 . 5

- 2 . 5

- 2

- 1 . 5

- 1

- 0 . 5

0

0 . 5

1

1 . 5

2

2 . 5

  S y s t e m :   K  

  R e a l:   1 . 9 8  

  Im a g :   - 1 . 7 7  

  F r e q u e n c y   ( r a d / s e c ) :   0 . 0 4 4 8  

N y q u is t   D ia g r a m

R e a l  A x is

Im

a

g

in

a

ry

 A

x

is

background image

Ad 4.b)

- 1 5 0

- 1 0 0

- 5 0

0

5 0

M

a

g

n

itu

d

e

 (

d

B

)

  S y s t e m :   K  

  F r e q u e n c y   ( r a d / s e c ) :   0 . 6 6 8  

  M a g n it u d e   ( d B ) :   - 2 2 . 4  

1 0

- 3

1 0

- 2

1 0

- 1

1 0

0

1 0

1

1 0

2

- 2 7 0

- 1 8 0

- 9 0

0

P

h

a

s

e

 (

d

e

g

)

  S y s t e m :   K  
  F r e q u e n c y   ( r a d / s e c ) :   0 . 1 8 3  
  P h a s e   ( d e g ) :   - 1 2 4  

B o d e   D ia g r a m

F r e q u e n c y     ( r a d / s e c )

1 0

- 3

1 0

- 2

1 0

- 1

1 0

0

1 0

1

1 0

2

- 1 4 0

- 1 2 0

- 1 0 0

- 8 0

- 6 0

- 4 0

- 2 0

0

2 0

M

a

g

n

itu

d

e

 (

d

B

)

  S y s t e m :   K  

  F r e q u e n c y   ( r a d / s e c ) :   1 . 5 1  

  M a g n it u d e   ( d B ) :   - 4 1 . 7  

B o d e   D ia g r a m

F r e q u e n c y     ( r a d / s e c )

background image

Ad 5)

 s=

k

sT

1

1 sT

2

1 sT

3

1

; gdzie : k =3, T

1

=

2, T

2

=

5, T

3

=

10

Równanie charakterystyczne:

sT

1

1 sT

2

1 sT

3

1kk

r

=

0

100s

3

80s

2

17s13k

r

=

0

Z kryterium Hurwitz ' a :
a

i

2

3

=

1260−300k

r

0

Dla k

r

63
15

=

4,53układ zamknięty jest stabilny

Ad 6)

- 1 . 6

- 1 . 4

- 1 . 2

- 1

- 0 . 8

- 0 . 6

- 0 . 4

- 0 . 2

0

0 . 2

0 . 4

- 1

- 0 . 8

- 0 . 6

- 0 . 4

- 0 . 2

0

0 . 2

0 . 4

0 . 6

0 . 8

1

  S y s t e m :   K  
  G a in :   0 . 9 7  

  P o le :   - 0 . 0 8 5 1   +   0 . 2 3 4 i 

  D a m p in g :   0 . 3 4 2  

  O v e r s h o o t   ( % ) :   3 1 . 9  

  F r e q u e n c y   ( r a d / s e c ) :   0 . 2 4 9  

R o o t   L o c u s

R e a l  A x is

Im

a

g

in

a

ry

 A

x

is

background image

Ad 7)

- 2

- 1

0

1

2

3

4

5

6

7

- 4

- 3

- 2

- 1

0

1

2

3

4

  S y s t e m :   K o  
  G a in   M a r g in   ( d B ) :   6 . 4 5  
  A t   f r e q u e n c y   ( r a d / s e c ) :   0 . 4 1 2  
  C lo s e d   L o o p   S t a b le ?   Y e s  

  S y s t e m :   K o  
  P h a s e   M a r g in   ( d e g ) :   2 5 . 1  
  D e la y   M a r g in   ( s e c ) :   1 . 5 4  
  A t   f r e q u e n c y   ( r a d / s e c ) :   0 . 2 8 4  
  C lo s e d   L o o p   S t a b le ?   Y e s  

N y q u is t   D ia g r a m

R e a l  A x is

Im

a

g

in

a

ry

 A

x

is

1 0

- 3

1 0

- 2

1 0

- 1

1 0

0

1 0

1

1 0

2

- 2 7 0

- 1 8 0

- 9 0

0

P

h

a

s

e

 (

d

e

g

)

  S y s t e m :   K o  
  P h a s e   M a r g in   ( d e g ) :   2 5 . 1  
  D e la y   M a r g in   ( s e c ) :   1 . 5 4  
  A t   f r e q u e n c y   ( r a d / s e c ) :   0 . 2 8 4  
  C lo s e d   L o o p   S t a b le ?   Y e s  

- 1 5 0

- 1 0 0

- 5 0

0

5 0

M

a

g

n

itu

d

e

 (

d

B

)

  S y s t e m :   K o  

  G a in   M a r g in   ( d B ) :   6 . 4 5  

  A t   f r e q u e n c y   ( r a d / s e c ) :   0 . 4 1 2  

  C lo s e d   L o o p   S t a b le ?   Y e s  

B o d e   D ia g r a m

F r e q u e n c y     ( r a d / s e c )

background image

Ad 8)

Transmitancja glowna G(s)=Y(s)/W(s)
 
Transfer function:
            0.06
-----------------------------
s^3 + 0.8 s^2 + 0.17 s + 0.07
 
Transmitancja glowna G(s) (zera, bieguny, wzmocnienie)
 
Zero/pole/gain:
           0.06
---------------------------
(s+0.7) (s^2  + 0.1s + 0.1)

Ad 9.a)

Transformata odpowiedzi skokowej:
 
Transfer function:
              0.06
---------------------------------
s^4 + 0.8 s^3 + 0.17 s^2 + 0.07 s

Ad 9.b)

Rozklad na ulamki proste transformaty odpowiedzi skokowej:

R_G =

  -0.1648          
  -0.3462 + 0.2402i
  -0.3462 - 0.2402i
   0.8571          

P_G =

  -0.7000          
  -0.0500 + 0.3122i
  -0.0500 - 0.3122i
        0          

Reszta_G =

     []

Ad 9.c)

Analityczna postac czasowa odpowiedzi skokowej:
 
gt =
 
-9/13*exp(-1/20*t)*cos(1/20*39^(1/2)*t)-1/13*39^(1/2)*exp(1/20*t)*sin(1/20*39^(1/2)*t)
+6/7-15/91*exp(-7/10*t)
 

background image

Ad 9.d)

Ad 10)

0

2 0

4 0

6 0

8 0

1 0 0

1 2 0

0

0 . 2

0 . 4

0 . 6

0 . 8

1

1 . 2

1 . 4

  S y s t e m :   G  
  T im e   ( s e c ) :   3 4 . 3  
  A m p lit u d e :   0 . 9 7 5  

  S y s t e m :   G  

  T im e   ( s e c ) :   1 1 0  

  A m p lit u d e :   0 . 8 6  

P r z e b ie g   c z a s o w y   o d p o w ie d z i  s k o k o w e j  d la   t r a n s m it a n c ji  G ( s )

T im e   ( s e c )

A

m

p

lit

u

d

e

1 0

- 2

1 0

- 1

1 0

0

1 0

1

1 0

2

0

0 . 5

1

1 . 5

2

2 . 5

3

M

a

g

n

itu

d

e

 (

a

b

s

)

  S y s t e m :   G  
  F r e q u e n c y   ( r a d / s e c ) :   0 . 3 0 8  
  M a g n it u d e   ( a b s ) :   2 . 5 1  

W s k a z n ik   n a d a z a n ia

F r e q u e n c y     ( r a d / s e c )

background image

Ad 11)

Transmitancja dyskretna H(z):
 
Transfer function:
0.004108 z^2 + 0.0135 z + 0.002754
----------------------------------
z^3 - 2.33 z^2 + 1.786 z - 0.4493
 
Sampling time: 1
 
Transmitancja dyskretna H(z) (postac zera, bieguny i wzmocnienie):
 
Zero/pole/gain:
 0.0041078 (z+3.068) (z+0.2185)
--------------------------------
(z-0.9048) (z-0.8187) (z-0.6065)
 
Sampling time: 1

Ad 12.a)

Transformata odpowiedzi skokowej:
 
Transfer function:
   0.004108 z^3 + 0.0135 z^2 + 0.002754 z
---------------------------------------------
z^4 - 3.33 z^3 + 4.116 z^2 - 2.236 z + 0.4493
 
Sampling time: 1

Ad 12.b)

Rozklad na ulamki proste:

R_H =

    0.7137
   -0.9063
    0.1967

1 0

- 3

1 0

- 2

1 0

- 1

1 0

0

1 0

1

0

0 . 5

1

1 . 5

2

2 . 5

3

3 . 5

M

a

g

n

itu

d

e

 (

a

b

s

)

  S y s t e m :   G e  

  F r e q u e n c y   ( r a d / s e c ) :   0 . 3 2 9  

  M a g n it u d e   ( a b s ) :   3 . 0 2  

W s k a z n ik   t lu m ie n ia   z a k lo c e n

F r e q u e n c y     ( r a d / s e c )

background image

P_H =

    0.9048
    0.8187
    0.6065

Reszta_H =

     []

Ad 12.c)

Analityczna postac odpowiedzi skokowej obiektu dyskretnego:
 
ht =
 
-3174933633826237/518041025373462272*charfcn[0](n)+
1/391092907837634960046535687804675418837449582228449491593216*sum((-
46903090275486214720558195044020232920416105961912419253662214*_alpha+1694352581552283690
2745433907109411296681712888436646306011925*_alpha^2+314819930387211746249875816469033182
96374531615863445678718976)*(1/_alpha)^n/_alpha,_alpha = RootOf(-
4503599627370496+10493832226246988*_Z-8044397931533758*_Z^2+2023597755365087*_Z^3))
 

Ad 12.d)

0

1 0

2 0

3 0

4 0

5 0

6 0

0

0 . 5

1

1 . 5

2

2 . 5

3

C z a s   [ s ]

A

m

p

lit

u

d

a

O d p o w i e d z   s k o k o w a   H ( z )

background image

Ad 13)

Ad 14)

Równanie charakterystyczne:
z

3



0,004108 k

r

2,33 z

2



0,0135 k

r

1,786 z0,002754 k

r

0,4493=0

Po podstawieniu z=

w1
w−1

i redukcji :

0,0204 k

r

0,0067 w

3

−

0,0177 k

r

0,2319 w

2



0,0177 k

r

2,1961 w0,0066 k

r

5,5653=0

Z kryterium Hurwitz ' a :
a

i

0 ⇒ k

r

13,1017

2

3

0 ⇒ k

r

3,15 i k

r

0  z załorzeń

k

gr

=

3,15

- 1

- 0 . 5

0

0 . 5

1

1 . 5

2

2 . 5

3

3 . 5

- 2 . 5

- 2

- 1 . 5

- 1

- 0 . 5

0

0 . 5

1

1 . 5

2

2 . 5

  S y s t e m :   H  
  R e a l:   0 . 2 9 9  
  Im a g :   - 1 . 9 3  
  F r e q u e n c y   ( r a d / s e c ) :   0 . 0 9 3 4  

  S y s t e m :   H  
  R e a l:   - 0 . 1 1 6  
  Im a g :   0 . 0 6 7 7  
  F r e q u e n c y   ( r a d / s e c ) :   0 . 5 2 8  

N y q iu s t   u k la d u   d y k r e t n e g o

R e a l  A x is

Im

a

g

in

a

ry

 A

x

is

background image

Ad 15)

Ad 16)

Transmitancja dyskretna Hz(z) ukladu zamknietego:
 
Transfer function:
0.007394 z^2 + 0.0243 z + 0.004957
----------------------------------
z^3 - 2.323 z^2 + 1.811 z - 0.4444
 
Sampling time: 1
 
Transmitancja dyskretna Hz(z) ukladu zamknietego (postac zera, bieguny i wzmocnienie):
 
Zero/pole/gain:
   0.007394 (z+3.068) (z+0.2185)
-----------------------------------
(z-0.4796) (z^2  - 1.843z + 0.9266)
 
Sampling time: 1

Ad 17.a)

Transformata odpowiedzi skokowej zamknietego ukladu dyskretnego Hz(z)
 
Transfer function:
    0.007394 z^3 + 0.0243 z^2 + 0.004957 z
----------------------------------------------
z^4 - 3.323 z^3 + 4.133 z^2 - 2.255 z + 0.4444
 
Sampling time: 1

- 8

- 7

- 6

- 5

- 4

- 3

- 2

- 1

0

1

- 5

- 4

- 3

- 2

- 1

0

1

2

3

4

5

  S y s t e m :   H  

  G a in :   7 0 4  

  P o le :   - 0 . 2 1 6   +   3 . 3 4 i 

  D a m p in g :   - 0 . 5 9 4  

  O v e r s h o o t   ( % ) :   1 . 0 2 e + 0 0 3  

  F r e q u e n c y   ( r a d / s e c ) :   2 . 0 3  

  S y s t e m :   H  
  G a in :   3 . 1 4  

  P o le :   0 . 9 3 9   -   0 . 3 5 i 

  D a m p in g :   - 0 . 0 0 4 8 2  

  O v e r s h o o t   ( % ) :   1 0 2  

  F r e q u e n c y   ( r a d / s e c ) :   0 . 3 5 7  

L in ie   p ie r w ia s t k o w e   d la   u k la d u   d y s k r e t n e g o

R e a l  A x is

Im

a

g

in

a

ry

 A

x

is

background image

Ad 17.b)

Rozklad na ulamki proste:

R_Hz =

  -0.0299 - 0.1157i
  -0.0299 + 0.1157i
   0.0672          

P_Hz =

   0.9216 + 0.2781i
   0.9216 - 0.2781i
   0.4796          

Reszta_Hz =

     []

Ad 17.c)

Analityczna postac odpowiedzi skokowej dyskretnego ukladu zamknietego
 
ht =
 
-1904960180295741/170775381610892480*charfcn[0](n)
+1/605396622629295385021015699796674976701477990788457643132735488*sum((10361595379989338
4048821141781746991129842692087019179556877626*_alpha+35326858212241439966106018820953142
850006042742930330928823271*_alpha^2-
192890581574860015329016099376081399639234738629595928335482880)*(1/_alpha)^n/_alpha,_alp
ha = RootOf(-18014398509481984+41842129713279248*_Z-
32615357195485616*_Z^2+8005096013010585*_Z^3))
 

Ad 17.d)

0

2 0

4 0

6 0

8 0

1 0 0

1 2 0

0

0 . 2

0 . 4

0 . 6

0 . 8

1

1 . 2

1 . 4

C z a s   [ s ]

A

m

p

lit

u

d

a

O d p o w i e d z   s k o k o w a   d y s k r e t n e g o   u k l a d u   z a m k n i e t e g o

background image

5. Uwagi i wnioski:

Tworzenie wykresów zawierających większą liczbę przebiegów:

Poprzez funkcję “hold on”;

Poprzez funkcję “plot()” - dodanie kolejnych parametrow.

Jak widać na powiększeniach charakterystyk amplitudowo-fazowych dla układu ciągłego 
przebieg przechodzi przez 3 ćwiardki natomiast dla układu dyskretnego przez 4 ćwiardki.

Na uzyskane wykresy można dowolnie nanosić interesujące nas punkty i odczytywać ich 
parametry.

Niektóre spośród wywoływanych funkcji (np: “nyquist()” czy “bode()”) umożliwiają 
wywołanie na wykresach wyrysowanych dodatkowych opcji, takich jak naprzykład 
wyznaczanie zapasu fazy. Opcje te wykożystywano podczas wykonywania sprawozdania.

Dla dobranych parametrów (jak w sprawozdaniu), wszystkie symulowane obiekty były 
stabilne co można bezpośrednio wywnioskować z przebiegów czasowych dla wymuszenia 
skokowego.


Document Outline