Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
SVEUCILIŠTE U ZAGREBUFAKULTET ELEKTROTEHNIKE I RACUNARSTVA
ZAVRŠNI RAD br. 1871
Implementacija algoritma zapracenje linije na autonomnu
ronilicu IVERTomislav Begic
Zagreb, lipanj 2011.
Umjesto ove stranice umetnite izvornik Vašeg rada.
Da bi ste uklonili ovu stranicu obrišite naredbu \izvornik.
SADRŽAJ
1. Uvod 1
2. IVER-2 AUV 2
3. Matematicko modeliranje 33.1. Koordinatni sustavi . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2. Matematicki model . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2.1. Model potisnika . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.2. Alokacija aktuatora . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.3. Dinamika . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.4. Kinematika . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4. Definicija problema slijedenja linije 84.1. Definiranje problema slijedenja linije u 2D . . . . . . . . . . . . . . . 8
4.2. Definiranje problema slijedenja linije u 3D . . . . . . . . . . . . . . . 8
4.3. Model pracenja linije . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.4. Model slijedenja lH linije . . . . . . . . . . . . . . . . . . . . . . . . 11
4.5. Model slijedenja lv linije . . . . . . . . . . . . . . . . . . . . . . . . 12
5. Projektiranje regulatora 135.1. Odabir modelske funkcije . . . . . . . . . . . . . . . . . . . . . . . . 13
5.2. Sinteza regulatora u kontinuiranoj domeni . . . . . . . . . . . . . . . 14
5.3. Proširenje regulatora za kontrolu udaljenosti od linije u 2D . . . . . . 16
5.4. Sinteza regulatora za kontrolu dubine . . . . . . . . . . . . . . . . . 18
5.5. Regulator za kontrolu rotaciju IVER-a oko x-osi . . . . . . . . . . . . 19
6. Diskretizacija regulatora 22
7. Zakljucak 25
iv
1. Uvod
Kako bi se suvremenom covjeku pomoglo u svakodnevnome životu i kako bi se on
olakšao, tehnologija je napredovala do visokog stupnja, unatoc mnogim otkricima i
postignucima nerijetko opasnima za život, mnoga su podrucja, u kojima bi tehnolo-
gija mogla pripomoci, ipak ostala neistražena. Jedno od takvih je i podmorje koje
skriva ostatke potopljenih brodova, zaostalih artefakta, neotkrivene flore i faune. Kao
bice željno spoznaje, covjeku je podmorje upravo iz tih razloga zanimljivo i postalo
je predmetom proucavanja mnogim biolozima, arheolozima i drugima. Ipak, problem
istraživanjima predstavljaju velike dubine do kojih je nemoguce doprijeti ili su pak
opasne po život pa se iz tih razloga razvila podvodna robotika, grana koja je omogu-
cila dopiranje do onih predjela koja su do nedavno covjeku bila posve nepoznata. Ovaj
je rad samo dio velike slagalice koja je osmišljena u težnji istraživanja bez ugrožavanja
covjekova života. Rijec je o IVER-u, autonomnoj ronilici koja može zaroniti do 100m
dubine. Ovaj rad je podijeljen na cetiri dijela. U prvome dijelu su dane specifikacije
IVER-a zatim je opisan njegov matematicki model koji je razvijen u programskom
paketu MATLAB. Središnji dio ovog rada cini opis problema slijedenja linije dvije
dimenzije koji je kasnije proširen na tri dimenzije. Zadnje poglavlje opisuje projek-
tiranje regulatora za slijedenje linije koje je takoder izradeno u programskom paketu
MATLAB. Dizajn regulatora je prvo opisan u kontinuiranoj, a kasnije i u diskretnoj
domeni.
1
2. IVER-2 AUV
IVER-2 je autonomno podvodno vozilo. Kojega proizvodi tvrtka OceanServer Tech-
nology. Zahvaljujuci sredstvima Europske unije, Fakultet elektrotehnike i racunarstva
vlasnik je jedne takve ronilice. Kupljen je u sklopu projekta Developing the Croatian
Underwater Robotics Research Potential i koristi se kao istraživacka platforma za ra-
zvoj automatike, racunalnih ugradbenih sustava, navigacije i istraživanja podmorja Ja-
drana. Svrha IVER-a je mapiranje morskog dna u cilju izradivanja nautickih karata,
arheoloških i bioloških istraživanja, detekcije i identifikacije objekata pod vodom [1].
Tablica 2.1: Tehnicke karakteristike IVER-a
Specifikacije IVER-a Vrijednosti
materijal karbonska vlakna
Dužina 148 cm
Promjer trupa 14.7 cm
Težina 21 kg
Maksimalna dubina 100 m
Brzina 4 cvora
Pogon istosmjerni DC motor
Napajanje Li-Ion baterija 600 Wh
Komunikacija s IVER-om je ostvarena putem WIFI i moguca je samo dok je IVER na
površini.
Neki od senzora koje posjeduje su kompas, senzor za kut valjanja, kut naginjanja, GPS,
senzor dubine te sonar. Za pogon se koristi jedan propulzor smješten na stražnjem kraju
IVER-a, udaljen oko 60cm od centra mase. Na IVER-u je pozitivan potisak definiran
u smjeru kazaljke na satu. Za upravljanje i stabilizaciju koriste se cetiri kormila koja
su oko 10cm udaljena od propulzora [2].
2
3. Matematicko modeliranje
U ovome poglavlju opisan je pojednostavljeni matematicki model ronilice IVER, koji
se koristi pri projektiranju regulatora.
3.1. Koordinatni sustavi
Definirana su dva koordinatna sustava pomocu kojih se definira položaj i brzine IVER-
a. Mobilni koordinatni sustav B je vezan za težište IVER-a i opisan trima osiima X, Y
i Z koje vidimo na Slici
Slika 3.1: Kordinatni sustavi
X - os usmjerena od straga prema naprijed
Y - os usmjerena prema desno
Z - os usmjerena prema dolje
3
Na slici je važno primjetiti da koordinate osi mobilnog kordinatnog sustava B koin-
cidiraju s osima zemaljskog koordinatnog sustava E. Nakon definiranih koordinatnih
sustava slijede definirane osobine svakog pojedinog (tablica 2.1):
Tablica 3.1: Oznake brzina i položaja IVER-a
DOF napredovanje poniranje valjanje zaošijanje definiran u:
brzina u w p r B
položaj i orijentacija x y φ ψ E
sile i momenti X Z K N B
Vidimo kako se koordinatni sustav E koristi za definiranje pozicije plovila η1 = [ x y z]
i orijentacije η2 = [ φ ψ θ ], η = [ητ1 ητ2 ]. U mobilnom koordinatnom sustavu defini-
ramo vektor v1 koji sadrži linearne brzine (napredovanje i zaranjanje) v1 = [ u w] i
vektor v2 koji sadrži brzine rotacije (valjanje i zaošijanje) v2 = [ p r], v = [ vτ1 vτ1 ]
3.2. Matematicki model
Poznavanje matematickog modela procesa implicira anticipaciju poznavanja procesa
korištenih pri projektiranju regulatora. Matematicki model je razložen na nekoliko
dijelova prikazanih na Slici 2.2..
Slika 3.2: Matematicki model IVER-a
4
3.2.1. Model potisnika
U opcenitom slucaju sila koju razvija propulzor je nelinearna funkcija koja ovisi o br-
zini plovila. Takav model se naziva bilinearni model. Kako se IVER krece malom
brzinom umjesto bilinearnog modela koristi se afini model koji je ujedno i primjenji-
viji u praksi. Potisak propulzora je zadan izrazom :
τ = KT |n| n
Potisak svakog od cetiri kormila zadan je izrazom:
τi = kr1 u2 δ + kr2 |n| n δ
pri cemu su kr1 i kr2 konstante kormila, n je upravljacki signal, a u je ukupna br-
zina IVER-a. Nelinearnost potiska motora je kompenzirana tako što je potisak nakon
inverzne alokacijske matrice korjenovan.
3.2.2. Alokacija aktuatora
IVER-om se upravlja pomocu jednog propulzora i cetiri kormila koji su smješteni na
njegovom kraju, kut medu kormilima je 90 stupnjeva kao što je vidljivo na Slici.
Slika 3.3: Raspored kormila na IVER-u
Položaj propulzora i kormila odreduje na koji nacin sile i momenti djeluju na IVER.
Bocna kormila koriste se za generiranje momenta M poniranja (engl. pitch), a gornje i
donje kormilo potrebno je za generiranje momenta zaošijanja N (engl. yaw). Moment
zaošijanja je pozitivan u smjeru kazaljke na satu. Važno je primjetiti ako jedno bocno
kormilo zakrenemo za više stupnjeva nego drugo uzrokovat cemo rotaciju plovila oko
5
osi x, isti moment možemo proizvesti i drugim parom kormila. Moment koji nastanje
zbog razlike kuta lijevog i desnog odnosno gornjeg i donjeg kormila naziva se moment
valjanja K (engl. roll). Moment valjanja stvara i okretanje propelera. IVER ima šest
stupnjeva slobode medu kojima su dva ( N i Y) i dva (M i Z) spregnuta. Zakretanjem
krilaca izravno se upravlja momentima N i M , a Y i Z su posljedica navedenih mo-
menata. Konacno, možemo napisati alokacijsku matricu :
X
Y
Z
K
M
N
=
1 −sin(δ1) −sin(δ2) −sin(δ3) −sin(δ4)
0 −cos(δ1) 0 −cos(δ3) 0
0 0 −cos(δ2) 0 −cos(δ4)0 −R ∗ cos(δ1) −R ∗ cos(δ2) R ∗ cos(δ3) R ∗ cos(δ4)0 0 L ∗ cos(δ2) 0 L ∗ cos(δ4)0 L ∗ cos(δ1) 0 L ∗ cos(δ3) 0
×
τ 0
τ 1
τ 2
τ 3
τ 4
Alokacijska matrica prikazuje vezu izmedu potisaka propulzora i kormila sa silama
i momentima koji djeluju na IVER. Model je spregnut, što znaci da se ne može npr.
upravljati odvojeno momentom M i silom Z. Iz alokacijske matrice slijedi kako se
IVER-om može upravljati cetirima stupnjevima slobode ( X, Z, K, N ) pri cemu X
predstavlja silu napredovanja, Z silu poniranja. Kontrolira se sila poniranja, a ne mo-
ment M s ciljem ostvarenja gibanja IVER-a na odredenoj dubini. K oznacava moment
valjanja koji se kontrolira kako IVER ne bi rotirao oko x-osi, a N moment zaošijanja
kako bi se postiglo gibanje u lijevo ili desno u horizontalnoj ravnini.
3.2.3. Dinamika
Veze izmedu brzina i akceleracija koje djeluju na IVER prikazane su dinamickim mo-
delom. IVER se krece malom brzinom pa se može koristiti pojednostavljena jednadžba
gibanja IVER-a.
αu u′ + β(u) u = X + τuE
αw w′ + β(w) w = Z + τwE
αr r′ + β(r) r = N + τrE
αϕ ϕ′′ + β(ϕ) ϕ′ +W (zg − zb) ϕ = K + τϕE
Prikazane jednadžbe sustava opisuju dinamiku IVER-a. Koeficijenti α, moment iner-
6
cije β, hidrodinamicki otpor eksperimentalno su odredeni tijekom identifikacije sus-
tava. [τuE τwE τrE]T predstavlja vektor smetnje i nelinearne dinamike. Manji α znaci
da je potrebna manja sila kako bi se pokrenuo IVER, dok manji hidrodinamicki otpor
upucuje na to kako je potrebna manja sila prilikom zakretanja. W oznacava težinu
IVER-a, a (zg − zb) razliku izmedu ishodišta sile uzgona i sile teže, ϕ oznacava kut za
koji je zakrenut IVER u odnosu na os x.
3.2.4. Kinematika
Položaj IVER-a treba se definirati u odnosu na Zemlju odnosno zemaljski koordinatni
sustav E. Kinematicki model prikazuje vezu izmedu brzina definiranih u mobilnom ko-
ordinatnom sustavu B i položaja i orijentacije definiranih u zemaljskom koordinatnom
sustavu. U kinematickoj matrici navedene su one velicine koje odgovaraju velicinama
iz dinamickog modela, a potrebne su za izracunavanje položaja u simulacijskom mo-
delu.
x
y
z
φ
ψ
=
cos(ψ) −sin(ψ)cos(φ) sin(ψ)sin(φ) 0 0
sin(ψ) cos(ψ)cos(φ) −cos(ψ)sin(φ) 0 0
0 sin(φ) cos(φ) 0 0
0 0 0 1 0
0 0 0 0 cos(φ)
×
u
v
w
p
r
7
4. Definicija problema slijedenja linije
U ovome poglavlju opisan je problem slijedenja linije po površini, u dvije dimenzije,
koji je proširen na slijedenje linije u tri dimenzije.
4.1. Definiranje problema slijedenja linije u 2D
Problem slijedenja linije je misija koja se temelji na slijedenju ravne linije u 2D rav-
nini. Oznacimo pocetnu tocku s T1 (x1(t), y1(t)) i drugu tocku T2 (x2(t), y2(t)), dok
poziciju IVER-a oznacimo s [x(t), y(t)].Orijentacija zadane linije je od tocke T1 prema
tocki T2. Okomitu udaljenost IVER-a od zadane linije racunamo prema izrazu:
dh(t) =(x2(t)− x1(t))(y1(t)− y0(t))− (x1(t)− x2(t)(y0(t)− y1(t))√
(x1(t)− x2(t))2 + (y1(t)− y2(t))2
mora vrijediti :
limt→∞dh(t) = 0
iz cega je jasno da okomita udaljenost dh(t) predstavlja regulacijsku pogrešku koja
teži prema 0 što govori da IVER konvergira prema liniji i nastavlja se gibati po njoj.
4.2. Definiranje problema slijedenja linije u 3D
Upravljanje u tri dimenzije dodatno komplicira analizu problema, povezanost izmedu
sila koje djeluju na IVER-a bitno utjece na njegovo ponašanje. Problem se rješava na
nacin da se željeni pravac rastavi na dvije komponente. Sada se tocke zadane linije
oznacuju s T1 (x1(t), y1(t), z1(t)) i T2 (x2(t), y2(t), z2(t)) iz cega je jasno da je i po-
zicija IVER-a je dobila trecu kordinatu z(t). Orijentacija linije ostaje ista kao i u 2D,
znaci od tocke T1 prema T2. Liniju l rastavlja se na svoju horizontalnu komponentu lhi vertikalnu lv. Horizontalna linija lh definirana je ortogonalnalnom projekcijom linije
l. Kako je z = z0 paralelna N-E ravnini, pravac lh je definiran tockom T1 i kutom Γ u
8
odnosu na N-D ravninu i dan sljedecim izrazom :
Γ = arctany2 − y1x2 − x1
Slika 4.1: Orijentacija pracenja pravca u z = z0
Vertikalna linija lv definirana je u Π ravnini ortogonalno N − E ravnini koja prolazi
tockom T1. Pravac lv je definiran tockom T1 i kutem χ u odnosu na N-E ravninu zadan:
χ = arctanz2 − z1√
(x2 − x1)2 + (y2 − y1)2
Navedene pretpostavke podrazumijevaju kako se pracenje 3D linije može promatrati
kao slijedenje dvije 2D linije. Udaljenost IVER-a od linije lh dana je sljedecim izra-
zom:
dH =|(x2 − x1) (y1 − y0)− (x1 − x0) (y2 − y1)|√
(x2 − x1)2 + (y2 − y1)2
Vertikalna udaljenost dv je sagledana uzimajuci u obzir ravninu Π cije ishodište
izvorno postavljeno u tocki (x1, y1, z0). Kordinate tocke T1 u odnosu na ravninu Π su
P1 = (0, z1 − z0) i tocka P2 = (σ2, z2 − z1) gdje je σ2 =√
(y2 − y1)2 + (x2 − x1)2.Ortogonalna projekcija tocke T0 u odnosu na Π ravninu daje relativne kordinate P0 =
(σ0, 0) gdje je σ0 =√√
(y0 − y1)2 + (x0 − x1)2 − d2H .
Vertikalna udaljenost se racuna kao udaljenost od tocke P0 i linije koja je opisana
9
pomocu tocaka P1 i P2.
dH =−(z2 − z1)[(x2 − x1) (x0 − x1) + (y2 − y1) (y0 − y1)]− (z1 − z0)[(x2 − x1)2 + (y2 − y1)2]√
(x2 − x1)2 + (y2 − y1)2√
(x2 − x1)2 + (y2 − y1)2 + (z2 − z1)2
Slika 4.2: Orijentacija pracenja pravca u Π ravnini
Sada su definirani osnovni parametri za izracunavanje udaljenosti s obzirom na dvije
rastavljenje linije lh i lv i izveden je matematicki model gibanja IVER-a.
Slika 4.3: Orijentacija pracenja pravca u NED koordinatnom sustavu
10
4.3. Model pracenja linije
Kako je prikazano u prethodnom poglavlju, pracenje linije u 3D se može rastaviti na
pracenje dvije linije u 2D prostoru. IVER ima cetiri stupnja slobode: napredovanje,
poniranje, valjanje i zaošijanja.
Slika 4.4: Model pracenja linije u z = z0 i Π ravnini
4.4. Model slijedenja lHlinije
Pracenje linije lH opisuju slijedece jednadžbe:
dH = u sin(γ) + v cos(γ) + ξH
γ = r
r =β(r)
αrr +
1
αr N
Na udaljenost dH utjece brzina napredovanja koja je konstantna i brzina zaošijavanja
koja se kontrolira i ujedno stvara brzinu u y smjeru v koja je njena posljedica. Mijenja-
njem kuta γq = ψ − Γ mijenja se zakret krilaca lijevog i desnog kormila kako bi se
postigao onaj raspored sila, na svakom od kormila, koje se dobiju iz inverzne alokacij-
ske matrice. Pošto je kut zakreta svakog od kormila 30 stupnjeva vrijede pretpostavke
sin(γ) ≈ γ i cos(γ) ≈ 1. Te pretpostavke jako pojednostavljuju sintezu regulatora jer
je sustav, barem na razini kinematike lineariziran.
11
4.5. Model slijedenja lv linije
Pracenje linije lv opisuju slijedece jednadžbe:
dv = w cos(χ)− u cos(γ) sin(χ) + ξv
w =β(w)
αww +
1
αw(Z + W − B)
Na udaljenost dv utjece brzina napredovanja koja je konstantna. Moment zaranjanja M
(engl.pitch) stvara silu Z i brzinu u z smjeru. Kako je želja kontrolirati dubinu, a ne
moment zaranjanja, kontolira se Z (engl. heave).
12
5. Projektiranje regulatora
U ovome poglavlju opisano je projektiranje regulatora za kontrolu zaošijanja, poniranja
za pracenje linije u 2D i 3D te dizajn regulatora za kontrolu valjanja.
5.1. Odabir modelske funkcije
Polazište pri sintezi je zatvoren regulacisjki krug opisan željenom prijenosnom funk-
cijom. Modelska funkcija proizlazi iz specifikacija kakvoce koja se obicno zasniva
na odgovarajucoj prijelaznoj funkciji hr(t). Opceniti zapis modelske funkcije dan je
izrazom:
Gm(s) =α(s)
β(s)=a0 + a1 s. . .av s
v
b0 + b1 s. . .bu su, u > v
gdje su α(s) i β(s) polinomi kompleksne varijable pri cemu ne smije postojati odstu-
panje od referentne vrijednosti u stacionarnom stanju
limt→∞ G(0) = 0
Uz poznato vladanje procesa i uz odabrani Gm(∗) može se neposredno projektirati
odgovoarajuci regulator. Proces Gs(s) opisan je prijenosnom funkcijom:
Gs(s) =D(s)
C(s)=d0 + d1 s. . .dm sm
c0 + c1 s. . .cn sn, n > m
iz cega slijedi da je prijenosna funkcija regulatora dana izrazom:
Gr(s) =B(s)
A(s)=
C(s)α(s)
D(s) [β(s)− α(s)]
Prijenosne funkcije regulatora koje je potrebno projektirati zapisane su u paralelnoj
formi i dane u sljedecem obliku :
Gr(s) = KR +KI
s+KD s
Kako IVER može pratiti zadanu liniju na površini i pod vodom, zbog mogucnosti da
zaroni dublje i zabije se u dno ili u rub jezera, odabire se binomna modelska funkcija,
13
ponajprije zbog svog aperiodskog odziva.
Gm(s) =wnn
(s+ wn)n
5.2. Sinteza regulatora u kontinuiranoj domeni
Regulator se projektira u s domeni što je opravdano zbog odabranog malog vremena
diskretizacije T = 0.1s. Za regulaciju udaljenosti od linije i kontrole momenta zaošija-
nja koristi se I-PD struktura regulatora. Takva struktura je dobra jer za veliku promjenu
reference ne dolazi do velike promjene upravljackog signala što je i poželjno. Izlaz iz
prvog PD regulatora što kontrolira okomitu udaljenost IVERA od linije je rref (brzina
zanošenja) koja je referenca za drugi, unutrašnji regulator koji na svome izlazu daje
upravljacki signal N.
rref = KPd (dref − d) +KDdd
dt(dref − d) + βr r
N = KIr
∫ t
0
(rref − r) dt−KPr r + βr r
Struktura regulatora prikazana je na sljedecoj Slici.
Slika 5.1: Zatvorena petlja za slijedenje linije
14
Kao što je vec navedeno, udaljenost od linije i moment zaošijanja se kontroliraju po-
mocu dva regulatora odn. unutrašnje i vanjske petlje što pretpostavlja korištenje jedne
modelske funkcije. Unutrašnja petlja ima prijenosnu funkciju:
r
rref=
1αr
KIrs2 + KPr
KIrs+ 1
Oznacimo αr
KIrs a2r, a KPr
KIrs a1r. Sada pogledajmo prijenosnu funkciju otvorenog
krugad
dref=
1 + KDd
KPds
α2r
ur KPds4 + α1r
ur KPds3 + 1
ur KPds2 + KDd
KPds+ 1
Polove prijenosne funkcije oznacimo redom s a4d, a3d,a2d i a1d.
Kombinacijom prijenosne funkcije unutrašnje petlje i prijenosne funkcije otvorenog
kruga dobiju se sljedeci izrazi za parametre regulatora:
KIr =a2da4d
αr
KPr =a3da4d
αr
KPd =1
ur a2d
KIr =a1dur a2d
Poznavanjem dinamike procesa moguce je automatski podešavati parametre regula-
tora. Kada pogledamo modelsku funkciju
Gm(s) =1
1w4
ns4 + 1
w3ns3 + 1
w2ns2 + 1
wns+ 1
jasno je da dinamiku sustava podešavamo frekvencijom neprigušenih oscilacija wn.
15
Slika 5.2: Prijelazne funkcije za binomne modelske oblike
Jedini dinamicki parametar prema kojemu je odredena wn je vrijeme porasta pri-
jelazne funkcije tu. Iz normirane prijelazne funkcije za binomni oblik cetvrtog reda
išcitavamo:
wn t = 20
Metodom pokušaja odredivanja tu odlucili smo da je tu jednako 7 sekundi. Nakon što
su odredeni parametri regulatora važno je naglasiti da je umjesto idealnog derivacij-
skog clana korišten realni:
GD(s) =KR TDTDνs+ 1
5.3. Proširenje regulatora za kontrolu udaljenosti od li-
nije u 2D
Kada je linija koju IVER treba pratiti jako udaljena od njega, IVER se pocinje vrtjeti
u mjestu ili spiralno kretati prije nego pocne pratiti zadanu liniju. U ovome poglav-
lju opisan je postupak koji omogucuje izbjegavanje takvih,neželjenih radnji. Kontrola
udaljenosti od linije dana u prethodnom poglavlju za slucajeve kad je d velik može re-
zultirati takoder velikim rref , takvim da se IVER kružno ili spiralno giba. Rješavanju
ovog problema pristupili smo na dva nacina. Prvi pristup podrazumijeva udaljenost
vecu od maksimalne udaljenosti, koju smo sami odredili, o cemu cemo kasnije govo-
riti, cime je rref odraniceno na 0. Takav pristup je dobar jer IVER prestane kružiti
16
oko svoje osi ili se spiralno kretati, ali odziv pracenja linije ne daje zadovoljavajuce
rezultate. Drugi pristup pak podrazumijeva ogranicenje udaljenosti na maksimalnu
vrijednost ako je ona veca od maksimalne vrijednosti. Maksimalna vrijednost udalje-
nosti do koje možemo biti sigurni da se IVER nece poceti spiralno gibati ili još gore
poceti rotirati oko svoje osi zadan je izrazom :
d =KDd
KPd
ur sin(β)
β oznacava kut za koji se IVER može maksimalno zakrenuti β = (−π2, π2) što je do-
voljno da IVER može pratiti bilo koju liniju. Ogranicenjem udaljenosti regulator do-
biva novi oblik:
rref = −KPd sat(d,−d, d)− KDd d
Ovakvim nacinom ogranicenja udaljenosti od linije i modifikacijom regulatora za sli-
jedenje linije postignuto je da se IVER približava zadanoj liniji pod 45 stupnjeva sve
dok udaljenost od linije ne postane manja od maksimalne kad ulogu izracunavanja rrefpreuzima regulator opisan u prethodnom poglavlju.
Slika 5.3: Spiralna putanja IVER-a prema liniji
17
Slika 5.4: Uklanjanje efekta spiralnog gibanja uz primjenjenu modifikaciju
5.4. Sinteza regulatora za kontrolu dubine
Struktura sustava upravljanja dubinom na kojoj ce se nalaziti IVER prikazana je na sli-
jedecoj Slici. Kontroliranje slijedenja linije ostvaruje se pomocu klasicnog PID regu-
Slika 5.5: Prijelazne funkcije za binomne modelske oblike
latora. Kao i u slucaju slijedenja lh linije željeno vladanje je da udaljenost dV,ref = 0.
Upravljacki signal Z iz regulatora zadan je slijedecim izrazom:
Z = KIv
∫ t
0
(dV,ref − dV ) dt−KPvdV +d
dtdV
Parametri regulatora i u ovome slucaju traže se pomocu modelske funkcije takoder
u kontinuiranoj domeni. Izjednacavanjem jednadžbe upravljackog signala i jednadžbe
procesa danih u [3.5] dobije se željena prijenosna funkcija procesa izražena na slijedeci
nacin:dVdV,ref
=1
αw
KIv cosχs3 + βw
KIv cos(χ)+ KDv
KIvs2 + KPv
KIvs+ 1
18
ako oznacimo redom clan uz s3 s av3 uz s2 s av2 i s s av1 slijede slijedeci izrazi za
parametre regulatora:
KIv =αw
cos(χ)
1
av3
KPv =αw
cos(χ)
av1av3
KIv =αw
cos(χ)
av2av3− βw
cos(χ)
Potrebno je naglasiti da izbor parametara željene modelske funkcije ovisi o fleksibil-
nosti dinamike sustava koji se regulira, u ovome slucaju IVER-a.
Slika 5.6: Pracenje jedne zadane linije u 3D
5.5. Regulator za kontrolu rotaciju IVER-a oko x-osi
Zbog vrtnje propelera propulzora nastaje moment koji pokušava okrenuti IVER oko
x-osi. IVER se takoder pokušava okrenuti ako postoji razlika izmedu kutova gornjeg
i donjeg ili bocnih kormila. Valjanje je nepoželjno ukoliko je cilj snimati podmorje.
Iz tih razloga projektira se regulator koji kontrolira valjanje (eng. roll). Kako IVER
daje podatke o kutu rotacije oko x osi, regulira se kut, a ne brzina valjanja. Kako bi
se regulirao ovaj proces potrebno je poznavati njegovo ponašanje. Jednadžba koja ga
opisuje prikazana je izrazom:
α ϕ+ β ϕ+W (zG − zB) ϕ = K + ηK
19
Za razliku od procesa poniranja ili zaošijanja, ovaj proces ima još jedan clan W (zG −zB). Taj clan je posljedica što se i sam IVER želi vratiti u pocetno stanje.
Pri definiranju procesa korištena su pojednostavljenja koja su opravdana iz razloga
navedenih u 3.2.3. Nadalje, pretpostavlja se da je sila uzgona jednaka sili teži. zG−zBpredstavlja razliku izmedu ishodišta djelovanja sile uzgona i sile teže. Ako uzmemo
da je zG− zB približno 15 cm i da je težina IVER-a 20 kg lako izracunamo koeficijent
W (zG − zB). Zatim pretpostavimo da se IVER rotira u pocetni položaj za 1s i da mu
je nadvišenje pri toj radnji 2 % . Uzimajuci u obzir ove kriterije kvalitete lako se može
odrediti frekvencija neprigušenih oscilacija wn 5.8 s−1 i koeficijent ζ=0.78. Nakon
što smo odredili wn i ζ tražimo funkciju koja dobro opisuje naš proces. Uvrštavajuci
koeficijente u izraz
G(s) =w2n
s2 + 2 ζwn s+ w2n
i uzimajuci u obzir težinu IVER-a i zG − zB dobije se prijenosna funkcija procesa
rotacije oko x-osi:
G(s) =1
0.6 s2 + 8 s+ 30
koja zadovoljava navedene kriterije. Sada kad poznajemo proces lako cemo odrediti
parametre regulatora pomocu binomne modelske funkcije drugog reda. Parametre mo-
delske funkcije odabiru se kako bi zatvoreni krug imao isto vrijeme maksimuma i
nadvišenje kao i proces.
Regulator je zadan prijenosnom funkcijom :
G(s) = 15 +75
s− 25
s+ 10
20
Moment koji nastaje zbog okretanja motora simuliramo kao konstantni poremecaj
na ulazu u proces. Na simulacijskom modelu kad se regulira valjanje važno je primjetiti
razliku izmedu zakreta kako gornjeg i donjeg tako i bocnih kormila.
Slika 5.7: Kut zakreta svakog od kormila pri slijedenju zadane linije
21
6. Diskretizacija regulatora
Kako bi mogli realizirati upravljanje sustavom, projektirane kontinuirane regulatore
potrebno je diskretizirati. Zbog odabranog malog vremena diskretizacije T = 0.1s,
regulatori su diskretizirani prema EMUL1 metodi. Pri diskretizaciji korištena je Eule-
rova metoda unazadne diferencije.
s =z − 1
T z
PD regulator realiziran u mskripti u MATLAB-u:
p e r s i s t e n t dh1 bp r r e f 1 ;
i f t ==0
dh1 =0;
r r e f 1 =0;
r r e f =0;
bp =0;
b =0;
a =0;
e l s e
i f ( abs ( dh ) >dmax )
i f ( dh >0)
d=dmax ;
e l s e
d=−dmax ;
end
a=KPd∗d ;
b=KDd∗ ( dh−dh1 ) / T ;
r r e f =−a−b ;
e l s e
a=KPd∗ ( d r e f−dh ) ;
b=KDd∗ ( dh1−dh ) / T ;
22
r r e f =a+b ;
end
end
dh1=dh ;
bp=b ;
r r e f 1 = r r e f ;
y =[ r r e f ] ;
end
PI regulator realiziran u mskripti u MATLAB-u:
p e r s i s t e n t ap ;
i f t ==0
ap =0;
a = 0 ;
b = 0 ;
c = 0 ;
N = 0 ;
e l s e
a=ap+KIr ∗T∗ ( r r e f− r r e a l ) ;
b=KPr∗ r r e a l ;
c= b e t a r ∗ r r e a l ∗ abs ( r r e a l ) ;
N=a−b+c ;
end
ap=a ;
y =[N ] ;
end
PID regulator realiziran u mskripti u MATLAB-u:
p e r s i s t e n t dv1 Z1 ;
i f t ==0
dv1 =0;
dv2 =0;
Z1 =0;
Z=0;
e l s e
a=Z1+KIv∗T∗ ( d r e f−dv ) ;
23
b=KPv∗dv ;
c = ( ( ( KDv/ T ) ∗ ( dv−dv1 ) ) + Z1 ) / ( 0 . 4 ∗T + 1 ) ;
Z=a−b−c ;
end
dv1=dv ;
Z1=Z ;
y =[Z ] ;
end
Kao što je vidljivo iz kodova regulatora, regulatori su ostvareni preko rekurzivnih jed-
nadžbi.
24
7. Zakljucak
U ovome radu opisan je problem slijedenja linije u tri dimenzije rastavljanjem linije
na njenu horizontalnu i vertikalnu komponentu. Pri izradi regulatora za kontrolu slije-
denja linije pretpostavlja se da je brzina napredovanja konstantna. Regulator zaošija-
nja kontrolira horizontalnu komponentu linije, dok vertikalnu komponentu kontrolira
regulator poniranja. Regulatori su projektirani pod pretpostavkom da je model ras-
pregnut, nažalost, nisu testirani na stvarnome spregnutom modelu. Simulacijski model
u cjelosti je razvijen u programskom paketu MATLAB. Regulatori su diskretizirani
i ostvareni u mskriptama kao predložak za njihovu implementaciju u programu C++.
Simulacijski model je ostvaren parametarski kako bi se povecala modularnost odnosno
omogucila daljnja proširenja i nadogradnja postojeceg modela.
25
LITERATURA
[1] University of Zagreb’s OceanServer Technologies AUV "Iver 2"’s first dive
http://www.youtube.com/watch?v=d5i0TkgQ9oQ
[2] Developing the Croatian Underwater Robotics Research Potential
http://cure.fer.hr/index.php/labust-resources/cureresources-auv
[3] Predavanja racunalno upravljanje sustavima
http : //www.fer.hr/download/repository/RUS06Analitickipostupcisinteze2010−11.pdf
[4] T. Fossen. Guidance and Control of Ocean Vehicles. John Wiley and Sons
England, 1994.
[5] N. Miškovic. Bespilotne ronilice - identifikacija i upravljanje
[6] Z. Vukic i Lj. Kuljaca. Automatsko upravljanje - analiza
linearnih sustava. Kigen, Zagreb, 2004
[7] M.Bibuli.Advanced Guidance Techniques and Mission Control Architectures
Development towards Marine Robotic Systems Enhancement
[8] N. Miškovic. 3D Line Following for Unmanned Underwater Vehicles
26
Implementacija algoritma za pracenje linije na autonomnu ronilicu IVER
Sažetak
IVER je autonomno podvodno vozilo koje se koristi kao istraživacka platforma za
razvoj automatike. Prilikom izrade regulatora potrebno je poznavanje matematickog
modela koji ukljucuje poznavanje aktuatora, alokacije aktuatora, dinamike i kinema-
tike. Cilj je definiranje problema slijedenja u tri dimenzije koji je riješen rastavljanjem
linije na horizontalnu i vertikalnu komponentu. Za upravljanje su korišteni I-PD re-
gulator i klasicni PID regulator. Regulatori su dizajnirani metodom modelske funkcije
pri cemu je odabrana binomna modelska funkcija ponajprije zbog aperiodskog odziva.
Kljucne rijeci: autonomno podvodno vozilo, matematicki model, I-PD regulator, PID
regulator, vertikalna i horizontalna komponenta linije
The implementation of the line following algorithm to the IVER autonomousunderwater vehicle (AUV)
Abstract
Iver is autonomous underwater vehicle used as a research platform in automatic
development. During regulator construction a mathematical model consisting of an
aktuator, an allocation matrix, dynamical and kinematic model is necessary. The pur-
pose of this paper is to define the line following problem in 3D. The problem is then
solved by resolving the line into a horizontal and vertical component. An I-PD re-
gulator and a classical PID regulator are implemented for control. A model function
method is chosen for designing the regulators, where the binom model function is se-
lected mainly of its aperiodical response.
Keywords: autonomous underwater vehicle,I-PD regulator,PID regulator,horizontal
and vertical line component