STEROWANIE ROBOTAMI

CWICZENIA LABORATORYJNE NR 4

BIEGUNY, ZERA I CHARAKTERYSTYKI

CZASOWE

Akademia Górniczo – Hutnicza w Krakowie

Laboratorium nr 4 – bieguny, zera i charakterystyki czasowe

Cwiczenia – czesc pierwsza

Cwiczenie 1

Zaprojektuj uklad szóstego rzedu; Wylicz jego bieguny i zera i wygeneruj mape biegunów i zer. Wszystkie wspólczynniki licznika i mianownika musza zawierac sie w przedziale [0, 10]. Odpowiedz na dwa ponizsze pytania empirycznie, zmieniajac wartosci wspólczynników. Jaka jest najwieksza mozliwa do uzyskania odleglosc pomiedzy para biegunów? Jaka jest najwieksza mozliwa do uzyskania odleglosc pomiedzy zerem i biegunem? (tf2zp, pzmap)

Cwiczenie 2

a.

Okresl dziesiec biegunów jak nastepuje: biegun nr 1 znajduje sie w punkcie +1. Bieguny sa równomiernie rozmieszczone na okregu jednostkowym na plaszczyznie liczb zespolonych. Nastepnie skonstruuj uklad nie posiadajacy zer z piecioma biegunami (z powyzszych dziesieciu), lezacymi po lewej stronie osi liczb urojonych.

b. Wygeneruj i wykresl odpowiedz takiego ukladu na skok jednostkowy. Wylicz czas do pierwszego maksimum, przeregulowanie, czas wzrostu, czas ustalania i wartosc koncowa. (step) Cwiczenie 3

Powtórz cwiczenie 2 dla ukladów z 6 i 14 biegunami. Porównaj wyniki. Jaki jest trend zachowania ukladu wraz ze wzrastajaca liczba biegunów?

Cwiczenie 4

Napisz nastepujacy m-plik:

meshplot.m

% meshplot

% This creates a mesh plot showing the effect of increasing

% the real part of a pair of complex conjugate poles.

clf

t = [ 0 : 0.05 : 5 ];

numberofcurves = 12;

y = zeros ( length(t), numberofcurves); n = 1;

while n <= numberofcurves,

[num, den] = zp2tf( [], [ -n/4+ 3*i -n/4-3*i ], (n/4)^2+9 );

[ y(1 : length ( t ), n), x, tdumb] = step (num, den, t);

n = n + 1;

end

mesh(t, 1:12, y’);

title (‘Mesh Plot Showing Step Response for Twelve Pole Locations') Obejrzyj i przeanalizuj efekty dzialania skryptu, nastepnie dodaj zero do ukladu i ponownie wykonaj plik.

Porównaj oba wykresy.

Cwiczenia – czesc druga

Cwiczenie 5

Stwórz rodzine 12 ukladów drugiego rzedu, podobnie jak w cwiczeniu 4, takich, ze: a.

wzmocnienie ukladu jest stale,

b. nie ma zer,

c.

bieguny maja czesc rzeczywista równa –1,

d. bieguny maja czesc urojona zmieniajaca sie od 0 do 4

Narysuj wykres typu mesh odpowiedzi skokowych tych dwunastu ukladów. (dcgain) Cwiczenie 6

Powtórz cwiczenie 5 z zerem w –2. Porównaj wyniki.

Cwiczenie 7

Narysuj wykres odpowiedzi na skok jednostkowy dwunastu ukladów takich, ze: a.

wzmocnienie jest stale,

b. nie ma zer,

c.

bieguny zmieniaja sie od +1, +1 do –1, -1 wzdluz okregu jednostkowego.

Uzyj polecenia ord2 i utrzymuj ? n stale.

Cwiczenie 8

Powtórz cwiczenie 7 ale niech bieguny sa rozlozone wzdluz linii stalego tlumienia ?: a.

? = 0,1

b. ? = 0,707.

Cwiczenie 9

Napisz i wykonaj skrypt:

approx.m

% approx

% This creates a mesh plot that shows how good the

% second-order approximation can be.

t = [ 0 : 0.05 : 5 ];

numberoftests = 12;

y = zeros (length (t), numberoftests); n=1;

while n <= numberoftests,

[num, den] = zp2tf ( [], [-1+3*i -1-3*i -1-n], 10*(n+1) );

[y (1 : length(t), n), x, tdumb] = step (num, den, t);

n = n+1;

end

[numex, denex] = zp2tf ( [], [-1+3*i -1-3*i], 10);

[ y (1 : length(t), 13), x, tdumb] = step (numex, denex, t); clf

mesh (t, 1 : 13, y');

view( [-50 60] );

Zmodyfikuj go zamieniajac biegun –1 –n, na pare biegunów – 5 ±ni. Wykonaj nowy skrypt, aby zobaczyc jak uklad drugiego rzedu ze sprzezonymi biegunami moze przyblizac uklad czwartego rzedu.