příklady k přednášce 5 identifikace - polyx · 2020. 4. 29. · pr-ari-052015-automatické...
TRANSCRIPT
Příklady k přednášce5 - Identifikace
Michael ŠebekAutomatické řízení 2020
29.04.2020
Automatické řízení - Kybernetika a robotika
• Hledáme
• Aplikujeme
1. Změříme
2. Vypočteme
• Klasické názvosloví: faktor útlumu, časová konstantatzv. logaritmický dekrement útlumu
• Pro zajímavost dále platí
Jiná metoda pro 2. řád bez nul kmitavý
Michael Šebek 2
2
2 2( )2
n
n n
G s ks s
ωζω ω
=+ +
( )( ) uu ss∞
=
12 2 2
2
( ) 2, ln , ,( ) 4 1
n
d
Ayku A T
µ πµ ζ ωπ µ ζ
∞= = = =
∞ + −
1 2( ), , , dy A A T∞
µ1 2A A 0T
1 1
2
1 2ln ,,1
n dTn d
nd
d
A Ae TA An T
ζω πµ ωζω== =−
=
( )y ∞
( )y t
dT
1A2A
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
• V limitě je závorka rovna nule, takže• Z definic je
• Při překmitu má závorka maximální hodnotu (tj. sin = -1), takže
• a z toho
Jiná metoda - odvození
Michael Šebek 3
( )2
22 2 2
( ) 1( ) ( ) ( ) 1 sin 12 1
ntnn
n n
uy s k y t ku e ts s s
ζωω ω ζ ϕζω ω ζ
− ∞
= ↔ = ∞ − − + + + −
( ) ( ) ( ) ( )y ku k y u∞ = ∞ → = ∞ ∞
( )
( )
1
1
1 12
2 2
2 2 2 2 2 2 2 2 2
2 2
2ln1
4 44
n A
n d
n A d
tT
n dt T
A Ae e TA Ae
ζωζω
ζω
πµ ζω ζζµµ µ ζ π ζ µ π µ ζ ζ
π µ
−
− += = → = = =
−
− = → = + → =+
( )
1 1
1
1
1
1 2 2
2 2
1 1( ) ( ) ( ) 1 ( ) ( )1 1
1( ) ( ) ( )1
n A n A
n A d
t tA
t TA d
A y t ku ku e ku ku e
A y t T ku ku e
ζω ζω
ζω
ζ ζ
ζ
− −
− +
= − ∞ = ∞ + − ∞ = ∞
− −
= + − ∞ = ∞−
2 2
2 2 21 1
d nd n d
TT
π π πωω ω ζ ζ
= = → =− −
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
• Pro aperiodické průběhy• Najdeme inflexní bod,
změříme (doba průtahu)a (doba „náběhu“)
• a vypočteme parametr
• Podle jeho velikosti aproximujeme průběh různými přenosy
Strejcova metoda identifikace
Michael Šebek 4
( )( )
( )
1 2
0.1 ( )1 1
0.1 ( )1 n
kG sT s T s
kG sTs
τ
τ
< → =+ +
≥ → =+
u
n
TT
τ =
nTuT
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
Případ , kdy hledámeparametry přenosu
v těchto krocích
Strejcova metoda
Michael Šebek 5
( )
1 1
11 2
2 1 2
2
12
2
1 2
( )1)( )
2) : ( ) 0.72 ( )
3)1.2564
4) 0.35745) ( )
6)
7) ,
yku
t y t ytT T
t T Ty t
TT
T T
τ
∞=
∞= ∞
+ =
= +
=
y(t2) τ2 y(t2) τ20.30 0.000 0.22 0.1830.29 0.023 0.21 0.2190.28 0.043 0.20 0.2640.27 0.063 0.19 0.3220.26 0.084 0.18 0.4030.25 0.105 0.17 0.5380.24 0.128 0.16 1.0000.23 0.154
( )( )1 2
( )1 1
kG sT s T s
=+ +
0.1τ <
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
Případ , kdy hledáme parametry přenosuv těchto krocích
1)
2) Skokovou odezvu normujeme na3) Sestrojíme tečnu v inflexním bodě a určíme4) Podle hodnoty určíme v tabulce nejbližší
vyšší řád n a přesnější souřadnici inflexního bodu
5) Z grafu určíme
6)
Strejcova metoda
Michael Šebek 6
( )( )
yku∞
=∞
n 2 3 4 5 6 7 8 9 10τ 0.104 0.218 0.319 0.41 0.493 0.57 0.642 0.709 0.773yi 0.264 0.327 0.359 0.371 0.384 0.394 0.401 0.407 0.413
0.1τ ≥
: ( )i i it y t y=
( ) 1y ∞ =u
n
TT
τ =
iy
1itT
n=
−
( )( )
1 nkG s
Ts=
+
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
Obecný pól plus integrátor
1. nakreslíme asymptotu v nekonečnu2. odečteme T3. odečteme τ a vypočteme
Obdobně pro složitější
1. k = směrnice asymptoty2. a platí
N-násobný pól plus integrátor bez nul
Michael Šebek 7
( )
( )( )asymptot
2
a
2
(
1
( )1
)
1
( )t T h t kh t kt kT kTe
k k Tk
t kT k
Tks Ts s s s
kG ss Ts
T
t T−=
= −
− = − =+
++ +
+
−
=
Tτ
kTτ
=
ARI-05-2018
( )( )
1 nkG s
s Ts=
+
T
( )h T
1( )( 1)!
nnh T ne
k n
−−=
−1 2 3 4 5
0.37 0.27 0.22 0.20 0.18( )h T k
n
Automatické řízení - Kybernetika a robotika
• Monotónní hladká odezva (dobře funguje pro odezvy tvaru „S“)
• Odečteme ustálenou hodnotu a předpokládáme, že -α je nejpomalejší pól
• To je rovnice přímky: směrnice určuje αa průsečík s osou určuje A
• Umístíme-li ji na graf (nebo pro )
• A určíme konstanty α, a• Pak totéž opakujeme pro
Další detaily a vlastnosti na příkladových slajdech
Vyšší řád a nuly - nekmitavý případ
Michael Šebek 8
( ) ( ) t t ty t y Ae Be Ceα β γ− − −= ∞ + + + +
( )( ) ( )
ln ln ln( ) ( )ln
ty t y AeA t ey t yA t
α
αα
−− ∞ ≅≅ −− ∞≅ −
( )ln ( ) ( )y t y− ∞( )ln ( ) ( )y y t∞ − 0A <
( )( ) ( ) tty t Bey ae βα −−− ≅∞ +
α
1( )y t
ARI-05-2015
Pokud je(jako v prvním kroku a možná v některém z dalších), je .Pak postup modifikujeme
Zjistíme a přidáme znaménko „-“
( ) ( ) 0y t y− ∞ <
0A <
( )( ) ( )
ln ln( ) ( )
ty y t AeA ty y t
α
α
−∞ − − ≅ −≅ −∞ −
A
Automatické řízení - Kybernetika a robotika
• Pokud je (jako v prvním kroku a možná v některém z dalších), je . Pak postup modifikujeme
Zjistíme a přidáme znaménko „-“• Místo výpočtu logaritmů je možno přímo kreslit na semilogaritmický papír
– ty bývají pro takže je lépe užít dekadický logaritmus.Pozor na
• Metoda je citlivá na nastavení přímek. • V rozumných případech (kvalitní data s málo šumem), dává dobrý fit odezvy• Což ale neznamená, že jsme dobře trefili časové konstanty
• Hezký příklad s ukázkou „numerických“ problémů je v učebniciFranklin-ed.6, s. 142, sekce 3.7
Další detaily k metodě „logaritmování“
Michael Šebek 9
α
1( )y t
( ) ( ) 0y t y− ∞ <0A <
( )( ) ( )
ln ln( ) ( )
ty y t AeA ty y t
α
α
−∞ − − ≅ −≅ −∞ −
A
10log10log ~ 0.4343e ≈
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
Ustálené zesílení z frekvenční odezvy
Michael Šebek 10
pro přenos
je počáteční hodnota amplitudové charakteristiky
pokud není pól v 0, můžeme odměřit a vypočítat
20log ( )M ω
ω
0ω
20log
20log (0)
k
M=
0dB
( )( )
( )
( )
1( )
1
j ii i
k kk k
T s s zF s k K
T s s p
+ += =
+ +
∏ ∏∏ ∏
[ ][ ]
dB
dB
(0)
(0) 20log (0)
20log
M k
M M
k k
=
=
= =
Pr-ARI-07-2019
( ) ( )M F jω ω=
( )
( )0lim ( ) (0)
ii
sk
k
zF s F k K
p→= = =
∏∏
Automatické řízení - Kybernetika a robotika
Bode 1. řád bez nul
11Michael Šebek
-30
-25
-20
-15
-10
-5
0
5
Mag
nitu
de (d
B)
10-1
100
101
-90
-45
0
Phas
e (d
eg)
Bode Diagram
Frequency (rad/s)
System: untitled1
Frequency (rad/s): 1
Magnitude (dB): -3.03
1T
1( )1
G sTs
=+
Automatické řízení - Kybernetika a robotika
1. řád s nulou
12Michael Šebek
-20
-15
-10
-5
0
Mag
nitu
de (d
B)
10-3
10-2
10-1
100
101
102
-60
-30
0
Phas
e (d
eg)
Bode Diagram
Frequency (rad/s)
1
1T2
1T 1
1T2
1T
1
2
11
T sT s
++
10-3
10-2
10-1
100
101
102
0
45
90
135
180P
hase
(deg
)Bode Diagram
Frequency (rad/s)
1
2
11
T sT s
−+
Automatické řízení - Kybernetika a robotika
2. řád kmitavý bez nul
Michael Šebek 13ARI-05-2019
2
2
1 2
1 2
p n
pn
ω ω ζ
ωω
ζ
= − →
=−
2
2 22n
n ns sωζω ω+ +
10-1
100
-25
-20
-15
-10
-5
0
5
10
From: In(1)
10-2
10-1
100
From: In(2)
Frequency (rad/s)
1nω =
,
,
, 2
2
2
12 1
11
2
p abs
p abs
p absM
MM
ζ ζ
ζ
=−
↓
−−
=
,2.55 0.2
p absM ζ= → =
2
2
1 2
1 2
p n
n p
ω ω ζ
ω ω ζ
= −
↓
= −
0.959 1p nω ω= → =
20,2
ζ
∈
2 ,12
ζ
∈
1( )2
12 ( ) 2
abs n
abs
abs n
M
dM
ωζ
ζω
= →
= =
převést z dB do absolutních
ARI-05-2019
Automatické řízení - Kybernetika a robotika
2. řád přetlumený bez nul
14Michael Šebek
-120
-100
-80
-60
-40
-20
0
Mag
nit
ud
e (d
B)
10-3
10-2
10-1
100
101
102
103
-180
-135
-90
-45
0
Ph
ase
(deg
)
Bode Diagram
Frequency (rad/s)
1
1T 2
1T
( )( )1 2
11 1T s T s+ +
Automatické řízení - Kybernetika a robotika
1. Mezi 100-1000 rad/s amplituda klesá (Dorf ed.11- 8.3 s 517)cca -20 dB/dekádu,odhadujeme pól
2. Fáze strmě roste (+180°) aodhadujeme pár komplex. nul v
3. Směrnice amplitudy se vrací k 0,za tušíme další pól:Tento pól je na protože
a fáze je tam +45°4. Zakreslíme asymptoty na máme
5. Rozdíl hodnoty asymptot od skutečné 6. na „rohové frekvenci“
je 10dB, z toho
Příklad: Identifikace z frekvenční odezvy
Michael Šebek 15
3dB( 300)G j = −
1 300p =( 2540) 0jϕ = °
2450nω =
50,000ω =2 20,000p =
3dB( 20,000)G j = −
( )( )( )
2
1 2
2 1( )
1 1n ns s
G ss p s pω ζω+ +
=+ +
2450nω =0.16ζ =
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
V kroku 5 vycházíme z převráceného grafupro rezonanční špičkupodle tlumení
komplexní póly komplexní nuly
Identifikace z frekvenční odezvy
Michael Šebek 16
[1 + (2ζ/ωn) jω+ ( jω/ωn)2]-1 [1 + (2ζ/ωn) jω+ ( jω/ωn)2]
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
Tedy nám celkem vyšlo
kontrola:Po změně časového měřítka
Dostaneme „hezčí čísla“
Identifikace z frekvenční odezvy
Michael Šebek 17
( ) ( )( )( )2
2
2
12450 0,32 2450( )
300 1 20000 1
780 600000020000 6000000
ssG s
s s
ss s
s
+ +=
+ +
+ +=
+ +
6000000
6000000ts s
tτ
τ
=
=2
2
0.32 1( )8.2 1
ss
sG ssτ
+ +=
+ +
Pr-ARI-05-2015
Automatické řízení - Kybernetika a robotika
(Astrom, Murray 2008, s. 285)• Spektrální analyzátor naměřil (za 1s)• Minima → frekvence nul• Maxima → frekvence pólů• Dobrý fit v okolí maxim a minim
→ tlumení, násobnosti nul a pólů• Po dobrém fitování amplitudové části
se najde dopravní zpoždění nastavenímfázové části Bodeho grafu
• Tak dostaneme
kde a
Atomic Force Microscope - Piezoelectric drive
Michael Šebek 18
( )( )( )( )( )
2 2 2 2 2 2 22 3 5 1 1 1 4 4 4
2 2 2 2 2 22 21 4 3 3 3 5 5 52 2 2
2 2( )
2 22
sk es s s sG s
s s s ss s
τω ω ω ζ ω ω ζ ω ωω ω ζ ω ω ζ ω ωζ ω ω
−+ + + +=
+ + + ++ +
2k kfω π=
1 1 2 2 3 3
4 4 5 5
2.42kHz, 0.03, 2.42kHz, 0.03, 2.42kHz, 0.03,2.42kHz, 0.03, 2.42kHz, 0.03
f f ff f
ζ ζ ζζ ζ
= = = = = == = = =
Pr-ARI-05-2018
Automatické řízení - Kybernetika a robotika
• Označme
• hodnoty jsou důležité pro řízení
• Gain ratio (podíl zesílení) udává obtížnost řízení
• Pro model
určíme parametry z
Identifikace z Nyquistova grafu
Michael Šebek 19
( ) , arg ( )G jK G jϕϕ ϕω ϕ ω= =0 0ω =
90ω
180ω
0K180K
90 180 0 90 180, , , ,K K Kω ω
180180
0
( )(0)
GKK G
ωκ = =
( )1
kG sTs
=+
2
180
arctan 1dT π κ
ω
−− −=
ARI-05-2015
( )1
dsTkG s eTs
−=+
1
0180
1,k K T κω
− −= =
Automatické řízení - Kybernetika a robotika
• Vhodným výběrem koeficientů
• napasujte funkci (lineární kombinaci bázových funkcí neboli regresorů )
• na data (neboli měření)
• tak, aby
• Obvykle je a neexistuje přesné řešení
• Takže hledáme nejlepší řešení ve smyslu nejmenších čtverců
Napasování na data - Data fitting
Michael Šebek 20ARI-05-2016
( ) ( ) ( ) ( )1 1 2 2 n ng t x g t x g t x g t= + + +
1 2, , , nx x x
( )ig t
( ) ( ) ( )1 1 2 2, , , n ng t y g t y g t y≈ ≈ ≈
( ) ( ) ( )1 1 2 2, , , , , ,n nt y t y t y
m n ( ) ( ) ( )1 1 2 2, , , n ng t y g t y g t y= = =
( ) ( ) ( )( )2
1 1 2 21min m
i i n n i iix g t x g t x g t y
=+ + + −∑
Automatické řízení - Kybernetika a robotika
• Data fitting převedeme na maticový problém
• pomocí
Napasování na data - Data fitting - pokračování
Michael Šebek 21ARI-05-2020
( ) ( ) ( )( ) ( ) ( )
( ) ( ) ( )
1 1 2 2 1 1 1
1 2 2 2 2 2 2
1 2
, ,
n
n
m m n m n m
g t g t g t x yg t g t g t x y
g t g t g t x y
= = =
A x b
min −x
Ax b
Automatické řízení - Kybernetika a robotika
• Pro
• Jsou bázové funkce
• a
• Při interpolaci je a splníme přesně řešením
• Při aproximaci je a snažíme se o malou odchylku
Data fitting s polynomy
Michael Šebek 22ARI-05-2016
2 11 11 1 1
2 12 22 2 2
2 1
11
, ,
1
n
n
nn mm m m
x yt t tx yt t t
x yt t t
−
−
−
= = =
A x b
( ) 2 11 2 3
nng t x x t x t x t −= + + +
( ) 1, 1, ,kkg t t k n−= −
m n= ( )i ig t y= =Ax b
m n> min −x
Ax b
Automatické řízení - Kybernetika a robotika
• Pro
• Minimalizujeme
• Vypočteme parciální derivace a položíme je rovné nule
• Z toho
Příklad - Nejmenší čtverce
Michael Šebek 23ARI-05-2016
2 0 11 1 , 0
0 2 1
= − = −
A b
( ) ( ) ( ) ( )2 2 2 2
1 1 2 21 1min 2 1 2 1m n
ij j ii ja x b x x x x
= =− = − + − + + +∑ ∑x
1 2 1 21 2
10 2 4 0, 2 10 4 0x x x xx x∂ ∂
= − − = = − + + =∂ ∂
( ) ( ) ( )2 2 21 21 3, 1 3 1 3 2 3 1 3 0.82x x= = − = − + − + ≈r
Automatické řízení - Kybernetika a robotika
• Pro
• je
• Pak
• Tedy
Příklad - Nejmenší čtverce
Michael Šebek 24ARI-05-2016
2 0 11 1 , 0
0 2 1
= − = −
A b
( ) ( ) ( )2 2 21 21 3, 1 3 1 3 2 3 1 3 0.82x x= = − = − + − + ≈r
( )1 1
11
5 1 2 1 0 5 1 2 5 1 2 1 3101 5 0 1 2 1 5 2 1 5 2 1 324
1
T T− −
−
− − − = = = = = − − − − − −
x A A A b
2 0 1 2 3 1 1 31 3
1 1 0 2 3 0 2 31 3
0 2 1 2 3 1 1 3
− = − = − − = − − = − − − − −
r Ax b
Automatické řízení - Kybernetika a robotika
Zadání: Napasuj polynom na funkci na intervalu [-1,1]
Řešení interpolací – stejný počet vzorků jako počet koeficientů polynomu
1. Vyber bodů a vypočti
2. Interpoluj přesným řešením
3. Výsledek
čárkovaně: fplnou čarou: gKroužky: body
• Větší počet n = m zřejmě nezlepší kvalitu napasování
Příklad - Data fitting interpolací
Michael Šebek 25ARI-05-2017
2
1( )1 25
f tt
=+
( )2( ) 1 1 25i if t t= +m n= [ ]1,1it ∈ −
=Ax b
( )g t
( ), ( ) ( )i i it f t g t=
Automatické řízení - Kybernetika a robotika
Stejný příklad jinak - Data fitting aproximací
Michael Šebek 26ARI-05-2017
Řešení aproximací – větší počet vzorků než počet koeficientů polynomu
1. Vyber polynom stupně a bodů a vypočti
2. Napasuj polynom minimalizací
3. Výsledek
čárkovaně: fplnou čarou: gkroužky: body
• Dostáváme zřejmě mnohem lepší výsledek než při interpolaci
[ ]1,1it ∈ −50n m =
( )2( ) 1 1 25i if t t= +1n −
=Ax b
( ), ( ) ( )i i it f t g t=
Automatické řízení - Kybernetika a robotika
Příklad - identifikace
Michael Šebek 27ARI-05-2016
Automatické řízení - Kybernetika a robotika
Pokračování příkladu - identifikace
Michael Šebek 28ARI-05-2016
Automatické řízení - Kybernetika a robotika
Příklad – řád modelu
Michael Šebek 29ARI-05-2016
Automatické řízení - Kybernetika a robotika
Příklad – validace modelu na jiných datech
Michael Šebek 30ARI-05-2016
Automatické řízení - Kybernetika a robotika
LS identifikace – další jemnosti
Michael Šebek 31ARI-05-2016
• Stochastický (Bayesovský) přístup – důkazy
• Numerická implementace• jednorázová identifikace• průběžná identifikace - rekurzivní postup
• Proměnné parametry• zapomínání, směrové zapomínání• adaptivní řízení
• Zabudování apriorní informace
• Identifikovaný systém není dostatečně vybuzen• lineární závislost dat – např. identifikace v uzavřené smyčce• návrh experimentu / volba budicího signálu
To vše až v dalších předmětech