lekcija 11: upravljanje kretanjem mobilnogkretanjem
Post on 16-Oct-2021
2 Views
Preview:
TRANSCRIPT
Lekcija 11: Upravljanje kretanjem mobilnogkretanjem mobilnog robotom
Prof dr sc Jasmin Velagić
robotom
Prof.dr.sc. Jasmin VelagićElektrotehnički fakultet Sarajevo
K l ij M bil b tikKolegij: Mobilna robotika
2012/2013
11.1. Upravljanje mobilnim robotom
Upravljanje kretanjem robota sastoji se od generiranja upravljačkih momenata 2/79generiranja upravljačkih momenata, odnosno brzina, ovisno o tome da li se upravlja dinamičkim ili kinematičkim modelom
2/79
upravlja dinamičkim ili kinematičkim modelom robota, na kotače mobilnog robota. Zahtjevi za upravljanje kretanjem mobilnimZahtjevi za upravljanje kretanjem mobilnim robotom:
Poznavanje kinematičkog odnosnoPoznavanje kinematičkog, odnosno dinamičkog modela robota.Model interakcije između kotača i podlogeModel interakcije između kotača i podloge.Definiranje referentne trajektorije, odnosno zahtijevanog kretanjazahtijevanog kretanja.
Upravljanje mobilnim robotom
Načini ostvarivanja zahtijevanog kretanja → brzinsko i/ili pozicijsko upravljanje 3/79brzinsko i/ili pozicijsko upravljanje.Upravljački zakon koji zadovoljava zahtjeve
3/79
zahtjeve. Problemi upravljanja kretanjem mobilnim robotom:robotom:
Ne postoji izravan način mjerenja pozicije b trobota.
Pozicija se mora integrirati u vremenu.Neprecizna (netačna) estimacija pozicije → izazov broj 1 u mobilnoj robotici.
Upravljanje mobilnim robotom
Strategije upravljanja zasnivaju se na:
č 4/79Kinematičkom modelu robota.Dinamičkom modelu robota.
4/79
Kada su brzine kretanja mobilnog robota male:male:
Koristi se kinematički model robota.
Primjenjuje se upravljanje brzinom kretanja lijevog i desnog kotača (regulator brzine).
U slučaju većih brzina kretanja i masa robota:
Koristi se dinamički model robotaKoristi se dinamički model robota.
Primjenjuje se upravljanje momentom.
Upravljanje mobilnim robotom
Upravljanje zasnovano na dinamičkom modelu 5/79modelu
ž lj
5/79
željena pozicija
Željena t j kt ij
Regulator i ij
željena brzina
Regulator b i Pogon Dinamika Kinematika
b
napon moment brzina
trajektorija pozicije brzine Pogon robota robota
struja pozicija
Upravljanje mobilnim robotom
Upravljanje zasnovano na kinematičkom modelu 6/79modelu
Nestaje unutarnja petlja.6/79
željena pozicija
željena brzina napon moment brzina
pozicija
Željena trajektorija
Regulator pozicije
Regulator brzine Pogon Dinamika
robota Kinematika
robota
pozicija struja
11.2. Upravljanje kinematičkim modelom
Kod sinteze regulatora brzine mobilnog robota pretpostavljaju se sljedeća pojednostavljenja: 7/79pretpostavljaju se sljedeća pojednostavljenja:
Kinematički model je opisan diferencijalnom jednadžbom prvog reda
7/79
diferencijalnom jednadžbom prvog reda.Odgovarajuća upravljačka brzina se može
tićipostići.Unutar ovih pretpostavki potrebno je postići sljedeće rezultate:
Eksponencijalnu konvergenciju trajektorije ka željenoj (referentnoj) trajektoriji.Mogućnost podešavanja brzine konvergencije (parametar k ).
Upravljanje kinematičkim modelom
Kinematički model mobilnog robota s diferencijalnim pogonom. 8/79diferencijalnim pogonom.
Kinematičke jednadžbe:
8/79
Y
x
ym v
⎥⎤
⎢⎡⎥⎥⎤
⎢⎢⎡
⎥⎥⎤
⎢⎢⎡
θθ
vx
0)i (0 )cos(
&
&
y
xm
θ
A
C ⎥⎦
⎢⎣⎥⎥⎥
⎦⎢⎢⎢
⎣
=⎥⎥
⎦⎢⎢
⎣ω
θ
θ
y1 0 0 )sin(
&
D 2r
d
⎤⎡⎥⎤
⎢⎡
⎤⎡rr
XxO
⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥⎥
⎦⎢⎢⎢⎢
⎣
=⎥⎦
⎤⎢⎣
⎡
L
R
vv
rrv
-
2
2ω
X ⎥⎦⎢⎣ DD
Upravljanje kinematičkim modelom
Kombiniranjem prethodne dvije kinematičke jednadžbe dobiva se: 9/79
⎥⎥⎤
⎢⎢⎡
⎤⎡⎤⎡⎤⎡
rrrrx 2
)cos( 2
)cos(
0)cos(
θθ
θ&
9/79
⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥⎥
⎢⎢⎢⎢
=⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥⎥⎤
⎢⎢⎢⎢⎡
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
L
R
L
R
vvrr
vv
rryx
2)sin(
2)sin(
-
2
2
100 )sin(0 )cos(
θθθθ
θ&&
⎥⎥⎥
⎦⎢⎢⎢
⎣
⎥⎦⎢⎣⎥⎦⎢⎣⎥⎦⎢⎣
Dr
DrDD -
1 0 θ
Ulazi kinematičkog modela su brzine lijevog i desnog kotača.Izlazi kinematičkog modela su koordinate pozicije (x,y) mobilnog robota i orijentacija (ugao θ).Neholonomsko ograničenje (nemogućnost bočnogNeholonomsko ograničenje (nemogućnost bočnog kretanja):
0cossin =−+ θθθ &&& dyx
Upravljanje kinematičkim modelom
Zahtjev koji se postavlja na upravljanje je da pogreška slijeđenja eksponencijalno teži ka nuli 10/79pogreška slijeđenja eksponencijalno teži ka nuli kao funkcija vremena, tj.:
ed
10/79
0=+ Keedtd
(*)
Pogreška pozicije je definirana kao:
⎤⎡⎤⎡ xx⎥⎦
⎤⎢⎣
⎡−⎥
⎦
⎤⎢⎣
⎡=−=
yx
yx
r
rr xxe
Uvjet (*) je zadovoljen za sljedeći zakon upravljanja:upravljanja:
rr xxxKv &+−= )( K mora biti pozitivno definitnamatrica.
Upravljanje kinematičkim modelom
Drugim riječima, potrebno je da vrijedi:11/790, 21 >kk 11/79
gdje su k1 i k2 elementi matrice K:
⎤⎡ 0k⎥⎦
⎤⎢⎣
⎡=
2
1
00k
kK
Na temelju prethodnog upravljačkog zakona, brzine lijevog i desnog kotača postaju:
RvxxxKvJ &+−==⎥
⎤⎢⎡ − )(1 Matrica Jacobiana J mora
rrLv
xxxKvJ +⎥⎦
⎢⎣
)(biti nesingularna.
Upravljanje kinematičkim modelom
Struktura sistema upravljanja ⎤⎡ 12/79
⎥⎦
⎤⎢⎣
⎡=
L
R
vv
v⎥⎦
⎤⎢⎣
⎡=
r
rr y
xx
xxe −= r
⎥⎦
⎤⎢⎣
⎡=
yx
x12/79
Regulator Mobilni robot
Parametri PD regulatora su ručno podešavani na načinParametri PD regulatora su ručno podešavani na način da se postigne što je moguće bolje slijeđenje referentne trajektorije. Pri tome su dobivene sljedeće vrijednostitrajektorije. Pri tome su dobivene sljedeće vrijednosti elemenata matrice K: k1=102.9822, k2=1.3536 [Velagić, Osmić i Lačević, 2008].
Upravljanje kinematičkim modelomRezultati upravljanja
4 13/79
3
13/79
1
2
U toku slijeđenja lemniskatne
0
y [m
] stvarnareferentna
lemniskatne trajektorije razmatraju se d i i i ij
-2
-1 odzivi pozicije, orijentacije i linearnih brzina
-3lijevog i desnog kotača.
-6 -4 -2 0 2 4 6-4
x [m]
Upravljanje kinematičkim modelomRezultati upravljanja
14/79
4
5referentnastvarna
14/79
2
3
m]
0
1
oord
inat
a [m
-2
-1
X k
o
-4
-3
0 20 40 60 80 100 120 140-5
Vrijeme [s]
Upravljanje kinematičkim modelom
4 15/79
Rezultati upravljanja
3
referentnastvarna
15/79
2
m]
0
1
oord
inat
a [m
-1
0
Y k
o
-2
0 20 40 60 80 100 120 140-3
Vrijeme [s]
Upravljanje kinematičkim modelom
200 16/79
Rezultati upravljanja
150
referentnastvarna
16/79
50
100
eg]
0
ijent
acija
[de
-100
-50Ori
-150
0 20 40 60 80 100 120 140-200
Vrijeme [s]
Upravljanje kinematičkim modelom
0.8 17/79
Rezultati upravljanja
0.7
17/79
0.5
0.6
otac
a [m
]/s
0.4
na d
esno
g k
0.2
0.3
inijs
ka b
rzin
0.1
L
0 20 40 60 80 100 120 1400
Vrijeme [s]
Upravljanje kinematičkim modelom
0.718/79
Rezultati upravljanja
0.6
]18/79
0.4
0.5
kota
ca [m
/s]
0.3
ina
lijev
og k
0.1
0.2
Lini
jska
brz
i
0
L
0 20 40 60 80 100 120 140-0.1
Vrijeme [s]
11.3. Upravljanje dinamičkim modelom
Za razliku od upravljanja kinematičkim modelom koji zahtijeva samo regulaciju brzine 19/79modelom, koji zahtijeva samo regulaciju brzine robota, kod upravljanja dinamičkim modelom mobilnog robota neophodno je regulirati, osim
19/79
mobilnog robota neophodno je regulirati, osim brzine, i poziciju robota (sljedeća slika). Prema tome ovdje postoji kaskadnaPrema tome, ovdje postoji kaskadna regulacija brzine i pozicije mobilnog robora. Unutarnji odnosno podređeni regulacijski krugUnutarnji, odnosno podređeni, regulacijski krug upravlja brzinom, a vanjski (nadređeni) krug upravlja pozicijom mobilnog robota Kodupravlja pozicijom mobilnog robota. Kod sinteze ova dva regulatora, prvo će se obaviti sinteza regulatora brzine, a nakon toga sinteza g , gregulatora pozicije robota.
Upravljanje dinamičkim modelom
Sistem upravljanja dinamičkim modelom mobilnog robota [Lačević Velagić 2005] 20/79mobilnog robota [Lačević, Velagić, 2005].
q&
20/79
dtd
Tr rq
rv
Regulator brzine
Dinamika robota i
τ euu q& Tv
ve qr
Tp
f(e,vr,k) pogona
q Nelinearni
regulator pozicije
q&)(qS
q∫q&
Upravljanje dinamičkim modelom
Dinamički model mobilnog robota sa diferencijalnim pogonom 21/79diferencijalnim pogonom.
Dinamičke jednadžbe:
21/79
Y
xm
ym v
RtrRLR
KAB
KBA
θθθ
θτθθ&&&&&
&&&&& −=+
y
m
θ
A
C LtrLLR KAB θτθθ −=+
⎞⎛ 22D 2r
d
⎟⎟⎠
⎞⎜⎜⎝
⎛++= 02
122
4I
DIrmrA
XxO ⎟⎟⎠
⎞⎜⎜⎝
⎛−= 2
122
4 DIrmrB
X xO ⎟⎠
⎜⎝
24 D
Upravljanje dinamičkim modelom
Općenito, zadatak regulatora mobilnog robota je da slijedi referentnu trajektoriju q koja se 22/79
rq&je da slijedi referentnu trajektoriju qr, koja semijenja brzinom .Na temelju dinamičkog modela robota se
22/79
Na temelju dinamičkog modela robota se dizajnira upravljački zakon za pogonske momente mobilnog robota, tako damomente mobilnog robota, tako da trajektorija mobilnog robota slijedi glatku zadanu trajektoriju. j jReferentna i stvarna trajektorija opisane su izrazima:
Trrrr yxt ] [)( θ=q
Tyxt ] [)( θ=q
Upravljanje dinamičkim modelom
Mobilni robot treba da slijedi referentnu trajektoriju tako da apsolutne vrijednosti 23/79trajektoriju tako da apsolutne vrijednosti pogrešaka koordinata i ugla:
23/79
|)()(||||)()(|||
tttxtxx re −=
|)()(||||)()(|||
tttytyy
re
re
θθθ −=−=
re
budu što je moguće manje, odnosno da teže ka nuli.
Upravljanje dinamičkim modelomZa potrebe slijeđenja referentne trajektorije često se koristi princip slijeđenja virtualnog
24/79(referentnog) robota.
Y referentni robot
24/79
x1 y1
θr
robot x
yr
y
θ
y
Xx xr
Upravljanje dinamičkim modelomPrincip slijeđenja virtualnog (referentnog) robota.
U lokalnom koordinatnom sistemu mobilnog 25/79grobota pogreške koordinata iznose:
25/79
⎥⎥⎤
⎢⎢⎡
−−
⎥⎥⎤
⎢⎢⎡−=⎥
⎥⎤
⎢⎢⎡
θθθθ
r
r
yyxx
ee
0 cos sin0 sin cos
2
1
d
⎥⎥⎦⎢
⎢⎣ −⎥⎥⎦⎢
⎢⎣⎥
⎥⎦⎢
⎢⎣ θθ r
r
e 1 0 0 3
2
odnosno:
)( qqTe −=
Da bi se dobio dinamički model pogreške
)( qqTe = rp
Da bi se dobio dinamički model pogreške slijeđenja potrebno je derivirati gornji izraz.
Upravljanje dinamičkim modelomPrincip slijeđenja virtualnog (referentnog) robota.
Deriviranjem se dobiva: 26/79j
rrrrrr
rrrr
yyvvxxvv
yyyyxxxxe
θθθθθθθθθθ
θθθθθθ
cos)(sin)sinsin(sin)(cos)coscos(
cos)(sin)(sin)(cos)(1
⋅−+−+⋅−−−=
⋅−+−+⋅−−−=&&
&&&&&&&
26/79
rrrrr
rrrrrr
rrrrrr
vvyyxx
yyvvxxvv
yyvvxxvv
θθθθθθθθθ
θθθθθθθθθθ
θθθθθθθθθθ
)sinsincos(cos)sin(cos)cos)(sin)((
cos)(sinsinsinsin)(coscoscos
cos)(sin)sinsin(sin)(cos)coscos(
22
22
−++−−+−−=
⋅−+−+⋅−−−=
++
&
&&
ere vvy θω cos +−=
yyyyxxxxe θθθθθθ sin)(cos)(cos)(sin)(2 ⋅−−−+⋅−−−−= &&&&&&&
rrrrrr
rrrrrr
rrrr
yyvvxxvv
yyvvxxvv
yyyyxxxxe
θθθθθθθθθθθθ
θθθθθθθθθθ
θθθθθθ
sin)(cossincossincos)(sincossincos
sin)(cos)sinsin(cos)(sin)coscos(
sin)(cos)(cos)(sin)(2
⋅−−−+⋅−−+−=
⋅−−−+⋅−−−−=
+
&
&&
&&
ere
rrrrr
vxvyyxx
θωθθθθθθθ
sin )sincoscos(sin)sin)(cos)((
+−=−+−+−−=
ωωθθ −=−= rre &&&3
Upravljanje dinamičkim modelomPrincip slijeđenja virtualnog (referentnog) robota.
Prema tome, model pogreške slijeđenja glasi:27/79
θωθω
++−= ere
vxevvye1
sincos
&
&Dinamika pogreške
27/79
ωωθω
−=+−=
r
ere
evxe
3
2 sin&
p gpredstavlja nelinearan dinamički sistem
Izborom upravljačkih ulaza dobiva se:Tuu ] [ 21=uuee +=& ω.
312
121
sin eveeuee
r+−=+=
& ωω
Zadatak je dizajnirati nelinearni upravljački zakon
23 ue =&
Zadatak je dizajnirati nelinearni upravljački zakon u=f(e) takav da cjelokupni sistem bude stabilan, te da pogreške pozicije i brzine konvergiraju ka nuli.
Upravljanje dinamičkim modelomSinteza regulatora brzine
Prije negoli se pređe na pronalaženje upravljačkog k i ij i ši ć i l 28/79zakona za poziciju, izvršit će se sinteza regulatora
brzine.Unutarnja regulacijska petlja linijskih i ugaonih brzina
28/79
Unutarnja regulacijska petlja linijskih i ugaonih brzina.
PI regulator Dinamika τ eu u q& Transformacija v
brzine robota + pogona brzina
.
Regulator brzine ima dva ulaza i dva izlaza. Ul i šk li ij kih i ih b i i i l iUlazi su greške linijskih i ugaonih brzina ev i eω, a izlazi momenti pogona lijevog i desnog kotača τL i τR.
Upravljanje dinamičkim modelomSinteza regulatora brzine
Veza između vektora i brzine robota v dana je q& 29/79relacijom:
q
vqq )(S=&29/79
odnosno:⎤⎡ −⎤⎡ θθx sincos&
⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
ωθθθθ
θ
vyx
10cos sinsin cos
&
&
Izrazi za linijske i ugaone brzine mobilnog robota
⎥⎦⎢⎣⎥⎦⎢⎣θ 1 0
su:&& += 22 yxv
θω &=
Upravljanje dinamičkim modelomSinteza regulatora brzine
Multivarijabilni PI regulator linijske i ugaone brzine30/79opisan je sljedećom jednadžbom u Laplaceovoj
domeni:
30/79
⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡==⎥
⎦
⎤⎢⎣
⎡=
)()(
)()()()(
)()()()(
)(2221
1211
sese
sGsGsGsG
Drses
Dr
ss
s vu
L
R
ωττ
Gτ
gdje je ev(s) greška linijske brzine i eω(s) pogreškaugaone brzine mobilnog robota.g gElementi Gij(s) su odabrani na sljedeći način:
11D
11
)11()(,)11(2
)(2
2121
111
DsT
KsGsT
DKsGii
+=+=
)11()(,)11(2
)(2
2221
121 sTKsG
sTDKsG
ii
+−=+=
Upravljanje dinamičkim modelomSinteza regulatora brzine
Regulacijska petlja brzine sa PI regulatorom:31/79
G11(s) τR G12(s)
ev
31/79
G21(s) G22(s)τL
Dinamika robota + pogona
u eu τ v
G21(s) G22(s)eω
Parametri PI regulatora su: K1 K2 Ti1 Ti2
100 60 20 20
Efikasnost projektiranog multivarijabilnog PIbrzinskog regulatora testirat će se pomoću skokovitih
100 60 20 20
brzinskog regulatora testirat će se pomoću skokovitihpobudnih funkcija, koje će respektivno predstavljatilinijsku i ugaonu brzinu.
Upravljanje dinamičkim modelomSinteza regulatora brzine
Rezultati simulacija 32/79Rezultati simulacija
1.2 1.2
32/79
0 6
0.8
1
)
setpointresponse
0 6
0.8
1
s)
responsesetpoint
0.2
0.4
0.6
v (m
/s
0.2
0.4
0.6
w (r
ad/s
0 0.5 1 1.5 2-0.2
0
0 0.5 1 1.5 2-0.2
0
t (s) t (s)
Dobro slijeđenje refrentnih trajektorija linijskih i ugaonih brzina.Bolje slijeđenje ugaone brzine.
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Kao regulator pozicije koristi se backstepping algoritam lj d ć i [L č ić & V l ić 2006] 33/79u sljedećem zapisu [Lačević & Velagić, 2006]:
)(11 xfpeu ⋅−= α
33/79
)(sin)(2)(
3212
2212
11
xgeqeveeq
pu
fp
r ⋅−+−= −αα (*)
gdje su p i q pozitivne realne konstante, α > 1 i f(x) i g(x)su funkcije vektora Rm N koje zadovoljavaju uvjet:
q
su funkcije vektora x∈Rm, m∈N, koje zadovoljavaju uvjet: ∃L>0: f(x), g(x) ≥ L, ∀x∈Rm.Ovaj upravljački zakon osigurava stabilnost slijeđenjaOvaj upravljački zakon osigurava stabilnost slijeđenja pozicije (teorem i dokaz teorema su u [Velagić, Lačević & Osmić, “Nonlinear motion control of mobile robot dynamic model”, book chapter in Motion planing and control of mobile robot: New Challenges, Vienna, 2008].
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Nepoznati parametri p, q, f i g upravljačkog 34/79algoritma odredit će se pomoću genetskog
algoritma (pretpostavka je da su funkcije f i gkonstantne)
34/79
konstantne).Svi navedeni parametri se kodiraju u binarni kromosom pri čemu je svaki parametarkromosom, pri čemu je svaki parametar predstavljen sa jednakim brojem bita.Struktura kromosoma predstavljena je na slici. p j j
p q f g
100 01 001 11 101 10 011 00 100..........01 001..........11 101..........10 011..........00
12 bita 12 bita 12 bita 12 bita 12 bita 12 bita 12 bita 12 bita
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Broj bita zapisanih u kromosomu je 48. Binarni broj 35/79se dekodira u realni pomoću sljedeće jednadžbe: 35/79
( )kkbkk ( )minmaxmin )12(kkbkk n −
−+=α
gdje su kmin i kmax donja i gornja granica vrijednosti k ( š l č j iparametra kα (u našem slučaju to su parametri p, q,
f i g), n je broj bita i b binarni broj zapisan na sljedeći način:sljedeći način:
∑−
=1
2n
iBb ∑=
=0
2i
iBb
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Dekodiranjem se binarni broj pretvara u 36/79potencijalno rješenje u intervalu [kmin, kmax].
Za svaku jedinku unutar kromosoma predlaže se lj d ć f k ij ilj [V l ić L č ić i P ičić
36/79
sljedeća funkcija cilja [Velagić, Lačević i Peruničić, 2006]:
( )( )[ ]
( )[ ]
( ))(max)(max1ln,0,0
3
1
tatadtteaF LttLRttRi
t
iiss
s
ττ∈∈⋅+⋅+
⎥⎥⎦
⎤
⎢⎢⎣
⎡+=∑ ∫
gdje su: .
[ ] [ ]1 0i ss= ⎥⎦⎢⎣
1,16,1,5,1 321 ====== LRs aataaagdje su: .Iz gornjeg izraza slijedi da bolje jedinke poprimajumanje vrijednosti F-a. Drugi dio izraza ima zadatak
,,,, 321 LRs
j j gda "sankcionira" (reducira) velike iznose pogonskih (upravljačkih) momenata.
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Za evoluciju koeficijenata koristi se funkcija u obliku 37/79lemniskate opisana sljedećim jednadžbama: 37/79
)sin()( tatx α=
)cos()sin()(
)(sin1)(
2
2
ttaty
ttx
r
r
ααα
=
+=
))()(arctan()(
)(sin1)( 2
ttyt
ty
rr
r
αα
θ
α
&
&=
+
gdje je α pozitivan parametar.
)( txr α
gdje je α pozitivan parametar. Lemniskata je složena funkcija i koeficijenti regulatora dobiveni evolucijom na temelju lemniskatne funkcije bi j j jtrebali dati dobre rezultate za slijeđenje putanje u obliku bilo koje druge jednostavnije funkcije.
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Vrijednosti parametara gornje jednadžbe za potrebe 38/79evolucije su a=1 i α=1.
Za evoluciju parametara backstepping regulatora se k i ti t d d i t ki l it liči
38/79
koristi standardni genetski algoritam sa veličinom populacije od 51 jedinke, turnirskom selekcijom, uniformnim križanjem bitovnom mutacijom sauniformnim križanjem, bitovnom mutacijom sa elitizmom (čuvanje najbolje jedinke). U simulaciji se za grešku orijentacije eθ(t) koristi j g j j θ( )sljedeća funkcija:
⎧ +< )22min(jeako πθθπθθθθθθ
⎪⎩
⎪⎨
⎧
<+++−−<−−−−+−−−<−−
=)2i (2jk2)2,min(2 je ako ,2)2,2min(je ako ,
θθθθθθθθπθθθθπθθπθθπθθπθθθθθθ
θ rrrr
rrrr
e⎪⎩ −−−<+−+− )2,min(2je ako ,2 πθθθθπθθπθθ rrrr
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Dijagram odvijanja procesa evolucije prikazan je na 39/79sljedećoj slici. 39/79
0.35
0.3
e
0.25
a do
brot
e
0.2
Funk
cija
0 1
0.15
0 10 20 30 40 500.1
Broj generacija
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Parametri nelinearnog backstepping algoritma dobiveni 40/79g pp g gprimjenom opisanog genetskog algoritma su:p = 1.9934, q = 0.0530, f = 9.8615, g = 2.9956,
40/79
Sistem upravljanja pozicijom i brzinom robota u Simulinku:
Xex
ey
e1ev τRrxr
τR
Xc
Ycθ
Xc'ey
eθ
e2
eθ
yr
θr
wr
Xc
Yc'
θ'
xdθ/ddx/dtdy/dt
v
wθ
e3
e T *e
ew τLr
Regulator
vr
Referent.trajektor
τL yx'y'
DinamikaBackstepping
v=Tv*q' em=Te*eq Regulator
brzine trajektor. Dinamika
robotaBackstepping
algoritam
Upravljanje dinamičkim modelomSinteza regulatora pozicije
Glavni nedostatak predloženog backstepping regulatora 41/79p g pp g gje što na početku slijeđenja virtualnog robota upravljački momenti rapidno rastu ako inicijalna pozicija virtualnog (referentnog) robota ne pripada pravcu koji je određen
41/79
(referentnog) robota ne pripada pravcu koji je određen pozicijom robota i njegovom inicijalnom orijentacijom.
1
0 0.5
virtualni robot
Jedan od načina rješavanja navedenog nedostatka je
-1 5
-1 -0.5
y [m
]
robot
navedenog nedostatka je modificiranje upravljačkog zakona (*), odnosno j hib idi ij
-2.5 -2
-1.5 njegova hibridizacija.
-3 -2 -1 0 1 -3 x [m]
11.4. Hibridni backstepping regulatorModifikacija upravljačkog zakona (*) se obavlja pomoću sljedećih izraza [Lačević i Velagić, 2005]:
42/7942/79
)())(1()()()()()()( 11
ttttttuttu α+
=
Funkcija ω (t) se generira pomoću strukture
)())(1()()()( 22 tttuttu sωαα −+=
Funkcija ωs(t) se generira pomoću strukture prikazane na slici.
K0
1(t)
1s
1/T1 d(t) ws(t)d(t)
Hibridni backstepping regulatorFunkcija d(t) je dana sa:
43/7943/79))())(),((atan2(sgn)( ttetetd xy θ−=
dok je funkcija α(t) određena sljedećom diferencijalnom jednadžbom:
)()()()(12
2
0 tztdt
tdbdt
tdb =++ ααα
gdje z(t) predstavlja skokovitu funkciju oblika:
dtdt
gdje z(t) predstavlja skokovitu funkciju oblika:
[ ]⎨⎧ =∈∃
=))(),((atan2)(:,0,1
)( 1111 tetetttAKOtz xyθ
⎩⎨= ostale za ,0
)(tz
Hibridni backstepping regulatorNa ovaj način robot prvo rotira oko svoje osi sapovećanjem ugaone brzine ωs(t) dok ne "ugleda"
44/79virtualnog robota. Nakon toga robot započinje slijediti virtualnog robota,
44/79
što je predočeno sljedećom slikom. 0.5
0virtualni
robot Usmjeravanje mobilnog robota prema virtualnom
-0.5
y [m
] robota prema virtualnom robotu u početnoj konfiguraciji.
-1
-2 -1.5 -1 -0.5 0 0.5-1.5
x [m]
Hibridni backstepping regulatorSimulacijska shema
45/7945/79
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
46/7946/79
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
47/7947/79
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
48/7948/79
1
1.2hibridni BS regulatorBS reg lator
0.8
1
ate
[m]
BS regulator
0 4
0.6
x ko
ordi
na
0.2
0.4
ogre
ška
x
0 2
0
Po
0 5 10 15-0.2
Vrijeme [s]
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
49/7949/79
1.4hibridni BS regulator
1
1.2
e [m
]
gBS regulator
0.6
0.8
koor
dina
te
0 2
0.4
greš
ka y
k
0
0.2
Pog
0 5 10 15-0.2
Vrijeme [s]
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
50/7950/79
2.5hibridni BS reg lator
1.5
2
ad]
hibridni BS regulatorBS regulator
0.5
1
enta
cije
[ra
-0.5
0
greš
ka o
rije
-1.5
-1Pog
0 5 10 15-2
Vrijeme [s]
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
51/7951/79
200 desni kotac
Backstepping regulator
100
200lijevi kotac
0
100
nt [N
m]
-100
Mom
e
-200
0 0.2 0.4 0.6 0.8 1Vrijeme [s]
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
52/7952/79
4d i k t
Hibridni backstepping regulator
2
3desni kotaclijevi kotac
0
1
i [N
m]
-1
0
Mom
ent
-3
-2
0 5 10 15-4
Vrijeme [s]
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
53/7953/79
60 desni kotac
Backstepping regulator
40
lijevi kotac
20
aga
[W]
-20
0Sna
-40
0 5 10 15Vrijeme [s]
Hibridni backstepping regulatorUsporedba rezultata hibridnog i običnog backstepping regulatora
54/7954/79
6
8x 10
4
desni kotaclij i k t
4
6 lijevi kotac
0
2
ergi
ja [W
]
-4
-2Ene
-8
-6
0 0.2 0.4 0.6 0.8 18
Vrijeme [s]
11.5. Neizraziti regulator pozicijeU primjeru se razmatra dvorazinski sistem upravljanja mobilnim robotom [Lačević, Velagić i Osmić, 2007;
55/79Lačević i Velagić, 2011], prikazan na sljedećoj slici.Upravljački sistem se sastoji od podređene regulacijske
55/79
petlje brzine mobilnog robota i nadređene regulacijske petlje pozicije mobilnog robota.
Regulator brzine
Dinamika robota i
τ eu u q&
Tv
ve qr Tp
f(e,θ) brzine pogona
q
p f
Neizraziti regulator pozicije
)(qSq&
∫q&
Neizraziti regulator pozicije
56/79
U nastavku će biti prikazana sinteza neizrazitogregulatora pozicije koji osigurava kvalitetno
56/79praćenje zadane trajektorije, uz relativno male norme aktuacijskih veličina.Odabrana je Sugenova konfiguracija nultog reda sadva ulaza i dva izlaza [Lačević, Velagić i Osmić,2007; Lačević i Velagić 2011] prikazana na slici2007; Lačević i Velagić, 2011] prikazana na slici.
Neizraziti regulator pozicijeUlazi i1 i i2 su odabrani na sljedeći način:
57/792222 57/792222
211 yx eeeei +=+=
))2(( θfi
gdje je funkcija f dana sa:
)),atan2((2 θ−= xy eefi
gdje je funkcija f dana sa:
( ) ⎟⎟⎞
⎜⎜⎛
⎟⎞
⎜⎛= tanatan2 xxf
Očit j d l i d t lj t t d lj t
( ) ⎟⎟⎠
⎜⎜⎝
⎟⎠
⎜⎝
=2
tanatan2xf
Očito je da ulaz i1 predstavlja trenutnu udaljenost mobilnog robota od virtualnog robota. Ulaz i2 je ugao koji zaklapaju pravac orijentacije robota i pravac kojikoji zaklapaju pravac orijentacije robota i pravac koji spaja mobilnog robota sa virtualnim robotom.
Neizraziti regulator pozicijeFunkcija f služi da taj ugao svede na interval (-π, π].
58/794
58/79
2
0
2
f
I l i i d t lj j k d li i-15 -10 -5 0 5 10 15
-4
-2
xIzlazi o1 i o2 predstavljaju komande za linearnu i ugaonu brzinu robota. Ul i i i i ć d li ti d ij t idUlazi i1 i i2 će se modelirati sa dvije trapezoidne, odnosno pet trokutastih funkcija pripadnosti. A i i k j d t lj j ij d ti ihApscisne osi, koja predstavljaju vrijednosti ovih varijabli će se respektivno determinirati sa jednim (a1) i sa šest parametara (b b b b b i b ) koji ćei sa šest parametara (b1, b2, b3, b4, b5 i b6), koji će predstavljati po jedan binarni kromosom.
Neizraziti regulator pozicijeProizvoljno postavljene funkcije pripadnosti ulaznih varijabli.
59/7959/79
dnos
ti
VE MA 1
upan
j pri
pad
Stu
i1 0 2a1
nost
i
NV NM ZE PM PV1
panj
pri
padn
Stup
i2
-π π 0 b2 b3 b4 b5 b6 b1
Neizraziti regulator pozicijeProizvoljno postavljene funkcije pripadnosti izlaznih varijabli.
60/7960/79
dnos
ti
NA MNA ST MNP NP 1
upan
j pri
pad
Vrijednosi izlaznih
Stu
o1 -2 0 c2 c3 c4 c5 2 c1
varijabli o1 i o2determiniraju se pomoću parametara c1,
nost
i
DE PR LE 1
p p 1c2, c3, c4 i c5, odnosno d1, d2 i d3
panj
pri
padn
Stup
o2 -2 0 2 d1 d3 d2
Neizraziti regulator pozicijeNakon determiniranja, formiran je potpun skup od 10 pravila:
61/7961/79
AKO (i1 je MA) I (i2 je NV) ONDA (o1 je MNA) (o2 je DE)AKO (i1 je MA) I (i2 je NM) ONDA (o1 je MNP) (o2 je DE)AKO (i1 je MA) I (i2 je NM) ONDA (o1 je MNP) (o2 je DE)AKO (i1 je MA) I (i2 je ZE) ONDA (o1 je ST) (o2 je PR)AKO (i1 je MA) I (i2 je PM) ONDA (o1 je MNP) (o2 je LE)AKO (i1 je MA) I (i2 je PM) ONDA (o1 je MNP) (o2 je LE)AKO (i1 je MA) I (i2 je PV) ONDA (o1 je MNA) (o2 je LE)AKO (i1 je VE) I (i2 je NV) ONDA (o1 je NA) (o2 je DE)AKO (i1 je VE) I (i2 je NV) ONDA (o1 je NA) (o2 je DE)AKO (i1 je VE) I (i2 je NM) ONDA (o1 je NP) (o2 je DE)AKO (i1 je VE) I (i2 je ZE) ONDA (o1 je NP) (o2 je PR)( j ) ( j ) ( j ) ( j )AKO (i1 je VE) I (i2 je PM) ONDA (o1 je NP) (o2 je LE)AKO (i1 je VE) I (i2 je PV) ONDA (o1 je NA) (o2 je LE)
Neizraziti regulator pozicijeParametri koji određuju funkcije pripadnosti neizrazitog regulatora su kodirani u binarni
62/79kromosom i podvrgnuti evoluciji, dok je skup pravila bio nepromjenjiv.
62/79
Svaki parametar je u kromosomu predstavljen sa po 12 bita.
a1 b1 b2 b3 b4 b5 b6 c1 c2 c3 c4 c5 d1 d2 d3
Za funkciju cilja korištena je sljedeća funkcija:
3 t ⎤⎡( )( )
[ ]( )
[ ]( ))(max)(max1ln
,0,0
3
1 0
tatadtteaF LttLRttRi
t
iiss
s
ττ∈∈
=
⋅+⋅+⎥⎥⎦
⎤
⎢⎢⎣
⎡+=∑ ∫
gdje je .
⎦⎣
1,16,1,5,1 321 ====== LRs aataaa
Neizraziti regulator pozicijeKod podešavanja parametara funkcija pripadnosti ulaznih i izlaznih varijabli cilj je bio smanjiti
63/79(ograničiti) momente desnog i lijevog kotača, uz istovremeno dobro slijeđenje referentne trajektorije.
63/79
U tom smislu je izabrana složena trajektorija trifolijumskog oblika. Za optimizaciju funkcija pripadnosti korišten je jednostavan genetski algoritam sa veličinom populacije od 51 jedinke turnirskom selekcijompopulacije od 51 jedinke, turnirskom selekcijom, uniformnim križanjem, bitovnom mutacijom sa uključenim elitizmom. jNakon sprovedenog postupka evolucije genetskim algoritmom dobivene su funkcije pripadnosti ulaznih g j p pi izlaznih varijabli prikazanih na sljedećim slajdovima.
Neizraziti regulator pozicijeFunkcije pripadnosti ulaznih varijabli
64/7964/79
Neizraziti regulator pozicijeFunkcije pripadnosti ulaznih varijabli
65/7965/79
1NV ZE PVNM PM
0.8
osti
0 4
0.6
nj p
ripad
no
0.2
0.4
Stu
pan
0
-3 -2 -1 0 1 2 3i2
Neizraziti regulator pozicijeFunkcije pripadnosti izlaznih varijabli
66/7966/79
1
1.2NA MNA ST MNP NP
0.8
1
0.6
upan
j pa
dnos
ti
0.2
0.4Stu
prip
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.50
oo1
Neizraziti regulator pozicijeFunkcije pripadnosti izlaznih varijabli
67/7967/791.2
DE PR LE
0.8
1
0.6
nj nost
i
0 2
0.4
Stu
pan
prip
adn
-2 5 -2 -1 5 -1 -0 5 0 0 5 1 1 5 2 2 50
0.2
2.5 2 1.5 1 0.5 0 0.5 1 1.5 2 2.5o2
Neizraziti regulator pozicijeBitna karakteristika ovako koncipiranog regulatorapozicije je da su njegovi izlazi inherentno ograničeni.
68/79Mana ovakvog koncepta je nemogućnost praćenja trajektorija koje podrazumijevaju veće brzine od
68/79
onih koje regulator može "predložiti". S druge strane, prednost leži u činjenici da aktuacijske veličine (konkretno brzine, a posljedično i momenti) ne mogu izaći iz unaprijed definiranih okviraokvira. Na temelju evoluiranih funkcija pripadnosti i odabranih pravila zaključivanja dobivaju se dvijeodabranih pravila zaključivanja dobivaju se dvije karakteristične upravljačke površine, po jedna pridružena svakom izlazu, predočene su slikama na p , psljedećem slajdu.
Neizraziti regulator pozicijeUpravljačke površine
69/7969/79
Neizraziti regulator pozicijeSimulacijski rezultati
Početno stanje robota je [x y θ] = [-1 -1 3π /4], a virtualnog b [0 0 0] 70/79robota [0 0 0].
Na slici je prikazano praćenje referentne trajektorije, gdje je kretanje referentnog virtualnog robota prikazano punom linijom
70/79
kretanje referentnog virtualnog robota prikazano punom linijom a stvarnog pomoću strelica.
Neizraziti regulator pozicijeSimulacijski rezultati
71/7971/79
Neizraziti regulator pozicijeSimulacijski rezultati
72/7972/79
Neizraziti regulator pozicijeSimulacijski rezultati
73/7973/79
Neizraziti regulator pozicijeSimulacijski rezultati
74/7974/79
Neizraziti regulator pozicijeSimulacijski rezultati
75/7975/79
Neizraziti regulator pozicijeSimulacijski rezultati
76/7976/79
Neizraziti regulator pozicijeSimulacijski rezultati
77/7977/79
3
4
2
3
0
1
uL(N
m)
-1
0 tau
3
-2
0 2 4 6 8 10 12 14 16 18 20-3
t(s)
Neizraziti regulator pozicijeSimulacijski rezultati
Sa slika se zapaža da robot jako dobro prati 78/79p j preferentnog robota i da je u stanju, bez obzira što nije krenuo iz iste tačke kao i referentni, za veoma kratko
ij h titi j k t j
78/79
vrijeme uhvatiti njegovo kretanje. Ovo se dobro vidi na slikama na kojima su prikazani d i i i k di todzivi x i y koordinata.
Osim u početnom dijelu, zbog različitih startnih tačaka u cijelom vremenskom intervalu praćenjatačaka, u cijelom vremenskom intervalu praćenja gotovo da i nema odstupanja koordinata stvarnog od koordinata referentnog robota.koordinata referentnog robota. U prilog ovoj prići idu rezultati orijentacije robota prikazani.prikazani.
Neizraziti regulator pozicijeSimulacijski rezultati
Kako je ranije naglašeno, glavni cilj sinteze 79/79Kako je ranije naglašeno, glavni cilj sinteze neizrazitog regulatora bio je smanjiti aktuacijske veličine (brzine, odnosno momente) koje djeluju
79/79
( ) j j jna kotače mobilnog robota, uz istovremeno dobro slijeđenje pozicije referentnog virtualnog robota.Ovaj cilj je u potpunosti ostvaren, a to j j jpotkrepljuju rezultati u odzivima brzina (slajdovi 74 i 75), odnosno momenata (slike 76 i 77).
top related