PAR P O M I A RY • A U T O M AT Y K A • R O B O T Y K A
3/2019 ISSN 1427-9126 Indeks 339512
Cena 25,00 zł w tym 5% VAT
Technical Sciences Quarterly | ( ) * !
W numerze:
3 5
Od Redakcji Maria Wrzuszczak, Janusz Wrzuszczak
11
Sebastian Dudzik
17
27
!"
# $ $ !" !"
# % !" ! ! ! $ !" & $ ' ! !" !
Ponadto: Informacje dla Autorów – 81 | Nasze monografie – 85 | 86 | Kalendarium – 89 | Intelligent Autonomous Vehicles 2019 – 90 | ! "# 94 | $% & ! " # 97 | $% & ' ! (') *+*+,-. *+*+ /*+ 345 ! ! ! " ! " 98 | $% & ' ! 6 7 ! *+*+ -,*+*+4 ! ! ! 99 | Nasze wydawnictwa – 100
Rada Naukowa Rok 23 (2019) Nr 3(233) ISSN 1427-9126, Indeks 339512
Redaktor naczelny
, - ) ! ! H " '. & '. $ '. FL , ( . Z [ " \ $ ]@ ' ^
! " # $
, / 0 G " >$ '. G " $ '. _$`
& ! !
% & $ ' "
, 12
3, 4 A $ < '. ' $ Z [ " H . ]/ ' ^
$ !
5
62
2 Z [ " ]A '"^
% * " " + ' '. / 8 " " * % & $ ' " 8 " "' "; " "' " & < 8 $ ! " # $ 8 = "
+ $ ! !" ! > &
, + $ 7 ! @ E ' F ' 8 " " G " H " L GH + , 8 ), 7 " 2 A " Z " ' [ ]Z ^ , 6 #, 7 +"% @ # f
g'
Druk
, -, / ( !" $" '. ' G ] $ ^
# " / ?' < '" @ A BCC
, - ! (
! Z [ " ]@ ' ^ , ) ( $ A H ' @ E +
Wydawca @ E ' F ' 8 " " G " H " K L GH H$ * $ OCO COQTUB +
Kontakt ' $ Q '. ' " H " = " H$ * $ OCO COQTUB + $ OO UVT CX TB Y $
$
Pomiary Automatyka Robotyka ' Q '. ' " = 'Q " " XppV XU $ " g g' H $
" " $ " " ' `' " "' K "' "'. ' Q= ' "'. " = " $ $ Q '. ' " " H " = " " K = '. H#<>!m / $ @'. $ GA >q !f > AG!Z@ ]G!v OCXBw Vx OT^ K % K = "'. = % "'. $ '. ' $ ' "'. H GHA<H ' &A @+ =$ ' " U ] XOTT^ " `' `' g $ ' f A g " = " " " =$ K $ Q '. ' " " H " = " + ` ` ] '" `^ ' &A @+ =$ ' $ " H " = " " = ' OC ] " ' "'. ' "'. L ' g " "'. xX $ ' OCXp OVpCO^ " " '" $ " Q " $ '. $
+" $ " H " = " Q ?
K '. " pCV; Q ZA;OCXp L & A @ $ ' +"% ' "'. $ E '. `'` g
3 9, ( Z [ " ]/ ' ^ , - ! : +" # ` $ '. ' , . ), : 2 2 G ! $ @' ' & ] ^ , + " # " h [ [ $" '. 'j A $ Z [ " ]Z ^ , 1 * ! +" G %" # ` +"% @ > $ # ` + , - + ! $ Z [ " ] ^ , * + !" ! l Z [ " ]+ $ " ^ , + +" G %" ' " $ '. f $ . + ! H< 8 G H $ @" < '. $ " / =m ]A '"^ , 1 ; < +" & '. ' " < '. $ ' " $ '. _$` , # =2 ! @$ [ H' " @' ' ]@ ' ^ , 7 /!" < G " G " H " = " $ '. + ' , ! !" $ &G< Z [ " & $= ]H $ ^ , 1 /, 3 h " [ $" '. 'j A $ Z [ " ]Z ^
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
3
Od Redakcji
5
Maria Wrzuszczak, Janusz Wrzuszczak
Application of Wavelet Analysis in Defectoscopy with Pulsed Eddy Current
11
Sebastian Dudzik
Detection of Defects Using Active Thermography and k-Means Algorithm
17
! "
" Review of Discrete Time Sliding Mode Reaching Laws
27
! #
" $ " %
Comparison of Various Controller Parameters Optimization Strategies for Industrial Processes Using Different Control Performance Assessment Indexes
41
+ + ' '. @ " ' & ' @ ' " + ' '. & " Â? & ' +g @ " ! " # $ & ' ! ( ) * $ + ,- The Use of Rolling Stock as a Carrier of Sensors in the Field of Environmental Monitoring
55
#" '. + * ' '. $ . " - ( $ + ,- "
/ # Extended Method for Evaluation Uncertainties of Indirect Multiparameter & ! ' . & X G $ ' Correlation and Uncertainties of Processing Function â&#x20AC;&#x201C; Basic Formulas
65
" @ " " !. L Quality Management in Research Institutes
71
Jacek Dunaj 0 $ Control of Robot Movement to the Starting Position in Automatic Mode
81
1 &
X
@ G@ < >_!G
85
Nasze monografie
86
Wspomnienia Profesor $ !
89
Kalendarium
90
Konferencje | Relacja Intelligent ) 3 " !
HJLM
94
Konferencje | Relacja 51. ( & !
7 ! (
97
$ ' `% Metrologia $
98
$ ' `% AutoCAD HJHJ V 8/ HJHJ XHJLYZ[, # ! !
99
$ ' `% ) 6 2 HJHJ #8 V HJHJZ, #
100 : !
O
P
O
M
I
A
R
Y
â&#x20AC;¢
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;¢
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
f > H !*G
Drodzy Czytelnicy, $ " $ naukowo-technicznego Pomiary H " = " < " L% " $ ' " " " `' =$ " g L "'. "'. ] ` ?' ^ ` g ' " ' '. `' g " '. "'. # = " $ ' " " `'" $` "'. '. " "'. ` "= $ $ " " " " $ ' $ L ' L " "'. ' L$ " $g Â&#x201D; L ' " ' # '.g' " % ' " ' " A $ !"= = ' ' " $ $ + "' = "' "' " " = " + " L % " ` ' ` " '. = ' "'. " ` ' A '. $ ' $ " + + ' 8 $ " E * ' + = %`'" " $ ' % "'. 8 "$ $ $ 8 ' w GHv OCXp & & OCXp + +" '" 8 @ ' ' F ' 8 " G " H " L GH + 8 `' $ " numeru.
Redaktor naczelny kwartalnika Pomiary Automatyka Robotyka . = % ! " # $
3
4
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 5â&#x20AC;&#x201C;9, DOI: 10.14313/PAR_233/5
- & - .& .& / & Maria Wrzuszczak, Janusz Wrzuszczak 0 4 $ 6 8 $ 0 9 () ;/ & <$ =>?(>@ 4
Streszczenie: W publikacji przedstawiono zastosowanie przeksztaĹ&#x201A;cenia falkowego do analizy sygnaĹ&#x201A;Ăłw uzyskanych w wyniku badaĹ&#x201E; metali nieferromagnetycznych z wykorzystaniem zjawiska prÄ&#x2026;dĂłw wirowych technikÄ&#x2026; PEC. Badania przeprowadzono na prĂłbkach metali i stopĂłw o znanej konduktywnoĹ&#x203A;ci z wadami wzorcowymi w formie naciÄ&#x2122;Ä&#x2021; o znanych (zmierzonych) wymiarach geometrycznych. Zarejestrowane przebiegi napiÄ&#x2122;Ä&#x2021; wyjĹ&#x203A;ciowych z przetwornika wiroprÄ&#x2026;dowego poddano analizie z wykorzystaniem transformat falkowych ciÄ&#x2026;gĹ&#x201A;ej i dyskretnej. +$ ! \ & - .& .& / & $ -
1. Wprowadzenie Badania metodÄ&#x2026; prÄ&#x2026;dĂłw wirowych naleĹźÄ&#x2026; do grupy badaĹ&#x201E; nieniszczÄ&#x2026;cych (NDT) i speĹ&#x201A;niajÄ&#x2026; waĹźnÄ&#x2026; rolÄ&#x2122; w badaniach diagnostycznych metali i stopĂłw oraz wszelkich produktĂłw z nich wytworzonych. Badania takie moĹźna przeprowadzaÄ&#x2021; w sposĂłb bezstykowy, bezpoĹ&#x203A;rednio w procesie produkcji, jak rĂłwnieĹź później, w fazie uĹźytkowania produktu. SÄ&#x2026; szeroko stosowane w celu zapewnienia bezpieczeĹ&#x201E;stwa Ĺ&#x203A;rodkĂłw transportu (lotnictwo, kolej, transport morski), w energetyce, w przemyĹ&#x203A;le chemicznym i petrochemicznym a takĹźe w badaniach wytrzymaĹ&#x201A;oĹ&#x203A;ci metalowych konstrukcji. Przetwornik do badaĹ&#x201E; metodÄ&#x2026; prÄ&#x2026;dĂłw wirowych skĹ&#x201A;ada siÄ&#x2122; z cewki indukcyjnej wytwarzajÄ&#x2026;cej pole elektromagnetyczne (tak zwanej cewki wzbudzajÄ&#x2026;cej) oraz czujnika do pomiaru pola elektromagnetycznego, ktĂłrym moĹźe byÄ&#x2021; rĂłwnieĹź cewka lub dwie cewki w ukĹ&#x201A;adzie róşnicowym, wzglÄ&#x2122;dnie czujnik Halla lub czujnik magnetorezystancyjny AMR. MetodÄ&#x2026; prÄ&#x2026;dĂłw wirowych moĹźna wykrywaÄ&#x2021; wady typu pÄ&#x2122;kniÄ&#x2122;cia lub inne nieciÄ&#x2026;gĹ&#x201A;oĹ&#x203A;ci materiaĹ&#x201A;u na bardzo wczesnym etapie ich zaistnienia, zarĂłwno na powierzchni metalu jak rĂłwnieĹź niewidocznych, leĹźÄ&#x2026;cych w warstwie przypowierzchniowej. Obserwacja w czasie propagacji wad, uĹ&#x201A;atwia personelowi technicznemu podjÄ&#x2122;cie decyzji, co do dalszej eksploatacji lub koniecznoĹ&#x203A;ci wymiany elementu lub czÄ&#x2122;Ĺ&#x203A;ci konstrukcji. Okresowe badania waĹ&#x201A;Ăłw duĹźych maszyn elektrycznych, badania Ĺ&#x201A;oĹźysk, Ĺ&#x201A;opatek wirnikĂłw, spawĂłw, pozwalajÄ&#x2026; zapobiegaÄ&#x2021; awariom i katastrofom oraz zapewniÄ&#x2021; bezpieczeĹ&#x201E;stwo personelowi.
) ! \ " # $ % ) $ ! & '( !) *!'+ $ & & !+ !+ *!'+
!
W badaniach diagnostycznych metodÄ&#x2026; prÄ&#x2026;dĂłw wirowych waĹźne jest nie tylko wykrycie wady, ale rĂłwnieĹź klasyfikacja (jaki jest to rodzaj wady materiaĹ&#x201A;owej) oraz jakie sÄ&#x2026; jej wymiary. Naturalne wady mogÄ&#x2026; mieÄ&#x2021; oczywiĹ&#x203A;cie róşne ksztaĹ&#x201A;ty. Defekty wystÄ&#x2122;pujÄ&#x2026;ce w materiaĹ&#x201A;ach przewodzÄ&#x2026;cych moĹźna podzieliÄ&#x2021; w ogĂłlnoĹ&#x203A;ci na: nieciÄ&#x2026;gĹ&#x201A;oĹ&#x203A;ci materiaĹ&#x201A;u typu pÄ&#x2122;kniÄ&#x2122;cia, szczeliny, pustki oraz wtrÄ&#x2026;cenia obce (o innej konduktywnoĹ&#x203A;ci). PÄ&#x2122;kanie materiaĹ&#x201A;u rozpoczyna siÄ&#x2122; najczÄ&#x2122;Ĺ&#x203A;ciej od wady powierzchniowej, stÄ&#x2026;d waĹźnoĹ&#x203A;Ä&#x2021; wykrywania wĹ&#x201A;aĹ&#x203A;nie tego typu defektĂłw. Kolejnym zagadnieniem jest klasyfikacja wykrytych wad, okreĹ&#x203A;lenie (zmierzenie) ich rozmiarĂłw geometrycznych oraz w przypadku wad podpowierzchniowych podanie, na jakiej leĹźÄ&#x2026; gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;ci. Tak wiÄ&#x2122;c detekcja, klasyfikacja oraz pomiar to trzy etapy badaĹ&#x201E; diagnostycznych. Klasyfikacja wad w metalach i stopach oraz pomiar wielkoĹ&#x203A;ci charakteryzujÄ&#x2026;cych je ciÄ&#x2026;gle stawia sporo wyzwaĹ&#x201E; przed personelem wykonujÄ&#x2026;cym te badania. Jako jedno z moĹźliwych rozwiÄ&#x2026;zaĹ&#x201E; jest zastosowanie w badaniach metodÄ&#x2026; prÄ&#x2026;dĂłw wirowych techniki impulsowej PEC (ang. Pulsed Eddy Current) [1â&#x20AC;&#x201C;3].
H, . Cewka wzbudzajÄ&#x2026;ca przetwornika wiroprÄ&#x2026;dowego jest zwykle zasilana prÄ&#x2026;dem lub napiÄ&#x2122;ciem sinusoidalnie zmiennym o wybranej czÄ&#x2122;stotliwoĹ&#x203A;ci. Niejednokrotnie konieczne jest wykonanie badaĹ&#x201E; z uĹźyciem kilku czÄ&#x2122;stotliwoĹ&#x203A;ci wzbudzenia. Przyjmuje siÄ&#x2122;, Ĺźe gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;Ä&#x2021; wnikania prÄ&#x2026;dĂłw wirowych, a wiÄ&#x2122;c rĂłwnieĹź moĹźliwoĹ&#x203A;Ä&#x2021; wykrycia wad, zaleĹźy od czÄ&#x2122;stotliwoĹ&#x203A;ci prÄ&#x2026;du wzbudzenia wedĹ&#x201A;ug wzoru
δ =
1
Ď&#x20AC; f Îź0 ÎźrĎ&#x192;
(1)
gdzie: d â&#x20AC;&#x201C; gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;Ä&#x2021; wnikania prÄ&#x2026;dĂłw wirowych, ÂŚ â&#x20AC;&#x201C; czÄ&#x2122;stotliwoĹ&#x203A;Ä&#x2021; prÄ&#x2026;du wzbudzenia, m0 â&#x20AC;&#x201C; przenikalnoĹ&#x203A;Ä&#x2021; magnetyczna próşni, mr â&#x20AC;&#x201C; przenikalnoĹ&#x203A;Ä&#x2021; magnetyczna wzglÄ&#x2122;dna materiaĹ&#x201A;u (przewodnika), s â&#x20AC;&#x201C; konduktywnoĹ&#x203A;Ä&#x2021; materiaĹ&#x201A;u.
5
# $ " $ ` $ " ` =
Umownie przyjÄ&#x2122;ta wielkoĹ&#x203A;Ä&#x2021;, zwana gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;ciÄ&#x2026; wnikania prÄ&#x2026;dĂłw wirowych, jest to odlegĹ&#x201A;oĹ&#x203A;Ä&#x2021; od powierzchni metalu, na ktĂłrej gÄ&#x2122;stoĹ&#x203A;Ä&#x2021; prÄ&#x2026;du maleje do wartoĹ&#x203A;ci 1/e wartoĹ&#x203A;ci poczÄ&#x2026;tkowej na powierzchni metalu. Po podaniu sygnaĹ&#x201A;u impulsowego prostokÄ&#x2026;tnego na cewkÄ&#x2122; wzbudzajÄ&#x2026;cÄ&#x2026; uzyskuje siÄ&#x2122; zĹ&#x201A;oĹźony sygnaĹ&#x201A; odpowiedzi przetwornika (zwany dalej sygnaĹ&#x201A;em wyjĹ&#x203A;ciowym), ktĂłry jest sumÄ&#x2026; wielu harmonicznych, a wiÄ&#x2122;c uzyskuje siÄ&#x2122; informacje o zaburzeniach pola elektromagnetycznego tak, jak podczas badaĹ&#x201E; z uĹźyciem prÄ&#x2026;dĂłw sinusoidalnych o róşnych czÄ&#x2122;stotliwoĹ&#x203A;ciach (tzw. badaniach wieloczÄ&#x2122;stotliwoĹ&#x203A;ciowych). W artykule przedstawiono doĹ&#x203A;wiadczenia wĹ&#x201A;asne autorĂłw nabyte podczas badaĹ&#x201E; przeprowadzonych na wzorcach wykonanych z metali nieferromagnetycznych (aluminium i jego stopĂłw, mosiÄ&#x2026;dzu) z wadami nieciÄ&#x2026;gĹ&#x201A;oĹ&#x203A;ci w postaci naciÄ&#x2122;Ä&#x2021; i rowkĂłw o znanych rozmiarach. Na rysunku 1 przedstawiono schemat blokowy ukĹ&#x201A;adu badawczego. Zastosowano w nim przetwornik wiroprÄ&#x2026;dowy wĹ&#x201A;asnej konstrukcji, skĹ&#x201A;adajÄ&#x2026;cy siÄ&#x2122; z cewki wzbudzajÄ&#x2026;cej pole elektromagnetyczne oraz z dwu cewek w obwodzie wyjĹ&#x203A;ciowym w ukĹ&#x201A;adzie róşnicowym, peĹ&#x201A;niÄ&#x2026;cych funkcjÄ&#x2122; czujnika zmian pola elektromagnetycznego. Do badaĹ&#x201E; metali i stopĂłw technikÄ&#x2026; PEC zaprojektowano i wykonano ukĹ&#x201A;ad elektroniczny pozwalajÄ&#x2026;cy wygenerowaÄ&#x2021; krĂłtki impuls prÄ&#x2026;dowy. UkĹ&#x201A;ad ten wyzwalany jest sygnaĹ&#x201A;em prostokÄ&#x2026;tnym z generatora. SygnaĹ&#x201A; wyjĹ&#x203A;ciowy z przetwornika jest wzmacniany, a nastÄ&#x2122;pnie prze-
chodzi przez filtr dolnoprzepustowy. Do rejestracji sygnaĹ&#x201A;u wykorzystano oscyloskop cyfrowy. Badania prowadzono na prĂłbkach w ksztaĹ&#x201A;cie prostopadĹ&#x201A;oĹ&#x203A;cianu wykonanych z metalu lub stopu o znanej konduktywnoĹ&#x203A;ci, w ktĂłrych wykonano wady wzorcowe w formie naciÄ&#x2122;Ä&#x2021; o róşnych rozmiarach. W tabeli 1 zestawiono wymiary wad wzorcowych w jednym z pĹ&#x201A;askownikĂłw wykonanym z aluminium o konduktywnoĹ&#x203A;ci 35 MS/m. Wady wzorcowe w formie rowkĂłw zostaĹ&#x201A;y wykonane metodÄ&#x2026; elektroiskrowÄ&#x2026;. Metoda ta wykorzystuje zjawisko erozji materiaĹ&#x201A;u podczas powstawania wyĹ&#x201A;adowania elektrycznego miÄ&#x2122;dzy elektrodÄ&#x2026; a elementem przewodzÄ&#x2026;cym, wywoĹ&#x201A;anego napiÄ&#x2122;ciem impulsowym. W publikacji [4] opisano rĂłwnieĹź inne moĹźliwe do zastosowania techniki wykonania wad wzorcowych do badaĹ&#x201E; nieniszczÄ&#x2026;cych metodÄ&#x2026; prÄ&#x2026;dĂłw wirowych oraz przedstawiono sposoby zmierzenia rozmiarĂłw geometrycznych tak uzyskanych sztucznych wad w metalach, miÄ&#x2122;dzy innymi z wykorzystaniem mikroskopu. Podczas badaĹ&#x201E; metodÄ&#x2026; PEC rejestrowano sygnaĹ&#x201A; odpowiedzi przetwornika wiroprÄ&#x2026;dowego umieszczanego kolejno nad wadami powierzchniowymi o znanych rozmiarach geometrycznych w róşnych prĂłbkach metali lub stopĂłw. Jako sygnaĹ&#x201A; odniesienia uĹźyto sygnaĹ&#x201A; zarejestrowany z badaĹ&#x201E; prĂłbki materiaĹ&#x201A;u bez wad.
Y, ) !" $ Pakiet plikĂłw zawierajÄ&#x2026;cych zarejestrowane sygnaĹ&#x201A;y, uzyskanych w wyniku przeprowadzonych badaĹ&#x201E; nad zestawem prĂłbek z wybranego materiaĹ&#x201A;u poddano analizie z wykorzystaniem narzÄ&#x2122;dzia Wavelet Analyzer bÄ&#x2122;dÄ&#x2026;cego integralnÄ&#x2026; czÄ&#x2122;Ĺ&#x203A;ciÄ&#x2026; przybornika MATLAB Wavelet Toolbox ver. 5.2. Metody analizy falkowej, bazujÄ&#x2026;ce na ciÄ&#x2026;gĹ&#x201A;ej CWT oraz dyskretnej DWT analizie falkowej, znajdujÄ&#x2026; coraz szersze spektrum zastosowaĹ&#x201E; w analizie i przetwarzaniu sygnaĹ&#x201A;Ăłw [5â&#x20AC;&#x201C;8]. W omawianym przypadku poddano analizie sygnaĹ&#x201A;y jednowymiarowe typu 1D reprezentujÄ&#x2026;ce przebiegi napiÄ&#x2122;cia w dziedzinie czasu (rys. 2). Wykorzystano wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci transformaty falkowej do analizy sygnaĹ&#x201A;Ăłw niestacjonarnych [7]. Na rysunkach 3 i 4 przedstawiono dekompozycjÄ&#x2122; falkowÄ&#x2026; sygnaĹ&#x201A;u wyjĹ&#x203A;ciowego z przetwornika wiroprÄ&#x2026;dowego zarejestrowanego nad wadÄ&#x2026; typu rowek (nieciÄ&#x2026;gĹ&#x201A;oĹ&#x203A;Ä&#x2021;) w pĹ&#x201A;askowniku wykonanym ze stopu aluminium o konduktywnoĹ&#x203A;ci 35 MS/m. Ograniczono siÄ&#x2122; do piÄ&#x2122;ciu poziomĂłw dekompozycji.
Rys. 1. Schemat blokowy ukĹ&#x201A;adu badawczego Fig. 1. Block diagram of investigation system
Tab. 1. Wymiary wad wzorcowych (wzorzec nr 1) materiaĹ&#x201A;: aluminium o konduktywnoĹ&#x203A;ci 35 MS/m Tab. 1. Dimensions of flaws in aluminum samples with conductivity 35 106 S/m (width and depth)
*ĂĄÄ&#x160;ERNRÄ&#x17E;Ăź >PP@
Numer wady
6]HURNRÄ&#x17E;Ăź >PP@
1
0,2
0,8
2
0,4
0,8
3
0,6
0,8
4
0,8
0,8
5
1,0
0,8
6
1,5
0,8
7
2.0
0,8
8
2,5
0,8
9
3,0
0,8
10
3,5
0,8
Rys. 2. SygnaĹ&#x201A; wyjĹ&#x203A;ciowy z przetwornika wiroprÄ&#x2026;dowego PEC diagnozujÄ&#x2026;cego wzorzec aluminiowy z wadÄ&#x2026; o gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;ci 1,5 mm poddany analizie falkowej Fig. 2. Output signal from PEC transducer for flaw of 1.5 mm depth in Al probe investigated by wavelet methods
ĹšrĂłdĹ&#x201A;o: dane wĹ&#x201A;asne
6
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Maria Wrzuszczak, Janusz Wrzuszczak
Rys. 4. Analiza falkowa sygnału z rys.2 z zastosowaniem eliminacji progowej Fig. 4. Wavelet decomposition of signal from Fig. 2 with threshold elimination
Rys. 3. Analiza falkowa dla pięciu poziomów dekompozycji Fig. 3. Five level wavelet decomposition of signal
Sygnał badany można przedstawić w postaci sumy ważonej współczynników falkowych wfa ⎡⎣b ⎤⎦ i falek ψ t
()
a ,b
( ) ∑ ( f ,ψ )ψ
f t =
a ,b
a ,b
a ,b
=
∑ ∑ wf a
b
a
()
⎡⎣b ⎤⎦ψ t
a ,b
(2)
gdzie nawias oznacza iloczyn skalarny funkcji f i falki o współczynnikach a i b, natomiast falki
ψ (t )
a ,b
=
1 a
⎛t −b ⎞ ⎟ ⎝ a ⎠
ψ⎜
(3)
są składowymi wektora bazowego rozwinięcia funkcji f(t) w szereg, uzyskane przez operacje skalowania i translacji w dziedzinie czasu przeprowadzone na tzw. falce macierzystej mother wavelet (t). Grupując składniki sumy rozwinięcia względem kolejnych wartości współczynników skali i analizując odpowiadające im wagi można wykryć wzajemne uwarunkowania występowania podobieństwa kształtu falki o danym współczynniku skali w kolejnych interwałach czasu. Na rysunku 5 przedstawiono przebiegi czasowe trzech sygnałów z przetwornika wiroprądowego PEC diagnozującego wady typu rowki w aluminium o różniących się głębokościach. Przy-
Rys. 5. Przebieg czasowy trzech sygnałów wyjściowych z przetwornika PEC rozpoznającego wady w aluminium oznaczone jako a5, a7, a9 Fig. 5. Time response from PEC transducer for defects a5, a7, a9
jęto oznaczenia: a5 – wada o głębokości 1 mm, a7 – wada o głębokości 2 mm, a9 – wada o głębokości 3 mm. Sygnały te poddano analizie falkowej dyskretnej i ciągłej (rys. 6). Z kolei na rysunku 7 przedstawiono mapy współczynników dekompozycji trzech sygnałów wad różniących się głębokością. Analizę można rozszerzyć o badanie rozkładu mocy poszczególnych składowych dekompozycji w wybranych interwałach czasu. Jeśli wybrane sygnały charakteryzują określone rodzaje defektów, to wyróżnikiem informacji może być przesunięcie
7
# $ " $ ` $ " ` =
Rys. 8. Mapa wspĂłĹ&#x201A;czynnikĂłw korelacji szeĹ&#x203A;ciu sygnaĹ&#x201A;Ăłw (piÄ&#x2122;ciu sygnaĹ&#x201A;Ăłw wad róşniÄ&#x2026;cych siÄ&#x2122; gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;ciÄ&#x2026; i sygnaĹ&#x201A;u szĂłstego Fig. 8. Map of correlation coefficients for six signals (five testing signals from flaws with different depth and one from Al test sample without flaw) Rys. 6. Mapy wspĂłĹ&#x201A;czynnikĂłw dekompozycji po zastosowaniu transformacji falkowych dyskretnej i ciÄ&#x2026;gĹ&#x201A;ej jednego z sygnaĹ&#x201A;Ăłw (a7) z wykorzystaniem falki sym8 dla poziomĂłw 1â&#x20AC;&#x201C;5 Fig. 6. Maps of decomposition coefficients for discrete and continuous wavelet transform for signal a7 using sym8 wavelet with 5 levels
Ĺ&#x201A;Ăłw w dziedzinie czasu i czÄ&#x2122;stotliwoĹ&#x203A;ci. W obecnoĹ&#x203A;ci niektĂłrych rodzajĂłw wad stwierdzono zaleĹźnoĹ&#x203A;Ä&#x2021; miÄ&#x2122;dzy amplitudÄ&#x2026;, ksztaĹ&#x201A;tem lub przesuniÄ&#x2122;ciem w czasie sygnaĹ&#x201A;u badanego i referencyjnego. Transformacja falkowa jest szczegĂłlnie przydatna do analizy cech sygnaĹ&#x201A;Ăłw niestacjonarnych. NarzÄ&#x2122;dzia wykorzystujÄ&#x2026;ce technikÄ&#x2122; falkowÄ&#x2026; pozwalajÄ&#x2026; rĂłwnieĹź na odfiltrowanie zakĹ&#x201A;ĂłceĹ&#x201E; na podstawie doboru progĂłw filtrĂłw (rÄ&#x2122;cznie, metodÄ&#x2026; optymalizacji lub z wykorzystaniem innych algorytmĂłw eliminacji progowej) dla róşnych poziomĂłw dekompozycji.
^ 1. He Y., Luo F., Pan M., Weng F., Hu X., Gao J., Liu B., Pulsed eddy current technique for defect detection in aircraft riveted structures. Elsevier, â&#x20AC;&#x153;NDT & E Internationalâ&#x20AC;?, Vol. 43, No. 2, 2010, 176â&#x20AC;&#x201C;181, DOI: 10.1016/j.ndteint.2009.10.010. 2. Sophian A., Tian G.Y., Taylor D., Rudlin J., Design of a pulsed eddy current sensor for detection of defects in aircraft lap-joins. Elsevier, â&#x20AC;&#x153;Sensors and Actuators Aâ&#x20AC;?, Vol. 101, No. 1â&#x20AC;&#x201C;2, 2002, 92â&#x20AC;&#x201C;98, DOI: 10.1016/S0924-4247(02)00195-4. 3. Wrzuszczak M., Wrzuszczak J., Badania diagnostyczne metali i stopĂłw metodÄ&#x2026; PEC, â&#x20AC;&#x17E;Zeszyty Naukowe WydziaĹ&#x201A;u Elektrotechniki i Automatyki Politechniki GdaĹ&#x201E;skiejâ&#x20AC;?, Nr 59, 2018, 215â&#x20AC;&#x201C;218, DOI: 10.32016/1.59.47. 4. Wrzuszczak M., Wytwarzanie wzorcĂłw wad w materiaĹ&#x201A;ach przewodzÄ&#x2026;cych dla celĂłw diagnostyki wiroprÄ&#x2026;dowej, â&#x20AC;&#x17E;Pomiary Automatyka Robotykaâ&#x20AC;?, R. 14, Nr 12, 2010, 138â&#x20AC;&#x201C;141. 5. Lingqi Li, Kazuhiko Tsukada, Koichi Hanasaki, Zheng Liu, Fusion of Multi-Frequency Eddy Current Signals by using Wavelet Analysis Method. ISIF 2002, 108â&#x20AC;&#x201C;113. 6. Sasi B., Rao B.P.C., Thirunavukkarasu S., Jayakumar T., Kalyanasundaram P., Wavelet transform based method for eddy current testing of cladding tubes. NDE 2002, Predict, Assure, Improve, National Seminar of ISNT Chennai, www. nde2002.org. 7. BiaĹ&#x201A;asiewicz J.T., Falki i aproksymacje, Wydawnictwo Naukowo-Techniczne, Warszawa 2000. 8. Ewert P., DorosĹ&#x201A;awska A., Zastosowanie analizy falkowej do wykrywania uszkodzeĹ&#x201E; Ĺ&#x201A;oĹźysk tocznych, â&#x20AC;&#x17E;PrzeglÄ&#x2026;d Elektrotechnicznyâ&#x20AC;?, R. 93, Nr 1, 2017, 305â&#x20AC;&#x201C;310, DOI: 10.15199/48.2017.01.72.
Rys. 7. PorĂłwnanie amplitud wspĂłĹ&#x201A;czynnikĂłw dekompozycji dla trzech sygnaĹ&#x201A;Ăłw wad w aluminium, oznaczonych a5, a7, a9 Fig. 7. Comparison of decomposition coefficients for signals a5, a7, a9 of Al defects
fazowe sygnaĹ&#x201A;u badanego wzglÄ&#x2122;dem sygnaĹ&#x201A;u referencyjnego (pochodzÄ&#x2026;cego z materiaĹ&#x201A;u bez wady) wyznaczane metodami korelacji. Na rysunku 8 przedstawiono mapÄ&#x2122; wartoĹ&#x203A;ci wspĂłĹ&#x201A;czynnikĂłw korelacji szeĹ&#x203A;ciu sygnaĹ&#x201A;Ăłw, z ktĂłrych piÄ&#x2122;Ä&#x2021; jest sygnaĹ&#x201A;ami wad, a ostatni â&#x20AC;&#x201C; szĂłsty pochodzi od prĂłbki bez wady. NajmniejszÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; wspĂłĹ&#x201A;czynnika korelacji uzyskano dla pary sygnaĹ&#x201A;Ăłw a2 i a3. Im mniejsza wartoĹ&#x203A;Ä&#x2021; wspĂłĹ&#x201A;czynnika korelacji tym wiÄ&#x2122;ksze sÄ&#x2026; róşnice w sygnaĹ&#x201A;ach, co moĹźna wykorzystaÄ&#x2021; do klasyfikacji wad materiaĹ&#x201A;owych.
], <!
Przedstawione wyniki badaĹ&#x201E; pozwalajÄ&#x2026; stwierdziÄ&#x2021; duĹźÄ&#x2026; przydatnoĹ&#x203A;Ä&#x2021; ciÄ&#x2026;gĹ&#x201A;ej i dyskretnej transformaty falkowej do wykrywania i klasyfikacji wad w metalach z wykorzystaniem techniki PEC poprzez wyodrÄ&#x2122;bnienie charakterystycznych cech sygna-
8
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Maria Wrzuszczak, Janusz Wrzuszczak
8 - # 8 E - 0 & B&& Abstract: In the paper there are presented the results of an experimental research oriented towards solving defectoscopy problems applying continuous and discrete wavelet transform (CWT and DWT) for pulsed eddy current response analysis. The investigations has been performed on some sets of categories of material flaws made of different metals of, with various depth, width and regular/ non regular shapes fabricated in form surface and subsurface defects. Detecting and recognizing selected types of flaws and classifying them due to derivation of distinguished features of the tested materials has been performed in an environment of MATLAB Wavelet Toolbox ver. 5.2 in the framework of Wavelet Analyzer functionality. The certain part of analysis was made out with Multiple 1D tool and Regression Estimation 1-D support taking advantage of their facilities. In fact some families of signal records exhibited correlation between lag versus reference signal and flaw properties, while in the other cases the amplitude or shape of the signal was the crucial thing. The proposed approach seems as affective tool for PEC defectoscopy and defectometry. Keywords\ & && A$ 0B $
< = % > ?
% ;
% & ORCID: 0000-0001-7236-8259
% & ORCID: 0000-0002-6487-5995
F - & # & B $ 8 6 - ? 0 4 # *!'* ? G & / ? A F . / 9 . & / ? A $ - & $ - A 9 / & 9 &. .&9
0 6 8 # & B $ 8 6 - 0 4 F / 9 & / $ ? 9 $ & ? &9 & $ A
9
NR 3/2015
10
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 11â&#x20AC;&#x201C;15, DOI: 10.14313/PAR_233/11
# & - 9 A H A ? & Sebastian Dudzik 0 $ # & B $ 6 4 9 0 $ 8 I '($ =*?*!!
Streszczenie: W pracy przedstawiono nowÄ&#x2026; metodÄ&#x2122; wykrywania defektĂłw materiaĹ&#x201A;owych z wykorzystaniem termografii aktywnej. W celu zwiÄ&#x2122;kszenia kontrastu cieplnego dokonano przetwarzania wstÄ&#x2122;pnego zarejestrowanej sekwencji termogramĂłw metodami morfologii matematycznej. Do wykrywania defektĂłw zastosowano algorytm k-Ĺ&#x203A;rednich. W pracy zbadano wpĹ&#x201A;yw miary odlegĹ&#x201A;oĹ&#x203A;ci uĹźywanej w opisywanym algorytmie oraz doboru danych wejĹ&#x203A;ciowych na efektywnoĹ&#x203A;Ä&#x2021; opisywanej metody. Eksperyment przeprowadzono dla prĂłbki wykonanej z kompozytu zbrojonego wĹ&#x201A;Ăłknem wÄ&#x2122;glowym (CFRP). W badaniach stwierdzono, Ĺźe najmniejsze bĹ&#x201A;Ä&#x2122;dy wykrywania defektĂłw za pomocÄ&#x2026; opisywanej metody uzyskuje siÄ&#x2122; dla kwadratowej odlegĹ&#x201A;oĹ&#x203A;ci euklidesowej. +$ ! \ A k? & $ & - 9 $ A H
1. Wprowadzenie 1.1. Zastosowanie metod grupowania $ !" Do wykrywania defektĂłw w obiektach â&#x20AC;&#x201C; bez zmiany wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci materiaĹ&#x201A;Ăłw, z ktĂłrych zostaĹ&#x201A;y one wykonane â&#x20AC;&#x201C; stosowane sÄ&#x2026; róşne metody, w tym metody ultradĹşwiÄ&#x2122;kowe, magnetyczno-proszkowe lub wizualne [1]. W przypadku, gdy defekty znajdujÄ&#x2026; siÄ&#x2122; w strefie przypowierzchniowej (w praktyce nie gĹ&#x201A;Ä&#x2122;biej niĹź jeden centymetr, zaleĹźnie od dyfuzyjnoĹ&#x203A;ci cieplnej materiaĹ&#x201A;u i energii ĹşrĂłdĹ&#x201A;a wymuszenia) moĹźliwe jest zastosowanie termografii aktywnej [2â&#x20AC;&#x201C;5]. W kaĹźdej z metod termografii aktywnej badany obiekt (prĂłbkÄ&#x2122; materiaĹ&#x201A;u) nagrzewa siÄ&#x2122; za pomocÄ&#x2026; wybranej metody wymuszenia (np.: fotoelektrycznie lub za pomocÄ&#x2026; drgaĹ&#x201E; mechanicznych). W wyniku nagrzewania, w zaleĹźnoĹ&#x203A;ci od wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci cieplnych materiaĹ&#x201A;u, warunkĂłw poczÄ&#x2026;tkowych i brzegowych ustalonych w eksperymencie, na powierzchni badanego obiektu powstaje nieustalony rozkĹ&#x201A;ad temperatury. RozkĹ&#x201A;ad ten jest nastÄ&#x2122;pnie rejestrowany z okreĹ&#x203A;lonÄ&#x2026; czÄ&#x2122;stotliwoĹ&#x203A;ciÄ&#x2026; prĂłbkowania za pomocÄ&#x2026; kamery termowizyjnej [6] w formie sekwencji termogramĂłw. W dalszej kolejnoĹ&#x203A;ci, w celu wykrycia defektu, zarejestrowana sekwencja jest poddawana przetwarzaniu, z wykorzystaniem wybranych metod, w tym metod uczenia maszynowego [7â&#x20AC;&#x201C;10]. W tracie przetwarzania zarejestrowane pole temperatury przybiera formÄ&#x2122;
) ! \ / E & $ /& &% ) $ ! & !+ !( *!'+ $ & & '! !+ *!'+
!
przebiegĂłw czasowych dla kaĹźdego z pikseli znajdujÄ&#x2026;cych siÄ&#x2122; w polu widzenia termogramu powierzchni badanego obiektu. Z punktu widzenia metod uczenia maszynowego przebiegi te stanowiÄ&#x2026; wielowymiarowe obserwacje, ktĂłre moĹźna interpretowaÄ&#x2021; jako punkty w n-wymiarowej przestrzeni cech, przy czym cechy to chwile czasowe wynikajÄ&#x2026;ce z czÄ&#x2122;stotliwoĹ&#x203A;ci prĂłbkowania. JednÄ&#x2026; z metod uczenia maszynowego, w grupie tzw. metod bez nadzoru jest analiza skupieĹ&#x201E;, zwana rĂłwnieĹź klasteryzacjÄ&#x2026; lub grupowaniem [11, 12]. Analiza skupieĹ&#x201E; polega na podziale zbioru obiektĂłw na podzbiory, przy czym w poszczegĂłlnych podzbiorach znajdujÄ&#x2026; siÄ&#x2122; obiekty â&#x20AC;&#x17E;podobneâ&#x20AC;? do siebie. PodobieĹ&#x201E;stwo okreĹ&#x203A;la siÄ&#x2122; na podstawie specjalnej metryki (funkcji podobieĹ&#x201E;stwa), ktĂłrej wartoĹ&#x203A;Ä&#x2021; uzyskiwana jest z wykorzystaniem poszczegĂłlnych cech grupowanych obiektĂłw. Ostatecznie w wyniku grupowania powstaje k zbiorĂłw obiektĂłw, wykazujÄ&#x2026;cych podobieĹ&#x201E;stwo w sensie kryterium okreĹ&#x203A;lonego metrykÄ&#x2026; podobieĹ&#x201E;stwa. Istnieje wiele metod grupowania, w tym: metody hierarchiczne [13], metody k-Ĺ&#x203A;rednich oraz metody grupowania rozmytego [14]. W niniejszej pracy zastosowano algorytm k-Ĺ&#x203A;rednich. Podstawowa postaÄ&#x2021; algorytmu dziaĹ&#x201A;a w nastÄ&#x2122;pujÄ&#x2026;cy sposĂłb [14]: Etap 1. Inicjalizacja a. Przyjmuje siÄ&#x2122;, Ĺźe przynaleĹźnoĹ&#x203A;Ä&#x2021; poszczegĂłlnych obiektĂłw do grup nie jest znana. ZaĹ&#x201A;óşmy, Ĺźe zbiĂłr obiektĂłw opisany jest nastÄ&#x2122;pujÄ&#x2026;cÄ&#x2026; macierzÄ&#x2026; o wymiarach n Ă&#x2014; d:
â&#x17D;&#x203A; x11 x12 ! x1d â&#x17D;&#x17E; â&#x17D;&#x153; â&#x17D;&#x; â&#x17D;&#x153; x 21 x 22 ! x 2d â&#x17D;&#x; â&#x17D;&#x;, O=â&#x17D;&#x153; â&#x17D;&#x153; # # # # â&#x17D;&#x; â&#x17D;&#x153; â&#x17D;&#x; â&#x17D;&#x153;x â&#x17D;&#x; x ! x nd â&#x17D; â&#x17D;? n1 n 2
(1)
gdzie: n â&#x20AC;&#x201C; liczba obiektĂłw, d â&#x20AC;&#x201C; liczba cech.
11
+" " L " " ? " $ " Q '.
b. OkreĹ&#x203A;la siÄ&#x2122; liczbÄ&#x2122; skupieĹ&#x201E; (grup) k oraz rozmieszcza siÄ&#x2122; centroidy reprezentujÄ&#x2026;ce grupy w poĹ&#x201A;oĹźeniach poczÄ&#x2026;tkowych w przestrzeni cech. NaleĹźy podkreĹ&#x203A;liÄ&#x2021;, czÄ&#x2026;tkowe rozmieszczenie centroidĂłw ma duĹźy wpĹ&#x201A;yw na ostateczny wynik grupowania i moĹźe decydowaÄ&#x2021; o ostatecznym czasie wykonania algorytmu. c. Na podstawie odlegĹ&#x201A;oĹ&#x203A;ci miÄ&#x2122;dzy poszczegĂłlnymi punktami danych a centroidami oblicza siÄ&#x2122; poczÄ&#x2026;tkowÄ&#x2026; macierz odlegĹ&#x201A;oĹ&#x203A;ci. Do obliczeĹ&#x201E; uĹźywane sÄ&#x2026; róşne miary odlegĹ&#x201A;oĹ&#x203A;ci, w tym np. odlegĹ&#x201A;oĹ&#x203A;Ä&#x2021; euklidesowa [11]. W dalszej kolejnoĹ&#x203A;ci kaĹźdy obiekt ze zbioru O przypisuje siÄ&#x2122; do centroidu. Niech O bÄ&#x2122;dzie zbiorem danych, zawierajÄ&#x2026;cych n przypadkĂłw i reprezentowanym za pomocÄ&#x2026; macierzy (1), a {C1, C2, â&#x20AC;Ś, Ck} bÄ&#x2122;dzie oznaczaÄ&#x2021; zbiĂłr k rozĹ&#x201A;Ä&#x2026;cznych grup w zbiorze O. Obiekt x przypisuje siÄ&#x2122; do grupy poczÄ&#x2026;tkowej C i0 , speĹ&#x201A;niajÄ&#x2026;cej nastÄ&#x2122;pujÄ&#x2026;cy warunek:
{
}
( ( )) â&#x2030;¤ L ( x, Îź (C )) , â&#x2C6;&#x20AC;j,
C i0 = x : L x, Îź C i0
1< j <k ,
0 j
reprezentujÄ&#x2026;cymi obszar tĹ&#x201A;a (obszar pozbawiony defektu). Do iloĹ&#x203A;ciowego oszacowania dokĹ&#x201A;adnoĹ&#x203A;ci wykrywania defektu zastosowano nastÄ&#x2122;pujÄ&#x2026;ce kryteria: 1. BĹ&#x201A;Ä&#x2026;d w obszarze defektu:
(6)
gdzie: Nd â&#x20AC;&#x201C; liczba pikseli w grupie przypisanej obszarowi defektu, tj. pikseli, ktĂłre przez algorytm k-Ĺ&#x203A;rednich zostaĹ&#x201A;y wskazane jako piksele reprezentujÄ&#x2026;ce obszar powierzchni nad defektem, Nwd â&#x20AC;&#x201C; caĹ&#x201A;kowita liczba pikseli w obszarze defektu. 2. BĹ&#x201A;Ä&#x2026;d w obszarze tĹ&#x201A;a: (7)
(2)
gdzie: Ns â&#x20AC;&#x201C; liczba pikseli w grupie przypisanej obszarowi tĹ&#x201A;a, tj. pikseli, ktĂłre przez algorytm k-Ĺ&#x203A;rednich zostaĹ&#x201A;y wskazane jako piksele reprezentujÄ&#x2026;ce obszar powierzchni, pod ktĂłrym nie wystÄ&#x2122;pujÄ&#x2026; defekty, Nws â&#x20AC;&#x201C; caĹ&#x201A;kowita liczba pikseli w obszarze tĹ&#x201A;a.
( )
gdzie: Îź C j0 â&#x20AC;&#x201C; poczÄ&#x2026;tkowe poĹ&#x201A;oĹźenie centroida j-tej grupy, L(â&#x20AC;Ś) â&#x20AC;&#x201C; odlegĹ&#x201A;oĹ&#x203A;Ä&#x2021; miÄ&#x2122;dzy obiektami w przestrzeni cech.
WartoĹ&#x203A;ci Nwd i Nws we wzorach (6), (7) zostaĹ&#x201A;y wyznaczone na podstawie mapy defektĂłw stworzonej w oparciu o pomiary rzeczywistych wymiarĂłw i poĹ&#x201A;oĹźeĹ&#x201E; defektĂłw wytworzonych w badanej prĂłbce, ktĂłrej schemat zaprezentowano na rys. 2.
Etap 2. Iteracja a. Przeprowadza siÄ&#x2122; aktualizacjÄ&#x2122; poĹ&#x201A;oĹźenia centroidĂłw. Nowe wspĂłĹ&#x201A;rzÄ&#x2122;dne centroidĂłw w kroku t + 1 oblicza siÄ&#x2122; jako Ĺ&#x203A;redniÄ&#x2026; arytmetycznÄ&#x2026; wspĂłĹ&#x201A;rzÄ&#x2122;dnych wszystkich obiektĂłw naleĹźÄ&#x2026;cych do grupy reprezentowanej przez ten centroid w kroku t, zgodnie z zaleĹźnoĹ&#x203A;ciÄ&#x2026;:
)
(
t +1 Îź C i( ) =
â&#x2C6;&#x2018;
â&#x2C6;&#x2C6;C it
C
2. Badania eksperymentalne H,L, ( <
x
,
t i
(3)
Badania eksperymentalne przeprowadzono na stanowisku do wykrywania defektĂłw metodami termografii aktywnej. Schemat stanowiska zaprezentowano na rys. 1.
w szczegĂłlnoĹ&#x203A;ci, w pierwszej iteracji t = 0, tj. nowe wspĂłĹ&#x201A;rzÄ&#x2122;dne centroidĂłw oblicza siÄ&#x2122; na podstawie poczÄ&#x2026;tkowych poĹ&#x201A;oĹźeĹ&#x201E; centroidĂłw w kaĹźdej z poczÄ&#x2026;tkowych grup. b. Oblicza siÄ&#x2122; macierz odlegĹ&#x201A;oĹ&#x203A;ci i przypisuje siÄ&#x2122; obiekty do nowych centroidĂłw w kroku t + 1, przy czym nowe grupy speĹ&#x201A;niajÄ&#x2026; warunek: (t +1)
Ci
{ ( ( )) â&#x2030;¤ L ( x, Îź (C )) , â&#x2C6;&#x20AC;j, (t +1)
(t +1)
= x : L x, Îź C i
j
}
1< j <k ,
(4) c. Kroki 2a i 2b sÄ&#x2026; powtarzane tak dĹ&#x201A;ugo, jak dĹ&#x201A;ugo centroidy zmieniajÄ&#x2026; swoje poĹ&#x201A;oĹźenia. Prowadzi to do minimalizacji nastÄ&#x2122;pujÄ&#x2026;cej funkcji bĹ&#x201A;Ä&#x2122;du:
E =
â&#x2C6;&#x2018; â&#x2C6;&#x2018; L ( x, Îź (C ) ). k
(5)
i
i =1 xâ&#x2C6;&#x2C6;C i
Opisany algorytm zastosowano do grupowania danych reprezentujÄ&#x2026;cych przebiegi czasowe temperatur powierzchni zarejestrowane w badaniach eksperymentalnych.
1.2. Zastosowanie metod grupowania $ !"
Rys. 1. Schemat stanowiska do wykrywania defektĂłw metodami termografii aktywnej Fig. 1. Diagram of the defect detection station by active thermography methods
Celem badaĹ&#x201E; prezentowanych w niniejszej pracy byĹ&#x201A;o okreĹ&#x203A;lenie przydatnoĹ&#x203A;ci algorytmu k-Ĺ&#x203A;rednich do grupowania danych pochodzÄ&#x2026;cych z pomiarĂłw termowizyjnych. Z kolei grupowanie miaĹ&#x201A;o za zadanie rozróşnienie miÄ&#x2122;dzy pikselami pola widzenia termogramu reprezentujÄ&#x2026;cymi obszary defektu i pikselami
W skĹ&#x201A;ad stanowiska wchodzÄ&#x2026; nastÄ&#x2122;pujÄ&#x2026;ce elementy: 1 â&#x20AC;&#x201C; przemysĹ&#x201A;owa kamera termowizyjna IRS336-NDT o rozdzielczoĹ&#x203A;ci geometrycznej 240 px Ă&#x2014; 320 px z niechĹ&#x201A;odzonym detektorem bolometrycznym o rozdzielczoĹ&#x203A;ci termicznej NETD < 30 mK,
12
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Sebastian Dudzik
2 â&#x20AC;&#x201C; lampa halogenowa o mocy 1 kW, 3 â&#x20AC;&#x201C; moduĹ&#x201A; sterowania ĹşrĂłdĹ&#x201A;ami wymuszeĹ&#x201E; cieplnych, 4 â&#x20AC;&#x201C; moduĹ&#x201A; sprzÄ&#x2122;towy AT IRXBOX odpowiedzialny za sprzÄ&#x2122;towe wyzwalanie rejestracji termogramĂłw oraz sterowanie ĹşrĂłdĹ&#x201A;ami wymuszenia cieplnego (moduĹ&#x201A; jest z kolei sterowany za poĹ&#x203A;rednictwem karty cyfrowej akwizycji danych DAC) i ĹşrĂłdĹ&#x201A;a wymuszenia cieplnego wraz z kartÄ&#x2026; cyfrowej akwizycji danych, 5 â&#x20AC;&#x201C; komputer stacjonarny wyposaĹźony w oprogramowanie IRNDT do rejestracji sekwencji termogramĂłw oraz sterowania ĹşrĂłdĹ&#x201A;em wymuszenia cieplnego, 6 â&#x20AC;&#x201C; prĂłbka badanego materiaĹ&#x201A;u. Jak wspomniano wczeĹ&#x203A;niej opisywanÄ&#x2026; metodÄ&#x2122; przetestowano dla prĂłbki wykonanej z kompozytu CFRP. Kompozyt ten z uwagi na swoje wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci (wysoka sztywnoĹ&#x203A;Ä&#x2021;, wysoka odpornoĹ&#x203A;Ä&#x2021; chemiczna i cieplna itp.) znajduje zastosowanie w wielu gaĹ&#x201A;Ä&#x2122;ziach przemysĹ&#x201A;u, w tym w przemyĹ&#x203A;le samochodowym, budownictwie, sprzÄ&#x2122;cie sportowym a takĹźe w przemyĹ&#x203A;le lotniczym. Z tego powodu, bardzo waĹźne staje siÄ&#x2122; opracowanie i rozwijanie metod wykrywania defektĂłw w kompozytach CFRP. NaleĹźy podkreĹ&#x203A;liÄ&#x2021;, Ĺźe kompozyty CFRP wykazujÄ&#x2026; anizotropiÄ&#x2122; z punktu widzenia wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci cieplnych (róşne wartoĹ&#x203A;ci dyfuzyjnoĹ&#x203A;ci cieplnej zaleĹźnie od kierunku), dlatego teĹź wykrywanie defektĂłw metodami termografii aktywnej jest trudniejsze niĹź w innych materiaĹ&#x201A;ach. W niniejszej pracy badaniom poddano prĂłbkÄ&#x2122; w ksztaĹ&#x201A;cie prostokÄ&#x2026;ta o gruboĹ&#x203A;ci 5 mm, wykonanÄ&#x2026; z opisanego kompozytu. W prĂłbce wykonano sztuczne defekty w ksztaĹ&#x201A;cie nieprzelotowych, pĹ&#x201A;askodennych otworĂłw kwadratowych. Wymiary prĂłbki i rozmieszczenie defektĂłw przedstawiono na rys. 2. Defekty zlokalizowano na gĹ&#x201A;Ä&#x2122;bokoĹ&#x203A;ciach z1 = 3,6 mm, z2 = 2,6 mm, z3 = 1,9 mm i z4 = 1,2 mm wzglÄ&#x2122;dem wierzchniej (nagrzewanej) strony prĂłbki.
W trakcie eksperymentu prĂłbka byĹ&#x201A;a nagrzewana za pomocÄ&#x2026; lamp halogenowych przez 120 s. Po tym czasie dziaĹ&#x201A;anie wymuszenia zostaĹ&#x201A;o zatrzymane i w ciÄ&#x2026;gu nastÄ&#x2122;pnych 120 s fazy stygniÄ&#x2122;cia prowadzona byĹ&#x201A;a rejestracja nieustalonego pola temperatury na powierzchni prĂłbki z czÄ&#x2122;stotliwoĹ&#x203A;ciÄ&#x2026; prĂłbkowania 5 Hz. W wyniku rejestracji uzyskano sekwencjÄ&#x2122; termogramĂłw powierzchni. Wyniki eksperymentu zaprezentowano w dalszej czÄ&#x2122;Ĺ&#x203A;ci pracy.
2.2. Wyniki Wyniki badaĹ&#x201E; eksperymentalnych zaprezentowano na rys. 3, 4. Na rys. 3. przedstawiono termogram sekwencji obrazujÄ&#x2026;cy pole temperatury badanej prĂłbki zarejestrowane w chwili Ď&#x201E; = 0 s wzglÄ&#x2122;dem poczÄ&#x2026;tku fazy stygniÄ&#x2122;cia. Termogram sekwencji obrazujÄ&#x2026;cy pole temperatury zarejestrowane w chwili Ď&#x201E; = 20 s wzglÄ&#x2122;dem poczÄ&#x2026;tku fazy stygniÄ&#x2122;cia zaprezentowano na rys. 4.
Y, + !
Y,L, ( < W wyniku badaĹ&#x201E; eksperymentalnych przeprowadzonych na stanowisku przedstawionym na rys. 1 uzyskano sekwencjÄ&#x2122; termogramĂłw powierzchni badanej prĂłbki. W dalszym ciÄ&#x2026;gu przeprowadzono przetwarzanie sekwencji w nastÄ&#x2122;pujÄ&#x2026;cych krokach: 1. ZwiÄ&#x2122;kszenie kontrastu kaĹźdego z termogramĂłw sekwencji z wykorzystaniem przeksztaĹ&#x201A;cenia morfologicznego obrazu TOP-HAT [15, 16]. Do przetwarzania termogramĂłw zastosowano element strukturalny typu DIAMOND wielkoĹ&#x203A;ci r = 48 px. 2. Zastosowanie algorytmu k-Ĺ&#x203A;rednich do grupowania danych reprezentujÄ&#x2026;cych przebiegi czasowe temperatury zarejestrowane dla kaĹźdego z pikseli pola widzenia termogramu powierzchni badanej prĂłbki kompozytu. W trakcie grupowania zastosowano dwie metryki odlegĹ&#x201A;oĹ&#x203A;ci:
(
( ) ) = ( x â&#x2C6;&#x2019; Îź (C ) ) ( x â&#x2C6;&#x2019; Îź (C ) )
LÎľ x, Îź C i
Rys. 2. Wymiary prĂłbki i schemat rozmieszczenia defektĂłw Fig. 2. Dimensions of defects and material sample
(
i
( ) ) = â&#x2C6;&#x2018; x â&#x2C6;&#x2019; Îź (C ) ,
LM x, Îź C i
(
i
T
,
(8)
d
i
(9)
j =1
( ))
â&#x20AC;&#x201C; kwadratowa odlegĹ&#x201A;oĹ&#x203A;Ä&#x2021; euklidesowa, gdzie: LÎľ x, Îź C i LM x, Îź C i â&#x20AC;&#x201C; odlegĹ&#x201A;oĹ&#x203A;Ä&#x2021; typu Manhattan (odlegĹ&#x201A;oĹ&#x203A;Ä&#x2021; miejska).
(
Rys. 3. Termogram powierzchni prĂłbki w chwili Ď&#x201E; = 0 s wzglÄ&#x2122;dem poczÄ&#x2026;tku fazy stygniÄ&#x2122;cia Fig. 3. Thermogram of the sample surface at Ď&#x201E; = 0 s from the beginning of the cooling phase
( ))
Dodatkowo, w badaniach przyjÄ&#x2122;to dwa warianty danych wejĹ&#x203A;ciowych: I przebiegi temperatury na powierzchni badanej prĂłbki dla kaĹźdego piksela w polu widzenia termogramu, rejestrowane od poczÄ&#x2026;tku fazy stygniÄ&#x2122;cia przez kolejne 120 s, II przebiegi temperatury na powierzchni badanej prĂłbki dla kaĹźdego piksela w polu widzenia termogramu, rejestrowane od chwili Ď&#x201E; = 20 s wzglÄ&#x2122;dem zakoĹ&#x201E;czenia fazy nagrzewania przez kolejne 100 s fazy stygniÄ&#x2122;cia. 3. Wyznaczenie bĹ&#x201A;Ä&#x2122;dĂłw wykrywania defektĂłw, opisanych zaleĹźnoĹ&#x203A;ciami (6), (7). 4. Analiza wynikĂłw badaĹ&#x201E; i sformuĹ&#x201A;owanie wnioskĂłw.
3.2. Wyniki Rys. 4. Termogram powierzchni prĂłbki w chwili Ď&#x201E; = 20 s wzglÄ&#x2122;dem poczÄ&#x2026;tku fazy stygniÄ&#x2122;cia Fig. 4. Thermogram of the sample surface at Ď&#x201E; = 20 s from the beginning of the cooling phase
PrzykĹ&#x201A;adowe wyniki dziaĹ&#x201A;ania opisanego wyĹźej algorytmu grupowania zaprezentowano na rys. 5â&#x20AC;&#x201C;8. Na rys. 5 i 6 przedstawiono mapy defektĂłw wygenerowane przez algorytm k-Ĺ&#x203A;rednich z zastosowaniem pierwszego wariantu danych wejĹ&#x203A;ciowych
13
+" " L " " ? " $ " Q '.
dla kwadratowej odlegĹ&#x201A;oĹ&#x203A;ci euklidesowej oraz odlegĹ&#x201A;oĹ&#x203A;ci typu Manhattan, wyraĹźonych odpowiednio zaleĹźnoĹ&#x203A;ciami (8) i (9). Z kolei mapy defektĂłw wygenerowane dla drugiego wariantu danych wejĹ&#x203A;ciowych zaprezentowano na rys. 7 i 8. WaĹźnym etapem badaĹ&#x201E; byĹ&#x201A;o oszacowanie dokĹ&#x201A;adnoĹ&#x203A;ci wykrywania defektĂłw w odniesieniu do liczby wykrytych pikseli. Z tego powodu w pracy, dla kaĹźdego wariantu danych wejĹ&#x203A;ciowych i obu metryk odlegĹ&#x201A;oĹ&#x203A;ci wyznaczono bĹ&#x201A;Ä&#x2122;dy opisane zaleĹźnoĹ&#x203A;ciami (6) i (7). WartoĹ&#x203A;ci bĹ&#x201A;Ä&#x2122;dĂłw zebrano w tabeli 1.
Rys. 6. Wynik grupowania algorytmem k-Ĺ&#x203A;rednich dla pierwszego wariantu danych wejĹ&#x203A;ciowych i odlegĹ&#x201A;oĹ&#x203A;ci LM Fig. 6. The result of clustering using the k-means algorithm for the first input data case and LM distance metrics
Tabela 1. WartoĹ&#x203A;ci bĹ&#x201A;Ä&#x2122;dĂłw wyraĹźonych zaleĹźnoĹ&#x203A;ciami (6) i (7) Table 1. The values of errors described by (6) and (7) Wariant danych
Metryka
wejĹ&#x203A;ciowych
odlegĹ&#x201A;oĹ&#x203A;ci
I
II
dd [%]
ds [%]
LÎľ
45,6
3,0
LM
7,0
13,0
LÎľ
7,8
9,6
LM
1,5
39,0
Rys. 7. Wynik grupowania algorytmem k-Ĺ&#x203A;rednich dla drugiego wariantu danych wejĹ&#x203A;ciowych i odlegĹ&#x201A;oĹ&#x203A;ci LÎľ Fig. 7. The result of clustering using the k-means algorithm for the second input data case and LÎľ distance metrics
Rys. 5. Wynik grupowania algorytmem k-Ĺ&#x203A;rednich dla pierwszego wariantu danych wejĹ&#x203A;ciowych i odlegĹ&#x201A;oĹ&#x203A;ci LÎľ Fig. 5. The result of clustering using the k-means algorithm for the first input data case and LÎľ distance metrics
Rys. 8. Wynik grupowania algorytmem k-Ĺ&#x203A;rednich dla drugiego wariantu danych wejĹ&#x203A;ciowych i odlegĹ&#x201A;oĹ&#x203A;ci LM Fig. 8. The result of clustering using the k-means algorithm for the second input data case and LM distance metrics
Y, <!
rejestrowane od chwili Ď&#x201E; = 20 s wzglÄ&#x2122;dem zakoĹ&#x201E;czenia fazy nagrzewania przez kolejne 100 s fazy stygniÄ&#x2122;cia) â&#x20AC;&#x201C; tabela 1. AnalizujÄ&#x2026;c otrzymane wyniki badaĹ&#x201E; naleĹźy stwierdziÄ&#x2021;, Ĺźe uzyskane wartoĹ&#x203A;ci bĹ&#x201A;Ä&#x2122;dĂłw, zarĂłwno w obszarze defektu, jak i tĹ&#x201A;a zdefiniowane wzorami (8) i (9) nie przekraczajÄ&#x2026; 10% mimo tego, Ĺźe grupowanie prowadzone byĹ&#x201A;o dla materiaĹ&#x201A;u anizotropowego. Z tego powodu moĹźna uznaÄ&#x2021;, Ĺźe opisywany algorytm stanowi uĹźyteczne narzÄ&#x2122;dzie przetwarzania danych w zastosowaniu do wykrywania defektĂłw z wykorzystaniem termografii aktywnej.
W pracy przedstawiono badania algorytmu k-Ĺ&#x203A;rednich do wykrywania defektĂłw w kompozycie CFRP z uĹźyciem termografii aktywnej. Na podstawie wynikĂłw sformuĹ&#x201A;owano nastÄ&#x2122;pujÄ&#x2026;ce wnioski: â&#x2C6;&#x2019; WstÄ&#x2122;pne przetwarzanie sekwencji termogramĂłw z uĹźyciem przeksztaĹ&#x201A;ceĹ&#x201E; morfologicznych znacznie zwiÄ&#x2122;ksza kontrast cieplny, a co za tym idzie efektywnoĹ&#x203A;Ä&#x2021; grupowania algorytmem k-Ĺ&#x203A;rednich. â&#x2C6;&#x2019; Zastosowanie algorytmu k-Ĺ&#x203A;rednich przetwarzajÄ&#x2026;cego przebiegi czasowe temperatury zarejestrowane dla poszczegĂłlnych pikseli pola widzenia termogramu powierzchni prĂłbki pozwala na automatyczne rozróşnienie miÄ&#x2122;dzy obszarami defektĂłw i obszarami pozbawionymi defektĂłw (obszarami tĹ&#x201A;a). â&#x2C6;&#x2019; W trakcie badaĹ&#x201E; zaobserwowano duĹźÄ&#x2026; wraĹźliwoĹ&#x203A;Ä&#x2021; algorytmu k-Ĺ&#x203A;rednich na zastosowanÄ&#x2026; metrykÄ&#x2122; odlegĹ&#x201A;oĹ&#x203A;ci. â&#x2C6;&#x2019; Dodatkowo, stwierdzono, Ĺźe efektywnoĹ&#x203A;Ä&#x2021; wykrywania defektu w duĹźym stopniu zaleĹźy od wariantu danych wejĹ&#x203A;ciowych, tj. od tego, jaka faza procesu cieplnego zostanie poddana grupowaniu. â&#x2C6;&#x2019; Najlepsze wyniki w sensie wystÄ&#x2122;pujÄ&#x2026;cych jednoczeĹ&#x203A;nie najmniejszych bĹ&#x201A;Ä&#x2122;dĂłw zdefiniowanych zaleĹźnoĹ&#x203A;ciami (8) i (9) w obszarze defektu i obszarze tĹ&#x201A;a uzyskano dla kwadratu odlegĹ&#x201A;oĹ&#x203A;ci euklidesowej LÎľ i drugiego wariantu danych wejĹ&#x203A;ciowych (przebiegi temperatury na powierzchni badanej prĂłbki dla kaĹźdego piksela w polu widzenia termogramu,
14
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
^ 1. LewiĹ&#x201E;ska-Romicka A., Badania nieniszczÄ&#x2026;ce. Podstawy defektoskopii, WNT, Warszawa 2001. 2. Maldague X.P., Theory and practice of infrared technology for nondestructive testing, John Wiley & Sons Interscience, New York 2001. 3. Gleiter A., Spiessberger C., Busse G., Phase angle thermography for depth resolved characterization, Proc. 9th International Conference on Quantitative Infrared Thermography QiRT, KrakĂłw, July 2â&#x20AC;&#x201C;5, 2009, 435â&#x2C6;&#x2019;441, DOI: 10.1063/1.3114300. 4. Dudzik S., A simple method for defect area detection using active thermography, â&#x20AC;&#x153;Opto-Electronics Reviewâ&#x20AC;?, Vol. 17, No. 4, 2009, 338â&#x2C6;&#x2019;344, DOI: 10.2478/s11772-009-0016-9. 5. Grys S., Minkina W., Vokorokos L., Automated characterisation of subsurface defects by active IR thermographic testing A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Sebastian Dudzik
â&#x20AC;&#x201C; Discussion of step heating duration and defect depth determination, â&#x20AC;&#x153;Infrared Physics & Technologyâ&#x20AC;? Elsevier, Vol. 68, 2015, 84â&#x20AC;&#x201C;91, DOI: 10.1016/j.infrared.2014.11.005. 6. Minkina W., Dudzik S., Infrared Thermography â&#x20AC;&#x201C; Errors and Uncertainties, John Wiley & Sons, Chichester 2009. 7. Russ J.C., Image Processing Handbook, CRC Press LLC 2002. 8. Dudzik S., Two-stage neural algorithm for defect detection and characterization uses an active thermography, â&#x20AC;&#x153;Infrared Physics and Technologyâ&#x20AC;?, Vol. 71, 2015, 187â&#x20AC;&#x201C;197, DOI: 10.1016/j.infrared.2015.03.003. 9. TrĂŠtout H., David D., Martin J., Dissenter Y., Court M., Avenas-Payan M., An evaluation of artificial neural networks applied to infrared thermograph inspection of composite aerospace structures, Review of Progress in Quantitative, Nondestructive Evaluation (14A), 827â&#x2C6;&#x2019;834, DOI: 10.1007/978-1-4615-1987-4_103. 10. BenĂtez H.D., Loaiza H., Caicedo E., Ibarra-Castanedo C., Bendada A., Maldague X.P., Defect characterization in infrared non-destructive testing with learning machines,
â&#x20AC;&#x153;NDT & E Internationalâ&#x20AC;?, Vol. 42, No. 7, 2009, 630â&#x2C6;&#x2019;643, DOI: 10.1016/j.ndteint.2009.05.004. 11. Witten I.H., Eibe F., Data Mining. Practical Machine Learning Tools and Techniques, Elsevier 2005. 12. Everitt B.S., Landau S., Leese M., Stahl D., Cluster analysis, John Willey & Sons 2011. 13. Jain A.K., Dubes R.C., Algorithms for clustering data, Prentice Hall, Englewood Cliffs N.J., 1998. 14. Guojun G., Ma C., Wu J., Data Clustering: Theory, Algorithms, and Applications, ASA-SIAM Series on Statistics and Applied Probability, SIAM, Philadelphia, ASA, Alexandria, VA, 2007. 15. Malina W., Smiatacz M., Cyfrowe przetwarzanie obrazĂłw, Akademicka Oficyna Wydawnicza EXIT, Warszawa 2008. 16. Dudzik S., Zastosowanie transformacji TOP-HAT do przetwarzania sekwencji termogramĂłw, â&#x20AC;&#x17E;Zeszyty Naukowe WydziaĹ&#x201A;u Elektrotechniki i Automatyki Politechniki GdaĹ&#x201E;skiejâ&#x20AC;?, Nr 54, 2017, 35â&#x20AC;&#x201C;38, XLIX MiÄ&#x2122;dzyuczelniana Konferencja MetrologĂłw, CzÄ&#x2122;stochowa/KoszÄ&#x2122;cin, 4â&#x20AC;&#x201C;6 wrzeĹ&#x203A;nia 2017.
E - E - A 8 J A & ?" 8 A Abstract: The paper presents a new method of detecting material defects using active thermography. In order to increase the thermal contrast, preprocessing of the recorded sequence of thermograms was carried out using mathematical morphology methods. The k-means algorithm was used to detect defects. The work examined the impact of distance measure used in the described algorithm and the selection of input data on the effectiveness of the described method. The experiment was carried out for a sample made of carbon fiber reinforced composite (CFRP). Studies have shown that the smallest errors in defect detection using the described method are obtained for the square Euclidean distance. Keywords\ ? A $ & - & $ A
< = % @ = ! ) /& &% ORCID: 0000-0002-9559-7115 E / K / E & A - & ? A9 A & A - / & G ? . A - & F 9 A - A & 9 A - $ K & & & 9 A - & $ ? A - A 9 A & & ? K F 9 . A ? & K & ? A & & & & F 9 ? 9 & 0 L0
15
NR 3/2015
16
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 17â&#x20AC;&#x201C;25, DOI: 10.14313/PAR_233/17
0 A .& A .A / A A & & ! - B 0 N9& $ 6 8 $ O - A '@P**$ +!?+*= N9&Q
@! & StosujÄ&#x2026;c znane reguĹ&#x201A;y osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego, rozpoczyna siÄ&#x2122; dziaĹ&#x201A;anie od okreĹ&#x203A;lenia poĹźÄ&#x2026;danego przebiegu zmiennej Ĺ&#x203A;lizgowej. NastÄ&#x2122;pnie projektowany jest regulator gwarantujÄ&#x2026;cy, Ĺźe zmienna Ĺ&#x203A;lizgowa ukĹ&#x201A;adu bÄ&#x2122;dzie podÄ&#x2026;ĹźaÄ&#x2021; za wybranym przebiegiem. PrzewagÄ&#x2026; tej metody nad â&#x20AC;&#x17E;klasycznymâ&#x20AC;? sterowaniem Ĺ&#x203A;lizgowym jest zapewnienie lepszej kontroli nad dynamikÄ&#x2026; ukĹ&#x201A;adu i speĹ&#x201A;nienie ograniczeĹ&#x201E; zmiennych stanu juĹź podczas fazy osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego. W artykule przedstawiony zostanie przeglÄ&#x2026;d prac naukowych dotyczÄ&#x2026;cych reguĹ&#x201A; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego dla ukĹ&#x201A;adĂłw czasu dyskretnego. Wskazane i omĂłwione zostanÄ&#x2026; róşnice i podobieĹ&#x201E;stwa miÄ&#x2122;dzy przebiegami stosowanymi przez badaczy. +$ ! \ & A $ A .A / A A
1. Wprowadzenie Niniejszy artykuĹ&#x201A; jest przetĹ&#x201A;umaczonÄ&#x2026; na jÄ&#x2122;zyk polski, uaktualnionÄ&#x2026; i rozszerzonÄ&#x2026; wersjÄ&#x2026; referatu konferencyjnego [22]. Sterowanie Ĺ&#x203A;lizgowe jest szeroko znanÄ&#x2026; metodÄ&#x2026; projektowania regulatorĂłw [16, 30, 37], stosowanÄ&#x2026; rĂłwnieĹź do nieliniowych, zmiennych w czasie systemĂłw, ktĂłrych parametry nie muszÄ&#x2026; byÄ&#x2021; dokĹ&#x201A;adnie znane. GĹ&#x201A;Ăłwnymi jej zaletami jest odpornoĹ&#x203A;Ä&#x2021; na zakĹ&#x201A;Ăłcenia oraz wymaganie niewielkiej mocy obliczeniowej. Sterowanie Ĺ&#x203A;lizgowe zostaĹ&#x201A;o najpierw opracowane na potrzeby ukĹ&#x201A;adĂłw ciÄ&#x2026;gĹ&#x201A;ych. Jednak wspĂłĹ&#x201A;czeĹ&#x203A;nie, niemal zawsze regulator implementowany jest w cyfrowym urzÄ&#x2026;dzeniu (np. mikrokontrolerze, sterowniku PLC). Z tego powodu dyskretne sterowanie Ĺ&#x203A;lizgowe szybko zostaĹ&#x201A;o istotnym kierunkiem badaĹ&#x201E;. Przy zastosowaniu sterowania Ĺ&#x203A;lizgowego wybrana zostaje hiperpowierzchnia Ĺ&#x203A;lizgowa w przestrzeni stanu, do ktĂłrej trajektoria stanu zostanie ograniczona. KsztaĹ&#x201A;t i orientacja tej hiperpowierzchni bÄ&#x2122;dÄ&#x2026; miaĹ&#x201A;y kluczowe znaczenie dla dynamiki otrzymanego ukĹ&#x201A;adu zamkniÄ&#x2122;tego. PojÄ&#x2122;ciem blisko powiÄ&#x2026;zanym z tÄ&#x2026; powierzchniÄ&#x2026; jest zmienna Ĺ&#x203A;lizgowa. Jej wartoĹ&#x203A;Ä&#x2021; jest dodatnia, gdy stan jest po jednej stronie powierzchni, ujemna po drugiej stronie oraz rĂłwna zero, jeĹ&#x203A;li stan jest dokĹ&#x201A;adnie na hiperpowierzchni. BezwzglÄ&#x2122;dna wartoĹ&#x203A;Ä&#x2021; tej zmiennej roĹ&#x203A;nie, jeĹ&#x203A;li stan oddala siÄ&#x2122; od powierzchni Ĺ&#x203A;lizgowej. Zadanie sprowadzenia i utrzymania stanu ukĹ&#x201A;adu na hiperpowierzchni Ĺ&#x203A;lizgowej moĹźna sprowadziÄ&#x2021; do zadania wyzerowania wartoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej. JednÄ&#x2026; z niewielu wad sterowania Ĺ&#x203A;lizgowego jest ryzyko wystÄ&#x2026;pienia tzw. chatteringu, czyli gwaĹ&#x201A;townych oscylacji stanu
wokĂłĹ&#x201A; powierzchni Ĺ&#x203A;lizgowej. Przy odpowiednim zaprojektowaniu regulatora moĹźna to zjawisko ograniczyÄ&#x2021; lub wyeliminowaÄ&#x2021;. W klasycznym sterowaniu Ĺ&#x203A;lizgowym proponuje siÄ&#x2122; regulator, a nastÄ&#x2122;pnie wykazuje, Ĺźe zapewnia on zbieĹźnoĹ&#x203A;Ä&#x2021; do hiperpowierzchni w skoĹ&#x201E;czonym czasie stanu i pozostanie na niej. StosujÄ&#x2026;c alternatywne podejĹ&#x203A;cie projektowania regulatora, czyli reguĹ&#x201A;y osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego, kolejnoĹ&#x203A;Ä&#x2021; postÄ&#x2122;powania jest w pewnym sensie odwrĂłcona. Najpierw wybierany jest poĹźÄ&#x2026;dany przebieg zmiennej Ĺ&#x203A;lizgowej, dla ukĹ&#x201A;adĂłw ciÄ&#x2026;gĹ&#x201A;ych zwykle jako zaleĹźnoĹ&#x203A;Ä&#x2021; miÄ&#x2122;dzy pochodnÄ&#x2026; zmiennej Ĺ&#x203A;lizgowej a jej aktualnÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026;, a dla ukĹ&#x201A;adĂłw dyskretnych zaleĹźnoĹ&#x203A;Ä&#x2021; miÄ&#x2122;dzy zmiennÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026; w nastÄ&#x2122;pnej chwili a jej aktualnÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026;. NastÄ&#x2122;pnie dobierany jest regulator, ktĂłry zapewni uzyskanie wybranego przebiegu. Nie jest konieczne wykazywanie stabilnoĹ&#x203A;ci ruchu Ĺ&#x203A;lizgowego, gdyĹź wynika ona bezpoĹ&#x203A;rednio z zastosowanej reguĹ&#x201A;y. Dodatkowo podejĹ&#x203A;cie to umoĹźliwia wiÄ&#x2122;kszÄ&#x2026; kontrolÄ&#x2122; nad dynamikÄ&#x2026; ukĹ&#x201A;adu i maksymalnymi wartoĹ&#x203A;ciami zmiennych stanu w fazie osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego. Niniejsza praca dotyczy sterowania Ĺ&#x203A;lizgowego ukĹ&#x201A;adami dyskretnymi, ktĂłre moĹźna przedstawiÄ&#x2021; w postaci
(
)
( ) ( ) ( )
x â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś = f â&#x17D;Ąâ&#x17D;Łx kT , u kT ,d kT , kT â&#x17D;¤â&#x17D;Ś ,
gdzie x oznacza wektor stanu, u â&#x20AC;&#x201C; sygnaĹ&#x201A; sterujÄ&#x2026;cy, d â&#x20AC;&#x201C; wektor zakĹ&#x201A;ĂłceĹ&#x201E; dziaĹ&#x201A;ajÄ&#x2026;cych na obiekt, k oznacza indeks kolejnej chwili dyskretyzacji, a T â&#x20AC;&#x201C; czas dyskretyzacji. Wiele z wymienionych dalej prac dotyczy liniowych ukĹ&#x201A;adĂłw stacjonarnych, czyli takich, w ktĂłrych ogĂłlny wzĂłr przybiera postaÄ&#x2021;
(
)
( )
( )
( )
x â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś = Ax kT + bu kT + d kT , ) ! \ 0 M $ % & ) $ ! & '* !( *!'+ $ & & '* !+ *!'+
!
(1)
(2)
gdzie A to macierz stanu, b to wektor wejĹ&#x203A;cia. ReguĹ&#x201A;y osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego moĹźna podzieliÄ&#x2021; na przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;ce i nieprzeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;ce, w zaleĹźnoĹ&#x203A;ci od tego, czy zapewniajÄ&#x2026; przekraczanie pĹ&#x201A;aszczyzny Ĺ&#x203A;lizgowej w trakcie ruchu Ĺ&#x203A;lizgowego. Grupy te zostanÄ&#x2026; omĂłwione w dwĂłch kolejnych rozdziaĹ&#x201A;ach.
17
$` ` "= $ '. " "'.
H, # $ ! ! $
zmienne stanu (odksztaĹ&#x201A;cenia elementĂłw konstrukcji) sÄ&#x2026; trudne do zmierzenia. Z tego powodu rozbudowano zaproponowane podejĹ&#x203A;cie o róşnookresowe sprzÄ&#x2122;Ĺźenie od wyjĹ&#x203A;cia (ang. multirate output feedback), ktĂłre pozwala na estymowanie zmiennych stanu. Ostatnim krokiem byĹ&#x201A;o zaprojektowanie regulatora Ĺ&#x203A;lizgowego w oparciu o reguĹ&#x201A;Ä&#x2122; zaproponowanÄ&#x2026; w pracy [18]. Rezultaty zostaĹ&#x201A;y zweryfikowane w symulacjach komputerowych oraz na stanowisku laboratoryjnym. Natomiast w pracy [33] omĂłwiono zaprojektowany Ĺ&#x203A;lizgowy regulator predykcyjny, wykorzystujÄ&#x2026;c reguĹ&#x201A;Ä&#x2122; opracowanÄ&#x2026; w artykule [18]. W pracy [29] przeanalizowany zostaĹ&#x201A; wpĹ&#x201A;yw czasu dyskretyzacji na Ĺ&#x203A;lizgowe sterowanie ukĹ&#x201A;adami o wielu wejĹ&#x203A;ciach i wielu wyjĹ&#x203A;ciach. Autorzy zaĹ&#x201A;oĹźyli, Ĺźe elementy macierzy sprzÄ&#x2122;ĹźeĹ&#x201E; zwrotnych zmieniajÄ&#x2026; siÄ&#x2122; miÄ&#x2122;dzy dwiema wartoĹ&#x203A;ciami, zaleĹźnie od znaku odpowiedniej zmiennej Ĺ&#x203A;lizgowej. WartoĹ&#x203A;ci te nie mogÄ&#x2026; byÄ&#x2021; zbyt maĹ&#x201A;e, gdyĹź muszÄ&#x2026; kompensowaÄ&#x2021; zakĹ&#x201A;Ăłcenia dziaĹ&#x201A;ajÄ&#x2026;ce na obiekt, ani zbyt duĹźe (co nie wystÄ&#x2122;puje w ukĹ&#x201A;adach ciÄ&#x2026;gĹ&#x201A;ych), gdyĹź mogĹ&#x201A;yby wzbudziÄ&#x2021; niepoĹźÄ&#x2026;dane oscylacje w ukĹ&#x201A;adzie. Autorzy wyznaczyli wartoĹ&#x203A;Ä&#x2021; gĂłrnego i dolnego ograniczenia w zaleĹźnoĹ&#x203A;ci od czasu dyskretyzacji. JeĹ&#x203A;li czas ten dÄ&#x2026;Ĺźy do zera, ukĹ&#x201A;ad dziaĹ&#x201A;a w sposĂłb coraz bardziej zbliĹźony do ukĹ&#x201A;adu ciÄ&#x2026;gĹ&#x201A;ego i jedno z ograniczeĹ&#x201E; dÄ&#x2026;Ĺźy do Âąâ&#x2C6;&#x17E;. Gdy czas ten roĹ&#x203A;nie, wartoĹ&#x203A;Ä&#x2021; tego ograniczenia zbliĹźa siÄ&#x2122; do drugiego, bÄ&#x2122;dÄ&#x2026;cego funkcjÄ&#x2026; zakĹ&#x201A;ĂłceĹ&#x201E; dziaĹ&#x201A;ajÄ&#x2026;cych na ukĹ&#x201A;ad. Przy pewnej wartoĹ&#x203A;ci czasu dyskretyzacji oba ograniczenia zrĂłwnujÄ&#x2026; siÄ&#x2122; ze sobÄ&#x2026;, przez co niemoĹźliwe jest uzyskanie stabilnego ruchu Ĺ&#x203A;lizgowego dla wiÄ&#x2122;kszych wartoĹ&#x203A;ci czasu dyskretyzacji. Autorzy proponujÄ&#x2026; zastosowanie sygnaĹ&#x201A;u sterujÄ&#x2026;cego skĹ&#x201A;adajÄ&#x2026;cego siÄ&#x2122; z liniowego sprzÄ&#x2122;Ĺźenia od zmiennych stanu oraz nieliniowej funkcji wymuszajÄ&#x2026;cej zbieĹźnoĹ&#x203A;Ä&#x2021; do pĹ&#x201A;aszczyzny Ĺ&#x203A;lizgowej, mimo zakĹ&#x201A;ĂłceĹ&#x201E; dziaĹ&#x201A;ajÄ&#x2026;cych na ukĹ&#x201A;ad. NastÄ&#x2122;pnie projektujÄ&#x2026; dwa regulatory, jeden z nich oparty na regule (4), a drugi na jej modyfikacji przez zastÄ&#x2026;pienie funkcji signum funkcjÄ&#x2026; nasycenia, w celu zmniejszenia chatteringu. DziaĹ&#x201A;anie wszystkich trzech regulatorĂłw jest porĂłwnane w symulacjach komputerowych. W pracy [24] zaprojektowano Ĺ&#x203A;lizgowy regulator napiÄ&#x2122;cia w sieci DC. Autorzy rozwaĹźajÄ&#x2026; zastosowanie podejĹ&#x203A;cia z pracy [18], jednak skutkowaĹ&#x201A;oby ono nadmiernym chatteringiem. Aby zredukowaÄ&#x2021; ten niekorzystny efekt, zaproponowano zmianÄ&#x2122; dziaĹ&#x201A;ania w pobliĹźu powierzchni Ĺ&#x203A;lizgowej. Kiedy wartoĹ&#x203A;Ä&#x2021; |s| spada poniĹźej pewnego progu, staĹ&#x201A;y parametr e w rĂłwnaniu (3) zostaje zastÄ&#x2026;piony wyraĹźeniem b|s(kT)|l, gdzie b i l sÄ&#x2026; staĹ&#x201A;ymi parametrami. PoniewaĹź to wyraĹźenie maleje, gdy zmienna Ĺ&#x203A;lizgowa dÄ&#x2026;Ĺźy do zera, modyfikacja ta pozwala znaczÄ&#x2026;co zredukowaÄ&#x2021; chattering. NastÄ&#x2122;pnie wykazano, Ĺźe w przypadku braku zakĹ&#x201A;ĂłceĹ&#x201E; zewnÄ&#x2122;trznych, ruch quasi-Ĺ&#x203A;lizgowy zaproponowany w [18] jest zapewniony. Ponadto wiÄ&#x2122;kszoĹ&#x203A;Ä&#x2021; fazy osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego przebiega poza wprowadzonym pasmem, wiÄ&#x2122;c modyfikacja ta nie wpĹ&#x201A;ywa znaczÄ&#x2026;co na czas regulacji. Natomiast w pracy [35] zaproponowano nastÄ&#x2122;pujÄ&#x2026;cÄ&#x2026; reguĹ&#x201A;Ä&#x2122; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego
Stosowanie reguĹ&#x201A; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego zostaĹ&#x201A;o po raz pierwszy zaproponowane [17] dla ukĹ&#x201A;adĂłw czasu ciÄ&#x2026;gĹ&#x201A;ego. Opracowano tam trzy reguĹ&#x201A;y, w ktĂłrych prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; zbieĹźnoĹ&#x203A;ci byĹ&#x201A;a: staĹ&#x201A;a, staĹ&#x201A;a plus proporcjonalna do wartoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej, oraz powiÄ&#x2026;zana ze zmiennÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026; funkcjÄ&#x2026; potÄ&#x2122;gowÄ&#x2026;. NastÄ&#x2122;pnie autorzy rozszerzyli swoje rozwaĹźania [18] na ukĹ&#x201A;ady czasu dyskretnego. W ukĹ&#x201A;adach dyskretnych niemoĹźliwe jest wymuszenie idealnego ruchu Ĺ&#x203A;lizgowego (wymagaĹ&#x201A;oby to znajomoĹ&#x203A;ci wartoĹ&#x203A;ci zakĹ&#x201A;Ăłcenia oddziaĹ&#x201A;ujÄ&#x2026;cego w kolejnej chwili), zatem autorzy zaproponowali ruch quasi-Ĺ&#x203A;lizgowy, zdefiniowany nastÄ&#x2122;pujÄ&#x2026;co: â&#x2C6;&#x2019; Stan ukĹ&#x201A;adu musi zbiegaÄ&#x2021; monotonicznie do powierzchni Ĺ&#x203A;lizgowej z dowolnego poĹ&#x201A;oĹźenia poczÄ&#x2026;tkowego i przeciÄ&#x2026;Ä&#x2021; jÄ&#x2026; w skoĹ&#x201E;czonym czasie. â&#x2C6;&#x2019; Po pierwszym przeciÄ&#x2122;ciu, stan musi przecinaÄ&#x2021; powierzchniÄ&#x2122; w kaĹźdym kolejnym okresie dyskretyzacji. â&#x2C6;&#x2019; Amplituda wynikajÄ&#x2026;cych z pkt. 2 oscylacji nie moĹźe rosnÄ&#x2026;Ä&#x2021;, a stan musi pozostaÄ&#x2021; w okreĹ&#x203A;lonym otoczeniu powierzchni, nazwanym pasmem ruchu quasi-Ĺ&#x203A;lizgowego. NastÄ&#x2122;pnie autorzy zaproponowali reguĹ&#x201A;Ä&#x2122;, w ktĂłrej szybkoĹ&#x203A;Ä&#x2021; zbieĹźnoĹ&#x203A;ci jest sumÄ&#x2026; dwĂłch wyraĹźeĹ&#x201E;: staĹ&#x201A;ego i proporcjonalnego do aktualnej wartoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej (odpowiednik reguĹ&#x201A;y â&#x20AC;&#x17E;staĹ&#x201A;ej plus proporcjonalnejâ&#x20AC;? [17]). Dla ukĹ&#x201A;adu bez zakĹ&#x201A;ĂłceĹ&#x201E; zbieĹźnoĹ&#x203A;Ä&#x2021; ta jest dana wzorem
(
)
(
) ( )
( )
s â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś = 1 â&#x2C6;&#x2019; qT s kT â&#x2C6;&#x2019; ÎľT sgn â&#x17D;Ąâ&#x17D;Łs kT â&#x17D;¤â&#x17D;Ś ,
(3)
w ktĂłrym s oznacza zmiennÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026;, e > 0 i q â&#x2C6;&#x2C6; (0, 1/T) to parametry regulatora. Dla ukĹ&#x201A;adu poddanego zakĹ&#x201A;Ăłceniom, przebieg ten jest zmieniony w nastÄ&#x2122;pujÄ&#x2026;cy sposĂłb:
(4) gdzie S , F sÄ&#x2026; nieznanymi wpĹ&#x201A;ywami niepewnoĹ&#x203A;ci modelowania i zakĹ&#x201A;ĂłceĹ&#x201E; zewnÄ&#x2122;trznych na zmiennÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026;; S1 i F1 oznaczajÄ&#x2026; Ĺ&#x203A;rednie wartoĹ&#x203A;ci tych funkcji, a S2 i F2 odpowiadajÄ&#x2026; najwiÄ&#x2122;kszym moĹźliwym róşnicom miÄ&#x2122;dzy wartoĹ&#x203A;ciÄ&#x2026; Ĺ&#x203A;redniÄ&#x2026; a rzeczywistÄ&#x2026;. NastÄ&#x2122;pnie wykazano [2], Ĺźe parametry reguĹ&#x201A;y (4) muszÄ&#x2026; speĹ&#x201A;niaÄ&#x2021; warunek
qT ÎľT
(
2 1 â&#x2C6;&#x2019; qT
)
> S 2 + F2
(5)
aby istnienie ruchu quasi-Ĺ&#x203A;lizgowego byĹ&#x201A;o zapewnione.
(
18
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
)
( )
( )
s â&#x17D;Łâ&#x17D;Ą k + 1 T â&#x17D;Śâ&#x17D;¤ â&#x2C6;&#x2019; s kT = â&#x2C6;&#x2019;qTs kT â&#x2C6;&#x2019;
ReguĹ&#x201A;a (4) jest czÄ&#x2122;sto stosowana w aktualnych pracach, zarĂłwno w oryginalnej [28, 29, 33], jak i zmodyfikowanej [24, 34, 35, 38, 40, 42] postaci. W referacie [28] rozwaĹźono sterowanie tzw. inteligentnÄ&#x2026; strukturÄ&#x2026;. SkĹ&#x201A;ada siÄ&#x2122; ona z bazowej konstrukcji, na ktĂłrej umieszczone zostajÄ&#x2026; czujniki, siĹ&#x201A;owniki i regulatory. GĹ&#x201A;Ăłwnym zadaniem sterowania jest ograniczenie oscylacji, w szczegĂłlnoĹ&#x203A;ci o czÄ&#x2122;stotliwoĹ&#x203A;ciach zbliĹźonych do czÄ&#x2122;stotliwoĹ&#x203A;ci drgaĹ&#x201E; wĹ&#x201A;asnych konstrukcji. Aby zaprojektowaÄ&#x2021; regulator optymalny, wprowadzony zostaĹ&#x201A; rozszerzony wektor stanu, z dodatkowymi zmiennymi bÄ&#x2122;dÄ&#x2026;cymi wyjĹ&#x203A;ciami filtrĂłw pasmowo przepustowych, dostrojonych do czÄ&#x2122;stotliwoĹ&#x203A;ci drgaĹ&#x201E; wĹ&#x201A;asnych. NastÄ&#x2122;pnie zastosowano â&#x20AC;&#x17E;klasyczneâ&#x20AC;? kryterium LQR, ze zwiÄ&#x2122;kszonymi wagami odpowiadajÄ&#x2026;cymi wyjĹ&#x203A;ciom filtrĂłw. W rozwaĹźanych ukĹ&#x201A;adach
( ) T sgn â&#x17D;Ąs
s kT
Ď
( )
â&#x17D;¤ â&#x17D;Ł kT â&#x17D;Ś . (6)
PorĂłwnujÄ&#x2026;c zaleĹźnoĹ&#x203A;Ä&#x2021; (6) z (3) moĹźna zauwaĹźyÄ&#x2021;, Ĺźe staĹ&#x201A;y parametr e zostaĹ&#x201A; zastÄ&#x2026;piony przez wyraĹźenie |s(kT)|/r. RĂłwnanie (6) jest jednak niepotrzebnie skomplikowane, gdyĹź jego prawa strona moĹźe zostaÄ&#x2021; zapisana jako â&#x20AC;&#x201C;(q + 1 / r)Ts(kT). Oznacza to, Ĺźe nie ma sensu wybieraÄ&#x2021; parametrĂłw q i r niezaleĹźnie, gdyĹź tylko wartoĹ&#x203A;Ä&#x2021; (q + 1 / r) bÄ&#x2122;dzie miaĹ&#x201A;a wpĹ&#x201A;yw na dziaĹ&#x201A;anie regulatora. Zatem (6) moĹźna potraktowaÄ&#x2021; jako reguĹ&#x201A;Ä&#x2122; (3), w ktĂłrej e = 0 i dopuszczamy moĹźliwoĹ&#x203A;Ä&#x2021; qT > 1. W pracy [38] przeanalizowano sterowanie prÄ&#x2122;dkoĹ&#x203A;ciÄ&#x2026; maszyny PMSM. ZaĹ&#x201A;oĹźono, Ĺźe poĹ&#x201A;oĹźenie wirnika jest mierzone za pomocÄ&#x2026; enkodera, a prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; kÄ&#x2026;towa jest estymowana metodÄ&#x2026; Eulera. Zaproponowano reguĹ&#x201A;Ä&#x2122; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego, w ktĂłrej A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
przestrzeĹ&#x201E; stanu podzielona jest na dwa obszary. W pierwszym, skĹ&#x201A;adajÄ&#x2026;cym siÄ&#x2122; z punktĂłw dalszych od powierzchni Ĺ&#x203A;lizgowej niĹź pewna wartoĹ&#x203A;Ä&#x2021; progowa, szybkoĹ&#x203A;Ä&#x2021; zbieĹźnoĹ&#x203A;ci s jest duĹźa. PrÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; ta jest redukowana w obszarze w pobliĹźu powierzchni Ĺ&#x203A;lizgowej. Odpowiada to regule (3) przy doborze q = 0 i przeĹ&#x201A;Ä&#x2026;czaniu parametru e miÄ&#x2122;dzy dwiema wartoĹ&#x203A;ciami. W ten sposĂłb moĹźna zapewniÄ&#x2021; szybkÄ&#x2026; zbieĹźnoĹ&#x203A;Ä&#x2021;, wybierajÄ&#x2026;c duĹźÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; e w â&#x20AC;&#x17E;zewnÄ&#x2122;trznymâ&#x20AC;? obszarze, jednoczeĹ&#x203A;nie utrzymujÄ&#x2026;c chattering na dopuszczalnym poziomie, przez maĹ&#x201A;Ä&#x2026; wartoĹ&#x203A;Ä&#x2021; e w pobliĹźu powierzchni Ĺ&#x203A;lizgowej. W artykule [42] autorzy proponujÄ&#x2026; reguĹ&#x201A;Ä&#x2122; wykorzystujÄ&#x2026;cÄ&#x2026; dwie funkcje potÄ&#x2122;gowe zmiennej Ĺ&#x203A;lizgowej
(sposĂłb doboru nie zostaĹ&#x201A; w Ĺźaden sposĂłb uzasadniony) niĹź jej â&#x20AC;&#x17E;prawdziwÄ&#x2026;â&#x20AC;? przewagÄ&#x2026;. W artykule [34] reguĹ&#x201A;a (3) zostaĹ&#x201A;a rozszerzona o kompensacjÄ&#x2122; zakĹ&#x201A;ĂłceĹ&#x201E;, przy zaĹ&#x201A;oĹźeniu ograniczonej szybkoĹ&#x203A;ci ich zmian. Autorzy pominÄ&#x2122;li wymaganie przekraczania pĹ&#x201A;aszczyzny Ĺ&#x203A;lizgowej w kaĹźdym kolejnym kroku. Zamiast niego wyznaczyli gĂłrne ograniczenie czasu miÄ&#x2122;dzy dwoma przekroczeniami. DziÄ&#x2122;ki tym modyfikacjom udaĹ&#x201A;o siÄ&#x2122; uzyskaÄ&#x2021; wÄ&#x2122;Ĺźsze pasmo ruchu quasi-Ĺ&#x203A;lizgowego niĹź w pracy [18]. W pracy [6] autorzy zaproponowali nastÄ&#x2122;pujÄ&#x2026;cÄ&#x2026; reguĹ&#x201A;Ä&#x2122;
(8) (7) gdzie e1, e2 sÄ&#x2026; dodatnimi parametrami, q â&#x2C6;&#x2C6; (0, 1/T), a â&#x2C6;&#x2C6;(0, 1), a b > 1. MoĹźna zauwaĹźyÄ&#x2021;, Ĺźe rĂłwnanie (7) pĹ&#x201A;ynnie przechodzi miÄ&#x2122;dzy dwoma potÄ&#x2122;gowymi reguĹ&#x201A;ami. Kiedy |s(kT)|< 1, wyraĹźenie zawierajÄ&#x2026;ce parametr a ma wiÄ&#x2122;ksze znaczenie, natomiast gdy |s(kT)| > 1 wyraĹźenie z b przyjmuje wiÄ&#x2122;ksze wartoĹ&#x203A;ci. Ponadto parametr q, ktĂłry we wszystkich wczeĹ&#x203A;niej omĂłwionych pracach byĹ&#x201A; staĹ&#x201A;y, moĹźe przyjmowaÄ&#x2021; dwie róşne wartoĹ&#x203A;ci, dla zmiennych Ĺ&#x203A;lizgowych o wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnej wiÄ&#x2122;kszej lub mniejszej od 1. Na rĂłwnanie (7) moĹźna wiÄ&#x2122;c spojrzeÄ&#x2021; jak na rozbudowanie reguĹ&#x201A;y wprowadzonej w pracy [24]. RóşnicÄ&#x2026; jest to, Ĺźe w obu rejonach wykorzystana jest funkcja potÄ&#x2122;gowa, a przejĹ&#x203A;cie miÄ&#x2122;dzy dwoma róşnymi prÄ&#x2122;dkoĹ&#x203A;ciami zbieĹźnoĹ&#x203A;ci jest bardziej pĹ&#x201A;ynne. Autorzy wykazali, Ĺźe zastosowanie reguĹ&#x201A;y (7) gwarantuje uzyskanie ruchu Ĺ&#x203A;lizgowego, jeĹźeli na obiekt nie dziaĹ&#x201A;ajÄ&#x2026; zakĹ&#x201A;Ăłcenia. Aby zastosowaÄ&#x2021; tÄ&#x2122; reguĹ&#x201A;Ä&#x2122; do prawdziwych obiektĂłw, ktĂłre zawsze sÄ&#x2026; pod wpĹ&#x201A;ywem zakĹ&#x201A;ĂłceĹ&#x201E;, wprowadzili oni sieÄ&#x2021; neuronowÄ&#x2026; do ich estymacji i kompensacji. W obszernych symulacjach komputerowych autorzy porĂłwnali dziaĹ&#x201A;anie kilku reguĹ&#x201A; (3), pojedynczej reguĹ&#x201A;y potÄ&#x2122;gowej (rĂłwnania (7) przyjmujÄ&#x2026;c e2 = 0) i podwĂłjnej reguĹ&#x201A;y potÄ&#x2122;gowej (7), zarĂłwno w wersji podstawowej, jak i po rozbudowaniu o kompensacjÄ&#x2122; zakĹ&#x201A;ĂłceĹ&#x201E;. Podobne podejĹ&#x203A;cie do przedstawionego w [42] zostaĹ&#x201A;o zastosowane w referacie [14], gdzie reguĹ&#x201A;a (3) jest zmodyfikowana przez zastÄ&#x2026;pienie staĹ&#x201A;ego parametru e funkcjÄ&#x2026; pierwiastkowÄ&#x2026; wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnej zmiennej Ĺ&#x203A;lizgowej, tzn. rĂłwnanie (7) przy e1 â&#x2C6;&#x2C6; (0, 1), e2 = 0. W symulacjach komputerowych autorzy porĂłwnujÄ&#x2026; swoje rozwiÄ&#x2026;zanie z (3) i wykazujÄ&#x2026;, Ĺźe pozwala ono znacznie zmniejszyÄ&#x2021; szerokoĹ&#x203A;Ä&#x2021; pasma quasi-Ĺ&#x203A;lizgowego. W artykule [41] zastosowano reguĹ&#x201A;Ä&#x2122; [14] opracowanÄ&#x2026; do zadania Ĺ&#x203A;ledzenia punktu pracy maksymalnej mocy dla turbiny wiatrowej. Zaproponowany regulator porĂłwnany jest z â&#x20AC;&#x17E;klasycznymâ&#x20AC;? regulatorem Ĺ&#x203A;lizgowym, w ktĂłrym nie zastosowano reguĹ&#x201A;y osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego podczas testĂłw laboratoryjnych. DziaĹ&#x201A;anie turbiny wiatrowej â&#x20AC;&#x17E;zasymulowaneâ&#x20AC;? jest przez dodatkowy silnik indukcyjny, sterowany przez oddzielny mikrokontroler. Oba regulatory zapewniajÄ&#x2026; osiÄ&#x2026;gniÄ&#x2122;cie punktu maksymalnej mocy, jednak zaproponowane podejĹ&#x203A;cie zmniejsza znieksztaĹ&#x201A;cenia napiÄ&#x2122;cia i czas regulacji. W pracy [40] funkcja signum w regule (3) zostaĹ&#x201A;a zastÄ&#x2026;piona przez funkcjÄ&#x2122; tangens, w celu zmniejszenia chatteringu. Udowodniono, Ĺźe mimo tej zmiany, przy odpowiednim doborze parametrĂłw, nadal zapewnione jest istnienie przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cego ruchu quasi-Ĺ&#x203A;lizgowego. W symulacjach komputerowych reguĹ&#x201A;a ta miaĹ&#x201A;a mniejsze pasmo nawet od nieprzeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cej reguĹ&#x201A;y opracowanej w pracy [27], ktĂłra zostanie omĂłwiona w nastÄ&#x2122;pnym rozdziale. Wydaje siÄ&#x2122; jednak, Ĺźe przewaga ta zostaĹ&#x201A;a uzyskana raczej przez korzystniejszy dobĂłr parametrĂłw dla nowej reguĹ&#x201A;y
Pierwsze wyraĹźenie po prawej stronie rĂłwnania (8) maleje, gdy wartoĹ&#x203A;Ä&#x2021; zmiennej Ĺ&#x203A;lizgowej dÄ&#x2026;Ĺźy do zera. OsĹ&#x201A;abia to dziaĹ&#x201A;anie nieciÄ&#x2026;gĹ&#x201A;ej czÄ&#x2122;Ĺ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego i ogranicza chattering. Ponadto reguĹ&#x201A;a (8), w przeciwieĹ&#x201E;stwie do wiÄ&#x2122;kszoĹ&#x203A;ci rozwiÄ&#x2026;zaĹ&#x201E;, gwarantuje gĂłrne ograniczenie prÄ&#x2122;dkoĹ&#x203A;ci zmian zmiennej Ĺ&#x203A;lizgowej, niezaleĹźne od warunkĂłw poczÄ&#x2026;tkowych. Dla wielu ukĹ&#x201A;adĂłw jest to rĂłwnoznaczne z ograniczeniem maksymalnych wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego i przynajmniej niektĂłrych zmiennych stanu. NastÄ&#x2122;pnie autorzy porĂłwnujÄ&#x2026; swoje rozwiÄ&#x2026;zanie z (3), zarĂłwno dla ukĹ&#x201A;adu nominalnego jak i poddanego zakĹ&#x201A;Ăłceniom. Nowe podejĹ&#x203A;cie skutkuje wÄ&#x2122;Ĺźszym pasmem ruchu quasi-Ĺ&#x203A;lizgowego oraz mniejszymi wartoĹ&#x203A;ciami kryteriĂłw IAE i ISE. W pracy [7] autorzy nieznacznie modyfikujÄ&#x2026; reguĹ&#x201A;Ä&#x2122; (8), aby zastosowaÄ&#x2021; jÄ&#x2026; do sterowania przepĹ&#x201A;ywem towarĂłw w ukĹ&#x201A;adzie logistycznym. Istotne wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci, takie jak zapewnienie peĹ&#x201A;nego zaspokojenia popytu sÄ&#x2026; wykazane analitycznie oraz w symulacjach komputerowych. W referacie [19] zaproponowano poĹ&#x201A;Ä&#x2026;czenie nowej reguĹ&#x201A;y zawierajÄ&#x2026;cej funkcjÄ&#x2122; secans hiperboliczny z nieliniowÄ&#x2026; powierzchniÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026;. Wykazano, na drodze symulacji komputerowych sterowania pozycjÄ&#x2026; wirnika silnika DC, Ĺźe zapewnia ona lepszÄ&#x2026; odpornoĹ&#x203A;Ä&#x2021; na zakĹ&#x201A;Ăłcenia niĹź reguĹ&#x201A;a (3) i rozwiÄ&#x2026;zanie opracowane w pracy [11] (omĂłwionej w kolejnym rozdziale). Niestety, autorzy nie przedstawili Ĺźadnych analitycznych rozwaĹźaĹ&#x201E;, a w symulacjach komputerowych nie uzasadnili metody doboru parametrĂłw trzech reguĹ&#x201A;. Oznacza to, Ĺźe przewaga ich rozwiÄ&#x2026;zania mogĹ&#x201A;aby okazaÄ&#x2021; siÄ&#x2122; mniejsza, jeĹ&#x203A;li parametry wszystkich reguĹ&#x201A; wybrane byĹ&#x201A;yby optymalnie. Sterowanie z modelem odniesienia jest stosunkowo dobrze znanÄ&#x2026; metodologiÄ&#x2026;. Polega ona na zaprojektowaniu regulatora sterujÄ&#x2026;cego w odpowiedni (np. optymalny) sposĂłb modelem matematycznym obiektu. Drugi regulator, na podstawie wyjĹ&#x203A;Ä&#x2021; modelu i rzeczywistego obiektu dÄ&#x2026;Ĺźy do tego, aby stan obiektu podÄ&#x2026;ĹźaĹ&#x201A; za stanem modelu. PodejĹ&#x203A;cie to zostaĹ&#x201A;o poĹ&#x201A;Ä&#x2026;czone z regulacjÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026; w pracy [3]. ZaĹ&#x201A;oĹźono w niej, Ĺźe modelem steruje regulator Ĺ&#x203A;lizgowy zaprojektowany zgodnie z reguĹ&#x201A;Ä&#x2026; (3), a regulator dziaĹ&#x201A;ajÄ&#x2026;cy na obiekt dÄ&#x2026;Ĺźy do zrĂłwnania zmiennych Ĺ&#x203A;lizgowych obiektu i modelu. DokĹ&#x201A;adne zrĂłwnanie tych zmiennych nie jest w ogĂłlnym przypadku moĹźliwe, poniewaĹź nieznane zakĹ&#x201A;Ăłcenie zewnÄ&#x2122;trzne dziaĹ&#x201A;a na obiekt, ale nie na model. Wprowadzono teĹź kompensacjÄ&#x2122; zakĹ&#x201A;ĂłceĹ&#x201E;, przy zaĹ&#x201A;oĹźeniu ograniczonej szybkoĹ&#x203A;ci ich zmian. W pracy wykazano, Ĺźe zaproponowane rozwiÄ&#x2026;zanie pozwala na poprawÄ&#x2122; odpornoĹ&#x203A;ci na zakĹ&#x201A;Ăłcenia, przy jednoczesnym zmniejszeniu generowanych wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego. Stosunkowo nowym i interesujÄ&#x2026;cym kierunkiem badaĹ&#x201E; jest poĹ&#x201A;Ä&#x2026;czenie reguĹ&#x201A; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego ze zmiennymi Ĺ&#x203A;lizgowymi o wyĹźszym wzglÄ&#x2122;dnym rzÄ&#x2122;dzie [12]. Zmienna Ĺ&#x203A;lizgowa o rzÄ&#x2122;dzie rĂłwnym jeden zmienia swojÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; pod wpĹ&#x201A;ywem sygnaĹ&#x201A;u sterujÄ&#x2026;cego po jednym okresie dyskretyzacji. Podobnie
19
$` ` "= $ '. " "'. zmienna Ĺ&#x203A;lizgowa o rzÄ&#x2122;dzie r zmienia swojÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; po r okresach. W ten sposĂłb wartoĹ&#x203A;ci s(k + 1), s(k + 2), â&#x20AC;Ś, s(k + r â&#x20AC;&#x201C; 1) sÄ&#x2026; znane w chwili k i mogÄ&#x2026; byÄ&#x2021; uĹźyte do wygenerowania wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego u(k). WybĂłr zmiennej Ĺ&#x203A;lizgowej o wyĹźszym rzÄ&#x2122;dzie moĹźe byÄ&#x2021; wymuszony wzglÄ&#x2122;dami praktycznymi (brak pomiaru zmiennych stanu, na ktĂłre sygnaĹ&#x201A; sterujÄ&#x2026;cy bezpoĹ&#x203A;rednio wpĹ&#x201A;ywa), moĹźe teĹź byÄ&#x2021; decyzjÄ&#x2026; projektanta ukĹ&#x201A;adu sterowania. W pracy [5] autorzy modyfikujÄ&#x2026; reguĹ&#x201A;Ä&#x2122; (4), zastÄ&#x2122;pujÄ&#x2026;c staĹ&#x201A;e wyraĹźenie (1 â&#x20AC;&#x201C; qT) funkcjÄ&#x2026; h(s):
â&#x17D;§â&#x17D;Ş 1 dla s â&#x2030;Ľ s0 h s =â&#x17D;¨ , â&#x17D;Şâ&#x17D;Š s s0 dla s < s0
()
modyfikacjÄ&#x2122; wprowadzono w regule (3). Wykazano, Ĺźe w obu przypadkach nastÄ&#x2122;puje poprawa odpornoĹ&#x203A;ci ukĹ&#x201A;adu regulacji. RozwiÄ&#x2026;zanie zaproponowane w pracy [13] zostaĹ&#x201A;o porĂłwnane z reguĹ&#x201A;Ä&#x2026; (3) w symulacjach komputerowych i eksperymentach laboratoryjnych ukĹ&#x201A;adu przetwornicy DC-DC [36]. W celach porĂłwnawczych przedstawiono rĂłwnieĹź sterowanie zaprojektowane na podstawie modelu w czasie ciÄ&#x2026;gĹ&#x201A;ym i reguĹ&#x201A;y opracowanej w [17]. Wykazano, Ĺźe uwzglÄ&#x2122;dnienie dyskretnej natury sygnaĹ&#x201A;u sterujÄ&#x2026;cego znacznie poprawia dziaĹ&#x201A;anie otrzymanego regulatora, tzn. oba regulatory dyskretne zapewniajÄ&#x2026; znacznie mniejsze wartoĹ&#x203A;ci kryteriĂłw caĹ&#x201A;kowych uchybu niĹź regulator zaprojektowany w czasie ciÄ&#x2026;gĹ&#x201A;ym. Ponadto zastosowanie zmiennej Ĺ&#x203A;lizgowej o wzglÄ&#x2122;dnym rzÄ&#x2122;dzie rĂłwnym dwa pozwoliĹ&#x201A;o dodatkowo poprawiÄ&#x2021; jakoĹ&#x203A;Ä&#x2021; regulacji. Kolejna modyfikacja reguĹ&#x201A;y (10) zostaĹ&#x201A;a zaproponowana w pracy [39], w ktĂłrej powiÄ&#x2026;zano wartoĹ&#x203A;Ä&#x2021; funkcji sd(kT) z aktualnÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026; zmiennej Ĺ&#x203A;lizgowej s(kT). PozwoliĹ&#x201A;o to na skrĂłcenie fazy osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego. Trzeba jednak zauwaĹźyÄ&#x2021;, Ĺźe wadÄ&#x2026; tego podejĹ&#x203A;cia jest zmniejszenie odpornoĹ&#x203A;ci w trakcie tej fazy. W pracy [21] opracowano regulator Ĺ&#x203A;lizgowy tĹ&#x201A;umiÄ&#x2026;cy oscylacje pĹ&#x201A;ynu w zbiorniku. PoruszajÄ&#x2026;cy siÄ&#x2122; pĹ&#x201A;yn zostaĹ&#x201A; zamodelowany jako wahadĹ&#x201A;o. NastÄ&#x2122;pujÄ&#x2026;ca wykĹ&#x201A;adnicza reguĹ&#x201A;a zostaĹ&#x201A;a zaproponowana: â&#x17D;&#x203A; â&#x17D;&#x17E; â&#x17D;&#x203A; â&#x17D;&#x17E; â&#x2C6;&#x2019;1 â&#x17D;&#x; (11) s â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś = â&#x17D;&#x153; β1 exp â&#x17D;&#x153; + β 2 â&#x17D;&#x; s kT , â&#x17D;&#x153;â&#x17D;&#x153; â&#x17D;&#x;â&#x17D;&#x; â&#x17D;&#x153; s kT â&#x17D;&#x; â&#x17D;? â&#x17D; â&#x17D;? â&#x17D;
(9)
gdzie s0 jest staĹ&#x201A;ym parametrem. Pozwala to ograniczyÄ&#x2021; prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; zmian s, a przez to rĂłwnieĹź wartoĹ&#x203A;Ä&#x2021; sygnaĹ&#x201A;u sterujÄ&#x2026;cego. Autorzy wykazali, Ĺźe ich podejĹ&#x203A;cie zapewnia istnienie ruchu quasi-Ĺ&#x203A;lizgowego wg definicji w pracy [18]. Wyznaczyli rĂłwnieĹź otoczenie stanu zadanego, do ktĂłrego stan ukĹ&#x201A;adu bÄ&#x2122;dzie zbiegaÄ&#x2021;. NastÄ&#x2122;pnie zaadaptowali swojÄ&#x2026; reguĹ&#x201A;Ä&#x2122; dla zmiennych Ĺ&#x203A;lizgowych o rzÄ&#x2122;dzie wzglÄ&#x2122;dnym rĂłwnym 2. Wszystkie zalety reguĹ&#x201A;y zostaĹ&#x201A;y zachowane, ponadto pozwoliĹ&#x201A;o to na zmniejszenie szerokoĹ&#x203A;ci pasma ruchu quasi-Ĺ&#x203A;lizgowego i uchybu wyjĹ&#x203A;cia. W artykule [4] reguĹ&#x201A;a (3) zostaĹ&#x201A;a uogĂłlniona dla dowolnego rzÄ&#x2122;du zmiennej Ĺ&#x203A;lizgowej. WybĂłr zmiennej Ĺ&#x203A;lizgowej o rzÄ&#x2122;dzie r zostaĹ&#x201A; uproszczony przez przeksztaĹ&#x201A;cenie ukĹ&#x201A;adu do postaci Frobeniusa. Zaproponowano zmiennÄ&#x2026; w czasie pĹ&#x201A;aszczyznÄ&#x2122; Ĺ&#x203A;lizgowÄ&#x2026;, eliminujÄ&#x2026;c fazÄ&#x2122; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego. Wykazano, Ĺźe zwiÄ&#x2122;kszenie wzglÄ&#x2122;dnego rzÄ&#x2122;du zmiennej Ĺ&#x203A;lizgowej skutkuje wiÄ&#x2122;kszÄ&#x2026; precyzjÄ&#x2026; sterowania.
(
W pracy [1] definicja ruchu quasi-Ĺ&#x203A;lizgowego, zaproponowana w [18] zostaĹ&#x201A;a zmodyfikowana przez pominiÄ&#x2122;cie wymogu przekraczania pĹ&#x201A;aszczyzny Ĺ&#x203A;lizgowej w kaĹźdym okresie sterowania. ZaĹ&#x201A;oĹźono, Ĺźe wpĹ&#x201A;yw zakĹ&#x201A;ĂłceĹ&#x201E; zewnÄ&#x2122;trznych i niepewnoĹ&#x203A;ci modelowania speĹ&#x201A;nia warunki dopasowania. Oznacza to, Ĺźe jeĹźeli wpĹ&#x201A;yw sygnaĹ&#x201A;u sterujÄ&#x2026;cego na wektor stanu wynosi bu(kT), to wpĹ&#x201A;yw zakĹ&#x201A;Ăłcenia moĹźna wyraziÄ&#x2021; jako bd(kT), gdzie d to nieznana skalarna funkcja. Zaproponowana zostaĹ&#x201A;a reguĹ&#x201A;a
(
)
( )
(
)
, (12) gdzie qi â&#x2C6;&#x2C6;(0, 1/T) dla i = 1, 2, siga[s(kT)] = sgn[s(kT)]|s(kT)|a, a â&#x2C6;&#x2C6; (0, 1) a b(kT) oznacza róşnicÄ&#x2122; miÄ&#x2122;dzy zakĹ&#x201A;Ăłceniem w chwili k i w poprzedniej, k â&#x20AC;&#x201C; 1. Autorzy wykazali, Ĺźe ruch quasiĹ&#x203A;lizgowy zostanie osiÄ&#x2026;gniÄ&#x2122;ty w skoĹ&#x201E;czonym czasie i wyznaczyli zaleĹźnoĹ&#x203A;Ä&#x2021; tego czasu od warunkĂłw poczÄ&#x2026;tkowych. NastÄ&#x2122;pnie porĂłwnali swoje rozwiÄ&#x2026;zanie z reguĹ&#x201A;Ä&#x2026; (1) i wykazali, Ĺźe pozwala ono na osiÄ&#x2026;gniÄ&#x2122;cie duĹźo lepszej odpornoĹ&#x203A;ci na zakĹ&#x201A;Ăłcenia. NaleĹźy jednak zaznaczyÄ&#x2021;, Ĺźe porĂłwnanie to nie jest w peĹ&#x201A;ni obiektywne, gdyĹź nowa reguĹ&#x201A;a nie gwarantuje istnienia przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cego trybu Ĺ&#x203A;lizgowego.
(10)
gdzie d(kT) oznacza wpĹ&#x201A;yw zakĹ&#x201A;ĂłceĹ&#x201E; zewnÄ&#x2122;trznych i niepewnoĹ&#x203A;ci modelowania na zmiennÄ&#x2026; Ĺ&#x203A;lizgowÄ&#x2026;, d0 jest Ĺ&#x203A;redniÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026; tej funkcji, a sd(kT) jest poĹźÄ&#x2026;danym przebiegiem zmiennej Ĺ&#x203A;lizgowej. Funkcja sd(kT) musi speĹ&#x201A;niaÄ&#x2021; nastÄ&#x2122;pujÄ&#x2026;ce wymogi: 1. Jej poczÄ&#x2026;tkowa wartoĹ&#x203A;Ä&#x2021; rĂłwna jest poczÄ&#x2026;tkowej wartoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej, sd(0) = s(0). 2. Funkcja sd(kT) nigdy nie zmienia znaku. 3. WartoĹ&#x203A;Ä&#x2021; bezwzglÄ&#x2122;dna sd(kT) maleje w kaĹźdym kolejnym kroku co najmniej o 2 dd, dla |sd(kT)| > 2 dd, gdzie dd oznacza najwiÄ&#x2122;kszÄ&#x2026; moĹźliwÄ&#x2026; róşnicÄ&#x2122; miÄ&#x2122;dzy d(kT) i d0. Zgodnie z trzecim wymogiem, bÄ&#x2122;dzie istniaĹ&#x201A;a chwila k*, w ktĂłrej nierĂłwnoĹ&#x203A;Ä&#x2021; |sd[(k* â&#x2C6;&#x2019; 1)T]| d 2 dd zostanie speĹ&#x201A;niona, nastÄ&#x2122;pnie sd(kT t k*T) = 0. W przedstawionym przypadku sd(kT) zostaĹ&#x201A;a wybrana jako funkcja liniowa, istnieje jednak wiele innych moĹźliwoĹ&#x203A;ci speĹ&#x201A;niajÄ&#x2026;cych wymagania 1â&#x20AC;&#x201C;3. Wykazano, Ĺźe nowe podejĹ&#x203A;cie gwarantuje wiÄ&#x2122;kszÄ&#x2026; odpornoĹ&#x203A;Ä&#x2021; na zakĹ&#x201A;Ăłcenia niĹź (3). Ponadto zaproponowano kompensacjÄ&#x2122; zakĹ&#x201A;Ăłcenia, opartÄ&#x2026; na zaĹ&#x201A;oĹźeniu o ograniczonej szybkoĹ&#x203A;ci jego zmian. Kompensacja ta pozwoliĹ&#x201A;a na dalszÄ&#x2026; poprawÄ&#x2122; odpornoĹ&#x203A;ci algorytmu sterowania. W pracy [13] rezultaty z [1] zostaĹ&#x201A;y rozszerzone dla zmiennych Ĺ&#x203A;lizgowych o wzglÄ&#x2122;dnym rzÄ&#x2122;dzie rĂłwnym dwa. PodobnÄ&#x2026;
20
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
( )
( )
gdzie b1, b2 to dodatnie parametry, ktĂłrych suma nie przekracza 1 i b2 < b1. ReguĹ&#x201A;a (11) zostaĹ&#x201A;a nastÄ&#x2122;pnie porĂłwnana do rozwiÄ&#x2026;zaĹ&#x201E; z prac [1, 39] w symulacjach komputerowych. Wykazano, Ĺźe zapewnia ona najmniejszÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; normy euklidesowej i maksymalnej wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego. NastÄ&#x2122;pnie w referacie [20] reguĹ&#x201A;a (11) zostaĹ&#x201A;a uĹźyta w projekcie dwĂłch regulatorĂłw Ĺ&#x203A;lizgowych dla dwuosiowego skanera umieszczonego na rakiecie. Skaner ma podÄ&#x2026;ĹźaÄ&#x2021; za spiralnÄ&#x2026; trajektoriÄ&#x2026;, aby znaleĹşÄ&#x2021; cel rakiety w koĹ&#x201E;cowym etapie lotu. Regulatory sÄ&#x2026; rozbudowane przez kompensacjÄ&#x2122; zakĹ&#x201A;ĂłceĹ&#x201E;, aby poprawiÄ&#x2021; ich odpornoĹ&#x203A;Ä&#x2021;. DziaĹ&#x201A;anie zaproponowanego podejĹ&#x203A;cia jest zobrazowane w symulacjach komputerowych. Natomiast w artykule [15] autorzy zaproponowali reguĹ&#x201A;Ä&#x2122;
Y, : $ ! ! $
s â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś = d kT â&#x2C6;&#x2019; d 0 + sd â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś ,
)
W pracy [27] autorzy zaproponowali reguĹ&#x201A;Ä&#x2122;
(13) w ktĂłrej q â&#x2C6;&#x2C6; (0, 1/T), a l jest dodatnim parametrem. Nieliniowe wyraĹźenie ÎŚ (kT) â&#x2C6;&#x2C6;(d, 1) dla pewnego d > 0 dÄ&#x2026;Ĺźy do jedynki, w miarÄ&#x2122; jak zmienna s(kT) maleje, aby uzyskaÄ&#x2021; lepszy kompromis miÄ&#x2122;dzy krĂłtkÄ&#x2026; fazÄ&#x2026; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
i niewielkim chatteringiem. Ostatnie wyraĹźenie we wzorze sĹ&#x201A;uĹźy do kompensowania zakĹ&#x201A;Ăłcenia f (dimf = n Ă&#x2014; 1) przy zaĹ&#x201A;oĹźeniu, Ĺźe róşnica drugiego rzÄ&#x2122;du funkcji f jest ograniczona. Jest to ciekawe podejĹ&#x203A;cie, gdyĹź wiÄ&#x2122;kszoĹ&#x203A;Ä&#x2021; prac zakĹ&#x201A;ada ograniczenie samej wartoĹ&#x203A;ci zakĹ&#x201A;Ăłcenia lub jego róşnicy pierwszego rzÄ&#x2122;du. Mimo tego, Ĺźe autorzy wykorzystujÄ&#x2026; reguĹ&#x201A;Ä&#x2122; zbliĹźonÄ&#x2026; do (3), wcale nie wymagajÄ&#x2026; oni przekraczania pĹ&#x201A;aszczyzny Ĺ&#x203A;lizgowej w kaĹźdym kolejnym kroku. W symulacjach komputerowych porĂłwnujÄ&#x2026; swoje rozwiÄ&#x2026;zanie do tego zaproponowanego w [33]. Rezultaty potwierdzajÄ&#x2026; uzyskanie wiÄ&#x2122;kszej odpornoĹ&#x203A;ci ukĹ&#x201A;adu zamkniÄ&#x2122;tego. W pracy [26] autorzy zaproponowali nastÄ&#x2122;pujÄ&#x2026;cÄ&#x2026; modyfikacjÄ&#x2122; wczeĹ&#x203A;niej opracowanej przez nich reguĹ&#x201A;y (13)
pĹ&#x201A;ynny sposĂłb zmieniaÄ&#x2021; szybkoĹ&#x203A;Ä&#x2021; zbieĹźnoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej. W [25] zaproponowano reguĹ&#x201A;Ä&#x2122; analogicznÄ&#x2026; do (7), w ktĂłrej wprowadzono trzecie wyraĹźenie zawierajÄ&#x2026;ce potÄ&#x2122;gÄ&#x2122; wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnej zmiennej Ĺ&#x203A;lizgowej. Autorzy, w porĂłwnaniu do pracy [42], zrezygnowali rĂłwnieĹź z wymogu przekraczania powierzchni Ĺ&#x203A;lizgowej w kaĹźdym kolejnym kroku ruchu quasi-Ĺ&#x203A;lizgowego. Wykazali oni, analitycznie oraz w symulacjach komputerowych, przewagÄ&#x2122; swojego rozwiÄ&#x2026;zania nad reguĹ&#x201A;Ä&#x2026; z jednÄ&#x2026; funkcjÄ&#x2026; potÄ&#x2122;gowÄ&#x2026; [15]. Przewaga ta polega na jednoczesnym uzyskaniu szybszej zbieĹźnoĹ&#x203A;ci oraz redukcji chatteringu. Autorzy [32] zaproponowali nastÄ&#x2122;pujÄ&#x2026;ce warunki zapewniajÄ&#x2026;ce istnienie ruchu quasi-Ĺ&#x203A;lizgowego:
(15)
(14)
Oznaczenia we wzorze (14) zostaĹ&#x201A;y zmienione w stosunku do pracy [26], Ĺźeby lepiej uwidoczniÄ&#x2021; porĂłwnanie z reguĹ&#x201A;Ä&#x2026; (10). Jak widaÄ&#x2021;, jedynÄ&#x2026; róşnicÄ&#x2026; jest przeskalowanie wyraĹźenia przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cego o pierwiastek wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnej zmiennej Ĺ&#x203A;lizgowej. Taka modyfikacja nie ma diametralnego wpĹ&#x201A;ywu na generowany sygnaĹ&#x201A; sterujÄ&#x2026;cy, gdyĹź juĹź wczeĹ&#x203A;niej wyraĹźenie to nie byĹ&#x201A;o staĹ&#x201A;e (wystÄ&#x2122;pujÄ&#x2026;ce w mianowniku wyraĹźenie ÎŚ(kT) zaleĹźy od wartoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej). W symulacjach komputerowych autorzy porĂłwnali swojÄ&#x2026; reguĹ&#x201A;Ä&#x2122; z zaproponowanÄ&#x2026; w pracy [15] i wykazali, Ĺźe pozwala ona jednoczeĹ&#x203A;nie zmniejszyÄ&#x2021; czas osiÄ&#x2026;gania trybu quasi-Ĺ&#x203A;lizgowego, jak i zmniejszyÄ&#x2021; szerokoĹ&#x203A;Ä&#x2021; pasma tego ruchu. Jako przykĹ&#x201A;ad zastosowania reguĹ&#x201A;y (14) w praktyce autorzy zilustrowali jej dziaĹ&#x201A;anie na stanowisku laboratoryjnym z siĹ&#x201A;ownikiem piezoelektrycznym, ponownie porĂłwnujÄ&#x2026;c jÄ&#x2026; do pracy [15]. Eksperymenty, podobnie jak wyniki symulacji, potwierdziĹ&#x201A;y przewagÄ&#x2122; nowego rozwiÄ&#x2026;zania. NaleĹźy nadmieniÄ&#x2021;, Ĺźe przewaga ta zostaĹ&#x201A;a czÄ&#x2122;Ĺ&#x203A;ciowo uzyskana dziÄ&#x2122;ki zaĹ&#x201A;oĹźeniu ograniczonej wartoĹ&#x203A;ci róşnicy drugiego rzÄ&#x2122;du zakĹ&#x201A;Ăłcenia, podczas gdy regulator z pracy [15] nie wymagaĹ&#x201A; takiego zaĹ&#x201A;oĹźenia. W pracy [23] autorzy zaproponowali reguĹ&#x201A;Ä&#x2122; niemal toĹźsamÄ&#x2026; z (13), pomijajÄ&#x2026;c zmianÄ&#x2122; oznaczeĹ&#x201E;. GĹ&#x201A;ĂłwnÄ&#x2026; róşnicÄ&#x2026; jest to, Ĺźe funkcja ÎŚ(kT) jest w nieco inny sposĂłb zaleĹźna od wartoĹ&#x203A;ci zmiennej Ĺ&#x203A;lizgowej, lecz zbiĂłr wartoĹ&#x203A;ci tej funkcji jest taki sam. DÄ&#x2026;Ĺźy ona do ustalonego d dla duĹźych wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnych zmiennej Ĺ&#x203A;lizgowej, a do jedynki, gdy zmienna Ĺ&#x203A;lizgowa dÄ&#x2026;Ĺźy do zera. Niestety, autorzy nie odwoĹ&#x201A;ujÄ&#x2026; siÄ&#x2122; do (10) i nie prĂłbujÄ&#x2026; porĂłwnaÄ&#x2021; z tÄ&#x2026; reguĹ&#x201A;Ä&#x2026; swojego rozwiÄ&#x2026;zania. Wydaje siÄ&#x2122; jednak, Ĺźe róşnice byĹ&#x201A;yby bardzo nieznaczne. GĹ&#x201A;ĂłwnÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026; tej pracy jest natomiast wykazanie, Ĺźe otrzymana reguĹ&#x201A;a zapewnia szybszÄ&#x2026; zbieĹźnoĹ&#x203A;Ä&#x2021; i wÄ&#x2122;Ĺźsze pasmo ruchu quasi-Ĺ&#x203A;lizgowego niĹź rozwiÄ&#x2026;zanie opracowane w pracy [34]. Autorom udaĹ&#x201A;o siÄ&#x2122; to zademonstrowaÄ&#x2021; nie tylko w symulacjach komputerowych (jak w pracy [27]), lecz rĂłwnieĹź analitycznie. W pracy [8] zaproponowano reguĹ&#x201A;Ä&#x2122; osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego otrzymanÄ&#x2026; przez modyfikacjÄ&#x2122; (3). UsuniÄ&#x2122;to wyraĹźenie przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;ce, aby zmniejszyÄ&#x2021; efekt chatteringu, a staĹ&#x201A;y parametr q zastÄ&#x2026;piono funkcjÄ&#x2026; wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnej zmiennej Ĺ&#x203A;lizgowej. Wykazano, Ĺźe zastosowanie otrzymanego regulatora do sterowania przepĹ&#x201A;ywem danych w sieciach teleinformatycznych zapewnia korzystne wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci, takie jak peĹ&#x201A;ne wykorzystanie dostÄ&#x2122;pnego pasma oraz znajomoĹ&#x203A;Ä&#x2021; maksymalnej iloĹ&#x203A;ci danych zgromadzonych w buforze, co pozwala uniknÄ&#x2026;Ä&#x2021; ryzyka jego przepeĹ&#x201A;nienia. ZauwaĹźajÄ&#x2026;c korzyĹ&#x203A;ci z wprowadzenia dwĂłch funkcji potÄ&#x2122;gowych zamiast jednej [42], naturalnym kolejnym krokiem byĹ&#x201A;o zastosowanie trzech funkcji potÄ&#x2122;gowych, aby w jeszcze bardziej
WedĹ&#x201A;ug nich, speĹ&#x201A;nienie (15) gwarantuje zbieĹźnoĹ&#x203A;Ä&#x2021; w skoĹ&#x201E;czonym czasie do obszaru |s(kT)| e. Jednak po dokĹ&#x201A;adniejszym ich przeanalizowaniu, moĹźna zauwaĹźyÄ&#x2021;, Ĺźe samo speĹ&#x201A;nienie (15) nie gwarantuje zbieĹźnoĹ&#x203A;ci do tego obszaru. MoĹźe siÄ&#x2122; okazaÄ&#x2021;, Ĺźe
tylko dla pewnego sg > e. JeĹźeli poczÄ&#x2026;tkowa wartoĹ&#x203A;Ä&#x2021; zmiennej Ĺ&#x203A;lizgowej jest wiÄ&#x2122;ksza niĹź sg, to zmienna Ĺ&#x203A;lizgowa bÄ&#x2122;dzie zbiegaÄ&#x2021; do sg. Zatem punkt opisujÄ&#x2026;cy nie znajdzie siÄ&#x2122; w otoczeniu powierzchni Ĺ&#x203A;lizgowej, mimo Ĺźe warunki (15) sÄ&#x2026; speĹ&#x201A;nione. Autorzy proponujÄ&#x2026; nastÄ&#x2122;pujÄ&#x2026;cÄ&#x2026; reguĹ&#x201A;Ä&#x2122;
(
)
( )
(
)
( )
s â&#x17D;Ąâ&#x17D;Ł k + 1 T â&#x17D;¤â&#x17D;Ś â&#x2C6;&#x2019; s kT = d x , kT â&#x2C6;&#x2019; d0 â&#x2C6;&#x2019; ds sgn â&#x17D;Ąâ&#x17D;Łs kT â&#x17D;¤â&#x17D;Ś ,
(16)
w ktĂłrej d(x, kT) jest nieznanym wpĹ&#x201A;ywem zakĹ&#x201A;Ăłcenia, d0 to Ĺ&#x203A;rednia wartoĹ&#x203A;Ä&#x2021; tej funkcji, a ds to najwiÄ&#x2122;ksza moĹźliwa rozbieĹźnoĹ&#x203A;Ä&#x2021; miÄ&#x2122;dzy d(x, kT) a Ĺ&#x203A;redniÄ&#x2026;. Zatem (16) moĹźe byÄ&#x2021; rozwaĹźane jako szczegĂłlny przypadek (4), w ktĂłrym q = e = 0, a zbieĹźnoĹ&#x203A;Ä&#x2021; jest zapewniona tylko przez przeestymowanie ds. W pracy [11] autorzy przedstawili ogĂłlnÄ&#x2026; postaÄ&#x2021; reguĹ&#x201A;y osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego. Gwarantuje ona zbieĹźnoĹ&#x203A;Ä&#x2021; do znanego obszaru wokĂłĹ&#x201A; s(kT) = 0 i pozostanie w nim. Niestety, autorzy nie pokazujÄ&#x2026;, w jaki sposĂłb moĹźna byĹ&#x201A;oby ich rozwiÄ&#x2026;zanie zastosowaÄ&#x2021; w konkretnym ukĹ&#x201A;adzie sterowania, analizujÄ&#x2026; tylko sam przebieg zmiennej Ĺ&#x203A;lizgowej. W pracy [11] przeanalizowano, jak dobieraÄ&#x2021; funkcje, z ktĂłrych skĹ&#x201A;ada siÄ&#x2122; uogĂłlniona reguĹ&#x201A;a osiÄ&#x2026;gania trybu Ĺ&#x203A;lizgowego, aby otrzymaÄ&#x2021; poĹźÄ&#x2026;danÄ&#x2026; szerokoĹ&#x203A;Ä&#x2021; pasma ruchu quasi-Ĺ&#x203A;lizgowego. Ci sami autorzy w [10] rozszerzyli swoje wyniki, wykazujÄ&#x2026;c jak zmiana wymienionych funkcji wpĹ&#x201A;ynie na tempo zmian zmiennej Ĺ&#x203A;lizgowej przed rozpoczÄ&#x2122;ciem ruchu quasi-Ĺ&#x203A;lizgowego. W referacie [9] dokĹ&#x201A;adnie przeanalizowano korzyĹ&#x203A;ci pĹ&#x201A;ynÄ&#x2026;ce ze stosowania zmiennej Ĺ&#x203A;lizgowej o rzÄ&#x2122;dzie wzglÄ&#x2122;dnym wiÄ&#x2122;kszym niĹź jeden. Wykazano, Ĺźe wybĂłr zmiennej Ĺ&#x203A;lizgowej o rzÄ&#x2122;dzie r = n pozwala nie tylko osiÄ&#x2026;gnÄ&#x2026;Ä&#x2021; ruch Ĺ&#x203A;lizgowy w skoĹ&#x201E;czonym czasie, ale rĂłwnieĹź zbieĹźnoĹ&#x203A;Ä&#x2021; wszystkich zmiennych stanu do zera w skoĹ&#x201E;czonym czasie, o ile na ukĹ&#x201A;ad nie dziaĹ&#x201A;a zakĹ&#x201A;Ăłcenie. â&#x20AC;&#x17E;Klasyczneâ&#x20AC;? sterowanie Ĺ&#x203A;lizgowe zapewnia wyĹ&#x201A;Ä&#x2026;cznie pierwszÄ&#x2026; z tych zalet. W przypadku oddziaĹ&#x201A;ywania zakĹ&#x201A;Ăłcenia zbieĹźnoĹ&#x203A;Ä&#x2021; stanĂłw do zera jest zastÄ&#x2026;piona przez zbieĹźnoĹ&#x203A;Ä&#x2021; do okreĹ&#x203A;lonego otoczenia zera. Wykazano, Ĺźe wielkoĹ&#x203A;Ä&#x2021; wspomnianego otoczenia maleje, w miarÄ&#x2122; jak wybieramy zmienne Ĺ&#x203A;lizgowe o coraz wyĹźszym rzÄ&#x2122;dzie, co oznacza poprawÄ&#x2122; odpornoĹ&#x203A;ci na zakĹ&#x201A;Ăłcenia. Jedynym problemem zaproponowanego rozwiÄ&#x2026;zania jest niemoĹź-
21
$` ` "= $ '. " "'.
Rys. 1. Przebiegi zmiennej Ĺ&#x203A;lizgowej Fig. 1. Sliding variable transients
Rys. 2. Przebiegi sygnaĹ&#x201A;u sterujÄ&#x2026;cego Fig. 2. Control signal transients
noĹ&#x203A;Ä&#x2021; zastosowania go do ukĹ&#x201A;adĂłw, w ktĂłrych nie sÄ&#x2026; speĹ&#x201A;nione warunki dopasowania. PorĂłwnanie wielu wyĹźej wymienionych algorytmĂłw sterowania na przykĹ&#x201A;adzie serwonapÄ&#x2122;du zostaĹ&#x201A;o przedstawione w pracy [31].
Dla wszystkich reguĹ&#x201A; zmienna Ĺ&#x203A;lizgowa zostanie okreĹ&#x203A;lona jako s kT = cT x kT ,
( )
( )
(18)
cT = â&#x17D;Ąâ&#x17D;Ł0,05 1â&#x17D;¤â&#x17D;Ś .
(19)
gdzie
], # $ !
PowyĹźsza postaÄ&#x2021; wektora c zapewni dynamikÄ&#x2122; typu dead-beat w trakcie ruchu Ĺ&#x203A;lizgowego, czyli zanik uchybu w skoĹ&#x201E;czonym czasie. ZaĹ&#x201A;oĹźono, Ĺźe na ukĹ&#x201A;ad dziaĹ&#x201A;a zakĹ&#x201A;Ăłcenie postaci d(kT)Â =Â Bd(kT), co oznacza, Ĺźe speĹ&#x201A;nia ono warunki dopasowania, przy czym |d(kT)| Â 0,1. ZakĹ&#x201A;Ăłcenie przez pierwsze trzy sekundy rĂłwne jest â&#x20AC;&#x201C;0,1, a przez ostatnie trzy 0,1. PoczÄ&#x2026;tkowy stan ukĹ&#x201A;adu to x(0)Â =Â [4 0]T. PorĂłwnane zostanÄ&#x2026; reguĹ&#x201A;y: (4), (7), (10) i (11). ZaĹ&#x201A;oĹźono, Ĺźe bezwzglÄ&#x2122;dna wartoĹ&#x203A;Ä&#x2021; sygnaĹ&#x201A;u sterujÄ&#x2026;cego kaĹźdego z regulatorĂłw nie moĹźe przekraczaÄ&#x2021; wartoĹ&#x203A;ci 42, a regulatory (4), (7) majÄ&#x2026; zapewniÄ&#x2021; istnienie przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cego trybu Ĺ&#x203A;lizgowego. Przy tych zaĹ&#x201A;oĹźeniach parametry wszystkich regulatorĂłw zostaĹ&#x201A;y tak dobrane, aby zmienna Ĺ&#x203A;lizgowa jak najszybciej osiÄ&#x2026;gnÄ&#x2122;Ĺ&#x201A;a okolice zera (tym samym osiÄ&#x2026;gnÄ&#x2026;Ä&#x2021; jak naj-
PorĂłwnanie rezultatĂłw symulacji wszystkich przedstawionych w artykule reguĹ&#x201A; byĹ&#x201A;oby bardzo trudne, chociaĹźby z uwagi na ograniczenie miejsca. PoniĹźej przedstawione zostanÄ&#x2026;, dla ilustracji, rezultaty otrzymane przy zastosowaniu czterech wybranych reguĹ&#x201A;. RozwaĹźone bÄ&#x2122;dzie sterowanie integratorem drugiego rzÄ&#x2122;du, po zdyskretyzowaniu z okresem TÂ =Â 0,1 sekundy i zastosowaniu ekstrapolatora zerowego rzÄ&#x2122;du. Taki ukĹ&#x201A;ad moĹźe byÄ&#x2021; opisany rĂłwnaniem (2), w ktĂłrym
â&#x17D;Ą1 0,1â&#x17D;¤ â&#x17D;Ą0,005â&#x17D;¤ A=â&#x17D;˘ â&#x17D;Ľ, B = â&#x17D;˘ â&#x17D;Ľ. â&#x17D;Ł0 1 â&#x17D;Ś â&#x17D;Ł 0,1 â&#x17D;Ś
22
P
O
M
I
A
R
Y
(17)
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Rys. 3. Przebiegi pierwszej zmiennej stanu Fig. 3. First state variable transients
krĂłtszy czas regulacji), a niekorzystny efekt chatteringu byĹ&#x201A; jak najmniejszy. DoprowadziĹ&#x201A;o to do nastÄ&#x2122;pujÄ&#x2026;cych wartoĹ&#x203A;ci parametrĂłw: dla reguĹ&#x201A;y (4): q = 1, e = 3,7, dla reguĹ&#x201A;y (7): q = 1, a = 0,01, b = 1,4, e1 = 3, e2 = 0,00002. W przypadku reguĹ&#x201A;y (10) przebieg sd zostaĹ&#x201A; wybrany jako liniowy spadek do zera o nachyleniu 84 jednostek na sekundÄ&#x2122;. Dla reguĹ&#x201A;y (11) wybrane zostaĹ&#x201A;y wartoĹ&#x203A;ci parametrĂłw b1 = 0,54, b2 = 0,36. Wyniki symulacji pokazano na rysunkach 1â&#x20AC;&#x201C;3. Analiza wynikĂłw symulacji wskazuje, Ĺźe reguĹ&#x201A;a (4) zapewnia najmniej korzystne dziaĹ&#x201A;anie ukĹ&#x201A;adu â&#x20AC;&#x201C; dĹ&#x201A;ugi czas regulacji, najwiÄ&#x2122;ksze oscylacje sygnaĹ&#x201A;u sterujÄ&#x2026;cego w trakcie ruchu Ĺ&#x203A;lizgowego oraz maĹ&#x201A;Ä&#x2026; odpornoĹ&#x203A;Ä&#x2021; na zakĹ&#x201A;Ăłcenia. ReguĹ&#x201A;a (7), dziÄ&#x2122;ki zastosowaniu funkcji potÄ&#x2122;gowych, pozwala na lepsze dostrojenie jej parametrĂłw â&#x20AC;&#x201C; oscylacje zostajÄ&#x2026; zmniejszone, przy bardzo nieznacznie wydĹ&#x201A;uĹźonym czasie regulacji. WyraĹşnie poprawione dziaĹ&#x201A;anie uzyskuje siÄ&#x2122; natomiast przez zastosowanie reguĹ&#x201A; nieprzeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cych (10) i (11). DziÄ&#x2122;ki pominiÄ&#x2122;ciu wymogu przekraczania pĹ&#x201A;aszczyzny Ĺ&#x203A;lizgowej moĹźna znacznie zredukowaÄ&#x2021; chattering. Przy zachowaniu tej samej maksymalnej wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego, reguĹ&#x201A;a (10) zapewnia najkrĂłtszy czas regulacji, dzieje siÄ&#x2122; to jednak kosztem wystÄ&#x2026;pienia krĂłtkiej, duĹźej wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego, niewystÄ&#x2122;pujÄ&#x2026;cej przy zastosowaniu pozostaĹ&#x201A;ych reguĹ&#x201A;.
b, #
PorĂłwnujÄ&#x2026;c wyniki stosowania wymienionych reguĹ&#x201A;, moĹźna wyciÄ&#x2026;gnÄ&#x2026;Ä&#x2021; pewne ogĂłlne wnioski. ReguĹ&#x201A;y nieprzeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;ce generalnie pozwalajÄ&#x2026; osiÄ&#x2026;gnÄ&#x2026;Ä&#x2021; wÄ&#x2122;Ĺźsze pasmo ruchu quasi-Ĺ&#x203A;lizgowego, a zatem rĂłwnieĹź wiÄ&#x2122;kszÄ&#x2026; odpornoĹ&#x203A;Ä&#x2021; na zakĹ&#x201A;Ăłcenia zewnÄ&#x2122;trzne. JedynÄ&#x2026; przewagÄ&#x2026; reguĹ&#x201A; przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cych jest zagwarantowanie tego, Ĺźe miÄ&#x2122;dzy kolejnymi chwilami prĂłbkowania w trakcie ruchu quasi-Ĺ&#x203A;lizgowego stan w pewnym momencie znajdzie siÄ&#x2122; dokĹ&#x201A;adnie na powierzchni Ĺ&#x203A;lizgowej. Przewaga ta wydaje siÄ&#x2122; jednak czysto teoretyczna i nie widaÄ&#x2021; jej przeĹ&#x201A;oĹźenia na praktyczne aspekty sterowania. Ciekawym i stosunkowo nowym kierunkiem rozwoju wydaje siÄ&#x2122; natomiast zastosowanie zmiennych Ĺ&#x203A;lizgowych o rzÄ&#x2122;dzie wzglÄ&#x2122;dnym wiÄ&#x2122;kszym niĹź jeden. Bez tej metody w niektĂłrych ukĹ&#x201A;adach zastosowanie sterowania Ĺ&#x203A;lizgowego moĹźe byÄ&#x2021; niemoĹźliwe, np. z powodu braku pomiaru zmiennych stanu, na ktĂłre sygnaĹ&#x201A; sterujÄ&#x2026;cy bezpoĹ&#x203A;rednio oddziaĹ&#x201A;uje. Nawet, jeĹźeli ten problem nie wystÄ&#x2122;puje, w wielu przypadkach zwiÄ&#x2122;kszenie
rzÄ&#x2122;du zmiennej Ĺ&#x203A;lizgowej moĹźe pozwoliÄ&#x2021; na poprawÄ&#x2122; odpornoĹ&#x203A;ci ukĹ&#x201A;adu zamkniÄ&#x2122;tego.
^ 1.
Bartoszewicz A., Discrete-time quasi-sliding-mode control strategies, â&#x20AC;?IEEE Transactions on Industrial Electronicsâ&#x20AC;?, Vol. 45, No. 4, 1998, 633â&#x20AC;&#x201C;637, DOI: 10.1109/41.704892. 2. Bartoszewicz A., Remarks on â&#x20AC;&#x2DC;Discrete-time variable structure control systemsâ&#x20AC;&#x2122;, â&#x20AC;&#x153;IEEE Transactions on Industrial Electronicsâ&#x20AC;?, Vol. 43, No. 1, 1996, 235â&#x20AC;&#x201C;238. 3. Bartoszewicz A., Adamiak K., Model reference discrete-time variable structure control, â&#x20AC;?International Journal of Adaptive Control and Signal Processingâ&#x20AC;?, Vol. 32, No. 10, 2018, 1440â&#x20AC;&#x201C;1452, DOI: 10.1002/acs.2922. 4. Bartoszewicz A., LatosiĹ&#x201E;ski P., Generalization of Gaoâ&#x20AC;&#x2122;s reaching law for higher relative degree sliding variables, â&#x20AC;?IEEE Transactions on Automatic Controlâ&#x20AC;?, Vol. 63, No. 9, 2018, 3173â&#x20AC;&#x201C;3179, DOI: 10.1109/TAC.2018.2797193. 5. Bartoszewicz A., LatosiĹ&#x201E;ski P., Reaching law for DSMC systems with relative degree 2 switching variable, â&#x20AC;?International Journal of Controlâ&#x20AC;?, Vol. 90, No. 8, 2017, 1626â&#x20AC;&#x201C; 1638, DOI: 10.1080/00207179.2016.1216606. 6. Bartoszewicz A., LatosiĹ&#x201E;ski P., Discrete time sliding mode control with reduced switching â&#x20AC;&#x201C; a new reaching law approach, â&#x20AC;&#x153;International Journal of Robust and Nonlinear Controlâ&#x20AC;?, Vol. 26, No. 1, 2016, 47â&#x20AC;&#x201C;68, DOI: 10.1002/rnc.3291. 7. Bartoszewicz A., LatosiĹ&#x201E;ski P., Reaching law based discrete time sliding mode inventory management strategy, â&#x20AC;&#x153;IEEE Accessâ&#x20AC;?, Vol. 4, 2016, 10051â&#x20AC;&#x201C;10058, DOI: 10.1109/ACCESS.2016.2633618. 8. Bartoszewicz A., LeĹ&#x203A;niewski P., Reaching law-based sliding mode congestion control for communication networks, â&#x20AC;&#x153;IET Control Theory and Applicationsâ&#x20AC;?, Vol. 8, No. 17, 2014, 1914â&#x20AC;&#x201C;1920, DOI: 10.1049/iet-cta.2014.0503. 9. Chakrabarty S., Bandyopadhyay B., Moreno J.A., Fridman L., Discrete sliding mode control for systems with arbitrary relative degree output, 14th International Workshop on Variable Structure Systems, 2016, 160â&#x20AC;&#x201C;165, DOI: 10.1109/VSS.2016.7506909. 10. Chakrabarty S., Bandyopadhyay B., A generalized reaching law with different convergence rates, â&#x20AC;&#x153;Automaticaâ&#x20AC;?, Vol. 63 2016, 34â&#x20AC;&#x201C;37, DOI: 10.1016/j.automatica.2015.10.018.
23
$` ` "= $ '. " "'. 28. Mehta A., Bandyopadhyay B., The design and implementation of output feedback based frequency shaped sliding mode controller for the smart structure, Proc. IEEE International Symposium on Industrial Electronics, 2010, 353â&#x20AC;&#x201C;358, DOI: 10.1109/ISIE.2010.5637696. 29. Mija S., Susy T., Reaching law based sliding mode control for discrete MIMO systems, Proc. IEEE International Conference on Control, Automation, Robotics and Vision, 2010, 1291â&#x20AC;&#x201C;1296, DOI: 10.1109/ICARCV.2010.5707278. 30. MilosavljeviÄ&#x2021; Ä&#x152;., General conditions for the existence of a quasisliding mode on the switching hyperplane in discrete variable structure systems, Automation and Remote Control, Vol. 46, No. 3, 1985, 307â&#x20AC;&#x201C;314. 31. MilosavljeviÄ&#x2021; Ä&#x152;., PeruniÄ?iÄ&#x2021;-DraĹženoviÄ&#x2021; B., VeseliÄ&#x2021; B., MitiÄ&#x2021; D., Sampled data quasi-sliding mode control strategies, Proc. IEEE Internernational Conference on Industrial Technology, 2006, 2640â&#x20AC;&#x201C;2645, DOI: 10.1109/ICIT.2006.372711. 32. Niu Y., Ho D.W.C., Wang Z., Improved sliding mode control for discrete-time systems via reaching law, IET Control Theory and Applications, Vol. 4, No. 11, 2010, 2245â&#x20AC;&#x201C;2251, DOI: 10.1049/iet-cta.2009.0296. 33. Perez M., Jimenez E., Camacho E.F., Design of an explicit constrained predictive sliding mode controller, IET Control Theory and Applications, Vol. 4, No. 4, 2010, 552â&#x20AC;&#x201C;562, DOI: 10.1049/iet-cta.2009.0057. 34. Qu S., Xia X., Zhang J., Dynamics of discrete-time sliding-mode-control uncertain systems with a disturbance compensator, IEEE Transactions on Industrial Electronics, Vol. 61, No. 7, 2014, 3502â&#x20AC;&#x201C;3510, DOI: 10.1109/TIE.2013.2279369. 35. Ren Y., Liu Z., Liu X., Zhang Y., A chattering free discrete-time global sliding mode controller for optoelectronic tracking system, Mathematical Problems in Engineering, 2013, DOI: 10.1155/2013/951492. 36. Samantaray J., Chakrabarty S., Digital implementation of sliding mode controllers with DC-DC buck converter system, 15th International Workshop on Variable Structure Systems, 2018, 255â&#x20AC;&#x201C;260, 10.1109/vss.2018.8460257. 37. Utkin V.I., Variable structure systems with sliding modes, IEEE Transactions on Automatic Control, Vol. 22, No. 2, 1977, 212â&#x20AC;&#x201C;222, DOI: 10.1109/TAC.1977.1101446. 38. VeseliÄ&#x2021; B., PeruniÄ?iÄ&#x2021;-DraĹženoviÄ&#x2021; B., MilosavljeviÄ&#x2021; Ä&#x152;., Improved discrete-time sliding-mode position control using Euler velocity estimation, IEEE Transactions on Industrial Electronics, Vol. 57, No. 11, 2010, 3840â&#x20AC;&#x201C;3847, DOI: 10.1109/TIE.2010.2042416. 39. Viveknandan C., Prabhakar R. A redefined discrete quasi-sliding mode strategy, â&#x20AC;&#x153;International Journal of Recent Trends in Engineeringâ&#x20AC;?, Vol. 1, No. 3, 2009, 92â&#x20AC;&#x201C;96. 40. Xu Q., Du H.P., He B., Yan T.H., Li W.H., Sun S.S., A novel reaching law for sliding mode control of uncertain discrete-time systems, Mathematical Problems in Engineering, Vol. 2018, 2018, DOI: 10.1155/2018/6158492. 41. Yazici I., Yaylaci E.K., Maximum power point tracking for the permanent magnet synchronous generator-based WECS by using the discrete-time integral sliding mode controller with a chattering-free reaching law, IET Power Electronics, Vol. 10, No. 13, 2017, 1751-1758, DOI: 10.1049/iet-pel.2017.0232. 42. Zhao Y.X., Wu T., Ma Y., A double power reaching law of sliding mode control based on neural network, â&#x20AC;&#x153;Mathematical Problems in Engineeringâ&#x20AC;?, Vol., 2013, 2013, DOI: 10.1155/2013/408272.
11. Chakrabarty S., Bandyopadhyay B., A generalized reaching law for discrete time sliding mode control, â&#x20AC;&#x153;Automaticaâ&#x20AC;?, Vol. 52, 2015, 83â&#x20AC;&#x201C;86, DOI: 10.1016/j.automatica.2014.10.124. 12. Chakrabarty S., Bandyopadhyay B., Bartoszewicz A., Discreteâ&#x20AC;?time sliding mode control with outputs of relative degree more than one, Recent Developments in Sliding Mode Control Theory and Applications, InTech, 2017, DOI: 10.5772/intechopen.68931. 13. Chakrabarty S., Bartoszewicz A., Improved robustness and performance of discrete time sliding mode control systems, â&#x20AC;&#x153;ISA Transactionsâ&#x20AC;?, Vol. 65, 2016, 143â&#x20AC;&#x201C;149, DOI: 10.1016/j.isatra.2016.08.006. 14. Du H., Yang C., Li S., Non-smooth control-based reaching law for discrete-time sliding mode control, 14th International Workshop on Variable Structure Systems (VSS), 240â&#x20AC;&#x201C;245, 2016, DOI: 10.1109/VSS.2016.7506923. 15. Du H., Yu X., Chen M., Li S., Chattering-free discrete-time sliding mode control, â&#x20AC;&#x153;Automaticaâ&#x20AC;?, Vol. 68, 2016, 87â&#x20AC;&#x201C;91, DOI: 10.1016/j.automatica.2016.01.047. 16. Furuta K., Sliding mode control of a discrete system, â&#x20AC;&#x153;Systems & Control Lettersâ&#x20AC;?, Vol. 14, No. 2, 1990, 145â&#x20AC;&#x201C;152, DOI: 10.1016/0167-6911(90)90030-X. 17. Gao W., Hung J., Variable structure control of nonlinear systems: A new approach, IEEE Transactions on Industrial Electronics, Vol. 40, No. 1, 1993, 45â&#x20AC;&#x201C;55, DOI: 10.1109/41.184820. 18. Gao W., Wang Y., Homaifa A., Discrete-time variable structure control systems, IEEE Transactions on Industrial Electronics, Vol. 42, No. 2, 1995, 117â&#x20AC;&#x201C;122, DOI: 10.1109/41.370376. 19. Hou H., Yu X., Zhang Q., Huang J., Reaching law based sliding mode control for discrete time system with uncertainty, IEEE 27th International Symposium on Industrial Electronics, 2018, 1155â&#x20AC;&#x201C;1160, DOI: 10.1109/ISIE.2018.8433844. 20. Kurode S., Balajiwale S., Discrete sliding mode control of seeker scan loop using adaptive reaching law, IEEE International Conference on Control Applications, 2013, 704â&#x20AC;&#x201C;709, DOI: 10.1109/CCA.2013.6662832. 21. Kurode S., Bandyopadhyay B., Gandhi P., Discrete sliding mode control for a class of underactuated systems, Proc. 37th Annual Conference of the IEEE Industrial Electronics Society, 2011, 3936â&#x20AC;&#x201C;3941, DOI: 10.1109/IECON.2011.6119952. 22. LeĹ&#x203A;niewski P., Discrete time reaching law based sliding mode control: a survey, Proc. 22nd International Conference on System Theory, Control and Computing, 2018, 734â&#x20AC;&#x201C;739, DOI: 10.1109/ICSTCC.2018.8540782 23. Lin S., Zhang W., Controller designed via an adaptive reaching law for DSMC systems, IEEE Transactions on Circuits and Systems II: Express Briefs (Early Access), 2019, DOI: 10.1109/TCSII.2019.2907296. 24. Liu B., Ding Z., Zhao H., Jin D., Active power filter DC bus voltage piecewise reaching law variable structure control, Mathematical Problems in Engineering, 2014. 25. Ma H., Li Y., Multi-power reaching law based discrete-time sliding-mode control, IEEE Access, Vol. 7, 2019, 49822â&#x20AC;&#x201C;49829, DOI: 10.1109/ACCESS.2019.2904103. 26. Ma H., Li Y., Xiong Z., Discrete-time sliding-mode control with enhanced power reaching law, IEEE Transactions on Industrial Electronics, Vol. 66, No. 6, 2019, 3936â&#x20AC;&#x201C;3941, DOI: 10.1109/TIE.2018.2864712. 27. Ma H., Wu J., Xiong Z., A novel exponential reaching law of discrete-time sliding-mode control, IEEE Transactions on Industrial Electronics, Vol. 64, No. 5, 2017, 3840â&#x20AC;&#x201C;3850, DOI: 10.1109/TIE.2017.2652390.
24
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
L - E J & A " & L A M '= ! !& In the reaching law approach one first specifies the desired evolution of the sliding variable. Then, a sliding mode controller that ensures this evolution is derived. The main advantage of this method with respect to â&#x20AC;&#x153;classicalâ&#x20AC;? sliding mode control is better control of the system dynamics and state constraints during the reaching phase. In this paper, a review of recent results on discrete time reaching laws is presented. The differences and similarities between them are discussed. Keywords\ & & A & $ A
% ! - B % & ORCID: 0000-0003-4131-6928 8/ # & B $ B ? $ 6 - 8 0 ? N9& # *!'* ? & A K $ *!') G & & ? & / F A A 9 & ? A $ & A ?
25
NR 3/2015
26
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 27â&#x20AC;&#x201C;39, DOI: 10.14313/PAR_233/27
0 9 9K /9 A 9 A & Q 9 C " > C ! E > ) ) F 0 # $ 6 8 6 - $ R '>P'+$ !!?))> #
Streszczenie: JakoĹ&#x203A;Ä&#x2021; regulacji jest kluczowym zagadnieniem w nowoczesnym przemyĹ&#x203A;le. Zadaniem inĹźyniera jest nie tylko dobĂłr parametrĂłw regulacji, ale rĂłwnieĹź bieĹźÄ&#x2026;ce nadzorowanie jej jakoĹ&#x203A;ci tak, aby maksymalizowaÄ&#x2021; wydajnoĹ&#x203A;Ä&#x2021; procesu a takĹźe dbaÄ&#x2021; o stan aparatury i urzÄ&#x2026;dzeĹ&#x201E; wykonawczych. W zdecydowanej wiÄ&#x2122;kszoĹ&#x203A;ci rozwiÄ&#x2026;zaĹ&#x201E; praktycznych stosowany jest kwadratowy wskaĹşnik jakoĹ&#x203A;ci, zarĂłwno w procesie strojenia jak i oceny jakoĹ&#x203A;ci regulacji. W artykule zostaĹ&#x201A;y zaproponowane inne wskaĹşniki, cechujÄ&#x2026;ce siÄ&#x2122; wiÄ&#x2122;kszÄ&#x2026; odpornoĹ&#x203A;ciÄ&#x2026;. ZostaĹ&#x201A;y one zastosowane do dwĂłch zadaĹ&#x201E;: projektowania nastaw regulatora oraz oceny jakoĹ&#x203A;ci juĹź pracujÄ&#x2026;cej struktury sterowania. W pracy uwzglÄ&#x2122;dnione zostaĹ&#x201A;y rozwiÄ&#x2026;zania dla róşnych wersji podstawowego algorytmu regulacji w przemyĹ&#x203A;le procesowym, tj. PID. Róşne strategie regulacji PID zostaĹ&#x201A;y rĂłwnieĹź porĂłwnane z algorytmem sterowania predykcyjnego typu MPC. Analiza symulacyjna wykorzystuje przemysĹ&#x201A;owy benchmark ukĹ&#x201A;adu sterowania systemem chĹ&#x201A;odniczym wykorzystujÄ&#x2026;cym zjawisko kompresji pary. +$ ! \ $ 06E$ "0 $ & S $ LP
1. Wprowadzenie JakoĹ&#x203A;Ä&#x2021; pracy ukĹ&#x201A;adu sterowania ma istotny wpĹ&#x201A;yw na ogĂłlnÄ&#x2026; efektywnoĹ&#x203A;Ä&#x2021; procesu wytwarzania. Widoczne to jest szczegĂłlnie w obecnych czasach, gdy zagadnienia zwiÄ&#x2122;kszania wydajnoĹ&#x203A;ci, ochrony Ĺ&#x203A;rodowiska czy teĹź zarzÄ&#x2026;dzania energiÄ&#x2026; wymagajÄ&#x2026; bezpiecznej, niezakĹ&#x201A;Ăłconej i nad wyraz dokĹ&#x201A;adnej pracy jak najbliĹźej ograniczeĹ&#x201E; technologicznych â&#x20AC;&#x201C; koncept PrzemysĹ&#x201A; 4.0. Obiekty rzeczywiste podlegajÄ&#x2026; nieustannym zmianom i modyfikacjom, stajÄ&#x2026;c siÄ&#x2122; procesami silnie niestacjonarnymi. Tym samym jednorazowa inicjatywa dotyczÄ&#x2026;ca projektu i strojenia ukĹ&#x201A;adu sterowania jest skuteczna jedynie w krĂłtkim horyzoncie. ChcÄ&#x2026;c zapewniÄ&#x2021; poprawne dziaĹ&#x201A;anie w dĹ&#x201A;ugim okresie, jesteĹ&#x203A;my zmuszeni realizowaÄ&#x2021; ciÄ&#x2026;gĹ&#x201A;y elastyczny nadzĂłr i monitoring. Istnieje wiele opracowaĹ&#x201E; pokazujÄ&#x2026;cych korzyĹ&#x203A;ci finansowe uzyskane w wyniku poprawnej struktury i zestrojenia ukĹ&#x201A;adu sterowania [1â&#x20AC;&#x201C;3].
) ! \ 0 E E G $ & % & ) $ ! & ') !> *!'+ $ & & ! !+ *!'+
!
Niniejszy artykuĹ&#x201A; prezentuje kompleksowe wykorzystanie odpornych wskaĹşnikĂłw oceny jakoĹ&#x203A;ci regulacji zastosowanych zarĂłwno do projektowania jak i oceny sterowania nieliniowym procesem. W pracy zostanÄ&#x2026; uwzglÄ&#x2122;dnione rĂłwnolegĹ&#x201A;e oraz szeregowe postaci najbardziej popularnych struktur, tj.: PI, PD i PID, jak teĹź rozwiniÄ&#x2122;te rĂłwnolegĹ&#x201A;e struktury: PID z filtrem róşniczkowania, PID z róşniczkowaniem przefiltrowanego wyjĹ&#x203A;cia oraz PID z waĹźeniem wartoĹ&#x203A;ci zadanej [4]. KaĹźda ze struktur bÄ&#x2122;dzie strojona przy pomocy algorytmu optymalizacji globalnej na przykĹ&#x201A;adzie algorytmu genetycznego, w ktĂłrej funkcjÄ&#x2026; celu bÄ&#x2122;dzie jeden ze wskaĹşnikĂłw jakoĹ&#x203A;ci liczony z uchybu miÄ&#x2122;dzy wyjĹ&#x203A;ciami a wartoĹ&#x203A;ciami zadanymi. WybĂłr algorytmu byĹ&#x201A; wtĂłrny. Istotna jest moĹźliwoĹ&#x203A;Ä&#x2021; prowadzenia optymalizacji globalnej, jako Ĺźe nieliniowy model oznacza wielomodalny charakter wskaĹşnika jakoĹ&#x203A;ci, z wieloma ekstremami lokalnymi. EfektywnoĹ&#x203A;Ä&#x2021; optymalizacji lokalnej nie jest celem niniejszych badaĹ&#x201E; i tym samym wybĂłr algorytmu genetycznego zapewnia proste speĹ&#x201A;nienie wymagaĹ&#x201E; strojenia. UwzglÄ&#x2122;dnione zostanÄ&#x2026; wskaĹşniki: bĹ&#x201A;Ä&#x2026;d Ĺ&#x203A;redniokwadratowy MSE (ang. Mean Square Error), Ĺ&#x203A;redni moduĹ&#x201A; bĹ&#x201A;Ä&#x2122;du IAE (ang. Integral Absolute Error), mediana bĹ&#x201A;Ä&#x2122;du oraz odpornoĹ&#x203A;ciowy wspĂłĹ&#x201A;czynnik skali w postaci M-estymatora z logistycznÄ&#x2026; funkcjÄ&#x2026; Ď&#x2C6;. Celem tego etapu pracy jest porĂłwnanie wpĹ&#x201A;ywu wskaĹşnika oceny na jakoĹ&#x203A;Ä&#x2021; otrzymanych nastaw róşnych struktur regulacji klasy PID. Ciekawa byĹ&#x201A;aby obserwacja, czy odpornoĹ&#x203A;Ä&#x2021; przyjÄ&#x2122;tego wskaĹşnika oceny ma wpĹ&#x201A;yw na otrzymanÄ&#x2026; jakoĹ&#x203A;Ä&#x2021; sterowania. Zadanie strojenia regulatorĂłw, w tym regulatora typu PID istnieje w automatyce praktycznie od jej zarania. Pierwsze usys-
27
L L% "'. =L " $ ' $ ' ' L " "'. $g " 2. problemy i awarie osprzÄ&#x2122;tu automatyki, 3. wpĹ&#x201A;yw zakĹ&#x201A;ĂłceĹ&#x201E; procesowych poĹ&#x201A;Ä&#x2026;czony z rzadkim odsprzÄ&#x2122;ganiem, 4. niedopasowany projekt systemu automatyki, czÄ&#x2122;sto wynikajÄ&#x2026;cy z kopiowania szablonĂłw i nastaw z wczeĹ&#x203A;niejszych rozwiÄ&#x2026;zaĹ&#x201E;. PodsumowujÄ&#x2026;c, nadzĂłr realizowany przez czĹ&#x201A;owieka jest niewystarczajÄ&#x2026;cy. Tym samym istnieje rosnÄ&#x2026;ce zapotrzebowanie na metody i rozwiÄ&#x2026;zania wspierajÄ&#x2026;ce ten proces. MuszÄ&#x2026; one speĹ&#x201A;niÄ&#x2021; wiele wymagaĹ&#x201E;, aby uzyskaÄ&#x2021; akceptacjÄ&#x2122; przemysĹ&#x201A;u. W szczegĂłlnoĹ&#x203A;ci muszÄ&#x2026; pracowaÄ&#x2021; autonomicznie wykorzystujÄ&#x2026;c dane z codziennej pracy bez koniecznoĹ&#x203A;ci realizacji jakichkolwiek specjalizowanych testĂłw oraz muszÄ&#x2026; byÄ&#x2021; sformuĹ&#x201A;owane w oparciu o jasno zdefiniowane i wiarygodne miary (wskaĹşniki oceny). Analiza statystyczna pokazuje [17], iĹź rzeczywiste dane przemysĹ&#x201A;owe bardzo czÄ&#x2122;sto cechujÄ&#x2026; siÄ&#x2122; charakterem gruboogonowym, co uzasadniĹ&#x201A;o postawienie hipotezy, Ĺźe parametry rozkĹ&#x201A;adĂłw gruboogonowych, w szczegĂłlnoĹ&#x203A;ci a-stabilne, mogÄ&#x2026; stanowiÄ&#x2021; rozsÄ&#x2026;dnÄ&#x2026; alternatywÄ&#x2122; dla najpopularniej stosowanego odchylenia standardowego rozkĹ&#x201A;adu normalnego. Tym samym w pracy zweryfikowano moĹźliwoĹ&#x203A;Ä&#x2021; oceny ukĹ&#x201A;adu sterowania za pomocÄ&#x2026; róşnych niestandardowych wskaĹşnikĂłw oceny sterowania. Z jednej strony zaproponowane zostaĹ&#x201A;y do porĂłwnania róşne moĹźliwe do zrealizowania w sposĂłb przemysĹ&#x201A;owy struktury sterowania, poczÄ&#x2026;wszy od jednopÄ&#x2122;tlowej regulacji PID, przez uwzglÄ&#x2122;dnienie odsprzÄ&#x2122;gania zakĹ&#x201A;ĂłceĹ&#x201E;, aĹź po predykcyjnÄ&#x2026; regulacjÄ&#x2122; wielowymiarowÄ&#x2026; klasy MPC (ang. Model Predictive Control). OpierajÄ&#x2026;c siÄ&#x2122; na tak przygotowanym materiale odniesienia porĂłwnane zostaĹ&#x201A;y podstawowe wskaĹşniki oceny jakoĹ&#x203A;ci sterowania, czyli czas sterowania, przeregulowanie, bĹ&#x201A;Ä&#x2026;d Ĺ&#x203A;redniokwadratowy (MSE) oraz moduĹ&#x201A; bĹ&#x201A;Ä&#x2122;du (IAE) dla uchybu regulacji wraz ze wskaĹşnikiem fraktalnym w postaci wykĹ&#x201A;adnika Hursta. W celu poprawy jakoĹ&#x203A;ci porĂłwnania zostaĹ&#x201A;a zaprezentowana wielokryterialna metoda prezentacji wynikĂłw w postaci wykresu radarowego.
tematyzowane prace nastÄ&#x2026;piĹ&#x201A;y po okresie empirycznych metod prĂłb i bĹ&#x201A;Ä&#x2122;dĂłw. RozwaĹźania teoretyczne dotyczÄ&#x2026;ce charakterystyk czÄ&#x2122;stotliwoĹ&#x203A;ciowych Bodego (1930) czy teĹź w oparciu o wykresy Nyquista zaowocowaĹ&#x201A;y podejĹ&#x203A;ciem Zieglera-Nicholsa [5] wykorzystujÄ&#x2026;cym cykl graniczny (1942). Cohen i Coon (1953) zaproponowali prostÄ&#x2026; metodÄ&#x2122; wykorzystujÄ&#x2026;cÄ&#x2026; identyfikacjÄ&#x2122; jednoinercyjnego modelu z opóźnieniem i wyprowadzenie sugestii nastaw regulatora PID dla takiego obiektu [6]. Owe metody w zasadzie nie wymagaĹ&#x201A;y stosowania komputera. Inne, obecnie uznawana za kanoniczne, podejĹ&#x203A;cia oraz metodologie strojenia moĹźna odnaleĹşÄ&#x2021; w pozycjach [7â&#x20AC;&#x201C;9] czy teĹź bogaty wybĂłr zebrany w [10]. PodejĹ&#x203A;cie optymalizacyjne rĂłwnieĹź byĹ&#x201A;o rozwaĹźane w literaturze [11]. DobĂłr nastaw regulatora dokonywany jest w oparciu o okreĹ&#x203A;lony wskaĹşnik jakoĹ&#x203A;ci. NajczÄ&#x2122;Ĺ&#x203A;ciej moĹźna znaleĹşÄ&#x2021; przykĹ&#x201A;ady stosowania kwadratowego wskaĹşnika jakoĹ&#x203A;ci MSE lub caĹ&#x201A;ki z wartoĹ&#x203A;ci bezwzglÄ&#x2122;dnej IAE. Drugi z wymienionych wskaĹşnikĂłw czÄ&#x2122;sto wystÄ&#x2122;puje w wersji rozszerzonej o element czasu w postaci ITAE (ang. Integral of the Time-weighted Absolute Error). MoĹźna znaleĹşÄ&#x2021; wiele pozycji literatury, w ktĂłrych rozwaĹźane sÄ&#x2026; takie podejĹ&#x203A;cia. OgĂłlnie wskaĹşnik kwadratowy karze duĹźe bĹ&#x201A;Ä&#x2122;dy (kwadrat), podczas gdy ITAE karze bĹ&#x201A;Ä&#x2122;dy, ktĂłre trwajÄ&#x2026; przez dĹ&#x201A;uĹźszy czas. Tym samym jest on najczÄ&#x2122;Ĺ&#x203A;ciej stosowany. OgĂłlnie ISE generuje najbardziej agresywne nastawy, podczas gdy IAE znajduje rozwiÄ&#x2026;zania miÄ&#x2122;dzy tymi powolnymi i bez przeregulowania, znalezionymi przez ITAE i MSE. Jednak wskaĹşniki te majÄ&#x2026; jednÄ&#x2026; powaĹźnÄ&#x2026; wadÄ&#x2122;. Analiza regresyjna dobitnie pokazuje [12], Ĺźe estymator minimalno-kwadratowy, jak i IAE, nie sÄ&#x2026; odporne na wystÄ&#x2122;powanie wartoĹ&#x203A;ci odstajÄ&#x2026;cych (ang. outliers). Autorzy w swojej pracy proponujÄ&#x2026; stosowanie innych estymatorĂłw, jak np. mediany, ktĂłra jest odporna. RozwaĹźania nad odpornoĹ&#x203A;ciÄ&#x2026; estymacji doprowadziĹ&#x201A;y do powstania caĹ&#x201A;ej dziedziny statystyk odpornoĹ&#x203A;ciowych (ang. robust statistics) [13]. JednÄ&#x2026; z najbardziej popularnych jest M-estymator wykorzystujÄ&#x2026;cy logistycznÄ&#x2026; Ď&#x2C6; funkcjÄ&#x2122;. W niniejszym opracowaniu wykorzystywana jest implementacja zaproponowana w [14] â&#x20AC;&#x201C; funkcja mscalelogist. Niniejsze opracowanie skupi siÄ&#x2122; na porĂłwnaniu dwĂłch klasycznych wskaĹşnikĂłw caĹ&#x201A;kowych, tj. ISE oraz IAE oraz dwĂłch odpornych, tj. mediany bĹ&#x201A;Ä&#x2122;du oraz jego odpornej M-estymaty. Wybrane cztery wskaĹşniki bÄ&#x2122;dÄ&#x2026; stosowane do dostrojenia róşnych struktur typu PID dla wielowymiarowego symulowanego nieliniowego procesu. Nieustanne utrzymywanie wysokiej jakoĹ&#x203A;ci sterowania wymaga wypracowania i stosowania metodologii oceny pracy ukĹ&#x201A;adu regulacji wraz z miarami umoĹźliwiajÄ&#x2026;cymi iloĹ&#x203A;ciowe porĂłwnanie. W praktyce jest to najczÄ&#x2122;Ĺ&#x203A;ciej codzienna praca inĹźynierĂłw automatykĂłw odpowiedzialnych za dziaĹ&#x201A;anie instalacji. Niestety w przypadku skomplikowanych obiektĂłw, kiedy koniecznym staje siÄ&#x2122; nadzĂłr nad setkami czy teĹź tysiÄ&#x2026;cami pÄ&#x2122;tli, pojawiajÄ&#x2026; siÄ&#x2122; wymagania zatrudnienia odpowiedniej liczby doĹ&#x203A;wiadczonych pracownikĂłw. Ograniczenia ujawniajÄ&#x2026; siÄ&#x2122; w przypadku ograniczonego dostÄ&#x2122;pu do wysoko wyksztaĹ&#x201A;conych inĹźynierĂłw. Efekt ten jest widoczny juĹź na poziomie automatyki bazowej wykorzystujÄ&#x2026;cej jednopÄ&#x2122;tlowe czy teĹź kaskadowe struktury PID. W przypadku rozwiÄ&#x2026;zaĹ&#x201E; automatyki wykorzystujÄ&#x2026;cych ukĹ&#x201A;ady sterowania zaawansowanego lub optymalizacji [15] wystÄ&#x2122;puje istotne ograniczenie stosowalnoĹ&#x203A;ci. Literatura przedmiotu pokazuje, Ĺźe znaczÄ&#x2026;ca czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; przemysĹ&#x201A;owych pÄ&#x2122;tli sterowania pracuje Ĺşle. 60% bazowych pÄ&#x2122;tli SISO jest bĹ&#x201A;Ä&#x2122;dnie zestrojona, a nawet wiÄ&#x2122;ksza ich czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; (85%) ma nieadekwatnÄ&#x2026; strukturÄ&#x2122; [16]. MoĹźna wymieniÄ&#x2021; wiele przyczyn tego zjawiska: 1. bĹ&#x201A;Ä&#x2122;dne zestrojenie pÄ&#x2122;tli sterowania wynikajÄ&#x2026;ce z niestacjonarnoĹ&#x203A;ci, niewystarczajÄ&#x2026;cego nadzoru, konserwatywnego zestrojenia na najgorszy przypadek, czÄ&#x2122;stych zmian punktĂłw pracy instalacji czy teĹź zmiennoĹ&#x203A;ci urzÄ&#x2026;dzeĹ&#x201E; wykonawczych i pomiarowych,
28
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
H, PoniĹźej zostanie opisany nieliniowy proces systemu chĹ&#x201A;odniczego, ktĂłrego model stanowi podstawÄ&#x2122; analiz symulacyjnych oraz wykorzystywane w pracy algorytmy i proponowane algorytmy obliczeniowe, tzn. struktury sterowania PID oraz predykcyjne MPC, metody ich strojenia oraz wskaĹşniki stosowane do ich oceny.
H,L, 5 ! ChĹ&#x201A;odzenie z wykorzystaniem kompresji pary jest obecnie wiodÄ&#x2026;cÄ&#x2026; technologiÄ&#x2026; w chĹ&#x201A;odnictwie, zarĂłwno w klimatyzacji, ochĹ&#x201A;adzaniu bÄ&#x2026;dĹş zamraĹźaniu [51]. Utrzymywanie niskiej, zadanej temperatury jest kluczowe w wielu aspektach, takich jak komfort ludzi, przechowywanie i transport ĹźywnoĹ&#x203A;ci oraz w procesach przemysĹ&#x201A;owych. StÄ&#x2026;d pojawia siÄ&#x2122; potrzeba dogĹ&#x201A;Ä&#x2122;bnego badania i analizy struktur regulacji temperatury oraz ich rozwijania. Schemat cyklu chĹ&#x201A;odniczego zostaĹ&#x201A; przedstawiony na rys. 1. Jego gĹ&#x201A;Ăłwne elementy to zawĂłr, kompresor, parownik oraz skraplacz. Celem cyklu jest usuwanie ciepĹ&#x201A;a z przepĹ&#x201A;ywu wtĂłrnego (ang. secondary flux) w parowniku i odrzucanie ciepĹ&#x201A;a z kondensatora do przepĹ&#x201A;ywu wtĂłrnego. ChĹ&#x201A;odziwo o niskiej temperaturze i niskim ciĹ&#x203A;nieniu wpĹ&#x201A;ywa do parownika i paruje, usuwajÄ&#x2026;c ciepĹ&#x201A;o z przepĹ&#x201A;ywu wtĂłrnego parownika. NastÄ&#x2122;pnie kompresor podnosi ciĹ&#x203A;nienie i temperaturÄ&#x2122; chĹ&#x201A;odziwa, ktĂłre wpĹ&#x201A;ywa do skraplacza. Tam poczÄ&#x2026;tkowo temperatura spada, nastÄ&#x2122;puje kondensacja pary i ciepĹ&#x201A;o jest przekazane do przepĹ&#x201A;ywu wtĂłrnego. ZawĂłr wyrĂłwnuje róşnice ciĹ&#x203A;nieĹ&#x201E; miÄ&#x2122;dzy parownikiem a skraplaczem. A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
modelu. Przebiegi szumĂłw zostaĹ&#x201A;y wygenerowane raz, a nastÄ&#x2122;pnie byĹ&#x201A;y wczytywane z pliku. Takie podejĹ&#x203A;cie pozwoliĹ&#x201A;o na zachowanie powtarzalnoĹ&#x203A;ci eksperymentĂłw. W celu odzwierciedlenia rzeczywistych, trudnych niegaussowskich warunkĂłw sterowania wprowadzone zostaĹ&#x201A;y szumy o charakterze gruboogonowym generowane jako szum a-stabilny. CechujÄ&#x2026; siÄ&#x2122; one moĹźliwoĹ&#x203A;ciÄ&#x2026; uwzglÄ&#x2122;dnienia wartoĹ&#x203A;ci odstajÄ&#x2026;cych (ang. outliers), ktĂłre bardzo czÄ&#x2122;sto wystÄ&#x2122;pujÄ&#x2026; w systemach przemysĹ&#x201A;owych. Wykorzystano szum niegaussowski, gruboogonowy o wspĂłĹ&#x201A;czynniku skali wynoszÄ&#x2026;cym a = 1,9. Wygenerowane zostaĹ&#x201A;y dwa ciÄ&#x2026;gi po 1200 prĂłbek dla obu wyjĹ&#x203A;Ä&#x2021; obiektu. Zastosowanie takiego rozkĹ&#x201A;adu umoĹźliwia obserwacjÄ&#x2122; zachowania systemu na pojedyncze, duĹźe odchyĹ&#x201A;ki podczas pomiaru wyjĹ&#x203A;Ä&#x2021;, co odwzorowuje obserwacje odstajÄ&#x2026;ce. Rys. 1. Schemat cyklu chĹ&#x201A;odniczego wykorzystujÄ&#x2026;cego zjawisko kompresji pary [51] Fig. 1. Schematic diagram of refrigeration system based on vapour compression
H,Y, + W pracy wykorzystane zostaĹ&#x201A;y dwie klasy algorytmĂłw regulacji: struktury typu PID oraz algorytm predykcyjny klasy MPC. 2.3.1. Struktury PID Na jczÄ&#x2122;Ĺ&#x203A;ciej sp otykanym w zastosowaniach przemysĹ&#x201A;owych algorytmem regulacji jest ukĹ&#x201A;ad regulatora proporcjonalno-caĹ&#x201A;kujÄ&#x2026;co-róşniczkujÄ&#x2026;cego (PID). Algorytm ten ma dĹ&#x201A;ugÄ&#x2026; historiÄ&#x2122;, jest bardzo popularny oraz powszechnie znany. Róşne jego wersje wystÄ&#x2122;pujÄ&#x2026; w prawie kaĹźdym regulatorze przemysĹ&#x201A;owym. Jako podstawowy ukĹ&#x201A;ad w pojedynczej pÄ&#x2122;tli sprzÄ&#x2122;Ĺźenia zwrotnego, regulator PID cechuje siÄ&#x2122; duĹźÄ&#x2026; odpornoĹ&#x203A;ciÄ&#x2026; oraz uniwersalnoĹ&#x203A;ciÄ&#x2026; zastosowaĹ&#x201E;. W trakcie opisywanych badaĹ&#x201E; analizowane byĹ&#x201A;y nastÄ&#x2122;pujÄ&#x2026;ce jednopÄ&#x2122;tlowe struktury regulacji z rodziny PID:
Rys. 2. Model systemu chĹ&#x201A;odniczego w Ĺ&#x203A;rodowisku MATLAB/Simulink Fig. 2. MATLAB model of the refrigeration system
Do badaĹ&#x201E; wykorzystano zmodyfikowany model systemu chĹ&#x201A;odniczego (rys. 2) przygotowany w Ĺ&#x203A;rodowisku MATLAB/Simulink przez naukowcĂłw Uniwersytetu w Sewilli na potrzeby konferencji IFAC PID 2018, ktĂłry jest ogĂłlnie dostÄ&#x2122;pny [50]. Jego dokĹ&#x201A;adny opis jest umieszczony w [51]. GĹ&#x201A;Ăłwnym celem regulacji jest zapewnienie odpowiedniej mocy chĹ&#x201A;odzÄ&#x2026;cej Q e [51]. Aby generowanie tej mocy byĹ&#x201A;o jak najbardziej wydajne, naleĹźy utrzymywaÄ&#x2021; wĹ&#x201A;aĹ&#x203A;ciwy stopieĹ&#x201E; przegrzania cieczy (ang. degree of superheating) TSH, czyli róşnicÄ&#x2122; miÄ&#x2122;dzy temperaturÄ&#x2026; cieczy przegrzanej (o temperaturze wyĹźszej niĹź temperatura wrzenia przy danym ciĹ&#x203A;nieniu) a temperaturÄ&#x2026; cieczy nasyconej (pozostajÄ&#x2026;cej w rĂłwnowadze termodynamicznej z innÄ&#x2026; fazÄ&#x2026; tej samej substancji) [52]. Zapotrzebowanie na chĹ&#x201A;odzenie moĹźe byÄ&#x2021; rĂłwnieĹź wyraĹźone za pomocÄ&#x2026; temperatury wyjĹ&#x203A;ciowej przepĹ&#x201A;ywu wtĂłrnego w parowniku Te,sec,out. Otrzymujemy wtedy ukĹ&#x201A;ad z dwoma zmiennymi procesowymi TSH i Te,sec,out oraz dwoma zmiennymi sterujÄ&#x2026;cymi pochodzÄ&#x2026;cymi od urzÄ&#x2026;dzeĹ&#x201E; wykonawczych, czyli prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; obrotowa pracy kompresora N i otwarcie zaworu Av. Temperatury, przepĹ&#x201A;ywy masowe oraz ciĹ&#x203A;nienia przepĹ&#x201A;ywĂłw wtĂłrnych na wejĹ&#x203A;ciach parownika i skraplacza nie bÄ&#x2122;dÄ&#x2026; regulowane, sÄ&#x2026; one potraktowane w modelu jako zakĹ&#x201A;Ăłcenia, podobnie jak temperatura otoczenia kompresora.
H,H, +
W celu przetestowania odpornoĹ&#x203A;ci regulatorĂłw na wystÄ&#x2122;powanie bĹ&#x201A;Ä&#x2122;dĂłw pomiarowych zostaĹ&#x201A;y one dodane do istniejÄ&#x2026;cego
â&#x2C6;&#x2019; PI szeregowy â&#x17D;&#x203A; T â&#x17D;&#x17E; GPI,series = P â&#x17D;&#x153; 1 + I s â&#x17D;&#x; , z â&#x2C6;&#x2019;1â&#x17D; â&#x17D;?
(1)
â&#x17D;&#x203A; z â&#x2C6;&#x2019;1â&#x17D;&#x17E; GPD,series = P â&#x17D;&#x153; 1 + D â&#x17D;&#x;, Tsz â&#x17D; â&#x17D;?
(2)
â&#x2C6;&#x2019; PD szeregowy
â&#x2C6;&#x2019; PID szeregowy â&#x17D;&#x203A; T â&#x17D;&#x17E;â&#x17D;&#x203A; z â&#x2C6;&#x2019;1â&#x17D;&#x17E; GPID,series = P â&#x17D;&#x153; 1 + I s â&#x17D;&#x; â&#x17D;&#x153; 1 + D â&#x17D;&#x;, z â&#x2C6;&#x2019; 1 Tsz â&#x17D; â&#x17D;? â&#x17D; â&#x17D;?
(3)
â&#x2C6;&#x2019; PI rĂłwnolegĹ&#x201A;y GPI,parallel = P + I
Ts , z â&#x2C6;&#x2019;1
(4)
GPD,parallel = P + D
z â&#x2C6;&#x2019;1 , Tsz
(5)
Ts z â&#x2C6;&#x2019;1 +D , z â&#x2C6;&#x2019;1 Tsz
(6)
â&#x2C6;&#x2019; PD rĂłwnolegĹ&#x201A;y
â&#x2C6;&#x2019; PID rĂłwnolegĹ&#x201A;y GPID,parallel = P + I
29
L L% "'. =L " $ ' $ ' ' L " "'. $g " wszystkie pary zostaĹ&#x201A;y nastrojone przy uĹźyciu jednego z czterech wskaĹşnikĂłw jakoĹ&#x203A;ci: â&#x2C6;&#x2019; MSE, â&#x2C6;&#x2019; IAE, â&#x2C6;&#x2019; mediana, â&#x2C6;&#x2019; mscalelogist (odporny wspĂłĹ&#x201A;czynnik skali rozkĹ&#x201A;adu prawdopodobieĹ&#x201E;stwa). Ze wzglÄ&#x2122;du na zĹ&#x201A;oĹźonoĹ&#x203A;Ä&#x2021; modelu czas jednej symulacji waha siÄ&#x2122; od okoĹ&#x201A;o 120 sekund dla dobrze dobranego regulatora, do godziny dla ukĹ&#x201A;adĂłw niestabilnych. PodjÄ&#x2122;te zostaĹ&#x201A;y prĂłby strojenia regulatora bezpoĹ&#x203A;rednio na obiekcie metodÄ&#x2026; gradientowÄ&#x2026;. Przy takim podejĹ&#x203A;ciu ujawniajÄ&#x2026; siÄ&#x2122; dwa kolejne problemy. Po pierwsze ze wzglÄ&#x2122;du na nieliniowoĹ&#x203A;Ä&#x2021; obiektu oraz wielomodalnoĹ&#x203A;Ä&#x2021; przestrzeni przeszukiwaĹ&#x201E; rezultat mocno zaleĹźy od wybranego punktu startowego. JeĹźeli juĹź na starcie regulator wpadaĹ&#x201A; w oscylacje, oznaczaĹ&#x201A;o to, Ĺźe metoda nie jest w stanie znaleĹşÄ&#x2021; parametrĂłw stabilnego regulatora. Drugim problemem, jaki siÄ&#x2122; pojawia, jest czas trwania optymalizacji. Dla dwĂłch regulatorĂłw PI, czyli jedynie czterech parametrĂłw, procedura trwaĹ&#x201A;a kilkanaĹ&#x203A;cie godzin. Z tych wzglÄ&#x2122;dĂłw ta metoda zostaĹ&#x201A;a porzucona. W zwiÄ&#x2026;zku z tym wykorzystano model liniowy obiektu. W tym celu zastosowano model z literatury, ktĂłry jest opisany za pomocÄ&#x2026; czterech transmitancji [20]. Transmitancje modelu liniowego przedstawia wzĂłr (10). Nie uwzglÄ&#x2122;dnia on dziaĹ&#x201A;ania zakĹ&#x201A;ĂłceĹ&#x201E;, jednak umoĹźliwia szybkie odnajdywanie parametrĂłw. Czas wykonania symulacji zostaĹ&#x201A; skrĂłcony do wartoĹ&#x203A;ci rzÄ&#x2122;du uĹ&#x201A;amkĂłw sekundy. UmoĹźliwiĹ&#x201A;o to zastosowanie metod optymalizacji globalnej. DziÄ&#x2122;ki takiemu podejĹ&#x203A;ciu moĹźliwe jest sprawdzanie nawet kilkudziesiÄ&#x2122;ciu tysiÄ&#x2122;cy punktĂłw w znacznie krĂłtszym czasie
â&#x2C6;&#x2019; PID rĂłwnolegĹ&#x201A;y z filtrem róşniczkowania GPID,filter,parallel = P + I
Ts +D z â&#x2C6;&#x2019;1
N 1 + N â&#x2039;&#x2026; Ts
1 z â&#x2C6;&#x2019;1
(7)
,
â&#x2C6;&#x2019; PID rĂłwnolegĹ&#x201A;y z róşniczkowaniem wyjĹ&#x203A;cia
â&#x17D;&#x203A; T â&#x17D;&#x17E; N GPID,weighting,parallel = â&#x17D;&#x153; P + I s â&#x17D;&#x; r â&#x2C6;&#x2019; y â&#x2C6;&#x2019; D y, 1 1 z â&#x2C6;&#x2019; â&#x17D;? â&#x17D; (8) 1 + N â&#x2039;&#x2026; Ts z â&#x2C6;&#x2019;1 â&#x2C6;&#x2019; PID rĂłwnolegĹ&#x201A;y z waĹźeniem wartoĹ&#x203A;ci zadanej
(
)
(9)
2.3.2. Algorytm predykcyjny MPC Regulator predykcyjny MPC (Model Predictive Control) dziaĹ&#x201A;a w ukĹ&#x201A;adzie regulacji z modelem. Swoje dziaĹ&#x201A;anie opiera na wyznaczaniu w kaĹźdej iteracji algorytmu przyszĹ&#x201A;ych wartoĹ&#x203A;ci sygnaĹ&#x201A;u sterujÄ&#x2026;cego oraz wektora przyrostĂłw tego sygnaĹ&#x201A;u [18]. W tym celu wymagana jest znajomoĹ&#x203A;Ä&#x2021; modelu dynamicznego procesu (w postaci odpowiedzi skokowej, rĂłwnania róşnicowego lub rĂłwnaĹ&#x201E; stanu), pomiarĂłw sygnaĹ&#x201A;Ăłw wejĹ&#x203A;ciowych oraz wyjĹ&#x203A;ciowych zarĂłwno z aktualnej chwili czasu, jak i z przeszĹ&#x201A;oĹ&#x203A;ci oraz znajomoĹ&#x203A;Ä&#x2021; trajektorii zadanej. NajczÄ&#x2122;Ĺ&#x203A;ciej spotykanymi algorytmami regulacji predykcyjnej sÄ&#x2026;: â&#x2C6;&#x2019; algorytm DMC (Dynamic Matrix Control), wykorzystujÄ&#x2026;cy model obiektu w postaci odpowiedzi skokowych, â&#x2C6;&#x2019; algorytm GPC (General Predictive Control), dla obiektĂłw opisanych za pomocÄ&#x2026; rĂłwnaĹ&#x201E; róşnicowych, â&#x2C6;&#x2019; algorytm MPCS (Model Predictive Control with State equations), dla modeli obiektu w postaci rĂłwnaĹ&#x201E; stanu. Sterowanie predykcyjne znalazĹ&#x201A;o w dzisiejszych czasach zastosowanie m.in. w przemyĹ&#x203A;le rafineryjnym oraz procesach destylacji. Jego gĹ&#x201A;Ăłwnymi zaletami sÄ&#x2026;: â&#x2C6;&#x2019; moĹźliwoĹ&#x203A;Ä&#x2021; uwzglÄ&#x2122;dnienia ograniczeĹ&#x201E; sygnaĹ&#x201A;Ăłw, â&#x2C6;&#x2019; moĹźliwoĹ&#x203A;Ä&#x2021; uwzglÄ&#x2122;dnienia wewnÄ&#x2122;trznych interakcji miÄ&#x2122;dzy wyjĹ&#x203A;ciami i wejĹ&#x203A;ciami procesu czy teĹź zakĹ&#x201A;Ăłceniami wpĹ&#x201A;ywajÄ&#x2026;cymi na proces, â&#x2C6;&#x2019; moĹźliwoĹ&#x203A;Ä&#x2021; zaprojektowania funkcji celu indywidualnie, specjalnie na potrzeby regulowanego procesu. W celu zaprojektowania regulatora predykcyjnego posĹ&#x201A;uĹźono siÄ&#x2122; narzÄ&#x2122;dziem oprogramowania MATLAB â&#x20AC;&#x201C; Model Predictive Control Toolbox. Jest to bardzo wygodne oraz intuicyjne w obsĹ&#x201A;udze narzÄ&#x2122;dzie do projektowania ukĹ&#x201A;adĂłw sterowania wykorzystujÄ&#x2026;cych regulatory predykcyjne w Ĺ&#x203A;rodowisko MATLAB/Simulink. Zawiera aplikacjÄ&#x2122; MPC Designer umoĹźliwiajÄ&#x2026;cÄ&#x2026; uzyskanie modelu obiektu w postaci rĂłwnaĹ&#x201E; stanu, projektowanie, testowanie oraz porĂłwnywanie dziaĹ&#x201A;ania regulatorĂłw predykcyjnych. Do obliczania wartoĹ&#x203A;ci sygnaĹ&#x201A;Ăłw sterujÄ&#x2026;cych wykorzystuje on algorytm MPCS, a funkcja celu zdefiniowana jest jako suma czterech skĹ&#x201A;adnikĂłw: Ĺ&#x203A;ledzenia wartoĹ&#x203A;ci zadanej, Ĺ&#x203A;ledzenia sygnaĹ&#x201A;Ăłw sterujÄ&#x2026;cych, kary za przyrosty sygnaĹ&#x201A;Ăłw sterujÄ&#x2026;cych oraz kary za przekroczenie ograniczeĹ&#x201E; sygnaĹ&#x201A;Ăłw wejĹ&#x203A;ciowych oraz wyjĹ&#x203A;ciowych [19].
â&#x17D;Ą â&#x2C6;&#x2019;0,2219s â&#x2C6;&#x2019; 0,004757 â&#x17D;˘ 2 â&#x17D;˘ s + 5,834s + 0,2373 G s =â&#x17D;˘ â&#x2C6;&#x2019;2, 425 â&#x17D;˘ â&#x17D;˘â&#x17D;Ł s 2 + 2,099s + 6,634
()
Problemem zwiÄ&#x2026;zanym z modelem liniowym byĹ&#x201A;o to, Ĺźe Ĺşle odwzorowywaĹ&#x201A; on zachowanie dla wartoĹ&#x203A;ci sygnaĹ&#x201A;Ăłw oddalonych od punktu pracy, w ktĂłrym zostaĹ&#x201A; stworzony. Dlatego na potrzeby wyznaczania parametrĂłw, oryginalny przebieg wartoĹ&#x203A;ci zadanych wyznaczajÄ&#x2026;cy cykl pracy obiegu zostaĹ&#x201A; przeskalowany w taki sposĂłb, aby skoki byĹ&#x201A;y niewielkie i wartoĹ&#x203A;ci zadane oscylowaĹ&#x201A;y wokĂłĹ&#x201A; punktu pracy. Podczas strojenia nastaw regulatora w warunkach nieliniowych zastosowana zostaĹ&#x201A;a autorska procedura: 1. Optymalizacja na modeli liniowym przy pomocy algorytmu genetycznego. 2. Test na oryginalnym modelu. 3. JeĹźeli ukĹ&#x201A;ad jest stabilny, wykonanie testu na modelu z bĹ&#x201A;Ä&#x2122;dami pomiarowymi. Przy strojeniu struktur bÄ&#x2122;dÄ&#x2026;cych rozwiniÄ&#x2122;ciem rĂłwnolegĹ&#x201A;ego regulatora PID, wzmocnienia czĹ&#x201A;onĂłw P, I oraz D zostaĹ&#x201A;y wybrane z wyznaczonych nastaw dla podstawowej wersji PID, a dostrajane byĹ&#x201A;y jedynie dodatkowe parametry (np. b oraz c dla struktury z waĹźeniem wartoĹ&#x203A;ci zadanej).
H,b, ' ! ! Istnieje wiele wskaĹşnikĂłw sĹ&#x201A;uĹźÄ&#x2026;cych do oceny jakoĹ&#x203A;ci regulacji. Najpopularniejszymi z nich sÄ&#x2026; przeregulowanie k, ktĂłre informuje o oscylacjach procesu oraz czas regulacji Tr dostarczajÄ&#x2026;cy informacji o szybkoĹ&#x203A;ci stabilizacji sygnaĹ&#x201A;u wokĂłĹ&#x201A; wartoĹ&#x203A;ci zadanej. Dodatkowo, bardzo czÄ&#x2122;sto uĹźywa siÄ&#x2122; wskaĹşnikĂłw caĹ&#x201A;kowych, takich jak IAE (Integral Absolute Error), MSE (Mean Square Error) lub ISE (Integral Square Error) oraz wskaĹşnikĂłw statystycznych, takich jak Ĺ&#x203A;rednia oraz wariancja uchybu regulacji (oznaczone odpowiednio m i s).
H,], + #6. ! ! & Optymalizacja parametrĂłw byĹ&#x201A;a wykonywana przy pomocy algorytmu genetycznego ga z pakietu Global Optimization Toolbox dla Ĺ&#x203A;rodowiska MATLAB. Struktury regulatorĂłw byĹ&#x201A;y testowane parami, tj. na obu torach sterowania wykorzystywane byĹ&#x201A;y te same regulatory dla kaĹźdej ze struktur. NastÄ&#x2122;pnie
30
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
â&#x17D;¤ â&#x2C6;&#x2019;0,004638 â&#x17D;Ľ s 2 + 93,24s + 3,802 â&#x17D;Ľ â&#x17D;Ľ . (10) 1,208s + 0,03219 â&#x17D;Ľ s 2 + 6,743s + 0,1946 â&#x17D;Ľâ&#x17D;Ś
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
PowyĹźsze wskaĹşniki naleĹźy traktowaÄ&#x2021; jako podstawowe. JednakĹźe literatura przedmiotu jest bardzo bogata i moĹźna znaleĹşÄ&#x2021; wiele innych podejĹ&#x203A;Ä&#x2021;, jak na przykĹ&#x201A;ad: 1. inne wskaĹşniki wykorzystujÄ&#x2026;ce odpowiedĹş skokowÄ&#x2026;, na przykĹ&#x201A;ad wspĂłĹ&#x201A;czynnik zapominania (ang. decay ratio) lub uchyb ustalony [21], 2. wskaĹşniki wykorzystujÄ&#x2026;ce odpowiedĹş zakĹ&#x201A;ĂłceniowÄ&#x2026;, na przykĹ&#x201A;ad Idle Index [22], Area Index, Output Index [23], R-index [24], 3. inne wskaĹşniki caĹ&#x201A;kowe, jak Integral Time Absolute Value (ITAE) [25], Integral of Square Time derivative of the Control input (ISTC) [26], Total Squared Variation (TSV) [27], Amplitude Index (AMP) [21], 4. wskaĹşniki korelacyjne [28, 29], 5. inne wskaĹşniki statystyczne, jak skoĹ&#x203A;noĹ&#x203A;Ä&#x2021;, kurtoza [30], variance band [31] oraz wspĂłĹ&#x201A;czynniki innych rozkĹ&#x201A;adĂłw [32], 6. metody wykorzystujÄ&#x2026;ce modelowanie, w tym podejĹ&#x203A;cie minimalno-wariacyjne [33, 34], 7. podejĹ&#x203A;cia hybrydowe [35], np. Exponentially Weighted Moving Averages (EWMA) [36], 8. metody czÄ&#x2122;stotliwoĹ&#x203A;ciowe wykorzystujÄ&#x2026;ce charakterystyki Bodego, Nyquista i Nicholsa wraz z zapasami moduĹ&#x201A;u i fazy [37] aĹź po bardziej zaawansowane metody wykorzystujÄ&#x2026;ce przeksztaĹ&#x201A;cenie Fouriera [38], 9. metody alternatywne wykorzystujÄ&#x2026;ce przeksztaĹ&#x201A;cenie falkowe [39], ortogonalne funkcje Laguerreâ&#x20AC;&#x2122;a [40], sztuczne sieci neuronowe [41], wykĹ&#x201A;adnik Hursta [42], miary persystencji [43], czy entropii [44], 10. róşnorakie wskaĹşniki czysto biznesowe [45, 2].
H,h, ) $ !" ! Niestety bĹ&#x201A;Ä&#x2026;d regulacji bardzo rzadko moĹźna przybliĹźyÄ&#x2021; rozkĹ&#x201A;adem Gaussa, stÄ&#x2026;d parametry m oraz s niedokĹ&#x201A;adnie bÄ&#x2122;dÄ&#x2026; oceniaÄ&#x2021; jakoĹ&#x203A;Ä&#x2021; regulacji. AnalizujÄ&#x2026;c histogram uchybu regulacji (rys. 3) moĹźna zauwaĹźyÄ&#x2021;, Ĺźe wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci obiektu znacznie lepiej moĹźna przybliĹźyÄ&#x2021; wykorzystujÄ&#x2026;c do tego celu rozkĹ&#x201A;ad a-stabilny LĂŠvyâ&#x20AC;&#x2122;ego bÄ&#x2026;dĹş rozkĹ&#x201A;ad normalny wyznaczajÄ&#x2026;c jego parametry metodami statystyki odpornoĹ&#x203A;ciowej (ang. Robust Statistics). RozkĹ&#x201A;ad a-stabilny naleĹźy do rozkĹ&#x201A;adĂłw gruboogonowych (ang. heavy-tailed distribution) i ma 4 parametry: a â&#x2C6;&#x2C6; (0, 2] â&#x20AC;&#x201C; parametr stabilnoĹ&#x203A;ci, b â&#x2C6;&#x2C6; [â&#x2C6;&#x2019;1, 1] â&#x20AC;&#x201C; parametr skoĹ&#x203A;noĹ&#x203A;ci, g â&#x2C6;&#x2C6; (0, â&#x2C6;&#x17E;) â&#x20AC;&#x201C; parametr skali, d â&#x2C6;&#x2C6; (â&#x2C6;&#x2019;â&#x2C6;&#x17E;, â&#x2C6;&#x17E;) â&#x20AC;&#x201C; parametr poĹ&#x201A;oĹźenia.
Warto nadmieniÄ&#x2021;, Ĺźe w przypadku, gdy a = 2 oraz b = 0 mamy do czynienia z rozkĹ&#x201A;adem gaussowskim â&#x20AC;Ť(ׯâ&#x20AC;Źg, d), zaĹ&#x203A; dla a = 1 i b = 0 â&#x20AC;&#x201C; z rozkĹ&#x201A;adem Cauchyâ&#x20AC;&#x2122;ego. Metody statystyki odpornoĹ&#x203A;ciowej sĹ&#x201A;uĹźÄ&#x2026; do estymacji rozkĹ&#x201A;adu prawdopodobieĹ&#x201E;stwa danych pod kÄ&#x2026;tem odpornoĹ&#x203A;ci na odejĹ&#x203A;cie od zaĹ&#x201A;oĹźeĹ&#x201E; modelu (ang. outliers) bÄ&#x2026;dĹş w obecnoĹ&#x203A;ci zakĹ&#x201A;ĂłceĹ&#x201E;. W tych przypadkach klasyczne estymatory Ĺ&#x203A;redniej bÄ&#x2026;dĹş skali nie sÄ&#x2026; wiarygodne. OdpornoĹ&#x203A;Ä&#x2021; na wartoĹ&#x203A;ci odstajÄ&#x2026;ce wykazujÄ&#x2026; rĂłwnieĹź moduĹ&#x201A;owe wskaĹşniki statystyczne, np. wskaĹşnik IAE. Aproksymacja rozkĹ&#x201A;adu bĹ&#x201A;Ä&#x2122;du regulacji przy uĹźyciu rozkĹ&#x201A;adĂłw a-stabilnego oraz normalnego o parametrach wyznaczonych metodami statystyki odpornoĹ&#x203A;ciowej daje lepsze wyniki niĹź w przypadku rozkĹ&#x201A;adu normalnego, dlatego teĹź parametry skali oraz poĹ&#x201A;oĹźenia tych rozkĹ&#x201A;adĂłw dokĹ&#x201A;adniej oceniajÄ&#x2026; bĹ&#x201A;Ä&#x2026;d regulacji aniĹźeli klasyczne Gaussowskie wskaĹşniki. Istnieje wiele metod dedykowanych dopasowaniu funkcji rozkĹ&#x201A;adu prawdopodobieĹ&#x201E;stwa do histogramu zmiennej [46]. PodejĹ&#x203A;cie regresyjne Koutrouvelisa [47] pozwala na dopasowanie rozkĹ&#x201A;adu a-stabilnego. 2.6.1. Analiza fraktalna PojÄ&#x2122;cie fraktali (Ĺ&#x201A;ac. fractus â&#x20AC;&#x201C; zĹ&#x201A;amany, czÄ&#x2026;stkowy) zostaĹ&#x201A;o wprowadzone przez Benoit Mandelbrodta. Fraktale sÄ&#x2026; obiektami samopodobnymi, najprostsza metoda ich powstawania jest wielokrotne powtarzanie tej samej reguĹ&#x201A;y, ktĂłra generuje ksztaĹ&#x201A;t. KsztaĹ&#x201A;ty fraktalne wykazujÄ&#x2026; samopodobieĹ&#x201E;stwo wzglÄ&#x2122;dem przestrzeni, natomiast szeregi czasowe â&#x20AC;&#x201C; wzglÄ&#x2122;dem czasu. PrzykĹ&#x201A;adem ksztaĹ&#x201A;tu fraktalnego sÄ&#x2026; np. pĹ&#x201A;atki Ĺ&#x203A;niegu lub trĂłjkÄ&#x2026;t SierpiĹ&#x201E;skiego. Jednym z narzÄ&#x2122;dzi stosowanych do analizy fraktalnej szeregĂłw czasowych jest wykĹ&#x201A;adnik Hursta. Harold Edwin Hurst byĹ&#x201A; hydrologiem, pracowaĹ&#x201A; przy budowie tamy na Nilu majÄ&#x2026;c dostÄ&#x2122;p do danych historycznych dotyczÄ&#x2026;cych wylewĂłw tej rzeki. Na potrzeby swojej pracy opracowaĹ&#x201A; nowe narzÄ&#x2122;dzie statystyczne: wykĹ&#x201A;adnik Hursta (H) [48]. W celu obliczenia wspĂłĹ&#x201A;czynnika i porĂłwnywania szeregĂłw czasowych róşnego typu naleĹźy dokonaÄ&#x2021; analizy przeskalowanego zasiÄ&#x2122;gu R/S (ang. Rescaled Range analysis). Zakres szeregu (róşnica miÄ&#x2122;dzy maksymalnÄ&#x2026; a minimalnÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026; szeregu) dzieli siÄ&#x2122; przez odchylenie standardowe tego zbioru, co sprawia, Ĺźe wykĹ&#x201A;adnik ten jest uniwersalnym narzÄ&#x2122;dziem do analizy wszelkich szeregĂłw czasowych. Oblicza siÄ&#x2122; go na podstawie nachylenia wykresĂłw logarytmĂłw R/S w zaleĹźnoĹ&#x203A;ci od dĹ&#x201A;ugoĹ&#x203A;ci danych N na skali podwĂłjnie logarytmicznej. R = a â&#x2039;&#x2026;NH, S
(11)
gdzie: R â&#x20AC;&#x201C; zakres szeregu czasowego, S â&#x20AC;&#x201C; odchylenie standardowe, N â&#x20AC;&#x201C; liczba obserwacji, a â&#x20AC;&#x201C; staĹ&#x201A;a estymowana na p o dstawie nachylenia wykresu R/S, H â&#x20AC;&#x201C; wykĹ&#x201A;adnik Hursta.
Rys. 3. Aproksymacja rozkĹ&#x201A;adu statystycznego uchybu regulacji przy pomocy rozkĹ&#x201A;adu Gaussa, Îą-stabilnego oraz Gaussa z parametrami odpornoĹ&#x203A;ciowymi Fig. 3. Control error histogram with fitted Gauss, Îą-stable and robust probabilistic density functions
Po obustronnym zlogarytmizowaniu rĂłwnania (11) moĹźna obliczyÄ&#x2021; wykĹ&#x201A;adnik H. Niestety jedna prosta w wiÄ&#x2122;kszoĹ&#x203A;ci przypadkĂłw niedokĹ&#x201A;adnie aproksymuje dane na wykresie przeskalowanego zasiÄ&#x2122;gu, stÄ&#x2026;d teĹź podejmuje siÄ&#x2122; prĂłby aproksymacji danych Ĺ&#x201A;amanÄ&#x2026; z dwoma punktami przegiÄ&#x2122;cia (ang. crossover), co zostaĹ&#x201A;o szerzej opisane w [43]. W procesie oceny dziaĹ&#x201A;ania regulatora kluczowy jest poczÄ&#x2026;t-
31
L L% "'. =L " $ ' $ ' ' L " "'. $g "
â&#x2C6;&#x2019; mscalelogist â&#x20AC;&#x201C; PID z waĹźeniem wartoĹ&#x203A;ci zadanej nastrojony przy pomocy IAE. AnalizujÄ&#x2026;c cztery wskaĹşniki, wybrane zostaĹ&#x201A;y w sumie trzy róşne przypadki. Trzy z tego wzglÄ&#x2122;du, Ĺźe do regulatora z róşniczkowaniem wyjĹ&#x203A;cia zostaĹ&#x201A;y wybrane parametry rĂłwnolegĹ&#x201A;ego PI, a optymalizacja przy pomocy IAE wyznaczyĹ&#x201A;a zerowe wzmocnienia dla czĹ&#x201A;onu róşniczkowania. SprowadziĹ&#x201A;a ona w ten sposĂłb regulator PID z róşniczkowaniem wyjĹ&#x203A;cia do rĂłwnolegĹ&#x201A;ego regulatora PI. PorĂłwnujÄ&#x2026;c jakoĹ&#x203A;ciowo oba te przebiegi moĹźna zauwaĹźyÄ&#x2021;, Ĺźe regulator PI mocniej oscyluje wokĂłĹ&#x201A; wartoĹ&#x203A;ci zadanych. PoniewaĹź wskaĹşnik MSE jest mniej odporny i bardziej uwzglÄ&#x2122;dnia pojedyncze duĹźe wahania, wyznaczyĹ&#x201A; on wĹ&#x201A;aĹ&#x203A;nie takie parametry. Warto zwrĂłciÄ&#x2021; uwagÄ&#x2122; na fakt, Ĺźe optymalizacja sprowadziĹ&#x201A;a regulator bardziej zaawansowany, o wiÄ&#x2122;kszej liczbie stopni swobody i wspĂłĹ&#x201A;czynnikĂłw, do formy prostszej zerujÄ&#x2026;c czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; jego parametrĂłw.
Rys. 4. PrzykĹ&#x201A;ad analizy R/S danych; H 0 jest wykĹ&#x201A;adnikiem Hursta obliczonym na podstawie aproksymacji danych prosta; wspĂłĹ&#x201A;czynniki H1, H 2 oraz H 3 oznaczajÄ&#x2026; wykĹ&#x201A;adniki Hursta obliczone na podstawie danego odcinka Ĺ&#x201A;amanej o punktach przegiÄ&#x2122;cia cr1 i cr 2 Fig. 4. R/S extended range analysis: H 0 denotes single Hurst exponent; multiple exponents H1, H2 , H3 denote muliti persistent approximation separated with crossover points cr1 and cr2
kowy odcinek krzywej aproksymujÄ&#x2026;cej dane. W przypadku maĹ&#x201A;ej iloĹ&#x203A;ci dostÄ&#x2122;pnych danych (N) wykĹ&#x201A;adnik Hursta moĹźe zĹ&#x201A;udnie oceniaÄ&#x2021; szereg czasowy. PrzykĹ&#x201A;ad analizy przeskalowanego zakresu danych moĹźna zobaczyÄ&#x2021; na rys. 4. WykĹ&#x201A;adnik Hursta jest miarÄ&#x2026; korelacji elementĂłw szeregu czasowego. Przyjmuje on wartoĹ&#x203A;ci z zakresu â&#x152;Š0; 1â&#x152;Ş: â&#x2C6;&#x2019; gdy H â&#x2C6;&#x2C6; â&#x152;Š0; 0,5) to szereg jest ergodyczny (antypersystentny); jego wartoĹ&#x203A;ci powracajÄ&#x2026; do Ĺ&#x203A;redniej; w odniesieniu do oceny jakoĹ&#x203A;ci regulacji oznacza to, Ĺźe regulator jest szybki (ang. aggressive) [49]; â&#x2C6;&#x2019; gdy H â&#x2C6;&#x2C6; (0,5; 1â&#x152;Ş to szereg jest persystentny; jego wartoĹ&#x203A;ci odbiegajÄ&#x2026; od Ĺ&#x203A;redniej; oznacza to, Ĺźe regulator jest powolny (ang. sluggish), a regulowany proces moĹźe byÄ&#x2021; niestabilny; â&#x2C6;&#x2019; gdy H = 0,5 to wszystkie elementy szeregu sÄ&#x2026; niezaleĹźne, nieskorelowane; wartoĹ&#x203A;Ä&#x2021; ta stanowi punkt odniesienia w procesie projektowania regulatorĂłw.
Y, % ' W pierwszej kolejnoĹ&#x203A;ci analizie zostaĹ&#x201A;y poddane moĹźliwoĹ&#x203A;ci strojenia algorytmĂłw regulacji PID przy wykorzystaniu róşnych wskaĹşnikĂłw jakoĹ&#x203A;ci. BiorÄ&#x2026;c pod uwagÄ&#x2122; wielorakoĹ&#x203A;Ä&#x2021; wskaĹşnikĂłw oraz wersji algorytmĂłw regulacji trudno w pracy zamieĹ&#x203A;ciÄ&#x2021; wszystkie wyniki. Dlatego zamieszczono tylko przykĹ&#x201A;adowe wyniki, zaĹ&#x203A; podsumowanie zaprezentowano w postaci tabelarycznej. Dla przykĹ&#x201A;adu pokazany zostanie przebieg badania dla rĂłwnolegĹ&#x201A;ego regulatora PI dla wskaĹşnika MSE. Najpierw na modelu liniowym zostaje uruchomiona optymalizacja metodÄ&#x2026; ga. Po 64 pokoleniach i 3250 symulacjach algorytm skoĹ&#x201E;czyĹ&#x201A; dziaĹ&#x201A;anie i zwrĂłciĹ&#x201A; parametry: PTsec,evap,out = 24,3883, I Tsec,evap,out = 24,8822, PTSH = 5,0567, I TSH = 5,0184. Przebiegi na modelu liniowym dla tych parametrĂłw sÄ&#x2026; przedstawione na rys. 5. Po znalezieniu parametrĂłw zostaĹ&#x201A; wykonany test na oryginalnym modelu. PoniewaĹź uĹźycie uzyskanych wynikĂłw daĹ&#x201A;o regulator stabilny, ukĹ&#x201A;ad zostaĹ&#x201A; uruchomiony na modelu z bĹ&#x201A;Ä&#x2122;dami pomiarowymi. Oba eksperymenty zostaĹ&#x201A;y przedstawione na rys. 7.
Rys. 5. RĂłwnolegĹ&#x201A;y regulator PI strojony z uĹźyciem MSE â&#x20AC;&#x201C; symulacja na modelu liniowym Fig. 5. Parralel PI controller tuned according to MSE â&#x20AC;&#x201C; linear model simulationâ&#x20AC;&#x201C; process variables
Y,L, # ! Dla modelu z zakĹ&#x201A;Ăłceniami zostaĹ&#x201A;y wybrane struktury, ktĂłre uzyskaĹ&#x201A;y najlepszÄ&#x2026; jakoĹ&#x203A;Ä&#x2021; regulacji pod wzglÄ&#x2122;dem kaĹźdego ze wskaĹşnikĂłw. â&#x2C6;&#x2019; MSE â&#x20AC;&#x201C; PI rĂłwnolegĹ&#x201A;y nastrojony przy pomocy MSE, â&#x2C6;&#x2019; IAE â&#x20AC;&#x201C; PID z waĹźeniem wartoĹ&#x203A;ci zadanej nastrojony przy pomocy IAE, â&#x2C6;&#x2019; mediana â&#x20AC;&#x201C; PID z waĹźeniem wartoĹ&#x203A;ci zadanej nastrojony przy pomocy IAE,
32
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
Rys. 6. RĂłwnolegĹ&#x201A;y regulator PI strojony z uĹźyciem MSE â&#x20AC;&#x201C; symulacja na modelu liniowym â&#x20AC;&#x201C; przebiegi sygnaĹ&#x201A;Ăłw sterujÄ&#x2026;cych Fig. 6. Parralel PI controller tuned according to MSE - linear model simulation - manipulated variables
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Y,H, # ' ! BiorÄ&#x2026;c pod uwagÄ&#x2122; analizÄ&#x2122; wszystkich wskaĹşnikĂłw, najlepszy wynik zostaĹ&#x201A; uzyskany dla regulatorĂłw strojonych przy pomocy IAE. Jednak, aby uwzglÄ&#x2122;dniÄ&#x2021; wiÄ&#x2122;cej czynnikĂłw, zostanÄ&#x2026; rĂłwnieĹź porĂłwnane inne aspekty. Zgodnie z tabelÄ&#x2026; 1 wskaĹşnik MSE zwrĂłciĹ&#x201A; 8/9 stabilnych regulatorĂłw, IAE 7/9, mediana 4/9, a statystyka odpornoĹ&#x203A;ciowa 5/9. Tab. 1. StabilnoĹ&#x203A;Ä&#x2021; wyznaczonych regulatorĂłw dla modelu bez bĹ&#x201A;Ä&#x2122;dĂłw pomiarowych Tab. 1. Stability of controllers designed without disturbances 1
2
3
4
5
6
7
8
9
MSE
8
9
9
9
9
9
9
9
9
IAE
8
9
9
9
9
8
9
9
9
mediana
8
8
8
9
8
8
9
9
9
mscalelogist
9
8
8
9
8
8
9
9
9
Rys. 7. RĂłwnolegĹ&#x201A;y regulator PI strojony z uĹźyciem MSE w wersji z zakĹ&#x201A;Ăłceniami i bez Fig. 7. Parralel PI controller tuned according to MSE, with and without disturbances â&#x20AC;&#x201C; process variables
Rys. 8. RĂłwnolegĹ&#x201A;y regulator PI strojony z uĹźyciem MSE w wersji z zakĹ&#x201A;Ăłceniami i bez â&#x20AC;&#x201C; przebiegi sygnaĹ&#x201A;Ăłw sterujÄ&#x2026;cych Fig. 8. Parralel PI controller tuned according to MSE, with and without disturbances â&#x20AC;&#x201C; manipulated variables
AnalizujÄ&#x2026;c, jaki wskaĹşnik uĹźyty podczas strojenia daĹ&#x201A; najlepsze przebiegi dla kaĹźdej ze struktur okazuje siÄ&#x2122;, Ĺźe dominujÄ&#x2026; tu wskaĹşniki MSE oraz IAE. Strojenie za pomocÄ&#x2026; statystyki odpornoĹ&#x203A;ciowej najlepiej zadziaĹ&#x201A;aĹ&#x201A;o dla rĂłwnolegĹ&#x201A;ego regulatora PD, natomiast mediana nie daĹ&#x201A;a najlepszego rezultatu dla Ĺźadnej ze struktur. Strojenie przy pomocy mediany oraz statystyki odpornoĹ&#x203A;ciowej daĹ&#x201A;o Ĺ&#x203A;rednio gorsze ukĹ&#x201A;ady niĹź MSE oraz IAE. NaleĹźy wziÄ&#x2026;Ä&#x2021; rĂłwnieĹź pod uwagÄ&#x2122;, Ĺźe nie sÄ&#x2026; tutaj uwzglÄ&#x2122;dnione ukĹ&#x201A;ady niestabilne, poniewaĹź nie byĹ&#x201A;y one testowane na modelu z bĹ&#x201A;Ä&#x2122;dami pomiarowymi, co jeszcze bardziej pokazuje przewagÄ&#x2122; wskaĹşnikĂłw MSE oraz IAE. Prezentacja wszystkich wskaĹşnikĂłw umieszczona jest w tablicy 4.
], ^ ! ! ! Po porĂłwnaniu wpĹ&#x201A;ywu wykorzystania wskaĹşnika oceny na jakoĹ&#x203A;Ä&#x2021; otrzymanego regulatora analizie zostaĹ&#x201A;y poddane same wskaĹşniki oceny oraz to, jak one pozwalajÄ&#x2026; odzwierciedliÄ&#x2021; róşne modyfikacje struktur regulacji. W ramach badaĹ&#x201E; przeprowadzono eksperymenty majÄ&#x2026;ce na celu zaprojektowanie regulatora optymalnego PI oraz MPC. Ponadto w celu optymalizacji dziaĹ&#x201A;ania regulatora PI jego strukturÄ&#x2122; rozszerzano o dodatkowe mechanizmy majÄ&#x2026;ce na celu poprawienie jakoĹ&#x203A;ci regulacji, tj. anti-windup oraz kompensacjÄ&#x2122; zakĹ&#x201A;ĂłceĹ&#x201E; przy pomocy sprzÄ&#x2122;Ĺźenia feedforward. Mechanizm anti-windup wykorzystuje algorytm clamping, czyli koĹ&#x201E;czy caĹ&#x201A;kowanie w momencie, gdy przekroczone zostanÄ&#x2026; ograniczenia sygnaĹ&#x201A;u sterujÄ&#x2026;cego oraz sygnaĹ&#x201A; sterujÄ&#x2026;cy i wyjĹ&#x203A;ciowy sÄ&#x2026; tego samego znaku [19]. CzĹ&#x201A;on feedforward zostaĹ&#x201A; zaimplementowany w strukturze przemysĹ&#x201A;owej przedstawionej na rys. 9. Taka struktura, o trzech parametrach: T1, T2 oraz K, przy czym T2 > T1 nie wymaga modelu sygnaĹ&#x201A;Ăłw zakĹ&#x201A;ĂłcajÄ&#x2026;cych do ich kompensacji, skÄ&#x2026;d znalazĹ&#x201A;a swoje zastosowanie w przemyĹ&#x203A;le. StaĹ&#x201A;a czasowa T1 stanowi o tym, jak szybko bÄ&#x2122;dzie narastaĹ&#x201A; sygnaĹ&#x201A; uff w odpowiedzi na zmianÄ&#x2122; sygnaĹ&#x201A;u zakĹ&#x201A;ĂłcajÄ&#x2026;cego, a T2 â&#x20AC;&#x201C; jak szybko zostanie ona wytĹ&#x201A;umiona. Badania przeprowadzono w dwĂłch Ĺ&#x203A;rodowiskach: z obecnoĹ&#x203A;ciÄ&#x2026; szumu zakĹ&#x201A;ĂłceĹ&#x201E; oraz przy braku szumu. Szum zakĹ&#x201A;ĂłceĹ&#x201E; wprowadzony do ukĹ&#x201A;adu ma rozkĹ&#x201A;ad Gaussa o Ĺ&#x203A;redniej m = 0 i wariancji s2 = 0,0007. ZostaĹ&#x201A; on dodany do sygnaĹ&#x201A;Ăłw zakĹ&#x201A;ĂłcajÄ&#x2026;cych. Regulatory zaimplementowano w Ĺ&#x203A;rodowisku MATLAB/Simulink. Parametry regulatorĂłw PI oraz czĹ&#x201A;onu feedforward dobierano przy pomocy metod optymalizacji lokalnej, minimalizujÄ&#x2026;c kwadrat uchybu regulacji. Regulator predykcyjny wykorzystuje algorytm MPCS (Model Predictive Control with State equations) i zostaĹ&#x201A; zaprojektowany w aplikacji MPC Designer z przybornika Model Predictive Control Toolbox. Regulator predykcyjny swoje dziaĹ&#x201A;anie opiera na modelu w postaci transmitancji (10), ktĂłry zostaĹ&#x201A; szerzej opisany w [20]. Trajektoria zadana dla obu zmiennych procesowych oraz sygnaĹ&#x201A;Ăłw zakĹ&#x201A;ĂłcajÄ&#x2026;cych zostaĹ&#x201A;a narzucona przez twĂłrcĂłw modelu [51] i nie byĹ&#x201A;a modyfikowana na potrzeby badaĹ&#x201E;.
Rys. 9. Schemat czĹ&#x201A;onu kompensujÄ&#x2026;cego zakĹ&#x201A;Ăłcenia feedforward; uff â&#x20AC;&#x201C; sygnaĹ&#x201A; wyjĹ&#x203A;ciowy czĹ&#x201A;onu feedforward Fig. 9. Industrial design of disturbance decoupling feedforward; uff feedforward output
33
L L% "'. =L " $ ' $ ' ' L " "'. $g "
Rys. 11. Przebiegi sygnaĹ&#x201A;Ăłw wyjĹ&#x203A;ciowych procesu dla regulatora optymalnego MPC w warunkach bez szumu zakĹ&#x201A;ĂłceĹ&#x201E; Fig. 11. Process variables for optimal MPC controller in the undisturbed scenario
Rys. 10. WskaĹşniki jakoĹ&#x203A;ci regulacji dla regulatorĂłw PI, MPC, PIs oraz MPCs; wskaĹşniki z indeksem 1 odnoszÄ&#x2026; siÄ&#x2122; do pÄ&#x2122;tli sterujÄ&#x2026;cej zmiennÄ&#x2026; Tsec,evap,out, z indeksem 2 dotyczÄ&#x2026; pÄ&#x2122;tli sterujÄ&#x2026;cej TSH Fig. 10. Multicriteria radar plot for PI, MPC, PIs and MPCs: measures with index 1 apply to Tsec,evap,out loop, index 2 applies to TSH loop
W wyniku badaĹ&#x201E; wybrano cztery najlepiej dostrojone ukĹ&#x201A;ady sterowania: PI o rozszerzonej strukturze oraz MPC przy obecnoĹ&#x203A;ci szumu zakĹ&#x201A;ĂłceĹ&#x201E;, jak i przy ich braku â&#x20AC;&#x201C; oznaczone dalej odpowiednio: PI, MPC, PIs oraz MPCs. WartoĹ&#x203A;ci badanych wskaĹşnikĂłw jakoĹ&#x203A;ci dla tych regulatorĂłw zebrane sÄ&#x2026; w tabelach 2 oraz 3. Wizualne porĂłwnanie wynikĂłw przedstawia rysunek 10. Indeksem 1 oznaczono pÄ&#x2122;tlÄ&#x2122; sterujÄ&#x2026;cÄ&#x2026; zmiennÄ&#x2026; Tsec,evap,out, a indeksem 2 â&#x20AC;&#x201C; sterujÄ&#x2026;cÄ&#x2026; zmiennÄ&#x2026; TSH. Wykres radarowy przedstawia stosunek najmniejszej wartoĹ&#x203A;ci danego wskaĹşnika jakoĹ&#x203A;ci uzyskanÄ&#x2026; spoĹ&#x203A;rĂłd wszystkich porĂłwnywanych regulatorĂłw do wartoĹ&#x203A;ci dla danego regulatora. Oznacza to, Ĺźe wartoĹ&#x203A;Ä&#x2021; wskaĹşnika byĹ&#x201A;a tym mniejsza, im bliĹźej zewnÄ&#x2122;trznej czÄ&#x2122;Ĺ&#x203A;ci wykresu znajduje siÄ&#x2122; krzywa dotyczÄ&#x2026;ca danego regulatora. Na potrzeby wykonania wykresu uĹ&#x203A;redniono przeregulowania oraz czasy regulacji
Rys. 12. Przebiegi sygnaĹ&#x201A;Ăłw wejĹ&#x203A;ciowych procesu dla regulatora optymalnego MPC w warunkach bez szumu zakĹ&#x201A;ĂłceĹ&#x201E; Fig. 12. Manipulated variables for optimal MPC controller in the undisturbed scenario
dla trzech skokĂłw wartoĹ&#x203A;ci zadanej zmiennej TSH, oznaczajÄ&#x2026;c je odpowiednio k2 i Tr2. Jak widaÄ&#x2021; (rys. 13), mechanizm anti-windup skutecznie eliminuje przeregulowanie wynikajÄ&#x2026;ce z nadmiernej akcji caĹ&#x201A;kujÄ&#x2026;cej podczas osiÄ&#x2026;gania przez sygnaĹ&#x201A; sterujÄ&#x2026;cy ograniczeĹ&#x201E;. WartoĹ&#x203A;ci
Tab. 2. PorĂłwnanie wartoĹ&#x203A;ci czasĂłw regulacji i przeregulowaĹ&#x201E; dla regulatorĂłw PI, MPC, PIs oraz MPCs (indeks przy wskaĹşniku oznacza kolejne skoki wartoĹ&#x203A;ci zadanej) Tab. 2. Comparison of the settling times and overshoots for PI, MPC, PIs and MPCs controllers (measure index denotes consecutives etpoint steps Tsec,evap,out
TSH
Regulator [%]
Tr [s]
1 [%]
Tr1 [s]
2 [%]
Tr2 [s]
3 [%]
Tr3 [s]
PI
0,93
2
17,79
8
1,02
24
75,92
6
MPC
0,1
2
0,99
8
0,6
23
20,48
4
PIs
0,16
2
3,85
12
1,46
26
9,47
5
MPCs
0,12
2
2,14
8
1,68
22
21,64
4
Tab. 3. PorĂłwnanie wartoĹ&#x203A;ci wskaĹşnikĂłw bĹ&#x201A;Ä&#x2122;du regulacji dla regulatorĂłw PI, MPC, PIs i MPCs Tab. 3. Comparison of control error measures for PI, MPC, PIs and MPCs controllers Tsec,evap,out
TSH
Regulator
34
MSEâ&#x2039;&#x2026;10â&#x20AC;&#x201C;3
IAEâ&#x2039;&#x2026;10â&#x20AC;&#x201C;2
H
MSE
IAE
H
PI
1,496
0,309
0,420
0,368
0,102
0,837
MPC
1,019
0,241
0,523
0,312
0,078
0,651
PIs
1,324
1,125
0,473
0,368
0,158
0,526
MPCs
1,173
0,743
0,389
0,357
0,147
0,586
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Rys. 13. WpĹ&#x201A;yw dziaĹ&#x201A;ania mechanizmĂłw anti-windup oraz feedforward na jakoĹ&#x203A;Ä&#x2021; pracy regulatora optymalnego PI w warunkach bez szumu zakĹ&#x201A;ĂłceĹ&#x201E; Fig. 13. Anti-windup and disturbance decoupling feedforward impact on optimal PI control in the undistrbed scenario
wskaĹşnikĂłw jakoĹ&#x203A;ci uzyskane dla przedstawionych regulatorĂłw sÄ&#x2026; zbliĹźone do siebie, jednak w obu badanych Ĺ&#x203A;rodowiskach niĹźsze wartoĹ&#x203A;ci wskaĹşnikĂłw uzyskaĹ&#x201A;y regulatory predykcyjne. Warto zauwaĹźyÄ&#x2021;, Ĺźe wykĹ&#x201A;adnik Hursta osiÄ&#x2026;ga wartoĹ&#x203A;ci zbliĹźone do H = 0,5, czyli do regulacji neutralnej.
b, #
W artykule dokonano analizy wpĹ&#x201A;ywu przyjÄ&#x2122;tej postaci wskaĹşnika jakoĹ&#x203A;ci jako celu strojenia regulatora na efektywnoĹ&#x203A;Ä&#x2021; dziaĹ&#x201A;ania otrzymanego regulatora oraz porĂłwnania dziaĹ&#x201A;ania regulatorĂłw PID oraz MPC na przykĹ&#x201A;adowym obiekcie przy pomocy wybranych wskaĹşnikĂłw jakoĹ&#x203A;ci, zarĂłwno przy obecnoĹ&#x203A;ci szumu zakĹ&#x201A;ĂłceĹ&#x201E;, jak i przy jego braku. Z przeprowadzonych eksperymentĂłw moĹźna sprĂłbowaÄ&#x2021; wyciÄ&#x2026;gnÄ&#x2026;Ä&#x2021; wnioski na temat architektury regulatorĂłw PID oraz stosowania róşnych wskaĹşnikĂłw jakoĹ&#x203A;ci przy ich strojeniu. Po pierwsze podstawowa architektura PID potrafi zapewniÄ&#x2021; dobrÄ&#x2026; jakoĹ&#x203A;Ä&#x2021; regulacji nawet dla obiektĂłw nieliniowych. Zastosowane regulatory PI przy odpowiednich nastawach daĹ&#x201A;y dobrÄ&#x2026; jakoĹ&#x203A;Ä&#x2021; regulacji, a wskaĹşnik MSE zwracaĹ&#x201A; jÄ&#x2026; jako najlepszÄ&#x2026; spoĹ&#x203A;rĂłd wszystkich struktur. MoĹźna rĂłwnieĹź zauwaĹźyÄ&#x2021;, Ĺźe wszystkie pozostaĹ&#x201A;e wskaĹşniki wskazaĹ&#x201A;y na jednÄ&#x2026; strukturÄ&#x2122;, czyli regulator PID z waĹźeniem wartoĹ&#x203A;ci zadanej, nastrojony przy pomocy wskaĹşnika IAE. Jednak biorÄ&#x2026;c pod uwagÄ&#x2122; fakt, Ĺźe istniejÄ&#x2026; dwa tory sterowania i dwa regulatory, to z czterech parametrĂłw do nastrojenia dla PI, dla PID z waĹźeniem wartoĹ&#x203A;ci zadanej trzeba dobraÄ&#x2021; ich dwanaĹ&#x203A;cie. PorĂłwnujÄ&#x2026;c wskaĹşniki jakoĹ&#x203A;ci moĹźemy zauwaĹźyÄ&#x2021;, Ĺźe wskaĹşnik minimalno-kwadratowy, ktĂłry mocno karze za wszelkie duĹźe odchylenia, znalazĹ&#x201A; najwiÄ&#x2122;cej zestawĂłw parametrĂłw zapewniajÄ&#x2026;cych stabilne dziaĹ&#x201A;anie, ale jednoczeĹ&#x203A;nie nie jest to rozwiÄ&#x2026;zanie idealne. WskaĹşnik IAE, ktĂłry jest bardziej odporny niĹź MSE dla regulatora z waĹźeniem wartoĹ&#x203A;ci zadanej wyznaczyĹ&#x201A; parametry, ktĂłre w rezultacie daĹ&#x201A;y regulatory bardziej odporne na zakĹ&#x201A;Ăłcenia. Ostatecznie pozostaĹ&#x201A;e dwa, jeszcze bardziej odporne wskaĹşniki, rĂłwnieĹź wskazaĹ&#x201A;y go jako najlepszy spoĹ&#x203A;rĂłd wszystkich, jednak algorytm optymalizacji posĹ&#x201A;ugujÄ&#x2026;c siÄ&#x2122; wyĹ&#x201A;Ä&#x2026;cznie nimi dawaĹ&#x201A; gorsze rezultaty. AnalizujÄ&#x2026;c otrzymane wyniki moĹźna wysnuÄ&#x2021; przypuszczenie, Ĺźe wskaĹşniki odporne wskazywaĹ&#x201A;y na bardziej agresywne regulatory. Finalnie w zwiÄ&#x2026;zku z tym, Ĺźe ukĹ&#x201A;ady strojone byĹ&#x201A;y na modelu liniowym, to testowane na oryginalnym obiekcie czÄ&#x2122;sto okazywaĹ&#x201A;y siÄ&#x2122; byÄ&#x2021; niestabilne. W obu Ĺ&#x203A;rodowiskach, niezaleĹźnie od obecnoĹ&#x203A;ci szumu najniĹźsze wartoĹ&#x203A;ci wskaĹşnikĂłw jakoĹ&#x203A;ci uzyskiwaĹ&#x201A;y regulatory pre-
dykcyjne. Pomimo faktu, iĹź wykorzystujÄ&#x2026; one liniowy model procesu do minimalizacji bĹ&#x201A;Ä&#x2122;du regulacji, optymalnie sterujÄ&#x2026; procesem i kompensujÄ&#x2026; wpĹ&#x201A;yw zakĹ&#x201A;ĂłceĹ&#x201E; mimo braku uwzglÄ&#x2122;dniania sygnaĹ&#x201A;Ăłw zakĹ&#x201A;ĂłcajÄ&#x2026;cych w modelu i algorytmie regulacji. Regulator PI w wersji podstawowej nie osiÄ&#x2026;ga najlepszej jakoĹ&#x203A;ci regulacji. Prostymi dostÄ&#x2122;pnymi przemysĹ&#x201A;owo metodami, takimi jak ograniczanie caĹ&#x201A;kowania mechanizmem anti-windup oraz wykorzystanie czĹ&#x201A;onu kompensujÄ&#x2026;cego zakĹ&#x201A;Ăłcenia feedforward moĹźna znaczÄ&#x2026;co poprawiÄ&#x2021; jakoĹ&#x203A;Ä&#x2021; regulacji. Dodatkowo, przedstawiona struktura feedforward jest wygodna z racji, iĹź nie wymaga modelu sygnaĹ&#x201A;u zakĹ&#x201A;ĂłcajÄ&#x2026;cego. UĹźywanie róşnych wskaĹşnikĂłw jakoĹ&#x203A;ci regulacji dostarcza wiele informacji o sterowaniu procesem. Wiele estymatorĂłw, np. bĹ&#x201A;Ä&#x2026;d minimalno-kwadratowy, nie sÄ&#x2026; odporne na szum ani na odbiegniÄ&#x2122;cia od modelu i mogÄ&#x2026; zĹ&#x201A;udnie oceniaÄ&#x2021; jakoĹ&#x203A;Ä&#x2021; regulacji. Dlatego warto posĹ&#x201A;ugiwaÄ&#x2021; siÄ&#x2122; wskaĹşnikami, ktĂłre rzetelnie oceniajÄ&#x2026; jakoĹ&#x203A;Ä&#x2021; regulacji niezaleĹźnie od warunkĂłw oraz modelu, takimi jak bĹ&#x201A;Ä&#x2026;d IAE lub parametry g i so. RozkĹ&#x201A;ady te znacznie lepiej aproksymujÄ&#x2026; rozkĹ&#x201A;ad statystyczny uchybu regulacji. Analiza przeskalowanego zasiÄ&#x2122;gu jest narzÄ&#x2122;dziem rzadko stosowanym w automatyce. W warunkach przemysĹ&#x201A;owych, przy obecnoĹ&#x203A;ci szumĂłw i zakĹ&#x201A;ĂłceĹ&#x201E; oraz braku modelu dynamiki procesu, wartoĹ&#x203A;Ä&#x2021; wykĹ&#x201A;adnika Hursta rĂłwna 0,5, ktĂłra odzwierciedla optymalne sterowanie procesem, jest praktycznie nieosiÄ&#x2026;galna. WykĹ&#x201A;adnik ten dostarcza jednak wielu wartoĹ&#x203A;ciowych informacji na temat pracy regulatorĂłw i moĹźe byÄ&#x2021; bardzo uĹźytecznym, niestandardowym narzÄ&#x2122;dziem oceny dziaĹ&#x201A;ania regulatora. PowyĹźej opisane analizy miaĹ&#x201A;y na celu pokazanie potencjalnych moĹźliwoĹ&#x203A;ci wynikajÄ&#x2026;cych z rozszerzenia klasycznie stosowanych wskaĹşnikĂłw oceny wykorzystujÄ&#x2026;cych bĹ&#x201A;Ä&#x2026;d Ĺ&#x203A;redniokwadratowy o podejĹ&#x203A;cia odporne. WykorzystujÄ&#x2026;c wyniki dotyczÄ&#x2026;ce regresji odpornej, statystyki odpornoĹ&#x203A;ciowe czy teĹź niegaussowskie miary persystencji zaproponowano i zastosowano do zadania projektowania, jak i oceny jakoĹ&#x203A;ci sterowania, alternatywne wskaĹşniki w postaci odpornoĹ&#x203A;ciowego odchylenia standardowego wykorzystujÄ&#x2026;cego logistycznÄ&#x2026; Ď&#x2C6; funkcjÄ&#x2122; so, wspĂłĹ&#x201A;czynnika skali g gruboogonowego a-stabilnego rozkĹ&#x201A;adu gÄ&#x2122;stoĹ&#x203A;ci prawdopodobieĹ&#x201E;stwa, czy teĹź wykĹ&#x201A;adnik Hursta H. Przedstawione wyniki nie wyczerpujÄ&#x2026; tematu. Ciekawym zagadnieniem byĹ&#x201A;oby dalsze systematyczne testowanie proponowanych wskaĹşnikĂłw odpornych, jako wewnÄ&#x2122;trznego wskaĹşnika jakoĹ&#x203A;ci regulatora predykcyjnego, jako wskaĹşnika jakoĹ&#x203A;ci podczas zadania modelowania czy teĹź klasycznej optymalizacji. Owe kierunki badaĹ&#x201E; sÄ&#x2026; raczej bardzo rzadkie w literaturze, a wyniki dotyczÄ&#x2026;ce wskaĹşnikĂłw odpornych oferujÄ&#x2026; wysokie efektywnoĹ&#x203A;ci, szczegĂłlnie w sytuacji wystÄ&#x2122;powania w danych anomalii oraz wartoĹ&#x203A;ci odstajÄ&#x2026;cych.
^ 1. Ordys A., Uduehi D., Johnson M.A., Process Control Performance Assessment â&#x20AC;&#x201C; From Theory to Implementation. Springer-Verlag, London 2007. 2. Bauer M., Horch A., Xie L., Jelali M., Thornhill N., The current state of control loop performance monitoring â&#x20AC;&#x201C; a survey of application in industry. â&#x20AC;&#x153;Journal of Process Controlâ&#x20AC;?, Vol. 38, 2016, 1â&#x20AC;&#x201C;10, DOI: 10.1016/j.jprocont.2015.11.002. 3. DomaĹ&#x201E;ski P.D., Golonka S., Jankowski R., Kalbarczyk P., Moszowski B., Control rehabilitation impact on production nefficiency of ammonia synthesis installation . â&#x20AC;&#x153;Industrial & Engineering Chemistry Researchâ&#x20AC;?, Vol. 55, No. 39, 2016, 10366â&#x20AC;&#x201C;10376, DOI: 10.1021/acs.iecr.6b02907. 4. Häggblom K.E., Process control laboratory. [www.users.abo. fi/khaggblo/PDC/PDC7.pdf] 2017. Accessed: 2019-05-05. 5. Ziegler J.G., Nichols N.B., Optimum settings for automatic controllers. â&#x20AC;&#x153;Transactions ASMEâ&#x20AC;?, Vol. 64, 759â&#x20AC;&#x201C;768, 1942. 6. Cohen G.H., Coon G.A., Theoretical consideration of retarded control. â&#x20AC;&#x153;Transactions ASMEâ&#x20AC;?, Vol. 75, 827, 1953.
35
L L% "'. =L " $ ' $ ' ' L " "'. $g " Tab. 4. WskaĹşniki jakoĹ&#x203A;ci dla wszystkich testowanych ukĹ&#x201A;adĂłw Tab. 4. Control performance measures for all simulated scenarios MSE
IAE
MSE
IAE
med.
mscal
MSE
IAE
med.
mscal
1
4,1751
2,0953
1,1548
2,0325
3,9562
2,0289
1,0144
1,9802
2
8
8
8
8
8
8
8
8
3
0,0101
0,0153
0,0007
0,0011
0,0100
0,0145
0,0005
0,0009
4
0,0128
0,0485
0,0289
0,0443
0,0133
0,0527
0,0326
0,0497
5
0,0101
0,0150
0,0007
0,0009
0,0101
0,0153
0,0006
0,0010
6
0,0128
0,0486
0,0286
0,0443
0,0135
0,0543
0,0331
0,0503
7
0,0849
0,2896
0,3674
0,3955
0,0645
0,2408
0,2944
0,3210
8
0,0863
0,2908
0,3578
0,4005
0,0666
0,2433
0,2858
0,3279
9
0,0101
0,0152
0,0006
0,0008
0,0214
0,0299
0,0010
0,0014
10
0,0128
0,0484
0,0286
0,0440
0,0243
0,0609
0,0278
0,0432
11
0,0102
0,0160
0,0007
0,0011
0,0137
0,0491
0,0013
0,0023
12
0,0129
0,0494
0,0292
0,0446
8
8
8
8
13
0,0101
0,0149
0,0005
0,0007
0,0100
0,0145
0,0008
0,0012
14
0,0133
0,0528
0,0322
0,0491
0,0131
0,0514
0,0320
0,0484
15
0,0101
0,0152
0,0006
0,0009
0,0101
0,0153
0,0007
0,0011
16
0,0128
0,0485
0,0288
0,0443
0,0128
0,0485
0,0289
0,0443
17
0,0101
0,0148
0,0005
0,0008
0,0101
0,0150
0,0007
0,0011
18
0,0160
0,0469
0,0226
0,0347
0,0160
0,0467
0,0225
0,0344
1. PD rĂłwnolegĹ&#x201A;y 2. PD rĂłwnolegĹ&#x201A;y z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 3. PI rĂłwnolegĹ&#x201A;y 4. PI rĂłwnolegĹ&#x201A;y z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 5. PID rĂłwnolegĹ&#x201A;y 6. PID rĂłwnolegĹ&#x201A;y z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 7. PD szeregowy 8. PD szeregowy z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 9. PI szeregowy 10. PI szeregowy z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 11. PID szeregowy 12. PID szeregowy z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 13. PID rĂłwnolegĹ&#x201A;y z filtrem róşniczkowania 14. PID rĂłwnolegĹ&#x201A;y z filtrem róşniczkowania z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 15. PID rĂłwnolegĹ&#x201A;y z róşniczkowaniem wyjĹ&#x203A;cia 16. PID rĂłwnolegĹ&#x201A;y z róşniczkowaniem wyjĹ&#x203A;cia z bĹ&#x201A;Ä&#x2122;dami pomiarowymi 17. PID rĂłwnolegĹ&#x201A;y z waĹźeniem wartoĹ&#x203A;ci zadanej 18. PID rĂłwnolegĹ&#x201A;y z waĹźeniem wartoĹ&#x203A;ci zadanej z bĹ&#x201A;Ä&#x2122;dami pomiarowymi
7. Ă&#x2026;strĂśm K.J., Hägglund T., Automatic tuning of simple regulators with specifications on phase and amplitude margins. â&#x20AC;&#x153;Automaticaâ&#x20AC;?, Vol. 20, No. 5, 645â&#x20AC;&#x201C;651, 1984, DOI: 10.1016/0005-1098(84)90014-1. 8. McMillan G.K., Good tuning: A pocket guide. ISA, 2 edition, 2006. 9. Visioli A., Practical PID control. Springer Science & Business Media, 2006. 10. ODwyer A., Handbook of PI and PID controller tuning rules. Imperial College Press, 2003. 11. Seborg D.E., Edgar T.F., Mellichamp D.A., Doyle F.J., Process Dynamics and Control, 4th ed. Wiley, 2016. 12. Rousseeuw P.J., Robust regression and outlier detection. Wiley Series in Probability and Mathematical Statistics. John Wiley, New York 1987. 13. Huber P.J., Ronchetti E.M., Robust Statistics. Wiley, Hoboken, 2009. 14. Verboven S., Hubert M., LIBRA: A MATLAB library for robust analysis. â&#x20AC;&#x153;Chemometrics and Intelligent Laboratory Systemsâ&#x20AC;?, Vol. 75, No. 2, 127â&#x20AC;&#x201C;136, 2005, DOI: 10.1016/j.chemolab.2004.06.003. 15. Smuts J.F., Hussey A., Requirements for successfully implementing and sustaining advanced control applications. Proceedings of the 54th ISA POWID Symposium, 89â&#x20AC;&#x201C;105, 2011.
36
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
16. Jelali M., Control performance management in industrial automation: assessment, diagnosis and improvement of control loop performance. Springer-Verlag, London 2013. 17. DomaĹ&#x201E;ski P.D., Non-Gaussian properties of the real industrial control error in SISO loops. Proceedings of the 19th International Conference on System Theory, Control and Computing, 877â&#x20AC;&#x201C;882, 2015, DOI: 10.1109/ICSTCC.2015.7321405. 18. Tatjewski P., Sterowanie zaawansowane obiektĂłw przemysĹ&#x201A;owych. IBUK Libra, 2016. 19. MathWorks. MATLAB Documentation. The MathWorks Inc., 1994â&#x20AC;&#x201C;2018. 20. Cajo R., Zhao S., Ionescu C.M., De Keyser R., Plaza D., Liu S., IMC based PID control applied to the benchmark PID18. â&#x20AC;&#x153;IFAC-PapersOnLineâ&#x20AC;?, Vol. 51, No. 4, 2018, 728â&#x20AC;&#x201C;732, DOI: 10.1016/j.ifacol.2018.06.210. 21. Spinner T., Srinivasan B., Rengaswamy R., Data-based automated diagnosis and iterative retuning of proportional-integral (PI) controllers. â&#x20AC;&#x153;Control Engineering Practiceâ&#x20AC;?, Vol. 29, 23â&#x20AC;&#x201C;41, 2014, DOI: 10.1016/j.conengprac.2014.03.005. 22. Hägglund T., Automatic detection of sluggish control loops. â&#x20AC;&#x153;Control Engineering Practiceâ&#x20AC;?, Vol. 7, No. 12, 1505â&#x20AC;&#x201C;1511, 1999, DOI: 10.1016/S0967-0661(99)00116-1.
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
med.
mscal
MSE
IAE
med.
mscal
MSE
IAE
med.
mscal
4,6029
2,2378
2,6354
2,1693
0,4538
0,7595
0,9985
1,1057
8
8
8
8
0,4569
0,7688
0,9844
1,1191
2,0021
1,2258
0,3704
0,5994
0,2697
0,2804
0,0046
0,0066
8
8
8
8
8
8
8
8
2,3836
1,2882
0,3246
0,5706
2,9242
1,3963
0,2951
0,5354
8
8
8
8
8
8
8
8
0,0143
0,0750
0,0779
0,0859
0,0938
0,2972
0,3488
0,3985
0,0162
0,0798
0,0698
0,0944
0,1145
0,3234
0,3278
0,4309
2,9848
1,4160
0,2829
0,5906
3,3737
1,5223
0,4490
0,8345
8
8
8
8
8
8
8
8
3,4629
1,5161
0,5403
0,7863
3,2850
1,5629
0,4409
0,9075
8
8
8
8
8
8
8
8
0,0101
0,0148
0,0006
0,0008
0,0101
0,0147
0,0005
0,0008
0,0130
0,0502
0,0312
0,0469
0,0132
0,0521
0,0320
0,0483
0,0102
0,0152
0,0006
0,0008
0,0101
0,0152
0,0007
0,0010
0,0128
0,0485
0,0288
0,0442
0,0128
0,0485
0,0288
0,0442
0,1106
0,0732
0,0010
0,0014
0,1471
0,1497
0,1120
0,1357
0,1222
0,1046
0,0251
0,0394
0,1571
0,1801
0,1260
0,1607
23. Visioli A., Method for proportional-integral controller tuning assessment. â&#x20AC;&#x153;Industrial & Engineering Chemistry Researchâ&#x20AC;?, Vol. 45, No. 8, 2741â&#x20AC;&#x201C;2747, 2006, DOI: 10.1021/ie0508482. 24. Salsbury T.I., A practical method for assessing the performance of control loops subject to random load changes. â&#x20AC;&#x153;Journal of Process Controlâ&#x20AC;?, Vol. 15, No. 4, 393â&#x20AC;&#x201C;405, 2005, DOI: 10.1016/j.jprocont.2004.08.004. 25. Zhao Y.M., Xie W.F., Tu X.W., Performance-based parameter tuning method of model-driven PID control systems. â&#x20AC;&#x153;ISA Transactionsâ&#x20AC;?, Vol. 51, No. 3, 393â&#x20AC;&#x201C;399, 2012, DOI: 10.1016/j.isatra.2012.02.005. 26. Zheng B., Analysis and auto-tuning of supply air temperature PI control in hot water heating systems. PhD thesis, Dissertation of University of Nebraska, 2007. 27. Yu Z., Wang J., Performance assessment of static leadlag feedforward controllers for disturbance rejection in PID control loops. â&#x20AC;&#x153;ISA Transactionsâ&#x20AC;?, Vol. 64, 67â&#x20AC;&#x201C;76, 2016, DOI: 10.1016/j.isatra.2016.04.016. 28. Horch A., A simple method for detection of stiction in control valves. â&#x20AC;&#x153;Control Engineering Practiceâ&#x20AC;?, Vol. 7, No. 10, 1221â&#x20AC;&#x201C;1231, 1999, DOI: 10.1016/S0967-0661(99)00100-8. 29. Howard R., Cooper D., A novel pattern-based approach for diagnostic controller performance monitoring. â&#x20AC;&#x153;Control Engineering Practiceâ&#x20AC;?, Vol. 18, No. 3, 279â&#x20AC;&#x201C;288, 2010, DOI: 10.1016/j.conengprac.2009.11.005.
30. Choudhury M.A.A.S., Shah S.L., Thornhill N.F., Diagnosis of poor control-loop performance using higher-order statistics. â&#x20AC;&#x153;Automaticaâ&#x20AC;?, Vol. 40, No. 10, 1719â&#x20AC;&#x201C;1728, 2004, DOI: 10.1016/j.automatica.2004.03.022. 31. Li Y., Oâ&#x20AC;&#x2122;Neill Z., Evaluating control performance on building HVAC controllers. International Building Performance Simulation Association, 962â&#x20AC;&#x201C;967, Hyderabad, India, 2015. 32. DomaĹ&#x201E;ski P.D., Statistical measures for proportionalâ&#x20AC;&#x201C;integralâ&#x20AC;&#x201C;derivative control quality: Simulations and industrial data. Proceedings of the Institution of Mechanical Engineers, Part I: Journal of Systems and Control Engineering, 232(4):428â&#x20AC;&#x201C;441, 2018. 33. Harris T.J., Assessment of closed loop performance. â&#x20AC;&#x153;Canadian Journal of Chemical Engineeringâ&#x20AC;?, Vol. 67, No. 5, 856â&#x20AC;&#x201C; 861, 1989, DOI: 10.1002/cjce.5450670519. 34. Meng Q.W., Gu J.Q., Zhong Z.F., Ch S., Niu Y.G., Control performance assessment and improvement with a new performance index. 25th Chinese Control and Decision Conference (CCDC), 4081â&#x20AC;&#x201C;4084, 2013. 35. Afshar Khamseh S., Khaki Sedigh A., Moshiri B., Fatehi A., Control performance assessment based on sensor fusion techniques. â&#x20AC;&#x153;Control Engineering Practiceâ&#x20AC;?, Vol. 49, 14â&#x20AC;&#x201C;28, 2016, DOI: 10.1016/j.conengprac.2016.01.008. 36. Salsbury T.I., Alcala C.F., Two new normalized EWMAbased indices for control loop performance assessment.
37
L L% "'. =L " $ ' $ ' ' L " "'. $g "
37.
38.
39.
40.
41.
42.
43.
44.
45. Knierim-Dietz N., Hanel L., Lehner J., Definition and verification of the control loop performance for different power plant types. Technical report, Institute of Combustion and Power Plant Technology, University of Stuttgart, 2012. 46. Borak S., Misiorek A., Weron R., Models for heavy-tailed asset returns. [In:] Cizek P., Härdle, W. K., Weron R. (eds), Statistical tools for finance and insurance, 21â&#x20AC;&#x201C;56. Springer, New York, 2nd edition, 2011. 47. Koutrouvelis I.A., Regression-type estimation of the parameters of stable laws. â&#x20AC;&#x153;Journal of the American Statistical Associationâ&#x20AC;?, Vol. 75, No. 372, 918â&#x20AC;&#x201C;928, 1980, DOI: 10.2307/2287182. 48. Peters E.E., Teoria chaosu a rynki kapitaĹ&#x201A;owe. WIG Press, Warszawa, 1997. 49. Spinner T., Srinivasan B., Rengaswamy R., Data-based automated diagnosis and iterative retuning of proportional-integral (PI) controllers. â&#x20AC;&#x153;Control Engineering Practiceâ&#x20AC;?, Vol. 29, 23â&#x20AC;&#x201C;41, 2014, DOI: 10.1016/j.conengprac.2014.03.005. 50. BENCHMARK PID 2018, Benchmark for PID control of refrigeration systems based on vapour compression (version: july 2017). [http://servidor.dia.uned.es/~fmorilla/benchmarkPID2018]. Accessed: 2019-05-05. 51. Bejarano G., Alfaya J.A., Rodriguez D., Morilla F., Ortega M.G., Benchmark for PID control of refrigeration systems based on vapour compression. â&#x20AC;&#x153;IFAC-PapersOnLineâ&#x20AC;?, Vol. 51, No. 4, 497â&#x20AC;&#x201C;502, 2018, DOI: 10.1016/j.ifacol.2018.06.144. 52. Pudlik W., Termodynamika, wydanie III â&#x20AC;&#x201C; cyfrowe. [pbc.gda.pl/Content/4098/pbc_termodynamika.pdf]. Accessed: 2019-05-05.
2015 American Control Conference (ACC), 962â&#x20AC;&#x201C;967, 2015, DOI: 10.1109/ACC.2015.7170858. Shardt Y., Zhao Y., Qi F., Lee K., Yu X., Huang B., Shah S., Determining the state of a process control system: Current trends and future challenges. â&#x20AC;&#x153;The Canadian Journal of Chemical Engineeringâ&#x20AC;?, Vol. 90, No. 2, 217â&#x20AC;&#x201C;245, 2012, DOI: 10.1002/cjce.20653. Schlegel M., Skarda R., Cech M., Running discrete Fourier transform and its applications in control loop performance assessment. 2013 International Conference on Process Control (PC), 113â&#x20AC;&#x201C;118, 2013, DOI: 10.1109/PC.2013.6581393. Nesic Z., Dumont G.A., Davies M.S., Brewster D., CD control diagnostics using a wavelet toolbox. Proceedings CD Symposium, IMEKO, Vol. XB, 120â&#x20AC;&#x201C;125, 1997. Lynch C.B., Dumont G.A., Control loop performance monitoring. â&#x20AC;&#x153;IEEE Transactions on Control Systems Technologyâ&#x20AC;?, Vol. 4, No. 2, 185â&#x20AC;&#x201C;192, 1996. Zhou Y.F., Wan F., A neural network approach to control performance assessment. â&#x20AC;&#x153;International Journal of Intelligent Computing and Cyberneticsâ&#x20AC;?, Vol. 1, No. 4, 617â&#x20AC;&#x201C;633, 2008, DOI: 10.1108/17563780810919159. Pillay N., Govender P., A data driven approach to performance assessment of PID controllers for setpoint tracking. â&#x20AC;&#x153;Procedia Engineeringâ&#x20AC;?, Vol. 69, 1130â&#x20AC;&#x201C;1137, 2014 DOI: 10.1016/j.proeng.2014.03.101. DomaĹ&#x201E;ski P.D., Non-Gaussian and persistence measures for control loop quality assessment. â&#x20AC;&#x153;Chaosâ&#x20AC;?, 322(043105), 2016, DOI: 10.1063/1.4946772. Zhang J., Jiang M., Chen J., Minimum entropy-based performance assessment of feedback control loops subjected to non-Gaussian disturbances. â&#x20AC;&#x153;Journal of Process Controlâ&#x20AC;?, Vol. 24, No. 11, 1660â&#x20AC;&#x201C;1670, 2015, DOI: 10.1016/j.jprocont.2014.08.003.
- U 0 4 A - 6 & 0 A E V 0 - 8 6 & T Abstract: Control quality is a crucial issue in modern industry. The engineerâ&#x20AC;&#x2122;s goal is to set control parameters and assess it constantly in order to maximize the efficiency of the process and watch the condition of actuators. The article describes a number of Control Performance Assessment indexes. They are applied to two tasks: controller tuning and the assessment of the quality of an already tuned control strategy. It presents a comparison between different indexes applied to various structures of the PID control algorithm. Finally the results are compared with Model Predictive Control. The analysis uses well known nonlinear industrial benchmark of a refrigeration system based on vapour compression. Keywords\ 0 - 8 $ 06E$ "0 $ S T $ LP
38
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
% C "
% C ! E
&X/ A %
/ %A
8/ 8 L / ? # & B J 6 - 0 # ? . & 66 / . & A 9
8/ 8 L / # & B J 6 - 0 # . & 66 / . & A & 9 A 9
< = % ) ) F & % & ORCID: 0000-0003-4053-3330 6 K $ & 6 8 6 - # & B J 6 - ? 0 # 0 . ? & . Y ? A / . . ? &9 ? & ? &
39
NR 3/2015
40
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 41â&#x20AC;&#x201C;54, DOI: 10.14313/PAR_233/41
*+ " +
, " - " . , / / ! 01 $ ÄśČŚÉ Ć&#x17E;Ë&#x2DC;Ç&#x201D;ȧÇ&#x201D;ĆŹĘ Ë&#x2DC; °Ĺ&#x2DC;Ę&#x160;ÉĄĘ Ë&#x2DC;Ĺ&#x2DC;Ç&#x2DC;Ć&#x2122; ÄśÉ Ç&#x2013;Ć&#x2039;Ç&#x201D;ĆŹĆ&#x2039;Ç&#x2019; Ä&#x192;Ë&#x2DC;ËżČÇ&#x2DC;Ç&#x201D;ĆŹËšÇ&#x201D;Ć&#x2039;Ë&#x2DC;Ć&#x2122; Ă&#x20AC;Ĺ&#x2DC;Ć&#x2039;Ç&#x201D;ĆŹÇ&#x2013; Ä&#x192;Ç&#x153;ĆŹÇ&#x152;Ĺ&#x2DC;ČŽĆ&#x2039;Ë&#x2DC;ËżÇ&#x2DC;Ć&#x2122; ÄśÉ Ç&#x2013;Ć&#x2039;Ç&#x201D;ĆŹĆ&#x2039;Ç&#x2019; <Ë Ć&#x17E;ĆŹÇ&#x2DC;Ć&#x2122; Ă&#x20AC;Ĺ&#x2DC;Ç&#x2DC;Ę&#x160;˿ȧ hÇ&#x201D;ǡĹ&#x2DC;Ç&#x153;Ć&#x2122; Ă&#x20AC;Ĺ&#x2DC;Ć&#x2039;Ç&#x201D;ĆŹÇ&#x2013; ÄśÇ&#x201E;ǡÇ&#x201D;ĆŹĘ ĆŹÇ&#x2DC;Ć&#x2122; <Ĺ&#x2DC;ËšÇ&#x201D;Ć&#x17E; Ä&#x192;ĆŹĘ ĆŹĆ&#x17E;˿ȎĘ&#x160;Ç&#x2DC;Ç&#x201D;Ć&#x2122; ,ĆŹË&#x2DC;Ĺ&#x2DC;Ę Ëż Ĺ&#x17D;Ç&#x201D;ĆŹÇ&#x161;Ç&#x201D;ČŽĘ&#x160;Ç&#x2DC;Ç&#x201D; .
2 2 " 3
4
5 , 5 * 5 , 6 - $%7$( 8))% 2
Ä&#x192;Ç&#x153;Ę ĆŹĘ&#x160;Ë&#x2DC;Ć&#x2039;Ë&#x2DC;ĆŹČÇ&#x201D;ĆŹĆ&#x2022; Ten dwuczÄ&#x2122;Ĺ&#x203A;ciowy artykuĹ&#x201A; przedstawia interfejs do Narodowej Platformy CyberbezpieczeĹ&#x201E;stwa (NPC). Wykorzystuje on gesty i komendy wydawane gĹ&#x201A;osem do sterowania pracÄ&#x2026; platformy. Ta czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; artykuĹ&#x201A;u przedstawia strukturÄ&#x2122; interfejsu oraz sposĂłb jego dziaĹ&#x201A;ania, ponadto prezentuje zagadnienia zwiÄ&#x2026;zane z jego implementacjÄ&#x2026;. Do specyfikacji interfejsu wykorzystano podejĹ&#x203A;cie oparte na agentach upostaciowionych, wykazujÄ&#x2026;c Ĺźe podejĹ&#x203A;cie to moĹźe byÄ&#x2021; stosowane do tworzenia nie tylko systemĂłw robotycznych, do czego byĹ&#x201A;o wykorzystywane wielokrotnie uprzednio. Aby dostosowaÄ&#x2021; to podejĹ&#x203A;cie do agentĂłw, ktĂłre dziaĹ&#x201A;ajÄ&#x2026; na pograniczu Ĺ&#x203A;rodowiska fizycznego i cyberprzestrzeni, naleĹźaĹ&#x201A;o ekran monitora potraktowaÄ&#x2021; jako czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; Ĺ&#x203A;rodowiska, natomiast okienka i kursory potraktowaÄ&#x2021; jako elementy agentĂłw. W konsekwencji uzyskano bardzo przejrzystÄ&#x2026; strukturÄ&#x2122; projektowanego systemu. CzÄ&#x2122;Ĺ&#x203A;Ä&#x2021; druga tego artykuĹ&#x201A;u przedstawia algorytmy wykorzystane do rozpoznawania mowy i mĂłwcĂłw oraz gestĂłw, a takĹźe rezultaty testĂłw tych algorytmĂłw. - " . , / / ! !
/ !
+ 9 !
!
9
1. Wprowadzenie Termin cyberbezpieczeĹ&#x201E;stwo odnosi siÄ&#x2122; do zbioru zagadnieĹ&#x201E; zwiÄ&#x2026;zanych z zapewnieniem bezpieczeĹ&#x201E;stwa uĹźytkowania sieci komputerowych, a w szczegĂłlnoĹ&#x203A;ci Internetu. Dotyczy on zabezpieczenia infrastruktury sieciowej uĹźywanej przez agendy paĹ&#x201E;stwa, prywatne korporacje oraz indywidualnych uĹźytkownikĂłw przed cyberatakami. DziaĹ&#x201A;ania zwiÄ&#x2026;zane z cyberbezpieczeĹ&#x201E;stwem przede wszystkim koncentrujÄ&#x2026; siÄ&#x2122; na zapobieganiu cyberatakom, ale jeĹźeli one juĹź nastÄ&#x2026;piÄ&#x2026;, to na maksymalnym ograniczeniu ich skutkĂłw. Podstawowym celem jest zapobieganie wyciekom danych oraz udaremnianie atakĂłw polegajÄ&#x2026;cych na uniemoĹźliwianiu realizacji usĹ&#x201A;ug dostarczanych przez sieÄ&#x2021;. StopieĹ&#x201E; zaleĹźnoĹ&#x203A;ci wspĂłĹ&#x201A;czesnych paĹ&#x201E;stw od systemĂłw teleinformatycznych osiÄ&#x2026;gnÄ&#x2026;Ĺ&#x201A; taki poziom, Ĺźe przypadkowe lub zamierzone uszkodzenie tej infrastruktury moĹźe pociÄ&#x2026;gnÄ&#x2026;Ä&#x2021; za sobÄ&#x2026;
! " !
" $% & ' $( ! " " $) ( ' $(
katastrofalne skutki. Dlatego potrzebne sÄ&#x2026; narzÄ&#x2122;dzia sĹ&#x201A;uĹźÄ&#x2026;ce wykrywaniu, zapobieganiu oraz minimalizacji skutkĂłw dziaĹ&#x201A;aĹ&#x201E; naruszajÄ&#x2026;cych bezpieczeĹ&#x201E;stwo infrastruktury teleinformatycznej istotnej dla funkcjonowania paĹ&#x201E;stwa oraz jego obywateli. W tym celu tworzona jest Narodowa Platforma CyberbezpieczeĹ&#x201E;stwa (NPC), ktĂłra umoĹźliwi bieĹźÄ&#x2026;ce monitorowanie funkcjonowania sieci oraz zapewni koordynacjÄ&#x2122; w skali kraju dziaĹ&#x201A;aĹ&#x201E; sĹ&#x201A;uĹźÄ&#x2026;cych wykrywaniu i zapobieganiu niepoĹźÄ&#x2026;danym sytuacjom w cyberprzestrzeni. Mowa tutaj o sieciach wykorzystujÄ&#x2026;cych protokoĹ&#x201A;y TCP/IP, mobilnych sieciach bezprzewodowych, sieciach tworzÄ&#x2026;cych Internet Rzeczy (IoT) oraz sieciach automatyki przemysĹ&#x201A;owej. Narodowe centra cyberbezpieczeĹ&#x201E;stwa powstaĹ&#x201A;y w wiÄ&#x2122;kszoĹ&#x203A;ci paĹ&#x201E;stw wysokorozwiniÄ&#x2122;tych, np. w Wielkiej Brytanii, USA czy Holandii [1â&#x20AC;&#x201C;3]. Ich zadaniem jest monitorowanie, gromadzenie i analiza danych o podatnoĹ&#x203A;ciach, zagroĹźeniach i naruszeniach cyberbezpieczeĹ&#x201E;stwa oraz zapobieganie cyberatakom i reagowanie na incydenty na poziomie paĹ&#x201E;stwa. PrzykĹ&#x201A;adem systemu monitorowania bezpieczeĹ&#x201E;stwa sieci jest prototypowy system SEQUESTOR zainstalowany w Pacific Northwest National Laboratory (USA) [5]. System korzysta z wielu ĹşrĂłdeĹ&#x201A; danych, w tym programĂłw antywirusowych, narzÄ&#x2122;dzi sieciowych, analizy zdarzeĹ&#x201E; systemowych i ruchu sieciowego. Integracja danych z tak róşnorodnych ĹşrĂłdeĹ&#x201A; stanowi prawdziwe wyzwanie projektowe. SzczegĂłlnie istotna jest czytelna prezentacja tych danych, a to siÄ&#x2122; Ĺ&#x201A;Ä&#x2026;czy bezpoĹ&#x203A;rednio ze sterowaniem przez operatorĂłw sys-
41
!" #$
temu, jak dane majÄ&#x2026; byÄ&#x2021; przedstawione. Kompleksowa analiza pracy sieci wymaga wykrywania korelacji zachodzÄ&#x2026;cych zdarzeĹ&#x201E;, analizy sytuacyjnej oraz dynamicznej i statycznej analizy ryzyka. Aby narzÄ&#x2122;dzie do takiej analizy byĹ&#x201A;o uĹźyteczne, potrzebne sÄ&#x2026; odpowiednie metody i techniki do wizualizacji wielowymiarowych danych [29, 30]. W systemie SEQUESTOR wizualizacja danych zostaĹ&#x201A;a zorganizowana za pomocÄ&#x2026; SEQViz [5]. Dane sÄ&#x2026; przedstawiane graficznie w postaci dwĂłch skoordynowanych widokĂłw: ogĂłlnego widoku sieci (w postaci grafu) oraz widoku modelu behawioralnego. Modele sÄ&#x2026; wzorcami anomalii, czyli zachowaĹ&#x201E; wskazujÄ&#x2026;cych na potencjalne zagroĹźenie lub atak. Aby wspomĂłc analitykĂłw sieci w wykrywaniu wzorcĂłw w danych dotyczÄ&#x2026;cych dziaĹ&#x201A;ania sieci i wykrywaniu anomalii opracowano panel BubbleNet do ich wizualizacji [21]. Panel ten przedstawia dane w róşnych widokach: widoku lokalizacji w postaci mapy z przestrzennÄ&#x2026; informacjÄ&#x2026; zakodowanÄ&#x2026; z uĹźyciem tzw. pseudo-kartogramĂłw Dorlinga [7], widoku czasowego w postaci wykresĂłw sĹ&#x201A;upkowych oraz widoku atrybutĂłw przedstawiajÄ&#x2026;cych graficznie róşne atrybuty danych. W pracy [12] przedstawiono wizualny system interaktywny do wykrywania anomalii w danych czasoprzestrzennych zebranych z róşnych ĹşrĂłdeĹ&#x201A; danych strumieniowych. Interaktywny interfejs graficzny uĹźytkownika tego systemu skĹ&#x201A;ada siÄ&#x2122; z oĹ&#x203A;miu gĹ&#x201A;Ăłwnych widokĂłw, w tym makro- i mikromapy, widoku czasowego wzorca oraz widoku inspekcji cech. UĹźytkownik za pomocÄ&#x2026; myszki moĹźe wybraÄ&#x2021; obszar na makromapie i wyĹ&#x203A;wietliÄ&#x2021; na mikromapie listÄ&#x2122; anomalii wykrytych dla tego obszaru. MoĹźe rĂłwnieĹź wykonaÄ&#x2021; operacje powiÄ&#x2122;kszania i przesuwania oraz zmiany trybu wyĹ&#x203A;wietlania na obu mapach. System VisIDAC [32] umoĹźliwia w czasie rzeczywistym wizualizacje 3D danych o zdarzeniach dotyczÄ&#x2026;cych cyberbezpieczeĹ&#x201E;stwa, zebranych przez systemy wykrywania wĹ&#x201A;amaĹ&#x201E; zainstalowane w róşnych sieciach. Dane o zdarzeniach sÄ&#x2026; wyĹ&#x203A;wietlane w postaci graficznej na trzech panelach: dla wejĹ&#x203A;ciowego, wyjĹ&#x203A;ciowego i docelowego ruchu sieciowego. W celu Ĺ&#x201A;atwego rozróşnienia rodzajĂłw zdarzeĹ&#x201E; sÄ&#x2026; stosowane róşne ksztaĹ&#x201A;ty i kolory. Opracowanie systemu do monitorowania sieci pod kÄ&#x2026;tem jej cyberbezpieczeĹ&#x201E;stwa pociÄ&#x2026;ga za sobÄ&#x2026; koniecznoĹ&#x203A;Ä&#x2021; stworzenia wielomodalnego interfejsu operatora umoĹźliwiajÄ&#x2026;cego mu inteligentne sterowanie obrazowaniem zjawisk zachodzÄ&#x2026;cych w cyberprzestrzeni. Niniejszy artykuĹ&#x201A; poĹ&#x203A;wiÄ&#x2122;cony jest opisowi takiego interfejsu, ktĂłry umoĹźliwia sterowanie zobrazowaniem za pomocÄ&#x2026; gĹ&#x201A;osu i gestĂłw operatora. Gesty tworzone sÄ&#x2026; przez operatora â&#x20AC;&#x201C; ruchy sylwetki, rÄ&#x2026;k i gĹ&#x201A;owy. Oprogramowanie do rozpoznawania mowy i weryfikacji mĂłwcy zapewnia bezpieczny sposĂłb zadawania komend gĹ&#x201A;osowych przez uprzywilejowanego operatora systemu obrazowania. Prace badawcze poĹ&#x203A;wiÄ&#x2122;cone wielomodalnym interfejsom czĹ&#x201A;owiek-komputer sÄ&#x2026; prowadzone od ponad 40 lat [15, 16, 23, 33]. Celem tych badaĹ&#x201E; jest opracowanie metod i technik interakcji ludzi z komputerem w peĹ&#x201A;ni wykorzystujÄ&#x2026;cych sposoby naturalnej komunikacji i interakcji czĹ&#x201A;owieka z otoczeniem. Interfejsy wielomodalne charakteryzujÄ&#x2026; siÄ&#x2122; dwiema podstawowymi cechami: Ĺ&#x201A;Ä&#x2026;czeniem wielu typĂłw danych oraz przetwarzaniem tych danych w czasie rzeczywistym przy okreĹ&#x203A;lonych ograniczeniach czasowych [15]. SposĂłb prezentacji operatorowi oraz analitykom zebranych danych o dziaĹ&#x201A;aniu sieci w istotny sposĂłb wpĹ&#x201A;ywa na efektywnoĹ&#x203A;Ä&#x2021; ich pracy. Wielomodalny interfejs umoĹźliwia im dostosowanie sposobu prezentacji do ich wymagaĹ&#x201E;. Sterowanie prezentacjÄ&#x2026; danych za pomocÄ&#x2026; komend gĹ&#x201A;osowych i gestĂłw umoĹźliwia obsĹ&#x201A;ugÄ&#x2122; systemu przez osoby, ktĂłre nie zostaĹ&#x201A;y specjalnie do tego przeszkolone, a co wiÄ&#x2122;cej, uĹ&#x201A;atwia prezentacjÄ&#x2122; stanu sieci osobom podejmujÄ&#x2026;cym decyzje, ktĂłre nie muszÄ&#x2026; byÄ&#x2021; zaznajomione ze sposobem dziaĹ&#x201A;ania interfejsu. Do codziennej obsĹ&#x201A;ugi systemu przez przeszkolony personel uĹźywane bÄ&#x2122;dÄ&#x2026; standardowe
42
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
urzÄ&#x2026;dzenia wejĹ&#x203A;ciowe, takie jak klawiatury i myszki. Ponadto interfejs umoĹźliwia rozpoznanie mĂłwcy i automatycznÄ&#x2026; jego autoryzacjÄ&#x2122; w systemie. Ten artykuĹ&#x201A; poĹ&#x203A;wiÄ&#x2122;cony jest sposobowi tworzenia interfejsu do Narodowej Platformy CyberbezpieczeĹ&#x201E;stwa (NPC), ale sposĂłb ten moĹźe byÄ&#x2021; wykorzystany takĹźe do budowy innych interfejsĂłw. OgĂłlne metody tworzenia oprogramowania sÄ&#x2026; okreĹ&#x203A;lone przez inĹźynieriÄ&#x2122; oprogramowania [28]. NiewÄ&#x2026;tpliwie naleĹźy siÄ&#x2122; do nich stosowaÄ&#x2021;, ale konkretne systemy majÄ&#x2026; swojÄ&#x2026; specyfikÄ&#x2122;, ktĂłra rĂłwnieĹź wpĹ&#x201A;ywa na architekturÄ&#x2122; powstajÄ&#x2026;cego oprogramowania. Interfejs stanowi styk miÄ&#x2122;dzy otoczeniem fizycznym, w ktĂłrym znajduje siÄ&#x2122; operator, a platforma NPC. Podobne cechy majÄ&#x2026; systemy robotyczne, ktĂłre takĹźe operujÄ&#x2026; w Ĺ&#x203A;rodowisku fizycznym, z jednej strony wpĹ&#x201A;ywajÄ&#x2026;c na nie, a z drugiej pozyskujÄ&#x2026;c z niego informacje. Podobnie interfejs oddziaĹ&#x201A;uje na operatora, z jednej strony przekazujÄ&#x2026;c mu niezbÄ&#x2122;dne dane, a z drugiej pozyskuje od niego informacje, jak konkretnie ma platforma zaprezentowaÄ&#x2021; zebrane dane. Dlatego postanowiono skorzystaÄ&#x2021; z bogatego doĹ&#x203A;wiadczenia w konstrukcji systemĂłw sterowania robotami i zastosowaÄ&#x2021; podejĹ&#x203A;cie wykorzystujÄ&#x2026;ce agenty upostaciowione [37â&#x20AC;&#x201C;40] zarĂłwno do specyfikacji jak i implementacji interfejsu. Prezentacja tej metody zastosowanej do budowy interfejsu jest gĹ&#x201A;Ăłwnym celem tego artykuĹ&#x201A;u.
W procesie projektowania systemu pierwszym krokiem jest jego wyodrÄ&#x2122;bnienie ze Ĺ&#x203A;rodowiska. Tutaj system stanowiÄ&#x2026; platforma NPC wraz z przedstawianym tu interfejsem do niej. ZaĹ&#x201A;oĹźono, Ĺźe kontakt operatora z systemem bÄ&#x2122;dzie najbardziej naturalny, jeĹźeli bÄ&#x2122;dzie siÄ&#x2122; moĹźna z nim porozumiewaÄ&#x2021; tak, jak ludzie porozumiewajÄ&#x2026; siÄ&#x2122; ze sobÄ&#x2026;, a wiÄ&#x2122;c za pomocÄ&#x2026; gĹ&#x201A;osu i gestĂłw. Dlatego interfejs NPC wyposaĹźono w kamery i mikrofony. Ponadto operator w procesie powoĹ&#x201A;ywania systemu do Ĺźycia musi go skonfigurowaÄ&#x2021;, a nastÄ&#x2122;pnie nim administrowaÄ&#x2021;. W tym celu uĹźywa standardowych urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;ciowych komputera, takich jak myszka, klawiatura czy ekran dotykowy (touchpad). Informacja zwrotna wytwarzana przez system przedstawiana jest na ekranie monitora, a konkretnie w okienkach pojawiajÄ&#x2026;cych siÄ&#x2122; na nim, a ponadto interakcja nastÄ&#x2122;puje za pomocÄ&#x2026; kursorĂłw przemieszczanych po ekranie. PrzyjÄ&#x2122;to, Ĺźe operator dziaĹ&#x201A;a w Ĺ&#x203A;rodowisku fizycznym rozszerzonym o ekran monitora. System porozumiewa siÄ&#x2122; z operatorem za pomocÄ&#x2026; wymienionych urzÄ&#x2026;dzeĹ&#x201E; i okienek pojawiajÄ&#x2026;cych siÄ&#x2122; na ekranie. Z uwagi na fakt, Ĺźe dotychczas operator kontaktowaĹ&#x201A; siÄ&#x2122; z platformÄ&#x2026; NPC za pomocÄ&#x2026; urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;ciowych, takich jak: ekrany dotykowe, myszki lub klawiatury, przyjÄ&#x2122;to iĹź interfejs bÄ&#x2122;dzie przeksztaĹ&#x201A;caĹ&#x201A; komendy gĹ&#x201A;osowe i te wydawane za pomocÄ&#x2026; gestĂłw do formatu komend wprowadzanych z urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;ciowych. Gesty zwiÄ&#x2026;zane sÄ&#x2026; z ruchem rÄ&#x2026;k, a wiÄ&#x2122;c obrazy uzyskiwane z kamer muszÄ&#x2026; byÄ&#x2021; zbierane z dostatecznie duĹźÄ&#x2026; czÄ&#x2122;stotliwoĹ&#x203A;ciÄ&#x2026;. PrzyjÄ&#x2122;to, Ĺźe przetwarzanie zarĂłwno obrazĂłw jak i mowy powinno byÄ&#x2021; na tyle szybkie, by dla operatora czas miÄ&#x2122;dzy wydaniem komendy a inicjacjÄ&#x2026; jej wykonywania byĹ&#x201A; niezauwaĹźalny. W analizie mowy powstaje opóźnienie miÄ&#x2122;dzy zakoĹ&#x201E;czeniem wypowiadania komendy a wynikiem analizy. PrzyjÄ&#x2122;to, Ĺźe dopuszczalne opóźnienie wynosi 1 s, gdyĹź po zakoĹ&#x201E;czeniu wypowiedzi trzeba odczekaÄ&#x2021;, aby zdecydowaÄ&#x2021;, czy pojawi siÄ&#x2122; pauza czy wypowiedĹş bÄ&#x2122;dzie kontynuowana. Na to potrzeba okoĹ&#x201A;o 200 ms, a do tego dochodzi jeszcze czas analizy polecenia. W przypadku przetwarzania obrazu uĹźytkownik wspĂłĹ&#x201A;pracuje duĹźo Ĺ&#x203A;ciĹ&#x203A;lej z systemem â&#x20AC;&#x201C; sterujÄ&#x2026;c poĹ&#x201A;oĹźeniem kursora oczekuje duĹźo szybszych reakcji i ciÄ&#x2026;gĹ&#x201A;oĹ&#x203A;ci jego przemieszczania. Z tego wzglÄ&#x2122;du przyjÄ&#x2122;to, Ĺźe A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
%$ & %$ ' ($ ' %$ ) ($ * ($ % )$ ' $ +
analiza obrazu powinna odbywaÄ&#x2021; siÄ&#x2122; z szybkoĹ&#x203A;ciÄ&#x2026; co najmniej 20 klatek na sekundÄ&#x2122;, natomiast opóźnienie reakcji nie powinno byÄ&#x2021; wiÄ&#x2122;ksze niĹź 100 ms. Struktura interfejsu operatora musi byÄ&#x2021; dostosowana do wyĹźej sformuĹ&#x201A;owanych wymagaĹ&#x201E;. PoniewaĹź interfejs jest konfigurowany za pomocÄ&#x2026; standardowych urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;ciowych komputera lub pobudzany do dziaĹ&#x201A;ania przez operatora wydajÄ&#x2026;cego komendy gĹ&#x201A;osowe lub gestykulacje, a ponadto oddziaĹ&#x201A;uje na operatora wyĹ&#x203A;wietlajÄ&#x2026;c dane, moĹźna jego strukturÄ&#x2122; okreĹ&#x203A;liÄ&#x2021; za pomocÄ&#x2026; agentĂłw upostaciowionych [18, 36], ktĂłre realizujÄ&#x2026; swoje zadanie zbierajÄ&#x2026;c dane z otoczenia za pomocÄ&#x2026; receptorĂłw, by przeksztaĹ&#x201A;ciÄ&#x2021; je na oddziaĹ&#x201A;ywania na to otoczenie za pomocÄ&#x2026; efektorĂłw. NaleĹźy jedynie adekwatnie zdefiniowaÄ&#x2021; receptory i efektory interfejsu. Dotychczas agenty upostaciowione byĹ&#x201A;y wykorzystywane do tworzenia systemĂłw sterowania systemami robotycznymi [37â&#x20AC;&#x201C; 40]. Niniejszy artykuĹ&#x201A; pokazuje ich uĹźytecznoĹ&#x203A;Ä&#x2021; w projektowaniu systemĂłw, ktĂłre nie sÄ&#x2026; zwiÄ&#x2026;zane z robotykÄ&#x2026;.
! W klasycznym podejĹ&#x203A;ciu agent definiowany jest jako twĂłr dziaĹ&#x201A;ajÄ&#x2026;cy autonomicznie, postrzegajÄ&#x2026;cy swoje Ĺ&#x203A;rodowisko, majÄ&#x2026;cy charakter trwaĹ&#x201A;y, a ponadto majÄ&#x2026;cy zdolnoĹ&#x203A;Ä&#x2021; do dostosowywania siÄ&#x2122; do zmian w swoim Ĺ&#x203A;rodowisku, a co wiÄ&#x2122;cej mogÄ&#x2026;cy przejÄ&#x2026;Ä&#x2021; cel innego agenta [26]. Niemniej jednak tutaj przyjÄ&#x2122;to definicjÄ&#x2122; bardziej zwiÄ&#x2122;zĹ&#x201A;Ä&#x2026;, a jednoczeĹ&#x203A;nie ogĂłlniejszÄ&#x2026;. PrzyjÄ&#x2122;to, Ĺźe agent jest tworem dÄ&#x2026;ĹźÄ&#x2026;cym do realizacji zadania, postrzegajÄ&#x2026;cym swoje Ĺ&#x203A;rodowisko i wpĹ&#x201A;ywajÄ&#x2026;cym racjonalnie na nie. Zadanie stanowi wewnÄ&#x2122;trzny imperatyw agenta do dziaĹ&#x201A;ania. Jest ono realizowane w Ĺ&#x203A;rodowisku, zgodnie z aktualnie panujÄ&#x2026;cymi w nim warunkami, dziÄ&#x2122;ki informacji uzyskiwanej z otoczenia. Tam gdzie Ĺ&#x203A;rodowisko ma charakter fizyczny, agent oddziaĹ&#x201A;uje na nie przez swoje efektory i postrzega je za pomocÄ&#x2026; swoich receptorĂłw. Agent dziaĹ&#x201A;ajÄ&#x2026;cy w fizycznym otoczeniu musi mieÄ&#x2021; fizycznÄ&#x2026; powĹ&#x201A;okÄ&#x2122; (postaÄ&#x2021;), by na nie oddziaĹ&#x201A;ywaÄ&#x2021;. W zwiÄ&#x2026;zku z tym zwykĹ&#x201A;o siÄ&#x2122; go zwaÄ&#x2021; agentem upostaciowionym [18, 36]. Agentowa struktura systemu bÄ&#x2122;dzie okreĹ&#x203A;lona dalej. Tutaj wystarczy zauwaĹźyÄ&#x2021;, Ĺźe dziaĹ&#x201A;ania operatora dziaĹ&#x201A;ajÄ&#x2026;cego w Ĺ&#x203A;rodowisku rejestrowane sÄ&#x2026; za pomocÄ&#x2026; takich receptorĂłw jak kamery czy mikrofony, natomiast system NPC oddziaĹ&#x201A;uje na operatora, traktowanego jako element otoczenia, poprzez okienka oraz kursory pojawiajÄ&#x2026;ce siÄ&#x2122; na obrazie wyĹ&#x203A;wietlanym na ekranie monitora, a wiÄ&#x2122;c zarĂłwno okienka jak i kursory mogÄ&#x2026; byÄ&#x2021; traktowane jako efektory. WewnÄ&#x2122;trznym imperatywem systemu jest rozpoznawanie komend operatora i przeksztaĹ&#x201A;canie ich w odpowiednie zobrazowanie danych. Wykorzystanie agentĂłw do okreĹ&#x203A;lenia struktury systemu ma tÄ&#x2122; zaletÄ&#x2122;, Ĺźe moĹźna uĹźyÄ&#x2021; formalnej notacji, opracowanej specjalnie do opisu zarĂłwno struktur systemĂłw, jak i sposobĂłw ich dziaĹ&#x201A;ania. GĹ&#x201A;Ăłwne elementy tej notacji zostanÄ&#x2026; opisane poniĹźej. Agent aj, gdzie j jest jego oznaczeniem, skĹ&#x201A;ada siÄ&#x2122; z: efektorĂłw rzeczywistych Ej oddziaĹ&#x201A;ujÄ&#x2026;cych na Ĺ&#x203A;rodowisko (w przypadku interfejsu NPC sÄ&#x2026; to okienka oraz kursory pojawiajÄ&#x2026;ce siÄ&#x2122; na ekranie monitora), rzeczywistych receptorĂłw Rj (Ĺ&#x203A;ciĹ&#x203A;le mĂłwiÄ&#x2026;c chodzi o eksteroceptory, gdyĹź proprioceptory sprzÄ&#x2122;Ĺźone sÄ&#x2026; bezpoĹ&#x203A;rednio z efektorami) zbierajÄ&#x2026;cych dane o stanie otoczenia oraz systemu sterowania Cj realizujÄ&#x2026;cego zadanie przez wpĹ&#x201A;ywanie na efektory na podstawie odczytĂłw uzyskiwanych z receptorĂłw (w interfejsie NPC sÄ&#x2026; nimi mikrofony i kamery). System sterowania Cj skĹ&#x201A;ada siÄ&#x2122; z trzech typĂłw podsystemĂłw: wirtualnych efektorĂłw ej, wirtualnych receptorĂłw rj oraz podsystemu sterowania cj. Agent moĹźe zawieraÄ&#x2021; wiele receptorĂłw rzeczywistych Rj,l i wiele receptorĂłw wirtualnych rj,k, gdzie l i k sÄ&#x2026; ich oznaczeniami. Podobnie w jego skĹ&#x201A;ad moĹźe wchodziÄ&#x2021; wiele efektorĂłw rzeczywistych Ej,m i wiele efektorĂłw wirtualnych ej,n, gdzie m i n sÄ&#x2026; ich oznaczeniami. Wirtualne efektory ej,n
aj cc
j
Tc x j,j
Tc y j,j
cj
ec y j,n
ec x j,n
rc y j,k
rc x j,k
ce x j,n
ce y j,n
cr x j,k
cr y j,k
ee
ej,n
rr
j,n
Ee y j,n
x Ej,m
Ee x j,n
y Ej,m
Ej,m
rj,k
j,k
Rr y j,k
x Rj,l
Rr x j,k
Rj,l
y Rj,l
Rys. 1. OgĂłlna struktura agenta upostaciowionego Fig. 1. General structure of an embodied agent
i receptory rj,k prezentujÄ&#x2026; podsystemowi sterowania cj urzÄ&#x2026;dzenia wykonawcze i Ĺ&#x203A;rodowisko w postaci wĹ&#x201A;aĹ&#x203A;ciwej do okreĹ&#x203A;lenia sposobu realizacji zadania â&#x20AC;&#x201C; w tym przypadku sÄ&#x2026; to polecenia dotyczÄ&#x2026;ce sposobu prezentacji wynikĂłw analizy, ktĂłre ma wykonaÄ&#x2021; platforma NPC. Wirtualne efektory dokonujÄ&#x2026; transformacji zĹ&#x201A;oĹźonych poleceĹ&#x201E; na elementarne rozkazy sterujÄ&#x2026;ce sprzÄ&#x2122;tem (w przypadku NPC sÄ&#x2026; to okienka i kursory), natomiast wirtualne receptory przeksztaĹ&#x201A;cajÄ&#x2026; odczyty z czujnikĂłw (w przypadku NPC sÄ&#x2026; to zapisy dĹşwiÄ&#x2122;ku i obrazy) na abstrakcyjne pojÄ&#x2122;cia niezbÄ&#x2122;dne do zwiÄ&#x2122;zĹ&#x201A;ego wyraĹźenia realizowanego zadania. Agenty mogÄ&#x2026; siÄ&#x2122; rĂłwnieĹź komunikowaÄ&#x2021; miÄ&#x2122;dzy sobÄ&#x2026;. Na rys. 1 przedstawiono wewnÄ&#x2122;trznÄ&#x2026; strukturÄ&#x2122; agenta upostaciowionego. Podsystemy agenta aj, a wiÄ&#x2122;c: podsystem sterowania cj, wirtualne efektory ej,n, wirtualne receptory rj,k, rzeczywiste efektory Ej,m i rzeczywiste receptory Rj,l (rys. 1), kontaktujÄ&#x2026; siÄ&#x2122; ze sobÄ&#x2026; przez bufory komunikacyjne. Bufory oznaczane sÄ&#x2026; przednim indeksem dolnym: x â&#x20AC;&#x201C; wejĹ&#x203A;ciowe, y â&#x20AC;&#x201C; wyjĹ&#x203A;ciowe, natomiast pamiÄ&#x2122;Ä&#x2021; wewnÄ&#x2122;trzna podsystemu pozbawiona jest takiego indeksu. GĂłrny lewy indeks przy oznaczeniu bufora okreĹ&#x203A;la typ podsystemu, z jakim ten bufor wspĂłĹ&#x201A;pracuje. Wszystkie podsystemy agenta dziaĹ&#x201A;ajÄ&#x2026; wedĹ&#x201A;ug tego samego wzorca [37â&#x20AC;&#x201C;40]. KaĹźdy zawiera automat skoĹ&#x201E;czony FSM (ang. Finite State Machine), z ktĂłrego stanami skojarzono zachowania. KaĹźde zachowanie jest sparametryzowane funkcjÄ&#x2026; przejĹ&#x203A;cia oraz warunkami koĹ&#x201E;cowymi i bĹ&#x201A;Ä&#x2122;du. Zachowanie jest powtarzane do momentu speĹ&#x201A;nienia dowolnego z wymienionych warunkĂłw. ZakoĹ&#x201E;czenie wykonania zachowania powoduje przejĹ&#x203A;cie automatu skoĹ&#x201E;czonego do stanu nastÄ&#x2122;pnego, ktĂłry jest wybierany na podstawie warunkĂłw poczÄ&#x2026;tkowych etykietujÄ&#x2026;cych Ĺ&#x201A;uki skierowane grafu automatu. CzynnoĹ&#x203A;ci zwiÄ&#x2026;zane z zachowaniem zaleĹźÄ&#x2026; od postaci funkcji przejĹ&#x203A;cia. Funkcja ta pobiera dane z buforĂłw wejĹ&#x203A;ciowych oraz pamiÄ&#x2122;ci wewnÄ&#x2122;trznej podsystemu i oblicza nowe wartoĹ&#x203A;ci dla buforĂłw wyjĹ&#x203A;ciowych oraz pamiÄ&#x2122;ci wewnÄ&#x2122;trznej. Zachowanie, oprĂłcz obliczenia funkcji przejĹ&#x203A;cia, zajmuje siÄ&#x2122; wczytaniem nowych wartoĹ&#x203A;ci do buforĂłw wejĹ&#x203A;ciowych oraz rozesĹ&#x201A;aniem danych z buforĂłw wyjĹ&#x203A;ciowych do innych podsystemĂłw.
43
!" #$
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
Rys. 2. Struktura systemu NPC Fig. 2. Structure of the NCP system
sposobu interakcji interfejsu z platformÄ&#x2026; NPC. UĹźytkownik moĹźe wydawaÄ&#x2021; polecenia albo za pomocÄ&#x2026; gĹ&#x201A;osu albo za pomocÄ&#x2026; gestĂłw, a wiÄ&#x2122;c istniejÄ&#x2026; dwa oddzielne ĹşrĂłdĹ&#x201A;a poleceĹ&#x201E;, a co za tym idzie dwa odrÄ&#x2122;bne moduĹ&#x201A;y je przetwarzajÄ&#x2026;ce: audio i wizyjny. NiezaleĹźnie od ĹşrĂłdĹ&#x201A;a, wydawane polecenia muszÄ&#x2026; wpĹ&#x201A;ywaÄ&#x2021; bezkonfliktowo na dziaĹ&#x201A;anie platformy NPC. Dlatego pojedynczy dysponent platformy, agregujÄ&#x2026;cy polecenia otrzymywane z róşnych ĹşrĂłdeĹ&#x201A;, jest optymalny â&#x20AC;&#x201C; jest nim moduĹ&#x201A; prezentacji. W konsekwencji powstaĹ&#x201A;a trĂłjmoduĹ&#x201A;owa struktura interfejsu. ModuĹ&#x201A; wizyjny sĹ&#x201A;uĹźy do przetwarzania poleceĹ&#x201E; wydawanych gestami, natomiast moduĹ&#x201A; audio zajmuje siÄ&#x2122; komendami wydawanymi gĹ&#x201A;osem i identyfikacjÄ&#x2026; mĂłwcy. ModuĹ&#x201A; prezentacji jest odpowiedzialny za agregacjÄ&#x2122; rozkazĂłw pochodzÄ&#x2026;cych z moduĹ&#x201A;Ăłw przetwarzajÄ&#x2026;cych polecenia uĹźytkownika (tzn. moduĹ&#x201A;Ăłw wizji i audio). Efektem dziaĹ&#x201A;ania tego moduĹ&#x201A;u jest selekcja polecenia operatora, ktĂłre ma byÄ&#x2021; przekazane platformie do realizacji. Opracowany interfejs umoĹźliwia wydawanie poleceĹ&#x201E; za pomocÄ&#x2026; gĹ&#x201A;osu i gestĂłw, ktĂłre muszÄ&#x2026; byÄ&#x2021; przetĹ&#x201A;umaczone na postaÄ&#x2021; akceptowanÄ&#x2026; przez platformÄ&#x2122;, czyli kody generowane przez tradycyjne urzÄ&#x2026;dzenia wejĹ&#x203A;ciowe (klawiatura, mysz, ekran dotykowy itp.). Odbywa siÄ&#x2122; to dwuetapowo. Wpierw moduĹ&#x201A;y wizyjny i audio zamieniajÄ&#x2026; odpowiednio gesty bÄ&#x2026;dĹş komendy gĹ&#x201A;osowe na ich identyfikatory, a nastÄ&#x2122;pnie moduĹ&#x201A; prezentacji zamienia te identyfikatory na kody poleceĹ&#x201E; wydawanych przez urzÄ&#x2026;dzenia wejĹ&#x203A;ciowe. Identyfikatory urzÄ&#x2026;dzeĹ&#x201E; w systemie operacyjnym komputera, w ktĂłrym uruchomiono interfejs, mogÄ&#x2026; siÄ&#x2122; zmieniaÄ&#x2021;. ModuĹ&#x201A;y audio i wizyjny odnoszÄ&#x2026; siÄ&#x2122; do typĂłw imitowanych urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;ciowych, natomiast moduĹ&#x201A; prezentacji chcÄ&#x2026;c wykonaÄ&#x2021; akcjÄ&#x2122; musi siÄ&#x2122; odwoĹ&#x201A;aÄ&#x2021; do identyfikatora konkretnego urzÄ&#x2026;dzenia obsĹ&#x201A;ugiwanego przez system operacyjny. Identyfikator ten jest zmienny i przez to musi byÄ&#x2021; dostarczony moduĹ&#x201A;owi prezentacji. Interfejs przekazuje prezentowanym oknom informacje o elementarnych zdarzeniach, np. dotyku i przesuniÄ&#x2122;ciu palca po ekranie. Informacja ma postaÄ&#x2021; generowana przez wspomniane urzÄ&#x2026;dzenia wejĹ&#x203A;ciowe. Sterownik okna interpretuje te elementarne zdarzenia (a dokĹ&#x201A;adniej sekwencje tych zdarzeĹ&#x201E;) powodujÄ&#x2026;c np. zoom lub obrĂłt. ZaĹ&#x201A;oĹźono, Ĺźe zbiĂłr moĹźliwych akcji uĹźytkownika (gestĂłw i komend gĹ&#x201A;osowych) jest ustalony (w przypadku gestĂłw) wzglÄ&#x2122;dnie ograniczony (w przypadku komend gĹ&#x201A;osowych) przez twĂłrcÄ&#x2122; systemu. Tablica asocjacji akcji, utworzona przez projektantĂłw systemu, moĹźe byÄ&#x2021; co najwyĹźej modyfikowana przez serwisanta systemu, aby ewentualnie lepiej dostosowaÄ&#x2021; konkretnÄ&#x2026; instalacjÄ&#x2122; systemu do potrzeb danego uĹźytkownika/administratora.
System NPC (rys. 2) skĹ&#x201A;ada siÄ&#x2122; z platformy, ktĂłra zbiera dane o aktywnoĹ&#x203A;ci w sieci, analizuje je i prezentuje wyniki, oraz z interfejsu, za pomocÄ&#x2026; ktĂłrego uĹźytkownik instruuje platformÄ&#x2122;, w jaki sposĂłb te wyniki powinny zostaÄ&#x2021; zaprezentowane. Aby mĂłc sterowaÄ&#x2021; prezentacjÄ&#x2026; wynikĂłw analizy, interfejs musi byÄ&#x2021; odpowiednio skonfigurowany i zarzÄ&#x2026;dzany. Tutaj skoncentrowano siÄ&#x2122; jedynie na sposobie konstrukcji interfejsu. Zawiera on trzy moduĹ&#x201A;y: prezentacji, wizyjny i audio. KaĹźdy moduĹ&#x201A; skomponowany jest z agentĂłw. Liczba moduĹ&#x201A;Ăłw wynika ze sposobu interakcji operatora z interfejsem oraz O
%! & $
P
Interfejs do systemu obrazowania informacji NPC odgrywa trzy role, w zaleĹźnoĹ&#x203A;ci od kategorii operatora, z ktĂłrym wchodzi w interakcje. UmoĹźliwia: â&#x2C6;&#x2019; uĹźytkownikowi (np. kierownikowi NPC) dogodne sterowanie wizualizacjÄ&#x2026; informacji tworzonej przez platformÄ&#x2122; NPC, â&#x2C6;&#x2019; serwisantowi konfiguracjÄ&#x2122; danej instalacji interfejsu, â&#x2C6;&#x2019; administratorowi systemu zarzÄ&#x2026;dzanie zasobami (danymi o gestach, osobach i komendach gĹ&#x201A;osowych) oraz tworzenie modeli: gestĂłw, komend gĹ&#x201A;osowych i uĹźytkownikĂłw. Role te zwiÄ&#x2026;zane sÄ&#x2026; z trzema róşnymi aspektami (trybami) pracy interfejsu: sterowanie, konfigurowanie, administrowanie (tworzenie modeli i zarzÄ&#x2026;dzanie danymi). UĹźytkownik za pomocÄ&#x2026; interfejsu zleca platformie wykonanie swoich poleceĹ&#x201E;, a wiÄ&#x2122;c przedstawienie danych w odpowiedni sposĂłb. Serwisant zajmuje siÄ&#x2122; konfigurowaniem sprzÄ&#x2122;tu i parametryzacjÄ&#x2026; oprogramowania do analizy obrazĂłw i mowy. Konfiguracja sprzÄ&#x2122;towo-programowa kaĹźdego z moduĹ&#x201A;Ăłw interfejsu polega na doborze jego parametrĂłw wewnÄ&#x2122;trznych dla danej instalacji systemu. Administrator zarzÄ&#x2026;dza modelami gestĂłw, poleceĹ&#x201E; i uĹźytkownikĂłw, ale przede wszystkim dostarcza dane treningowe i uruchamia uczenie siÄ&#x2122; systemu (tworzenie modeli). Odnosi siÄ&#x2122; to zarĂłwno do zarzÄ&#x2026;dzania informacjÄ&#x2026; dotyczÄ&#x2026;cÄ&#x2026; uĹźytkownikĂłw systemu, jak i danych dotyczÄ&#x2026;cych poleceĹ&#x201E;, ktĂłre system moĹźe zrealizowaÄ&#x2021;. W tym pierwszym przypadku do systemu moĹźna wprowadzaÄ&#x2021; nowych uĹźytkownikĂłw bÄ&#x2026;dĹş usuwaÄ&#x2021; tych wczeĹ&#x203A;niej wprowadzonych oraz edytowaÄ&#x2021; dane uĹźytkownika. W drugim przypadku moĹźna dodawaÄ&#x2021; i usuwaÄ&#x2021; polecenia oraz je modyfikowaÄ&#x2021; (edytowaÄ&#x2021;). Uczenie w systemie zastosowano do zdefiniowania nastÄ&#x2122;pujÄ&#x2026;cych przyporzÄ&#x2026;dkowaĹ&#x201E;: gestĂłw poleceniom, instrukcji wydawanych gĹ&#x201A;osem komendom oraz rozpoznawania mĂłwcy w celu okreĹ&#x203A;lenia jego uprawnieĹ&#x201E;. Przewidziano, Ĺźe uĹźytkownicy róşnej rangi bÄ&#x2122;dÄ&#x2026; mieli róşne uprawnienia do wydawania poleceĹ&#x201E; systemowi. Proces uczenia odbywa siÄ&#x2122; w dwĂłch fazach. Wpierw zbierane sÄ&#x2026; prĂłbki o wĹ&#x201A;aĹ&#x203A;ciwej postaci, a nastÄ&#x2122;pnie uczony jest odpowiedni klasyfikator. NadzĂłr nad procesem uczenia spoczywa na administratorze systemu. Sterowanie polega na rozpoznawaniu poleceĹ&#x201E; uĹźytkownika wydawanych gĹ&#x201A;osem lub gestem. Polecenia te sÄ&#x2026; przeksztaĹ&#x201A;cane w bodĹşce zazwyczaj generowane przez myszkÄ&#x2122; (ruch kursora, klikniÄ&#x2122;cie), klawiaturÄ&#x2122; (wciĹ&#x203A;niecie klawisza) bÄ&#x2026;dĹş ekran dotykowy (dotkniÄ&#x2122;cia). BodĹşce te oddziaĹ&#x201A;ujÄ&#x2026; na okienka reprezentowane agentami lub na inne programy uruchomione na komputerze. SÄ&#x2026; one przez te agenty lub programy interpretowane, przykĹ&#x201A;adowo jako: obrĂłt obrazu, zbliĹźenie lub oddalenie widoku wyĹ&#x203A;wietlanego w oknie (zoom). Agenty reprezentujÄ&#x2026;ce okna mogÄ&#x2026; byÄ&#x2021; czÄ&#x2122;Ĺ&#x203A;ciami moduĹ&#x201A;Ăłw interfejsu lub platformy. Interfejs przeksztaĹ&#x201A;ca gesty oraz komendy wydawane gĹ&#x201A;osem na polecenia dla platformy.
44
"! # $
'! ( $ '!)! * $ Interfejs jest uĹźywany przez róşne kategorie operatorĂłw zgodnie z przypisanymi im rolami. UĹźytkownicy wykorzystujÄ&#x2026; go do sterowania sposobem prezentacji danych generowanych przez platformÄ&#x2122;. PodstawowÄ&#x2026; formÄ&#x2026; dziaĹ&#x201A;ania interfejsu jest przeksztaĹ&#x201A;canie poleceĹ&#x201E; uĹźytkownika na poĹźÄ&#x2026;dany sposĂłb prezenA
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
%$ & %$ ' ($ ' %$ ) ($ * ($ % )$ ' $ +
tacji danych. Metoda sterowania okienkami zostaĹ&#x201A;a opisana przy okazji prezentacji poszczegĂłlnych moduĹ&#x201A;Ăłw interfejsu. KaĹźdy z moduĹ&#x201A;Ăłw ma interfejs administracyjno-serwisowy zawiadujÄ&#x2026;cy wĹ&#x201A;asnym oknem GUI (ang. Graphical User Interface). ModuĹ&#x201A; prezentacji wykorzystuje swoje okno do wyĹ&#x203A;wietlania logĂłw otrzymanych z wszystkich trzech moduĹ&#x201A;Ăłw oraz do wysyĹ&#x201A;ania instrukcji do kaĹźdego z moduĹ&#x201A;Ăłw. W odpowiedzi na otrzymane z moduĹ&#x201A;u prezentacji instrukcje, moduĹ&#x201A;y wizji i audio: przechodzÄ&#x2026; w tryb wstrzymania, wznawiajÄ&#x2026; dziaĹ&#x201A;anie po wstrzymaniu lub wczytujÄ&#x2026; nowÄ&#x2026; konfiguracjÄ&#x2122;. Administrator moduĹ&#x201A;u audio ma moĹźliwoĹ&#x203A;Ä&#x2021; tworzenia i zarzÄ&#x2026;dzania modelami komend gĹ&#x201A;osowych i mĂłwcĂłw. Do tego celu wykorzystuje interfejs administracyjno-serwisowy, ktĂłry uaktywnia funkcje uczenia moduĹ&#x201A;u audio. Komenda gĹ&#x201A;osowa skĹ&#x201A;ada siÄ&#x2122; z sekwencji 1â&#x20AC;&#x201C;3 sĹ&#x201A;Ăłw, wypowiadanych w sposĂłb ciÄ&#x2026;gĹ&#x201A;y bez widocznych przerw miÄ&#x2122;dzy sĹ&#x201A;owami. Pozwala to interpretowaÄ&#x2021; tÄ&#x2122; sekwencjÄ&#x2122; jako pojedynczÄ&#x2026; izolowanÄ&#x2026; frazÄ&#x2122; zdaniowÄ&#x2026; i rozpoznawaÄ&#x2021; jÄ&#x2026; jako jednÄ&#x2026; z komend, dla ktĂłrych stworzono model akustyczny. Model akustyczny komendy ma postaÄ&#x2021; sekwencji cech krĂłtkookresowych ramek sygnaĹ&#x201A;u i jest oparty na cechach mel-cepstralnych [17] i pochodnych tych cech. Model gĹ&#x201A;osowy mĂłwcy ma postaÄ&#x2021; mieszaniny rozkĹ&#x201A;adĂłw Gaussa w przestrzeni cech ramek. SzczegĂłĹ&#x201A;owe omĂłwienie tych modeli znajduje siÄ&#x2122; w drugiej czÄ&#x2122;Ĺ&#x203A;ci tego artykuĹ&#x201A;u w jego sekcji 2. Rola administratora moduĹ&#x201A;u audio w procesie tworzenia modeli polega na zebraniu prĂłbek gĹ&#x201A;osowych odpowiednich komend i mĂłwcĂłw, uruchomieniu procedur uczenia i na zdefiniowaniu tablicy asocjacji treĹ&#x203A;ci komend i mĂłwcy z numerami klas udostÄ&#x2122;pnianymi przez moduĹ&#x201A; audio. Administrator jest przy tym Ĺ&#x203A;wiadomy istnienia tablicy asocjacji komend i ograniczeĹ&#x201E;, co do maksymalnej liczby dostÄ&#x2122;pnych komend i mĂłwcĂłw. JeĹ&#x203A;li z tablicy asocjacji komend wynika, Ĺźe komenda nr 1 sĹ&#x201A;uĹźy do wywoĹ&#x201A;ania â&#x20AC;&#x17E;pochwyceniaâ&#x20AC;? elementu graficznego, to administrator moĹźe nazwaÄ&#x2021; tÄ&#x2122; komendÄ&#x2122; jako â&#x20AC;&#x17E;pochwyÄ&#x2021;â&#x20AC;? lub â&#x20AC;&#x17E;dragâ&#x20AC;? lub jeszcze inaczej, w sposĂłb zrozumiaĹ&#x201A;y dla uĹźytkownika. Wtedy ta klasa powinna byÄ&#x2021; uczona na podstawie prĂłbek gĹ&#x201A;osowych zawierajÄ&#x2026;cych treĹ&#x203A;Ä&#x2021; â&#x20AC;&#x17E;pochwyÄ&#x2021;â&#x20AC;? itp.
'! ! ( ZarzÄ&#x2026;dzanie modelami przez administratora moduĹ&#x201A;u wizyjnego polega na powiÄ&#x2026;zaniu identyfikatorĂłw gestĂłw z ich klasÄ&#x2026;. Identyfikatory gestĂłw przekazywane sÄ&#x2026; do moduĹ&#x201A;u prezentacji w trakcie uĹźytkowania interfejsu. ZbiĂłr gestĂłw i ich forma sÄ&#x2026; ustalone z gĂłry, a system analizy gestĂłw jest dostarczony w postaci juĹź nauczonej. Administrator nie ma bezpoĹ&#x203A;rednio moĹźliwoĹ&#x203A;ci definiowania i uczenia wĹ&#x201A;asnych gestĂłw, tak jak to ma miejsce w przypadku moduĹ&#x201A;u audio. Jednak moĹźe zleciÄ&#x2021; serwisantowi lub twĂłrcy systemu wykonanie modyfikacji zbioru gestĂłw. UwzglÄ&#x2122;dniajÄ&#x2026;c powyĹźszÄ&#x2026; moĹźliwoĹ&#x203A;Ä&#x2021;, bezpoĹ&#x203A;rednie zarzÄ&#x2026;dzanie moduĹ&#x201A;em wizji przez administratora polega jedynie na ewentualnej modyfikacji tablicy asocjacji gestĂłw, czyli odwzorowania: moja nazwa gestu numer/klasa gestu w module wizji. ModuĹ&#x201A; wizyjny, po wczytaniu plikĂłw konfiguracyjnych, przygotowany jest do wspĂłĹ&#x201A;pracy z uĹźytkownikiem. Aby sterowanie gestami byĹ&#x201A;o skuteczne, uĹźytkownik musi byÄ&#x2021; widoczny dla kamery. W tym celu moduĹ&#x201A; wizyjny wyĹ&#x203A;wietla rysunek pokazujÄ&#x2026;cy, w jakim obszarze powinien staÄ&#x2021; uĹźytkownik, by mĂłc sterowaÄ&#x2021; systemem, np. kursorami. Kursory to odwzorowanie dĹ&#x201A;oni uĹźytkownika na ekran. RolÄ&#x2026; serwisanta systemu wizyjnego jest, oprĂłcz samej sprzÄ&#x2122;towej instalacji systemu, jego wstÄ&#x2122;pna konfiguracja i kalibracja. Serwisant wprowadza (w plikach konfiguracyjnych) poĹ&#x201A;oĹźenie i orientacjÄ&#x2122; kamery wzglÄ&#x2122;dem ukĹ&#x201A;adu wspĂłĹ&#x201A;rzÄ&#x2122;dnych ustalonego dla punktu odniesienia (np. Ĺ&#x203A;rodka ekranu). Wykonuje teĹź kalibracjÄ&#x2122; stereo-pary kamer w celu uzyskania zestawu parametrĂłw wewnÄ&#x2122;trznych (ang. intrinsic parameters) i zewnÄ&#x2122;trznych (ang.
extrinsic parameters). Do jego zadaĹ&#x201E; naleĹźy teĹź wstÄ&#x2122;pne ustawienie parametrĂłw akwizycji tak, aby dopasowaÄ&#x2021; je do warunkĂłw oĹ&#x203A;wietleniowych panujÄ&#x2026;cych w miejscu instalacji.
'! ! ( ModuĹ&#x201A; audio sprawuje kontrolÄ&#x2122; nad okienkami umoĹźliwiajÄ&#x2026;cymi administratorowi przeĹ&#x201A;Ä&#x2026;czanie siÄ&#x2122; miÄ&#x2122;dzy nastÄ&#x2122;pujÄ&#x2026;cymi trybami pracy: trybem zarzÄ&#x2026;dzania zasobami (zarzÄ&#x2026;dzanie poleceniami, uĹźytkownikami oraz nagraniami; zapisywanie plikĂłw konfiguracyjnych i nagraĹ&#x201E; mowy), uczeniem siÄ&#x2122; modeli mĂłwcĂłw i modeli komend (oraz zapisywaniem modeli do plikĂłw) i trybem sterujÄ&#x2026;cym, umoĹźliwiajÄ&#x2026;cym rozpoczÄ&#x2122;cie rozpoznawania poleceĹ&#x201E; oraz identyfikacji uĹźytkownikĂłw (wczytanie modeli mĂłwcĂłw oraz komend, rozpoczÄ&#x2122;cie rozpoznawania komendy/mĂłwcy). Po przejĹ&#x203A;ciu w tryb sterowania moduĹ&#x201A; audio rozpoczyna nasĹ&#x201A;uch sygnaĹ&#x201A;Ăłw z mikrofonĂłw oczekujÄ&#x2026;c na polecenia wydawane przez uĹźytkownika. W trybie tym identyfikatory rozpoznanych poleceĹ&#x201E; oraz rozpoznanych uĹźytkownikĂłw sÄ&#x2026; przekazywane do moduĹ&#x201A;u prezentacji. Administracja moduĹ&#x201A;em audio polega na: wprowadzaniu lub usuwaniu poleceĹ&#x201E;, wprowadzaniu lub usuwaniu uĹźytkownikĂłw, nadzorze oraz zlecaniu rejestracji i przechowywania prĂłbek gĹ&#x201A;osu uĹźytkownikĂłw, uaktualnianiu system plikĂłw konfiguracyjnych, a ponadto uruchamianiu dla danego uĹźytkownika lub polecenia procesu uczenia. Podczas czynnoĹ&#x203A;ci administracyjnych uĹźytkownik wykonuje polecenia administratora. Na jego ĹźÄ&#x2026;danie uĹźytkownik podaje swoje dane, umoĹźliwiajÄ&#x2026;c w ten sposĂłb swojÄ&#x2026; identyfikacjÄ&#x2122;, a nastÄ&#x2122;pnie przechodzi do nagrywania prĂłbek gĹ&#x201A;osowych. UĹźytkownik wprowadzony do systemu moĹźe wydawaÄ&#x2021; polecenia moduĹ&#x201A;owi audio. Administrator moduĹ&#x201A;u audio komunikuje siÄ&#x2122; z nim za pomocÄ&#x2026; okienek GUI, wybierajÄ&#x2026;c za pomocÄ&#x2026; myszki pola okienek i wprowadzajÄ&#x2026;c informacjÄ&#x2122; tekstowÄ&#x2026; do wybranych pĂłl okienek.
'!"! * $ Serwisant oddzielnie konfiguruje kaĹźdy z moduĹ&#x201A;Ăłw. Konfigurowanie moduĹ&#x201A;u prezentacji polega na: ustaleniu rozdzielczoĹ&#x203A;ci monitora (co wymusza zmianÄ&#x2122; wielkoĹ&#x203A;ci emulowanego ekranu dotykowego), zmianie adresĂłw moduĹ&#x201A;Ăłw audio i wizji, zmianie parametrĂłw emulowanego ekranu dotykowego oraz zmianie identyfikatorĂłw przypisanych do bodĹşcĂłw inicjujÄ&#x2026;cych akcje systemu operacyjnego. KaĹźdy identyfikator okreĹ&#x203A;la pewnÄ&#x2026; akcjÄ&#x2122;, ktĂłra powinna zostaÄ&#x2021; wykonana na oknie graficznym platformy NPC. Jest ona wynikiem polecenia otrzymanego od moduĹ&#x201A;u prezentacji, pobudzonego przez moduĹ&#x201A;: â&#x2C6;&#x2019; audio, ktĂłry rozpoznaĹ&#x201A; komendÄ&#x2122; gĹ&#x201A;osowÄ&#x2026;, lub â&#x2C6;&#x2019; wizji, ktĂłry rozpoznaĹ&#x201A; gest. Konfigurowanie moduĹ&#x201A;u wizji sprowadza siÄ&#x2122; do: â&#x2C6;&#x2019; wyboru obszaru, w ktĂłrym uĹźytkownik bÄ&#x2122;dzie mĂłgĹ&#x201A; wykonywaÄ&#x2021; gesty sterujÄ&#x2026;ce, â&#x2C6;&#x2019; kalibracji kamer, â&#x2C6;&#x2019; ustalenia zwiÄ&#x2026;zku miÄ&#x2122;dzy przestrzeniÄ&#x2026; trĂłjwymiarowÄ&#x2026; a jej dwuwymiarowym zobrazowaniem, â&#x2C6;&#x2019; modyfikacji tablicy asocjacji akcji/bodĹşcĂłw (dodawanie lub usuwanie przyporzÄ&#x2026;dkowania rozpoznawanych gestĂłw do identyfikatorĂłw akcji/bodĹşcĂłw (i skrĂłtĂłw klawiszowych) generowanych przez imitowane urzÄ&#x2026;dzenie wejĹ&#x203A;ciowe. Konfigurowanie moduĹ&#x201A;u audio wymaga od serwisanta wykonania nastÄ&#x2122;pujÄ&#x2026;cych czynnoĹ&#x203A;ci: â&#x2C6;&#x2019; instalacji sprzÄ&#x2122;tu, â&#x2C6;&#x2019; ustawienia parametrĂłw karty akwizycji â&#x20AC;&#x201C; wybĂłr kanaĹ&#x201A;Ăłw akwizycji, â&#x2C6;&#x2019; ustawienia parametrĂłw akwizycji sygnaĹ&#x201A;u audio, czyli: poziomu szumu, czÄ&#x2122;stotliwoĹ&#x203A;ci prĂłbkowania, wielkoĹ&#x203A;ci ramki sygnaĹ&#x201A;u, dĹ&#x201A;ugoĹ&#x203A;ci wektora cech itp., â&#x2C6;&#x2019; modyfikacji tablicy asocjacji akcji/bodĹşcĂłw (dodania lub usuniÄ&#x2122;cia przyporzÄ&#x2026;dkowania rozpoznawanych komend gĹ&#x201A;osowych
45
!" #$
do identyfikatorĂłw akcji/bodĹşcĂłw (i skrĂłtĂłw klawiszowych) generowanych przez imitowanÄ&#x2026; myszkÄ&#x2122;. CzÄ&#x2122;Ĺ&#x203A;Ä&#x2021; z wymienionych czynnoĹ&#x203A;ci wykonywanych jest przez serwisanta bezpoĹ&#x203A;rednio na sprzÄ&#x2122;cie wchodzÄ&#x2026;cym w skĹ&#x201A;ad interfejsu.
+! , PodstawowÄ&#x2026; jednostkÄ&#x2026; kompozycji interfejsu jest moduĹ&#x201A;. PodziaĹ&#x201A; na moduĹ&#x201A;y zwiÄ&#x2026;zany jest z trzema podstawowymi funkcjami, ktĂłre realizuje interfejs w celu umoĹźliwienia uĹźytkownikowi Ĺ&#x201A;atwej interakcji z platformÄ&#x2026; NPC. SÄ&#x2026; nimi: przeksztaĹ&#x201A;canie gestĂłw na polecenia dla platformy NPC, transformacja komend wydawanych gĹ&#x201A;osem na polecenia dla tej platformy oraz integracjÄ&#x2026; poleceĹ&#x201E; w celu spĂłjnej prezentacji ich skutkĂłw na ekranie obserwowanym przez uĹźytkownika. KaĹźdy z tych moduĹ&#x201A;Ăłw zostaĹ&#x201A; skomponowany z agentĂłw. NiektĂłre z tych agentĂłw reprezentujÄ&#x2026; okna ukazujÄ&#x2026;ce siÄ&#x2122; na ekranie monitora traktowanego jako element Ĺ&#x203A;rodowiska.
Rys. 4. Struktura agenta generujÄ&#x2026;cego bodĹşce; g {mysz, klawiatura, ekran dotykowy}, δ {mainPointer, secPointer, keyExecutor} agent ten ma 3 efektory i 3 receptory Fig. 4. Structure of the agent generating stimulus; g [mouse, keyboard, touchscreen}; δ {mainPointer, secPointer, keyExecutor} this agent has 3 effectors and 3 receptors
siÄ&#x2122; agentĂłw: (a = prezGUI, b = prez), (a = audioGUI_nr, b = audio) (gdzie nr â&#x2C6;&#x2C6; {init, user, command, control}), (a = visionGUI, b = vision). Agent generujÄ&#x2026;cy bodĹşce aOID (rys. 4) wyposaĹźony jest w receptory rzeczywiste ROID,1,g , takie jak mysz, klawiatura lub ekran dotykowy â&#x20AC;&#x201C; tu zbiorczo oznaczone jako g. Pojedynczy wirtualny receptor rOID,1 agreguje informacje uzyskane z tych urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;ciowych. Efektorami rzeczywistymi tego agenta sÄ&#x2026; kursory, a dokĹ&#x201A;adniej rzecz ujmujÄ&#x2026;c, generatory bodĹşcĂłw zazwyczaj inicjowanych wspomnianymi urzÄ&#x2026;dzeniami wejĹ&#x203A;cia. Agent aOID ma trzy efektory rzeczywiste EOID, d. Dwa efektory tworzÄ&#x2026; na ekranie monitora kursory: pierwotny (d= mainPointer) i wtĂłrny (d = secPointer), a jeden efektor (d = keyExecutor) imituje klawiaturÄ&#x2122; generujÄ&#x2026;c bodĹşce, takie jak rzeczywista klawiatura. Informacja do tych trzech efektorĂłw rzeczywistych dostarczana jest przez efektor wirtualny eOID,1. Agent aOID oraz agenty aa (reprezentujÄ&#x2026;ce okna) wchodzÄ&#x2026; w interakcje za poĹ&#x203A;rednictwem stygmergii [6], a wiÄ&#x2122;c przez zastosowanie komunikacji poprzez Ĺ&#x203A;rodowisko, ktĂłrego czÄ&#x2122;Ĺ&#x203A;ciÄ&#x2026; jest ekran monitora. Agenty aa odczytujÄ&#x2026; bodĹşce generowane przez aOID za pomocÄ&#x2026; swoich rzeczywistych receptorĂłw R a,1, f. W tym przypadku receptorami rzeczywistymi R a,1, f sÄ&#x2026; elementy okna (f) czuĹ&#x201A;e na bodĹşce zewnÄ&#x2122;trzne. PrzykĹ&#x201A;adowa interakcja miÄ&#x2122;dzy kursorem a elementami okna realizowana jest w nastÄ&#x2122;pujÄ&#x2026;cy sposĂłb. Agent aOID wykorzystujÄ&#x2026;c jeden ze swoich rzeczywistych efektorĂłw EOID,d (d â&#x20AC;&#x201C; element aktywny wytwarzajÄ&#x2026;cy bodziec) oddziaĹ&#x201A;uje na rzeczywisty receptor okna R a,1, f (f â&#x20AC;&#x201C; element pasywny odbierajÄ&#x2026;cy bodziec, np. przyciski lub suwak). NastÄ&#x2122;pnie agent aa przekazuje uzyskanÄ&#x2026; informacjÄ&#x2122; do kolejnego agenta, ktĂłry zrealizuje akcjÄ&#x2122; wywoĹ&#x201A;ywanÄ&#x2026; tym bodĹşcem.
Rys. 3. OgĂłlna struktura agentĂłw reprezentujÄ&#x2026;cych okna uruchamiane na ekranie komputera; Îą â&#x20AC;&#x201C; nazwa agenta reprezentujÄ&#x2026;cego okno, β â&#x20AC;&#x201C; nazwa agenta, z ktĂłrym ten agent siÄ&#x2122; komunikuje Fig. 3. General structure of agents representing windows appearing on the computer screen; Îą â&#x20AC;&#x201C; name of the agent representing the windows, β â&#x20AC;&#x201C; name of the agent with which this agent communicates
OgĂłlnÄ&#x2026; strukturÄ&#x2122; agentĂłw reprezentujÄ&#x2026;cych okna aa, gdzie a to substytut nazwy agenta, okreĹ&#x203A;la rys. 3. AgentĂłw tego typu w systemie jest wiele. Rzeczywistymi efektorami Ea, j kaĹźdego takiego agenta sÄ&#x2026; miejsca sĹ&#x201A;uĹźÄ&#x2026;ce wyĹ&#x203A;wietlaniu informacji w oknie (j). Ta informacja pojawia siÄ&#x2122; w Ĺ&#x203A;rodowisku i w ten sposĂłb oddziaĹ&#x201A;uje na operatora. Natomiast rzeczywistymi receptorami Ra,f tego agenta sÄ&#x2026; obiekty wraĹźliwe na bodĹşce (f) wytwarzane przez efektory agenta aOID (ang. Operator Interface Devices). Agent aa ma po jednym efektorze i receptorze wirtualnym, odpowiednio: ea,1 i ra,1. WspĂłĹ&#x201A;pracujÄ&#x2026; one z wieloma efektorami i receptorami rzeczywistymi: Ea, j, Ra,f. Liczba receptorĂłw rzeczywistych zaleĹźy od liczby pĂłl okna, z ktĂłrymi uĹźytkownik moĹźe wejĹ&#x203A;Ä&#x2021; w interakcjÄ&#x2122; (np. przycisk lub suwak). Natomiast liczba efektorĂłw rzeczywistych zaleĹźy od liczby pĂłl, w ktĂłrych moĹźe byÄ&#x2021; wyĹ&#x203A;wietlana informacja. Agenty okien aa komunikujÄ&#x2026; siÄ&#x2122; bezpoĹ&#x203A;rednio z innymi agentami ab interfejsu. IstniejÄ&#x2026; nastÄ&#x2122;pujÄ&#x2026;ce pary komunikujÄ&#x2026;cych
46
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
+!)! & ModuĹ&#x201A; prezentacji utworzony jest z trzech agentĂłw: aprez (rys. 5), aprezGUI (agent typu aa â&#x20AC;&#x201C; rys. 3) i aOID (rys. 4). KomunikacjÄ&#x2122; miÄ&#x2122;dzy tymi agentami w module prezentacji przedstawiono na rys. 6. Podsystem sterowania agenta aprez ma jedynie bufory komunikacji miÄ&#x2122;dzyagentowej i pamiÄ&#x2122;Ä&#x2021; wewnÄ&#x2122;trznÄ&#x2026;. Bufory komunikacji miÄ&#x2122;dzyagentowej umoĹźliwiajÄ&#x2026; interakcjÄ&#x2122; nie tylko z dwoma pozostaĹ&#x201A;ymi agentami moduĹ&#x201A;u prezentacji, ale rĂłwnieĹź z agentami aaudio i avision. Agent aprez wykonuje nastÄ&#x2122;pujÄ&#x2026;ce zadania: â&#x2C6;&#x2019; tĹ&#x201A;umaczenie gestĂłw otrzymanych od agenta avision na odpowiednie imitacje akcji urzÄ&#x2026;dzeĹ&#x201E; wejĹ&#x203A;cia (myszy, klawiatury, ekranu dotykowego) i przesyĹ&#x201A;anie tych zleceĹ&#x201E; do agenta aOID, aby ten je zrealizowaĹ&#x201A;, A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
%$ & %$ ' ($ ' %$ ) ($ * ($ % )$ ' $ +
Rys. 5. Struktura agenta prezentacji Fig. 5. Structure of the presentation agent
aaudioGUI init aaudioGUI user
aaudio aaudioGUI control
aaudioGUI command
Rys. 7. Dekompozycja moduĹ&#x201A;u audio na agenty Fig. 7. Decomposition of the audio module into agents
Rys. 6. Komunikacja miÄ&#x2122;dzyagentowa w module prezentacji Fig. 6. Interagent communication in the presentation module
â&#x2C6;&#x2019; tĹ&#x201A;umaczenie identyfikatorĂłw poleceĹ&#x201E; otrzymanych od agenta aaudio na odpowiednie skrĂłty klawiaturowe i przesyĹ&#x201A;anie ich do agenta aOID, aby ten je zrealizowaĹ&#x201A;, â&#x2C6;&#x2019; przesyĹ&#x201A;anie poleceĹ&#x201E; zmiany trybu pracy do agentĂłw avision i aaudio. Polecenia te podsystem cprez otrzymuje od agenta aprezGUI, â&#x2C6;&#x2019; przesyĹ&#x201A;anie logĂłw do agenta aprezGUI, aby ten je wyĹ&#x203A;wietliĹ&#x201A;. Logi te pochodzÄ&#x2026; od samego podsystemu cprez oraz od agentĂłw avision i aaudio. Zadaniem agenta aOID jest wykonywanie odpowiednich operacji za pomocÄ&#x2026; swych efektorĂłw rzeczywistych EOID,d (kursorĂłw), w celu oddziaĹ&#x201A;ywania na inne agenty reprezentujÄ&#x2026;ce okna, poprzez stygmergiÄ&#x2122;. Operacje te wyzwalane sÄ&#x2026; albo poleceniami agenta aprez albo bodĹşcami generowanymi przez rzeczywiste receptory ROID,g, gdzie g â&#x2C6;&#x2C6; {mysz, klawiatura, ekran dotykowy}. Agent aprezGUI jest odpowiedzialny za wyĹ&#x203A;wietlanie informacji otrzymanych od agenta aprez oraz odczytywanie bodĹşcĂłw pochodzÄ&#x2026;cych ze Ĺ&#x203A;rodowiska, w tym przypadku ekranu komputera, a konkretnie klikniÄ&#x2122;Ä&#x2021; myszy lub naciĹ&#x203A;niÄ&#x2122;Ä&#x2021; klawiatury imitowanych przez agenta aOID. BodĹşce te sÄ&#x2026; przechwytywane za pomocÄ&#x2026; przyciskĂłw okna â&#x20AC;&#x201C; rzeczywistych receptorĂłw agenta aprezGUI.
+! ! & 7.2.1. Struktura
ModuĹ&#x201A; audio skĹ&#x201A;ada siÄ&#x2122; z piÄ&#x2122;ciu agentĂłw (rys. 7): podstawowego agenta aaudio oraz agentĂłw pomocniczych zarzÄ&#x2026;dzajÄ&#x2026;cych oknami: â&#x2C6;&#x2019; agenta aaudioGUI_init reprezentujÄ&#x2026;cego pojedyncze okno, sĹ&#x201A;uĹźÄ&#x2026;ce do wyboru poniĹźej wymienionych okien, â&#x2C6;&#x2019; agenta aaudioGUI_user reprezentujÄ&#x2026;cego okno zarzÄ&#x2026;dzania uĹźytkownikami, â&#x2C6;&#x2019; agenta aaudioGUI_command reprezentujÄ&#x2026;cego okno zarzÄ&#x2026;dzania poleceniami oraz
â&#x2C6;&#x2019; agenta aaudioGUI_control reprezentujÄ&#x2026;cego okno sterowania i przeprowadzania uczenia na podstawie posiadanych nagraĹ&#x201E;. Cztery agenty reprezentujÄ&#x2026;ce okna majÄ&#x2026; strukturÄ&#x2122; agenta aa, gdzie a Ă&#x17D; {audioGUI_init, audioGUI_user, audioGUI_command, audioGUI_control}, a wiÄ&#x2122;c ich wewnÄ&#x2122;trzna struktura odpowiada tej z rys. 3. KaĹźdy z czterech wspomnianych agentĂłw GUI reprezentuje pojedyncze okno wyposaĹźone w przyciski oraz elementy sĹ&#x201A;uĹźÄ&#x2026;ce do wyĹ&#x203A;wietlania odpowiednich informacji zwiÄ&#x2026;zanych z konkretnym agentem GUI moduĹ&#x201A;u audio. Tylko jeden agent GUI moduĹ&#x201A;u audio sposrĂłd: aaudioGUI_user, aaudioGUI_command oraz aaudioGUI_control jest aktywny w danym momencie. Struktura wewnÄ&#x2122;trzna agenta aaudio zostaĹ&#x201A;a przedstawiona na rys. 8. Agent aaudio skĹ&#x201A;ada siÄ&#x2122; z podsystemu sterowania caudio pozyskujÄ&#x2026;cego informacje z receptora wirtualnego raudio,mic i oddziaĹ&#x201A;ujÄ&#x2026;cego na efektor wirtualny eaudio,ui. Podsystem caudio wyposaĹźony jest w bufory transmisyjne umoĹźliwiajÄ&#x2026;ce komunikacjÄ&#x2122; z agentem aprez oraz wspomnianymi agentami GUI moduĹ&#x201A;u audio. Receptor wirtualny raudio,mic agreguje dane z receptora rzeczywistego Raudio,mic, ktĂłry zawiera mikrofony, sprzÄ&#x2122;towy przetwornik analogowo-cyfrowy oraz sterownik programowy tego przetwornika zainstalowany w systemie operacyjnym. Natomiast efektor wirtualny eaudio,ui steruje efektorem rzeczywistym Eaudio,ui, ktĂłry reprezentuje gĹ&#x201A;oĹ&#x203A;nik komputera, bÄ&#x2026;dĹş system nagĹ&#x201A;oĹ&#x203A;nienia pomieszczenia.
aaudio T x caudio,prez
T y caudio,prez
caudio e y caudio,ui
r x caudio,mic
T x caudio,audioGUI nr T y caudio,audioGUI nr
c x eaudio,ui
c y raudio,mic
eaudio,ui
raudio,mic
E y eaudio,ui
R x raudio,mic
e x Eaudio,ui
r y Raudio,mic
Eaudio,ui
Raudio,mic
Rys. 8. Struktura agenta audio aaudio, gdzie nr control} Fig. 8. Structure of the audio agent, where nr control}
{init, user, command,
{init, user, command,
47
!" #$ polecenia danych otrzymanych z caudioGUI_init. Po przejĹ&#x203A;ciu do stanu cS audio uzytkownicy albo cS audio uruchamiane jest zachowanie inicjujÄ&#x2026;ce odpowiedniego agenta, tj. aaudioGUI_command lub aaudioGUI_user i moĹźliwe jest dodawanie, usuwanie i aktualizowanie danych zawartych w pliku konfiguracyjnym odpowiednio poleceĹ&#x201E; i uĹźytkownikĂłw. Po zakoĹ&#x201E;czeniu dziaĹ&#x201A;ania zachowaĹ&#x201E; nastÄ&#x2122;puje zakoĹ&#x201E;czenie dziaĹ&#x201A;ania odpowiedniego agenta GUI. nagrania W stanie cS audio uruchamiany jest agent aaudioGUI_control, dziÄ&#x2122;ki czemu moĹźliwe jest przeprowadzenie sesji nagraniowej dla wybranego uĹźytkownika. Sesja nagraniowa polega na nagraniu po n prĂłbek (powtĂłrzeĹ&#x201E;) dla wszystkich poleceĹ&#x201E; wczytanych z pliku konfiguracyjnego, gdzie n jest liczbÄ&#x2026; prĂłbek definiowanÄ&#x2026; przez administratora moduĹ&#x201A;u audio. Podczas sesji nagraniowej caudio komunikuje siÄ&#x2122; z wirtualnym receptorem raudio,mic, w celu akwizycji sygnaĹ&#x201A;u audio, oraz z podsystemem sterowania agenta aaudioGUI_control, w celu kontrolnej wizualizacji oscylogramu nagrania, a ponadto z eaudio,ui w celu odtworzenia przez gĹ&#x201A;oĹ&#x203A;niki rozpoznanego polecenia. Na koniec tworzony jest plik w formacie wave z nagranÄ&#x2026; prĂłbkÄ&#x2026;, bÄ&#x2122;dÄ&#x2026;cy elementem wewnÄ&#x2122;trznej pamiÄ&#x2122;ci podsystemu sterowania caudio. uczenie W stanie cS audio uruchamiany jest agent aaudioGUI_control i inicjowane jest uczenie, tj. automatyczne tworzenie modeli uĹźytkownikĂłw i poleceĹ&#x201E; w oparciu o zebrane wczeĹ&#x203A;niej prĂłbki gĹ&#x201A;osowe (podczas sesji nagraniowych z udziaĹ&#x201A;em przyszĹ&#x201A;ych uĹźytkownikĂłw). Proces uczenia wykonywany jest prawie wyĹ&#x201A;Ä&#x2026;cznie przez wirtualny receptor raudio,mic, ktĂłry realizuje funkcje: â&#x2C6;&#x2019; dekodowania danych w formacie wave, â&#x2C6;&#x2019; analizy wstÄ&#x2122;pnej i parametryzacji sygnaĹ&#x201A;u mowy, â&#x2C6;&#x2019; tworzenia modeli mĂłwcĂłw i modeli komend, â&#x2C6;&#x2019; serializacji modeli nastÄ&#x2122;pnie zapisywanych do plikĂłw. Zakodowane w formacie wave dane sÄ&#x2026; przesyĹ&#x201A;ane do podsystemu sterowania caudio, a ten wypisuje je do rezydujÄ&#x2026;cego w jego pamiÄ&#x2122;ci wewnÄ&#x2122;trznej systemu plikĂłw. W razie potrzeby podsystem sterowania caudio moĹźe pobraÄ&#x2021; ze swojej pamiÄ&#x2122;ci wewnÄ&#x2122;trznej uprzednio przygotowany plik, przesĹ&#x201A;aÄ&#x2021; jego treĹ&#x203A;Ä&#x2021; do wirtualnego receptora raudio,mic, ktĂłry zdekoduje dane w formacie wave do postaci wektora prĂłbek sygnaĹ&#x201A;u (liczb) i w tej postaci zapamiÄ&#x2122;ta je na czas przetwarzania.
ModuĹ&#x201A; audio, a dokĹ&#x201A;adniej podsystem sterowania caudio agenta aaudio, umoĹźliwia: â&#x2C6;&#x2019; administratorowi systemu â&#x20AC;&#x201C; tworzenie i zarzÄ&#x2026;dzanie modelami komend oraz uĹźytkownikĂłw, â&#x2C6;&#x2019; uĹźytkownikowi â&#x20AC;&#x201C; sterowanie gĹ&#x201A;osem platformÄ&#x2026;. Administrator wpĹ&#x201A;ywa na moduĹ&#x201A; audio komunikujÄ&#x2026;c siÄ&#x2122; z agentem aOID za pomocÄ&#x2026; jego receptorĂłw. Agent ten wykorzystujÄ&#x2026;c swoje efektory komunikuje siÄ&#x2122; z odpowiednim agentem GUI stosujÄ&#x2026;c stygmergiÄ&#x2122;. W dalszej kolejnoĹ&#x203A;ci podsystem sterowania wspomnianego agenta GUI przesyĹ&#x201A;a odpowiednie polecenia do podsystemu caudio agenta aaudio. Konfiguracja moduĹ&#x201A;u audio polega na odpowiednim ustawieniu sprzÄ&#x2122;tu oraz stworzeniu odpowiedniego pliku konfiguracyjnego, co wykonywane jest przez serwisanta bez udziaĹ&#x201A;u agenta aaudio.
7.2.2. Zachowania DziaĹ&#x201A;anie agentĂłw GUI aa, tj. a audioGUI_init, a audioGUI_user, aaudioGUI_command, aaudioGUI_control polega na odbieraniu za pomocÄ&#x2026; swoich rzeczywistych receptorĂłw informacji ze Ĺ&#x203A;rodowiska (ekranu monitora), np. o wciĹ&#x203A;niÄ&#x2122;tym przycisku w jednym z odpowiadajÄ&#x2026;cych im okien, wysyĹ&#x201A;aniu powyĹźszych informacji do agenta aaudio, odbieraniu danych z aaudio oraz wyĹ&#x203A;wietlaniu ich za pomocÄ&#x2026; rzeczywistych efektorĂłw (odpowiednich elementĂłw okien). DziaĹ&#x201A;anie agenta aaudio, a dokĹ&#x201A;adniej jego podsystemu sterowania caudio, opisuje automat skoĹ&#x201E;czony przedstawiony na rys. 9. Z kaĹźdym ze stanĂłw automatu zwiÄ&#x2026;zane jest odpowiednie init zachowanie. W stanie poczÄ&#x2026;tkowym cS audio podsystem caudio oczekuje na polecenie otrzymane z caudioGUI_init. Polecenie to moĹźe dotyczyÄ&#x2021; albo przetwarzania komend gĹ&#x201A;osowych albo zarzÄ&#x2026;dzania zasobami. Otrzymywane polecenia, powodujÄ&#x2026;c zmianÄ&#x2122; stanu automatu skoĹ&#x201E;czonego, powodujÄ&#x2026; tworzenie agentĂłw GUI lub zakoĹ&#x201E;czenie ich istnienia â&#x20AC;&#x201C; w ten sposĂłb okienka pojawiajÄ&#x2026; siÄ&#x2122; i znikajÄ&#x2026; z ekranu. W konsekwencji prezentowany system ma zmiennÄ&#x2026; strukturÄ&#x2122; [39], w ktĂłrej agenty pojawiajÄ&#x2026; siÄ&#x2122; i znikajÄ&#x2026;. Polecenie rozpoczÄ&#x2122;cia rozpoznawania komend, otrzymanie z caudioGUI_init powoduje, Ĺźe podsystem caudio przechodzi do stanu c sterowanie , w ktĂłrym realizuje zachowanie polegajÄ&#x2026;ce na stwoS audio rzeniu agenta aaudioGUI_command (reprezentujÄ&#x2026;cego okno sĹ&#x201A;uĹźÄ&#x2026;ce do sterowania rozpoznawaniem), a nastÄ&#x2122;pnie dokonuje ciÄ&#x2026;gĹ&#x201A;ej akwizycji sygnaĹ&#x201A;u audio i na bieĹźÄ&#x2026;co wykonuje detekcjÄ&#x2122; mowy w sygnale oraz analizuje kaĹźdy izolowany fragment mowy w celu rozpoznania mĂłwcy i komendy. W zaleĹźnoĹ&#x203A;ci od tego, czy rozpoznano mĂłwcÄ&#x2122; czy teĹź nie, stosowany jest dedykowany model komend takiego mĂłwcy lub model ogĂłlny. ZakoĹ&#x201E;czenie zachosterowanie wania zwiÄ&#x2026;zanego ze stanem cS audio powoduje unicestwienie agenta aaudioGUI_command, a w zwiÄ&#x2026;zku z tym i okienka, ktĂłrym zawiaduje. zarzadzanie W stanie cS audio podejmowana jest decyzja, jakimi danymi (zasobami) ma zarzÄ&#x2026;dzaÄ&#x2021; caudio. Automat robi to na podstawie c init Saudio
+! ! & ModuĹ&#x201A; wizyjny skĹ&#x201A;ada siÄ&#x2122; z trzech agentĂłw. GĹ&#x201A;Ăłwnym jest agent avision (rys. 10), ktĂłry odpowiada za realizacjÄ&#x2122; zadania sterowania gestami. Komunikuje siÄ&#x2122; on z agentami avisionGUI oraz avisionâ&#x2C6;&#x2019;database (rys. 11), ktĂłre sÄ&#x2026; odpowiedzialne za realizacjÄ&#x2122; odpowiednio graficznego interfejsu uĹźytkownika oraz bazy danych. Agent avision skĹ&#x201A;ada siÄ&#x2122; z podsystemu sterowania cvision, wirtualnego receptora rvision oraz dwĂłch rzeczywistych receptorĂłw Rvision,1 i Rvision,2 bÄ&#x2122;dÄ&#x2026;cych kamerami RGB zestawionymi w stereoparÄ&#x2122;. PozostaĹ&#x201A;e agenty majÄ&#x2026; jedynie podsystemy sterowania. Agent avision komunikuje siÄ&#x2122; ponadto z agentem aprez. Automat skoĹ&#x201E;czony podsystemu sterowania cvision agenta wizyjinit nego avision (rys. 12) w swym stanie poczÄ&#x2026;tkowym cS vision uruchamia zachowanie, ktĂłre komunikuje siÄ&#x2122; z agentem avisionâ&#x2C6;&#x2019;database w celu pobrania modeli gestĂłw statycznych i dynamicznych oraz pozostaĹ&#x201A;ych danych potrzebnych do pracy agenta (m.in. zapisanych parametrĂłw kamer), a nastÄ&#x2122;pnie przechodzi do rozpoznaposzukiwanie_twarzy wania gestĂłw. Najpierw w stanie cS vision uruchamiana jest procedura poszukiwania twarzy operatora. JeĹ&#x203A;li zostanie ona odnaleziona w oczekiwanym miejscu przestrzeni roboczej, poszukiwanie_dloni to automat przechodzi do stanu cS vision , w ktĂłrym ustalane jest poĹ&#x201A;oĹźenie obu dĹ&#x201A;oni operatora. Po ich poprawnym zlorozpoznawanie_gestĂłw kalizowaniu automat przechodzi do stanu cS vision , w ktĂłrym rozpoznaje i Ĺ&#x203A;ledzi dĹ&#x201A;onie oraz interpretuje gesty statyczne i dynamiczne. W przypadku utraty moĹźliwoĹ&#x203A;ci Ĺ&#x203A;ledzenia dĹ&#x201A;oni bÄ&#x2026;dĹş twarzy operatora automat wraca do stanu â&#x20AC;&#x201C; odpoposzukiwanie_dloni poszukiwanie_twarzy wiednio cS vision lub cS vision . Trywialne auto-
c sterowanie Saudio
[sterowanie] [zarzadzanie] c uczenie Saudio
c zarzadzanie Saudio
[uczenie]
c nagrania Saudio
[zarzadzaj nagraniami]
[zarzadzaj poleceniami]
[zarzadzaj uzytkownikami] c polecenia Saudio
c uzytkownicy Saudio
Rys. 9. Automat skoĹ&#x201E;czony przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cy zachowania podsystemu sterowania c audio Fig. 9. Finite state automaton switching behaviours of the control subsystem caudio
48
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
%$ & %$ ' ($ ' %$ ) ($ * ($ % )$ ' $ + maty skoĹ&#x201E;czone wirtualnego receptora rvision,1 i rzeczywistych receptorĂłw Rvision,1 i Rvision,2 agenta avision przedstawiono na rys. 13. Podsystem sterowania agenta avisionGUI, odpowiedzialnego za wyĹ&#x203A;wietlanie okna interfejsu uĹźytkownika moduĹ&#x201A;u wizyjnego, realizuje tylko jedno zachowanie. Polega ono na wyĹ&#x203A;wietlaniu w swoim oknie obrazĂłw otrzymywanych od agenta avision oraz przesyĹ&#x201A;aniu do tego agenta poleceĹ&#x201E; bÄ&#x2122;dÄ&#x2026;cych efektem interakcji z agentami wytwarzajÄ&#x2026;cymi kursory na ekranie albo dostarczajÄ&#x2026;cymi informacji o wciĹ&#x203A;niÄ&#x2122;ciu klawiszy klawiatury bÄ&#x2026;dĹş innym zdarzeniu wywoĹ&#x201A;ywanym przez urzÄ&#x2026;dzenie wejĹ&#x203A;ciowe.
-! /0 0 $ 23/
Rys. 10. Struktura agenta wizyjnego Fig. 10. Structure of the vision agent
Rys. 11. Struktura agenta avision-database Fig. 11. Structure of the agent avision-database
Rys. 12. Automat skoĹ&#x201E;czony przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;cy zachowania podsystemu sterowania c vision Fig. 12. Finite state automaton switching the behaviours of the control subsystem cvision
Agenty upostaciowione, z ktĂłrych skomponowano interfejs NPC, odpowiadajÄ&#x2026; ogĂłlnej definicji agenta przedstawionej w czÄ&#x2122;Ĺ&#x203A;ci 3. tego artykuĹ&#x201A;u. Literatura dotyczÄ&#x2026;ca agentĂłw, zarĂłwno programowych, jak i stosowanych w robotyce, jest bogata i, jak juĹź wspomniano, nie doczekaĹ&#x201A;a siÄ&#x2122; jednoznacznej definicji tego pojÄ&#x2122;cia. Definicje tam przedstawione zazwyczaj odnoszÄ&#x2026; siÄ&#x2122; do licznych cech róşnorodnych typĂłw agentĂłw. Warto tutaj spojrzeÄ&#x2021; na agenta upostaciowionego pod kÄ&#x2026;tem czÄ&#x2122;sto wymienianych atrybutĂłw róşnych typĂłw agentĂłw. PojÄ&#x2122;cie agenta upostaciowionego zostaĹ&#x201A;o spopularyzowane przez Rodneya Brooksa (np. [9]) w trakcie debaty dotyczÄ&#x2026;cej sztucznej inteligencji. Tradycyjna sztuczna inteligencja koncentrowaĹ&#x201A;a siÄ&#x2122; na modelu Ĺ&#x203A;rodowiska (jego reprezentacji), by mĂłc wyciÄ&#x2026;gaÄ&#x2021; wnioski dotyczÄ&#x2026;ce przyszĹ&#x201A;ych akcji do wykonania przez system. Planowanie akcji byĹ&#x201A;o gĹ&#x201A;Ăłwnym przedmiotem zainteresowania badaczy. Brooks zakwestionowaĹ&#x201A; to podejĹ&#x203A;cie stwierdzajÄ&#x2026;c, Ĺźe najlepszym modelem Ĺ&#x203A;rodowiska jest ono samo, a inteligentne dziaĹ&#x201A;anie jest wynikiem ewolucyjnego procesu prowadzÄ&#x2026;cego do doskonalenia sposobu dziaĹ&#x201A;ania systemu [8, 10, 11]. W rozumieniu Brooksa, dwoma podstawowymi cechami agenta jest posiadanie ciaĹ&#x201A;a/postaci (ang. embodiment) oraz usytuowanie (ang. situatedness), czyli egzystowanie w realnym otoczeniu, a nie w Ĺ&#x203A;wiecie abstrakcyjnym (uproszczonym). Wymienia on rĂłwnieĹź inteligencjÄ&#x2122; bÄ&#x2122;dÄ&#x2026;cÄ&#x2026; nastÄ&#x2122;pstwem wyĹ&#x201A;aniania (ang. emergence) jako efektu interakcji miÄ&#x2122;dzy agentem i jego otoczeniem. SpĂłr miÄ&#x2122;dzy Brooksem i przedstawicielami klasycznej sztucznej inteligencji, dotyczÄ&#x2026;cy wyĹźszoĹ&#x203A;ci agentĂłw reaktywnych nad deliberatywnymi, nie zostaĹ&#x201A; jednoznacznie rozstrzygniÄ&#x2122;ty, bo do inteligentnego dziaĹ&#x201A;ania potrzebne jest, w istocie, zarĂłwno wnioskowanie prowadzone w oparciu o model Ĺ&#x203A;wiata, jak i zachowania reaktywne wykorzystujÄ&#x2026;ce uogĂłlnianie (ang. subsumption) â&#x20AC;&#x201C; powstaĹ&#x201A;y wiÄ&#x2122;c agenty hybrydowe (np. [4]). Co najmniej niektĂłre agenty wykorzystane do stworzenia interfejsu NPC sÄ&#x2026; upostaciowione, gdyĹź posiadajÄ&#x2026; ciaĹ&#x201A;o, a wiÄ&#x2122;c mikrofony i ekran monitora, sĹ&#x201A;uĹźÄ&#x2026;ce do kontaktu z operatorem znajdujÄ&#x2026;cym siÄ&#x2122; w Ĺ&#x203A;rodowisku. Ponadto sÄ&#x2026; usytuowane, poniewaĹź przetwarzajÄ&#x2026; sygnaĹ&#x201A;y dĹşwiÄ&#x2122;kowe i Ĺ&#x203A;wietlne bezpoĹ&#x203A;rednio pochodzÄ&#x2026;ce z tego otoczenia. SygnaĹ&#x201A;ami tymi sÄ&#x2026; mowa oraz gesty operatora. Mamy tu jednak do czynienia z agentami hybrydowymi, bo sygnaĹ&#x201A;y te nie oddziaĹ&#x201A;ujÄ&#x2026; w sposĂłb bezpoĹ&#x203A;redni na efektory, a wiÄ&#x2122;c nie jest to system czysto reaktywny. Wpierw te sygnaĹ&#x201A;y przetwarzane sÄ&#x2026; na postaÄ&#x2021; symbolicznÄ&#x2026; komend, a wiÄ&#x2122;c wykorzystujÄ&#x2026; modele wiÄ&#x2026;ĹźÄ&#x2026;ce sygnaĹ&#x201A;y z ich znaczeniem.
Rys. 13. Automaty skoĹ&#x201E;czone przeĹ&#x201A;Ä&#x2026;czajÄ&#x2026;ce zachowania rzeczywistych receptorĂłw Rvision,1 i Rvision,2 oraz wirtualnego receptora rvision,1 Fig. 13. Finite state automaton switching the behaviours of real receptor Rvision,1 i Rvision,2 and virtual receptor rvision,1 of the agent avision
49
!" #$ SpĂłr dotyczÄ&#x2026;cy emergencji inteligencji w systemach doprowadziĹ&#x201A; do rozpowszechnienia pojÄ&#x2122;cia agenta w Ĺ&#x203A;rodowisku naukowcĂłw zajmujÄ&#x2026;cych siÄ&#x2122; sztuczna inteligencjÄ&#x2026;. Klasyczny podrÄ&#x2122;cznik tej dziedziny [26] zbudowany jest wĹ&#x201A;aĹ&#x203A;nie wokĂłĹ&#x201A; pojÄ&#x2122;cia agenta. W najbardziej ogĂłlnej postaci traktuje agenta jako coĹ&#x203A;, co dziaĹ&#x201A;a. Taka definicja jest zbyt ogĂłlna, wiÄ&#x2122;c dodatkowo wyróşnia poĹźÄ&#x2026;dane cechy agentĂłw: autonomiczne sterowanie, czyli dziaĹ&#x201A;anie bez udziaĹ&#x201A;u czĹ&#x201A;owieka, zdolnoĹ&#x203A;Ä&#x2021; do postrzegania Ĺ&#x203A;rodowiska, dĹ&#x201A;ugotrwaĹ&#x201A;oĹ&#x203A;Ä&#x2021; dziaĹ&#x201A;ania, adaptacja do zmian zachodzÄ&#x2026;cych w Ĺ&#x203A;rodowisku, zdolnoĹ&#x203A;Ä&#x2021; do przejmowania celu dziaĹ&#x201A;ania innych agentĂłw. Dodatkowo wymieniane sÄ&#x2026; agenty racjonalne, a wiÄ&#x2122;c takie, ktĂłrych dziaĹ&#x201A;anie przynosi najlepszy skutek lub najlepszy spodziewany skutek (jeĹźeli mamy do czynienia z niepewnoĹ&#x203A;ciÄ&#x2026;). PojawiajÄ&#x2026; siÄ&#x2122; teĹź agenty uczÄ&#x2026;ce siÄ&#x2122; czyli takie, ktĂłre polepszajÄ&#x2026; wyniki swojego dziaĹ&#x201A;ania w miarÄ&#x2122; zdobywania nowych doĹ&#x203A;wiadczeĹ&#x201E;. Agenty interfejsu NPC, po dostrojeniu modeli przez uczenie, dziaĹ&#x201A;ajÄ&#x2026; autonomicznie, dysponujÄ&#x2026; zdolnoĹ&#x203A;ciÄ&#x2026; do postrzegania Ĺ&#x203A;rodowiska (zdolnoĹ&#x203A;Ä&#x2021; do interakcji z operatorem), niektĂłre istniejÄ&#x2026; tak dĹ&#x201A;ugo, jak dĹ&#x201A;ugo istnieje interfejs, a agenty pomocnicze zarzÄ&#x2026;dzajÄ&#x2026;ce oknami dziaĹ&#x201A;ajÄ&#x2026; przez czas, kiedy sÄ&#x2026; niezbÄ&#x2122;dne do realizacji konkretnej operacji. Nie majÄ&#x2026; one zdolnoĹ&#x203A;ci adaptacyjnych i nie mogÄ&#x2026; przejmowaÄ&#x2021; celu dziaĹ&#x201A;ania innych agentĂłw. RóşnorodnoĹ&#x203A;Ä&#x2021; cech przypisywanych agentom wynika z ewolucji, ktĂłra doprowadziĹ&#x201A;a do pojawienia siÄ&#x2122; tego pojÄ&#x2122;cia na gruncie informatyki. W podrÄ&#x2122;czniku [25] autor wywodzi agenta z pojÄ&#x2122;cia aktora, ktĂłre stanowi elementarne obliczenie wykonywane rĂłwnolegle z innymi takimi obliczeniami. Aktory zmieniajÄ&#x2026; swĂłj stan wewnÄ&#x2122;trzny oraz komunikujÄ&#x2026; siÄ&#x2122; z innymi aktorami. UogĂłlnieniem aktora staĹ&#x201A; siÄ&#x2122; aktywny obiekt, dziaĹ&#x201A;ajÄ&#x2026;cy w swym wĹ&#x201A;asnym wÄ&#x2026;tku. UogĂłlnienie aktywnego aktora doprowadziĹ&#x201A;o do pojÄ&#x2122;cia agenta, ktĂłry stanowi autonomicznÄ&#x2026; jednostkÄ&#x2122; dziaĹ&#x201A;ajÄ&#x2026;cÄ&#x2026; w Ĺ&#x203A;rodowisku. Jednostka ta dÄ&#x2026;Ĺźy do realizacji swojego celu, co wymaga wykonywania pewnych czynnoĹ&#x203A;ci oraz komunikacji z innymi agentami. Efektem tych rozwaĹźaĹ&#x201E; historycznych jest okreĹ&#x203A;lenie agenta w bardzo podobny sposĂłb, jak zdefiniowano agenta upostaciowionego. PodjÄ&#x2122;to teĹź prĂłbÄ&#x2122; mariaĹźu agentĂłw dziaĹ&#x201A;ajÄ&#x2026;cych w cyberprzestrzeni z tymi funkcjonujÄ&#x2026;cymi w przestrzeni fizycznej [13]. RozwĂłj systemĂłw operacyjnych doprowadziĹ&#x201A; do powstania pojÄ&#x2122;cia procesu. PoczÄ&#x2026;tkowo procesy komunikowaĹ&#x201A;y siÄ&#x2122; ze sobÄ&#x2026; jedynie wewnÄ&#x2026;trz systemu operacyjnego, ale wraz z rozwojem sieci komputerowych ta komunikacja musiaĹ&#x201A;a zostaÄ&#x2021; rozszerzona, co doprowadziĹ&#x201A;o do powstania koncepcji cyberprzestrzeni. Wspomniana praca pokazuje moĹźliwoĹ&#x203A;ci i konsekwencje przekroczenia granicy cyberprzestrzeni w celu wnikniÄ&#x2122;cia do przestrzeni rzeczywistej, w ktĂłrej dziaĹ&#x201A;ajÄ&#x2026; urzÄ&#x2026;dzenia, a wiÄ&#x2122;c i roboty. PoniewaĹź proces funkcjonuje w obrÄ&#x2122;bie pojedynczego systemu operacyjnego, to uogĂłlnienie tego pojÄ&#x2122;cia na cyberprzestrzeĹ&#x201E; dla odróşnienia zostaĹ&#x201A;o nazwane agentem. CyberprzestrzeĹ&#x201E; stanowi Ĺ&#x203A;rodowisko, w ktĂłrym agent dziaĹ&#x201A;a, a wiÄ&#x2122;c postrzega jÄ&#x2026; i wpĹ&#x201A;ywa na niÄ&#x2026;. Dalsza ewolucja doprowadziĹ&#x201A;a do powstania agentĂłw mobilnych, ktĂłre sÄ&#x2026; zdolne do przemieszczania siÄ&#x2122; w cyberprzestrzeni. PoniewaĹź roboty przemieszczajÄ&#x2026; siÄ&#x2122; w przestrzeni rzeczywistej, dostrzeĹźono tu, z jednej strony paralelÄ&#x2122;, a z drugiej strony pole ciekawych badaĹ&#x201E; na styku tych przestrzeni. PodstawÄ&#x2026; tych rozwaĹźaĹ&#x201E; byĹ&#x201A; rozwĂłj pojÄ&#x2122;Ä&#x2021; â&#x20AC;&#x201C; od algorytmu przez obiekt do agenta. MotywacjÄ&#x2026; byĹ&#x201A;a koniecznoĹ&#x203A;Ä&#x2021; dekompozycji algorytmu, w celu umysĹ&#x201A;owego zrozumienia zĹ&#x201A;oĹźonoĹ&#x203A;ci tworzonego systemu przez projektanta. Wspomniana ewolucja zwiÄ&#x2122;kszaĹ&#x201A;a stopieĹ&#x201E; autonomii dziaĹ&#x201A;ania kolejno wymienionych pojÄ&#x2122;Ä&#x2021;. W pracy [13] zdefiniowano M-agenta, ktĂłry na podstawie danych pozyskanych ze Ĺ&#x203A;rodowiska oraz wewnÄ&#x2122;trznego modelu sĹ&#x201A;uĹźÄ&#x2026;cego symulacji moĹźliwych zachowaĹ&#x201E;, wybiera optymalnÄ&#x2026; strategiÄ&#x2122; dziaĹ&#x201A;ania i te realizuje wpĹ&#x201A;ywajÄ&#x2026;c na Ĺ&#x203A;rodowisko. Specyfikacja M-agenta za pomocÄ&#x2026; opisanego tu agenta upostaciowionego zostaĹ&#x201A;a przedstawiona w [35]. Jednak do sterowania platformÄ&#x2026; za pomocÄ&#x2026; gestĂłw
50
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
i mowy nie jest potrzebny wyrafinowany model otoczenia â&#x20AC;&#x201C; wystarczÄ&#x2026; wzorce gestĂłw i komend. Agentom programowym (softwareâ&#x20AC;&#x2122;owym) poĹ&#x203A;wiÄ&#x2122;cona jest praca [22], w ktĂłrej przytoczono róşne kryteria, wedĹ&#x201A;ug ktĂłrych moĹźna sklasyfikowaÄ&#x2021; agenty. Wyróşnia siÄ&#x2122; agenty statyczne i mobilne, w zaleĹźnoĹ&#x203A;ci od tego czy mogÄ&#x2026; siÄ&#x2122; one przemieszczaÄ&#x2021; po sieci. Agenty interfejsu NPC sÄ&#x2026; statyczne. Natomiast praca [22] odnosi siÄ&#x2122; do omawianych wyĹźej agentĂłw reaktywnych, deliberatywnych i hybrydowych oraz autonomicznoĹ&#x203A;ci agentĂłw. Podnosi kwestie uczenia siÄ&#x2122; i zdolnoĹ&#x203A;ci do wspĂłĹ&#x201A;pracy miÄ&#x2122;dzy agentami. Agenty interfejsu NPC uczÄ&#x2026; siÄ&#x2122; jedynie w trakcie ich konfiguracji, natomiast wspĂłĹ&#x201A;dziaĹ&#x201A;ajÄ&#x2026; ze sobÄ&#x2026;, by osiÄ&#x2026;gnÄ&#x2026;Ä&#x2021; wspĂłlny cel. Wspomniana praca sugeruje wykorzystanie jednego wspĂłlnego jÄ&#x2122;zyka do porozumiewania siÄ&#x2122; agentĂłw. Tu taki jÄ&#x2122;zyk nie zostaĹ&#x201A; stworzony. PoszczegĂłlne agenty porozumiewajÄ&#x2026; siÄ&#x2122; ze sobÄ&#x2026; dziÄ&#x2122;ki oddzielnym zestawom przesyĹ&#x201A;anych wiadomoĹ&#x203A;ci. Wreszcie wymieniana jest oddzielna klasa agentĂłw interfejsowych sĹ&#x201A;uĹźÄ&#x2026;cych do porozumiewania siÄ&#x2122; uĹźytkownikĂłw z systemami. Interfejs NPC speĹ&#x201A;nia, jako caĹ&#x201A;oĹ&#x203A;Ä&#x2021;, dokĹ&#x201A;adnie tÄ&#x2122; rolÄ&#x2122;. NaleĹźy teĹź zauwaĹźyÄ&#x2021;, Ĺźe czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; agentĂłw interfejsu NPC to agenty upostaciowione, a czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; to agenty czysto programowe. Tekst [24] bazuje na definicji agenta zaproponowanej przez Wooldridgeâ&#x20AC;&#x2122;a [34], mĂłwiÄ&#x2026;cej Ĺźe agent stanowi system komputerowy, ktĂłry jest usytuowany w pewnym Ĺ&#x203A;rodowisku i jest zdolny do autonomicznych dziaĹ&#x201A;aĹ&#x201E; w tym Ĺ&#x203A;rodowisku w celu realizacji zadaĹ&#x201E;, dla ktĂłrych zostaĹ&#x201A; zaprojektowany. Praca [24] wymienia poĹźÄ&#x2026;dane cechy inteligentnego agenta: reaktywnoĹ&#x203A;Ä&#x2021;, czyli zdolnoĹ&#x203A;Ä&#x2021; do reagowania na zmiany zachodzÄ&#x2026;ce w Ĺ&#x203A;rodowisku; proaktywnoĹ&#x203A;Ä&#x2021;, czyli dÄ&#x2026;Ĺźenie do realizacji celu; socjalnoĹ&#x203A;Ä&#x2021;, czyli zdolnoĹ&#x203A;Ä&#x2021; do wchodzenia w interakcje z innymi agentami; elastycznoĹ&#x203A;Ä&#x2021;, czyli zdolnoĹ&#x203A;Ä&#x2021; do osiÄ&#x2026;gania celĂłw róşnymi sposobami oraz odpornoĹ&#x203A;Ä&#x2021;, czyli umiejÄ&#x2122;tnoĹ&#x203A;Ä&#x2021; radzenia sobie z bĹ&#x201A;Ä&#x2122;dami. Agenty wchodzÄ&#x2026;ce w skĹ&#x201A;ad interfejsu NPC do pewnego stopnia majÄ&#x2026; wszystkie te cechy. Z kolei praca [31] traktuje o programowaniu zorientowanym agentowo, jako uogĂłlnieniu programowania obiektowego, okreĹ&#x203A;la agenta przez takie wĹ&#x201A;aĹ&#x203A;ciwoĹ&#x203A;ci jego â&#x20AC;&#x17E;umysĹ&#x201A;uâ&#x20AC;?, jak: przekonania, zdolnoĹ&#x203A;ci, wybory oraz zobowiÄ&#x2026;zania. To podejĹ&#x203A;cie wywodzi siÄ&#x2122; z prac dotyczÄ&#x2026;cych architektury BDI (ang. belief, desire, intension) [24, 31]. Przekonania dotyczÄ&#x2026; aktualnego stanu Ĺ&#x203A;rodowiska i samego agenta, pragnienia wynikajÄ&#x2026; z celu, ktĂłry ma byÄ&#x2021; osiÄ&#x2026;gniÄ&#x2122;ty, natomiast intencje dotyczÄ&#x2026; pragnieĹ&#x201E;, do ktĂłrych osiÄ&#x2026;gniÄ&#x2122;cia agent siÄ&#x2122; zobowiÄ&#x2026;zaĹ&#x201A;, a wiÄ&#x2122;c dotyczÄ&#x2026; wyboru planu osiÄ&#x2026;gniÄ&#x2122;cia celu. W przypadku agentĂłw interfejsu NPC nie wprowadzono pojÄ&#x2122;cia â&#x20AC;&#x17E;umysĹ&#x201A;uâ&#x20AC;?, gdyĹź jest on nadmiarowy w stosunku do potrzeb. W konsekwencji tu prezentowane agenty upostaciowione nie korzystajÄ&#x2026; z architektury BDI. Na gruncie sztucznej inteligencji prowadzone sÄ&#x2026; rĂłwnieĹź prace dotyczÄ&#x2026;ce zdobywania nowej wiedzy przez agenty. PrzykĹ&#x201A;adowo praca [27] opisuje system wieloagentowy stosujÄ&#x2026;cy logikÄ&#x2122; niemonotonicznÄ&#x2026; do wnioskowania, w celu odpowiedzi na zapytania. MĂłgĹ&#x201A;by to byÄ&#x2021; ciekawy kierunek rozwoju interfejsu NPC, dajÄ&#x2026;cy uĹźytkownikowi moĹźliwoĹ&#x203A;Ä&#x2021; nie tylko sterowania prezentacjÄ&#x2026; wynikĂłw dziaĹ&#x201A;ania platformy, ale rĂłwnieĹź kierowania do niej zapytaĹ&#x201E;. Na gruncie informatyki rozpatrywane sÄ&#x2026; rĂłwnieĹź masywne systemy wieloagentowe (ang. Massive Multi-Agent Systems), zĹ&#x201A;oĹźone z olbrzymiej liczby agentĂłw. W takich systemach gĹ&#x201A;Ăłwnym problemem jest skalowalnoĹ&#x203A;Ä&#x2021; komunikacji agentĂłw. RozwiÄ&#x2026;zanie tego problemu w duĹźej mierze zaleĹźy od technologii implementacji agentĂłw jako wÄ&#x2026;tkĂłw, oraz sposobu realizacji przesyĹ&#x201A;ania wiadomoĹ&#x203A;ci miÄ&#x2122;dzy agentami. Polem zastosowania takich systemĂłw sÄ&#x2026;, przykĹ&#x201A;adowo, obliczenia ewolucyjne [20]. Chwilowo w systemach robotycznych tak olbrzymie liczby agentĂłw nie wystÄ&#x2122;pujÄ&#x2026;, stopieĹ&#x201E; wspĂłĹ&#x201A;bieĹźnoĹ&#x203A;ci jest wiÄ&#x2122;c duĹźo niĹźszy niĹź ten przedstawiony w pracy [20]. NaleĹźy siÄ&#x2122; jednak spodziewaÄ&#x2021;, Ĺźe w przyszĹ&#x201A;oĹ&#x203A;ci roje robotĂłw mogÄ&#x2026; staÄ&#x2021; siÄ&#x2122; ogromne. Wtedy wykorzystanie takich technologii moĹźe byÄ&#x2021; koniecznoĹ&#x203A;ciÄ&#x2026;. Informatycy badajÄ&#x2026; rĂłwnieĹź ewolucyjne systemy wieloagentowe (ang. Evolutionary Multi-Agent Systems), A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
%$ & %$ ' ($ ' %$ ) ($ * ($ % )$ ' $ + w ktĂłrych kaĹźdy z agentĂłw reprezentuje pojedyncze rozwiÄ&#x2026;zanie zadania optymalizacji [19]. Agenty wchodzÄ&#x2026; w interakcje miÄ&#x2122;dzy sobÄ&#x2026; (rozmnaĹźajÄ&#x2026; siÄ&#x2122;, wspĂłĹ&#x201A;zawodniczÄ&#x2026; o zasoby) przekazujÄ&#x2026;c sobie skwantowany zasĂłb zwany energiÄ&#x2026;. Z punktu widzenia informatyki istotne jest odseparowanie obliczeĹ&#x201E; od modelu ich realizacji (sekwencyjnego, rĂłwnolegĹ&#x201A;ego, typu przepĹ&#x201A;yw danych dataflow). Przedstawiany w tym artykule model agenta rĂłwnieĹź abstrahuje od jego implementacji, a wiÄ&#x2122;c sposobu prowadzenia obliczeĹ&#x201E;. Na zakoĹ&#x201E;czenie dyskusji dotyczÄ&#x2026;cej relacji miÄ&#x2122;dzy prezentowanym tu agentem upostaciowionym i agentami definiowanymi w bardzo bogatej literaturze tematu warto jeszcze wspomnieÄ&#x2021; o inĹźynierii systemĂłw wieloagentowych [14]. PodstawÄ&#x2026; jest rozdzielenie fazy specyfikacji systemu od fazy jego implementacji, czyli realizacja ogĂłlnych zaleceĹ&#x201E; inĹźynierii oprogramowania [28]. Istotnym jest dodatkowe zalecenie mĂłwiÄ&#x2026;ce, Ĺźe specyfikacjÄ&#x2122; naleĹźy sporzÄ&#x2026;dziÄ&#x2021; dla kaĹźdego agenta oddzielnie, a dziaĹ&#x201A;anie caĹ&#x201A;oĹ&#x203A;ci systemu powinno wynikaÄ&#x2021; z interakcji tych agentĂłw. Kolejnym zaleceniem jest przyporzÄ&#x2026;dkowanie kaĹźdej roli lub grupie rĂłl pokrewnych, ktĂłre system ma peĹ&#x201A;niÄ&#x2021;, jednego agenta realizujÄ&#x2026;cego te role. Ponadto zaleca siÄ&#x2122; stosowanie automatĂłw skoĹ&#x201E;czonych do opisu dziaĹ&#x201A;ania agentĂłw. Specyfikacja i implementacja interfejsu NPC jest zgodna z tymi ogĂłlnymi zaleceniami. NaleĹźy jednak podkreĹ&#x203A;liÄ&#x2021;, Ĺźe wĹ&#x203A;rĂłd zaleceĹ&#x201E; brak byĹ&#x201A;o wskazĂłwek na temat wewnÄ&#x2122;trznej struktury i sposobu dziaĹ&#x201A;ania agentĂłw. Prezentowany tu sposĂłb tworzenia systemu wieloagentowego jest konkretniejszy, przez co uĹ&#x201A;atwia projektantowi stworzenie systemu wieloagentowego. ZarĂłwno struktura, jak i sposĂłb dziaĹ&#x201A;ania okreĹ&#x203A;lone sÄ&#x2026; wzorcami.
4! 5 $ JednÄ&#x2026; z decyzji dotyczÄ&#x2026;cych implementacji jest ta odnoszÄ&#x2026;ca siÄ&#x2122; do liczby komputerĂłw, ktĂłre majÄ&#x2026; realizowaÄ&#x2021; zadania systemu. BezpoĹ&#x203A;redni wpĹ&#x201A;yw na niÄ&#x2026; ma obliczeniochĹ&#x201A;onnoĹ&#x203A;Ä&#x2021; stosowanych algorytmĂłw. W przypadku relatywnie niskiej obliczeniochĹ&#x201A;onnoĹ&#x203A;ci kod wszystkich agentĂłw wchodzÄ&#x2026;cych w skĹ&#x201A;ad projektowanego systemu moĹźna ulokowaÄ&#x2021; na jednym komputerze. Z takÄ&#x2026; sytuacjÄ&#x2026; mamy do czynienia w przypadku interfejsu NPC. Na rys. 14 przedstawiono ogĂłlnÄ&#x2026; zasadÄ&#x2122; implementacji
komunikacji zarĂłwno miÄ&#x2122;dzy agentami jak i podsystemami agentĂłw, w przypadku gdy wszystkie agenty i podsystemy wykonywane sÄ&#x2026; przez ten sam komputer. Komunikacja ta odbywa siÄ&#x2122; za poĹ&#x203A;rednictwem systemu operacyjnego. Schemat ten pokazuje rĂłwnieĹź sposĂłb interakcji miÄ&#x2122;dzy podsystemami a sterownikami (ang. driverami) urzÄ&#x2026;dzeĹ&#x201E; oraz miÄ&#x2122;dzy sterownikami a urzÄ&#x2026;dzeniami wykorzystywanymi przez interfejs NPC. Jak widaÄ&#x2021;, implementacja zakĹ&#x201A;ada powstanie struktury trĂłjwarstwowej, w ktĂłrej gĂłrnÄ&#x2026; warstwÄ&#x2122; bezpoĹ&#x203A;rednio okreĹ&#x203A;la specyfikacja. PoniĹźej znajduje siÄ&#x2122; warstwa odpowiadajÄ&#x2026;ca systemowi operacyjnemu komputera. W tej warstwie rezydujÄ&#x2026; zarĂłwno sterowniki urzÄ&#x2026;dzeĹ&#x201E; â&#x20AC;&#x201C; receptorĂłw i efektorĂłw, a takĹźe oprogramowanie organizujÄ&#x2026;ce przekazywanie informacji miÄ&#x2122;dzy wÄ&#x2026;tkami i procesami. NajniĹźszÄ&#x2026; warstwÄ&#x2122; tworzÄ&#x2026; tylko urzÄ&#x2026;dzenia, ktĂłre same w sobie mogÄ&#x2026; zawieraÄ&#x2021; oprogramowanie, ale to tworzone jest przez producentĂłw sprzÄ&#x2122;tu i jest ukryte przed projektantem systemu.
)6! 3 ArtykuĹ&#x201A; poĹ&#x203A;wiÄ&#x2122;cony jest specyfikacji i implementacji wielomodalnego interfejsu do sterowania prezentacjÄ&#x2026; wynikĂłw wytwarzanych przez NarodowÄ&#x2026; PlatformÄ&#x2122; CyberbezpieczeĹ&#x201E;stwa. Ta czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; artykuĹ&#x201A;u koncentruje siÄ&#x2122; na opisie struktury i sposobu dziaĹ&#x201A;ania interfejsu. Do jego specyfikacji wykorzystano koncepcjÄ&#x2122; agentĂłw upostaciowionych. Dotychczas ta metoda specyfikacji stosowana byĹ&#x201A;a do systemĂłw robotycznych, a wiÄ&#x2122;c do opisu urzÄ&#x2026;dzeĹ&#x201E; dziaĹ&#x201A;ajÄ&#x2026;cych w Ĺ&#x203A;rodowisku fizycznym. Tutaj jednak mamy do czynienia z systemem dziaĹ&#x201A;ajÄ&#x2026;cym na styku Ĺ&#x203A;rodowiska fizycznego, w ktĂłrym funkcjonuje operator, oraz cyberprzestrzeni, w ktĂłrej tworzone sÄ&#x2026; wyniki analizy aktywnoĹ&#x203A;ci w sieci. Ten charakter Ĺ&#x203A;rodowiska wymagaĹ&#x201A; specyficznego rozdzielenia systemu i Ĺ&#x203A;rodowiska. W szczegĂłlnoĹ&#x203A;ci zakwalifikowano ekran monitora do Ĺ&#x203A;rodowiska, natomiast elementy okienek i kursory pojawiajÄ&#x2026;ce siÄ&#x2122; na tym ekranie zaliczono do receptorĂłw i efektorĂłw reprezentujÄ&#x2026;cych je agentĂłw. Ponadto agenty zostaĹ&#x201A;y pogrupowane w moduĹ&#x201A;y, co nadaĹ&#x201A;o systemowi hierarchiczny charakter. Wyróşniono trzy takie moduĹ&#x201A;y: audio, wizji oraz prezentacji. DziÄ&#x2122;ki zastosowaniu grup wspĂłĹ&#x201A;pracujÄ&#x2026;cych agentĂłw struktura powstaĹ&#x201A;ego interfejsu ma naturÄ&#x2122; otwartÄ&#x2026;. System moĹźe byÄ&#x2021; rozszerzony o kolejne moduĹ&#x201A;y, jeĹźeli
1
2 CS2
CS1
V E1
RE1
RE1
RE1
V E2
V R1
RR1
RR1
RR1
V R2
RE2
RE2
RE2
RR2
RR2
RR2
Rys. 14. Schemat komunikacji miÄ&#x2122;dzyagentowej i wewnÄ&#x2026;trzagentowej zastosowanej w interfejsie NPC Fig. 14. Intra-agent and interagent communication employed by the NCP interface
51
!" #$ 13. Cetnarowicz K., Inteligencja wokĂłĹ&#x201A; nas. WspĂłĹ&#x201A;dziaĹ&#x201A;anie agentĂłw softwareowych, robotĂłw, inteligentnych urzÄ&#x2026;dzeĹ&#x201E;, Vol. 15, rozdziaĹ&#x201A; Mâ&#x20AC;&#x201C;agent, 137â&#x20AC;&#x201C;167. Wydawnictwo EXIT, 2010. 14. DeLoach S., Wood M., Sparkman C., Multiagent systems engineering. â&#x20AC;&#x153;International Journal of Software Engineering and Knowledge Engineeringâ&#x20AC;?, Vol. 11, No. 3, 2001, 231â&#x20AC;&#x201C;258, DOI: 10.1142/S0218194001000542. 15. Dumas B., Lalanne D., Oviatt S.. Human Machine Interaction, Vol. 5440 serii Lecture Notes in Computer Science, rozdziaĹ&#x201A; Multimodal Interfaces: A Survey of Principles, Models and Frameworks, 3â&#x20AC;&#x201C;26, Springer, 2009. 16. Jaimes A., Sebe N., Multimodal humanâ&#x20AC;&#x201C;computer interaction: A survey. â&#x20AC;&#x153;Computer Vision and Image Understandingâ&#x20AC;?, Vol. 108, No. 1â&#x20AC;&#x201C;2, 2007, 116â&#x20AC;&#x201C;134, Special Issue on Vision for Human-Computer Interaction, DOI: 10.1016/j.cviu.2006.10.019. 17. Kasprzak W., Rozpoznawanie obrazĂłw i sygnaĹ&#x201A;Ăłw mowy. Oficyna Wydawnicza Politechniki Warszawskiej, 2009. 18. Kornuta T., ZieliĹ&#x201E;ski C., Robot control system design exemplified by multi-camera visual servoing, â&#x20AC;&#x153;Journal of Intelligent & Robotic Systemsâ&#x20AC;?, Vol. 77, No. 3â&#x20AC;&#x201C;4, 2013, 499â&#x20AC;&#x201C;524, DOI: 10.1007/s10846-013-9883-x. 19. Krzywicki D., Faber Ĺ ., DÄ&#x2122;bski R., Concurrent agent-based evolutionary computations as adaptive dataflows. â&#x20AC;&#x153;Concurrency and Computation Practice and Experienceâ&#x20AC;?, Vol. 30, No. 22, 2018, 1â&#x20AC;&#x201C;29, DOI: 10.1002/cpe.4702. 20. Krzywicki D., Turek W., Byrski A., Kisiel-Dorohinicki M., Massively concurrent agent-based evolutionary computing. â&#x20AC;&#x153;Journal of Computational Scienceâ&#x20AC;?, Vol. 11, 2015, 153â&#x20AC;&#x201C; 162, DOI: 10.1016/j.jocs.2015.07.003. 21. McKenna S., Staheli D., Fulcher C., Meyer M., Bubblenet: A cyber security dashboard for visualizing patterns. Eurographics Conference on Visualization (EuroVis), Vol. 35, No. 3, June 2016, 281â&#x20AC;&#x201C;290, DOI: 10.1111/cgf.12904. 22. Nwana H.S., Ndumu D.T., A Brief Introduction to Software Agent Technology, 29â&#x20AC;&#x201C;47. Springer Berlin Heidelberg, Berlin, Heidelberg, 1998. 23. Oviatt S., Schuller B., Cohen P., Sonntag D., Potamianos G., Kruger A. (eds), The Handbook of Multimodal-Multisensor Interfaces, Vol. 1: Foundations, User Modeling, and Common Modality Combinations. ACM Books Series. Association for Computing Machinery (ACM), 2017. 24. Padgham L., Winikoff M., Developing Intelligent Agent Systems: A Practical Guide. John Wiley & Sons, 2004. 25. PaĹ&#x201A;ka P., Wieloagentowe systemy decyzyjne. Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa 2019. 26. Russell S., Norvig P., Artificial Intelligence: A Modern Approach. Prentice Hall, Upper Saddle River, N.J., 1995. 27. RybiĹ&#x201E;ski H., Ryzko D., Wiech P., Learning of Defaults by Agents in a Distributed Multi-Agent System Environment, 197â&#x20AC;&#x201C;213. Springer Berlin Heidelberg, Berlin, Heidelberg, 2013. 28. Sacha K., InĹźynieria oprogramowania. Wydawnictwo Naukowe PWN, Warszawa 2010. 29. Sethi A., Wills G., Expert-interviews led analysis of EEVi â&#x20AC;&#x201C; a model for effective visualization in cybersecurity. 2017 IEEE Symposium on Visualization for Cyber Security (VizSec), Oct 2017, 1â&#x20AC;&#x201C;8, DOI: 10.1109/VIZSEC.2017.8062195. 30. Shiravi H., Shiravi A., Ghorbani A., A survey of visualization systems for network security. IEEE Transactions on Visualization and Computer Graphics, Vol. 18, No. 8, 2012, 1313â&#x20AC;&#x201C;1329, DOI: 10.1109/TVCG.2011.144. 31. Shoham Y., Agent-oriented programming. â&#x20AC;&#x153;Artificial Intelligenceâ&#x20AC;?, Vol. 60, No. 1, 1993, 51â&#x20AC;&#x201C;92. 32. Song B., Choi J., Choi S.-S., Song J., Visualization of security event logs across multiple networks and its application to a CSOC. â&#x20AC;&#x153;Cluster Computingâ&#x20AC;?, 1â&#x20AC;&#x201C;12, Nov 2017.
trzeba dodaÄ&#x2021; nastÄ&#x2122;pne tryby porozumiewania siÄ&#x2122; operatora z systemem, a ponadto kaĹźdy z moduĹ&#x201A;Ăłw moĹźe byÄ&#x2021; wzbogacany o kolejne agenty realizujÄ&#x2026;ce dodatkowe funkcje tych moduĹ&#x201A;Ăłw. Obecne tryby porozumiewania siÄ&#x2122; mogÄ&#x2026; byÄ&#x2021; rozszerzane przez dodawanie nowych komend gĹ&#x201A;osowych oraz gestĂłw sterujÄ&#x2026;cych, w tym wykonywanych gĹ&#x201A;owÄ&#x2026; oraz sterowanie mimikÄ&#x2026; twarzy. Wszystko to umoĹźliwia wzglÄ&#x2122;dnie proste rozszerzenie struktury, a przez to zwiÄ&#x2122;kszenie jej moĹźliwoĹ&#x203A;ci. RozszerzajÄ&#x2026;c tÄ&#x2122; strukturÄ&#x2122; naleĹźy wykorzystaÄ&#x2021; to, co juĹź istnieje, jako wzorzec. Zastosowana metoda projektowa ma swoje korzenie w inĹźynierii oprogramowania, w szczegĂłlnoĹ&#x203A;ci przykĹ&#x201A;ada istotnÄ&#x2026; wagÄ&#x2122; do dwĂłch faz tworzenia systemu: fazy specyfikacji odpowiadajÄ&#x2026;cej na pytanie, co ma byÄ&#x2021; stworzone, oraz fazy implementacji definiujÄ&#x2026;cej, jak to ma byÄ&#x2021; wykonane. To rozdzielenie zainteresowania (ang. separation of concerns) projektanta prowadzi do stworzenia hierarchicznego systemu o przejrzystej architekturze. Wspomniana hierarchia obejmuje nastÄ&#x2122;pujÄ&#x2026;ce warstwy: moduĹ&#x201A;u, agenta, automatu skoĹ&#x201E;czonego, funkcji przejĹ&#x203A;cia. Obecnie podstawowymi sposobami komunikacji operatora z interfejsem sÄ&#x2026; polecenia wydawane albo gĹ&#x201A;osem albo gestem. Wprowadzono teĹź bezpieczny tryb dostÄ&#x2122;pu do platformy wykorzystujÄ&#x2026;cy identyfikacjÄ&#x2122; mĂłwcy. WstÄ&#x2122;pne testy wykazaĹ&#x201A;y wysokÄ&#x2026; skutecznoĹ&#x203A;Ä&#x2021; obecnych trybĂłw porozumiewania siÄ&#x2122; z systemem. Druga czÄ&#x2122;Ĺ&#x203A;Ä&#x2021; artykuĹ&#x201A;u poĹ&#x203A;wiÄ&#x2122;cona bÄ&#x2122;dzie zastosowanym algorytmom rozpoznawania: mowy, mĂłwcy i gestĂłw. Ponadto przedstawione zostanÄ&#x2026; wyniki przeprowadzonych testĂłw.
3 7 Praca wykonana w ramach projektu CYBERSECIDENT /369195/I/NCBR/2017, wspĂłĹ&#x201A;finansowanego przez Narodowe Centrum BadaĹ&#x201E; i Rozwoju w ramach programu CyberSecIdent.
8 9 $ 1. The National Cyber Security Centre, Holandia, https:// www.ncsc.nl [on-line: dostÄ&#x2122;p 5-04-2019]. 2. The National Cyber Security Centre, Wielka Brytania, https://www.ncsc.gov.uk [on-line: dostÄ&#x2122;p 5-04-2019]. 3. The National Cybersecurity and Communications Integration Center, USA, https://ics-cert.us-cert.gov [on-line: dostÄ&#x2122;p 5-04-2019]. 4. Arkin R.C., Behavior-Based Robotics. MIT Press, 1998. 5. Best D.M., Endert A., Kidwell D., 7 key challenges for visualization in cyber network defense. Proceedings of the Eleventh Workshop on Visualization for Cyber Security, VizSec â&#x20AC;&#x2122;14, 33â&#x20AC;&#x201C;40, DOI: 10.1145/2671491.2671497. 6. Bonabeau E., Dorigo M., Theraulaz G., Swarm Intelligence: From Natural to Artificial Systems. Oxford University Press, New York, Oxford, 1999. 7. Bostock M., Pseudo-Dorling cartogram, https://bl.ocks. org/mbostock/4055892, 2015. [on-line: dostÄ&#x2122;p 5-04-2019]. 8. Brooks R.A., Elephants donâ&#x20AC;&#x2122;t play chess. â&#x20AC;&#x153;Robotics and autonomous systemsâ&#x20AC;?, Vol. 6, No. 1â&#x20AC;&#x201C;2, 1990, 3â&#x20AC;&#x201C;15, DOI: 10.1016/S0921-8890(05)80025-9. 9. Brooks R.A., Intelligence without reason. Artificial intelligence: critical concepts, 3:107â&#x20AC;&#x201C;163, 1991. 10. Brooks R.A., Intelligence without representation. Artificial Intelligence, 47(1-3):139â&#x20AC;&#x201C;159, January 1991. 11. Brooks R.A., New approaches to robotics. â&#x20AC;&#x153;Scienceâ&#x20AC;?, Vol. 253, No. 5025, September 1991, 1227â&#x20AC;&#x201C;1232, DOI: 10.1126/science.253.5025.1227. 12. Cao N., Lin C., Zhu Q., Lin Y., Teng X., Wen X., Voila: Visual anomaly detection and monitoring with streaming spatiotemporal data. IEEE Transactions on Visualization and Computer Graphics, Vol. 24, No. 1, Jan 2018, 23â&#x20AC;&#x201C;33, DOI: 10.1109/TVCG.2017.2744419.
52
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
%$ & %$ ' ($ ' %$ ) ($ * ($ % )$ ' $ + 33. Turk M., Multimodal interaction: A review. â&#x20AC;&#x153;Pattern Recognition Lettersâ&#x20AC;?, Vol. 36, 2014, 189â&#x20AC;&#x201C;195, DOI: 10.1016/j.patrec.2013.07.003. 34. Wooldridge M., Multiagent systems. Ch. Intelligent Agents, 27â&#x20AC;&#x201C;77. MIT Press, Cambridge, MA, USA, 1999. 35. ZieliĹ&#x201E;ski C., Inteligencja wokĂłĹ&#x201A; nas. WspĂłĹ&#x201A;dziaĹ&#x201A;anie agentĂłw softwareowych, robotĂłw, inteligentnych urzÄ&#x2026;dzeĹ&#x201E;, wolumen 15, rozd. Formalne podejĹ&#x203A;cie do programowania robotĂłw â&#x20AC;&#x201C; struktura ukĹ&#x201A;adu sterujÄ&#x2026;cego, 267â&#x20AC;&#x201C;300, EXIT, 2010. 36. ZieliĹ&#x201E;ski C., Figat M., Hexel R., Communication within multi-FSM based robotic systems. â&#x20AC;&#x153;Journal of Intelligent & Robotic Systemsâ&#x20AC;?, Vol. 93, No. 3â&#x20AC;&#x201C;4, 2019, 787â&#x20AC;&#x201C;805, DOI: 10.1007/s10846-018-0869-6. 37. ZieliĹ&#x201E;ski C., Kornuta T., Diagnostic requirements in multi-robot systems. Korbicz J., Kowal M. (eds), Intelligent Systems in Technical and Medical Diagnostics, wolumen 230 serii Advances in Intelligent Systems and Computing, 345â&#x20AC;&#x201C;356. Springer, 2014. 38. ZieliĹ&#x201E;ski C., Kornuta T., Winiarski T., A systematic method of designing control systems for service and field
robots. 19th IEEE International Conference on Methods and Models in Automation and Robotics, MMAR, 1â&#x20AC;&#x201C;14. IEEE, 2014. 39. ZieliĹ&#x201E;ski C., StefaĹ&#x201E;czyk M., Kornuta T., Figat M., Dudek W., Szynkiewicz W., Kasprzak W., Figat J., Szlenk M., Winiarski T., Banachowicz K., ZieliĹ&#x201E;ska T., Tsardoulias E.G., Symeonidis A.L., Psomopoulos F.E., Kintsakis A.M., Mitkas P.A., Thallas A., Reppou SE., Karagiannis G.T., Panayiotou K., Prunet V., Serrano M., Merlet J.-P., Arampatzis S., Giokas A., Penteridis L., Trochidis I., Daney D., Iturburu M., Variable structure robot control systems: The RAPP approach. â&#x20AC;&#x17E;Robotics and Autonomous Systemsâ&#x20AC;?, Vol. 94, 2017, 226â&#x20AC;&#x201C;244, DOI: 10.1016/j.robot.2017.05.002. 40. ZieliĹ&#x201E;ski C., Winiarski T., Kornuta T., Agent-based structures of robot systems. J. Kacprzyk, et al. (eds), Trends in Advanced Intelligent Control, Optimization and Automation, Vol. 577 AISC, 493â&#x20AC;&#x201C;502, 2017, DOI: 10.1007/978-3-319-60699-6_48.
*+ 6 , : " 5 , - / . , ; . $ Ă&#x201E;Ĺ˝Ę&#x160;Ç&#x153;Ę Ĺ&#x2DC;Ć&#x2039;Ç&#x153;Ć&#x2022; This two part paper presents an interface to the National Cybersecurity Platform utilising gestures and voice commands as the means of interaction between the operator and the platform. Cyberspace and its underlying infrastructure are vulnerable to a broad range of risk stemming from diverse cyber-threats. The main role of this interface is to support security analysts and operators controlling visualisation of cyberspace events like incidents or cyber-attacks especially when manipulating graphical information. Main visualization control modalities are gesture- and voice-based commands. Thus the design of gesture recognition and speech-recognition modules is provided. The speech module is also responsible for speaker identification in order to limit the access to trusted users only, registered with the visualisation control system. This part of the paper focuses on the structure and the activities of the interface, while the second part concentrates on the algorithms employed for the recognition of: gestures, voice commands and speakers. Keywords - / . , + +
+ +
! +
! +
ÉĄĘ É Ç&#x152;Ć&#x2013; Ć&#x17E;Ę Ç&#x2019;Ĺ&#x2DC;Ĺ˝Ć&#x2013; Ç&#x201D;ČĚ&#x2030;Ć&#x2013; ÄśČŚÉ Ć&#x17E;Ë&#x2DC;Ç&#x201D;ȧÇ&#x201D;ĆŹĘ Ë&#x2DC; °Ĺ&#x2DC;Ę&#x160;ÉĄĘ Ë&#x2DC;Ĺ&#x2DC;Ç&#x2DC;
Ć&#x17E;Ę Ç&#x2019;Ĺ&#x2DC;Ĺ˝Ć&#x2013; Ç&#x201D;ČĚ&#x2030;Ć&#x2013; ÄśÉ Ç&#x2013;Ć&#x2039;Ç&#x201D;ĆŹĆ&#x2039;Ç&#x2019; Ä&#x192;Ë&#x2DC;ËżČÇ&#x2DC;Ç&#x201D;ĆŹËšÇ&#x201D;Ć&#x2039;Ë&#x2DC;
= ! , 2 " 3
4
5 , >23 45? . 8
2 >.2? 2 .2 ! " $((& @/
! . ! : 5* 56 = +
8
/ " / A +
/ 9
+ " ! 8
9
+ = 7 !9 ! " $) ! /
5333 5333 5 6 5333 6: 6 4.@ >5*.B? C*D:
*" 5 * 5 , 8 6 2 " 3 8
4
5 , .
2 + "
! +
/ 9 + !
" / / ! / 9 * !9 ! " ( ! /
/ / "
2 < ! ! " ! ORCID: 0000-0002-4840-8860
2 6 ! " ! ORCID: 0000-0001-6348-1129
53
!" #$
ȧǷʁ ǔȭ̉Ɩ ÀŘƋǔƬǖ ăǜƬnjŘȮƋ˘˿ǘ
ȧǷʁ ǔȭ̉Ɩ ĶɁǖƋǔƬƋǒ <ˁƞƬǘ
*/ 2 " 3
4
5 , .
2 2 ' $
H
' $$ +
H
/ 9H
8
2 ' $$ ! A ! " " 8 " A
! / "
/ 9 @" ' $' ! .
2 8 ! A "
! ! 9 /
D 9
/ A
, 9 / !
= " .
2 5 * 5 , 6 . " " + 8 / "
B*.. >&.B < 3 ! ? 5- *B3 >* " * " E
+ =. < 3 ! ? = +
8
/ A
+ / / 8
+
8 "
ȧǷʁ ǔȭ̉Ɩ ÀŘǘʊ˿ȧ hǔǷŘǜ
ȧǷʁ ǔȭ̉Ɩ ÀŘƋǔƬǖ ĶDŽǷǔƬʁƬǘ
*/ 2 " : - 5 , 2 ' $'
H 8
' $ + > 9H8
? ! K.
9 *C7 *:L = " 2 " 3
4
5 , 8
.
2 >.2? 2 .2 ! " ' $M ! / " " " " ' $G
/ " 8" " 8 + = +
/ " A + "
A " "
! , 9 / 8
+ "
9 / 9 ! " , ! ,
= " .
2 8 5 * 5 , 8 6 . " 8
" + / " 5- *B3 >* " * " E
+ =. < 3 8 ! ? = +
/ A ! F + 8 " "
9 / 9
ȧǷʁ ǔȭ̉Ɩ <Ř˹ǔƞ ăƬʁƬƞ˿Ȯʊǘǔ
ɡʁɁnjƖ ƞʁ ǒŘŽƖ ǔȭ̉Ɩ ,Ƭ˘Řʁ˿ ŎǔƬǚǔȮʊǘǔ
= " 2 " 3
4
5 , >23 45? .
2 >.2? 2 .2 ! " ' $ ! / " 8 " " " ' $G 8" " + = +
/ " / A + "8
A !
H " ! / +
= ! , 2 " 3
4
5 , >23 45? .
2 >.2? 2 .2 ! " $(G% " ' G 9
H . 5 *
. 9 .5*. 2 .2 ! , I ! " " !9 ! " 8
" 23 45 >' ';' %? ! " " 5 * 8 5 , 6 >5* 56? >' %;' G? " 5*56 >' G;' $)? ! " " +9 23 45 >' $);? @" $(()
! B / 5* 56 @" ' & < * B / . * "
- = +
8
/ " A + "
A ! + 8
/ 9
, ! " ! ORCID: 0000-0001-9948-6319
" " ! " ! ORCID: 0000-0001-5326-1034
J, + ! " ! ORCID: 0000-0002-1898-0540
+ + ORCID: 0000-0003-0779-255X
" " " ! " ! ORCID: 0000-0003-2528-6335
54
P
O
M
I
! " ! ORCID: 0000-0001-7604-8834
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 55â&#x20AC;&#x201C;63, DOI: 10.14313/PAR_233/55
L & & 9 &9 & 9 Z ' # - [ K & Zygmunt Lech Warsza Z O & N [ 0 6 8 0 9 0680$ 8 F *!*$ !*?=@) #
Jacek Puchalski \ 9 .& " $ B *$ !!?!!' #
Streszczenie: DwuczÄ&#x2122;Ĺ&#x203A;ciowa praca przedstawia dotychczasowe wyniki prac autorĂłw dotyczÄ&#x2026;ce wyznaczania niepewnoĹ&#x203A;ci poĹ&#x203A;rednich pomiarĂłw wieloparametrowych. W niniejszej czÄ&#x2122;Ĺ&#x203A;ci 1. omĂłwiono zaleĹźnoĹ&#x203A;Ä&#x2021; wspĂłĹ&#x201A;czynnika korelacji dwu wielkoĹ&#x203A;ci od wzglÄ&#x2122;dnego stosunku ich odchyleĹ&#x201E; od estymatorĂłw menzurandu o niepewnoĹ&#x203A;ciach typĂłw A i B oraz zaleĹźnoĹ&#x203A;Ä&#x2021; macierzy kowariancji poĹ&#x203A;rednio wyznaczanego menzurandu wyjĹ&#x203A;ciowego przy skorelowaniu wielkoĹ&#x203A;ci menzurandu wejĹ&#x203A;ciowego. Zaproponowano szerszy model matematyczny niĹź rekomendowany w Suplemencie 2 Przewodnika GUM. UwzglÄ&#x2122;dnia on niepewnoĹ&#x203A;ci i korelacjÄ&#x2122; zarĂłwno mierzonych wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych jak i ponadto parametrĂłw funkcji ich przetwarzania. MoĹźe sĹ&#x201A;uĹźyÄ&#x2021; do oceny dokĹ&#x201A;adnoĹ&#x203A;ci nie tylko samych pomiarĂłw wieloparametrowych ale i ukĹ&#x201A;adĂłw realizujÄ&#x2026;cych takie pomiary. W czÄ&#x2122;Ĺ&#x203A;ci 2. zostanie omĂłwiony przykĹ&#x201A;ad zastosowania modelu rozszerzonego do opisu poĹ&#x203A;rednich pomiarĂłw parametrĂłw dwĂłjnika poprzez czwĂłrnik pasywny z uwzglÄ&#x2122;dnieniem niepewnoĹ&#x203A;ci i skorelowania jego elementĂłw. +$ ! \ $ &$ A $ $ Z$ 9 $ & G 9 8 O$ -
1. Wprowadzenie W 1993 r. w miÄ&#x2122;dzynarodowym przewodniku wyznaczania niepewnoĹ&#x203A;ci pomiarĂłw o angielskim akronimie GUM [1] wprowadzono nowe pojÄ&#x2122;cie â&#x20AC;&#x17E;niepewnoĹ&#x203A;Ä&#x2021;â&#x20AC;? do oceny dokĹ&#x201A;adnoĹ&#x203A;ci pomiarĂłw. PojawiĹ&#x201A;a siÄ&#x2122; wĂłwczas niejednolitoĹ&#x203A;Ä&#x2021; z dotychczas stosowanym opisem dokĹ&#x201A;adnoĹ&#x203A;ci przyrzÄ&#x2026;dĂłw, urzÄ&#x2026;dzeĹ&#x201E; i systemĂłw pomiarowych przez bĹ&#x201A;Ä&#x2122;dy pomiarowe. Producenci aparatury pomiarowej podajÄ&#x2026; nadal maksymalny dopuszczalny bĹ&#x201A;Ä&#x2026;d przyrzÄ&#x2026;du MPE (ang. maximum permissible error) [3]. Przy zaĹ&#x201A;oĹźeniu rĂłwnomiernego rozkĹ&#x201A;adu odchy-
) ! \
A M # $ '+ )%A ) $ ! & '= !@ *!'+ $ & & *( !+ *!'+
!
leĹ&#x201E; od estymatora wartoĹ&#x203A;ci mierzonej, z przedziaĹ&#x201A;u Âą tego bĹ&#x201A;Ä&#x2122;du wyznacza siÄ&#x2122; odchylenie standardowe jako skĹ&#x201A;adowÄ&#x2026; niepewnoĹ&#x203A;ci typu B pomiarĂłw tym przyrzÄ&#x2026;dem. Rekomendowana w Suplemencie 2 [2] do przewodnika GUM metoda wyznaczania niepewnoĹ&#x203A;ci pomiarĂłw poĹ&#x203A;rednich wieloparametrowych powstaĹ&#x201A;a gĹ&#x201A;Ăłwnie z potrzeby jednolitego opisu dokĹ&#x201A;adnoĹ&#x203A;ci pomiarĂłw w obszarze miar i innych pomiarĂłw laboratoryjnych. Jednak dotyczy ona tylko przypadkĂłw, w ktĂłrych funkcjÄ&#x2122; przetwarzania wynikĂłw tych pomiarĂłw realizuje siÄ&#x2122; obliczeniowo z dokĹ&#x201A;adnoĹ&#x203A;ciÄ&#x2026; o niepewnoĹ&#x203A;ciach zwykle pomijalnych w praktyce, czyli wystarczajÄ&#x2026;co dokĹ&#x201A;adnie [5]. Metoda ta nie obejmuje wielu poĹ&#x203A;rednich pomiarĂłw wieloparametrowych realizowanych caĹ&#x201A;kowicie instrumentalnie przez wyspecjalizowane wieloparametrowe przyrzÄ&#x2026;dy lub systemy pomiarowe. Ich dokĹ&#x201A;adnoĹ&#x203A;Ä&#x2021; zaleĹźy zarĂłwno od niepewnoĹ&#x203A;ci i korelacji wielkoĹ&#x203A;ci bezpoĹ&#x203A;rednio mierzonych na wejĹ&#x203A;ciu, jak i od nierozpatrywanych dotychczas niepewnoĹ&#x203A;ci parametrĂłw ukĹ&#x201A;adu realizujÄ&#x2026;cego funkcjÄ&#x2122; przetwarzania pozyskiwanych danych oraz od parametrĂłw torĂłw przesyĹ&#x201A;u sygnaĹ&#x201A;Ăłw. Pierwszy z autorĂłw zainicjowaĹ&#x201A; w [8] opracowanie takiego rozszerzenia metody podanej w Suplemencie 2, aby za pomocÄ&#x2026; niepewnoĹ&#x203A;ci, moĹźna byĹ&#x201A;o jednolicie szaco-
55
' " ' '. L $ "'. L "'. L ! g E X w ktĂłrej UX, UY sÄ&#x2026; macierzami kowariancji menzurandĂłw X i Y. Ich elementy wyznacza siÄ&#x2122; dla estymatorĂłw x i i yj wszystkich wartoĹ&#x203A;ci Xi i Yj obu menzurandĂłw. Macierze te sÄ&#x2026; nastÄ&#x2122;pujÄ&#x2026;ce:
waÄ&#x2021; dokĹ&#x201A;adnoĹ&#x203A;Ä&#x2021; wieloparametrowych pomiarĂłw poĹ&#x203A;rednich wykonywanych zarĂłwno kilkoma osobnymi przyrzÄ&#x2026;dami z obliczeniami realizowanymi zewnÄ&#x2122;trznie, jak i wyspecjalizowanych zintegrowanych instrumentalnych ukĹ&#x201A;adĂłw i systemĂłw pomiarowych realizujÄ&#x2026;cych w peĹ&#x201A;ni caĹ&#x201A;y proces tych pomiarĂłw. WpĹ&#x201A;yw korelacji wielkoĹ&#x203A;ci bezpoĹ&#x203A;rednio mierzonych omĂłwili autorzy szczegĂłĹ&#x201A;owo [9â&#x20AC;&#x201C;13]. PoniĹźej przedstawia siÄ&#x2122; rozszerzonÄ&#x2026; metodÄ&#x2122; oceny niepewnoĹ&#x203A;ci, ktĂłra w opisie dokĹ&#x201A;adnoĹ&#x203A;ci wynikĂłw poĹ&#x203A;rednich pomiarach wieloparametrowych uwzglÄ&#x2122;dnia zarĂłwno niepewnoĹ&#x203A;ci i korelacje multimenzurandu mierzonego na wejĹ&#x203A;ciu.
H, #
! !"
!" Estymatory y1, y2, â&#x20AC;Ś, ym wartoĹ&#x203A;ci elementĂłw (ang. observables) mierzonego poĹ&#x203A;rednio m-wymiarowego menzurandu Y = [Y1, Y2, â&#x20AC;Ś, Ym]T wyznacza siÄ&#x2122; z estymatorĂłw x1, x2, â&#x20AC;Ś, xn mierzonych bezpoĹ&#x203A;rednio n-wielkoĹ&#x203A;ci menzurandu X = [X1, X2, â&#x20AC;Ś, Xn]T wg ogĂłlnego wzoru [2]: Y = F(X)
UX
â&#x17D;Ą ux21 ! Ď x 1nu1nuxn â&#x17D;¤ â&#x17D;˘ â&#x17D;Ľ â&#x17D;Ľ, ! ! =â&#x17D;˘ ! â&#x17D;˘ â&#x17D;Ľ 2 â&#x17D;˘Ď u u â&#x17D;Ľ u ! xn â&#x17D;Ł xn 1 xn x 1 â&#x17D;Ś
(3a)
UY
â&#x17D;Ą uy21 ! Ď y 1muy 1uyn â&#x17D;¤ â&#x17D;˘ â&#x17D;Ľ â&#x17D;Ľ. ! ! ! =â&#x17D;˘ â&#x17D;˘ â&#x17D;Ľ 2 â&#x17D;˘Ď u u â&#x17D;Ľ u ! y m ym y ym 1 1 â&#x17D;Ł â&#x17D;Ś
(3b)
Wariancje, jako kwadraty standardowych niepewnoĹ&#x203A;ci uxi, uyj znajdujÄ&#x2026; siÄ&#x2122; na gĹ&#x201A;Ăłwnych przekÄ&#x2026;tnych obu macierzy kowariancji, zaĹ&#x203A; wspĂłĹ&#x201A;czynniki korelacji rxik (i, k = 1, ..., n, i z k) oraz ryjl (j, l = 1, ..., m, j z l) wystÄ&#x2122;pujÄ&#x2026; w wyrazach niediagonalnych symetrycznie wzglÄ&#x2122;dem tych przekÄ&#x2026;tnych jako iloczyny z niepewnoĹ&#x203A;ciami. WspĂłĹ&#x201A;czynniki te majÄ&#x2026; istotne znaczenie, gdy oszacowane wartoĹ&#x203A;ci i niepewnoĹ&#x203A;ci menzurandu Y bÄ&#x2122;dÄ&#x2026; nastÄ&#x2122;pnie uĹźyte wspĂłlnie. W opisie dokĹ&#x201A;adnoĹ&#x203A;ci wielu przyrzÄ&#x2026;dĂłw i ukĹ&#x201A;adĂłw pomiarowych stosuje siÄ&#x2122; teĹź niepewnoĹ&#x203A;ci wzglÄ&#x2122;dne ureli. PrzyrzÄ&#x2026;dy cyfrowe i przetworniki o liniowej charakterystyce) majÄ&#x2026; staĹ&#x201A;Ä&#x2026; czuĹ&#x201A;oĹ&#x203A;Ä&#x2021; S w caĹ&#x201A;ym zakresie pomiarowym (Xi max â&#x20AC;&#x201C;Xi 0 ). ModuĹ&#x201A; ich maksymalnego dopuszczalnego bĹ&#x201A;Ä&#x2122;du MPE [3] moĹźna przedstawiÄ&#x2021; jako sumÄ&#x2122;, tj.:
(1)
gdzie: F(X) â&#x20AC;&#x201C; wielowymiarowa funkcja przetwarzania menzurandu X w okreĹ&#x203A;lonych warunkach wpĹ&#x201A;ywajÄ&#x2026;cych na pomiary. W metodzie podanej w Suplemencie 2 przewodnika GUM funkcjÄ&#x2122; F(X) traktuje siÄ&#x2122; jako dokĹ&#x201A;adnÄ&#x2026;. Dotyczy to przypadkĂłw, gdy operacje przetwarzania wynikĂłw pomiarĂłw X wykonywane sÄ&#x2026; z odpowiednio duĹźÄ&#x2026; precyzjÄ&#x2026;, np. na komputerze zewnÄ&#x2122;trznym lub teĹź zastosowanym w systemie pomiarowym. Niniejszy tekst dotyczy przetwarzania wynikĂłw pomiarĂłw. Dalej bÄ&#x2122;dÄ&#x2026; wiÄ&#x2122;c stosowane estymatory xi, yj wartoĹ&#x203A;ci Xi, Yj i = 1, ..., n, j = 1, ..., m parametrĂłw metrologicznych elementĂłw menzurandĂłw X, Y. Niewielkie przyrosty Î&#x201D;xi i Î&#x201D;yj liczone jako odchylenia od estymatorĂłw xi, yj (dawniej zwane bĹ&#x201A;Ä&#x2122;dami pozornymi) powiÄ&#x2026;zane sÄ&#x2026; macierzowÄ&#x2026; zaleĹźnoĹ&#x203A;ciÄ&#x2026; liniowÄ&#x2026; wynikajÄ&#x2026;cÄ&#x2026; z róşniczki zupeĹ&#x201A;nej:
|Î&#x201D;X |max = |Î&#x201D;X | max + |Î&#x201D;(X i
|
i â&#x20AC;&#x201C;Xi 0) max
i0
Âş|Î&#x201D;X |max + eSi (Xi â&#x20AC;&#x201C;Xi 0). i0
.
gdzie: Xi 0 jest poczÄ&#x2026;tkiem zakresu dla Xi;
Przy zaĹ&#x201A;oĹźeniu rĂłwnomiernego rozkĹ&#x201A;adu odchyleĹ&#x201E; w przedziale Âą|Î&#x201D;X |max, z odchylenia standardowego wyznacza siÄ&#x2122; dla i przyrostĂłw (Xi â&#x20AC;&#x201C;Xi 0) sygnaĹ&#x201A;u wyjĹ&#x203A;ciowego lub odczytu przyrzÄ&#x2026;du lub kanaĹ&#x201A;u pomiarowego wzglÄ&#x2122;dnÄ&#x2026; niepewnoĹ&#x203A;Ä&#x2021;
(2)
â&#x17D;Ą S11 â&#x17D;˘ gdzie: S â&#x2030;Ą â&#x17D;˘ ! â&#x17D;˘ â&#x17D;˘ â&#x17D;ŁSm 1
â&#x17D;Ą â&#x2C6;&#x201A;y1 â&#x17D;˘ ! S1n â&#x17D;¤ â&#x17D;˘ â&#x2C6;&#x201A;x1 â&#x17D;Ľ â&#x17D;˘ ! !â&#x17D;Ľ=â&#x17D;˘! â&#x17D;Ľ â&#x17D;˘ ! Smn â&#x17D;Śâ&#x17D;Ľ â&#x17D;˘ â&#x2C6;&#x201A;ym â&#x17D;˘ â&#x2C6;&#x201A;x â&#x17D;Ł 1
. Przez proste podstawienia w caĹ&#x201A;ym pomiarowym zakresie otrzymuje siÄ&#x2122; dla niepewnoĹ&#x203A;ci rĂłwnanie (4) podobne do (3) [6]:
â&#x2C6;&#x201A;y1 â&#x17D;¤ ! â&#x17D;Ľ â&#x2C6;&#x201A;x n â&#x17D;Ľ â&#x17D;Ľ ! ! â&#x17D;Ľ, â&#x17D;Ľ â&#x2C6;&#x201A;ym â&#x17D;Ľ ! â&#x2C6;&#x201A;x n â&#x17D;Ľâ&#x17D;Ś
UdY = Sd(X)¡UdX(X) ¡ Sd(X)T
â&#x17D;Ą â&#x2C6;&#x201A;y x â&#x17D;¤ w ktĂłrym Sδ (X ) â&#x2030;Ą â&#x17D;˘ j i â&#x17D;Ľ dla i = 1, â&#x20AC;Ś, n oraz j = 1, â&#x20AC;Ś, m, â&#x17D;˘â&#x17D;Ł â&#x2C6;&#x201A;x i y j â&#x17D;Ľâ&#x17D;Ś a UdX, UdY â&#x20AC;&#x201C; to macierze kowariancji.
czyli
S ji =
NiepewnoĹ&#x203A;ci wzglÄ&#x2122;dne δ xi =
â&#x2C6;&#x201A;y j
(2a)
â&#x2C6;&#x201A;x i
UY = S(X)¡UX (X)¡S(X)T P
O
M
I
A
R
Y
(3) â&#x20AC;˘
A
U
T
O
M
uxi , xi
δy = i
uyj yi
znajdujÄ&#x2026; siÄ&#x2122;
w tych samych miejscach w macierzach UdX, UdY jak niepewnoĹ&#x203A;ci bezwzglÄ&#x2122;dne uxi, uyj w macierzach UX, UY. MoĹźna teĹź niepewnoĹ&#x203A;ci bezwzglÄ&#x2122;dne odnosiÄ&#x2021; do zakresu oraz stosowaÄ&#x2021; wzory niejednorodne, aby z nich, np. wyznaczaÄ&#x2021; bezpoĹ&#x203A;rednio niepewnoĹ&#x203A;ci wzglÄ&#x2122;dne lub vice versa. W ogĂłlnym przypadku poĹ&#x203A;rednich pomiarĂłw wieloparametrowych, poprzez przetworzenie danych pomiarowych wielkoĹ&#x203A;ci Xi jako elementĂłw menzurandu X, wyznacza siÄ&#x2122; estymatory wartoĹ&#x203A;ci yj oraz estymatory ich niepewnoĹ&#x203A;ci uyj i wspĂłĹ&#x201A;czynnikĂłw korelacji ryjl (j, l = 1, ..., m, j z l) dla wszystkich elementĂłw menzurandu Y. Otrzymuje siÄ&#x2122; je po przetworzeniu wielokrotnie powtĂłrzonych surowych wartoĹ&#x203A;ci obserwacji pomiarowych uzy-
Przyrosty Î&#x201D;xi i Î&#x201D;yj pojedynczych wartoĹ&#x203A;ci elementĂłw menzurandĂłw X i Y sÄ&#x2026; liczbami mianowanymi. Natomiast przy opisie dokĹ&#x201A;adnoĹ&#x203A;ci przyrzÄ&#x2026;dĂłw i ukĹ&#x201A;adĂłw pomiarowych czuĹ&#x201A;oĹ&#x203A;ci Sji, zdeterminowane i losowe odchylenia Î&#x201D;xi, Î&#x201D;yj oraz niepewnoĹ&#x203A;ci uxi, uyj sÄ&#x2026; funkcjami zaleĹźnymi od wartoĹ&#x203A;ci xi. PropagacjÄ&#x2122; niepewnoĹ&#x203A;ci w poĹ&#x203A;rednich pomiarach wieloparametrowych opisuje siÄ&#x2122; Ĺ&#x201A;Ä&#x2026;cznie dla wszystkich wielkoĹ&#x203A;ci macierzowo. Z róşniczki zupeĹ&#x201A;nej wielowymiarowego rĂłwnania (1) wynika zaleĹźnoĹ&#x203A;Ä&#x2021; (3):
56
(4)
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
#" '. + * ' '. $ skanych w danych warunkach otoczenia przyrzÄ&#x2026;dĂłw i otoczenia obiektu mierzonego, staĹ&#x201A;ych lub zmieniajÄ&#x2026;cych siÄ&#x2122;, w tym w okreĹ&#x203A;lony sposĂłb. Znane, niepoĹźÄ&#x2026;dane wpĹ&#x201A;ywy koryguje siÄ&#x2122; przez poprawki. Tak skorygowane dane pomiarowe traktuje siÄ&#x2122; juĹź jako losowe i przetwarza siÄ&#x2122; je statystycznie. Dla przejrzystoĹ&#x203A;ci dalszego wywodu przytoczy siÄ&#x2122; pokrĂłtce zasady oceny dokĹ&#x201A;adnoĹ&#x203A;ci pomiarĂłw wg przewodnika GUM [1]. Do tego celu sĹ&#x201A;uĹźy niepewnoĹ&#x203A;Ä&#x2021; rozszerzona U(P) o okreĹ&#x203A;lonym prawdopodobieĹ&#x201E;stwie pokrycia P, np. 95% lub 99%. Jest to poĹ&#x201A;owa szerokoĹ&#x203A;ci symetrycznego przedziaĹ&#x201A;u wokĂłĹ&#x201A; estymatora wartoĹ&#x203A;ci mierzonej, np. wartoĹ&#x203A;ci Ĺ&#x203A;redniej dla obserwacji w prĂłbce. JeĹ&#x203A;li funkcja rozkĹ&#x201A;adu gÄ&#x2122;stoĹ&#x203A;ci prawdopodobieĹ&#x201E;stwa jest znana, np. funkcja Gaussa dla rozkĹ&#x201A;adu normalnego, to niepewnoĹ&#x203A;Ä&#x2021; rozszerzonÄ&#x2026; U wyznacza siÄ&#x2122; analitycznie z odchylenia standardowego Ĺ&#x203A;redniej z danych prĂłbki i wspĂłĹ&#x201A;czynnika rozszerzenia kP dla okreĹ&#x203A;lonego P. Dla rozkĹ&#x201A;adĂłw danych pomiarowych otrzymywanych eksperymentalnie niepewnoĹ&#x203A;Ä&#x2021; rozszerzonÄ&#x2026; U wyznacza siÄ&#x2122; numerycznie metodÄ&#x2026; Monte Carlo wg Suplementu 1 do GUM. Dla kaĹźdej wielkoĹ&#x203A;ci mierzonej bÄ&#x2122;dÄ&#x2026;cej elementem multimenzurandu podstawÄ&#x2026; do wyznaczenia niepewnoĹ&#x203A;ci rozszerzonej U jest wg GUM [1] niepewnoĹ&#x203A;Ä&#x2021; standardowa u zdefiniowana jako odchylenie standardowe rozkĹ&#x201A;adu wypadkowego dla splotu dwĂłch statystycznie niezaleĹźnych rozkĹ&#x201A;adĂłw odchyleĹ&#x201E; od estymatora wartoĹ&#x203A;ci tej wielkoĹ&#x203A;ci o standardowych niepewnoĹ&#x203A;ciach typu A i typu B, oznaczonych odpowiednio jako uA i uB. Pierwszy z tych rozkĹ&#x201A;adĂłw opisuje statystycznie rozrzut eksperymentalnie otrzymanych wartoĹ&#x203A;ci obserwacji pomiarowych. Drugi jest rozkĹ&#x201A;adem hipotetycznym, ktĂłry randomizuje przewidywane zmiany wynikĂłw róşnego pochodzenia, czyli dodatkowe odchylenia, w tym zwykle staĹ&#x201A;e albo wolnozmienne w trakcie kolejnego eksperymentu gromadzenia wynikĂłw pomiarĂłw, lecz nieznane co do wartoĹ&#x203A;ci. Odchylenia te mogÄ&#x2026; pojawiaÄ&#x2021; siÄ&#x2122; jako losowe w dĹ&#x201A;ugim okresie uĹźytkowania przyrzÄ&#x2026;du lub systemu pomiarowego wskutek przypadkowo zmiennych, ale dopuszczalnych warunkĂłw otoczenia, innych niĹź przy kalibracji przyrzÄ&#x2026;du i w pomiarach kontrolnych oraz jako skutek zmian wewnÄ&#x2122;trznych parametrĂłw. W modelu matematycznym zastosowanym w GUM [1] przyjÄ&#x2122;to zaĹ&#x201A;oĹźenie, Ĺźe zbiory wartoĹ&#x203A;ci opisanych oboma rozkĹ&#x201A;adami odchyleĹ&#x201E; typu A i B sÄ&#x2026; nieskorelowane, gdyĹź tak zwykle jest w praktyce. WĂłwczas dla kaĹźdej wielkoĹ&#x203A;ci mierzonej xi standardowa niepewnoĹ&#x203A;Ä&#x2021; ui rozkĹ&#x201A;adu wypadkowego jako ich splotu i jej skĹ&#x201A;adowe uAi i uBi jako odchylenia standardowe obu rozkĹ&#x201A;adĂłw, sÄ&#x2026; sumÄ&#x2026; geometrycznÄ&#x2026;: ui = u A2 i + u B2 i
(5)
Estymator xi wartoĹ&#x203A;ci Xi i jego niepewnoĹ&#x203A;Ä&#x2021; skĹ&#x201A;adowÄ&#x2026; uAi wyznacza siÄ&#x2122; statystycznie z prĂłbki danych, np. jako wartoĹ&#x203A;Ä&#x2021; Ĺ&#x203A;redniÄ&#x2026; dla rozkĹ&#x201A;adu normalnego [1] lub innÄ&#x2026; dla znanych rozkĹ&#x201A;adĂłw [7]. NiepewnoĹ&#x203A;Ä&#x2021; skĹ&#x201A;adowÄ&#x2026; uBi szacuje siÄ&#x2122; zaĹ&#x203A; na podstawie subiektywnej wiedzy o przewidywanych zakresach i rozkĹ&#x201A;adach wielkoĹ&#x203A;ci wpĹ&#x201A;ywajÄ&#x2026;cych oraz ich oddziaĹ&#x201A;ywaniach. Wprowadzenie uBi jest rĂłwnoznaczne z dodaniem zbioru dodatkowych odchyleĹ&#x201E;. NiepewnoĹ&#x203A;Ä&#x2021; uBi randomizuje spodziewane oddziaĹ&#x201A;ywania tych wpĹ&#x201A;ywĂłw, ktĂłrych wartoĹ&#x203A;ci bieĹźÄ&#x2026;ce w przeprowadzanych pomiarach nie sÄ&#x2026; znane i brakuje informacji, aby obliczyÄ&#x2021; dla nich poprawki i skorygowaÄ&#x2021; wartoĹ&#x203A;Ä&#x2021; estymatora. W znanych warunkach pracy o ograniczonym zakresie zmian wielkoĹ&#x203A;ci wpĹ&#x201A;ywajÄ&#x2026;cych, moĹźna przyjÄ&#x2026;Ä&#x2021; mniejszÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; niepewnoĹ&#x203A;ci skĹ&#x201A;adowej uB niĹź to wynika z danych producenta dla peĹ&#x201A;nego zakresu dopuszczalnych warunkĂłw pracy przyrzÄ&#x2026;du oraz badanego obiektu [4, 7]. W pomiarach wieloparametrowych, z danych pomiarowych wyznacza siÄ&#x2122; niepewnoĹ&#x203A;ci uAxi dla kaĹźdej z bezpoĹ&#x203A;rednio mierzonych wielkoĹ&#x203A;ci xi menzurandu X. Dla danych mierzonych
zbyt gÄ&#x2122;sto uwzglÄ&#x2122;dnia siÄ&#x2122; autokorelacjÄ&#x2122; [6] oraz szacuje siÄ&#x2122; heurystycznie niepewnoĹ&#x203A;ci uBxi i oblicza siÄ&#x2122; standardowe niepewnoĹ&#x203A;ci zĹ&#x201A;oĹźone ui wg wzoru (5). NastÄ&#x2122;pnie tworzy siÄ&#x2122; macierz kowariancji UX. Rozrzuty wartoĹ&#x203A;ci obserwacji dla kaĹźdego elementu xi zaleĹźÄ&#x2026; zarĂłwno od wpĹ&#x201A;ywĂłw warunkĂłw otoczenia na ukĹ&#x201A;ad pomiarowy i obiekt badany, jak i od zmian parametrĂłw wewnÄ&#x2122;trznych. JeĹ&#x203A;li wielkoĹ&#x203A;ci xi multimenzurandu sÄ&#x2026; skorelowane, to ich wspĂłĹ&#x201A;czynniki korelacji wyznacza siÄ&#x2122; z wynikĂłw synchronicznie poprowadzonych pomiarĂłw lub z wiedzy o badanym procesie. Skorelowania wystÄ&#x2122;pujÄ&#x2026; dla zbiorĂłw odchyleĹ&#x201E; opisanych niepewnoĹ&#x203A;ciami tylko jednego typu: A bÄ&#x2026;dĹş B. Ich wspĂłĹ&#x201A;czynniki korelacji oznaczymy, podobnie jak niepewnoĹ&#x203A;ci skĹ&#x201A;adowe, odpowiednio indeksami dolnymi A i B. Elementy multimenzurandu wejĹ&#x203A;ciowego X w ogĂłlnym przypadku mogÄ&#x2026; byÄ&#x2021; w róşnym stopniu skorelowane. Dotyczy to zarĂłwno wspĂłĹ&#x201A;czynnika rA, jak i rB. WpĹ&#x201A;ywajÄ&#x2026; one na dokĹ&#x201A;adnoĹ&#x203A;Ä&#x2021; wynikĂłw pomiaru elementĂłw menzurandu wyjĹ&#x203A;ciowego Y wyznaczanych poĹ&#x203A;rednio z pomiarĂłw X. WspĂłĹ&#x201A;czynniki korelacji rA moĹźna wyznaczyÄ&#x2021; eksperymentalnie, jeĹ&#x203A;li poprowadzi siÄ&#x2122; pomiary menzurandu X tak, by obserwacje mierzonych wielkoĹ&#x203A;ci uzyskiwaÄ&#x2021; synchronicznie i w znanych chwilach. Wyniki heurystycznych oszacowaĹ&#x201E; niepewnoĹ&#x203A;ci typu B i wspĂłĹ&#x201A;czynnikĂłw korelacji rB mogÄ&#x2026; byÄ&#x2021; zróşnicowane, gdy mierzy siÄ&#x2122; róşne wartoĹ&#x203A;ci, na róşnych zakresach jednego miernika lub róşnymi przyrzÄ&#x2026;dami pomiarowymi. W ocenie skorelowania odchyleĹ&#x201E; opisanych niepewnoĹ&#x203A;ciami typu B trzeba w jak najwiÄ&#x2122;kszym stopniu wykorzystaÄ&#x2021; pozyskanÄ&#x2026; wiedzÄ&#x2122; o takich pomiarach i nawet, jeĹ&#x203A;li jest to celowe, wykonaÄ&#x2021; teĹź uzupeĹ&#x201A;niajÄ&#x2026;ce eksperymenty. WartoĹ&#x203A;ci wyznaczanych poĹ&#x203A;rednio estymatorĂłw yi dla wielkoĹ&#x203A;ci Yi (obserwabli) menzurandu Y oraz macierz kowariancji UY z niepewnoĹ&#x203A;ciami i wspĂłĹ&#x201A;czynnikami korelacji uzyskuje siÄ&#x2122; ze wzorĂłw (1)â&#x20AC;&#x201C;(4). RozwaĹźania na przykĹ&#x201A;adzie menzurandu 2D (n = m = 2) przedstawiono w kolejnym rozdziale.
Y, +
H. Pomiary dwuelementowego (2D) menzurandu X = [X1, X2] sÄ&#x2026; szczegĂłlnym przypadkiem pomiarĂłw wieloparametrowych opisywanych ogĂłlnie wzorami (1)â&#x20AC;&#x201C;(4). Stosuje siÄ&#x2122; je, gdy kilka wielkoĹ&#x203A;ci mierzonych jest ze sobÄ&#x2026; powiÄ&#x2026;zanych w obiekcie pomiarowym lub przez oddziaĹ&#x201A;ujÄ&#x2026;ce na nich wielkoĹ&#x203A;ci zewnÄ&#x2122;trzne. W pomiarach dwuparametrowych (2D) niepewnoĹ&#x203A;ci dwu wielkoĹ&#x203A;ci X1 i X2, oznaczone jako ux1 i ux2 sÄ&#x2026; sumami geometrycznymi niepewnoĹ&#x203A;ci skĹ&#x201A;adowych typu A i B opisanymi rĂłwnaniami:
ux21 = u12A + u12B
(6a)
ux22 = u 22A + u 22B
(6b)
W ogĂłlnym przypadku wyniki pomiarĂłw X1, X2 majÄ&#x2026; róşne wartoĹ&#x203A;ci niepewnoĹ&#x203A;ci u1A i u2A oraz u1B i u2B. JeĹ&#x203A;li eksperymenty te odbywajÄ&#x2026; siÄ&#x2122; w jednakowych lub podobnych warunkach wpĹ&#x201A;ywajÄ&#x2026;cych, to wielkoĹ&#x203A;ci mierzone X1, X2 mogÄ&#x2026; byÄ&#x2021; skorelowane. Zbiory wartoĹ&#x203A;ci ich odchyleĹ&#x201E; opisane niepewnoĹ&#x203A;ciami skĹ&#x201A;adowymi kaĹźdego typu, tj. u1A, u2A oraz u1B, u2B, mogÄ&#x2026; byÄ&#x2021; wĂłwczas powiÄ&#x2026;zane ze sobÄ&#x2026; wspĂłĹ&#x201A;czynnikami korelacji o wartoĹ&#x203A;ciach 1 > rA > â&#x20AC;&#x201C;1 oraz 1 > rB > â&#x20AC;&#x201C;1. PrzykĹ&#x201A;adem jest tu skorelowanie napiÄ&#x2122;Ä&#x2021; i prÄ&#x2026;dĂłw mierzonych dla tego samego obiektu, w tych samych warunkach i przy zasilaniu z niestabilizowanej sieci elektrycznej. NiepewnoĹ&#x203A;ci i skorelowania odchyleĹ&#x201E; wielkoĹ&#x203A;ci x1, x2 menzurandu 2D ilustruje rys.1. Aby w pomiarach 2D wyznaczyÄ&#x2021; standardowe niepewnoĹ&#x203A;ci uy1, uy2 i wspĂłĹ&#x201A;czynnik korelacji ry1,2 wykorzysta siÄ&#x2122; macierzowy zapis prawa propagacji wariancji (3) lub (4). JeĹ&#x203A;li wnioski z pomiarĂłw majÄ&#x2026; dotyczyÄ&#x2021; warunkĂłw badania oraz uĹźytkowania obiektu
57
' " ' '. L $ "'. L "'. L ! g E X
Z ostatniej postaci macierzy Ux1,2 we wzorze (7) wynika, Ĺźe moĹźna jÄ&#x2026; przedstawiÄ&#x2021; jako sumÄ&#x2122; Ux1,2 = Ux1,2A + Ux1,2B
(7a)
Na gĹ&#x201A;Ăłwnej przekÄ&#x2026;tnej macierzy Ux1,2 wystÄ&#x2122;pujÄ&#x2026; niepewnoĹ&#x203A;ci zgodne z reguĹ&#x201A;Ä&#x2026; sumowania wariancji wg (6a) i (6b), czyli dla kwadratĂłw niepewnoĹ&#x203A;ci typu A i typu B obu mierzonych wielkoĹ&#x203A;ci. WspĂłĹ&#x201A;czynnik korelacji miÄ&#x2122;dzy wielkoĹ&#x203A;ciami x1 i x2 opisujÄ&#x2026; wzory (9):
Ď x 1,2 =
Ď Au1Au 2A + Ď Bu1Bu 2B u12A + u12B u 22A + u 22B
=
Ď Au1Au 2A ux 1ux 2
+
Ď Bu1Bu 2B ux 1ux 2
.
(8)
JeĹ&#x203A;li dla stosunkĂłw niepewnoĹ&#x203A;ci skĹ&#x201A;adowych i standardowych ux1, ux2 przyjmie siÄ&#x2122; oznaczenia:
0 â&#x2030;¤ k1B â&#x2030;Ą
Rys. 1. NiepewnoĹ&#x203A;ci skĹ&#x201A;adowe menzurandu 2D i wspĂłĹ&#x201A;czynniki korelacji: Ď A oraz Ď B miÄ&#x2122;dzy zbiorami odchyleĹ&#x201E; obserwacji pomiarowych obu wielkoĹ&#x203A;ci o niepewnoĹ&#x203A;ciach uA oraz zbiorami odchyleĹ&#x201E; o niepewnoĹ&#x203A;ciach uB szacowanych heurystycznie Fig. 1. Uncertainties of type A and B of the 2D measurand and correlation coefficient Ď A â&#x20AC;&#x201C; between sets of observed data deflections of uncertainties uA and Ď B â&#x20AC;&#x201C; of heuristic deflections uB
u1B â&#x2030;¤ 1, ux 1
0 â&#x2030;¤ k 2B â&#x2030;Ą
u 2B â&#x2030;¤1 ux 2
to z wzorĂłw (6a, 6b) otrzymuje siÄ&#x2122;
u1A â&#x2030;Ą k1A = 1 â&#x2C6;&#x2019; k12B , ux 1
innych niĹź podczas kalibracji przyrzÄ&#x2026;du, to oprĂłcz niepewnoĹ&#x203A;ci standardowych u1A, u2A, wyznaczonych z bieĹźÄ&#x2026;cych rozrzutĂłw wartoĹ&#x203A;ci obserwacji, trzeba teĹź uwzglÄ&#x2122;dniÄ&#x2021; przewidywane zmiany niepewnoĹ&#x203A;ci u1B, u2B. Macierz kowariancji wg wzoru (3a) dla menzurandu 2D ma nastÄ&#x2122;pujÄ&#x2026;ce postacie:
(9a)
(9b)
PowyĹźsze stosunki niepewnoĹ&#x203A;ci speĹ&#x201A;niajÄ&#x2026; warunek 2
2
â&#x17D;&#x203A; uiB â&#x17D;&#x17E; â&#x17D;&#x203A; uiA â&#x17D;&#x17E; 2 2 â&#x17D;&#x153; â&#x17D;&#x; +â&#x17D;&#x153; â&#x17D;&#x; = kiB + kiA = 1, â&#x17D;? uxi â&#x17D; â&#x17D;? uxi â&#x17D;
i = 1, 2
ZaĹ&#x203A; po przeksztaĹ&#x201A;ceniach otrzymuje siÄ&#x2122; prostszÄ&#x2026; postaÄ&#x2021; wzoru (8)
Ď x 1,2 = Ď A 1 â&#x2C6;&#x2019; k12B 1 â&#x2C6;&#x2019; k22B + Ď B k1B k2B .
(7)
(10)
Rys. 2. ZaleĹźnoĹ&#x203A;ci wspĂłĹ&#x201A;czynnika korelacji dwu wielkoĹ&#x203A;ci Ď y1,2 = f(k1B , k1B) dla trzech wspĂłĹ&#x201A;czynnikĂłw korelacji Ď A , Ď B skĹ&#x201A;adowych ich odchyleĹ&#x201E; o niepewnoĹ&#x203A;ciach typu A lub B Fig. 2. Relations of correlation coefficient of two quantities Ď y1,2 = f(k1B , k1B) for three pairs of correlation coefficients Ď A , Ď B of their deviation components with uncertainty type A or B
58
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
#" '. + * ' '. $
(
)
ZaleĹźnoĹ&#x203A;ci wspĂłĹ&#x201A;czynnika korelacji Ď y 1,2 = f k12B , k22B dla róşnych wartoĹ&#x203A;ci par wspĂłĹ&#x201A;czynnikĂłw rA, rB przedstawione sÄ&#x2026; na rysunku 2. SÄ&#x2026; to skoĹ&#x203A;nie przebiegajÄ&#x2026;ce i przecinajÄ&#x2026;ce siÄ&#x2122; pĹ&#x201A;aszczyzny krzywoliniowe. Z analizy w [9 -13] wynika, Ĺźe najwiÄ&#x2122;kszÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; wspĂłĹ&#x201A;czynnika ry1,2 w caĹ&#x201A;ym zakresie k1B ma krzywa o rA = 1, rB = 1, gdy k1B = k2B. Zbadano teĹź rzadziej wystÄ&#x2122;pujÄ&#x2026;ce w praktyce pomiarowej przypadki o ujemnych wspĂłĹ&#x201A;czynnikach korelacji rA < 0, rB < 0. Korelacja miÄ&#x2122;dzy wynikami pomiarĂłw dwu skojarzonych wielkoĹ&#x203A;ci, w tym tej samej wielkoĹ&#x203A;ci mierzonej dwoma róşnymi miernikami lub na dwĂłch róşnych zakresach, czyli o róşnych niepewnoĹ&#x203A;ciach uB, zaleĹźy od wartoĹ&#x203A;ci tych niepewnoĹ&#x203A;ci. Jest ona tym wiÄ&#x2122;ksza, im wiÄ&#x2122;ksza jest niepewnoĹ&#x203A;Ä&#x2021; pomiaru typu B w stosunku do niepewnoĹ&#x203A;ci typu A wynikĂłw wielkoĹ&#x203A;ci mierzonych.
â&#x17D;Ą u12A U x 12A = â&#x17D;˘ â&#x17D;˘ Ď Au1Au 2A â&#x17D;Ł
Ď Au1Au 2A â&#x17D;¤
â&#x17D;Ą u12B U x 12B = â&#x17D;˘ â&#x17D;˘ Ď Bu1Bu 2B â&#x17D;Ł
Ď Bu1Bu 2B â&#x17D;¤
gdzie:
â&#x17D;Ą ux21 U x 1,2 = â&#x17D;˘ â&#x17D;˘ Ď x 1,2ux 1ux 2 â&#x17D;Ł
Ď x 1,2ux 1ux 2 â&#x17D;¤ â&#x17D;Ľ â&#x17D;Ľ â&#x17D;Ś
ux22
ux21 = u12A + u12B , ux22 = u 22A + u 22B ,
Ď x 1,2 =
Ď Au1Au 2A + Ď Bu1Bu 2B ux 1ux 2
.
u 22B
â&#x17D;Ľ â&#x17D;Ľ â&#x17D;Ś
â&#x17D;Ľ â&#x17D;Ľ â&#x17D;Ś
(11a)
(11b)
W ogĂłlnym przypadku w pomiarach wieloparametrowych o dowolnej liczbie n wielkoĹ&#x203A;ci mierzonych i m wielkoĹ&#x203A;ciach poĹ&#x203A;rednio wyznaczanych, macierze kowariancji UX i UY moĹźna przedstawiÄ&#x2021; jako dwie sumy:
], : ! $ ! Y Przy stosowaniu przyrzÄ&#x2026;dĂłw i ukĹ&#x201A;adĂłw pomiarowych w róşnych warunkach otoczenia i przy róşnym losowym rozrzucie obserwacji pomiarowych moĹźe byÄ&#x2021; niezbÄ&#x2122;dne wyodrÄ&#x2122;bnienie wartoĹ&#x203A;ci niepewnoĹ&#x203A;ci skĹ&#x201A;adowych uA i uB dla wielkoĹ&#x203A;ci Yi menzurandu wyjĹ&#x203A;ciowego Y oraz wspĂłĹ&#x201A;czynnikĂłw skorelowania rA, rB dla par odchyleĹ&#x201E; tych wielkoĹ&#x203A;ci. Przedstawi siÄ&#x2122; to na przykĹ&#x201A;adzie 2D menzurandu X = [X1, X2]T o postaciach macierzy Ux1,2 wg (7), tj. dla
u 22A
UX = UXA + UXB
(12a)
UY = UYA + UYB
(12b)
SkĹ&#x201A;adniki obu macierzy kowariancji znajduje siÄ&#x2122; po linearyzacji funkcji Y = F(X) przez macierz S wg wzorĂłw (uproszczono zapis S i UX, nie podkreĹ&#x203A;la siÄ&#x2122; moĹźliwoĹ&#x203A;ci wystÄ&#x2122;powania zaleĹźnoĹ&#x203A;ci od X):
i
UYA = SU XAS T
(12c)
UYB = SU XBS T
(12d)
Macierz kowariancji UY menzurandu wyjĹ&#x203A;ciowego moĹźna wyznaczaÄ&#x2021; dwojako, tj.: â&#x2C6;&#x2019; oszacowaÄ&#x2021;, jak poprzednio UX = UXA + UXB i z niej bezpoĹ&#x203A;rednio otrzymaÄ&#x2021; UY (rys. 3a) lub â&#x2C6;&#x2019; najpierw wyznaczyÄ&#x2021; z macierzy UXA i UXB wyjĹ&#x203A;ciowe macierze skĹ&#x201A;adowe UYA i UYB (rys. 3b). Otrzymuje siÄ&#x2122;: (13)
SkĹ&#x201A;adowe macierze kowariancji Ux12A, Ux12B wg (7a) dla zbiorĂłw odchyleĹ&#x201E; wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych o niepewnoĹ&#x203A;ciach uiA oraz uiB (i = 1, 2) wynoszÄ&#x2026; odpowiednio:
(14)
Rys. 3. Schematy przetwarzania niepewnoĹ&#x203A;ci w wieloparametrowych pomiarach poĹ&#x203A;rednich i dwa sposoby a, b wyznaczania wyjĹ&#x203A;ciowej macierzy kowariancji UY i jej macierzy skĹ&#x201A;adowych UYA , UYB wg macierzowego prawa propagacji wariancji Fig. 3. Schemes of uncertainty processing in multi-parameter indirect measurements and two methods: a, b for determining the output covariance matrix UY and its component matrixes UYA , UYB according to the matrix law of variance propagation
59
' " ' '. L $ "'. L "'. L ! g E X
u (x1 â&#x2C6;&#x2019;x2 ) = u 02 â&#x2C6;&#x2019; 2ux 1ux 2 = ux21 + ux22 â&#x2C6;&#x2019; 2ux 1ux 2 = ux 1 â&#x2C6;&#x2019; ux 2
Oba sposoby sÄ&#x2026; rĂłwnowaĹźne. Sprawdzono to numerycznie dla modelu o 2D menzurandach X i Y. Z macierzy jako skĹ&#x201A;adnikĂłw macierzy UY we wzorze (14) moĹźna wyznaczyÄ&#x2021; niepewnoĹ&#x203A;ci skĹ&#x201A;adowe elementĂłw menzurandu wyjĹ&#x203A;ciowego i wspĂłĹ&#x201A;czynniki korelacji zbiorĂłw odchyleĹ&#x201E; kaĹźdego z typĂłw A i B. Na przykĹ&#x201A;ad dwuelementowy menzurand wyjĹ&#x203A;ciowy Y ma macierz kowariancji
U y 1,2
â&#x17D;Ą uy21A + uy21B =â&#x17D;˘ â&#x17D;˘ Ď yAuy 1Auy 2A + Ď yBuy 1Buy 2B â&#x17D;Ł
Przy uwzglÄ&#x2122;dnieniu caĹ&#x201A;kowitej korelacji wielkoĹ&#x203A;ci mierzonych, z geometrycznego sumowania niepewnoĹ&#x203A;ci otrzymuje siÄ&#x2122; proste zaleĹźnoĹ&#x203A;ci algebraiczne, tj. dla sumy tych wielkoĹ&#x203A;ci sumÄ&#x2122; ich niepewnoĹ&#x203A;ci, a dla róşnicy â&#x20AC;&#x201C; moduĹ&#x201A; róşnicy tych niepewnoĹ&#x203A;ci. b. Nie ma skorelowania miÄ&#x2122;dzy x1, x2, tj. rx1,2 = 0 NiepewnoĹ&#x203A;ci sumy i róşnicy sÄ&#x2026; jednakowe i wynoszÄ&#x2026;
Ď yAuy 1Auy 2A + Ď yBuy 1Buy 2B â&#x17D;¤
â&#x17D;Ľ. â&#x17D;Ľ â&#x17D;Ś
uy22A + uy22B
u ( x1 + x 2 ) = u ( x1 â&#x2C6;&#x2019; x 2 ) = u 0 .
c. Odchylenia o niepewnoĹ&#x203A;ciach u1A, u2A nie sÄ&#x2026; skorelowane gdy (rA = 0; 1 > rB â&#x2030; 0)
(15) TÄ&#x2122; macierz moĹźna podzieliÄ&#x2021; na nastÄ&#x2122;pujÄ&#x2026;ce macierze skĹ&#x201A;adowe typu A i B:
u (x1 + x2 ) = u 02 + 2 Ď Bu1Bu 2B , u (x1 â&#x2C6;&#x2019;x2 ) = u 02 â&#x2C6;&#x2019; 2 Ď Bu1Bu 2B .
(16) NiepewnoĹ&#x203A;Ä&#x2021; sumy wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych jest wiÄ&#x2122;ksza niĹź poprzednio i osiÄ&#x2026;ga maximum dla rB = 1. ZaĹ&#x203A; dla róşnicy tych wielkoĹ&#x203A;ci niepewnoĹ&#x203A;Ä&#x2021; jest wĂłwczas najmniejsza.
Na rysunku 3 podano schematy a i b przetwarzania niepewnoĹ&#x203A;ci wejĹ&#x203A;ciowych i wyznaczania wyjĹ&#x203A;ciowej macierzy kowariancji jako sumy jej macierzy skĹ&#x201A;adowych wg macierzowego prawa propagacji wariancji w pomiarach poĹ&#x203A;rednich wieloparametrowych. OgĂłlnie w tych pomiarach macierz kowariancji jest sumÄ&#x2026; przetwarzanych oddzielnie macierzy kowariancji odchyleĹ&#x201E; wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych o niepewnoĹ&#x203A;ciach A i B.
d. Pomiary obu wartoĹ&#x203A;ci x1, x2 wykonuje siÄ&#x2122; tym samym, lub zbliĹźonym przyrzÄ&#x2026;dem albo czujnikiem i w tych samych warunkach. WĂłwczas wspĂłĹ&#x201A;czynnik korelacji rB â&#x2020;&#x2019; 1 i moĹźna przyjÄ&#x2026;Ä&#x2021; rB = 1. WartoĹ&#x203A;ci obserwacji nie sÄ&#x2026; skorelowane (r A = 0). Wypadkowe niepewnoĹ&#x203A;ci u B sumy i róşnicy wynikajÄ&#x2026; wĂłwczas z kwadratĂłw dwumianĂłw (u1B Âą u2B) i naleĹźy stosowaÄ&#x2021; nastÄ&#x2122;pujÄ&#x2026;ce wzory
# $ , NiepewnoĹ&#x203A;ci menzurandu 2D w postaci sumy i róşnicy wielkoĹ&#x203A;ci X1, X2 â&#x17D;Ą1 1 â&#x17D;¤ â&#x17D;Ą X 1 â&#x17D;¤ â&#x17D;Ľ â&#x17D;˘ â&#x17D;Ľ = â&#x17D;ĄX 1 + X 2 Y = S â&#x2039;&#x2026;X = â&#x17D;˘ â&#x17D;˘â&#x17D;Ł1 â&#x2C6;&#x2019;1â&#x17D;Ľâ&#x17D;Ś â&#x17D;˘â&#x17D;ŁX 2 â&#x17D;Ľâ&#x17D;Ś â&#x17D;Ł
T
X 1 â&#x2C6;&#x2019; X 2 â&#x17D;¤â&#x17D;Ś .
(17)
(
)
(18)
(
)
(19)
u (x1 â&#x2C6;&#x2019;x2 ) = u 02 â&#x2C6;&#x2019; 2 Ď Au1Au 2A + Ď Bu1Bu 2B
u 02 = u12A + u12B + u 22A + u 22B
Ď (x
u2 â&#x2C6;&#x2019; u2
1 + x 2 , x1 â&#x2C6;&#x2019; x 2
x1 x2 ) =u u x1 + x 2 x1 â&#x2C6;&#x2019; x 2
(20)
Rozpatrzone zostanÄ&#x2026; cztery przypadki szczegĂłlne wzorĂłw (18) i (19):
u1A u 2A . = u1B u 2B
W ogĂłlnym przypadku estymatory wartoĹ&#x203A;ci, niepewnoĹ&#x203A;ci i wspĂłĹ&#x201A;czynnikĂłw korelacji elementĂłw yj mierzonego poĹ&#x203A;rednio wieloparametrowego menzurandu Y zaleĹźÄ&#x2026; teĹź od niepewnoĹ&#x203A;ci parametrĂłw pi ukĹ&#x201A;adu realizujÄ&#x2026;cego wielowymiarowÄ&#x2026; funkcjÄ&#x2122; przetwarzania F(X). Parametry tego ukĹ&#x201A;adu moĹźna opisaÄ&#x2021; ogĂłl-
u (x1 + x2 ) = u 02 + 2ux 1ux 2 = ux21 + ux22 + 2ux 1ux 2 = ux 1 + ux 2
P
O
M
2
b,L, 5
WĂłwczas:
60
)
b, (
n !" $ ! ! UP x J
a. WspĂłĹ&#x201A;czynnik korelacji wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych rx1,2 = 1, gdy rA = 1, rB = 1 i
(
2
Podobne postacie wzorĂłw otrzymuje siÄ&#x2122; dla niepewnoĹ&#x203A;ci wzglÄ&#x2122;dnych iloczynu i ilorazu x1, x2. Z eksperymentalnych danych pomiarowych wyznaczyÄ&#x2021; moĹźna jedynie wspĂłĹ&#x201A;czynnik korelacji rA. Uzyskuje siÄ&#x2122; go z wartoĹ&#x203A;ci synchronicznie pobieranych obserwacji pomiarowych dwu wielkoĹ&#x203A;ci x1, x2 w staĹ&#x201A;ych warunkach wpĹ&#x201A;ywajÄ&#x2026;cych. JeĹ&#x203A;li takich pomiarĂłw nie wykonano, lub nie sÄ&#x2026; one moĹźliwe, to naleĹźy przyjÄ&#x2026;Ä&#x2021;, Ĺźe zbiory odchyleĹ&#x201E; obu wielkoĹ&#x203A;ci mierzonych majÄ&#x2026; najbardziej niekorzystny przypadek wspĂłĹ&#x201A;czynnika korelacji rA, tj. dajÄ&#x2026;cy najwiÄ&#x2122;kszÄ&#x2026; niepewnoĹ&#x203A;Ä&#x2021; skĹ&#x201A;adowÄ&#x2026;. Oszacowanie wartoĹ&#x203A;ci wspĂłĹ&#x201A;czynnika rB jest heurystyczne i opiera siÄ&#x2122; gĹ&#x201A;Ăłwnie na wiedzy oraz subiektywnym doĹ&#x203A;wiadczeniu wykonujÄ&#x2026;cego pomiary. Gdy brakuje informacji jak oszacowaÄ&#x2021; liczbowo jego wartoĹ&#x203A;ci, naleĹźy przyjmowa najbliĹźszÄ&#x2026; z wartoĹ&#x203A;ci kraĹ&#x201E;cowych 1, 0, â&#x20AC;&#x201C;1.
gdzie:
oraz
)
u (x1 â&#x2C6;&#x2019;x2 ) = u12A + u 22A + u1B â&#x2C6;&#x2019; u 2B .
Z zaleĹźnoĹ&#x203A;ci (3), (6a, b) i (8) wynika, Ĺźe dla estymatorĂłw x1, x2 o parametrach typu A wyznaczonych z pomiarĂłw oraz typu B wyznaczonych heurystycznie otrzymuje siÄ&#x2122;: u (x1 + x2 ) = u 02 + 2 Ď Au1Au 2A + Ď Bu1Bu 2B
(
u (x1 + x2 ) = u12A + u 22A + u1B + u 2B ,
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
#" '. + * ' '. $
nie k-wymiarowym wektorem P. MogÄ&#x2026; one podlegaÄ&#x2021; zmianom deterministycznym i losowym w zaleĹźnoĹ&#x203A;ci od warunkach pomiarĂłw, uĹźytych egzemplarzy przyrzÄ&#x2026;dĂłw i zastosowanej procedury pomiarowej. W kaĹźdym z eksperymentĂłw pomiarowych realizacje funkcji F(X) mogÄ&#x2026; odbiegaÄ&#x2021; od jej postaci znamionowej. Opisuje to zmodyfikowane ogĂłlne rĂłwnanie (1) dla wartoĹ&#x203A;ci menzurandu Y oraz rĂłwnanie (22) dla jego przyrostĂłw: Y = F(X, P)
(21)
Î&#x201D;Y = Î&#x201D;F(X, P) = SX,P¡[Î&#x201D;X, Î&#x201D;P]T
(22)
gdzie: SX,P o wymiarze [m Ă&#x2014;(n+k) ] jest macierzÄ&#x2026; linearyzujÄ&#x2026;cÄ&#x2026; funkcjÄ&#x2122; (21). Dla przetwarzania danych pomiarowych wg funkcji (21) prawo propagacji wariancji ma postaÄ&#x2021; ogĂłlnÄ&#x2026;:
UY ,P = SX ,P â&#x2039;&#x2026;U X ,P â&#x2039;&#x2026; SXT ,P
(23)
gdzie UX,P, UY,P â&#x20AC;&#x201C; wyjĹ&#x203A;ciowa i wyjĹ&#x203A;ciowa macierze kowariancji oraz macierz wraĹźliwoĹ&#x203A;ci SX,P. Macierz czuĹ&#x201A;oĹ&#x203A;ci SX,P ze wzoru (23) linearyzujÄ&#x2026;ca funkcjÄ&#x2122; F(X, P) speĹ&#x201A;nia zaleĹźnoĹ&#x203A;ci: SX ,P = â&#x17D;Ąâ&#x17D;ŁS SP â&#x17D;¤â&#x17D;Ś
(23a)
â&#x17D;ĄS T â&#x17D;¤ SXT ,P = â&#x17D;˘ â&#x17D;Ľ â&#x17D;˘SPT â&#x17D;Ľ â&#x17D;Ł â&#x17D;Ś
(23b)
(24) o rozmiarach: S [m Ă&#x2014; n] â&#x2C6;&#x201A;y1 â&#x17D;¤ â&#x17D;Ľ â&#x2C6;&#x201A;x n â&#x17D;Ľ â&#x17D;Ľ ! â&#x17D;Ľ â&#x17D;Ľ â&#x2C6;&#x201A;ym â&#x17D;Ľ â&#x2C6;&#x201A;x n â&#x17D;Ľâ&#x17D;Ś
â&#x17D;Ą ux21 ! Ď x 1nu1nuxn â&#x17D;¤ â&#x17D;˘ â&#x17D;Ľ â&#x17D;Ľ, ! ! =â&#x17D;˘ ! â&#x17D;˘ â&#x17D;Ľ 2 â&#x17D;˘Ď u u â&#x17D;Ľ u ! xn xn x xn 1 1 â&#x17D;Ł â&#x17D;Ś
(24c)
â&#x17D;Ą u p21 ! Ď p1ku p1u pk â&#x17D;¤ â&#x17D;˘ â&#x17D;Ľ â&#x17D;Ľ. Up = â&#x17D;˘ ! ! ! â&#x17D;˘ â&#x17D;Ľ 2 â&#x17D;˘Ď u u â&#x17D;Ľ u ! pk â&#x17D;Ł k 1 pk p1 â&#x17D;Ś
(24d)
UX
gdzie upi â&#x20AC;&#x201C; niepewnoĹ&#x203A;ci parametrĂłw ukĹ&#x201A;adu przetwarzajÄ&#x2026;cego; rpij , (i z j, i, j = 1, ..., k) â&#x20AC;&#x201C; wspĂłĹ&#x201A;czynniki korelacji miedzy nimi, â&#x20AC;˘ macierz â&#x20AC;&#x17E;kowariancyjnaâ&#x20AC;? korelacji miÄ&#x2122;dzy wielkoĹ&#x203A;ciami wejĹ&#x203A;ciowymi X i parametrami P ukĹ&#x201A;adu przetwarzajÄ&#x2026;cego o rozmiarze [n Ă&#x2014; k] â&#x17D;Ą Ď x 1p1ux 1u p1 ! Ď x 1pkux 1u pk â&#x17D;¤ â&#x17D;˘ â&#x17D;Ľ â&#x17D;Ľ. U =â&#x17D;˘ ! ! ! â&#x17D;˘ â&#x17D;Ľ â&#x17D;˘Ď u u â&#x17D;Ľ Ď u u ! xnp 1 xn p 1 xnpk xn pk â&#x17D;Ł â&#x17D;Ś
(24e)
gdzie rxipj (i = 1, ... , n, j = 1, .., k) â&#x20AC;&#x201C; wspĂłĹ&#x201A;czynniki korelacji wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych i parametrĂłw ukĹ&#x201A;adu, Po wprowadzeniu oznaczenia V = SUSPT oraz przeksztaĹ&#x201A;ce-
Zrandomizowane odchylenia od estymatorĂłw wartoĹ&#x203A;ci elementĂłw menzurandu wyjĹ&#x203A;ciowego Y powstajÄ&#x2026; jako wynik splotĂłw rozkĹ&#x201A;adĂłw odchyleĹ&#x201E; menzurandu X i odchyleĹ&#x201E; parametrĂłw P ukĹ&#x201A;adu realizujÄ&#x2026;cego funkcjÄ&#x2122; F(X, P). Ich macierze kowariancji sumujÄ&#x2026; siÄ&#x2122;. Macierz kowariancji UY wynika z linearyzacji funkcji Y = F(X, P) i w ogĂłlnym przypadku opisana jest nastÄ&#x2122;pujÄ&#x2026;cym rĂłwnaniem propagacji:
w ktĂłrym: â&#x20AC;˘ macierze czuĹ&#x201A;oĹ&#x203A;ci odpowiednio i Sp[m Ă&#x2014; k], tj.: â&#x17D;Ą â&#x2C6;&#x201A;y1 ! â&#x17D;˘ â&#x17D;˘ â&#x2C6;&#x201A;x1 â&#x17D;˘ S =â&#x17D;˘! ! â&#x17D;˘ â&#x17D;˘ â&#x2C6;&#x201A;ym ! â&#x17D;˘ â&#x2C6;&#x201A;x â&#x17D;Ł 1
â&#x20AC;˘ macierze kowariancji wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych o rozmiarze [n Ă&#x2014; n] i parametrĂłw ukĹ&#x201A;adu [k Ă&#x2014; k]
(24a)
(
niach V T = SUSPT
)
T
( )
= S p US
T
= S pU TS T rĂłwnanie (24)
przyjmuje prostszÄ&#x2026; postaÄ&#x2021;:
UY = SU XS T + S pU pS pT + V + V T
(25)
b,H, #
!"
! ! !" $ przetwarzania Rozpatrzymy przypadek prostszy, czÄ&#x2122;sto wystÄ&#x2122;pujÄ&#x2026;cy w praktyce pomiarowej, w tym w diagnostyce technicznej schematĂłw elektrycznych, gdy odchylenia mierzonych wielkoĹ&#x203A;ci X oraz odchylenia parametrĂłw P ukĹ&#x201A;adu przetwarzajÄ&#x2026;cego pomiary nie sÄ&#x2026; ze sobÄ&#x2026; skorelowane (np. znajdujÄ&#x2026; siÄ&#x2122; w innych miejscach i oddziaĹ&#x201A;ywania wielkoĹ&#x203A;ci zewnÄ&#x2122;trznych wpĹ&#x201A;ywajÄ&#x2026;cych na kaĹźde z nich nie sÄ&#x2026; ze sobÄ&#x2026; powiÄ&#x2026;zane). WĂłwczas V = VT = 0 i rozszerzona macierz kowariancji menzurandu wejĹ&#x203A;ciowego UX,P o wymiarze [(n + k) Ă&#x2014; (n + k)] ze wzoru (24) ma dwa bloki rĂłwne 0, tj.: â&#x17D;ĄU X [0] â&#x17D;¤ â&#x17D;Ľ U X,P = â&#x17D;˘ â&#x17D;˘ [0 ] U p â&#x17D;Ľ â&#x17D;Ł â&#x17D;Ś
(26)
gdzie przez UX, UP oznaczono odpowiednio macierze kowariancji wielkoĹ&#x203A;ci wejĹ&#x203A;ciowych X o wymiarze [n Ă&#x2014; n] i parametrĂłw P ukĹ&#x201A;adu o wymiarze [k Ă&#x2014; k]. (24b)
Dla niewielkich przyrostĂłw otrzymuje siÄ&#x2122; Î&#x201D;Y(X) = Î&#x201D;F(X, P) = S(X)¡Î&#x201D;X + SP¡Î&#x201D;P
(27)
61
' " ' '. L $ "'. L "'. L ! g E X
gdzie macierz S o wymiarze [m Ă&#x2014; n] i macierz SP o wymiarze [m Ă&#x2014; k] wynikajÄ&#x2026; z linearyzacji funkcji F(X, P) odpowiednio po zmiennych wejĹ&#x203A;ciowych w punkcie X i po parametrach ukĹ&#x201A;adu.
zaleĹźne i nie sÄ&#x2026; skorelowane z wartoĹ&#x203A;ciami wielkoĹ&#x203A;ci mierzonych na wejĹ&#x203A;ciu ukĹ&#x201A;adu, otrzymuje siÄ&#x2122; prostsze dwuskĹ&#x201A;adnikowe rĂłwnanie macierzy kowariancji dla niepewnoĹ&#x203A;ci bezwzglÄ&#x2122;dnych (28) i jego wariant (30) z wydzielonymi macierzami dla odchyleĹ&#x201E; typu A i B. Pierwszy skĹ&#x201A;adnik jest taki jak w Suplemencie 2 [2] Przewodnika GUM. RĂłwnania wyjĹ&#x203A;ciowej macierzy kowariancji (29) i (31) otrzymane dla niepewnoĹ&#x203A;ci wzglÄ&#x2122;dnych majÄ&#x2026; teĹź podobnÄ&#x2026; strukturÄ&#x2122;. W czÄ&#x2122;Ĺ&#x203A;ci 2. artykuĹ&#x201A;u zostanie przedstawiony przykĹ&#x201A;ad ilustrujÄ&#x2026;cy zastosowanie rozszerzonej metody do wyznaczania niepewnoĹ&#x203A;ci pomiarĂłw poĹ&#x203A;rednich wieloparametrowych z uwzglÄ&#x2122;dnieniem niepewnoĹ&#x203A;ci i korelacji parametrĂłw P ukĹ&#x201A;adu realizujÄ&#x2026;cego funkcjÄ&#x2122; przetwarzania. BÄ&#x2122;dÄ&#x2026; to czÄ&#x2122;sto wystÄ&#x2122;pujÄ&#x2026;ce w pomiarach przemysĹ&#x201A;owych i w diagnostyce technicznej, pomiary za poĹ&#x203A;rednictwem ukĹ&#x201A;adu o strukturze czwĂłrnika. CzÄ&#x2122;Ĺ&#x203A;Ä&#x2021; 2. bÄ&#x2122;dzie zawieraÄ&#x2021; teĹź wnioski koĹ&#x201E;cowe.
Obie macierze kowariancji UX i UP sÄ&#x2026; symetryczne, a odchylenia elementĂłw typu A kaĹźdej z nich w ogĂłlnym przypadku mogÄ&#x2026; ze sobÄ&#x2026; korelowaÄ&#x2021; niezaleĹźnie od skorelowania odchyleĹ&#x201E; z niepewnoĹ&#x203A;ciami typu B. RĂłwnanie propagacji wariancji, dla UX,P wg (26) przyjmuje postaÄ&#x2021; â&#x17D;ĄU X [0] â&#x17D;¤ â&#x17D;ĄS T â&#x17D;¤ â&#x17D;Ľ â&#x2039;&#x2026; â&#x17D;˘ â&#x17D;Ľ = S â&#x2039;&#x2026;U X â&#x2039;&#x2026; S T + SP â&#x2039;&#x2026;U P â&#x2039;&#x2026; SPT UY,P = â&#x17D;Ąâ&#x17D;ŁS SP â&#x17D;¤â&#x17D;Ś â&#x2039;&#x2026; â&#x17D;˘ â&#x17D;˘â&#x17D;Ł [0] U P â&#x17D;Ľâ&#x17D;Ś â&#x17D;˘SPT â&#x17D;Ľ â&#x17D;Ł â&#x17D;Ś (28)
^ PodobnÄ&#x2026; postaÄ&#x2021; macierzy kowariancji otrzymuje siÄ&#x2122; dla niepewnoĹ&#x203A;ci wzglÄ&#x2122;dnych, tj.:
U δY,P = Sδ â&#x2039;&#x2026;U δ â&#x2039;&#x2026; SδT + Sδ P â&#x2039;&#x2026;U δ P â&#x2039;&#x2026; SδTP
1. JCGM100:2008, Evaluation of measurement data â&#x20AC;&#x201C; Guide to the expression of uncertainty in measurement. 2. JCGM102:2011, Supplement 2 to the â&#x20AC;&#x2DC;GUM â&#x20AC;&#x201C; Extension to any number of output quantitiesâ&#x20AC;&#x2DC;. 3. EA-4/02 M: 2013 Wyznaczanie niepewnoĹ&#x203A;ci pomiaru przy wzorcowaniu (Evaluation of the Uncertainty of Measurement in Calibration). 4. Dorozhovets M., Warsza Z.L., Udoskonalenie metod wyznaczania niepewnoĹ&#x203A;ci wynikĂłw pomiaru w praktyce. â&#x20AC;&#x17E;PrzeglÄ&#x2026;d Elektrotechnikiâ&#x20AC;?, Nr 1, 2007, 1â&#x20AC;&#x201C;13. 5. Warsza Z.L., Ezhela V.V., Zarys podstaw teoretycznych wyznaczania i numerycznej prezentacji wynikĂłw pomiarĂłw poĹ&#x203A;rednich wieloparametrowych. â&#x20AC;&#x17E;Pomiary Automatyka Kontrolaâ&#x20AC;?, Vol. 57, Nr 2, 2011, 175â&#x20AC;&#x201C;179. 6. Warsza Z.L., ZiÄ&#x2122;ba A., NiepewnoĹ&#x203A;Ä&#x2021; typu A pomiaru o obserwacjach samo-skorelowanych. â&#x20AC;&#x17E;Pomiary Automatyka Kontrolaâ&#x20AC;?, Vol. 58, Nr 2, 2012, 157â&#x20AC;&#x201C;161. 7. Warsza Z.L., Metody rozszerzenia analizy niepewnoĹ&#x203A;ci pomiarĂłw. Monografia, Oficyna Wydawnicza PIAP, Warszawa 2016. 8. Warsza Z.L. Part 1; Warsza Z.L., Puchalski J., Part 2, Mat. Konf. (CD): Problems and Progress of Metrology, ppm â&#x20AC;&#x2122;18 Szczyrk 04â&#x20AC;&#x201C;06 June 2018 r. Series: Conferences No. 22, Metrology Commission of Katowice Branch of the Polish Academy of Science, ISBN 978-83-7880-541-0. 9. Warsza Z.L., Puchalski J., Udoskonalona metoda wyznaczania niepewnoĹ&#x203A;ci w pomiarach wieloparametrowych. CzÄ&#x2122;Ĺ&#x203A;Ä&#x2021; 1. Podstawy teoretyczne dla skorelowanych wielkoĹ&#x203A;ci mierzonych. â&#x20AC;&#x17E;Pomiary Automatyka Robotykaâ&#x20AC;?, R. 23, Nr 1, 2019, 47-58, DOI: 10.14313/PAR_231/47. 10. Warsza Z.L., Puchalski J., Udoskonalona metoda wyznaczania niepewnoĹ&#x203A;ci w pomiarach wieloparametrowych. CzÄ&#x2122;Ĺ&#x203A;Ä&#x2021; 2. PrzykĹ&#x201A;ady pomiarĂłw wielkoĹ&#x203A;ci skorelowanych, â&#x20AC;&#x17E;Pomiary Automatyka Robotykaâ&#x20AC;?, R. 23, Nr 2, 2019, 29-37, DOI: 10.14313/PAR_232/29. 11. Warsza Z.L., Puchalski J., Vector method of estimation the uncertainties of correlated multi-measurands. Proceedings (Conference Digest) of Quantum and Precision Metrology QPM 2019 Conference Krakow, Poland, 17-19 June 2019, ISBN 978-83-939486-5-9 SIV 4. 12. Warsza Z.L., Puchalski J., Wektorowa metoda wyznaczania niepewnoĹ&#x203A;ci w pomiarach wieloparametrowych o skorelowanych skĹ&#x201A;adowych typu A oraz B menzurandĂłw, â&#x20AC;&#x17E;PrzemysĹ&#x201A; Chemicznyâ&#x20AC;?, Nr 7/2019, 1061â&#x20AC;&#x201C;1068. 13. Warsza Z.L., Puchalski J., NiepewnoĹ&#x203A;Ä&#x2021; wieloparametrowych pomiarĂłw wielkoĹ&#x203A;ci skorelowanych. Zeszyty Naukowe WydziaĹ&#x201A;u Elektrotechniki i Automatyki Politechniki GdaĹ&#x201E;skiej, Nr 65, 2019, 101-108.
(29)
W przypadku pomiarĂłw poĹ&#x203A;rednich wieloparametrowych, gdy parametry ukĹ&#x201A;adu P i wielkoĹ&#x203A;ci mierzone X nie sÄ&#x2026; skorelowane, wzĂłr (26) upraszcza siÄ&#x2122; do postaci (28) i z niego wynika wzĂłr (29) dla niepewnoĹ&#x203A;ci wzglÄ&#x2122;dnych. WyjĹ&#x203A;ciowa macierz kowariancji UY,P staje siÄ&#x2122; wĂłwczas sumÄ&#x2026; tylko dwu wyraĹźeĹ&#x201E;. Pierwszy skĹ&#x201A;adnik zaleĹźy od niepewnoĹ&#x203A;ci menzurandu wejĹ&#x203A;ciowego X tak, jak w ujÄ&#x2122;ciu klasycznym wg GUM-S2 [2]. Drugi skĹ&#x201A;adnik dotyczy niepewnoĹ&#x203A;ci i wspĂłĹ&#x201A;czynnikĂłw korelacji parametrĂłw P ukĹ&#x201A;adu realizujÄ&#x2026;cego funkcjÄ&#x2122; przetwarzania F(X, P). Wyznaczanie macierzy kowariancji UY,P menzurandu wyjĹ&#x203A;ciowego Y naleĹźy przeprowadzaÄ&#x2021; osobno dla odchyleĹ&#x201E; opisanych niepewnoĹ&#x203A;ciami typu A i typu B. Dla niepewnoĹ&#x203A;ci bezwzglÄ&#x2122;dnych otrzymuje siÄ&#x2122; wĂłwczas wzĂłr: (30) oraz dla niepewnoĹ&#x203A;ci wzglÄ&#x2122;dnych â&#x20AC;&#x201C; wzĂłr (31): (31) Stosowanie wzorĂłw (29) i (30) ma dodatkowÄ&#x2026; zaletÄ&#x2122; dla pomiarĂłw tym samym ukĹ&#x201A;adem w róşnych warunkach wpĹ&#x201A;ywajÄ&#x2026;cych. Wystarczy jedynie odpowiednio dostosowaÄ&#x2021; macierze UXB, UPB opisujÄ&#x2026;ce niepewnoĹ&#x203A;ci typu B.
h, # ! & ! L, Opracowano model matematyczny opisu propagacji niepewnoĹ&#x203A;ci w pomiarach poĹ&#x203A;rednich wieloparametrowych i opisu niepewnoĹ&#x203A;ci ukĹ&#x201A;adĂłw realizujÄ&#x2026;cych takie pomiary. Jest to rozszerzenie modelu rekomendowanego w Suplemencie 2 GUM [2]. UwzglÄ&#x2122;dnia on zarĂłwno niepewnoĹ&#x203A;ci jak i skorelowanie wielkoĹ&#x203A;ci mierzonych na wejĹ&#x203A;ciu oraz parametrĂłw wielowymiarowej funkcji przetwarzania. Estymatory wartoĹ&#x203A;ci wielkoĹ&#x203A;ci wyjĹ&#x203A;ciowych sÄ&#x2026; takie, jak w Suplemencie 2, gdyĹź wynikajÄ&#x2026; ze wzoru (1). Natomiast niepewnoĹ&#x203A;ci i wspĂłĹ&#x201A;czynniki korelacji wyznaczanych poĹ&#x203A;rednio wielkoĹ&#x203A;ci wyjĹ&#x203A;ciowych jako elementĂłw menzurandu Y opisane sÄ&#x2026; nowÄ&#x2026; macierzÄ&#x2026; kowariancji UYP i w ogĂłlnym przypadku sÄ&#x2026; inne. W ogĂłlnym przypadku, gdy funkcja przetwarzania realizowana jest w ukĹ&#x201A;adzie pomiarowym obarczonym niepewnoĹ&#x203A;ciami otrzymano czteroskĹ&#x201A;adnikowe rĂłwnanie (24) dla wyjĹ&#x203A;ciowej macierzy kowariancji. JeĹ&#x203A;li parametry funkcji przetwarzania nie sÄ&#x2026;
62
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
#" '. + * ' '. $
BT & & " & - B - 6 & " ?0 " & - - " 0 ' 6 f - & - 0 A ` [ O ` Abstract: In the part 1 of article, the current results of the work are briefly presented regarding the impact of correlations in sets of deviations from estimators of directly measured quantities with uncertainty of types A and B on the accuracy of indirectly determined parameters of output multi-memeasurands. An extended mathematical model of the method contained in Supplement 2 of the GUM Guide was presented. This new extended model takes also into account the uncertainties of the processing function in multiparameter measurements and can also be used to describe the accuracy of instruments and systems that perform such measurements. Part 2 presents examples of using the extended method to describe intermediately measured parameters of a two-terminal net through a four-terminal network, considering the uncertainties of its elements. Keywords\ $ &$ A - $ T$ A - $ b $ - & - 8 O$ - A -
% H " ! - <
% ; <
'+ )%A
%A A
8/ # & B A 0 # '+>+$ & ? '+)($ & & '+(! 0 ] 6 B '+>@['+) '++=['++>$ 0 # '+)!['+(!$ 0 a '+(!['+(@ ; A & # & J L & <$ 4 A ? ] 4 & 8 0 6 " A \ & # & '+(@['+@* & 8 0 9 6 0 '+@ ['++* E & " B& R & '++*['++>$ 0 L & '+@ [*!!* 4/ A 9 0 6 8 0 9 0680 8 & =! / $ ) A - $ & / & ? $ '' 9 * & 9 0 0 A J ? " A A 0 08L 8 & " A
8/ # & ` J ? " ;'+@) < # & B ? ;'+@@ < 0 # ? # '+@(['++> 0 # $ '++> / & . I '! / K ? A - & . . . 0 A - & " ? ` 9 & .& G - 4& *!!) \ 9 & " & . A & 9 9 & & A $ / A 9 A & ?
63
NR 3/2015
64
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 65â&#x20AC;&#x201C;69, DOI: 10.14313/PAR_233/65
.& . / & ! @! F > ! (< # ! Z O & N [ 0 6 8 0 9 0680$ 8 F *!*$ !*?=@) #
@! & W artykule przedstawiono problemy zwiÄ&#x2026;zane z opracowaniem i wdraĹźaniem systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; w instytutach badawczych oraz przedstawiono stan systemĂłw zarzÄ&#x2026;dzania w krajowych instytutach badawczych na przykĹ&#x201A;adzie instytutĂłw skupionych w Sieci Badawczej Ĺ ukasiewicz. +$ ! \ .& .$ / & $
1. Wprowadzenie Obecnie firmy na caĹ&#x201A;ym Ĺ&#x203A;wiecie wdraĹźajÄ&#x2026; systemy zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; oparte na normie ISO 9001. W przypadku firm produkcyjnych, model systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026;, ktĂłry ksztaĹ&#x201A;towaĹ&#x201A; siÄ&#x2122; i doskonaliĹ&#x201A; przez lata (pierwsza wydanie norm dotyczÄ&#x2026;cych zapewnienia jakoĹ&#x203A;ci to rok 1987) jest dobrze znany i wdroĹźenie nie stanowi problemu. W ostatnich latach nie tylko producenci sÄ&#x2026; zainteresowani systemami zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; (SZJ), ale rĂłwnieĹź instytucje edukacyjne i naukowe. Jednym z przykĹ&#x201A;adĂłw wprowadzenia systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; w tego typu instytucjach sÄ&#x2026; instytuty badawcze.
H, + !" ! !" GĹ&#x201A;Ăłwnymi motywami wprowadzenia systemĂłw zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; w instytutach badawczych sÄ&#x2026;: â&#x2C6;&#x2019; znalezienie nowych klientĂłw i rynkĂłw, w tym miÄ&#x2122;dzynarodowych, â&#x2C6;&#x2019; opracowanie i wdroĹźenie dĹ&#x201A;ugofalowej strategii rozwoju dla Instytutu, â&#x2C6;&#x2019; zmniejszenie wszelkiego rodzaju strat i kosztĂłw, â&#x2C6;&#x2019; poprawa dyscypliny technologicznej i wykonawczej, â&#x2C6;&#x2019; zarzÄ&#x2026;dzanie procesami, â&#x2C6;&#x2019; wymagania klientĂłw lub wymagania prawne, â&#x2C6;&#x2019; pcertyfikacji produktĂłw lub usĹ&#x201A;ug. DoĹ&#x203A;wiadczenie pokazuje, Ĺźe metodologia opracowywania i wdraĹźania SZJ dla zakĹ&#x201A;adĂłw produkcyjnych jest bardzo trudna do wykorzystania w instytutach badawczych, ze wzglÄ&#x2122;du na ich cechy charakterystyczne. Wprowadzenie podstaw jakoĹ&#x203A;ci do badaĹ&#x201E; i rozwoju ma swojÄ&#x2026; specyfikÄ&#x2122; i róşni
) ! \ I - - G $ - % ) $ ! & ! !@ *!'+ $ & & ! !+ *!'+
!
siÄ&#x2122; od tego, jak to siÄ&#x2122; robi w sektorze produkcyjnym. GĹ&#x201A;Ăłwne dziedziny dziaĹ&#x201A;alnoĹ&#x203A;ci instytutĂłw badawczych zgodnie z ustawÄ&#x2026; o instytutach badawczych [1] to: â&#x2C6;&#x2019; prowadzenie badaĹ&#x201E; naukowych i prac rozwojowych, â&#x2C6;&#x2019; przystosowywanie wynikĂłw badaĹ&#x201E; naukowych i prac rozwojowych do potrzeb praktyki, â&#x2C6;&#x2019; wdraĹźanie wynikĂłw badaĹ&#x201E; naukowych i prac rozwojowych. GĹ&#x201A;Ăłwne cechy dziaĹ&#x201A;alnoĹ&#x203A;ci naukowej instytutĂłw badawczych to: â&#x2C6;&#x2019; niematerialny charakter podstawowych wartoĹ&#x203A;ci instytutu badawczego, â&#x2C6;&#x2019; trudnoĹ&#x203A;Ä&#x2021; w definiowaniu procesĂłw badawczych, â&#x2C6;&#x2019; wysoki stopieĹ&#x201E; uzaleĹźnienia badaĹ&#x201E; naukowych od osobowoĹ&#x203A;ci naukowca, â&#x2C6;&#x2019; brak jednoznacznej zaleĹźnoĹ&#x203A;ci miÄ&#x2122;dzy wkĹ&#x201A;adem pracy naukowca a produktem koĹ&#x201E;cowym, â&#x2C6;&#x2019; wysokie ryzyko w badaniach, â&#x2C6;&#x2019; wysoki stopieĹ&#x201E; uzaleĹźnienia od finansowania publicznego badaĹ&#x201E;, â&#x2C6;&#x2019; dziaĹ&#x201A;alnoĹ&#x203A;Ä&#x2021; naukowa zawierajÄ&#x2026;ca elementy dziaĹ&#x201A;alnoĹ&#x203A;ci edukacyjnej. Ponadto wiele instytutĂłw badawczych prowadzi dziaĹ&#x201A;alnoĹ&#x203A;Ä&#x2021; produkcyjnÄ&#x2026; i usĹ&#x201A;ugowÄ&#x2026;. GĹ&#x201A;Ăłwne cechy dziaĹ&#x201A;alnoĹ&#x203A;ci produkcyjnej i usĹ&#x201A;ugowej instytutĂłw badawczych to: â&#x2C6;&#x2019; produkcja unikalnych urzÄ&#x2026;dzeĹ&#x201E;, â&#x2C6;&#x2019; róşnorodnoĹ&#x203A;Ä&#x2021; wytwarzanych produktĂłw wymagajÄ&#x2026;ca specyficznej wiedzy, â&#x2C6;&#x2019; zaangaĹźowanie klientĂłw na wszystkich etapach tworzenia produktĂłw. Jednym z wymogĂłw systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; jest identyfikacja gĹ&#x201A;Ăłwnych procesĂłw dziaĹ&#x201A;alnoĹ&#x203A;ci organizacji i udokumentowanie ich. Proces badaĹ&#x201E; naukowych jest bardzo trudny do opisania i sformalizowania, gdyĹź jest to proces oparty na ludzkiej myĹ&#x203A;li, w duĹźym stopniu zaleĹźny od wiedzy i kompetencji naukowcĂłw. Rola lidera w dziedzinie badaĹ&#x201E; naukowych jest w peĹ&#x201A;ni zgodna z ideologiÄ&#x2026; ISO 9001, ktĂłra gĹ&#x201A;osi zasadÄ&#x2122; przywĂłdztwa. Rola lidera w instytucie badawczym ma swojÄ&#x2026; wadÄ&#x2122;. OdejĹ&#x203A;cie naukowego lidera niemal zatrzymuje dziaĹ&#x201A;alnoĹ&#x203A;Ä&#x2021; naukowÄ&#x2026; i moĹźe prowadziÄ&#x2021; do rozpadu zespoĹ&#x201A;u badawczego. PrzykĹ&#x201A;adowÄ&#x2026; mapÄ&#x2122; procesĂłw instytutu badawczego przedstawiono na rys. 1.
65
# ` ' ` " '. = ' "'.
kierownictwa
Marketing
Planowanie
Doskonalenie
Procesy projektowania
Procesy produkcji
Klient
naukowych Szkolenie specjalistĂłw
Projektowanie
Certyfikacja wyrobĂłw
Klient
naukowych i prac rozwojowych
naukowych Projektowanie wyrobĂłw
Zadowolenie
Wymagania
Zastosowanie
Prowadzenie
Akredytacja laboratoriĂłw
akredytowanych
Projektowanie systemĂłw
Certyfikacja systemĂłw
personelem
Rys. 1. PrzykĹ&#x201A;adowa mapa procesĂłw instytutu badawczego Fig. 1. Sample map of the research instituteâ&#x20AC;&#x2122;s processes
Rys. 2. Czynniki wewnÄ&#x2122;trzne i zewnÄ&#x2122;trzne specyficzne dla instytutu badawczego Fig. 2. Internal and external factors specific to the research institute
Nowe wydanie normy ISO 9001, ktĂłre ukazaĹ&#x201A;o siÄ&#x2122; w 2015Â r. wymagaĹ&#x201A;o uzupeĹ&#x201A;nienia istniejÄ&#x2026;cych systemĂłw zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; o trzy elementy: kontekst organizacji, analizÄ&#x2122; ryzyka i zarzÄ&#x2026;dzanie wiedzÄ&#x2026;.
w badania mogÄ&#x2026; nigdy siÄ&#x2122; nie zwrĂłciÄ&#x2021; lub zwrĂłciÄ&#x2021; siÄ&#x2122; w odlegĹ&#x201A;ej przyszĹ&#x201A;oĹ&#x203A;ci. W jaki sposĂłb naleĹźy wiÄ&#x2122;c zagwarantowaÄ&#x2021; speĹ&#x201A;nienie wymagaĹ&#x201E; klienta i wziÄ&#x2026;Ä&#x2021; pod uwagÄ&#x2122; wszystkie moĹźliwe zagroĹźenia? Norma ISO 9001:2015 nie daje odpowiedzi na to pytanie, ale wskazuje narzÄ&#x2122;dzie do zarzÄ&#x2026;dzania ryzykiem zwane analizÄ&#x2026; ryzyka i szans, ktĂłra pozwala zminimalizowaÄ&#x2021; ewentualne ryzyko i jego wpĹ&#x201A;yw na wyniki badaĹ&#x201E; i ostatecznie na satysfakcjÄ&#x2122; klienta. Zgodnie z normÄ&#x2026; ISO 9001:2015 organizacja powinna uwzglÄ&#x2122;dniaÄ&#x2021; ryzyka i szanse (p. 4.4), a najwyĹźsze kierownictwo powinno wykazywaÄ&#x2021; przywĂłdztwo i zaangaĹźowanie w odniesieniu do systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; przez promowanie stosowania podejĹ&#x203A;cia procesowego oraz opartego na ryzyku (p. 5.1) a takĹźe zapewniÄ&#x2021;, aby ryzyka i szanse, ktĂłre wpĹ&#x201A;ywajÄ&#x2026; na zgodnoĹ&#x203A;Ä&#x2021; wyrobĂłw i usĹ&#x201A;ug oraz na zdolnoĹ&#x203A;Ä&#x2021; do zwiÄ&#x2122;kszenia zadowolenia klienta, byĹ&#x201A;y okreĹ&#x203A;lone i uwzglÄ&#x2122;dnione (p. 5.1.2). Organizacja powinna zaplanowaÄ&#x2021; a) dziaĹ&#x201A;ania odnoszÄ&#x2026;ce siÄ&#x2122; do ryzyk i szans, b) sposĂłb: 1) integrowania i wdraĹźania tych dziaĹ&#x201A;aĹ&#x201E; do procesĂłw SZJ, 2) oceny skutecznoĹ&#x203A;ci tych dziaĹ&#x201A;aĹ&#x201E;.
7 ! WedĹ&#x201A;ug PN-EN ISO 9000:2015-10: â&#x20AC;&#x17E;Zrozumienie kontekstu organizacji jest procesem. W jego wyniku zostajÄ&#x2026; okreĹ&#x203A;lone czynniki, ktĂłre wpĹ&#x201A;ywajÄ&#x2026; na sens istnienia organizacji, cele i zdolnoĹ&#x203A;Ä&#x2021; do zrĂłwnowaĹźonego rozwoju. W procesie uwzglÄ&#x2122;dnia siÄ&#x2122; czynniki wewnÄ&#x2122;trzne, takie jak wartoĹ&#x203A;ci, kultura, wiedza i efekty dziaĹ&#x201A;ania organizacji oraz czynniki zewnÄ&#x2122;trzne, takie jak otoczenie prawne, technologiczne, konkurencyjne, rynkowe, kulturowe, spoĹ&#x201A;eczne i ekonomiczne.â&#x20AC;? WyĹźej wymieniona norma nie okreĹ&#x203A;la sposobu dokumentowania aspektĂłw zwiÄ&#x2026;zanych z kontekstem organizacji. Na rys. 2. przedstawiono czynniki wewnÄ&#x2122;trzne i zewnÄ&#x2122;trzne specyficzne dla instytutu badawczego.
) ! ! W badaniach naukowych istnieje bardzo wysokie ryzyko. Fundusze zainwestowane przez klientĂłw (inwestorĂłw, sponsorĂłw)
66
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" @ " " !. L
PodjÄ&#x2122;te dziaĹ&#x201A;ania odnoszÄ&#x2026;ce siÄ&#x2122; do ryzyk i szans powinny byÄ&#x2021; proporcjonalne do potencjalnego wpĹ&#x201A;ywu na zgodnoĹ&#x203A;Ä&#x2021; wyrobĂłw i usĹ&#x201A;ug. Wyniki analizy powinny byÄ&#x2021; wykorzystane do oceny skutecznoĹ&#x203A;ci dziaĹ&#x201A;aĹ&#x201E; podjÄ&#x2122;tych w celu uwzglÄ&#x2122;dnienia ryzyk i szans (p. 9.1.3). Na przeglÄ&#x2026;dzie zarzÄ&#x2026;dzania powinna byÄ&#x2021; oceniona skutecznoĹ&#x203A;Ä&#x2021; podjÄ&#x2122;tych dziaĹ&#x201A;aĹ&#x201E; uwzglÄ&#x2122;dniajÄ&#x2026;cych ryzyka i szanse (p. 9.3). W sytuacji wystÄ&#x2026;pienia niezgodnoĹ&#x203A;ci, w tym kaĹźdej wynikajÄ&#x2026;cej z reklamacji, organizacja powinna aktualizowaÄ&#x2021; ryzyka i szanse okreĹ&#x203A;lone podczas planowania, jeĹ&#x203A;li to konieczne (p. 10.2). Z powyĹźszego wynika, Ĺźe jednym z najwaĹźniejszych punktĂłw na etapie planowania projektu badawczego powinno byÄ&#x2021; zaplanowanie zarzÄ&#x2026;dzania ryzykiem. Aby byÄ&#x2021; w peĹ&#x201A;ni Ĺ&#x203A;wiadomym zagroĹźeĹ&#x201E; wynikajÄ&#x2026;cych z decyzji o przystÄ&#x2026;pieniu do realizacji projektu, naleĹźy dokonaÄ&#x2021; identyfikacji ryzyka, jego analizy jakoĹ&#x203A;ciowej oraz iloĹ&#x203A;ciowej. Dopiero na podstawie uzyskanych wynikĂłw, moĹźna przystÄ&#x2026;piÄ&#x2021; do zaplanowania reakcji na ryzyko i w peĹ&#x201A;ni Ĺ&#x203A;wiadomie przyjÄ&#x2026;Ä&#x2021; je na akceptowalnym poziomie [2]. Analiza ryzyka powinna obejmowaÄ&#x2021;: â&#x20AC;˘ szacowanie ryzyka, w tym: â&#x2C6;&#x2019; identyfikacjÄ&#x2122; czynnikĂłw ryzyka, â&#x2C6;&#x2019; ocenÄ&#x2122; ryzyka, â&#x20AC;˘ sterowanie ryzykiem, w tym: â&#x2C6;&#x2019; redukcjÄ&#x2122; ryzyka, â&#x2C6;&#x2019; monitorowanie ryzyka, â&#x20AC;˘ dokumentowanie zarzÄ&#x2026;dzania ryzykiem. Punktem wyjĹ&#x203A;cia, do podejmowania jakichkolwiek dziaĹ&#x201A;aĹ&#x201E; zwiÄ&#x2026;zanych z analizÄ&#x2026; ryzyka jest identyfikacja czynnikĂłw, ktĂłre mogÄ&#x2026; w znaczÄ&#x2026;cy sposĂłb zakĹ&#x201A;ĂłciÄ&#x2021; sprawny przebieg prac w projekcie badawczym, a w najgorszym przypadku uniemoĹźliwiÄ&#x2021; jego realizacjÄ&#x2122;. Wynikiem tych dziaĹ&#x201A;aĹ&#x201E; jest lista kontrolna zawierajÄ&#x2026;cÄ&#x2026; spis zidentyfikowanych czynnikĂłw ryzyka. OpierajÄ&#x2026;c siÄ&#x2122; na czynnikach ryzyka okreĹ&#x203A;lonych dla projektu realizowanego w uczelni moĹźna zdefiniowaÄ&#x2021; nastÄ&#x2122;pujÄ&#x2026;ce czynniki ryzyka dla projektu badawczego [3]: â&#x2C6;&#x2019; uczestnictwo innych instytucji i przedsiÄ&#x2122;biorstw biorÄ&#x2026;cych udziaĹ&#x201A; w projekcie (liczba), â&#x2C6;&#x2019; uczestnictwo partnerĂłw zagranicznych (liczba partnerĂłw), â&#x2C6;&#x2019; uczestnictwo prywatnych instytucji i przedsiÄ&#x2122;biorstw wspĂłĹ&#x201A;realizujÄ&#x2026;cych projekt (liczba), â&#x2C6;&#x2019; rola instytutu w projekcie (koordynator, partner, podwykonawca),
Strategia Instytutu
Cele strategiczne i kierunki rozwoju
Tematyka prowadzonych
Procesy badawcze
Ocena kompetencji pracownikĂłw
â&#x2C6;&#x2019; solidarna odpowiedzialnoĹ&#x203A;Ä&#x2021; partnerĂłw za zrealizowanie projektu (NIE, TAK), â&#x2C6;&#x2019; czas trwania projektu (w miesiÄ&#x2026;cach) â&#x20AC;&#x201C; termin realizacji (zbyt krĂłtki, wystarczajÄ&#x2026;cy), â&#x2C6;&#x2019; udziaĹ&#x201A; beneficjentĂłw ostatecznych w projekcie (liczba), â&#x2C6;&#x2019; tematyka projektu pokrywa siÄ&#x2122; z podstawowÄ&#x2026; dziaĹ&#x201A;alnoĹ&#x203A;ciÄ&#x2026; instytutu (pokrywa siÄ&#x2122;, nie pokrywa siÄ&#x2122;), â&#x2C6;&#x2019; status kierownika projektu (umowa o pracÄ&#x2122;, umowa cywilnoprawna), â&#x2C6;&#x2019; doĹ&#x203A;wiadczenie kierownika projektu w kierowaniu projektami z danego ĹşrĂłdĹ&#x201A;a finansowania, â&#x2C6;&#x2019; doĹ&#x203A;wiadczenie kierownika projektu w kierowaniu projektami z innego ĹşrĂłdĹ&#x201A;a finansowania (posiada, nie posiada), â&#x2C6;&#x2019; uprawnienia kierownika projektu do zarzÄ&#x2026;dzania projektami (posiada, nie posiada), â&#x2C6;&#x2019; doĹ&#x203A;wiadczenie zespoĹ&#x201A;u projektowego w realizacji projektĂłw z danego ĹşrĂłdĹ&#x201A;a finansowania (posiada, nie posiada), â&#x2C6;&#x2019; doĹ&#x203A;wiadczenie zespoĹ&#x201A;u projektowego w realizacji projektĂłw z innych ĹşrĂłdĹ&#x201A;a finansowania (posiada, nie posiada), â&#x2C6;&#x2019; inne (jakie). Do sukcesu projektu badawczego mogÄ&#x2026; przyczyniÄ&#x2021; siÄ&#x2122; nastÄ&#x2122;pujÄ&#x2026;ce czynniki [4]: â&#x2C6;&#x2019; kompetencje i doĹ&#x203A;wiadczenie badawcze naukowcĂłw, â&#x2C6;&#x2019; kompetencje i doĹ&#x203A;wiadczenie naukowcĂłw we wspĂłĹ&#x201A;pracy z biznesem, â&#x2C6;&#x2019; kontakty, partnerstwo i gotowoĹ&#x203A;Ä&#x2021; do wspĂłĹ&#x201A;pracy ze strony jednostki, â&#x2C6;&#x2019; zaplecze finansowe i infrastrukturalne jednostki.
Norma ISO 9001:2015 bardzo ogĂłlnie okreĹ&#x203A;la wymagania dotyczÄ&#x2026;ce procesu zarzÄ&#x2026;dzania wiedzÄ&#x2026;, ktĂłre naleĹźy wziÄ&#x2026;Ä&#x2021; pod uwagÄ&#x2122; przy wdraĹźaniu systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026;. Organizacja analizujÄ&#x2026;c ĹşrĂłdĹ&#x201A;a wewnÄ&#x2122;trzne i zewnÄ&#x2122;trzne powinna okreĹ&#x203A;liÄ&#x2021; wiedzÄ&#x2122; potrzebnÄ&#x2026; do realizacji swoich procesĂłw oraz wĹ&#x201A;aĹ&#x203A;ciwie niÄ&#x2026; zarzÄ&#x2026;dzaÄ&#x2021;. Wiedza pracownikĂłw jest najcenniejszym zasobem instytutĂłw badawczych. ZarzÄ&#x2026;dzanie wiedzÄ&#x2026; powinno obejmowaÄ&#x2021; identyfikacjÄ&#x2122; potrzebnej wiedzy i informacji, ich przechowywanie i ochronÄ&#x2122; oraz efektywne wykorzystanie w realizacji procesĂłw badawczych. PrzykĹ&#x201A;adowy proces zarzÄ&#x2026;dzania wiedzÄ&#x2026; w instytucie badawczym przedstawiono na rys. 3.
Wymagania
Procesy produkcji i dostarczania
Ocenap osiadanej wiedzy
Baza wiedzy
dodatkowej wiedzy Rozpowszechnianie wiedzy
Utrzymywanie wiedzy
Zdobycie dodatkowej wiedzy Wykorzystywanie wiedzy
Rys. 3. ZarzÄ&#x2026;dzanie wiedzÄ&#x2026; w instytucie badawczym Fig. 3. Knowledge management at a research institute
67
# ` ' ` " '. = ' "'. Badania aplikacyjne to prace majÄ&#x2026;ce na celu zdobycie nowej wiedzy oraz umiejÄ&#x2122;tnoĹ&#x203A;ci, nastawione na opracowywanie nowych produktĂłw, procesĂłw lub usĹ&#x201A;ug lub wprowadzanie do nich znaczÄ&#x2026;cych ulepszeĹ&#x201E;. Prace rozwojowe sÄ&#x2026; dziaĹ&#x201A;alnoĹ&#x203A;ciÄ&#x2026; obejmujÄ&#x2026;cÄ&#x2026; nabywanie, Ĺ&#x201A;Ä&#x2026;czenie, ksztaĹ&#x201A;towanie i wykorzystywanie dostÄ&#x2122;pnej aktualnie wiedzy i umiejÄ&#x2122;tnoĹ&#x203A;ci, w tym w zakresie narzÄ&#x2122;dzi informatycznych lub oprogramowania, do planowania produkcji oraz projektowania i tworzenia zmienionych, ulepszonych lub nowych produktĂłw, procesĂłw lub usĹ&#x201A;ug, z wyĹ&#x201A;Ä&#x2026;czeniem dziaĹ&#x201A;alnoĹ&#x203A;ci obejmujÄ&#x2026;cej rutynowe i okresowe zmiany wprowadzane do nich, nawet jeĹźeli takie zmiany majÄ&#x2026; charakter ulepszeĹ&#x201E;. W skĹ&#x201A;ad Sieci wchodzi 38 instytutĂłw badawczych zlokalizowanych w 11 miastach, zatrudniajÄ&#x2026;cych okoĹ&#x201A;o 8000 pracownikĂłw. 20 InstytutĂłw Sieci Badawczej Ĺ ukasiewicz posiada certyfikaty systemu zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; zgodnego z normÄ&#x2026; PN-EN ISO 9001:2015-10. Pierwsze systemy zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; (a wĹ&#x201A;aĹ&#x203A;ciwie zapewnienia jakoĹ&#x203A;ci) instytutĂłw wchodzÄ&#x2026;cych obecnie w skĹ&#x201A;ad Sieci zostaĹ&#x201A;y certyfikowane w latach 1999 (Instytut ObrĂłbki Plastycznej w Poznaniu, Instytut Technologii Eksploatacji w Radomiu) i 2000 (PrzemysĹ&#x201A;owy Instytut Automatyki i PomiarĂłw PIAP). Trzy Instytuty posiadajÄ&#x2026; akredytacje do prowadzenia certyfikacji systemĂłw zarzÄ&#x2026;dzania: â&#x2C6;&#x2019; SieÄ&#x2021; Badawcza Ĺ ukasiewicz â&#x20AC;&#x201C; Instytut Spawalnictwa â&#x20AC;&#x201C; OĹ&#x203A;rodek Certyfikacji (AC 058 od 1999 r.), â&#x2C6;&#x2019; SieÄ&#x2021; Badawcza Ĺ ukasiewicz â&#x20AC;&#x201C; Instytut Mechanizacji Budownictwa i GĂłrnictwa Skalnego â&#x20AC;&#x201C; OĹ&#x203A;rodek Certyfikacji (AC 092 od 2002 r.), â&#x2C6;&#x2019; SieÄ&#x2021; Badawcza Ĺ ukasiewicz â&#x20AC;&#x201C; Instytut Technologii Elektronowej OddziaĹ&#x201A; PREDOM, Biuro Certyfikacji (AC 134 od 2006 r.). 31 InstytutĂłw posiada akredytowane laboratoria prowadzÄ&#x2026;ce badania, wzorcowania oraz certyfikacjÄ&#x2122; wyrobĂłw i osĂłb. Akredytacje PCA posiadane przez Instytuty Sieci to: â&#x2C6;&#x2019; Laboratoria badawcze â&#x20AC;&#x201C; 42 w odniesieniu do PN-ENÂ ISO/ IEC 17025: 2018-02, â&#x2C6;&#x2019; Laboratoria wzorcujÄ&#x2026;ce â&#x20AC;&#x201C; 5 w odniesieniu do PN-ENÂ ISO/ IEC 17025: 2018-02, â&#x2C6;&#x2019; Jednostki certyfikujÄ&#x2026;ce systemy â&#x20AC;&#x201C; 3 w odniesieniu do PN-EN ISO/IEC 17021-1:2015-09, â&#x2C6;&#x2019; Jednostki certyfikujÄ&#x2026;ce wyroby â&#x20AC;&#x201C; 15 w odniesieniu do PN-EN ISO/IEC 17065:2013-03, â&#x2C6;&#x2019; Jednostki certyfikujÄ&#x2026;ce osoby â&#x20AC;&#x201C; 1 akredytacja w odniesieniu do PN-EN ISO/IEC 17024:2012. Instytutowe laboratoria posiadajÄ&#x2026;ce akredytacje majÄ&#x2026; wdroĹźone systemy zarzÄ&#x2026;dzania speĹ&#x201A;niajÄ&#x2026;ce wymagania ww. norm, ktĂłre w zakresie: â&#x2C6;&#x2019; dokumentacji systemu zarzÄ&#x2026;dzania, â&#x2C6;&#x2019; nadzoru nad dokumentami i zapisami, â&#x2C6;&#x2019; przeglÄ&#x2026;du zarzÄ&#x2026;dzania, â&#x2C6;&#x2019; auditĂłw wewnÄ&#x2122;trznych, â&#x2C6;&#x2019; dziaĹ&#x201A;aĹ&#x201E; korygujÄ&#x2026;cych i zapobiegawczych sÄ&#x2026; kompatybilne z wymaganiami ISOÂ 9001:2015. Ponadto norma PN-ENÂ ISO/IEC 17025: 2018-02 zawiera wymagania odnoszÄ&#x2026;ce siÄ&#x2122; do ryzyk i szans zwiÄ&#x2026;zanych z dziaĹ&#x201A;alnoĹ&#x203A;ciÄ&#x2026; laboratoryjnÄ&#x2026;.
Jest wiele kwestii, ktĂłre naleĹźy wziÄ&#x2026;Ä&#x2021; pod uwagÄ&#x2122;, gdy okreĹ&#x203A;lamy, jak zidentyfikowaÄ&#x2021;, utrzymywaÄ&#x2021; i chroniÄ&#x2021; wiedzÄ&#x2122; organizacji: â&#x2C6;&#x2019; utrzymywanie wiedzy i doĹ&#x203A;wiadczeĹ&#x201E; ludzi organizacji, â&#x2C6;&#x2019; zbieranie wiedzy od dostawcĂłw, klientĂłw i partnerĂłw, â&#x2C6;&#x2019; utrzymywanie niezapisanej wiedzy, ktĂłra istnieje w organizacji, â&#x2C6;&#x2019; uczenie siÄ&#x2122; na podstawie bĹ&#x201A;Ä&#x2122;dĂłw i odniesionych sukcesĂłw, â&#x2C6;&#x2019; zapewnienie efektywnej komunikacji zawierajÄ&#x2026;cej istotne treĹ&#x203A;ci, â&#x2C6;&#x2019; zarzÄ&#x2026;dzanie danymi i zapisami. Wiedza organizacji moĹźe bazowaÄ&#x2021; na: â&#x2C6;&#x2019; ĹşrĂłdĹ&#x201A;ach wewnÄ&#x2122;trznych (np. wĹ&#x201A;asnoĹ&#x203A;Ä&#x2021; intelektualna, wiedza wynikajÄ&#x2026;ca z doĹ&#x203A;wiadczenia, wiedza wyniesiona z bĹ&#x201A;Ä&#x2122;dĂłw lub projektĂłw zakoĹ&#x201E;czonych sukcesem, czy wyniki doskonalenia procesĂłw, wyrobĂłw i usĹ&#x201A;ug); â&#x2C6;&#x2019; ĹşrĂłdĹ&#x201A;ach zewnÄ&#x2122;trznych (np. normy, publikacje i prace naukowe, konferencje, wiedza pozyskana od klientĂłw i dostawcĂłw zewnÄ&#x2122;trznych). PrzykĹ&#x201A;adem zarzÄ&#x2026;dzania wiedzÄ&#x2026; instytutu badawczego jest baza wiedzy (BW) stworzona przez Instytut Spawalnictwa naleĹźÄ&#x2026;cy do Sieci Badawczej Ĺ ukasiewicz. BW jest rozwiÄ&#x2026;zaniem informatycznym, umoĹźliwiajÄ&#x2026;cym gromadzenie i udostÄ&#x2122;pnianie zasobĂłw w postaci cyfrowej [5]. Zasoby w bazie danych podzielone zostaĹ&#x201A;y na nastÄ&#x2122;pujÄ&#x2026;ce obszary: prac badawczych i rozwiÄ&#x2026;zaĹ&#x201E; technologicznych, potrzeb technologicznych przedsiÄ&#x2122;biorstw, potencjaĹ&#x201A;u badawczego jednostek naukowych, materiaĹ&#x201A;Ăłw konstrukcyjnych, badaĹ&#x201E; zmÄ&#x2122;czeniowych, w zakresie inĹźynierii Ĺ&#x203A;rodowiska w spawalnictwie oraz w zakresie dziaĹ&#x201A;alnoĹ&#x203A;ci szkoleniowej. DostÄ&#x2122;p do BW moĹźliwy jest dla zarejestrowanych uĹźytkownikĂłw.
Y, + ! !" + ! ^ ! { ! SieÄ&#x2021; Badawcza Ĺ ukaszewicz zostaĹ&#x201A;a powoĹ&#x201A;ana ustawÄ&#x2026; z dnia 21 lutego 2019 r. o Sieci Badawczej Ĺ ukasiewicz [6]. Zawarte w ustawie cele instytutĂłw Sieci Badawczej Ĺ ukasiewicz sÄ&#x2026; szersze niĹź gĹ&#x201A;Ăłwne dziedziny dziaĹ&#x201A;alnoĹ&#x203A;ci wynikajÄ&#x2026;ce z ustawy o instytutach badawczych. Celami Sieci sÄ&#x2026;: 1) prowadzenie badaĹ&#x201E; aplikacyjnych i prac rozwojowych, a w uzasadnionych przypadkach takĹźe badaĹ&#x201E; podstawowych, w tym na rzecz obronnoĹ&#x203A;ci i bezpieczeĹ&#x201E;stwa paĹ&#x201E;stwa, szczegĂłlnie waĹźnych dla realizacji: a) polityki gospodarczej i innowacyjnej paĹ&#x201E;stwa okreĹ&#x203A;lonej w strategiach rozwoju, b) polityki naukowej paĹ&#x201E;stwa, o ktĂłrej mowa w art. 6 ustawy z dnia 20 lipca 2018 r. â&#x20AC;&#x201C; Prawo o szkolnictwie wyĹźszym i nauce; 2) transfer wiedzy oraz wdraĹźanie wynikĂłw badaĹ&#x201E; naukowych i prac rozwojowych, o ktĂłrych mowa w pkt 1, do gospodarki; 3) wspieranie polityki gospodarczej paĹ&#x201E;stwa, w szczegĂłlnoĹ&#x203A;ci przez dokonywanie: a) prognoz trendĂłw i skutkĂłw zmian technologicznych, ktĂłre mogÄ&#x2026; mieÄ&#x2021; silny wpĹ&#x201A;yw na spoĹ&#x201A;eczeĹ&#x201E;stwo i jego rozwĂłj, b) analiz aktualnego stanu techniki oraz opracowywanie technologicznych map drogowych na potrzeby polityk publicznych; 4) prowadzenie dziaĹ&#x201A;alnoĹ&#x203A;ci majÄ&#x2026;cej na celu ksztaĹ&#x201A;towanie Ĺ&#x203A;wiadomoĹ&#x203A;ci spoĹ&#x201A;ecznej na temat zaawansowanych technologii â&#x20AC;&#x201C; przez Centrum Ĺ ukasiewicz i instytuty Sieci. Zgodnie z definicjÄ&#x2026; zawartÄ&#x2026; w ustawie z dnia 20 lipca 2018 r. Prawo o szkolnictwie wyĹźszym i nauce [7]:
68
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
], #
Ponad 52% instytutĂłw Sieci Badawczej Ĺ ukasiewicz posiada certyfikaty SZJ, Laboratoria InstytutĂłw posiadajÄ&#x2026; 66 akredytacji, trzy instytuty nie posiadajÄ&#x2026; certyfikowanych systemĂłw zarzÄ&#x2026;dzani, w dwĂłch przypadkach brak informacji. Z powyĹźszej analizy wynika, Ĺźe w znacznej wiÄ&#x2122;kszoĹ&#x203A;ci insty-
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" @ " " !. L tutĂłw Sieci Badawczej Ĺ ukasiewicz zarzÄ&#x2026;dzanie oraz realizacja procesĂłw badawczych speĹ&#x201A;nia wymagania miÄ&#x2122;dzynarodowych norm dotyczÄ&#x2026;cych zarzÄ&#x2026;dzania, w tym zarzÄ&#x2026;dzania jakoĹ&#x203A;ciÄ&#x2026; okreĹ&#x203A;lonych w ISO 9001:2015.
^ 1. Ustawa z dnia 30 kwietnia 2010 r. o instytutach badawczych Dz.U. 2010 nr 96 poz. 618. 2. Koszlajda A., ZarzÄ&#x2026;dzanie projektami IT. Przewodnik po metodykach. Helion, Gliwice 2008, 41â&#x20AC;&#x201C;42. 3. Karbownik A., Wodarski K., ZarzÄ&#x2026;dzanie ryzykiem projektu w uczelni, Zeszyty Naukowe Politechniki Ĺ&#x161;lÄ&#x2026;skiej 2014 Seria: Organizacja i ZarzÄ&#x2026;dzanie, z. 70.
4. Prusak A., Zastosowanie metody analitycznego procesu hierarchicznego (AHP) w analizie czynnikĂłw sukcesu wspĂłĹ&#x201A;pracy badawczej jednostek naukowych i przedsiÄ&#x2122;biorstw, â&#x20AC;&#x17E;PrzedsiÄ&#x2122;biorczoĹ&#x203A;Ä&#x2021; i ZarzÄ&#x2026;dzanieâ&#x20AC;?, Wydawnictwo SAN, Tom XVI, Zeszyt 12, CzÄ&#x2122;Ĺ&#x203A;Ä&#x2021; 2, 109â&#x20AC;&#x201C;129. 5. http://is.gliwice.pl/strona-cms/baza-wiedzy-bw 6. Ustaw z dnia 21 lutego 2019 r. o Sieci Badawczej Ĺ ukasiewicz Dz.U. 2019 poz. 534 7. Ustawa z dnia 20 lipca 2018 r. â&#x20AC;&#x201C; Prawo o szkolnictwie wyĹźszym i nauce Dz.U. 2018 poz. 1668.
h " A L 6 '= ! !& The article introduces problems related to description and initiation of a quality management system in research institutes and presents the state of management systems in national research institutes on the example of institutes clustered in the Ĺ ukasiewicz Research Network. Keywords\ g A $ $
" % ! @! F
% ! (< # !
- %
%
# O & N ? [ 0 6 8 0 9 0680 0 E & F # A I ? 4/ J ? A & O G 0 G
I & & K 9 .? & .$ 8 & &. [ ? H R ==) & / [ I 9 $ & 0680 [ H R *!'!P JL?8#*P BP+> & \ 0
69
NR 3/2015
70
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 23, Nr 3/2019, 71â&#x20AC;&#x201C;80, DOI: 10.14313/PAR_233/71
/ & / Jacek Dunaj Z O & N [ 0 6 8 0 9 0680$ 8 F *!*$ !*?=@) #
Streszczenie: W artykule omĂłwiono sposĂłb rozwiÄ&#x2026;zania problemu zwiÄ&#x2026;zanego z obsĹ&#x201A;ugÄ&#x2026; zrobotyzowanego stanowiska, jak prosto i bezpiecznie doprowadzaÄ&#x2021; manipulator z dowolnego poĹ&#x201A;oĹźenia do pozycji wyjĹ&#x203A;ciowej bez potrzeby przeĹ&#x201A;Ä&#x2026;czania siÄ&#x2122; w tryb pracy rÄ&#x2122;cznej. Przedstawiona metoda bazuje na odczycie aktualnego i docelowego poĹ&#x201A;oĹźenia kaĹźdej osi oraz jej obrocie o minimalny kÄ&#x2026;t w obu kierunkach wykonywany pod nadzorem operatora. ArtykuĹ&#x201A; opisuje jak wykonano program realizujÄ&#x2026;cy to zadanie z wykorzystaniem wyĹ&#x203A;wietlanych na panelu programowania komunikatĂłw i okien dialogowych. PrzykĹ&#x201A;adowe algorytmy zapisano w jÄ&#x2122;zyku KRL programowania robotĂłw Kuka, umoĹźliwiajÄ&#x2026;cym generowanie komunikatĂłw uĹźytkownika i okien dialogowych. +$ ! \ S4"B / $ $ & A $ K $ A ILM
1. Wprowadzenie KaĹźdy, kto miaĹ&#x201A; do czynienia z obsĹ&#x201A;ugÄ&#x2026; robota przemysĹ&#x201A;owego, spotkaĹ&#x201A; siÄ&#x2122; z terminem â&#x20AC;&#x17E;pozycja HOMEâ&#x20AC;?. Termin ten okreĹ&#x203A;la pewne specyficzne poĹ&#x201A;oĹźenie manipulatora dobrane w ten sposĂłb, Ĺźe: â&#x2C6;&#x2019; jeĹ&#x203A;li program robota nie jest wykonywany (robot jest wyĹ&#x201A;Ä&#x2026;czony), to manipulator znajdujÄ&#x2026;cy siÄ&#x2122; w pozycji HOME nie powinien utrudniaÄ&#x2021; dostÄ&#x2122;pu do samego manipulatora i pozostaĹ&#x201A;ych elementĂłw stanowiska robotowego, â&#x2C6;&#x2019; w trakcie wykonywania programu robota pozycja HOME jest pozycjÄ&#x2026; wyjĹ&#x203A;ciowÄ&#x2026;, od ktĂłrej ukĹ&#x201A;ad sterowania robota powinien rozpoczynaÄ&#x2021; program i do ktĂłrej manipulator ma zostaÄ&#x2021; przesuniÄ&#x2122;ty przed zakoĹ&#x201E;czeniem programu. Korzystne jest takie dobranie pozycji HOME, aby manipulator w optymalny sposĂłb mĂłgĹ&#x201A; znaleĹşÄ&#x2021; siÄ&#x2122; w punktach roboczych, np. w punkcie podjÄ&#x2122;cia elementu, przed jego przemieszczeniem. DobĂłr pozycji HOME jest pewnym kompromisem. Pozycja ta obowiÄ&#x2026;zuje niezaleĹźnie od wybranego programu [5, 6], a wiÄ&#x2122;c dotyczy kaĹźdej aplikacji wykonywanej przez robota. Nie jest jednak pozycjÄ&#x2026; okreĹ&#x203A;lonÄ&#x2026; na staĹ&#x201A;e, poniewaĹź w zaleĹźnoĹ&#x203A;ci od potrzeb moĹźe byÄ&#x2021; modyfikowana podobnie, jak poĹ&#x201A;oĹźenie dowolnego innego punktu roboczego. Zmiana pozycji HOME wykonana podczas edycji jednego programu dotyczy wszystkich innych programĂłw. Pozycja HOME manipulatora nie jest zwiÄ&#x2026;zana z Ĺźadnym ukĹ&#x201A;adem wspĂłĹ&#x201A;rzÄ&#x2122;dnych prostokÄ&#x2026;tnych ani z Ĺźadnym narzÄ&#x2122;dziem. Jest pozycjÄ&#x2026; zapamiÄ&#x2122;tanÄ&#x2026; jako poĹ&#x201A;oĹźenia (kÄ&#x2026;ty skrÄ&#x2122;cenia)
) ! \ F E $ & % ) $ ! & ! != *!'+ $ & & * !+ *!'+
!
wszystkich osi manipulatora i potencjalnych osi zewnÄ&#x2122;trznych. JeĹ&#x203A;li manipulator robota ma 6 osi, to jego pozycjÄ&#x2122; HOME okreĹ&#x203A;la 6 liczb, z ktĂłrych kaĹźda okreĹ&#x203A;la poĹ&#x201A;oĹźenie pojedynczej osi. ArtykuĹ&#x201A; ten koncentruje siÄ&#x2122; na problemie przesuniÄ&#x2122;cia robota do pozycji HOME podczas eksploatacji zrobotyzowanego stanowiska oraz przedstawia stosunkowo prosty i bezpieczny sposĂłb zwiÄ&#x2026;zany z programowym uproszczeniem tej czynnoĹ&#x203A;ci. Opis ten odnosi siÄ&#x2122; do aplikacji wykonanych z robotami firmy Kuka, ale z pewnymi modyfikacjami przedstawionÄ&#x2026; metodÄ&#x2122; moĹźna zastosowaÄ&#x2021; do robotĂłw innych firm.
H, / !" ! !" ! 45(1 ! !" W jÄ&#x2122;zyku KRL (ang. Kuka Robot Language) do zdefiniowania poĹ&#x201A;oĹźenia osi manipulatora moĹźna wykorzystaÄ&#x2021; dwie zmienne typu struktura [2]: STRUC AXIS REAL A1,A2,A3,A4,A5,A6 STRUC E6AXIS REAL A1,A2,A3,A4,A5,A6, E1,E2,E3,E4,E5,E6 Oba wymienione typy zmiennych zawierajÄ&#x2026; informacje o poĹ&#x201A;oĹźeniu poszczegĂłlnych osi manipulatora. Nie ma tutaj odwoĹ&#x201A;ania do Ĺźadnego ukĹ&#x201A;adu wspĂłĹ&#x201A;rzÄ&#x2122;dnych prostokÄ&#x2026;tnych i do Ĺźadnego narzÄ&#x2122;dzia. Typ E6AXIS jest rozszerzeniem typu AXIS i odnosi siÄ&#x2122; do przypadku, kiedy robot obsĹ&#x201A;uguje od 1 do 6 dodatkowych osi zewnÄ&#x2122;trznych zwiÄ&#x2026;zanych np. z torem jezdnym. JeĹ&#x203A;li poĹ&#x201A;oĹźenie manipulatora robota zostaĹ&#x201A;o zadeklarowane jako: DECL E6AXIS PunktPkt przesuniÄ&#x2122;cie robota do tej pozycji gwarantuje instrukcja: PTP PunktPkt Nie moĹźna tutaj wykorzystaÄ&#x2021; dwĂłch innych dostÄ&#x2122;pnych w jÄ&#x2122;zyku KRL instrukcji ruchu â&#x20AC;&#x201C; LIN (ruch po prostej) i CIRC (ruch po okrÄ&#x2122;gu), poniewaĹź ich argumentami nie mogÄ&#x2026; byÄ&#x2021; zmienne typu AXIS i E6AXIS. Podczas wykonywania instrukcji PTP ruchy wszystkich osi manipulatora sÄ&#x2026; zsynchronizowane â&#x20AC;&#x201C; obrĂłt wszystkich osi jest uruchamiany i zatrzymywany w tym samym momencie. Oznacza
71
@ g' = "' " ' "= '" "' â&#x2C6;&#x2019; zmienna $IN_HOME typu SIGNAL (lub BOOL) okreĹ&#x203A;lajÄ&#x2026;ca czy manipulator robota znajduje siÄ&#x2122; w pozycji HOME: IF ($IN_HOME == TRUE) THEN ; ÂŽ manipulator robota jest w pozycji HOME ELSE ; ÂŽ manipulator robota nie jest w pozycji HOME ENDIF â&#x2C6;&#x2019; zmienna $VEL_AXIS[6] â&#x20AC;&#x201C; 6-wymiarowa tablica typu INT, ktĂłrej kolejne elementy odpowiadajÄ&#x2026; osiom od 1 do 6. Zawiera informacje o ustawionych prÄ&#x2122;dkoĹ&#x203A;ciach ruchu poszczegĂłlnych osi podczas wykonywania instrukcji PTP. Zmienna $VEL_AXIS[] sĹ&#x201A;uĹźy nie tylko do odczytu prÄ&#x2122;dkoĹ&#x203A;ci ruchu poszczegĂłlnych osi, ale takĹźe przy jej pomocy moĹźna te prÄ&#x2122;dkoĹ&#x203A;ci zadawaÄ&#x2021;. â&#x2C6;&#x2019; zmienna $ACC_AXIS[6] â&#x20AC;&#x201C; 6-wymiarowa tablica typu INT, ktĂłrej kolejne elementy odpowiadajÄ&#x2026; osiom od 1 do 6 (indeksowanie tablicy rozpoczyna siÄ&#x2122; od 1). Zawiera ona informacje o ustawionych przyspieszeniach ruchu poszczegĂłlnych osi podczas wykonywania instrukcji PTP. Zmienna $ACC_AXIS[] sĹ&#x201A;uĹźy do odczytu przyspieszeĹ&#x201E; ruchu poszczegĂłlnych osi, umoĹźliwia teĹź zadawanie przyspieszeĹ&#x201E;.
to, Ĺźe tylko oĹ&#x203A;, ktĂłra ma wykonaÄ&#x2021; najwiÄ&#x2122;kszy obrĂłt (oĹ&#x203A; wiodÄ&#x2026;ca), jest faktycznie przemieszczana z zaprogramowanÄ&#x2026; prÄ&#x2122;dkoĹ&#x203A;ciÄ&#x2026; i przyspieszeniem. Wszystkie pozostaĹ&#x201A;e osie dostosowujÄ&#x2026; swojÄ&#x2026; prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; i przyspieszenie do tego, aby osiÄ&#x2026;gnÄ&#x2026;Ä&#x2021; koĹ&#x201E;cowy punkt ruchu w tym samym momencie, co oĹ&#x203A; wiodÄ&#x2026;ca. WprowadzajÄ&#x2026;c do programu aplikacyjnego instrukcjÄ&#x2122; ruchu PTP przy pomocy tzw. formularza jednoczeĹ&#x203A;nie okreĹ&#x203A;la siÄ&#x2122; jednakowe wartoĹ&#x203A;ci prÄ&#x2122;dkoĹ&#x203A;ci i przyspieszeĹ&#x201E; dla wszystkich osi. W programowaniu w trybie expert wartoĹ&#x203A;ci te moĹźna ustalaÄ&#x2021; indywidualnie dla kaĹźdej osi, ale podczas realizacji instrukcji PTP tylko oĹ&#x203A; wiodÄ&#x2026;ca bÄ&#x2122;dzie poruszaĹ&#x201A;a siÄ&#x2122; z tymi parametrami. PrÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; i przyspieszenie sÄ&#x2026; podawane jako wartoĹ&#x203A;ci procentowe ich maksymalnych wartoĹ&#x203A;ci zdefiniowanych w danych maszynowych. Dodatkowo w trakcie wykonywania programu prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; i przyspieszenie realizowane instrukcjami ruchu moĹźna zmieniaÄ&#x2021; od 0% do 100% za pomocÄ&#x2026; panelu programowania. Pozycja HOME w ukĹ&#x201A;adzie sterowania robota Kuka jest definiowana jako zmienna typu E6AXIS, wiÄ&#x2122;c przesuniÄ&#x2122;cie manipulatora do tej pozycji moĹźliwe jest tylko przy pomocy instrukcji PTP HOME. W podrÄ&#x2122;cznikach programowania robotĂłw Kuka [5, 6] zaleca siÄ&#x2122;, aby kaĹźdy program aplikacyjny rozpoczynaĹ&#x201A; i koĹ&#x201E;czyĹ&#x201A; siÄ&#x2122; takÄ&#x2026; instrukcjÄ&#x2026;. Jest to jednak rozwiÄ&#x2026;zanie na tyle bezpieczne, na ile operatorzy stanowiska robotowego sÄ&#x2026; Ĺ&#x203A;wiadomi skutkĂłw uruchomienia programu, gdy manipulator pozostaje w przypadkowym poĹ&#x201A;oĹźeniu, poniewaĹź takie dziaĹ&#x201A;anie moĹźe siÄ&#x2122; zakoĹ&#x201E;czyÄ&#x2021; kolizjÄ&#x2026;. Alternatywnym praktycznym zaleceniem jest to, aby aplikacja robota nie dawaĹ&#x201A;a siÄ&#x2122; uruchomiÄ&#x2021; w trybie pracy automatycznej, jeĹ&#x203A;li manipulator nie znajduje siÄ&#x2122; w poĹ&#x201A;oĹźeniu HOME. W obu przypadkach rozwiÄ&#x2026;zaniem pozostaje rÄ&#x2122;czne przesuniÄ&#x2122;cie manipulatora do pozycji HOME (lub w sÄ&#x2026;siedztwo tej pozycji), co wiÄ&#x2026;Ĺźe siÄ&#x2122; z kĹ&#x201A;opotliwymi przeĹ&#x201A;Ä&#x2026;czeniami trybu pracy i ze znajomoĹ&#x203A;ciÄ&#x2026; rÄ&#x2122;cznej obsĹ&#x201A;ugi robota, z czym w praktyce róşnie bywa.
! " : Prosty przykĹ&#x201A;ad programowej realizacji obrotu osi A1 manipulatora â&#x20AC;&#x201C; po zakoĹ&#x201E;czonym ruchu róşnica miÄ&#x2122;dzy aktualnym poĹ&#x201A;oĹźeniem tej osi (AxisPosition.A1) a jej poĹ&#x201A;oĹźeniem w pozycji HOME (HomePosition.A1) byĹ&#x201A;a nie wiÄ&#x2122;ksza niş 1°. Wykorzystano tu dwie zmienne typu REAL: â&#x2C6;&#x2019; zmienna D1 okreĹ&#x203A;la wartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta, o jaki bÄ&#x2122;dzie zmieniana pozycja osi A1 manipulatora w kolejnych krokach, â&#x2C6;&#x2019; zmienna pomocnicza Roznica do wyznaczania róşnicy aktualnego poĹ&#x201A;oĹźenia osi A1 i jej poĹ&#x201A;oĹźenia w pozycji HOME DECL E6AXIS AxisPosition DECL E6AXIS HomePosition DECL REAL D1 DECL REAL Roznica D1 = 1.0 HomePosition = $H_POS ; odczyt pozycji HOME LOOP AxisPosition = $AXIS_ACT ; odczyt aktualnej pozycji manipulatora Roznica = HomePosition.A1 - AxixPosition.A1 IF (Roznica >= 0.0) THEN IF (Roznica > D1) THEN AxisPosition.A1 = AxisPosition.A1 + D1 ELSE GOTO KONIEC ENDIF ELSE Roznica = -1.0 * Roznica IF (Roznica > D1) THEN AxisPosition.A1 = AxisPosition.A1 - D1 ELSE GOTO KONIEC ENDIF ENDIF PTP AxisPosition ENDLOOP KONIEC:
Y,
UkĹ&#x201A;ad sterowania robota Kuka i jÄ&#x2122;zyk KRL zapewniajÄ&#x2026; dostÄ&#x2122;p do tzw. zmiennych systemowych. Zmienne te sÄ&#x2026; dostÄ&#x2122;pne w trybie programowania expert i umoĹźliwiajÄ&#x2026; zintegrowanie programu aplikacyjnego robota z informacjami dostÄ&#x2122;pnymi w jego ukĹ&#x201A;adzie sterowania. Przy ich pomocy moĹźliwy jest m.in. odczyt aktualnej pozycji robota, odczyt aktualnych pozycji kaĹźdej z osi, odczyt aktualnych wartoĹ&#x203A;ci prÄ&#x2122;dkoĹ&#x203A;ci i przyspieszeĹ&#x201E; oraz informacji o tym czy robot znajduje siÄ&#x2122; w pozycji HOME. W jÄ&#x2122;zyku KRL nazwy zmiennych systemowych rozpoczynajÄ&#x2026; siÄ&#x2122; od znaku $. PeĹ&#x201A;nÄ&#x2026; listÄ&#x2122; zmiennych systemowych wraz z ich opisem moĹźna znaleĹşÄ&#x2021; w dokumentacji [3]. W artykule przedstawiono podstawowe informacje na temat zmiennych zastosowanych w programowej realizacji przesuniÄ&#x2122;cia robota Kuka do pozycji HOME w trybie automatyki. Zmiennymi tymi sÄ&#x2026;: â&#x2C6;&#x2019; zmienna $AXIS_ACT typu E6AXIS zawierajÄ&#x2026;ca informacjÄ&#x2122; o aktualnym poĹ&#x201A;oĹźeniu wszystkich osi manipulatora. Pozwala przyporzÄ&#x2026;dkowaÄ&#x2021; informacjÄ&#x2122; o poĹ&#x201A;oĹźeniu osi do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu E6AXIS: E6AXIS AxisPosition ; deklaracja zmiennej AxisPosition AxisPosition = $AXIS_ACT ; instrukcja przyporzÄ&#x2026;dkowania â&#x2C6;&#x2019; zmienna $H_POS typu E6AXIS zawierajÄ&#x2026;ca informacjÄ&#x2122; o poĹ&#x201A;oĹźeniu wszystkich osi manipulatora znajdujÄ&#x2026;cego siÄ&#x2122; w pozycji HOME. Pozwala przyporzÄ&#x2026;dkowaÄ&#x2021; informacjÄ&#x2122; o poĹ&#x201A;oĹźeniu osi robota znajdujÄ&#x2026;cego siÄ&#x2122; w pozycji HOME do dowolnej zmiennej zadeklarowanej w programie jako zmienna typu E6AXIS: E6AXIS HomePosition ; deklaracja zmiennej HomePosition HomePosition = $H_POS ; instrukcja przyporzÄ&#x2026;dkowania
72
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
Podobny ciÄ&#x2026;g instrukcji moĹźna zastosowaÄ&#x2021; dla pozostaĹ&#x201A;ych osi A2â&#x20AC;&#x201C;A6. WĂłwczas przesuniÄ&#x2122;cie manipulatora do pozycji HOME jest â&#x20AC;&#x17E;Ĺ&#x201A;agodniejszeâ&#x20AC;? niĹź w przypadku zastosowania pojedynczej instrukcji PTP HOME, ale nadal grozi kolizjÄ&#x2026;, gdyĹź obroty poszczegĂłlnych osi sÄ&#x2026; realizowane poza bezpoĹ&#x203A;redniÄ&#x2026; kontrolÄ&#x2026; operatora. JÄ&#x2122;zyk KRL do programowania robotĂłw A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
* ' Kuka zawiera funkcje biblioteczne, ktĂłre umoĹźliwiajÄ&#x2026; realizacjÄ&#x2122; takiej kontroli przez generowanie odpowiednich komunikatĂłw uĹźytkownika (pod pojÄ&#x2122;ciem komunikatĂłw uĹźytkownika naleĹźy rozumieÄ&#x2021; komunikaty generowane przez aplikacjÄ&#x2122;, a nie przez ukĹ&#x201A;ad sterowania) oraz tworzenia okien dialogowych wyĹ&#x203A;wietlanych na panelu programowania robota. Ze wzglÄ&#x2122;du na pozornie skomplikowany format parametryzacji tych funkcji i ich funkcjonalne ograniczenia sÄ&#x2026; one maĹ&#x201A;o popularne w aplikacjach przemysĹ&#x201A;owych.
4. Koncepcja programu realizujÄ&#x2026;cego przesuniÄ&#x2122;cie robota do pozycji HOME w trybie automatyki BiorÄ&#x2026;c pod uwagÄ&#x2122; ograniczenia zwiÄ&#x2026;zane z generowaniem komunikatĂłw uĹźytkownika i tworzenia okien dialogowych przyjÄ&#x2122;to kilka zaĹ&#x201A;oĹźeĹ&#x201E; dla programu MoveToHomePosition() realizujÄ&#x2026;cego przesuniÄ&#x2122;cie robota Kuka do pozycji HOME w trybie automatyki â&#x2C6;&#x2019; aplikacja uruchamiana w dowolnym trybie pracy (T1, T2, Automatyka lub ) nie bÄ&#x2122;dzie rozpoczynaĹ&#x201A;a siÄ&#x2122; od instrukcji PTP HOME ruchu do pozycji HOME, jak zalecajÄ&#x2026; to podrÄ&#x2122;czniki programowania robota. Jej uruchomienie nie bÄ&#x2122;dzie takĹźe blokowane, jeĹ&#x203A;li robot nie jest w pozycji HOME. Zamiast tego bÄ&#x2122;dzie realizowana nastÄ&#x2122;pujÄ&#x2026;ca sekwencja instrukcji: WHILE ($IN_HOME == FALSE) MoveToHomePosition() WAIT SEC 0.1 ENDWHILE WywoĹ&#x201A;ywany program MoveToHomePosition() ma zapewniÄ&#x2021; przesuniÄ&#x2122;cie manipulatora do pozycji HOME sterujÄ&#x2026;c czynnoĹ&#x203A;ciami operatora. JeĹ&#x203A;li manipulator nie znajdzie siÄ&#x2122; w pozycji HOME, to program ten bÄ&#x2122;dzie wywoĹ&#x201A;ywany aĹź do skutku, tj. aĹź do momentu, gdy wartoĹ&#x203A;Ä&#x2021; zmiennej systemowej $IN_HOME bÄ&#x2122;dzie rĂłwna TRUE. â&#x2C6;&#x2019; program MoveToHomePosition() zapewnia moĹźliwoĹ&#x203A;Ä&#x2021; sterowanego przez operatora przesuniÄ&#x2122;cia kaĹźdej z szeĹ&#x203A;ciu osi manipulatora do pozycji HOME. KaĹźde okno dialogowe bÄ&#x2122;dzie umoĹźliwiaĹ&#x201A;o obrĂłt wybranej osi manipulatora w obu kierunkach wyĹ&#x203A;wietlajÄ&#x2026;c jednoczeĹ&#x203A;nie informacjÄ&#x2122; o aktualnym poĹ&#x201A;oĹźeniu osi, o jej poĹ&#x201A;oĹźeniu w pozycji HOME oraz o wartoĹ&#x203A;ci kÄ&#x2026;ta, o ktĂłry nastÄ&#x2122;puje zmiana pozycji osi. Schemat dziaĹ&#x201A;ania programu przedstawiono w tabeli 1. Program MoveToHomePosition() wykorzystuje siedem okien dialogowych (uĹźywanym terminem jest â&#x20AC;&#x17E;Menuâ&#x20AC;?, poniewaĹź jÄ&#x2122;zyk KRL przy tworzeniu okien dialogowych narzuca ograniczenia w dĹ&#x201A;ugoĹ&#x203A;ci wprowadzanych tekstĂłw, termin â&#x20AC;&#x17E;menuâ&#x20AC;? jest znacznie krĂłtszy niĹź termin
â&#x20AC;&#x17E;okno dialogoweâ&#x20AC;?). KaĹźde okno dialogowe zawiera po szeĹ&#x203A;Ä&#x2021; przyciskĂłw. Przycisk Key[1]: opisany w kaĹźdym menu jako PREV MENU. Powoduje zmniejszenie o 1 numeru okna dialogowego i w konsekwencji wyĹ&#x203A;wietlenie menu odpowiadajÄ&#x2026;cego temu numerowi. JeĹ&#x203A;li zliczono do 0, to za kolejny numer okna dialogowego przyjmowana jest wartoĹ&#x203A;Ä&#x2021; 7. Przycisk Key[2]: w oknach dialogowych od 1 do 6 jest opisany jako Di MINUS (i = 1, 2, 3, 4, 5, 6). Powoduje zmniejszenie o 1° wartoĹ&#x203A;ci kÄ&#x2026;ta, o ktĂłry bÄ&#x2122;dzie przemieszczana oĹ&#x203A; i manipulatora. WartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta Di moĹźe zmieniaÄ&#x2021; siÄ&#x2122; od 1° do 10°, wartoĹ&#x203A;ciÄ&#x2026; domyĹ&#x203A;lnÄ&#x2026; (poczÄ&#x2026;tkowÄ&#x2026;) jest 1°. W przypadku okna dialogowego nr 7 przycisk Key[2] opisano jako OTWORZ i przypisano mu funkcjÄ&#x2122; potencjalnego wywoĹ&#x201A;ania podprogramu otwierajÄ&#x2026;cego chwytak. Przycisk Key[3]: w oknach dialogowych od 1 do 6 jest opisany jako Ai MINUS (i = 1, 2, 3, 4, 5, 6). Powoduje przemieszczenie osi i manipulatora o kÄ&#x2026;t Di w kierunku ujemnym, a wiÄ&#x2122;c wykonanie ciÄ&#x2026;gu trzech instrukcji: AxisPosition = $AXIS_ACT AxisPosition.Ai = AxisPosition.Ai - Di PTP AxisPosition W przypadku okna dialogowego nr 7 przycisk Key[3] opisano jako ZAMKNIJ i przypisano mu funkcjÄ&#x2122; potencjalnego wywoĹ&#x201A;ania podprogramu zamykajÄ&#x2026;cego chwytak. Przycisk Key[4]: w oknach dialogowych od 1 do 6 jest opisany jako Ai PLUS (i = 1, 2, 3, 4, 5, 6). Powoduje przemieszczenie osi i manipulatora o kÄ&#x2026;t Di w kierunku dodatnim, a wiÄ&#x2122;c wykonanie ciÄ&#x2026;gu trzech instrukcji: AxisPosition = $AXIS_ACT AxisPosition.Ai = AxisPosition.Ai + Di PTP AxisPosition W przypadku okna dialogowego nr 7 przycisk Key[4] opisano jako HOME, powoduje wykonanie instrukcji PTP HOME, a wiÄ&#x2122;c synchroniczny ruch wszystkimi osiami do ich pozycji HOME (ruch ten generuje ukĹ&#x201A;ad sterowania robota, jest to ruch poza kontrolÄ&#x2026; operatora i moĹźe spowodowaÄ&#x2021; kolizjÄ&#x2122;). Przycisk Key[5]: w oknach dialogowych od 1 do 6 jest opisany jako Di PLUS (i = 1, 2, 3, 4, 5, 6). Powoduje zwiÄ&#x2122;kszenie o 1° wartoĹ&#x203A;ci kÄ&#x2026;ta, o ktĂłry bÄ&#x2122;dzie przemieszczana oĹ&#x203A; i manipulatora. WartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta Di moĹźe zmieniaÄ&#x2021; siÄ&#x2122; od 1° do 10°, wartoĹ&#x203A;ciÄ&#x2026; domyĹ&#x203A;lnÄ&#x2026; jest 1°. W przypadku okna dialogowego nr 7 przycisk Key[5] opisano jako ZAKONCZ, jego uĹźycie powoduje zakoĹ&#x201E;czenie wykonywania programu MoveToHomePosition() i przekazanie sterowania do programu nadrzÄ&#x2122;dnego. Przycisk Key[6]: opisany w kaĹźdym menu jako NEXT MENU. Powoduje zwiÄ&#x2122;kszenie o 1 numeru okna dialogowego i w konsekwencji wyĹ&#x203A;wietlenie menu odpowiadajÄ&#x2026;cego temu numerowi. JeĹ&#x203A;li zliczono do 8, to za kolejny numer okna dialogowego przyjmowana jest wartoĹ&#x203A;Ä&#x2021; 1.
Tabela 1. Schemat dziaĹ&#x201A;ania programu MoveToHomePosition() Tab. 1. The scheme of the MoveToHomePosition() program
Key[1]:
Key[2]:
Key[3]:
Key[4]:
Key[5]:
Key[6]:
Menu 1:
PREV MENU
D1 MINUS
A1 MINUS
A1 PLUS
D1 PLUS
NEXT MENU
Menu 2:
PREV MENU
D2 MINUS
A2 MINUS
A2 PLUS
D2 PLUS
NEXT MENU
Menu 3:
PREV MENU
D3 MINUS
A3 MINUS
A3 PLUS
D3 PLUS
NEXT MENU
Menu 4:
PREV MENU
D4 MINUS
A4 MINUS
A4 PLUS
D4 PLUS
NEXT MENU
Menu 5:
PREV MENU
D5 MINUS
A5 MINUS
A5 PLUS
D5 PLUS
NEXT MENU
Menu 6:
PREV MENU
D6 MINUS
A6 MINUS
A6 PLUS
D6 PLUS
NEXT MENU
Menu 7:
PREV MENU
OTWORZ
ZAMKNIJ
HOME
ZAKONCZ
NEXT MENU
73
@ g' = "' " ' "= '" "'
W przypadku panelu wspĂłĹ&#x201A;pracujÄ&#x2026;cego z ukĹ&#x201A;adem sterowania KRC4 komunikaty uĹźytkownika sÄ&#x2026; wyĹ&#x203A;wietlane w gĂłrnej czÄ&#x2122;Ĺ&#x203A;ci wyĹ&#x203A;wietlacza bezpoĹ&#x203A;rednio pod paskiem stanu (rys. 3). Okna dialogowe majÄ&#x2026; podobnÄ&#x2026; postaÄ&#x2021; do okien dialogowych znanych z systemĂłw operacyjnych Windows i sÄ&#x2026; prezentowane w centralnej czÄ&#x2122;Ĺ&#x203A;ci wyĹ&#x203A;wietlacza. Na panelu jednoczeĹ&#x203A;nie mogÄ&#x2026; byÄ&#x2021; wyĹ&#x203A;wietlane komunikaty uĹźytkownika i okna dialogowe. WybĂłr funkcji z okna dialogowego nastÄ&#x2122;puje po wskazaniu odpowiedniego obszaru.
b, # ! % !"
!" Roboty KUKA, w zaleĹźnoĹ&#x203A;ci od ukĹ&#x201A;adu sterowania KRC2 i KRC4, wspĂłĹ&#x201A;pracujÄ&#x2026; z dwoma róşnymi panelami programowania (rys. 1â&#x20AC;&#x201C;3). W obu przypadkach kod ĹşrĂłdĹ&#x201A;owy programu aplikacyjnego do generowania komunikatĂłw uĹźytkownika i tworzenia okien dialogowych jest taki sam, róşnica wynika ze sposobu ich prezentacji na panelu. W przypadku panelu wspĂłĹ&#x201A;pracujÄ&#x2026;cego z ukĹ&#x201A;adem sterowania KRC2 komunikaty uĹźytkownika sÄ&#x2026; wyĹ&#x203A;wietlane w dolnej czÄ&#x2122;Ĺ&#x203A;ci wyĹ&#x203A;wietlacza bezpoĹ&#x203A;rednio nad siedmioma przyciskami funkcyjnymi klawiatury (rys. 1). Ten fragment wyĹ&#x203A;wietlacza sĹ&#x201A;uĹźy takĹźe do prezentacji okna dialogowego, a opisy przyciskĂłw tego okna wyĹ&#x203A;wietlane sÄ&#x2026; w okienkach bezpoĹ&#x203A;rednio nad przyciskami funkcyjnymi (rys. 2). Nie ma wiÄ&#x2122;c moĹźliwoĹ&#x203A;ci, aby na panelu jednoczeĹ&#x203A;nie byĹ&#x201A;y wyĹ&#x203A;wietlane komunikaty uĹźytkownika i okna dialogowe. WybĂłr funkcji z okna dialogowego nastÄ&#x2122;puje po wciĹ&#x203A;niÄ&#x2122;ciu odpowiedniego przycisku funkcyjnego.
Rys. 3. Panel programowania robota Kuka dla ukĹ&#x201A;adu sterowania KRC4 z wyĹ&#x203A;wietlonym komunikatem uĹźytkownika oraz z oknem dialogowym do przemieszczania osi A1 Fig. 3. Kuka robot programming panel for the KRC4 control system with a user message displayed and a dialog box for moving the A1 axis
Rys. 1. Panel programowania robota Kuka dla ukĹ&#x201A;adu sterowania KRC2 z wyĹ&#x203A;wietlonym komunikatem uĹźytkownika Fig. 1. Kuka robot programming panel for the KRC2 control system with a user message displayed
h, # % !" | ! !
Zasady programowania komunikatĂłw uĹźytkownika i okien dialogowych w jÄ&#x2122;zyku KRL omawia dokumentacja [3, 4]. W artykule ograniczono siÄ&#x2122; do realizacji programu MoveToHomePosition(). Wykorzystano tu cztery funkcje biblioteczne: BoolVar = Clear_KrlMsg (clear) Handle = Set_KrlMsg (type, name, params[], options) Handle = Set_KrlDlg (name, params[], key[], options) BoolVar = Exists_KrlDlg (Handle, KeyNumber)
Pierwsza z nich, Clear_KrlMsg() uruchomiona z parametrem clear = -99 kasuje wszystkie komunikaty uĹźytkownika utworzone funkcjÄ&#x2026; S e t _ K r l M s g ( ) . Potwierdzeniem poprawnoĹ&#x203A;ci jej wykonania jest zwracana zmienna BoolVar typu BOOL o wartoĹ&#x203A;ci TRUE. Druga i trzecia funkcja sĹ&#x201A;uĹźÄ&#x2026; odpowiednio do wygenerowania komunikatu uĹźytkownika oraz do utworzenia okna dialogowego. Obie funkcje zwracajÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; zmiennej Handle typu INT.
Rys. 2. Panel programowania robota Kuka dla ukĹ&#x201A;adu sterowania KRC2 z wyĹ&#x203A;wietlonym oknem dialogowym do przemieszczania osi A1 Fig. 2. Kuka robot programming panel for the KRC2 control system displayed with a dialog box for moving the A1 axis
74
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
* ' JeĹ&#x203A;li zwracana wartoĹ&#x203A;Ä&#x2021; Handle jest rĂłwna â&#x20AC;&#x201C;1, komunikat uĹźytkownika nie moĹźe zostaÄ&#x2021; wygenerowany (funkcja Set_ KrlMsg()) lub nie moĹźna byĹ&#x201A;o utworzyÄ&#x2021; okna dialogowego (funkcja Set_KrlDlg()). JeĹ&#x203A;li zwracana wartoĹ&#x203A;Ä&#x2021; Handle jest wiÄ&#x2122;ksza od 0, to Rys. 4. Okno komunikatĂłw uĹźytkownika wyĹ&#x203A;wietlane na panelu programowania robota Kuka z ukĹ&#x201A;adem dziaĹ&#x201A;anie funkcji zakoĹ&#x201E;czyĹ&#x201A;o sterowania KRC2 Fig. 4. User messages window displayed on the Kuka robot programming panel for the KRC2 siÄ&#x2122; powodzeniem (poprawnie control system wygenerowano komunikat lub utworzono okno dialogowe), a wartoĹ&#x203A;ci Handle moĹźna uĹźyÄ&#x2021; jako parametru dla innych funkcji bibliotecznych. Wybranie dowolnego przycisku w oknie dialogowym Rys. 5. Okno komunikatĂłw uĹźytkownika wyĹ&#x203A;wietlane na panelu programowania robota Kuka z ukĹ&#x201A;adem powoduje jego zamkniÄ&#x2122;cie. sterowania KRC4 Informacji o tym, ktĂłry Fig. 5. User messages window displayed on the Kuka robot programming panel for the KRC4 przycisk wybrano dostarcza control system funkcja Exists_KrlDlg â&#x2C6;&#x2019; w kolumnie Nad. w nawiasach <> wyĹ&#x203A;wietlany jest tekst Handle, KeyNumber). Jej parametrem wejĹ&#x203A;ciowym jest wartoĹ&#x203A;Ä&#x2021; Handle, ktĂłrÄ&#x2026; funkcja Set_KrlDlg() zwrĂłciĹ&#x201A;a â&#x20AC;&#x201C; element CHAR modul[24] struktury KrlMsg_T name. tworzÄ&#x2026;c okno dialogowe. Numer przycisku zostaje zwrĂłcony Maksymalna dĹ&#x201A;ugoĹ&#x203A;Ä&#x2021; tekstu to 24 znaki, jako parametr wyjĹ&#x203A;ciowy INT KeyNumber, a potwierdzeniem â&#x2C6;&#x2019; w kolumnie Komunikat wyĹ&#x203A;wietlany jest tekst â&#x20AC;&#x201C; element poprawnoĹ&#x203A;ci wykonania jest wartoĹ&#x203A;Ä&#x2021; BoolVar typu BOOL rĂłwna CHAR msg_txt[80] struktury KrlMsg_T name. TRUE zwracana przez funkcjÄ&#x2122;. Maksymalna dĹ&#x201A;ugoĹ&#x203A;Ä&#x2021; tekstu to 80 znakĂłw Do tekstu moĹźna wprowadzaÄ&#x2021; wartoĹ&#x203A;ci do trzech zmiennych. Na panelu programowania wspĂłĹ&#x201A;pracujÄ&#x2026;cego z ukĹ&#x201A;adem q, # sterowania KRC4 (rys. 5) w oknie komunikatĂłw uĹźytkownika nie ma podziaĹ&#x201A;u na kolumny. Jednak wyĹ&#x203A;wietlany komunikat % zawiera tÄ&#x2122; samÄ&#x2026; informacjÄ&#x2122; jak panel programowania ukĹ&#x201A;adu sterowania KRC2. Program MoveToHomePosition() wyĹ&#x203A;wietla komunikaty 3. Parametr params[] typu KrlMsg_Par_T: uĹźytkownika w postaci przedstawionej na rysunkach 4 i 5. Do programowania komunikatĂłw uĹźytkownika wykorzystyJest to parametr typu struktura umoĹźliwiajÄ&#x2026;cy wana jest funkcja biblioteczna: wprowadzanie do elementu CHAR msg_txt[80] struktury Set_KrlMsg(type, name, params[], options) KrlMsg_T name wartoĹ&#x203A;ci do trzech róşnych zmiennych. wymagajÄ&#x2026;ca wyspecyfikowania czterech parametĂłw: Program MoveToHomePosition() nie wprowadza do 1. Parametr type typu wyliczyniowego EkrlMsgType: komunikatĂłw uĹźytkownika wartoĹ&#x203A;ci zmiennych, ale wartoĹ&#x203A;ci ENUM EKrlMsgType notify, state, quit, te sÄ&#x2026; wprowadzane do tekstĂłw wyĹ&#x203A;wietlanych w oknach dialog, waiting dialogowych. Parametr bÄ&#x2122;dzie omĂłwiony w czÄ&#x2122;Ĺ&#x203A;ci poĹ&#x203A;wiÄ&#x2122;conej OkreĹ&#x203A;la typ generowanego komunikatu, m.in., czy jest to funkcji Set_KrlDlg(). 4. Parametr options typu KrlMsgOpt_t: komunikat uĹźytkownika, czy komunikat o stanie elementĂłw Jest to parametr typu struktura o elementach: ukĹ&#x201A;adu sterowania robota, czy komunikat wymaga potwierSTRUC KrlMsgOpt_T BOOL vl_stop, dzenia etc. W programie MoveToHomePosition() wszystBOOL clear_p_reset, kie generowane komunikaty sÄ&#x2026; komunikatami uĹźytkownika, BOOL clear_p_SAW, za parametr type bÄ&#x2122;dzie przyjmowana predefiniowana warBOOL log_to_DB toĹ&#x203A;Ä&#x2021; #Notify [3, 4] 2. Parametr name typu KrlMsg_T: Jej kolejne elementy okreĹ&#x203A;lajÄ&#x2026; sposĂłb wyĹ&#x203A;wietlania, kasowania Jest to parametr typu struktura o elementach: lub rejestrowania komunikatĂłw uĹźytkownika i okien dialogowych w zaleĹźnoĹ&#x203A;ci od potrzeb: STRUC KrlMsg_T CHAR modul[24], â&#x2C6;&#x2019; vl_stop â&#x20AC;&#x201C; wartoĹ&#x203A;Ä&#x2021; TRUE (wartoĹ&#x203A;Ä&#x2021; domyĹ&#x203A;lna) oznacza, INT nr, Ĺźe komunikat uĹźytkownika lub okno dialogowe moĹźe CHAR msg_txt[80] zostaÄ&#x2021; wyĹ&#x203A;wietlone zanim robot zakoĹ&#x201E;czy wykonywanie OkreĹ&#x203A;la, co ma byÄ&#x2021; wyĹ&#x203A;wietlone w oknie komunikatĂłw na poprzedzajÄ&#x2026;cej instrukcji ruchu (tryb advance run), panelu programowania robota. Na panelu programowania â&#x2C6;&#x2019; clear_p_reset â&#x20AC;&#x201C; wartoĹ&#x203A;Ä&#x2021; TRUE (wartoĹ&#x203A;Ä&#x2021; domyĹ&#x203A;lna) oznacza, Ĺźe komunikaty uĹźytkownika bÄ&#x2122;dÄ&#x2026; skasowane wspĂłĹ&#x201A;pracujÄ&#x2026;cego z ukĹ&#x201A;adem sterowania KRC2 (rys. 4) okno komunikatĂłw uĹźytkownika podzielono na piÄ&#x2122;Ä&#x2021; kolumn: w momencie zresetowania programu lub cofniÄ&#x2122;cia jego wyboru, â&#x2C6;&#x2019; kolumna C... zawiera ikonÄ&#x2122; przedstawiajÄ&#x2026;cÄ&#x2026; typ â&#x2C6;&#x2019; clear_p_SAW â&#x20AC;&#x201C; wartoĹ&#x203A;Ä&#x2021; TRUE (domyĹ&#x203A;lnÄ&#x2026; wartoĹ&#x203A;ciÄ&#x2026; jest generowanego komunikatu. WybĂłr ikony nastÄ&#x2122;puje na FALSE) oznacza, Ĺźe komunikaty nie bÄ&#x2122;dÄ&#x2026;ce komunikatami uĹźytkownika, ale wygenerowane przez funkcjÄ&#x2122; bibliotecznÄ&#x2026; podstawie parametru type, â&#x2C6;&#x2019; kolumna Czas okreĹ&#x203A;la moment wygenerowania komunikatu Set_KrlMsg() zostanÄ&#x2026; automatycznie usuniÄ&#x2122;te w trakcie ustalany na podstawie zegara ukĹ&#x201A;adu sterowania robota, zaznaczania bloku instrukcji. Komunikaty uĹźytkownika â&#x2C6;&#x2019; kolumna Nr okreĹ&#x203A;la numer komunikatu. WartoĹ&#x203A;Ä&#x2021; ta nie jest #notify moĹźna usuwaÄ&#x2021; tylko za pomocÄ&#x2026; przyciskĂłw OK nigdzie modyfikowana, ten sam numer moĹźe byÄ&#x2021; stosowany lub panelu programowania. W przypadku wielokrotnie. ZawartoĹ&#x203A;Ä&#x2021; wyĹ&#x203A;wietlana w tej kolumnie zaleĹźy od okien dialogowych nie ma moĹźliwoĹ&#x203A;ci zaznaczania blokĂłw elementu INT nr struktury KrlMsg_T name, instrukcji â&#x20AC;&#x201C; wartoĹ&#x203A;Ä&#x2021; clear_p_SAW nie ma znaczenia.
75
@ g' = "' " ' "= '" "'
− log_to_DB – wartość TRUE (domyślną wartością jest
− CHAR modul[24] wyświetlany jest w nawiasach <> po
FALSE) oznacza, że komunikat użytkownika będzie rejestrowany w pliku .LOG W programie MoveToHomePosition() komunikaty użytkownika i okna dialogowe są programowane z domyślnymi ustawieniami parametru Options: Options = {vl_stop TRUE, clear_p reset TRUE, clear_p_SAW FALSE, log_to_DB FALSE} Programowanie komunikatów użytkownika pozornie wydaje się skomplikowane, ale praktycznie sprowadza się do kilku instrukcji. Fragment programu wyświetlający informację (rys. 4 i 5) pokazano w rozdziale 9. Podkreśleniem zaznaczono tam teksty, które będą wyświetlone na panelu programowania robota.
słowie „Źródło”. Maksymalna długość tekstu to 24 znaki. W tej samej linii po słowie „Nr” wyświetlony jest numer okna dialogowego ustalony na podstawie elementu INT nr struktury KrlMsg_T name − pod wierszem ze słowem „Źródło” wyświetlony jest tekst wprowadzony jako element CHAR msg_txt[80] struktury KrlMsg_T name. Może zawierać wartości zmiennych. Na panelu współpracującym z układem sterowania KRC4 (rys. 7) elementy CHAR modul[24] i INT nr struktury KrlMsg_T name są wyprowadzane w tytule okna dialogowego, a tekst wprowadzony jako element CHAR msg_txt[80] zostaje wyświetlony nad przyciskami funkcyjnymi. 2. Parametr params[] typu KrlMsgPar_T: Jest to parametr typu struktura o elementach: STRUC KrlMsgPar_T KrlMsgParType_T par_type, CHAR par_txt[26] INT par_int REAL par_real BOOL par_bool gdzie KrlMsgParType_T jest typem wyliczeniowym: ENUM KrlMsgParType_T value, key, empty
v, # !" Program MoveToHomePosition() wykorzystuje okna dialogowe w postaci przedstawionej na rysunkach 6 i 7. Do programowania okien dialogowych stosowana jest funkcja biblioteczna: Set_KrlDlg (name, params[], key[], options) wymagająca określenia czterech parametów. 1. Parametr name typu KrlMsg_T: Parametr typu struktura identyczny z parametrem o tej samej nazwie dla funkcji bibliotecznej Set_KrlMsg(). Określa, co i w jaki sposób ma być wyświetlone w oknie dialogowym na panelu programowania robota. Na panelu współpracującym z układem sterowania KRC2 (rys. 6) okno dialogowe nie jest podzielone na kolumny, ale zawiera całą informację przyporządkowaną poszczególnym elementom struktury KrlMsg_T name:
Do tekstu CHAR msg_txt[80] struktury KrlMsg_T name można wprowadzać aktualne wartości zmiennych. W oknach dialogowych (rys. 6 i 7) wartościami tych zmiennych są: − położenie osi A1 manipulatora robota w pozycji HOME – wartość typu REAL wyświetlona za tekstem HOME_A1 = , − aktualne położenie osi A1 manipulatora robota – wartość typu REAL wyświetlona za tekstem ACT_A1 = , − aktualna wartość D1, o jaką będzie przemieszczana oś A1 manipulatora robota – wartość typu INT wyświetlona za tekstem D1 = . Wprowadzanie aktualnych wartości zmiennych do elementu CHAR msg_txt[80] struktury KrlMsg_T name należy poprzedzić wprowadzeniem odnośników do tych zmiennych. Odnośnikami są symbole %1, %2 i %3 oznaczające odpowiednio kolejne zmienne (maksymalnie można użyć trzech zmiennych). Instrukcja ustalająca wartość parametru name dla funkcji Set_KrlDlg() będzie miała format jak poniżej (podkreśloną czcionką zaznaczono symbole odwołujące się do zmiennych): name = {modul[] „IN_HOME”, Nr 1, msg_txt[] „MENU 1: Obrot osia A1, HOME_A1 = %1, ACT_A1 = %2, D1 = %3 stopni:”} Do powiązania symbolu odnośnika ze zmienną, a w konsekwencji także do wyboru formatu, w jakim jej wartość będzie wpisania do CHAR msg_txt[80] służy parametr params[]. Do tekstu maksymalnie można wprowadzić wartości trzech zmiennych – po zadeklarowaniu jako 3-elementowa tablica Params[3]: DECL KrlMsgPar_T Params[3]
Rys. 6. Okno dialogowe nr 1 (Menu 1) do poruszania osią A1 manipulatora wyświetlane na panelu programowania robota Kuka z układem sterowania KRC2 Fig. 6. Dialog box No. 1 (Menu 1) to move the axis A1 of the manipulator displayed on the programming panel of the robot Kuka with the control system KRC2
Rys. 7. Okno dialogowe nr 1 (Menu 1) do poruszania osią A1 manipulatora wyświetlane na panelu programowania robota Kuka z układem sterowania KRC4 Fig. 7. Dialog box No. 1 (Menu 1) to move the axis A1 of the manipulator displayed on the programming panel of the robot Kuka with the control system KRC4
76
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
* '
ktĂłrej kolejny element odpowiada kolejnej zmiennej (numeracja 1â&#x20AC;&#x201C;3). Element Params[i].par_type struktury okreĹ&#x203A;la tzw. typ i-tego parametru: â&#x2C6;&#x2019; #value: parametr jest wstawiany do tekstu zgodnie z okreĹ&#x203A;lonym typem zmiennej: text, int, real lub bool, â&#x2C6;&#x2019; #key: parametr jest kluczem, ktĂłrego naleĹźy szukaÄ&#x2021; w bazie danych, â&#x2C6;&#x2019; #empty: nie przypisano typu parametru. W programie MoveToHomePosition() dla wszystkich zmiennych przyjÄ&#x2122;to predefiniowanÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; value [3, 4]. Podczas inicjowania struktury Params[i] wszystkie pozostaĹ&#x201A;e elementy, tj. par_txt, par_int, par_real oraz par_bool sÄ&#x2026; wstÄ&#x2122;pnie oznaczane jako nieokreĹ&#x203A;lone. Instrukcja inicjujÄ&#x2026;ca tÄ&#x2122; strukturÄ&#x2122; okreĹ&#x203A;la, ktĂłry jej element bÄ&#x2122;dzie dalej wykorzystywany i przypisuje mu wartoĹ&#x203A;Ä&#x2021; poczÄ&#x2026;tkowÄ&#x2026;. Kolejna instrukcja przyporzÄ&#x2026;dkowania wpisuje wartoĹ&#x203A;Ä&#x2021; zmiennej do odpowiedniego elementu struktury Params[i]. Aby wyĹ&#x203A;wietliÄ&#x2021; wartoĹ&#x203A;ci zmiennych HomePosition.A1 (typ REAL), AxisPosition. A1 (typ REAL), oraz D1 (typ INT) naleĹźy wykonaÄ&#x2021; nastÄ&#x2122;pujÄ&#x2026;ce instrukcje: Params[1] = {par_type #value, par_real 0.0} Params[1].par_real = HomePosition.A1 Params[2] = {par_type #value, par_real 0.0} Params[2].par_real = AxisPosition.A1 Params[3] = {par_type #value, par_int 0} Params[3].par_int = D1 3. Parametr key[] typu KrlMsgDlgSk_t: Jest to parametr typu struktura o nastÄ&#x2122;pujÄ&#x2026;cych elementach: STRUC KrlMsgDlgSk_t KrlMsgParType_T sk_Type, CHAR sk_txt[10] gdzie typ danych K r l M s g P a r T y p e _ T jest typem wyliczeniowym: ENUM KrlMsgParType_T value, key, empty Parametr ten definiuje przyciski funkcyjne okna dialogowego. ProgramujÄ&#x2026;c okna dialogowe w jÄ&#x2122;zyku KRL naleĹźy pamiÄ&#x2122;taÄ&#x2021;, Ĺźe maksymalnie mogÄ&#x2026; one zawieraÄ&#x2021; siedem przyciskĂłw funkcyjnych. Parametr key[] naleĹźy zadeklarowaÄ&#x2021; jako 7-elementowÄ&#x2026; tablicÄ&#x2122; Key[7]: DECL KrlMsgDlgSk_t Key[7] ktĂłrej elementy odpowiadajÄ&#x2026; kolejnym przyciskom funkcyjnym (1â&#x20AC;&#x201C;7). Element Key[i].sk_Type struktury okreĹ&#x203A;la tzw. typ etykiety i-tego przycisku funkcyjnego, ktĂłremu moĹźna przyporzÄ&#x2026;dkowaÄ&#x2021; jednÄ&#x2026; z trzech predefiniowanych wartoĹ&#x203A;ci: â&#x2C6;&#x2019; #value: sk_txt[] odpowiada etykiecie przycisku, â&#x2C6;&#x2019; #key: sk_txt[] to klucz bazy danych zawierajÄ&#x2026;cy etykietÄ&#x2122; przycisku, â&#x2C6;&#x2019; #empty: nie przypisano typu etykiety. W programie MoveToHomePosition() dla wszystkich przyciskĂłw funkcyjnych przyjÄ&#x2122;to predefiniowanÄ&#x2026; wartoĹ&#x203A;Ä&#x2021; value [3, 4]. Drugi element Key[i].sk_txt[10] struktury zawiera opis i-tego przycisku funkcyjnego. JeĹ&#x203A;li wprowadzono tam â&#x20AC;&#x17E;pustyâ&#x20AC;? tekst, tj. tekst zawierajÄ&#x2026;cy same spacje, to przycisk ten nie pojawi siÄ&#x2122; w oknie dialogowym. 4. Parametr options typu KrlMsgOpt_t: Parametr ten omĂłwiono w czÄ&#x2122;Ĺ&#x203A;ci poĹ&#x203A;wiÄ&#x2122;conej funkcji bibliotecznej Set_KrlMsg(). Jak w jÄ&#x2122;zyku KRL moĹźna zaprogramowaÄ&#x2021; przedstawione na rysunkach 6 i 7 okno dialogowe nr 1 (Menu 1) programu MoveToHomePosition() pokazano w punkcie 6 rozdziaĹ&#x201A;u 9. Identycznie programuje siÄ&#x2122; pozostaĹ&#x201A;e okna dialogowe 2â&#x20AC;&#x201C;6. W oknie dialogowym nr 7 nie sÄ&#x2026; wyĹ&#x203A;wietlane wartoĹ&#x203A;ci Ĺźadnych zmiennych, wiÄ&#x2122;c inicjujÄ&#x2026;c parametry funkcji Set_KrlDlg() moĹźna pominÄ&#x2026;Ä&#x2021; ustawienia parameteru params (punkt 8 rozdziaĹ&#x201A;u 9).
M, + MoveToHomePosition() PoniĹźej zawarto fragment programu MoveToHomePosition(). PominiÄ&#x2122;to fragmenty, w ktĂłrych kod ĹşrĂłdĹ&#x201A;owy powtarzaĹ&#x201A; siÄ&#x2122; (np. tworzenie kolejnych okien dialogowych): 1. PoczÄ&#x2026;tek programu: Deklaracje uĹźywanych zmiennych: GLOBAL DEF MoveToHomePosition( ) DECL INT i DECL INT KeyNumber ; numer wybranego przycisku DECL INT MenuNumber ; numer okna dialogowego DECL INT D1, D2, D3, D4, D5, D6 ; przyrosty katow osi i przyspieszen osi: DECL INT STORE_VEL_AXIS [6] DECL INT STORE_ACC_AXIS [6] poszczegolnych osi DECL E6AXIS AxisPosition DECL E6AXIS HomePosition ; Zmienne do tworzenia komunikatow i okien dialogowych DECL INT Handle DECL KrlMsg_t name DECL KrlMsgPar_t Params [3] DECL KrlMsgOpt_t Options DECL KrlMsgDlgSk_t Key [7] 2. Start programu: Odczytanie pozycji wszystkich osi i instrukcja ruchu do odczytanej pozycji (praktycznie manipulator nie wykonuje Ĺźadnego ruchu). W przypadku robota Kuka po zmianie trybu pracy na Automatyka (nie dotyczy to trybu ) trzeba utrzymywaÄ&#x2021; wciĹ&#x203A;niÄ&#x2122;ty przycisk Start programu na panelu programowania robota do momentu wykonania pierwszej instrukcji PTP (w domyĹ&#x203A;le ma to byÄ&#x2021; instrukcja PTP HOME). Wykonanie poniĹźszych instrukcji speĹ&#x201A;nia ten warunek pozwalajÄ&#x2026;c jednoczeĹ&#x203A;nie na zwolnienie przycisku: AxisPosition = $AXIS_ACT PTP AxisPosition 3. Odczyt i zapamiÄ&#x2122;tanie aktualnie ustawionych wartoĹ&#x203A;ci prÄ&#x2122;dkoĹ&#x203A;ci i przyspieszeĹ&#x201E; realizowanych podczas ruchu PTP przez kaĹźdÄ&#x2026; oĹ&#x203A; (wartoĹ&#x203A;ci te bÄ&#x2122;dÄ&#x2026; odtworzone na koĹ&#x201E;cu programu), a nastÄ&#x2122;pnie ustawienie ich mniejszych wartoĹ&#x203A;ci: FOR i=1 TO 6 STORE_VEL_AXIS[i] = $VEL_AXIS[i] STORE_ACC_AXIS[i] = $ACC_AXIS[i] $VEL_AXIS[i] = 75 $ACC_AXIS[i] = 75 ENDFOR 4. Zainicjowanie zmiennych okreĹ&#x203A;lajÄ&#x2026;cych przyrost kÄ&#x2026;ta poszczegĂłlnych osi, ustawienie numeru pierwszego menu, odczyt i zapamiÄ&#x2122;tanie poĹ&#x201A;oĹźenia osi manipulatora w pozycji HOME: D1 = 1 ;--> poczatkowy przyrost kata osi A1 to 1 stopien D2 = 1 ;--> poczatkowy przyrost kata osi A2 to 1 stopien D3 = 1 ;--> poczatkowy przyrost kata osi A3 to 1 stopien D4 = 1 ;--> poczatkowy przyrost kata osi A4 to 1 stopien D5 = 1 ;--> poczatkowy przyrost kata osi A5 to 1 stopien
77
@ g' = "' " ' "= '" "' Handle
D6 = 1 ;--> poczatkowy przyrost kata osi A6 to 1 stopien MenuNumber = 1 HomePosition = $H_POS 5. Początek głównej pętli programu: Skasowanie poprzedniego komunikatu użytkownika, odczyt informacji czy manipulator znajduje się w pozycji HOME i wyświetlenie komunikatu generowanego na podstawie tej informacji (w instrukcjach podkreśloną czcionką zaznaczono to, co zostanie wyświetlone na panelu programowania), odczyt aktualnej pozycji manipulatora: LOOP Clear_KrlMsg (-99) IF ($IN_HOME == TRUE) THEN name = {modul[] „SERVICE”, Nr 1, msg_txt[] „ROBOT JEST W POZYCJI HOME”} ELSE name = {modul[] „SERVICE”, Nr 1, msg_txt[] „ROBOT NIE JEST W POZYCJI HOME”} ENDIF Handle = Set_KrlMsg (#Notify, name, Params[], Options) AxisPosition = $AXIS_ACT 6. Jeśli wartość zmiennej MenuNumber wynosi 1 to wyświetlenie okna dialogowego nr 1 (Menu nr 1) związanego z obsługą obrotu osi A1 manipulatora (patrz także przykład 3): IF (MenuNumber == 1) THEN Key[1] = {sk_Type #value, sk_txt[] „PREV MENU”} Key[2] = {sk_Type #value, sk_txt[] „D1 MINUS”} Key[3] = {sk_Type #value, sk_txt[] „A1 MINUS”} Key[4] = {sk_Type #value, sk_txt[] „A1 PLUS”} Key[5] = {sk_Type #value, sk_txt[] „D1 PLUS”} Key[6] = {sk_Type #value, sk_txt[] „NEXT MENU”} Key[7] = {sk_Type #value, sk_txt[] „ „} IF ($IN_HOME == TRUE) THEN name = {modul[] „IN_HOME”, Nr 1, msg_txt[] „MENU 1: Obrot osia A1, HOME_A1 = %1, ACT_A1 = %2, D1 = %3 stopni:”} ELSE name = {modul[] „NOT_IN_HOME”, Nr 1, msg_txt[] „MENU 1: Obrot osia A1, HOME_A1 = %1, ACT_A1 = %2, D1 = %3 stopni:”} ENDIF Params[1] = {par_type #value, par_real 0.0} Params[1].par_real = HomePosition.A1 Params[2] = {par_type #value, par_real 0.0} Params[2].par_real = AxisPosition.A1 Params[3] = {par_type #value, par_int 0} Params[3].par_int = D1 Options = {vl_stop true, clear_p_reset true, clear_p_SAW false, log_to_DB false}
78
P
O
M
I
A
R
Y
•
A
U
T
O
M
= Set_KrlDlg (name, Params[], Key[], Options)
ENDIF 7. Jeśli wartość zmiennej MenuNumber wynosi 2, 3, 4, 5 lub 6 to wyświetlenie w analogiczny sposób jak powyżej okna dialogowego nr 2, 3, 4, 5 lub 6 (Menu 2, 3, 4, 5 lub 6) związanego z obsługą obrotu osi A2, A3, A4, A5, A6 manipulatora: IF (MenuNumber == 2) THEN ; Wyswietlenie okna dialogowego nr 2 (Menu 2) ENDIF ------------------------------------------IF (MenuNumber == 6) THEN ; Wyswietlenie okna dialogowego nr 6 (Menu 6) ENDIF 8. Jeśli wartość zmiennej MenuNumber wynosi 7 to wyświetlenie okna dialogowego nr 7 obsługującego wybór podprogramów obsługi chwytaka, ruchu do pozycji HOME wymuszonego przez pojedynczą instrukcją PTP HOME bądź zakończenia wykonywania programu MoveToHomePosition(): IF (MenuNumber == 7) THEN Key[1] = {sk_Type #value, sk_txt[] „PREV MENU”} Key[2] = {sk_Type #value, sk_txt[] „OTWORZ”} Key[3] = {sk_Type #value, sk_txt[] „ZAMKNIJ”} Key[4] = {sk_Type #value, sk_txt[] „HOME”} Key[5] = {sk_Type #value, sk_txt[] „ZAKONCZ”} Key[6] = {sk_Type #value, sk_txt[] „NEXT MENU”} Key[7] = {sk_Type #value, sk_txt[] „ „} IF ($IN_HOME == TRUE) THEN name = {modul[] „IN_HOME”, Nr 1, msg_txt[] „MENU 7: Sterowanie chwytakiem + HOME + ZAKONCZ:”} ELSE name = {modul[] „NOT_IN_HOME”, Nr 1, msg_txt[] „MENU 7: Sterowanie chwytakiem + HOME + ZAKONCZ:”} ENDIF Options = {vl_stop true, clear_p_reset true, clear_p_SAW false, log_to_DB false} Handle = Set_KrlDlg (name, Params[], Key[], Options) ENDIF 9. Jeśli wartości Handle zwracane przez funkcje biblioteczne Set_KrlDlg() do tworzenia okien dialogowych są większe od 0 (poprawnie utworzono okno dialogowe) to należy odczytać numer przycisku, który wybrano w oknie dialogowym. Liczba ta jest zwracana jako zmienna KeyNumber: IF (Handle > 0) THEN WHILE (Exists_KrlDlg (Handle, KeyNumber)) WAIT SEC 0.1 ENDWHILE Okno dialogowe poprawnie zwróciło numer wybranego przycisku wyboru. Początek ciągu instrukcji wykonywanych zgodnie z funkcją przypisaną do okna dialogowego i przycisku: A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
* '
â&#x2C6;&#x2019; na jednym z siedmiu okien dialogowych wybrano przycisk
â&#x2C6;&#x2019; na jednym z siedmiu okien dialogowych wybrano przycisk
funkcyjny nr 1. We wszystkich oknach oznacza to zwiÄ&#x2122;kszenie o 1 numeru okna dialogowego, a w konsekwencji wyĹ&#x203A;wietlenie okna odpowiadajÄ&#x2026;cego nowemu numerowi: SWITCH KeyNumber CASE 1 MenuNumber = MenuNumber - 1 IF (MenuNumber <= 0) THEN MenuNumber = 7 ENDIF â&#x2C6;&#x2019; na jednym z siedmiu okien dialogowych wybrano przycisk funkcyjny nr 2. W oknach dialogowych nr i (i = 1, 2, 3, 4, 5, 6) oznacza to zmniejszenie o 1 stopieĹ&#x201E; wartoĹ&#x203A;ci kÄ&#x2026;ta, o ktĂłry bÄ&#x2122;dzie przemieszczana oĹ&#x203A; i manipulatora (wartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta Di moĹźe zmieniaÄ&#x2021; siÄ&#x2122; od 1 do 10°). W przypadku okna dialogowego nr 7 przycisk nr 2 uruchamia podprogram otwierajÄ&#x2026;cy chwytak: CASE 2 IF (MenuNumber == 1) THEN IF (D1 > 1) THEN D1 = D1 - 1 ENDIF ENDIF ------------------------------------------IF (MenuNumber == 6) THEN IF (D6 > 1) THEN D6 = D6 - 1 ENDIF ENDIF IF (MenuNumber == 7) THEN OtworzChwytak() ENDIF â&#x2C6;&#x2019; na jednym z siedmiu okien dialogowych wybrano przycisk funkcyjny nr 3. W oknach dialogowych nr i (i = 1, 2, 3, 4, 5, 6) oznacza przemieszczenie osi i manipulatora o kÄ&#x2026;t Di w kierunku ujemnym. W przypadku okna dialogowego nr 7 przycisk nr 3 uruchamia podprogram zamykajÄ&#x2026;cy chwytak: CASE 3 IF (MenuNumber == 1) THEN AxisPosition.A1 = AxisPosition.A1 - D1 PTP AxisPosition ENDIF ------------------------------------------IF (MenuNumber == 6) THEN AxisPosition.A6 = AxisPosition.A6 - D6 PTP AxisPosition ENDIF IF (MenuNumber == 7) THEN ZamknijChwytak() ENDIF â&#x2C6;&#x2019; na jednym z siedmiu okien dialogowych wybrano przycisk funkcyjny nr 4. W oknach dialogowych nr i (i = 1, 2, 3, 4, 5, 6) oznacza to przemieszczenie osi i manipulatora o kÄ&#x2026;t Di w kierunku dodatnim. W przypadku okna dialogowego nr 7 przycisk nr 4 inicjuje wykonanie instrukcji PTP HOME â&#x20AC;&#x201C; bezpoĹ&#x203A;redniego ruchu wszystkimi osiami do pozycji HOME: CASE 4 IF (MenuNumber == 1) THEN AxisPosition.A1 = AxisPosition.A1 + D1 PTP AxisPosition ENDIF ------------------------------------------IF (MenuNumber == 6) THEN AxisPosition.A6 = AxisPosition.A6 + D6 PTP AxisPosition ENDIF IF (MenuNumber == 7) THEN PTP HOME ENDIF
funkcyjny nr 5. W oknach dialogowych nr i (i = 1, 2, 3, 4, 5, 6) oznacza to zwiÄ&#x2122;kszenie o 1 stopieĹ&#x201E; wartoĹ&#x203A;ci kÄ&#x2026;ta, o ktĂłry bÄ&#x2122;dzie przemieszczana oĹ&#x203A; i manipulatora (wartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta Di moĹźe zmieniaÄ&#x2021; siÄ&#x2122; od 1 do 10°). W przypadku okna dialogowego nr 7 przycisk nr 5 powoduje zakoĹ&#x201E;czenie wykonywania pÄ&#x2122;tli LOOP ... ENDLOOP i zakoĹ&#x201E;czenie wykonywania programu MoveToHomePosition(): CASE 5 IF (MenuNumber == 1) THEN IF (D1 < 10) THEN D1 = D1 + 1 ENDIF ENDIF ------------------------------------------IF (MenuNumber == 6) THEN IF (D6 < 10) THEN D6 = D6 + 1 ENDIF ENDIF IF (MenuNumber == 7) THEN GOTO THE_END ENDIF â&#x2C6;&#x2019; na jednym z siedmiu okien dialogowych wybrano przycisk funkcyjny nr 6. We wszystkich oknach oznacza to zmniejszenie o 1 numeru okna dialogowego a w konsekwencji wyĹ&#x203A;wietlenie okna odpowiadajÄ&#x2026;cego nowemu numerowi: CASE 6 MenuNumber = MenuNumber + 1 IF (MenuNumber > 7) THEN MenuNumber = 1 ENDIF
â&#x2C6;&#x2019; przypadek DEFAULT â&#x20AC;&#x201C; bĹ&#x201A;Ä&#x2026;d wyboru, zakoĹ&#x201E;czenie wykonywania programu MoveToHomePosition(): DEFAULT GOTO THE_END 10. Koniec pÄ&#x2122;tli: ENDSWITCH, koniec pÄ&#x2122;tli ENDIF, koniec PÄ&#x2122;tli ENDLOOP ENDSWITCH ENDIF ENDLOOP 11. ZakoĹ&#x201E;czenie programu: Przywrocenie wartoĹ&#x203A;ci prÄ&#x2122;dkoĹ&#x203A;ci i przyspieszeĹ&#x201E; osi sprzed wywolania programu, kasowanie komunikatow uĹźytkownika: THE_END: FOR i=1 TO 6 $VEL_AXIS[i] = STORE_VEL_AXIS[i] $ACC_AXIS[i] = STORE_ACC_AXIS[i] ENDFOR Clear_KrlMsg (-99) WAIT SEC 0.1 END
LJ, } <!
Problem doprowadzania manipulatora robota Kuka do pozycji HOME ze wszystkimi negatywnymi konsekwencjami, w tym z kilkoma kolizjami manipulatora, pojawiĹ&#x201A; siÄ&#x2122; w aplikacji wykonanej przez PrzemysĹ&#x201A;owy Instytut Automatyki i PomiarĂłw PIAP w Cukrowni NakĹ&#x201A;o nad NoteciÄ&#x2026; [7]. EksploatacjÄ&#x2122; zrobotyzowanej linii do nawaĹźania i paletyzacji workĂłw z cukrem uruchomiono zanim osoby majÄ&#x2026;ce nadzorowaÄ&#x2021; jej pracÄ&#x2122; zostaĹ&#x201A;y gruntownie przeszkolone w obsĹ&#x201A;udze robota i nabraĹ&#x201A;y doĹ&#x203A;wiadczenia w obsĹ&#x201A;udze caĹ&#x201A;ej linii. ByĹ&#x201A;o to spowodowane pilnÄ&#x2026; potrzebÄ&#x2026; wywiÄ&#x2026;zania siÄ&#x2122; Cukrowni z kontraktu na dostarczenie 4,5 tys. ton cukru w ciÄ&#x2026;gu zaledwie kilku tygodni. W efekcie
79
@ g' = "' " ' "= '" "'
^
praca linii poczÄ&#x2026;tkowo byĹ&#x201A;a czÄ&#x2122;sto zatrzymywana, co niekiedy wymagaĹ&#x201A;o restartowania programu nadrzÄ&#x2122;dnego sterownika PLC i aplikacji samego robota. Ze wzglÄ&#x2122;dĂłw bezpieczeĹ&#x201E;stwa restart aplikacji robota wymagaĹ&#x201A;, aby manipulator znajdowaĹ&#x201A; siÄ&#x2122; w pozycji HOME, co wymuszaĹ&#x201A;o koniecznoĹ&#x203A;Ä&#x2021; rÄ&#x2122;cznego doprowadzenia robota do tej pozycji. PowstaĹ&#x201A; pomysĹ&#x201A;, by do aplikacji doĹ&#x201A;Ä&#x2026;czyÄ&#x2021; podprogram umoĹźliwiajÄ&#x2026;cy bezpieczne przemieszczanie manipulatora bez potrzeby przeĹ&#x201A;Ä&#x2026;czania siÄ&#x2122; z trybu pracy automatycznej w tryb pracy rÄ&#x2122;cznej. Ponadto podprogram powinien zapewniaÄ&#x2021; bezpieczny i niezaleĹźny obrĂłt kaĹźdej osi z minimalnÄ&#x2026; prÄ&#x2122;dkoĹ&#x203A;ciÄ&#x2026; i minimalnym przyrostem kÄ&#x2026;ta obrotu oraz wyĹ&#x203A;wietlaÄ&#x2021; informacjÄ&#x2122; o aktualnym i docelowym poĹ&#x201A;oĹźeniu przemieszczanej osi. Wydaje siÄ&#x2122;, Ĺźe wymagania te zostaĹ&#x201A;y speĹ&#x201A;nione, poniewaĹź od momentu wĹ&#x201A;Ä&#x2026;czenia podprogramu do aplikacji nie zanotowano Ĺźadnej kolizji, co oczywiĹ&#x203A;cie byĹ&#x201A;o takĹźe rezultatem nabrania doĹ&#x203A;wiadczenia przez personel nadzorujÄ&#x2026;cy pracÄ&#x2122; linii. ZaprezentowanÄ&#x2026; procedurÄ&#x2122; moĹźna doĹ&#x201A;Ä&#x2026;czyÄ&#x2021; do kaĹźdej aplikacji z robotem Kuka, poniewaĹź nie odwoĹ&#x201A;uje siÄ&#x2122; ona do Ĺźadnego narzÄ&#x2122;dzia ani nie wykorzystuje Ĺźadnego ukĹ&#x201A;adu wspĂłĹ&#x201A;rzÄ&#x2122;dnych zdefiniowanego przez uĹźytkownika. Jej dziaĹ&#x201A;anie polega tylko na obracaniu o minimalny kÄ&#x2026;t kaĹźdej osi z osobna, przez co moĹźe byÄ&#x2021; bezpiecznie stosowana nawet przez osobÄ&#x2122; z niewielkim doĹ&#x203A;wiadczeniem w obsĹ&#x201A;udze robota.
1. KUKA System Software KR C2 / KR C3: Expert Programming â&#x20AC;&#x201C; Release 5.2, 2003 KUKA Roboter GmbH 2. KUKA System Software KR Câ&#x20AC;Ś: System Variables, 2004 KUKA Roboter GmbH 3. KUKA Expert Documentation Programming Messages For KUKA System Software 8.2 and VW System Software 8.2, 2011 KUKA Roboter GmbH 4. KUKA Expert Documentation Programming Messages For KUKA System Software 5.5 and 5.6, 2009 KUKA Roboter GmbH 5. KUKA System Software 8.2: Operating and Programming Instructions for System Integrators, 2011 KUKA Roboter GmbH 6. KUKA System Software 8.3: Instrukcja obsĹ&#x201A;ugi i programowania uĹźytkownika koĹ&#x201E;cowego, 2013 KUKA Roboter GmbH 7. Dunaj J., Programowa realizacja róşnych schematĂłw paletyzacji workĂłw z luĹşnÄ&#x2026; zawartoĹ&#x203A;ciÄ&#x2026; wykonywana robotem przemysĹ&#x201A;owym, â&#x20AC;&#x17E;Pomiary Automatyka Robotykaâ&#x20AC;?, R. 22, Nr 2, 2018, 49-60, DOI: 10.14313/PAR_228/49.
- L / " A 0 8 " & Abstract: The article concerns with a problem related to the exploration of an industrial robotic station, namely how to simply and safely move the manipulator from any position to the output position without having to switch to the manual mode. The presented method is based on reading the current and the final position of each axis and its rotation by the minimum angle in both directions performed under the supervision of the operator. The article describes how the program performing this task was carried out using messages and dialog boxes displayed on the robot programming panel. Also presented in the KRL language for programming of Kuka robots, how programmer can generate user messages and dialog boxes. ; \ L / j S4"B $ / $ A A & A / T & A $ A A I L / M A A ;ILM<
" % ; ) & % # '+@! G & # & B 0 # $ & '+@> & 0 6 8 0 9 ? A 9K A & ] 9 $ 9 $ 9 / 9 $ 9 K 9 0 A / P kk & 9K 9 # 9 A & .& G ? 0680$ K & K G $ A9 ? A . 9 /. 9K .& G ? A / A ;/ & $ < 8 A / . A / K 9 R & R .
80
P
O
M
I
A
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
Informacje dla Autorรณw # " " 8 & A @ $ ' +"% Op OCXx " L "= ' " ' "'. 8 $ %" E " `'" " " $ "'. = '. "' " "' " '. ' " $ = $ "' " `'" " =$ ' L '. ?$ ' ` `'" = ' "
" " g = = ' = ' "
" ' '" $ " ]= =$ ?g^ " L "'. $ ' g % =$
' '. "'. ' '. ?' " $ ' " $ = $` " L % $ " $ = '
Wskazรณwki dla Autorรณw ! !" $ ! H " " =$ ' $ Q '. ' " Pomiary Automatyka Robotyka " E g `' " $ w 8 " " ] ' `'" UC L ^ g " $ $ 8 g H ;H L Q $ ?$ ' ] " ' =$ ' ' $ '" ^ 8 ' " ] = g ' Xย C8OCC L ^ g " $ $ 8 $ ' ]ย 8U . ^ g " $ g " $ $ 8 ' ' g E " 8 g " $ ]$ = $ ^ 8 " " g " $ g " $ 8 " " = $ g " $
g " $ 8 $ ' ; ? ; g' = $ ' ' $ = l
$' ' xCC XCCC $ ' ' ` ? '
H " E = g E L ` ' C B " ' ' E = g ' X " ' ]TC CCC L ' $ = xCCC ' O $ '
L ^ ' U % + " " L ' `'"'. g = g E " ' g ' Nie drukujemy komunikatรณw! " ` ="E `' = ?' " '. H L ] g " " ^ = g ' ย CC8Vย C L '. $ ? ' = " L L " g " "$ "' $ ' "'. =$ ' ` " ' ` ' ` E "
+ ! ! #)* * ! $ ! $ ย ! !" ! !"ย $ ! ! H " ` ' ` $ E E " H " L "'. =$ ' ` $ # L E '" $ ' g' = $ ` E = " H ' " ` ="E '" g ย L 5 ! ) * ! + * ! ! L " $ ' g L $ ' " `' " ' $ %" `E $ $ " `' '. " 8 H L '. ?$ ' g = ?' ' '. "'. ' L " " " g " + " % "'. =$ L " ' `
Kwartalnik naukowotechniczny Pomiary Automatyka Robotyka jest indeksowany w bazach BAZTECH, Google Scholar oraz INDEX COPERNICUS ;6 U *!')] ( $*=<$ K w bazie naukowych / K ARIANTA. Punktacja MNiSW / @ ; '**=< 0 . . & & 4 R $ & / / w kwartalniku naukowotechnicznym Pomiary Automatyka Robotyka.
UX
GAÂ?f &H!*> H HZ<f Â&#x203A;+
5 ! ! ! ! ! !" ! ! !" & ! ' $ Q '. ' Pomiary Automatyka Robotyka
% `' $ " g & A @ $ ' +"% `'` g "' H L " H ;H L " L " g' "
$
' `' w 1. ! &
! % wymieniowego Autora ! 8 ' $ " $ ' " L h . . j " $ " H L =$ ' L= L "'. =$ ' =" " $= L$ ' 2. ! & & ! !" Â&#x20AC; $ $ jej powstanie 8 ' $ w 8 % " =" `'
'" " $g $=
L " $= =" L " ; " g ` ' " ' =$ ' 8 % " g " h . j " g " ' L = `' ' "
"
" L " $
g '. " = L
' =$ ' Â&#x161;
UO
P
O
M
I
A
' '" $ $ ' ' " ` g $ ` '. ` " % $ ' ` '. $ " " "= '" "
3. ! & ' $ !" <Â&#x20AC; !" ! 8 " ? =$ ' " ' Q= ' " $ = "
" ' Â&#x201D; L $ L g% "'. h? ' $ '$ j 8 ' =$ " $ "' " ' ' =$ ' ' $ = g ? =
$ ! " " =$ " L % " `' $ "'. " '. ' = " . = $ ' " " % $ "'. '. '. 8 " ' % E E # " ' ; $ ' ' "'. ' "'. `% "'.
} $ przeniesienie praw !"
! ! 99 ^Â # '. $` " g' " =$ ' g ` "'. '.
" 'g Z " " ' + " " "'. ' ' " $ `
Redakcja kwartalnika Pomiary Automatyka Robotyka %
! ' '" " L =$ "'. $ Q '. ' " " H " = " " " '. L ` g ' fG w
Maria Wrzuszczak, Janusz Wrzuszczak, Zastosowanie analizy - & - .& .& wzbudzenia, â&#x20AC;&#x17E;Pomiary Automatyka Robotykaâ&#x20AC;?, ISSN 1427-9126, R. 23, Nr 3/2019, 5â&#x20AC;&#x201C;9, DOI: 10.14313/PAR_233/5.
R
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
czasopisma
pomiary
sprawdzian
miara
POLSPAR
eksperyment
automatyka PIAP
" "
seminarium
kalendarium
szkolenie
kwartalnik
federacja
nauka
publikacje
automatyka
stowarzyszenie
HORIZON 2020 `% innowacje organizacja projekt konkurs
konferencje
relacja
POLSPAR
POLSA
publikacje
AutoCAD streszczenie
agencja kosmiczna
dr h.c.
innowacje
IFAC
ZPSA
Â&#x201D;
profesura
recenzje
relacja
szkolenie
doktorat
robotyka seminarium
sterowanie
.
esa
szkolenie
84
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
NR
3/2019
NASZE MONOGRAFIE
www.piap.pl
85
1950â&#x20AC;&#x201C;2019
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
0 - # # H " = ! B BU> % B *+ X Y[ ! = ! ! > ! > < = %
+ + ' g XO $ Xp C / g $ %"' < % ' " g ` ] XpB ^ ' ` ' g G ' f L$ '`'" ' + " $ '. XpBU8XpBp " g q GG ' f L$ '`'" =" XpBp ' `E +" $ >$ $ '. + " $ %" $ " XpV ! %"' ` $ '. ` + ` XpUB " " '. ' "'. g h& "'. "'. " " ' ' Q "'. j @ " . = $ '. ' "'. $ ] ' $ Ew $ " " ^ " OCCx g h+ $ " ` " j + '
OCXX " " " + ' +" $ >$ ] " +" $ >$ < '. G '" "'.^ =" ` G " $ < $ w %" " "
' OCC 8 "' + OCXp " "' + + ' $ ' " g E "= " ' $ $ * g ` g' = ` ' "'. '" "'. " ` L " L "'. ' " ' g ' " ' " " " '. '. $ ' "'. + $ '. UC '. %" " L "'. g "'. '. " -
L Q $ "'. " " ?' "'. "'. "'. A g " ` g' Q= ' " $ pC =" ' $ '. XppT8Xppp < '. % # ` " H ' ' h@" Q $ "' " L '" "'. XC m 8 XU /m j XppV A ` & > ' A + + ' g " " ' g L `% `'" ' "'. " L "'.w hf ' "'. " L "'.j ] " XppV ^ h/ ' -
+ + ' ' ` $ gE ` "'. A =" " '` ' g % " ' "'. < '. "'. + '
$ $ L '" g " ` ` " $ '. =$ L g $ = ! g " L% " % =" " $ ' `'
+ =" $ + $ ' '. L$
" " ' " ' " L g % + '. < + L% " L "'. $ " $
" %$ " '" % " " ' G " =" h "j A $g "'. $ ` g " L ' '
g' '. '. + =" $ $ = ' H#@ + ] = ' f ' + ^ ' ` '. $ $ ' % ' %" " " + $ $ "'. A " '. " ' " "' ' '. "'. > %" " " * =`
& + "' ` L$ '" $ '. ' + ' $ "'. '. = ' "'. $ ' f @ H % G&> f ' $ E $ ' " $ " ' =$ L ' ' ' E g ' '." " L% `' %" `' $ g ! E * g'
% = F
. = % H &
% H & g
UV
WSPOMNIENIA
"'. " L Q $ "'.j ] " OCCX ^ # qqG g "'. '. "'. " L "'. = `'"'. "'. " L "'. ] " " G ^ " ' " = ' "'. " "'. " '. "'. ] " " ` = "'.^ ' ' $ "'. " L "'. " ' = L $ "' = %" ' % " "'. L
' " =" $ ' " =$ ' '" " " ' '. ] L % $ " *! ^ % = =$ '" " + + ' = OCC "' L "'. $ ' ` g "
? '. % XB " L $ " ?$ $? f L' ' L ] ' ' " "
' ` '. '. $ ^ XO %"'. L = ' Q % "'. ] " ? "'. " '. L =" ^ ' '. = ' "'. ? "'. A &>A + $ ' = ' "'.
' " g % " $ ' + + ' =" g' ' "'. '. '. ' '. '. U = " ' XO ' %" $ E '" ' = ' G>>> ` $ @ " L H " = " f @ H ] ' ' G&> f^ =" % ` ' ` '. "'. "'. $ ' G>>> G&<! ]G & < '. $ " ! ' ^ G>>> G HH!@ ]G $$ H' H [ ' ! @" ^ $ % & $ G&> f ' " ' "'. & $ + @" "
'. A "'. " $ & g " ' $ ' & $ L & ] =$ " & $ ^ + + ' = " " %"' " " +" $ >$ < '. G '" "'. ]OCC 8OCCU^ g '` " "'. G " $ ]XppT8OCCX OCCT8OCC ^
+ Xx OCXp $ % $ % $ " . = % + + ' f '. $ ' L +" $ >$ $ '. + =" ' $ ` " G " $ ] = ' G " $ < '. & $ $ "'.^ $ '. + " ' " ' "' $ ' " ' $ ` g '. ` $ ' $ "' "'. "'. " L "'. + ' =" $ = L $ =$ ' "'. " ' ' " ' '. L "'. = ' Q % "'. L % $ "'. ' ' $ "'. " "'. " "'. " ' ' " = " %$ " " %"' $ ' ` g E "= ` " =$ L = " g L% f $ L ' "'. + " '. $ L g= g / = = E
. = % + + ' =" $ '
g' g " $= " ' $ ` " ' ` + $ '. OCCT8OCXX ' " $ @ " L H " = " f @ H & " ' $ ` " E = =$ A L '" = E = ' * $ = ' L f @ H " L '" "'. ? "'. ' $ $ %" f @ H
g " " " ' G H! G&> f + =" % %"' " $ = ' ] $ ' ^ ' L$ " ' ` $ '. ` + ` * ' ' L ' "'. ' ' g= % $
% ' ]XppX8OCCO^ "'. +" ]Xppx8OCCO^ f OCXB ' g " G " $ < '. & $ $ "'. # ` g' Q= ' " "' + + ' " =" " & X ] " " " $ ^ # " "% # ]Xppp^ @ = ` f ` # # $ @ ]OCCp^ ` # % " $ $ '. + ]OCCp^ " ' " $ ' " $ `'" g "$ " $ L % + ' L$ ' $ %"' " ' $ `' %" " L " " ' % "' ' G g % $ " ` " ` + ' " g " $ " = 8 ' + + ' OCXp L $ ' '. = * = =" g Xx + * '. " ' " '.
& / K 0 O $ - 0#
. = % # $'
. = % #= $
UU
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
Kalendarium wybranych imprez Data konferencji <
& '
Informacje dodatkowe
$ ' @ ' G $ ' RP-RAI 2019
16â&#x20AC;&#x201C;18 / 10 / 2019
+ '
$
www: . w;; Q $
16th IFAC Conference on =$ [ ' > = @" @OCXp
29â&#x20AC;&#x201C;31 /10 /2019 31 / 05 / 2019
< " +" @ '
15th > + . Advanced Control and ACD 2019
21â&#x20AC;&#x201C;22 / 11 / 2019 31 / 05 /2019
Bolonia + '."
www: . w;; [ = ; ' OCXp mail: ' OCXpY =
15th International Conference " ' $ @" <. " H $ ' @<H OCXp
02â&#x20AC;&#x201C;05 / 12 / 2019 02 / 06 / 2019
FL Â&#x201D; $
www: . w;; " Q ' ; mail: ' OCXpY " Q '
13th GÂ?H! + . ! $ @" H !f@ OCXp
04â&#x20AC;&#x201C;06 / 12 / 2019 31 / 07 / 2019
+ '. + $ "
www: . w;; $ ' ; ;OCXp $' ; mail: Y ' '
! ' > Control Conference ECC 2020
12â&#x20AC;&#x201C;15 / 05 / 2020 10 / 10 / 2019
@ =
www: . w;; ''OC mail: Y ''OC
XX Krajowa Konferencja H " H OCOC
22â&#x20AC;&#x201C;24 / 06 / 2020 20 / 01 / 2020
FL Â&#x201D; $
www: . w;;
$ $ mail: kka@info.p.lodz.pl
14th International Conference H ' ! $ @ ¢ ! CONTROLO 2020
01â&#x20AC;&#x201C;03 / 07 / 2020 01 / 02 / 2020
Bragança $
www: . w;;' $ OCOC = mail: controlo2020@ipb.pt
21 GÂ?H! + $ !
12â&#x20AC;&#x201C;17 / 07 /2020 31 / 10 / 2019
Berlin A '"
16. Krajowa Konferencja = " OCOC
02â&#x20AC;&#x201C;06 / 09 / 2020 02 / 03 /2020
$ $
Â&#x2122;O & g " ' $ ' & $ L MKM 2020
07â&#x20AC;&#x201C;09 / 09 / 2020
$ ' $
17th GÂ?H! @" G ! $ =$ & ' INCOM 2021
07â&#x20AC;&#x201C;09 / 06 / 2021
+g "
30.08â&#x20AC;&#x201C;03 / 09 / 2021
Jokohama Japonia
Nazwa konferencji
qqGGG + $ ! . G $ & Confederation IMEKO 2021
www: . w;; Q' ' mail: $ [ Y =
www: http://www.ifac2020.org www: . w;; $ mail: Y $
www: http://www.imeko2021.org mail: imeko2021@or.knt.co.jp
89
KONFERENCJE | RELACJA
Intelligent Autonomous Vehicles 2019 10. sympozjum IFAC na temat inteligentnych pojazdĂłw autonomicznych, 10th IFAC Symposium on Intelligent Autonomous Vehicles, IAV 2019 = < 3 *+ X ^ F
# $ ' ' " " " ' '. '. $ ' "'. " " % $ " `'$ ` . ` / % " " "'
" " g "'. =L & "' " "'. " = $ L
$g ` $ E " L % = " ` $ '`
@" GÂ?H! $ "'. L ' "'. / $ '. g / ` / +" $ >$ < $ ' G " "
g L ' = ' Q "'. = $ ' $ ' # " = $ = " ` $ %` L "'. L "'. $ '. & ` " ' '. " "'. ' "'. " "'. % L% "'. " '. " "'. '" $ "'. "'. + L '. % " L% E = " L ` E g " $ = E "$ $ "'. ' "'. '. = " "
' ` = " `' % ` E " E g E '" f= ' " = "' ` L% " ' ' " ' = L $ $ + ' ' ' '" " $ = E
pC
P
O
M
I
A
R
E "' "' =$ " " E '" = E %$ ' " "'. = " GÂ?H! " ' + $ " ]Xppx^ Â? $ ]XppÂ&#x2122;^ m ]XppU^ * ]OCCX^ $ ]OCCT^ Â? ' ]OCCV^ + '. ]OCXC^ H $ ]OCXx^ A '" ]OCXB^ f= ' $ $ g ]OCXp^ = '. gE " L GÂ?H! " GHv OCXp ` g ' " ' = ' Q "'. = $ "'. L ' "'. ' "'" g " " " = " $` $ L $ " =$ " "' "'. "' "'. $ '" $ $ %$ ' " "'. = # ' `' " $ ` g' = ' = `' g `' = "w '. $ "'. " L ' "'. ]$` "'. '. "'. ' "'.^Â&#x161; $ ' ' ' $ ' "'. L = L Â&#x161; ' ` '. $ L $ = $ ' Â&#x161; " " $ "'. " '. ' "'.Â&#x161; '" "' `'"'. ' " ' ' " " Â&#x161; $ $ Â&#x161; " " $ -
Y
â&#x20AC;˘
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;˘
R
Available online at www.sciencedirect.com
ScienceDirect International Federation of Automatic Control 52/8 (2019)
International Federation of Automatic Control
10th IFAC Symposium on Intelligent Autonomous Vehicles IAV 2019 Gdansk, Poland, 3â&#x20AC;&#x201C;5 July 2019
PROCEEDINGS
Edited by Bogdan Wiszniewski, Zdzis aw Kowalczuk, and Mariusz Dom alski Gda sk University of Technology
IFAC Proceedings Volumes (IFAC Papers-OnLine) â&#x20AC;&#x201D; ISSN 2405-8963
O A& # $ & I $ " E K ;B& <$ 10th IFAC Symposium on Intelligent Autonomous Vehicles IAV 2019, \& G $ 0 &$ [> F *!'+$ 6`8 ?0 4 M $ U >*$ R @$ 6 R] *=!>?@+) $ =(=
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
' L ' "'.Â&#x161; ' ' Q Â&#x161; = " "' = " = " . = $ '" Â&#x161; ' "'. $ "'. L w " L ' " L +"= " "
g `'"'. $ '. '. ' "'.w â&#x20AC;&#x201C; Projektowanie SterownikĂłw i Systemy Sterowania CSD ]! $$ ! $ @" ^Â&#x161; â&#x20AC;&#x201C; Wizja Robotycka VIS ] = v ^Â&#x161; â&#x20AC;&#x201C; Estymacja i Fuzja Sensoryczna EST ]> @ Â? ^Â&#x161; â&#x20AC;&#x201C; Zaawansowane Systemy Wspomagania Kierowcy DAS ]H [ ' [ H ' @" ^Â&#x161; â&#x20AC;&#x201C; Inteligentne Systemy Transportowe ITS ]G $$ < @" ^Â&#x161; â&#x20AC;&#x201C; ! B # * G
0G&H ] . $ ' $ @ H&^Â&#x161; â&#x20AC;&#x201C; Nawigacja i Oczujnikowanie RobotĂłw NAV ] = A [ @ ^Â&#x161; â&#x20AC;&#x201C; Systemy Wielopojazdowe VEH ]& $ Qv . '$ @" ^ =" g " $ ] " ` " " GHv $ L ^ f L' '. ' "'. =" " g " ` " " $ '. GHv
" w â&#x20AC;&#x201C; Klaus Schilling = ' ÂŁ < $ ' Z " * $ & " $ +¤ = A '" 8 H ' ! = $ A ! $ ! = @ $$ @ $$ Â&#x161; â&#x20AC;&#x201C; H G H L > /A@@ H '" =$ ! 8 > /A@@w ! = H v . '$ Â&#x161; â&#x20AC;&#x201C; Ikuo Yamamoto A Z [ " A * 8 H Z v . '$ H[ = Â&#x161; â&#x20AC;&#x201C; Bogdan Wiszniewski $ H ' ' ÂŁ $ '. / 8 $ $ . @ ' @ ' 8 @ $$ G $ >ÂĽ' $$ ' A $ G [ >' " Â&#x161; â&#x20AC;&#x201C; H H H " $ '. 8 H $ & [ .
G $$ H ' $ v . '$ w ! $ ' [ Â&#x161; â&#x20AC;&#x201C; Roman Szewczyk @ E ' F ' 8 " " G " H " L GH + 8 G " T C H ' $ < ' ' =" g `'" $ " " " hH ' A ' L 8 & %$ ' +" j ]H A [ v . '$ 8 f !. $$ ^ L " " ' " L= * ' @ $ '. / ''" $ " H$ !. . @ $$ " $ ' $ ` g h@ `' "=L L vOqj ]& @ '. @ ! $$ $ QvOq^ +" g % L= g ` `E ' $ =" %$ ' g L ' = ' "'. = $ ' $ '
/ L " '"
' " g "'. ' "
' >$ [ hGÂ?H!Q f j ]@' ' ' ^ v $ Â&#x2122;O A U X8TVT OCXp " $ " ' @" GÂ?H! GHv L % ' L " " GHv " g ' E =$ ' $ "'. L " ` ` GHv ' $ L " ' $ "'. " $ ` H ' g ' ` $ ` H g A $ < " L H " = " $ < " $ L % GA<> ]GA<> < '. $ " $ ^ " " G " H " L ] = ' ' `'" g '. @ ' ' F ' ^ H $ H >$ ' ' H$ ' % $ L $ "'. '. = ' @ G $$ Z @" $ Q '. ' " " H " = " / @ ' < $ h@ j ' % % '. $ E g
% L L L
pX
KONFERENCJE | RELACJA
L " " ] " " L Gย H!^ L % L = " = L g ' ' "'. ' "'. $ %" & g " " L ' ' '. "' `'"'. " L "'. ' L "'. L " ="
' $ ' " L " & H GHv OCXp ]Gย H! ยฆ H . H ^ +" ' ยฆHH GHH OCXp =" XC ' GHv ยฆHH L g ] ' L "'. ' ' L ^ " ' " L + $ " $g `' " " $ ? '" ] L " "
' ' xC $ $ =
pO
P
O
M
I
A
R
' " ^ " " ย g `'"'. ? $ L Gย H GHv OCXp ยฆHHw 8 H$ ยฅ + '. 'g Vehicle U 0 X G lization for High Performance Race Cars ] L "w < @ .$ * . . ^ A '" 8 ย ยง > $ . $$ 'g Direct Yaw Control Based on a Phase Plan Decomposition for Enhanced Vehicle Stability ] L "w $ f $ & '. $ ^ ย ' 8 @ $ 'g Reconstruction of Ultrasound Signals Using Randomly Acquired Samples in a Sparse Environment ] L "w @ @ '. H " @ H ^ Z@H 8 * ย m 'g Tire-Road Friction ( \ X ( Vehicle Speed Control ] L "w
Y
โ ข
A
U
T
O
M
A
T
Y
K
A
โ ข
R
@ =. . . ยฆ #. ^ 8 ย $ ' $$ 'g Wheel Slip &] '
H Predictive Control for Object Pushing H
. ] L "w ย = @ = ^ + '." f ' ยฆHH GHv OCXp "= $ " " L L= $ ? `'"'. g '
= ' L ' ' ' + " ' " "' g '` Gย H! GHv OCXp ยฆHH H$ ยฅ + '. h> " ' $ " $ $ ' $ '. L " ' "'. " '. ` '.j L
L ` < @ .$ * . . A ' # "' g ' " '" ? $ ' " $ -
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
' "? " ' ' g' + " `' ' GHv '. GHv ]GHv ! ^ OCXp L =" g = H ' ! @ $ '. ' /
g = xC L = = ' L= "' =" " g " "w ' ] $ ^ H $ & @ '. ! ' !. $$ +" X C L=
' "' =" UU L= ] " ^ ' $ E ' ] " ' = " `' $ "' ' " = " = $ g `' ' ^ ' " L'. = "'. L L '. GHv H
>$ ' ' H$ ' < =" " % $ $ / $ g ' ` ]@ <v^ +"= "' g '" " $ Xx L ' "'. "'. L = "'. / L " L '. "'. GHv =" & < ' A @ G >H ] " +" $ ><G $ '. / ^ f L$ ' g ' ' GHv g w XC L L OOx L L OX "'. ' L ] " ' ^ `' XTC ' L X C L= g
" '. GHv ] " +" = L +" ' L ^ xCC L= Z' '" '. $ L A ' $ * m ' +g '. @ L # ' "'. H "
* ' $ " GHv " " $ " m [ $ + L # " ]/ ^ " ' $ '. /
g' " . . =" g ' " $ ' ] $ '. `'" ' "' " ^ & $ " L % g E G H! <! V
"= E $ ' " G H! GHv ! '. '. OCOO
- & I 0 \& G
. = % # $'
px
KONFERENCJE | RELACJA
>' " & I - " A9 < *3 * B *+ X = > U $! ! "#
94
P
O
M
I
A
R
Y
â&#x20AC;¢
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;¢
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
" H " = " G@@A XTOVQpXOB Ox A x;OCXp
'" g ' Â&#x2122;X & g " ' $ ' & $ L f $ ` @ L Â&#x2122;C & g " ' $ ' & $ L L =" g
OCXU +" $ >$ "' " # '. Z " < '. $ ' @ ' ' f =" $ '. f $ " L '" G " G " $ '. ! g '. ` / ` Â? ' g ' `' f '" . = % & ` f ' $ $ w $ '. f $ " f $ H + / L Z g & @ " >$ " L $ '. f f $ ! g '. & $ f HA ' '. @ ' & '. $ H A @ ' =" " ? " `' $ E = $ " L "'. w A>< Gq ] " L % "'. % $ " > ^ #Â? ] [ ^ >! <>@< @" ] " " ^ @fA> ] ' ` ' "'. $ $ " ^ ' $ L = $ " '. ' = '. $ ?$ $ ' '. ? ' ' '. ? "'.
+ " ' '" & g " ' $ ' & $ L $ g E " & '. f $ $ $ ` " " $ " L " " / $ / $ '. $ '. Â&#x201D; +" >$ '. G " @ $ Q@ >$ ' ' = " " Hydrogel-based chemical and biochemical sensors
+ '. $ $ $ # & ' " ` $ ' g "$ $ '. ' '" " A ' g Â&#x2122;Â&#x2122; " L @ L '. OX =$ # " '. A "'. +" >$ '. H " $ '. / xX ' ' ' $ " " ? h "
A ' < '. ' j "
pÂ&#x2122;
KONFERENCJE | RELACJA
' ' $ " L "'. "'. $ L% "'. '. %"' & " '" # " " A +" >$ '. H " $ '. / ? h " A ' < '. ' j " g ' " ' & g " ' $ ' & $ L OCXp " "' g "'. = ' " ` ' L$ ' % ' ' "
" " L L ' L $ XO L "'. ' " =" " g f $ ]Ox ^ # & ]OT8O ^ $ O & g " ' $ ' & $ L =g g '. V8p OCOC $ ' $ ' +"%" & Qf$ " =g `' ' g ' ` +"%" " ! g '. . $ f ' f =g $ '. _$` '" g "= ' ' " ' ' ` @ L X & g " ' $ ' & $ L
f?'" g +" ' ` $ '. f $ " " " " " " "'. '
$ h " H " = " j g " $ ' h& H & j ' hG " H " " / ' f'. _ j ' ="$ ' A ' ' ' g `'" $ "'. ' $ '. ' "'. " ' "'. ' "' " " $ L $ L $
pB
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
I 4 A >' "I" *!'+ & / K " L . $ - 04 & / K \ $ - 0
O
B
O
T
Y
K
A
N R 3/ 20 1 9
f >!HA> @G¨© G
" A 9 $% H " ? $ ! < #= ! = " ! ! > !# !
Mateusz Turkowski, H " , Wydawnictwo: 4H # & 0 # $ *!'@$ 6 OR +(@?@ ?(@'=?)+(?'$ *@=
" L " $ %` "'. $ A " "
$ ' '. ' $ E g E & % g' " `E % g ' " L =g ` " " `' $g L '. L L % "'. $ ' < % ' " ' = ' E " " $ "'. =$ % " " " ` " + `%' L' g % ' ' " " '. $ " $ % ' ' ' L$ "'. ` =" E " $ " $ ' "' ' =L ` A ' g "$ "' "'. L H $ '. + % % g= E "' "'. ' ' L$ "'. " " % ="E $ ' $ $ ' L ` g "$ " $ % "$ `' ' " ' `' " = ' " $ '
" `'"'. ] ' g ' ' ^ ' $ ' %$ `' ' g " "'. L H L= " g "
' ' $ ' $ " ' ' g ' "'.
" $ " " '. g% = " '"$ '" $ Â&#x201D; g ' " $ "' $ " "' ` "'. =$ L 8 " $ $ g ' " " " L $ "'.
'. "'. ' " ' ` '. ' ' " "'. + $ ' '. " "'. $ % $ = '. ' g "
' " " g " $ = " $ " ' " " $ ' $ = "= '. " % ' " " " =g `%
g' " " + $ = '. ' " "'. ' ` ` ' ' < % %" '" $ ' L = g ' " ' $ ' "'. " ` ` '
g ` g ' ' "'. L < $ ' ` "
g' $ ' $ " L
' " " L " "$ $ L $ ' ' " $ ' " + $
g' " ' " ` $ $ $ " =g '. = " `% =g ' ` %" ' " g' = =$ "$ H H g= $ % $ = L = ' "'. ' `'"'. L "'. ` " ` " " L A % g' L$ "
' ' " " " =$ '" ' ' `%
Redakcja kwartalnika Pomiary Automatyka Robotyka
97
f >!HA> @G¨© G
AutoCAD 2020 / LT 2020 (2013+) Podstawy projektowania parametrycznego i nieparametrycznego ' ; " AutoCAD 2020 / LT 2020 (2013+) Podstawy projektowania parametrycznego i nieparametrycznego> *+ X ! _ " _> ! ! $ " ! " ! " ' ! (') ( !
H !H " '. " ? g H " " L " " " " " '. L ' " $ " g L L % "'. = % " " " " OCOC $ % %" E "'. $ = "'. ] "'. % H !H OCXx^ $ $ = $ g " H " "' '. ' " $ L =' " <" " =` $ g' ` `% g = g ' $ ' `' xCC G $ ` ' g ' ` g' ` " " L % = E " " ' +A $ " OCXx
' « +/ @ g' $ " ' g ' ` ' `' " " L "'. `%' "'. $ ' "'. L = E ! g E G 8 Nieparametryczne projektowanie 2D 8 =$ pC¬ = g ' # L %$ " "'. ' ' '" " &@ + ] '.
" $ ' " L '" " ' '"^ " $ "' '
'. '. $ " % ' f L " H !H $ ' g "'. $ L
"= ' ? '" H !H L ` =$ L g O 8 L g "'. '. L g "'. = "'. % E L
L g = $g L g
$g $ " "' = L "'. ] ' `
pU
P
O
M
I
A
R
^ = L % "'. ] $ $ $ ` " = " = " % ^ @ '
g' " '" " 8 " "= $ $ ' " " g "' = L ] " % ' ^ + `%' " L % ' = '. "
$ = ' " " g L % = '.
" "'. = L '` $ g ` ' ' = L ' E ' " ` " ' 8 ' " `' " " ' " " " ' ! g E GG 8 Parametryczne projektowanie 2D 8 %$ '
H !H g ' ` " OCXC +' "' H !H =" " "' " ] $ O ^ ` "' % $ ` '` L L "'. "? ' g = f= " ` "' g "
g L " "'. "' "'. L ` E $ % ' ' `'"'. = g '. = L ] = `' = = "^ + ' g ' " g ? ' ` g
g L + " E E ' "=$ % `' g "' " ] ' ' ` "
$ $ " g L '. g' ^ ' E ' "' ` g " " ] " ' ^ ? ' ` "'. g ` " " " L "'. "=$ % ` "' "? ' ' g " g `E g'
" " OCXU H !H OCXp ; <OCXp ; + = ;& = $ ª "' "' O x $ ' " $ ' g ' 8 " $ x " ' " H !H xBC & " ' H !H ! ? $ `% $ `'" ! " $ $ E = ' ' $ * " " L L ' "? '" "'. " "'. ' H !H 8 ? g H * " "'. $ '. ] . ^ ! " $
" " $ E ' $ ' $ $
' H L " "' " =" " " $
Andrzej Jaskulski, AutoCAD 2020 / LT 2020 (2013+) Podstawy projektowania parametrycznego i nieparametrycznego, Wydawnictwo Naukowe PWN, 2019, ISBN 978-83-0120613-0, str. 318. Y
â&#x20AC;¢
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;¢
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
f >!HA> @G¨Š G
Autodesk Inventor 2020 PL / 2020+ Podstawy metodyki projektowania ' ; " Autodesk Inventor 2020 PL / 2020+. Podstawy metodyki projektowania> B ! *+ X ! _ " _> % $ ! $ ! ! =# < = % ' ; > ` H G [ " " !H " Xppp '. " ? g H * "' " " x " "' ' O %$ `'" L % '. '" Z %$ $ ` ' $ x A $ %$ " " L " ' "'. % "'. $` "'. "'. H G [ " '" g `'" $ " g'" $ L f= ' " g %" L L L L% "'. = % H G [ g $ Â? Q & $ $ `'` $ . '. ' "'. L "'.
Andrzej Jaskulski, Autodesk Inventor 2020 PL /2020+. Podstawy metodyki projektowania, Wydawnictwo Naukowe PWN, 2019. ISBN 978-8301-20649-9, str. 204.
'. " "' " $ '" . ' $` ' = L $ " g' H * $ = `'" "
' " "' " H %$ g " =L ` '. ' ` '` H G [ OCOC ] % OCXp^ # E `% %$ g ` ' % g ' "' $ " g' = H !H ` g $ ' " $ OCC f ' ' = % "'. "'. '. $ 8 ' E $ $ ' L `'"'. "' ' ' g' H '.g' $ H G [ "'. $ L L % = E " " ' +A # '. " " L ` $ ` ' g E g' & " = ` " $ L '. "'. OCXp OCOC H ' " $ L $ ' g ? ' g ' " g ' @ L $ ' "'. g g "'. H G [ `%' L ` "$ L =g ` =g
" " "'. "'. " E g " " = ' $ E $ " 8 $ ' g ' x $ x ' O x "? ' g ] "' ` '" `^ H ' g' " g L + ' " "= "'. "' = =$ ?' "'. "' ' $ ` "'. " `%'
' "
8/ # & &9 " L / 0 # 4/ # & R J # G ?" 4 F & & . K 9 & 9 I 9 6 K 9 .K & & 8E$ K 9 A 9 8E F & 9 0 & dzinie metodyki parametrycznego projekto *E E 0 $ K & G A A *!') 8 & 8 & 8 F "B ; / " BT < / & A 8 8E R & & 9 & & '++ rowanym przez siebie Autoryzowanym Centrum Szkolenia Autodesk. Na autorskim blogu ; ]PP & / A P< ¤ J / zamieszcza regularnie liczne wideoprezentacje 8E
= `'"'. ' L " L !H $ ' $g `' " H g' " ' + % " % = " . g " g `E g'
" " OCXU H G [ $ OCXp ; OCXpÂŞ ;Â? xBC & " `% ` '` $ L "% "'. $ L '. ' "'. L %" L L "'. '
Redakcja kwartalnika Pomiary Automatyka Robotyka
pp
NASZE WYDAWNICTWA
VOLUME 13 N°2 2018 www.jamris.org pISSN 1897-8649 (PRINT) / eISSN 2080-2145 (ONLINE)
Indexed in SCOPUS
www.jamris.org
PAR P O M I A RY â&#x20AC;¢ A U T O M AT Y K A â&#x20AC;¢ R O B O T Y K A
PAR P O M I A RY â&#x20AC;¢ A U T O M AT Y K A â&#x20AC;¢ R O B O T Y K A
3/2018 ISSN 1427-9126 Indeks 339512
Cena 25,00 zÅ&#x201A; w tym 5% VAT
Technical Sciences Quarterly | ( ) * !
5 15
Cena 25,00 zÅ&#x201A; w tym 5% VAT
Technical Sciences Quarterly | ( ) * !
W numerze:
3
4/2018 ISSN 1427-9126 Indeks 339512
W numerze:
Od Redakcji
3
Od Redakcji
" ' L$ * @
5
! ! !" ' ! ! ! | ! & Â&#x2021; 6\ !
* " / l
Sposób wyboru optymalnej trajektorii lotu manewru antykolizyjnego realizowanego w otoczeniu ruchomych przeszkód
# $'
+ " < '
} $ !" !" ! !" $ !
23
& = @ "' " / /
33
Patryk Szywalski. Dawid Wajnert
41
" f g ' & ' ! & ' / = '
1+ # $ ! !
7 $ !" !" < !
) % ! $ % % ! 0#+ ! ! !
23
=
25
+
31
/" Â&#x20AC; !
"
&%
! &%
! ! ! !
% Â&#x2021; ! ! $ ^0) ! #" '. + * ' '. $
1 ! ! !" !"
!" $ $ ! !" Y.
Ponadto:
w
Informacje dla Autorów â&#x20AC;&#x201C; 69 | 6~~~ E = ! ' ! ! (< ! > E' +*Â&#x20AC;> ? @ 6~~~ 73 | 3+ ! ! #
! ! = ! 76 | #! ! " 80 | Nasze wydawnictwa â&#x20AC;&#x201C; 84 | ' < = % E = ! ! 85 | Kalendarium â&#x20AC;&#x201C; 86 | + ! "# 87 | $% & ! ! ! 93 | $% &
Informacje dla Autorów â&#x20AC;&#x201C; 61 | PP-RAI 2018 â&#x20AC;&#x201C; Pierwszy Zjazd Polskiego Porozumienia na Rzecz Rozwoju Sztucznej Inteligencji â&#x20AC;&#x201C; 65 | Awans naukowy â&#x20AC;&#x201C; < = % < 69 | Nasze wydawnictwa â&#x20AC;&#x201C; 70 | Kalendarium â&#x20AC;&#x201C; 71 | 17th 6G'( < ( ! ' ! ? ! ! 72 | Konferencja Roboty Medyczne 2018 â&#x20AC;&#x201C; 75 | Universities of the Future â&#x20AC;&#x201C; 76 | 6 *+ [ 78
' ! (') *+ X,-. *+ X, =, = 4 ! ! " ! " *) 3) 94 | $% & ' ! 6 7 ! *+ X -,*+ X4,G 3Y+ ! ! 95 | _ " 96
www.par.pl
www.automatykaonline.pl/automatyka
100
P
O
M
I
A
R
Y
â&#x20AC;¢
A
U
T
O
M
A
T
Y
K
A
â&#x20AC;¢
R
O
B
O
T
Y
K
A
N R 3/ 20 1 9
Nowe Studia Podyplomowe na Wydziale Mechatroniki
TRANSFORMACJA PRZEMYSŁOWA 4.0 Początek zajęć w październiku, w roku akademickim 2019/2020, zgłoszenia:
do 30 września 2019 Więcej informacji na stronie Rekrutacja na Studia na stronie
http://iair.mchtr.pw.edu.pl/studia https://rekrutacja.pw.edu.pl/pdp
CO GWARANTUJĄ? Wiedzę oraz kompetencje do rozwiązywania problemów przejścia od etapu zautomatyzowanej i zrobotyzowanej produkcji, charakteryzującej się liniową strukturą wytwarzania produktów, do etapu cyfryzacji i mechatronizacji produktów i produkcji o rozproszonej strukturze, produkcji zinformatyzowanej i zinternetyzowanej, na współczesnym i przewidywanym poziomie rozwoju tych technik, czyli przejścia do etapu Przemysłu 4.0. DLA KOGO? Dla absolwentów studiów wyższych I lub II stopnia na kierunkach technicznych, ekonomicznych lub menedżerskich. Wskazane, ale nie absolutnie obowiązujące, jest doświadczenie zawodowe z zakresu racjonalizacji technicznej lub zarządzania przemysłowymi procesami produkcyjnymi. Słuchaczem może być także osoba mająca profesjonalny kontakt z tymi dziedzinami, choć niekoniecznie formalnie wykształcona we wskazanych kierunkach studiów. DO KOGO KIEROWANE? Przede wszystkim do menedżerów zarówno małych, jak i dużych firm i ich oddziałów, bez względu na specyfikę produktową oraz do kierowników i pracowników zespołów projektujących cały cykl życia scyfryzowanych produktów lub wybranych etapów ich życia w łańcuchu PLM (Product Lifecycle Management), rozpoczynając od podania koncepcji i dokumentacji wirtualnej, decyzji o podjęciu produkcji, przejścia do środowiska realnego, opracowania wspomaganej komputerowo produkcji, montażu i logistyki, kontroli eksploatacji aż do sterowanego recyklingu.
KTO WSPOMAGA? Studia są wspomagane przez firmy przemysłowe o znaczeniu wykraczającym poza rynek europejski – są to holdingi Festo, Grupa Bosch-Rexroth, Fanuc, Balluf i Siemens. Wyraża się to w korzystaniu z ich zasobów programowych i sprzętowych oraz z udziału doświadczonych praktyków firmowych w prowadzonych na Studiach zajęciach wykładowych i laboratoryjnych. Planowane są także wyjazdy studialne, krajowe i zagraniczne, w tym 6-dniowy wyjazd studialny (Polska, Niemcy) oraz wyjazd na Leitmesse fuer Intelligente Automation und Robotik w Monachium. JAK PRZEBIEGAJĄ ZAJĘCIA? Jeden rok akademicki, dwa semestry, dziewięć zjazdów piątkowo-sobotnio-niedzielnych raz w miesiącu i dwa wyjazdy studialne – łącznie 250 godzin zajęć oraz praca końcowa przewidziana na 40 godzin. Zaliczenie studiów – na podstawie egzaminów z przedmiotów wykładowych i zaliczeń z pozostałych przedmiotów oraz obrony pracy końcowej. Dokumentem potwierdzającym ukończenie Studiów jest Świadectwo wydane przez Politechnikę Warszawską.
Adres i zgłoszenia: Instytut Automatyki i Robotyki na Wydziale Mechatroniki ul. św. A. Boboli 8, 02-525 Warszawa Elżbieta Boniecka, p. 253 tel. 22 234 85 55 fax 22 849 03 98 iair.podyplom@pw.edu.pl
GŁÓWNE TEMATY ZAJĘĆ: • Ewolucja technik wytwarzania produktów i środków ich produkcji • Platforma Przemysłu 4.0 • Automatyzacja i robotyzacja produkcji • Mechatronizacja, informatyzacja i internetyzacja produktu • Zadania zmechatronizowanego produktu w procesie produkcji i eksploatacji – Internet Rzeczy • Cyberbezpieczeństwo przemysłowych systemów informacyjnych • Standardy komunikacyjne automatyki przemysłowej • Polski przemysł przyszłości • Przykłady transformacji przemysłowej 4.0
41
+ + ' '. @ " ' & ' @ ' " + ' '. & " Â? & ' +g @ " ! " # $
55
#" '. + * ' '. $
65
" @ " " !. L
71
Agentowa struktura wielomodalnego interfejsu do Narodowej # 9 ! < Â&#x20AC; ! & Â&#x2021; L,
* ! ! !"
!" $ !" , 9 & Â&#x2021; L, $
! ! ! |
% !
! !" ! !" * '
+ &! ! ! ! automatycznej