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/2022 ISSN 1427-9126 Indeks 339512
Cena 25,00 zł
Technical Sciences Quarterly | &
w tym 8% VAT
- '
W numerze:
3
Od Redakcji
5
17
! "
23
" # $ " % ! & $ !
29
" # ' #
# "( # )
! " # $ % & ' % (
37
*# ' ' # + # # +
# +,
) Informacje dla Autorów – 55 |
59 | 60 | Kalendarium – |
Rada Naukowa Rok 26 (2022) Nr 3(245) ISSN 1427-9126, Indeks 339512
Redaktor naczelny / 8 : & ;
. /# <8 ' ;
. # / / / /
<8 ; 8 ( = ' > 8 <8 ' ; > ? <8 @ > 8 A > ' 8 : & ; > B
Korekta <8
0 C
Druk & = D A /8 8 8 @ EFF ' 8
Wydawca
G H > J K L J 8 MFM FMOPQT (
Kontakt O ' B 8 MFM FMOPQT ( 8 MM QUP FV PT W/ 8/ 8/ 8/ Pomiary Automatyka Robotyka / O B VXXU 8 VQ Y Y 8 / Z K / / / OB B ' 8 O B K B &AC:[ = ' J@$C\ :] C @J:^ _J:# MFMV) XF F`a K < KB B < / / J @A 8 Z Z Y ] @ Y/ B / / B K O B 8 ( Z / Z _ Za / / 8 C @ / B B B UF / 8 _ / L Y V ' MFMV 8 / 8 MXXXEa8 / / O 8
' ' L K B ]% > ' / Z bG O Z B ' B / L / Z Y Y ' Jc : Jc J C ]8
# 1 2 HL # 1 & 3 ^ " f _ a # 1 % 3 /' ( C c L ( # 1 4 J C J g Z # 1 56 !1 7 @ A ^ " _= a 8 %6 6 ^ "
_@ a
# 1 9 G H > J L J ( # 1 ( 1 9 6 @ ^ % " _^ a # 1 % "1 9 / ^ ; 8 8 (8 ' # 1 21 & J _ ' a # 1 2 & % ^ " _ a # 1 & G H > J L J ( # 1 & & ( B C ; ! 1 & ^ " _= a # 1 2 : ( J < & Z # 1 " h%" " i @ ^ " _^ a # 1 5 - ( J < & Z ( < C ' & Z ( # 1 2 ) : ^ " _ a # 1 - : j ^ " _(
a
3 A > J // A ' _@ a
# 1 5 ; ( A ' g Z # 1 " <6 " _ a # 1 * * JA ^ " B _ a
( B > D K XFU? O$^@?MFVX b L @ ( < ' / bG / Z Z Y8
= B[
# 1 5 1 ! h " i @ ^ " _^ a
B J @ VPMUOXVMT 8 MT @ `?MFMM
3
Od Redakcji
5
: ' % " : $ B
17
! " / / A b
23
" # $ " % ! & $ ! /Y ' J# B B ' / l /
29
" # ' # # "( # ) J / " ' c %: A ' '
37
! " # $ % & ' % ( *# ' ' # + # +, # # + J : $ ^ ]B " J
43
@ ( @ " # # &-& # + C C c $ ^
49
= ' . / $ ' - 0 b / ' ' B
55
%
1
J A Cg:J
59
" 1 # # ' ' 2 ' 4 5 6 > B8 <8 /
78 9
M
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 /2022
]$ C$ : J
Drodzy Czytelnicy, <Z O ' B Y : L / Y ' MFMM?MFM`8 ( Y b / b Y i pomiarom. / / B / L ; bG ' ' 8 ' ' Z Y b / / / 8 ( Y / B / / B / ; ' / ' / ' L ' %:8 ( Y ' 8 = /Y L / b Y / Z G / ' B B L 8 / ' Z Y B Z ; 8 $ / b Y / Z Z / b / L 8 / b / L B / b 8 @ ' Y b / L L ' C / b / 8 ( Y < L< bG / < < : b Z ' B 8 ( ( > H > ' J L J ( > ' Z / ' 8 . Redaktor naczelny kwartalnika Pomiary Automatyka Robotyka / 8 B8 <8 : & ;
`
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 5–16, DOI: 10.14313/PAR_245/5
% * + -
! " # $ $ % $ # &
. . - # / % 0 # 4 6 8 # ; 4 6 ; * " # % 0 < # . # =!>)=? . -
# ' W niniejszej pracy przedstawiono możliwość zredukowania wpływu zakłóceń stochastycznych na jakość regulacji dzięki estymacji stanu z wykorzystaniem algorytmu rozszerzonego filtru Kalmana. Przeprowadzono eksperymenty na laboratoryjnym układzie lewitacji magnetycznej firmy Inteco, którego model matematyczny jest nieliniowy. Przyjęto metodę sterowania z użyciem wektora stanu i algorytmem lokowania biegunów dla modelu zlinearyzowanego w wybranym punkcie pracy. Dla różnych poziomów zaszumienia sygnału pomiarowego zbadano działanie układu ze sprzężeniem zwrotnym od stanu mierzonego oraz estymowanego. W celu oceny regulacji, dla obu realizacji sprzężenia dokonano weryfikacji jakości działania algorytmu. Porównano otrzymane przebiegi czasowe każdej zmiennej stanu oraz obliczone, całkowe wskaźniki jakości bazujące na uchybie regulacji. Jakość estymacji oceniono na podstawie wskaźnika błędu średniokwadratowego oraz bazującego na błędach estymat i pomiarów. Syntezy regulatora dokonano na podstawie modelu ciągłego, a następnie wyznaczono jego postać dyskretną w celu numerycznej implementacji algorytmu rozszerzonego filtru Kalmana. Dokonano synchronizacji bloków wykonawczych z wybranym okresem próbkowania. Wyniki przeprowadzonych badań pozwalają wnioskować o przewadze regulacji w układzie, w którym brana jest informacja o wektorze stanu z estymacji, w porównaniu z bezpośrednim sprzężeniem zwrotnym bez filtracji Kalmana. F % * # % # @ A # # B %
1. Wprowadzenie W starożytności wymyślano, jak dostarczyć rozrywkę publiczności lub gościom, a lewitująca kula bez wątpienia miałaby potencjał zapewnienia jej. Ze względu na ówczesny brak powszechnej edukacji, unoszenie się kuli bez jej powierzchniowego kontaktu z innym ciałem mogłoby wydawać się zjawiskiem nadprzyrodzonym. Niewątpliwie spotkałoby się to z ogromnym zainteresowaniem. Obecnie zjawisko lewitacji używane jest na przykład w transporcie koleją magnetyczną [13]. W dzisiejszej automatyce wciąż rozwijane są badania nad sterowaniem oraz estymacją stanu w obiektach nieliniowych, spotykanych często w praktyce. Przykładem takiego systemu może być układ lewitacji magnetycznej MLS (ang. Magnetic Levitation System). Umieszczoną między elektromagnesami
# ) F " " # $ % &! !' (!(( # % % &( !) (!(( !
ferromagnetyczną kulą tak, aby lewitowała, można sterować na wiele sposobów. Eksperymenty na wspomnianym układzie, który został wykorzystany w tej pracy, są szeroko rozpropagowane. W pracy [1] wykorzystano klasyczny regulator PID. W literaturze można znaleźć również badania wykorzystującego kilka jego wariantów: regulator PD z aproksymacją bazującą na DIPDT (ang. Double-Integrator Plus Dead-Time) [4], regulator PID połączony z regulatorem kompensacji rozmytej [14], czy połączenie PID z regulatorem ślizgowym SMC (ang. Sliding Mode Control) [22]. Przy projektowaniu metod sterowania wykorzystywano również sieci neuronowe NN (ang. Neural Networks) [15, 6] oraz regulator TID (ang. Tilt-Integral-Derivative) zoptymalizowany za pomocą algorytmu genetycznego GA (ang. Genetic Algorithm) [20]. W pracy [10] porównano kilka metod regulacji, w tym sterowanie optymalne liniowo-kwadratowe LQR (ang. Linear-Quadratic Regulator) z użyciem wektora stanu. Informację pomiarową można poprawić wykorzystując estymację stanu. Istnieje wiele algorytmów pozwalających na odfiltrowanie szumów pomiarowych i odtworzenie stanu wewnętrznego, począwszy od estymacji statycznej metodą ważonych najmniejszych kwadratów WLS (ang. Weighted Least Squares) [16]. Jest to metoda stosunkowo prosta w realizacji, ale mniej dokładna od algorytmów dynamicznych, np. jak filtr Kalmana [11] zaproponowany w 1960 r. dla układów liniowych.
5
' L ;
Rys. 1. Od lewej: rzut pionowy oraz zdjęcie stanowiska laboratoryjnego Fig. 1. From the left: sectional section and photo of the laboratory stand
W problemach sterowania układami nieliniowymi można spotkać się z użyciem algorytmu rozszerzonego filtru Kalmana EKF (ang. Extended Kalman Filter). Jest to metoda przeznaczona dla obiektów nieliniowych, wykorzystująca ich aproksymację w punkcie pracy. W literaturze można znaleźć wiele odmian metod estymacji, które wciąż są powszechnie rozwijane do różnych zastosowań. W pracy [19], na obiekcie MLS, przy dostępie do pomiaru wyłącznie położenia, odtworzono pełny stan realizując algorytm EKF. Umożliwiło to zastosowanie regulatora bazującego na sprzężeniu od stanu. Inne algorytmy stosowane do estymacji stanu opisane zostały w pracach [17, 18, 21] – są to między innymi filtry hybrydowe, wykorzystujące jednocześnie w każdej iteracji różne rodzaje filtracji Kalmana, czy też filtry cząsteczkowe. Estymacja stanu, poza wymienionymi zastosowaniami (możliwości odszumienia pomiarów, czy odtworzenia wektora stanu bazując na dostępie do pomiarów nie wszystkich jego składowych), stosowana jest także w sterowaniu systemem sieci elektroenergetycznej, w celu zmniejszenia kosztów pomiarów, telemetrii oraz poprawienia bezpieczeństwa systemu i dokładności danych [12]. W literaturze spotykana jest również aplikacja estymacji stanu w przewidywaniu trajektorii/śledzeniu celu m.in. za pomocą czujników pasywnych (pomiary zawierają informacje jedynie o kątach w polu widzenia) [5] oraz zaawansowanemu zarządzaniu akumulatorami – maksymalizowaniu ich efektywności energetycznej, gdzie skuteczne szacowanie stanów wewnętrznych jest kluczowe [8]. W niniejszej pracy zaimplementowano sterowanie rzeczywistym obiektem oparte na wektorze stanu z algorytmem lokowania biegunów. Wykorzystano nieliniowy model obiektu dla wyznaczonych parametrów stanowiska. Ze względu na nieliniowość oraz strukturalną niestabilność uzyskanie dopasowanego modelu nie było łatwym zadaniem, a testy przeprowadzano tylko w układzie zamkniętym. Uzyskano wystarczającą dokładność modelu matematycznego, co uwarunkowało możliwość zastosowania tej metody sterowania. Zbadany został wpływ wariancji stochastycznych zakłóceń pomiarowych na działanie regulatora, przy odfiltrowaniu szumów za pomocą EKF. Według najlepszej wiedzy autorów, w pracach nie rozpa-
6
P
O
M
I
A
R
Y
•
A
U
T
O
M
trzono dotychczas takiego problemu. W praktyce przedstawiona w pracy estymacja stanu może okazać się użyteczna w przypadku uszkodzenia urządzeń pomiarowych układu lub wystąpienia zakłóceń zewnętrznych uwarunkowanych specyfiką usytuowania stanowiska laboratoryjnego. W rozdziale drugim przedstawiono matematyczny opis obiektu w postaci nieliniowych równań stanu, zestaw parametrów i ograniczeń wynikających z jego budowy, oraz metodę linearyzacji statycznej modelu. W kolejnej części pracy (rozdział trzeci) został opisany algorytm rozszerzonego filtru KalTabela 1. Symbole użyte w artykule Table 1. Symbols used in the article Symbol
x = x(t)
wektor stanu w chwili t
xi
i-ta zmienna stanu pochodna po czasie wektora stanu
x+
wektor stanu wartości wzorcowych
x̂
estymata wektora stanu
y
wektor pomiarowy (zaszumiony)
u
sygnał sterujący
x(k)
(opis dyskretny) wektor stanu w próbce k-tej
f(·), fd(·)
funkcja przejścia (ciągła i dyskretna)
h(·), hd(·)
funkcja pomiarowa (ciągła i dyskretna)
r
wartość zadana położenia
v
wektor zakłóceń wewnętrznych
z
wektor stochastycznych zakłóceń pomiarowych
(m, s2)
A
T
Y
K
rozkład normalny o wartości oczekiwanej m i wariancji s2
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
trapolacyjną Eulera d+(zakładając Tp jako okres próbkowania), w rezultacie czego otrzymano postać:
mana, wraz z jego realizacją jako blok funkcyjny w środowisku Simulink. Dobrano również parametry macierzy kowariancji szumów dla badanego układu. W rozdziale czwartym opisano przyjętą metodę sterowania oraz wyprowadzono końcowe równanie na sygnał sterujący. W rozdziale piątym przedstawiono wybrane, w celu liczbowej oceny wyników eksperymentów, wskaźniki jakości dla regulacji oraz estymacji. Rozdział szósty zawiera wyniki badań – wartości wskaźników jakości oraz przebiegi czasowe zmiennych stanu i sygnału sterującego sporządzone na podstawie otrzymanych pomiarów eksperymentalnych. Zamieszczono w tym rozdziale także wnioski do wyników. W rozdziale siódmym praca została podsumowana i zredagowano uwagi końcowe. Na rys. 1 przedstawiono rzut pionowy stanowiska, na którym zostały przeprowadzone badania, oraz jego zdjęcie. Na grafice po lewej stronie pominięto dolny elektromagnes ze zdjęcia, ponieważ przyjęto sterowanie z użyciem wyłącznie górnego – magnesu em1 (ang. electromagnet). Najważniejsze symbole stosowane w artykule wyjaśniono w tab. 1.
. (2)
W równaniach (1) i (2) występują następujące zmienne stanu oraz sterowanie: x1 – położenie kuli, x2 = x 1 – prędkość kuli, x3 – prąd płynący przez górną cewkę, u1 – sygnał sterujący górnego elektromagnesu. W tab. 2 podano współczynniki występujące w równaniach (1) oraz (2). Dane z kol. 2. (wartość producenta) wynikają z dokumentacji Inteco [23]. W skład stanowiska wchodzą trzy kule o różnych masach oraz średnicach (duża, średnia, mała). Z racji, że eksperymenty przeprowadzono z użyciem średniej kuli, a w dokumentacji producenta zostały podane parametry (masa, średnica) dużej, pominięto te wartości. Wynikowo pominięto również pierwotną wartość parametru xd, ponieważ zależy ona od średnicy średniej kuli, która nie została podana. Z kolei po dokonaniu pomiarów na stanowisku, zgodnie z metodyką zaproponowaną w [2], otrzymano poprawione wartości parametrów, które zestawiono w kol. 3. (po korekcie). Model matematyczny cechują ograniczenia wynikające z budowy obiektu:
G1 8# # G1H1 :
'
Badany obiekt może zostać opisany przez nieliniowe równania stanu, wyprowadzone z podstawowych zasad oraz zależności fizycznych dla kuli poruszającej się w polu magnetycznym. Matematyczny opis obiektu bazuje na równaniach Lagrange’a i został podany przez producenta [23] oraz poprawiony w pracy [2] na podstawie [3]. Warto zaznaczyć, że oprócz silnej nieliniowości, obiekt regulacji jest też z natury niestabilny [2]. Równania stanu mają postać (przy zmiennych zależnych od czasu, w domyśle pominięto zapis (t)):
.
0 3,8840 ⋅ 10-2 0
(1)
≤ x1 ≤ x3 ≤ u1
≤ xd [m], ≤ 2,3800 ⋅ 100 [A], ≤ 1 [/].
(3)
Pełny opis obiektu zawiera również prąd płynący przez dolną cewkę (czwarta zmienna stanu) [9], który afektuje na drugie równanie stanu. Wynikałaby z tego obecność drugiego wymuszenia u2, sterującego cewką dolną. W przeprowadzonych badaniach nie używano jednak tego sygnału, dlatego pominięto wpływ wymienionego prądu. Bazowano na sterowaniu jedynie górnym elektromagnesem.
W celu dyskretnej realizacji rozszerzonego filtru Kalmana, równania stanu dane przez (1) zdyskretyzowano metodą eks-
Tabela 2. Parametry modelu lewitacji Table 2. Parameters of levitation model Parametr
m g
Wartość producenta
Po korekcie
5,3000 · 10−2
— 9,8100 · 10
0 −2
0
9,8100 · 10
Jednostka
Opis
kg
masa średniej kuli 2
m/s
przyspieszenie ziemskie
−2
FemP1
1,7521 · 10
3,5969 · 10
H
indukcyjność cewki górnego magnesu
FemP2
5,8231 · 10−3
5,2356 · 10−3
m
stała konstrukcyjna
f1
1,4142 ·10−4
1,4142 ·10−4
ms
stała konstrukcyjna
f2
−3
−3
m
stała konstrukcyjna
0
2,6000 ·10
A
stała konstrukcyjna
4,5626 ·10
0
4,5626 ·10
ki
2,5165 ·10
ci
2,4300 ·10−2
−4,4400 ·10−2
A
stała konstrukcyjna
d
7,5000 ·10−2
6,6000 ·10−2
m
odległość między elektromagnesami
5,5500 ·10
−2
m
średnica średniej kuli
1,0500 ·10
−2
m
d − bd
bd xd
— —
7
' L ;
G1G1 (
Na etapie równań i linearyzacji statycznej modelu jako wyjście podano jedynie pomiar położenia, ponieważ jest ono wielkością sterowaną. W algorytmie EKF wzięto natomiast pod uwagę pełną informację pomiarową, co ukazuje równanie (7) z kolejnego rozdziału – funkcja wyjściowa h(·) z (4) została zastąpiona wektorem funkcji wyjściowych.
W celu implementacji algorytmu EKF oraz zaprojektowania sterowania z lokowaniem biegunów, dokonano linearyzacji statycznej modelu danego równaniem, odpowiednio (1) przy realizacji ciągłej lub (2) w przypadku realizacji dyskretnej. Linearyzacji w punkcie pracy dokonano przy użyciu Jakobianu. Zapisano prawą stronę równania (1) jako wektor funkcji przejść oraz funkcję wyjściową:
I1 - 9 I1H1 8#
(4)
Rozszerzony filtr Kalmana jest algorytmem estymacji stanu przeznaczonym do obiektów danych nieliniowymi, dyskretnymi równaniami stanu. Podczas eksperymentu na obiekcie, możliwe jest odtworzenie informacji o stanie, a zarazem odszumienie pomiarów. Zakłada się znajomość modelu matematycznego obiektu, w tym przypadku danego równaniem (2). Wyznaczono analogiczny zapis równania modelu dyskretnego do (4) z uwzględnieniem szumów wewnętrznych v(k) oraz pomiarowych z(k). Zakłada się również, że zakłócenia pomiarowe opisuje rozkład normalny. Przy pracy na obiekcie korzystano z pełnej informacji pomiarowej, więc jego wyjście stanowi wektor y zawierający pomiar każdej zmiennej stanu, czyli hdi(x(k)) = xi(k). Otrzymano zatem:
gdzie x = [x1 x2 x3]T, f(x, u) = [f1(x, u) f2(x, u) f3(x, u)]T. Dokonano linearyzacji zgodnie z zależnościami (5). Jest ona liniową aproksymacją zachowania nieliniowego obiektu w zdefiniowanym punkcie pracy x0= [x10, x20, x30]T, zatem można zapisać macierze i wektory dla danego układu:
⎡ ∂f1 ⎢ ⎢ ∂x 1 ⎢ ∂f A ≈ ∇f |x = ⎢ 2 ⎢ ∂x 1 ⎢ ∂f3 ⎢ ⎢⎣ ∂x1
∂f1 ⎤ ⎥ ∂x 3 ⎥ ∂f2 ⎥ ⎥ ∂x 3 ⎥ ∂f3 ⎥ ⎥ ∂x 3 ⎥⎦ x
∂f1 ∂x 2 ∂f2 ∂x 2 ∂f3 ∂x 2
0 ,u10
⎡ ∂f1 ⎤ ⎢ ⎥ ⎢ ∂u1 ⎥ ⎢ ∂f ⎥ , b ≈ ∇f |u1 = ⎢ 2 ⎥ ⎢ ∂u1 ⎥ ⎢ ∂f3 ⎥ ⎢ ⎥ ⎣ ∂u1 ⎦ x
⎡ ∂h ⎤ ⎢ ⎥ ⎢ ∂x 1 ⎥ ⎢ ∂h ⎥ c ≈ ∇h |x = ⎢ ⎥ ⎢ ∂x 2 ⎥ ⎢ ∂h ⎥ ⎢ ⎥ ⎣ ∂x 3 ⎦ x
, (7) 0 ,u10
,
Algorytm EKF dzieli się na etap aktualizacji czasu, w którym dokonywana jest predykcja stanu w kroku k-tym aktualizowana na podstawie modelu oraz estymaty z kroku poprzedniego. Drugim etapem jest aktualizacja pomiarów (filtracja), która służy do poprawy wartości zmiennych stanu na podstawie danych pomiarowych. Obliczana jest macierz wzmocnień Kalmana K, która określa zaufanie wobec estymaty lub wobec pomiarów. W kolejnym etapie wyznaczana jest estymata, czyli predykcja stanu skorygowana o iloczyn wzmocnienia Kalmana i błędów pomiarów. Równania (8)–(12) przedstawiają działanie algorytmu EKF [18]. Równania etapu predykcji (aktualizacji czasu):
(5)
0 ,u10
gdzie: A– macierz stanu, b – wektor sterowań, c – wektor pomiarowy, u10 – wartość sterowania w punkcie pracy. Mając wyznaczone A, b oraz c można zapisać równania stanu w postaci:
xˆ (k | k − 1) = fd (xˆ (k − 1 | k − 1) , u (k − 1)) ,
(8)
P (k | k − 1) = F (k − 1) P (k − 1 | k − 1) FT (k − 1) + Q.
(9)
Równania etapu filtracji (aktualizacji pomiarów): (6)
K (k ) = P (k | k − 1) HT (k ) (H (k ) P (k | k − 1) HT (k ) + R ) , (10) -1
(
(11)
P (k | k ) = ( I − K (k ) H (k )) P (k | k − 1) ,
(12)
gdzie: a21 =
1 2 FemP1 x 30 2 2m FemP2
a23 = − a31 =
8
⎛ −x exp ⎜ 10 ⎝F
emP2
⎞ ⎟⎠ ,
gdzie: xˆ (k | k − 1) – wektor stanu znany a prori (na podstawie modelu), xˆ (k | k ) – estymowana wartość wektora stanu z aktualnego kroku, P (k | k − 1) – macierz kowariancji wektora xˆ (k | k − 1) , P (k | k ) – macierz kowariancji wektora xˆ (k | k ) , F (k − 1) ≈ ∇fd |xˆ(k −1|k −1) – Jakobian wyznaczony na podstawie dyskretnych równań stanu, K (k ) – macierz wzmocnień Kalmana, H (k ) ≈ ∇ hd |xˆ(k|k −1) – macierz wyjść, R – macierz kowariancji szumów pomiarowych, Q – macierz kowariancji szumów wewnętrznych, I – macierz jednostkowa.
⎛ −x ⎞ 1 F x 30 emP1 exp ⎜ 10 ⎟ , m FemP2 ⎝ FemP2 ⎠
⎛x ⎞ 1 exp ⎜ 10 ⎟ (kiu10 + ci − x 30 ) , f1 ⎝ f2 ⎠
a33 = −
⎛x ⎞ f2 exp ⎜ 10 ⎟ , f1 ⎝ f2 ⎠
b31 = ki
⎛x ⎞ f2 exp ⎜ 10 ⎟ . f1 ⎝ f2 ⎠
P
O
M
I
A
)
xˆ (k | k ) = xˆ (k | k − 1) + K (k ) y (k ) − hd (xˆ (k | k − 1)) ,
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
I1G1 % # Pomiar wszystkich zmiennych stanu implikuje wymiar 3 × 3 macierzy I, R oraz Q. Ze względu na liniowość funkcji wyjściowych hd, gdzie funkcje pomiarowe są kolejnymi zmiennymi stanu, H = I. Macierze kowariancji R i Q są macierzami diagonalnymi. Na ich przekątnych należy zdefiniować wariancje szumów odpowiednio pomiarowych oraz wewnętrznych dla poszczególnych zmiennych stanu. Wartości wariancji szumów dobrano eksperymentalnie, na podstawie obserwacji zbieżności śladu macierzy kowariancji P do zera. Przyjęto ostatecznie:
modelu (2) oraz algorytm dany równaniami (8)–(12) z uwzględnionymi rozmiarami i wartościami macierzy H, R i Q. Wykorzystano w tym celu blok MATLAB Function. Przez y oznaczono wektor pomiarowy, natomiast u_1 to sygnał sterujący z bieżącego kroku. Jako x_hat oznaczono estymatę wektora stanu, przetwarzaną przez EKF, a zmienna P to macierz kowariancji wektora estymowanego z bieżącego kroku. W celu oznaczenia sygnałów lub macierzy z poprzedniego kroku, dodano sufiks _p do ich nazwy z wyjścia. Opóźnienie sygnałów zrealizowane zostało przez bloki Delay.
(13)
Zmniejszając wartości na wybranym miejscu diagonali R, zwiększa się zaufanie względem odpowiedniego pomiaru. Analogicznie zmniejszając wartości na wybranym miejscu diagonali macierzy Q, zwiększa się zaufanie do odpowiadającej mu zmiennej stanu z modelu obiektu. Jeżeli model matematyczny obiektu jest wystarczająco dokładny, istnieje możliwość otrzymania estymaty pomiarów o mniejszej amplitudzie przenoszonych szumów przez zmniejszenie śladu macierzy Q oraz zwiększenie śladu macierzy R. Zwykle należy wybrać pewien kompromis między zaufaniem do modelu oraz pomiarów. W układzie sterowania obiektem zrealizowano blok pełniący funkcję EKF (rys. 2). Zaimplementowano dyskretne równania
J1 ' J1H1 # /L '
Celem projektowanego sterowania było wygenerowanie takiego współczynnika wypełnienia sygnału napięcia podawanego górnej cewce PWM (ang. Pulse Width Modulation), aby wskutek płynącego przez nią prądu wywołać silę przyciągania Fem1 równoważącą ciężar kuli w zadanym położeniu (rys. 1). W badaniach przyjęto sterowanie oparte na sprzężeniu od stanu z algorytmem lokowania biegunów. Porównano zachowanie układu dla dwóch sposobów realizacji sprzężenia zwrotnego. Na rys. 3 przedstawiono realizację z estymowanym stanem przez algorytm EKF oraz od zaszumionych pomiarów (oznaczone linią przerywaną). Ze względu na dostęp pomiarowy do wszystkich zmiennych stanu, na rysunku wykorzystano symbol x według konwencji oznaczeń z tab. 2.
4.2. Prawo sterowania Przyjęto ogólne prawo sterowania dane równaniem: u = −kTx + m,
(14)
które implikuje powstanie nowej macierzy stanu. Założono powyższe prawo (14) ze względu na wykorzystanie pełnej informacji o stanie do stałowartościowej regulacji obiektem lewitacji magnetycznej z redukcją szumów, zważywszy na dostęp do dokładnego modelu matematycznego obiektu. Po podstawieniu wyrażenia (14) do wzoru (6) otrzymano:
(15) Rys. 2. Schemat realizacji bloku EKF w środowisku Simulink Fig. 2. EKF block diagram realized in the Simulink
Rys. 3. Schemat blokowy rozpatrywanego układu regulacji ze sprzężeniem zwrotnym od EKF (zielonym kolorem zaznaczono alternatywną drogę sprzężenia w realizacji od pomiaru, z pominięciem EKF) Fig. 3. Block diagram of the considered control system with feedback from EKF (green colour indicates other way of feedback – directly from measurement)
gdzie: (A − bkT) = A1– macierz procesu dla układu zamkniętego, k − wektor wzmocnień sprzężenia od stanu, m − składowa sygnału sterującego zapewniająca jednostkowe wzmocnienie statyczne układu zamkniętego. W celu obliczenia wektora wzmocnień sprzężenia od stanu przyjęto algorytm lokowania biegunów. Potrzebny jest wielomian charakterystyczny macierzy procesu oraz zestaw zadanych wartości własnych (biegunów). Wielomian charakterystyczny macierzy procesu wyznaczono z zależności det(sI − A1) = 0 i otrzymano: s3 + (b31k3− a33)s2 +(a23b31k2− a21)s + + (a23(b31k1− a31) − a21(b31k3− a33)) = 0.
(16)
Wartości parametrów aij (gdzie i jest numerem wiersza, a j numerem kolumny) z równania (6) zależą od zdefinio-
9
' L ;
wanego punktu pracy. Przyjęto zadane położenie x10, w celu wyznaczenia wektora stanu dla punktu równowagi przyrównano pochodne zmiennych stanu z (1) do zera. Następnie, po rozwiązaniu układu równań wyznaczono analityczną zależność na wektor stanu w punkcie równowagi zdefiniowany zadanym położeniem r = x10:
zadane położenie x10, było ono stałe. Wskaźniki jakości regulacji prezentują się następująco: ISE =
(18)
Dla wszystkich eksperymentów przyjęto jednakowe wartości składowych wektora własnych macierzy procesu: s1 = −41, s2 = −50, s3 = −220. Wartości biegunów dobrano kierując się pożądanym brakiem oscylacji oraz uzyskaniem zadowalającego czasu regulacji. Na ich podstawie otrzymano wielomian charakterystyczny pożądanej macierzy stanu: s3 + 311s2 + 22 070s + 451 000 = 0.
MSEi =
εy =
W każdym z przeprowadzonych eksperymentów zadano tę samą wartość położenia kuli w stanie ustalonym, tj. r = x10 = 7,5000·10−3 [m]. Zadane położenie implikuje wektor stanu w punkcie równowagi o składowych x0 = [7,5000·10−3 0 8,0160 ·10−1]T oraz wartość sygnału sterującego podtrzymania u10 = 3,2540·10−1. Po przyrównaniu współczynników wielomianów charakterystycznych danych równaniami (16) oraz (19) wyznaczono wartości składowych wektora k = [k1 k2 k3]T. Wektor wzmocnień sprzężenia od stanu wynika z zadanego położenia oraz biegunów i ostatecznie wynosi k = [−9,7290·101 −2,2535·100 3,3180·10−1]T. Do ostatecznego prawa sterowania należy wyznaczyć zależność na sygnał m, zapewniający stabilizację zmiennych stanu na założonych wartościach. W tym celu skorzystano z uchybów zmiennych: u1 − u10 = −kT(x − x0). Otrzymano ostateczne równanie sygnału sterującego:
S1 *
O
M
I
A
R
(20)
Y
•
A
U
T
O
M
t
0
r − x1 (τ ) dτ .
(22)
1 M
M
∑ (xˆ (k ) − x (k ))
2
+ i
i
∑ ∑
,
(23)
k =1
M k =1 M k =1
(24)
yˆ1 (k ) − y1+ (k ) y1 (k ) − y1+ (k )
,
(25)
#
W przeprowadzonych na obiekcie testach porównano jego zachowanie przy pobudzeniu go zadanym sygnałem położenia kuli x10 przy sprzężeniu od pomiarów oraz od estymatora EKF. Do wzorcowego wektora pomiarowego y+ dodano w realizacji z rys. 3 stochastyczne zakłócenie z, zdefiniowane odchyleniem standardowym dla pomiarów poszczególnych zmiennych stanu. Otrzymano tym samym wektor y, przenoszony na regulator w eksperymencie ze sprzężeniem od pomiarów. Sygnały pomiarowe oznaczone jako y+, ŷ charakteryzują odpowiednio ich wzorcową wartość oraz estymatę – zgodnie z tab. 1. Przyjęto następujące odchylenia standardowe zakłóceń pomiarowych:
+
P
∫
S1H1 & # # #
Podstawowym kryterium interpretacji otrzymanych wyników eksperymentów pod kątem jakości regulacji oraz estymacji jest ocena przebiegów czasowych zmiennych stanu. W celu oceny jakości regulacji i estymacji bazujących na obiektywnym kryterium (liczbowym), dla przeprowadzonych eksperymentów wyznaczono wskaźniki jakości. Jakość regulacji oceniono wskaźnikami bazującymi na uchybie położeniowym, tj. e = r − x1. Zależnie od typu sprzężenia do regulatora w danym eksperymencie mogły być doprowadzone zaszumione pomiary y lub ich estymaty ŷ, gdzie do obliczeń jako x1 brano ich pierwszą składową – położenie. Dla sprzężenia od pomiarów wskaźniki obliczane były na podstawie sygnału zaszumionego, a dla sprzężenia od EKF – na podstawie estymaty pierwszej składowej wektora x̂. Sygnałem r było
10
(21)
gdzie M oznacza liczbę próbek zebranych danych pomiarowych. Horyzont czasowy dla przeprowadzanego eksperymentu wynosi w takim wypadku t = MTp, gdzie Tp to okres pozyskiwania danych pomiarowych.
μ
M1 * Q
dτ ,
RMSEi = MSEi ,
(19)
u1 = −k Tx + k Tx 0 + u10 .
2
1
W równaniach (21) i (22) symbolem t występującym w górnej granicy całkowania oznaczono czas przeprowadzanego eksperymentu. Jakość estymacji oceniono wskaźnikami: RMSE (ang. Root Mean Squared Error), który obliczono na podstawie pierwiastka z kwadratu błędu estymacji, osobno dla każdej zmiennej stanu. Ponadto użyto wskaźnik ey, będący ilorazem sum błędów bezwzględnych estymacji i pomiaru z każdego kroku. Tym wskaźnikiem można łatwo ocenić poprawność estymacji, ponieważ dla ey d 1 estymaty z danych kroków będą obarczone mniejszym błędem względem rzeczywistego pomiaru niż jego zaszumione wartości. Przy obliczaniu ey bazowano jedynie na położeniu, czyli sterowanej wielkości, aby dokonać jak najdokładniejszej oceny estymacji pod jej kątem. Przyjęte wskaźniki jakości estymacji prezentują się następująco:
Na podstawie wektora stanu w punkcie równowagi (17) oraz przyrównanych pochodnych zmiennych stanu do zera, wyznaczono wartość sygnału sterującego podtrzymania u10 z zależności: x 30 − ci . ki
t
0
IAE =
(17)
u10 =
∫ (r − x (τ ))
(26)
stąd ich sygnał, dla i-tego pomiaru (i = {1, 2, 3}), opisuje zależność W tab. 3 oraz 4 w drugim wierszu podano przyjmowane w danym teście wartości wektora sz − jego bazowe wartości z (26) przeskalowane przez współczynnik lub wyzerowane. Dla obu realizacji sprzężenia zwrotnego sprawdzono zachowanie obiektu przy różnych wartościach odchyleń standardowych szumów pomiaroA
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
10-3
15
0.01 10
0.008 0.006
5
0.004 0
0.002
-5 0
0 0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.5 0.2 0.1 0
0 -0.1 -0.2
-0.5 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
-0.3 0
2
1.5 1 1
0.8 0.6
0.5
0.4 0.2
0
0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0
Rys. 4. Przebiegi sygnałów uzyskane w trakcie eksperymentów (dla 1,0σz oraz 0,2σz) Fig. 4. Signals time charts obtained during experiments (for 1.0σz and 0.2σz)
Tabela 3. Zestawienie wskaźników jakości dla eksperymentów ze sprzężeniem od pomiarów Table 3. The values of quality indices for experiments with feedback from measurements Poziom zaszumienia Wskaźniki jakości
1,0sz
0,2sz
0,1sz
0sz
ISE
3,8053 · 10−5
1,4120 · 10−6
1,0532 · 10−6
6,1768 · 10−7
IAE
6,7000 · 10−3
1,2000 · 10−3
9,5912 · 10−4
4,4573 · 10−4
wych. Przyjęto odchylenia równe 100 %, 20 % i 10 % bazowej wartości, a także odchylenia zerowe, w warunkach braku szumów.
S1G1 # /L # W przypadku sprzężenia od pomiarów nie obliczano wskaźników danych równaniami (23)–(25) oraz na przebiegach czasowych nie wyświetlano estymowanej zmiennej stanu, ponieważ w tym eksperymencie nie używano EKF. Przebiegi czasowe pomiarów zmiennych stanu (zaszumionych oraz rzeczywistych) i sygnału sterującego zamieszczono na rys. 4. Obliczone wskaźniki jakości zestawiono w tab. 3. Wyświetlono przebiegi czasowe dla jedynie pierwszych dwóch krotności sz z tab. 3.
S1I1 # /L Przebiegi czasowe pomiarów zmiennych stanu (zaszumionych, rzeczywistych oraz estymowanych) i sygnału sterującego zamieszczono na rysunkach 5−8. Obliczone wskaźniki jako-
ści zestawiono w tab. 4. Na rysunkach 5−8 po prawej stronie przedstawiono przybliżenia przebiegów z lewej strony w danym przedziale czasu. Obszary przybliżeń oznaczono prostokątami.
S1J1 8
#
Analizując otrzymane rezultaty, można wnioskować o powodzeniu implementacji sterowania – końcowe wartości wskaźników jakości, biorąc pod uwagę rzędy wielkości zmiennych stanu (dla obu realizacji sprzężenia zwrotnego), były niewielkie. Zauważalne są znacznie mniejsze wartości wskaźnika ISE od IAE. Różnice wynikają z faktu, iż przy obliczaniu ISE stosuje się kwadrat wartości uchybu, przez co większe błędy implikują bardziej dotkliwe kary, a bliskie zeru są praktycznie odrzucane. Natomiast w przypadku wskaźnika IAE bazującego na wartości bezwzględnej uchybu, występuje liniowy wzrost kary przy liniowym wzroście uchybu – błędy bliskie zeru nie mogą być pomijane [7]. Tę zależność przedstawiono na rys. 9.
11
' L ;
Tabela 4. Zestawienie wskaźników jakości dla eksperymentów ze sprzężeniem od EKF Table 4. The values of quality indices for experiments with feedback from EKF Poziom zaszumienia Wskaźniki jakości
1,0sz
0,2sz
0,1sz
0sz
ISE
2,5650 · 10−6
1,0400 · 10−6
1,0670 · 10−6
5,5520 · 10−7
IAE
1,7000 · 10−3
1,0000 · 10−3
1,0000 · 10−3
3,7560 · 10−4
RMSE1
6,8229 · 10−4
3,3513 · 10−4
2,7749 · 10−4
1,9743 · 10−4
RMSE2
8,5900 · 10−2
6,6700 · 10−2
6,4900 · 10−2
6,1200 · 10−2
RMSE3
6,0400 · 10−2
3,2800 · 10−2
2,6100 · 10−2
1,8300 · 10−2
ey
6,6960 · 10−1
6,5380 · 10−1
6,7310 · 10−1
—
0.015
0.01
0.01
0.008
0.005 0.006 0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
0.5 0.2
0
0
-0.2 -0.5 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
1 1 0.8 0.5 0.6 0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
1
0.8 0.6
0.5
0.4 0.2
0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
0 1.6
2
Rys. 5. Przebiegi sygnałów uzyskane w trakcie eksperymentów (dla 1,0σz) Fig. 5. Signals time charts obtained during experiments (for 1.0σz)
W przebiegu kar dla wskaźników jakości IAE oraz ISE (rys. 9), dla lepszej widoczności tendencji przebiegów funkcji kar, przyjęto rozdzielczość uchybu wynoszącą 2,0000 · 10−2. W przeprowadzonych eksperymentach wartości uchybów były znacząco mniejsze, tj. ich wartość średnia była dwa rzędy wielkości mniejsza od rozdzielczości na osi odciętych. Kluczową obserwacją jest stałe wytrącenie kuli z otoczenia punktu równowagi widoczne na rys. 4 – przebieg czasowy położenia dla maksymalnego szumu pomiarowego, gdy do regulatora wchodził sygnał sprzężenia od pomiarów. Dobrane odchylenie standardowe szumu pomiarowego położenia okazało się na tyle duże, że lewitująca kula wypadła poza zakres, dla którego zostały wyznaczone parametry obiektu dane w tab. 2. Parametry obiektu wyznaczono zgodnie z procedurą podaną
12
P
O
M
I
A
R
Y
•
A
U
T
O
M
w pracy [2]. Zaplanowano eksperymenty w przedziale wysokości < 5,0000 · 10−3 : xd > [m], zatem w tym obszarze aproksymacja parametrów FemP1, FemP2, ci, ki jest poprawna. Dla położeń kuli znacznie mniejszych od 5,0000 · 10−3 [m] wartości współczynników przestały być zgodne z wyznaczonymi, co skutkowało błędnym przeliczaniem wartości x30, u10 w równaniu (17) oraz w rezultacie w (18). Niepoprawne wyznaczenie trzeciej składowej wektora stanu oraz sygnału sterującego w punkcie równowagi przekłada się na błędne przeliczanie sygnału sterującego z (20), którego wartości były za duże. W wyniku tego kula została na stałe przyciągnięta do elektromagnesu znajdującego się na górze. Wskazują na to pomiary położenia x1 oscylujące wokół wartości zerowej, a z rys. 2 wynika, że zerowemu położeniu odpowiada przyleganie do górnego elektromagnesu. A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
0.009 0.01 0.008 0.005
0.007
0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.006 1.6
0.2
0.1
0
0
-0.2
-0.1
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
1.61
1.62
1.63
1.64
1.65
1.66
1.67
1.68
1.69
1.7
0.9 1 0.8 0.5 0.7 0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.6 1.6
1 0.5 0.4 0.5
0.3 0.2
0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
Rys. 6. Przebiegi sygnałów uzyskane w trakcie eksperymentów (dla 0,2σz) Fig. 6. Signals time charts obtained during experiments (for 0.2σz)
0.008 0.01 0.0075 0.007
0.005
0.0065 0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
0.2
0.1
0
0
-0.2
-0.1
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1
1.6
0.8 0.75
0.5
0.7 0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
1 0.5 0.4 0.5 0.3 0.2 0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1.6
Rys. 7. Przebiegi sygnałów uzyskane w trakcie eksperymentów (dla 0,1σz) Fig. 7. Signals time charts obtained during experiments (for 0.1σz)
13
' L ;
Początkowo przyjęto obliczanie jednej wartości wskaźnika MSE, wyrażonej jako średnia arytmetyczna błędów estymacji wszystkich zmiennych stanu. Ze względu na fakt, iż wartości x1–x3 mają różne rzędy wielkości, wpływ błędów estymacji położenia na wartość wskaźników średniokwadratowych był praktycznie pomijany na rzecz prędkości kuli i prądu. Ostatecznie średniokwadratowe wskaźniki jakości estymacji obliczono osobno dla każdej zmiennej stanu. W przypadku eksperymentów przy sprzężeniu od EKF, przebiegi czasowe zmiennych stanu przedstawiono na rys. 5–8. Na przebiegu położenia (x1) dla maksymalnego szumu pomia-
rowego (1,0sz), pomimo jego identycznej wartości jak przy sprzężeniu od pomiarów, sygnały wchodzące do regulatora zostały odszumione wystarczająco, aby kula nie została wytrącona z położenia równowagi do końca eksperymentu. Jest to ewidentna zaleta stosowania algorytmu EKF przy realizacji sprzężenia od stanu, w warunkach zakłóconych pomiarów. Mniejsze poziomy zakłóceń pomiarowych (0,1sz oraz 0sz) nie miały dużego wpływu na pominięte przebiegi czasowe zmiennych stanu i sterowania przy sprzężeniu od pomiarów. Były one bardzo zbliżone do przebiegów otrzymanych przy zastosowaniu estymacji stanu z rys. 8. Kolejnym faktem wskazującym na przewagę sprzężenia od estymowanego stanu są znacząco odszumione pomiary dla pozostałych krotności wektora odchyleń standardowych szumów pomiarowych sz, co można zaobserwować na rys. 6–7. Kolorem jasnoszarym przedstawione zostały sygnały, które trafiłyby do regulatora w przypadku sprzężenia od pomiarów, a kolorem szarym – estymata zmiennych stanu. Wzorcowe sygnały pomiarowe przedstawione zostały kolorem czarnym. Zaszumienie sygnałów x̂ jest zauważalnie mniejsze niż w przypadku sygnału pomiarowego, co przekłada się na przebieg położenia kuli bliższy jego zadanej wartości oraz mniejszą amplitudą oscylacji względem przebiegów przedstawionych na rys. 4. Zmniejszeniu wartości uchybów w danym kroku przy sprzężeniu od EKF dowodzą wskaźniki jakości regulacji zestawione w tab. 3 oraz tab. 4. Wyjątkiem od zauważonej tendencji są wskaźniki ISE oraz IAE, dla szumów pomiarowych o odchyleniach standardowych równym 0,1sz, których wartości końcowe okazały się być mniejsze dla sprzężenia od pomiarów. W pozostałych przypadkach wskaźniki przemawiają na korzyść realizacji sprzężenia od estymowanego stanu. Powstała nieścisłość związana ze wskaźnikami jakości regulacji spowodowana została faktem, iż 0,1sz to na tyle małe wartości odchyleń standardowych szumów, że nie wpływały one znacząco na regulację ze sprzężeniem od pomiarów. Dodatkowo, dzięki szumom o minimalnie większej amplitudzie oscylacji względem zastosowania EKF wartość położenia wchodząca na regulator była częściej bliższa wartości zadanej r niż odszumiona, której składowa stała była minimalnie niższa, co skutkowało przeliczaniem większych uchybów w każdym kolejnym kroku. W efekcie przełożyło się to na ich większą sumę końcową. Opisywane zjawisko przedstawione zostało na rys. 10. Odnosząc się do obliczonych wskaźników jakości estymacji danych w tab. 4, najmniejszymi wartościami charakteryzuje się wskaźnik RMSE1. Jest to spowodowane faktem, iż zakres położeń osiąganych przez kulę, a zarazem jego estymat oraz
0.01
0.005
0 0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0.2
0
-0.2 0
1
0.5
0 0
1
0.5
0 0
Rys. 8. Przebiegi sygnałów uzyskane w trakcie eksperymentów (dla 0σz) Fig. 8. Signals time charts obtained during experiments (for 0σz)
0.1 0.09 0.08
0.011
0.07 0.01 0.06 0.009
0.05 0.04
0.008
0.03 0.007
0.02 0.01
0.006
0 -0.1 -0.08 -0.06 -0.04 -0.02
0
0.02 0.04 0.06 0.08
0.1
0.005 0
Rys. 9. Wykresy funkcji kar wskaźnika (a) IAE – L1 oraz (b) ISE – L2 w zależności od uchybu Fig. 9. Graphs of the penalty functions of the (a) IAE – L1 and (b) ISE – L2 indices depending on the error
14
P
O
M
I
A
R
Y
•
A
U
T
O
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Rys. 10. Przebieg czasowy położenia kuli przy zakłóceniach stochastycznych o wartości 0,1σz Fig. 10. Time plot of the ball position with stochastic disturbances of 0.1σz
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
pomiarów jest znacznie mniejszy – różnica dwóch rzędów wielkości względem prędkości oraz prądu płynącego przez górną cewkę. Wskaźniki RMSE2 oraz RMSE3, ze względu na zbliżony przedział wartości, w jakich zmieniają się pomiary i estymaty drugiej oraz trzeciej zmiennej stanu, są do siebie zbliżone, tj. są tego samego rządu wielkości. Dla każdego wskaźnika średniokwadratowego możliwa do zauważenia jest tendencja, iż zmniejszeniu szumów pomiarowych towarzyszy zmniejszanie się kwadratów różnicy estymat danej zmiennej stanu oraz ich wzorcowych pomiarów. Wartości wskaźnika ey wykazują poprawność implementacji algorytmu, ponieważ w przypadku położenia suma błędów bezwzględnych estymacji jest mniejsza niż suma błędów pomiarów (względem pomiarów niezaszumionych).
T1 " Przedstawiono możliwość zredukowania wpływu zakłóceń stochastycznych na jakość regulacji rzeczywistym obiektem dzięki zaimplementowaniu algorytmu rozszerzonego filtru Kalmana. W eksperymentach porównano działanie nieliniowego obiektu w układzie regulacji przy sterowaniu ze sprzężeniem od stanu oraz lokowaniem biegunów z zaszumionym oraz estymowanym wektorem pomiarowym. Jednym z kluczowych czynników dla estymacji stanu algorytmem EKF jest dobór wariancji szumów pomiarowych oraz wewnętrznych leżących na diagonalach macierzy R i Q (13). Prawidłowy ich dobór zapewnia możliwość otrzymania estymaty wektora stanu bliższej wartościom prawdziwym niż zaszumiony pomiar. Przy doborze wariancji szumów pomiarowych dla każdej zmiennej stanu istotne jest zwrócenie uwagi na otrzymywane w pomiarach rzędy wielkości i różnice między nimi. Otrzymane wyniki eksperymentów są podstawą do stwierdzenia, iż zastosowanie algorytmu EKF przy występowaniu stochastycznych zakłóceń pomiarowych pozwala zredukować ich wpływ na jakość regulacji. W skrajnych przypadkach podtrzymując obiekt w otoczeniu zadanej pozycji (w przeciwieństwie do sprzężenia od pomiarów). W przyszłości planowana jest kontynuacja badań nad możliwością estymowania przez algorytm EKF wektora stanu na podstawie przetwarzania zaszumionego pomiaru jednej zmiennej. Planowane jest również rozszerzenie aproksymacji parametrów obiektu do całego zakresu położeń lewitującej kuli w celu umożliwienia implementacji sterowania z użyciem dwóch elektromagnesów oraz zadawania różnorodnych trajektorii, a także implementacja bardziej zaawansowanych metod estymacji i sterowania.
$ ' 1. Abdalhadi A., Wahid H., Control approaches for magnetic levitation systems and recent works on its controllers’ optimization: A review. „Applications of Modelling and Simulation”, Vol. 5, 2021, 173–183. 2. Balko P., Rosinova D., Modeling of magnetic levitation system. [In:] 21st International Conference on Process Control (PC), IEEE, 2017, 252–257, DOI: 10.1109/PC.2017.7976222. 3. Bania P., Model i sterowanie magnetyczną lewitacją. AGH, Wydział EAIiE, Katedra Automatyki, Kraków, 1999. 4. Chamraz Š., Huba M., Žakova K., Stabilization of the magnetic levitation system. „Applied Sciences”, Vol. 11, No. 21, 2021, DOI: 10.3390/app112110369. 5. Chang C.-B., Tabaczynski J., Application of state estimation to target tracking. „IEEE Transactions on automatic control”, Vol. 29, No. 2, 1984, 98–109, DOI: 10.1109/TAC.1984.1103466.
6. Jose de Jesus Rubio, Zhang L., Lughofer E., Cruz P., Alsaedi A., Hayat T., Modeling and control with neural networks for a magnetic levitation system. „Neurocomputing”, Vol. 227, 2017, 113–121, DOI: 10.1016/j.neucom.2016.09.101. 7. Horla D., Experimental results on actuator/sensor failures in adaptive gpc position control. „Actuators”, Vol. 10, No. 3, 2021, 2076–0825, DOI: 10.3390/act10030043. 8. Hu X., Feng F., Liu K., Zhang L., Xie J., Liu B., State estimation for advanced battery management: Key challenges and future trends. „Renewable and Sustainable Energy Reviews”, Vol. 114, 2019, DOI: 10.1016/j.rser.2019.109334. 9. Hypiusova M., Rosinova D., Kozakova A., Comparison of state feedback controllers for the magnetic levitation system. [In:] 2020 Cybernetics & Informatics (K&I), IEEE, 2020, DOI: 10.1109/KI48306.2020.9039889. 10. Jasik D., Wajnert D., Badania porównawcze liniowych regulatorów dla lewitacji magnetycznej. „Pomiary Automatyka Robotyka”, R. 22, Nr 3, 2018, 51–59, DOI: 10.14313/PAR_229/51. 11. Kalman R.E., A new approach to linear filtering and prediction problems. „Journal of Basic Engineering”, Vol. 82, No. 1, 1960, 35–45, DOI: 10.1155/1.3662552. 12. Larson R.E., Tinney W.F., Hajdu L.P., Piercy D.S., State estimation in power systems Part II: Implementation and applications. „IEEE Transactions on Power Apparatus and Systems”, Vol. PAS-89, No. 3, 1970, 353–363, DOI: 10.1109/TPAS.1970.292712. 13. Li S., Wang Y., Yang M., Sun Y., Wu F., Dai J., Wang P., Gao M., Investigation on a broadband magnetic levitation energy harvester for railway scenarios. „Journal of Intelligent Material Systems and Structures”, Vol. 33, No. 5, 2022, 653–668, DOI: 10.1177/1045389X211026383. 14. Lin C.-M., Lin M.-H., Chen C.-W., SoPC-based adaptive PID control system design for magnetic levitation system. „IEEE Systems Journal”, Vol. 5, No. 2, 2011, 278–287, DOI: 10.1109/JSYST.2011.2134530. 15. Lin F.-J., Shieh H.-J., Teng L.-T., Shieh P.-H., Hybrid controller with recurrent neural network for magnetic levitation system. „IEEE Transactions on Magnetics”, Vol. 41, No. 7, 2005, 2260–2269, DOI: 10.1109/TMAG.2005.848320. 16. Meriem M., Bouchra C., Abdelaziz B., Sabri Omar Boukherouaa Jamal, Nazha C., et al. Study of state estimation using weighted-least-squares method (WLS). [In:] International Conference on Electrical Sciences and Technologies in Maghreb (CISTEM), IEEE, 2016, DOI: 10.1109/CISTEM.2016.8066820. 17. Michalski J., Kozierski P., Ziętkiewicz J., Comparison of particle filter and extended Kalman particle filter, „Studia z Automatyki i Informatyki”, Vol. 42, 2017, 43–51. 18. Michalski J., Kozierski P., Ziętkiewicz J., The new approach to hybrid Kalman filtering, based on the changed order of filters for state estimation of dynamical systems. Poznań University of Technology Academic Journals. Electrical Engineering, Vol. 97, 2019, 181–190, DOI: 10.21008/j.1897-0737.2019.97.0016. 19. Naz N., Malik M.B., Zaheer A., Salman M., Sampled data sliding mode control of magnetic levitation system using extended Kalman filter estimator. [In:] 8th EUROSIM Congress on Modelling and Simulation, IEEE, 2013, 208–213, DOI: 10.1109/EUROSIM.2013.47. 20. Sain D., Swain S.K., Mishra S.K., TID and I-TD controller design for magnetic levitation system using genetic algorithm. „Perspectives in Science”, Vol. 8, 2016, 370–373, DOI: 10.1016/j.pisc.2016.04.078.
15
' L ; tion system. „Sādhanā”, Vol. 44, No. 5, 2019, 1–13, DOI: 10.1007/s12046-019-1074-4.
21. Shih K.-R., Huang S.-J., Application of a robust algorithm for dynamic state estimation of a power system. „IEEE Transactions on Power Systems”, Vol. 17, No. 1, 2002, 141–147, DOI: 10.1109/59.982205. 22. A Vimala Starbino and S Sathiyavathi. Real-time implementation of SMC–PID for magnetic levita-
%
Q
23. Inteco Ltd. Magnetic levitation system 2em – user’s manual. 2008.
F " * G % F H 6 # #' This paper presents the possibility of reducing impact of stochastic disturbances on the quality of control by implementation of state estimation using the extended Kalman filter algorithm. Experiments were carried out on the Inteco magnetic levitation laboratory system, which mathematical model is nonlinear. A control method with the use of a state vector and a pole placement algorithm was adopted for the model which was linearized at the selected working point. For different levels of noise in the measurement signal, the operation of the system with a feedback from the measured and estimated state was tested. In order to assess the regulation, the quality of the algorithm was verified for both implementations of the feedback. The obtained time plots of each state variable were compared and the calculated integral quality indices, based on the control error, were compared. The quality of the estimation was assessed on the basis of the following mean square error and based on the errors between estimation and measurements indices. The controller was synthesized on thebasis of the continuous model, and then its discrete form was numerically implement as the extender Kalman filter algorithm. The executive blocks were synchronized with the selected sampling period. The results of the performed research allow to conclude about the advantage of control in the system in which the information about the state vector from the estimation is taken, in comparison with the direct feedback without Kalman filtering. KeywordsF * # % *# E % % A @ # # F %6
! " #
$ ORCID: 0000-0002-5436-5676
% !$* ORCID: 0000-0002-5191-0886
% 0 4 6 % * * % + ; . . - 6 I 6 + J K % @ A # + B * %> I % 6 +
% % * * % + ; # 0 4 6 # . > . - <6 > - 6 I 6 + # + > # % B @ A > 6 % > % 6 6
%
# &
$ ORCID: 0000-0002-1666-7331
$* ORCID: 0000-0001-8777-6132
0 6 % >% % . > . - 6 I 6 + J > K# % % @ A @ I > * # + B I I * <6 - I B % % > * % * # % @ I + 6 6 I
0 . . - L + 6 - % 6 + J % F I * 6 * K I* J # K
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 17–22, DOI: 10.14313/PAR_245/17
N N * F 0 % O % .0 N # $ ( ! & # . P 0 % # Q % =)# '&>&(R L% # . %
Abstract: The increasing development of Autonomous Underwater Vehicles (AUVs) with varying levels of autonomy can be seen globally. The paper is devoted to the new AUV called PAST being developed and built within the Polish development project entitled „Development of the underwater autonomous transport system” (no. POIR.01.01.01-00-0893/20). Mainly, the paper focuses on high-level control of PAST AUV devoted to controlling along the desired trajectory. It demands a set of tuned controllers of advanced velocity, course, depth, and trim. The trajectory tracking algorithm should be implemented and verified for different trajectories set in practice. At the beginning of the article, an introduction to the research is inserted. Then, the following scientific issues are presented: the mathematical model of AUV motion, high-level control structure, and the trajectory tracking algorithm. Next, the results of numerical research in the Matlab environment are presented. In the end, the conclusions for future research are formulated. 9 F *# * > # %
1. Introduction Autonomous Underwater Vehicles (AUVs) are robots that can perform many different underwater missions, both civilian and military. Civilian usage of AUV is mainly connected with various inspections of the aquatic environment, especially for oceanography and marine biology purposes [2, 3]. Considering military applications of AUV, the following missions should be mentioned: mine countermeasure, anti-submarine warfare, and Intelligence, Surveillance, and Reconnaissance (ISR). The innovative underwater autonomous vehicle PAST will transport different payloads from starting to target waypoints. According to the desired purposes of project no. POIR.01.01.01-00-0893/20, AUV PAST’s essential function will be transporting various types of cargo. The underwater autonomous transport system will be equipped with wireless communication and control systems. It will be capable of independent (autonomous) motion to the user-programmed location on the surface or underwater and detect and avoid obstacles on its route. The offshore wind energy market and the offshore mining installations market will be the most important target group for the project results. PAST will enable faster, safer, and cheaper
# ) F 4 F A # $ *% % (M !' (!(( # % % &? !) (!(( !
execution of works and inspections of underwater offshore facilities: drilling platforms, underwater installations, dams, locks, bridges, docks. The underwater autonomous transport system will be used to construct and inspect offshore wind farms, underwater ICT networks, and pipelines. In addition, it is required to deliver various types of tools, equipment, and a supply of air cylinders for divers during underwater works. In Figure 1, the initial 3D project of PAST is illustrated. The vehicle consists of a transport compartment in the middle with two cylindrical containers with batteries and power electronics ended with the screw propellers. Such construction can be easily changed with the larger or smaller source of electric energy and/or propeller producing the larger or smaller thrust. Moreover, three manoeuvre thrusters are attached to the transport compartment. The microprocessor and sensor systems are located in the bow part of the middle compartment, while the stern part of this compartment is destined for holding the transported load. To counteract no neutral buoyancy of the shipments, additional ballast tanks are planned to be used. The PAST is planned to be an autonomous vehicle capable of moving across the desired trajectory with obstacle detection and avoidance, which demands the implementation of precise underwater navigation and autonomy algorithms [5, 6]. Moreover, the high-level control system requires an earlier set of the AUV motion parameters controllers. Usually, control of the following three main parameters is essential: an advance velocity, a course angle and a trim angle. In work [9], the mentioned controllers for the AUV PAST are described. In that case, the controller’s settings were tuned using a Genetic Algorithm (GA). Also, different optimisation methods can be used for this purpose, e.g. a Particle Swarm Optimization (PSO) [7].
17
Trajectory Tracking Control of Autonomous Underwater Vehicle Called PAST Mv + D (v ) v + g (η ) = τ
a)
here: u – vector of linear and angular velocities in the movable system, h − vector of vehicle position coordinates and its Euler angles in the immovable system, M – matrix of inertia (the sum of the matrices of the rigid body and the added masses), D(u) – hydrodynamic damping matrix, g(h) – vector of restoring forces and moments of forces of (gravity and buoyancy), t – vector of control signals (the sum of the vector of forces and moments of force generated by propulsion system tp and by environmental disturbances td).
b)
The assumptions presented earlier in this section cause simplification of the matrices shown in equation (1) to the main diagonal. The details are included in [1, 8]. The left side of the equation (1) includes forces and moments of force caused by the following physical phenomena: the vehicle’s body’s inertia and the added masses of a viscous liquid, hydrodynamic dumping water environment, a balance of gravity and buoyancy. In contrast, the right side of equation (1) represents the vector of forces and moments of force acting on the vehicle generated by a propulsion system and additional environmental disturbances (under the water’s surface, especially a sea current). The vector of forces and moments of force tp generated by the propulsion system consists of the following elements:
Source: project no. POIR.01.01.01-00-0893/20 Fig. 1. 3D project of the AUV PAST: a) the top view, b) the main dimensions Rys. 1. Trójwymiarowy projekt AUV PAST: a) widok z góry, b) podstawowe wymiary
tp = [X, Y, Z, K, M, N]
The calculation of the vector of force and moments of force generated by propulsion should consider the specific configuration of the propulsion system [4]. In Fig. 1, the 3D design of AUV PAST with the propellers is illustrated. The vehicle is driven by two main thrusters mounted on its stern (acting in the horizontal plane), three manoeuvre thrusters installed on the stern, and two others mounted in the bow part of the vehicle (operating in the vertical plane). Two main thrusters produce thrust in the longitudinal axis of symmetry which is responsible for the advanced velocity of the vehicle. Moreover, the difference in generated thrusts makes a moment of force relative to the vertical axis of symmetry, changing the PAST course. Because of locating the main thrusters in an extreme position, it is expected to receive good manoeuvrability on the horizontal surface. Three manoeuvre thrusters acting on the vertical surface enable us to generate thrust in the vertical axis of symmetry, i.e., submerging and emerging vertically. Moreover, the difference in generated thrusts allows inducing moments of force relative to the longitudinal and lateral axes of symmetry, i.e., to change respectively roll and trim of the PAST. The most important seems to be trim change which enables to control depth.
G1 & ! To model the motion of the AUV PAST, the classical model of a rigid body with three planes of symmetry moving in six degrees of freedom at a low speed in the viscous liquid was applied [1]. The details of the model and all results of the identification of the PAST motion model are included in [8]. In the further part of this section, only the model’s main features necessary for understanding the presented results of the numerical research are inserted. The vehicle’s motion is described using two reference systems: (1) the movable coordinate system associated with the vehicle xoyozo and (2) the immovable coordinate system associated with the Earth xyz. The origin of the movable coordinate system O responds to the vehicle’s centre of gravity. At the same time, its axes are defined as: (1) xo is a longitudinal axis directed from the stern to the bow, (2) yo is a transverse axis directed to the starboard, and (3) zo is a perpendicular axis directed from top to bottom. Changes in the position of the movable coordinate system xoyozo are described for coordinate system xyz associated with the Earth. Because the vehicle moves at a relatively low speed, the acceleration of points on the Earth’s surface is ignored, and the coordinate system xyz is considered stationary. Therefore, the centrifugal and centripetal forces and moments of force caused by the Earth’s spin may be neglected. The movement of the AUV is described by six differential equations, represented in the compact matrix form: P
O
M
I
A
R
Y
•
A
U
T
O
M
(2)
here: X, Y, Z – the forces acting respectively in longitudinal, transverse, and vertical axes of symmetry, K, M, N – the moments of force acting relative to respectively longitudinal, transverse, and vertical axes of symmetry.
In the next section, the mathematical model is described [1]. Then, a high-level control structure with the trajectory tracking algorithm is considered. Next, the plan, assumptions and finally, results of numerical research of the PAST are presented and discussed. In the end, the conclusions and the bibliography are inserted.
18
(1)
I1 7 V 6 The high-level control is the subsystem superior to the low-level control system, which consists of the set of controllers of the main motions parameters of the AUV. The high-level control is primarily responsible for: A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
− Communication with the human operator supervising the mission being carried out; − Adjusting the configuration of the controllers depending on the task performed underwater; − Introducing the set values of the motion parameters in the specified time of the task being performed; − Enabling and disabling controllers at appropriate points of a given trajectory.
reaching a waypoint. After analysis, the following parameters were accepted for further study: 1. The maximum deflection from the trajectory dmax; 2. The average deflection from the trajectory davg; 3. The maximum time shift between the set tn and current tr times of reaching the following waypoint tmax; 4. The average time shift between the set tn and current tr times of reaching the all waypoints tavg.
In addition, the high-level control system performs the functions of registration and archiving linear and angular physical quantities describing the movement of the underwater vehicle, i.e., the vector state and vector of forces and moments of force. In the case of a control task along a given trajectory, a superior control system determines the next set of set values of motion parameters for the next waypoint at the moment of reaching the current position at a distance equal to or less than the set one distance rs from the current waypoint. When moving along the trajectory sections, the high-level control system checks whether the set motion parameters have changed due to, for example, the “pushing” effect of the sea current. If given parameters have changed by a certain range of values, they are updated. The following rules are satisfied:
It is worth mentioning that the deflection is determined as the closest distance from the gravity centre of the AUV to the trajectory in the following simulation steps. Moreover, the time of reaching the waypoint tr is determined as a time of achieving the distance rs to the waypoint, i.e., the waypoint is achieved if the AUV goes into a sphere with the radius rs and origin coordinates equal to the n-th waypoint coordinates (xn, yn, zn). Therefore, for the radius equal to 2 m and the AUV advanced velocity equal to 1 m/s, the 2 s time shift will be received.
if | us – usn | > 0.2 [m/s], then us = usn
(3)
if |ys – ysn| > 5 [deg], then ys = ysn
(4)
if | Js – Jsn| > 5 [deg], then Js = Jsn
(5)
here: us, ys, Js – current set values of respectively the advanced velocity, the course angle, the trim angle, usn , ysn, Jsn – new set values of respectively the advanced velocity, the course angle, the trim angle.
J1G1 Different test trajectories can give answers for various aspects. The PAST AUV is primarily designed for an extended mission aiming to reach the destination waypoint with transported shipment and then return to the starting waypoint, possibly with another load. This kind of mission requires a trajectory consisting of two parallel segments. Another essential issue in the AUV examination is its manoeuvrability. To check how the AUV is manoeuvrable, the trajec-
a)
To ensure reaching the waypoint in the expected time, the initial advanced velocity is 10% greater than the value resulting from the distance and time to the next waypoint. Then, after reaching the position at a distance of rs from the waypoint, the AUV reduces the motion velocity to a minimum value of 0.5 m/s to effectively perform course and/or trim manoeuvres. Depth change on the trajectory is carried out by changing the trim, which is the most effective manoeuvre for the vehicle with the elongated shape of its hull due to a decrease of hydrodynamic dumping. b)
J1 : - The AUV motion model and its low- and high-level control systems were implemented in MATLAB. The simulations were conducted with the 1/10 s time step. The description of the low-level control is included in [9], while the description of the high-level control is in the previous section. The following subsection defines the parameters for evaluating the AUV tracking along the desired trajectory. Then, the desired trajectories used in the numerical tests are presented. In the next subsection, the research results are illustrated. Finally, the discussion on these results is included.
J1H1 56 !
Each trajectory is defined as a set of waypoints with coordinates (xn, yn, zn) and a set time tn of reaching a waypoint, where n is a number of the following waypoints. Therefore, to evaluate the quality of the AUV tracking along the set trajectory, the deflection should be considered and a performed time of
Source: project no. POIR.01.01.01-00-0893/20 Fig. 2. Test trajectories for the AUV PAST: a) the long-distance trajectory, b) the trajectory demanding high manoeuvrability Rys. 2. Trajektorie testowe dla AUV PAST: a) trajektoria długodystansowa, b) trajektoria wymagająca dużej manewrowości
19
Trajectory Tracking Control of Autonomous Underwater Vehicle Called PAST tory with short segments demanding often and significant course and/or trim changes should be defined. Both trajectories examining different aspects, i.e. the long-distance trajectory (no. 1) and the trajectory demanding high manoeuvrability (no. 2), are illustrated in Figure 2. As can be seen, trajectory no. 1 consists of two segments 500 m length each with a more extended stop at the destination waypoint needed for vehicle unloading and possibly loading with another shipment. While trajectory no. 2, demanding high manoeuvreability, consists of several shorter segments with the maximal length 100 m and with 90° and more enormous changes of course and 5 m changes of depths. As mentioned earlier, the depth change is achieved using trim changes. In this simulation, the trim changes were limited to the ±10°. In both cases, the trajectories have started and ended in the same waypoint with coordinates (0, 0, 0) [m] marked by the red dot.
waypoint area are visualised in Figure 3b. The latter figure with the date shown in Table 1 enables us to see the most significant deflection from the trajectory equal to 10.68 m. This deflection was registered when the AUV reached the destination waypoint, and the starting waypoint was the goal. This deflection is connected with the AUV manoeuvre of changing course by 180° with a specific value of the advanced velocity larger than 0.5 m/s. In Figure 4, trajectories no. 2 are shown. In addition to the projection of trajectories on the vertical surface (Figure 4a) and trajectories in the space xyz (Figure 4b), effects of low-level control are visualised in Figures 4c, d, e, f, respectively the changes of the advanced velocity, the depth and the course and trim angles in time. The additional charts allow making more depth analysis. Based on Figure 4 a and Table 1, the maximal deflection from the set trajectory equal to 5.8 m can be seen. Similarly to trajectory no. 1, such large deflection is connected with the manoeuvre of significant course change, i.e., by 135° in this case. Based on Figure 4b, more significant deflections from the trajectory can be seen, especially for the motion in the horizontal plane. These deflections are correlated with the depth changes shown in Figure 4d. As can be seen, the PAST AUV needs almost 40 s for changing depth by 5 m. Such inertia is connected with the limitation of the trim changes to ±10°. Possibly, this limit can be increased two or even four times. Due to the lack of data on the manoeuvrability of the AUV prototype at this stage of the research, the safer limit was accepted. In general, an increase of trim change will result in a faster change of the AUV depth, which gives us less deflection in the horizontal plane.
J1I1 - In Figure 3, the long-distance trajectories are shown. During tracking this trajectory, the AUV had to go to the destination waypoint with coordinates (500, 500, 0) [m] and return to starting waypoint (0, 0, 0) [m], i.e., it had to move on the vertical surface xy. The desired trajectories are marked by a blue line, while a red line marks the real ones. In addition to the whole trajectories (Figure 3a), the selected trajectory segments in the destination a)
Table 1. Evaluation of the AUV tracking along test trajectories no. 1 and 2 Tabela 1. Ocena śledzenia przez AUV trajektorii testowych nr 1 i 2 dmax
davg
tmax
tavg
[m]
[m]
[s]
[s]
1
10.69
3.55
1.8
1.8
2
5.8
2.03
5.4
3.67
Number of trajectory
Source: Project no. POIR.01.01.01-00-0893/20
4.4. Discussion In the project’s first stage, the following milestone was formulated: deflection from the set trajectory of the simulated PAST model moving along a straight segment of 500 m, using selected low-level regulators. It was assumed that the deflection from the trajectory would be no more than 20 m in the horizontal plane and 5 m in the vertical plane. As is shown in the previous subsection, smaller deflections from the trajectory were obtained. Moreover, there are possible improvements to receive a more accurate control system of the PAST AUV. If it is desired to reduce the deflection from the trajectory in the space of the destination waypoint, the AUV advanced velocity should be decreased even to zero. The driving system of the PAST enables to change course almost in the same place. Considering the observed deflections in the vertical surface, the increase of the trim change limit can be introduced. The additional improvement of the vehicle behaviour along the desired trajectory may be observed using the path following instead of the trajectory tracking.
b)
Source: project no. POIR.01.01.01-00-0893/20 Fig. 3. Visualisation of the set (blue line) and actual (red line) trajectory no. 1: a) projection of trajectory on the vertical surface, b) selected segment of the trajectory in the area of the destination waypoint Rys. 3. Wizualizacja zadanej (linia niebieska) i aktualnej (linia czerwona) trajektorii nr 1: a) rzut trajektorii w płaszczyźnie pionowej, b) wybrany odcinek trajektorii w obszarze punktu docelowego
20
P
O
M
I
A
R
Y
•
A
U
T
O
M1 Designed and implemented in MATLAB mathematical model of the motion of underwater vehicle PAST [8], low-level conM
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
a)
b)
c)
d)
e)
f)
Source: project no. POIR.01.01.01-00-0893/20 Fig. 4. Visualisation of the set (blue line) and real (red line) trajectory no. 2: a) projection of trajectory on the vertical surface, b) trajectory in the space, the changes of c) advanced velocity, d) depth, e) course, f) trim in time Rys. 4. Wizualizacja zadanej (linia niebieska) i aktualnej (linia czerwona) trajektorii nr 2: a) rzut trajektorii w płaszczyźnie pionowej, b) trajektoria w czasie, zmiany c) prędkości postępowej, d) głębokości, e) kursu, f) trymu w czasie
trol [9] and finally described in this paper, high-level control allow us to make numerical tests of the PAST AUV tracking across test trajectories. The research enables confirming that the partial milestone of the project was achieved and formulating several proposals of the control system improvements. Their implementation and verification can be made after receiving the initial results of the PAST prototype operation in the water environment. During the following research, the improvements mentioned above in the PAST control system will be verified initially using the verified simulation model and then the prototype of the PAST AUV.
The research results presented in the paper were achieved within the project entitled “Development of the underwa-
ter autonomous transport system” (no. POIR.01.01.01-000893/20), co-financed by the Polish National Centre of Research and Development.
$ ' # 1. Fossen T., Handbook of Marine Craft Hydrodynamics and Motion Control, John Wiley & Sons, 2011. 2. Kondeti L., Review of Autonomous Underwater Vehicles, [In:] Autonomous Vehicles, Intech, 2018. 3. Ozgur Y., Bulent O., Yilmaz A., A review on motion control of the Underwater Vehicles, Proceedings of 6th International Conference on Electrical and Electronics Engineering, ELECO 2009, DOI: 10.1109/ELECO.2009.5355247. 4. Praczyk T., Szymak P., Naus K., Pietrukaniec L., Hożyń S., Report on research with biomimetic autonomous under-
21
Trajectory Tracking Control of Autonomous Underwater Vehicle Called PAST water vehicle – low level control, “Scientific Journal of Polish Naval Academy”, Vol. 212, No. 1, 2018, 105–123, DOI: 10.2478/sjpna-2018-0006. 5. Praczyk T., Szymak P., Naus K., Pietrukaniec L., Hożyń S., Report on research with biomimetic autonomous underwater vehicle – navigation and autonomous operation, “Scientific Journal of Polish Naval Academy”, Vol. 213, No. 2, 2018, 53–67, DOI: 10.2478/sjpna-2018-0013. 6. Sandeep J., Mahender S., A Review Paper on: Autonomous Underwater Vehicle, “International Journal of Scientific and Engineering Research”, Vol. 6, 2015, 38–40.
7. Szymak P., Piskur P., Using Particle Swarm Optimization for Tuning Course Controller of Biomimetic Underwater Vehicle, Proceedings of 8th International Maritime Science Conference / ed. Špiro Ivoševic, Pero Vidan, Kotor: University of Montenegro; University of Split, 2019, 255–262. 8. Szymak P., Piskur P., Piątek P., Muchowski J., Trawiński S., Modeling and simulation of innovative autonomous underwater vehicle PAST, Nase More Conference, 2021, 332–346. 9. Szymak P., Low-Level Control of Unmanned Marine Vehicle PAST, Proceedings of the Polymer Diagnosis Conference, Male, 2022.
% % % .0 N % Streszczenie: Na całym świecie można zaobserwować rosnący rozwój autonomicznych pojazdów podwodnych (AUV) o różnych poziomach autonomii. Artykuł poświęcony jest opracowywaniu i budowie nowego AUV o nazwie PAST w ramach polskiego projektu rozwojowego pt. „Rozwój podwodnego autonomicznego systemu transportowego” (nr POIR.01.01.01-00-0893/20). Artykuł koncentruje się głównie na wysokopoziomowym sterowaniu pojazdem PAST przeznaczonym do podążania wzdłuż pożądanej trajektorii. Wymaga to zaawansowanego zestawu dostrojonych kontrolerów prędkości, kursu, głębokości i trymu. Algorytm śledzenia trajektorii powinien być zaimplementowany i zweryfikowany dla różnych trajektorii wyznaczanych w praktyce. Na początku artykułu zamieszczone zostało wprowadzenie do badań. Następnie przedstawiono następujące zagadnienia naukowe: model matematyczny ruchu AUV, wysokopoziomową strukturę sterowania oraz algorytm śledzenia trajektorii. Następnie przedstawiono wyniki badań numerycznych w środowisku MATLAB. Na koniec formułowane są wnioski dla przyszłych badań. F % # # % % %
Piotr Szymak, Cdr., Assoc. Prof. PhD, Eng.
( ! & #$ )# *
$ *% ORCID: 0000-0002-4714-6192
$ *% ORCID: 0000-0002-9273-353X
(!!& 6 * . P 0 % J.P0K F * S > # # % # % F % # F # F T % F ; F 8 8 * * % 0 .P0 (!&?U(!&) (!&) 6 . P % 8 H F 0* ; (!!M % . H % * . P 0 % % (!&= 6 % % % * F 6 % % F N * T % % * % F 6 # % F % % # % * 6 > %
L % % F " F N > * / % * 8 % N % (!&= T % F = " 0 V . 0 * % E * % F X > Y 6 * * F (!((# > * . P 0 % T % % 6 % # * * # % % F 0 % O
22
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 23–27, DOI: 10.14313/PAR_245/23
. 0 V % . ; * O " % V % % O ! . P 0 % # Y F " % 8 8 * *# Q % =)# '&>&(R L%
# #' The article presents a laboratory stand for direct measurement of the thrust generated by the undulating propulsion system of a biomimetic underwater vehicle. The laboratory water tunnel enables research and comparison of the generated thrust with the results of the fin and fluid interaction analysis using the Particle Image Velocimetry method. The water tunnel is equipped with an industrial camera for recording changes in the position of markers highlighted with a line laser in the area of analysis. The comparison of the results obtained by the PIV method with the industrial force sensor allows for the analysis of the efficiency of the biomimetic propulsion system as a function of both design and control parameters. 9 F V % % O JV OK# Y %> ; JY ;K# . ; * O J.;OK# % 6
1. Introduction The undulating propulsion system is commonly used in newly designed biomimetic underwater vehicles, specially dedicated for autonomous missions [3, 9, 14, 15]. Biomimetic Underwater Vehicles (BUVs) are equipped with an innovative, energy-efficient driving system consisting of artificial fins [10, 11, 15]. Because these driving systems are not well developed yet, there are great possibilities to optimize them in materials and control parameters [12, 13]. However, the fluid-structure interaction is a nonlinear problem without a ready-to-use mathematical model. One of the methods widely spread for fluid-structure interaction analysis is Particle Image Velocimetry (PIV) [6]. PIV is a non-invasive image processing method to measure fluid velocity in a specific region. The cross-correlation and optical flow methods have been developed to extract velocity fields from particle images. The first method searches maximum cross-correlation between two interrogation windows of an image pair, while optical flow optimizes an objective function. The PIV technique based on machine learning [7, 8] has shown advantages like higher accuracy and higher spatial resolution. As the PIV method has become essential in the last decades, many
# ) F . . # $ *% % !& != (!(( # % % &' !R (!(( !
software packages are available. In this paper, the PIVlab under MATLAB software has been used [17]. PIVlab was initially published in 2010. Since then, 30 updates with new features or fixes have been released, based on users’ feedback and personal demands. A paper on PIVlab was published in the Journal of Open Research Software in 2014 [16] and has been cited more than 1800 times to date. The paper is organized as follows. In the next section, the BUUV is presented. Then the laboratory test stand and PIV method are described. The last section covers experimental results as well as discussion and direction of future research.
G1 $ Vehicle
The underwater vehicle used for tests is the next version of the small Biomimetic Unmanned Underwater Vehicle (BUUV) designed in 2021 during the Polish Minister of Defense competition [18] by a group of students and PhD students from the Polish Naval Academy. The propulsion system construction is based on the two flexible tail fins and two flexible side fins. The main reason for that construction is to imitate marine animal movements like a harbour seal. The propulsion system made from a flexible fin can avoid leaking electronic components inside compared to the propulsion system designed from rigid movable elements and a flexible fin at the end [1, 2, 9]. Two caudals were used to ensure the vehicle’s course stability. The thrust produced by the fin depends not only on the fin dimensions but also the frequency oscillation, angle of attack and on the fin flexibility [4, 6]. This is a challenging task for analysis due to the lack of ready to use mathematical models. In addition, the water velocity is another factor that must be taken
23
Propulsion System Analysis Based on Particle Image Velocimetry Method in Biomimetic Unmanned Underwater Vehicle into consideration, especially at a close distance to the fin as well as the at the fin’s trailing edge. Some analysis can be done using PIV method. The laboratory test stands for FSI analysis using PIV method is depicted in the next section.
and their size should not affect the fluid properties; the seed density (the number of markers in the area unit); the power of linear green laser; resolution of the image recorded by the camera (HSC); the frequency of image acquisition (fps – frames per second), the fluid velocity and area of analysis.
I1 ( ' 5Y # & &
J1 " % ! 3 #
The water tunnel presented in Fig. 1 and Fig. 2 (dimensions: 2 m length, 0.6 m width and 0.6 m depth) was designed especially for the biomimetic underwater vehicle investigation. The water tunnel has a partition for the forced flow of water upside down in one direction and downwards in the opposite direction. For illumination from different places, all the walls were made from glass. The vehicle is directly connected to the force sensor for the net thrust measurements (Fig. 2). The surface of the analysis is highlighted by a linear green laser with a power of 1 W. The camera with a slow-motion option is mounted at some distance to the highlighted surface for recording the highlighted plate. The camera is put perpendicular to the highlighted surface, and it records the motion of particles. For the calibration process of the laboratory test stand, the following factors were taken into consideration: the distance between the camera and the region of analysis; the marker parameters
The PIV analysis typically consists of three main steps (image pre-processing, image evaluation and post-processing) [17]. The workflow is presented in the paper [16], starting with image input and pre-processing options and then continuing to the image evaluation/PIV analysis, post-processing and data exploration. The PIV method was used for vehicle side fins analysis (Fig. 2). In Fig. 3, the image is presented during the side fin movement. The differences between Fig. 3 and Fig. 4 are due to the different cameras used. In Fig. 3 the blurred markers can be observed in the side fin movement region. In Fig. 4, the image from a high-speed camera (HSC) is presented. The HSC captured series of images with resolution
Fig. 1. Biomimetic Unmanned Underwater Vehicle inside the water tunnel Rys. 1. Biomimetyczny bezzałogowy pojazd podwodny w tunelu wodnym
Fig. 3. An example of an image with blurred markers made during the side fin movement Rys. 3. Zdjęcie podświetlonych markerów w obszarze analizy wykonane podczas przemieszczania bocznej płetwy
Fig. 2. The laboratory water tunnel for direct FSI measurement with highlighted the plane of analysis: 1 – BUUV, 2 – side fin, 3 – force sensor, 4 – bearing Rys. 2. Stanowisko laboratoryjne do bezpośredniego pomiaru naporu z płaszczyzną analizy podświetloną laserem, 1 – pojazd podwodny, 2 – płetwa boczna, 3 – czujnik siły, 4 – łożysko
Fig. 4. The side fin image with seeds highlighted by linear laser in region of analysis Rys. 4. Zdjęcie bocznej płetwy z podświetlonymi markerami w płaszczyźnie analizy
24
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 /2022
Pawel Piskur 1000 frames per second (fps) with 2 MB resolution. The PIV method demands each marker’s description based on the Gaussian distribution function spread over 3–5 pixels. Bright particles or bright spots within the area will contribute statistically more to the correlation signal, which may bias the result in non-uniform flows. Also, the number of markers in cross-correlation function depends on seeds density and dimensions of the interrogation window. The PIV method assumes that all particles within an interrogation window have the same motion. This will not be the case in reality, as the perfectly uniform flow hardly exists. One common approach to ensure high measurement quality is enhancing images before the actual image correlation. Contrast limited adaptive histogram equalization was developed to increase the readability of image data. Contrast limited adaptive histogram equalization operates on small regions (tiles) of the image: in every tile, the most frequent intensities of the image histogram are spread out to the full range of the data (from 0 to 255 in 8-bit images). Regions with low exposure and regions with high exposure are therefore optimized independently. Inhomogeneous lighting can cause low-frequency background information, which can be removed by applying a high-pass filter that mostly conserves the high-frequency information from the particle illumination. The filter emphasizes the particle information in the image and suppresses any low-frequency information in the images. Considering the pre-processing parameters, it seems reasonable to use a Wienner filter with a low-pass filter. Where the variance is large, the filter performs little smoothing. Where the variance is slight, the filter performs more smoothing. This approach often produces better results than linear filtering. The adaptive filter is more selective than a comparable linear filter, preserving edges and other high-frequency parts of an image. In addition, there are no design tasks; the filter function handles all preliminary computations and implements the filter for an input image; however, it does require more computation time than linear filtering.
Fig. 6. The FSI measured by force sensor as a function of time for fin length 300 mm Rys. 6. Napór zmierzony za pomocą czujnika siły w funkcji czasu dla płetwy o długości 300 mm
5. Experimental Results In Figs. 5 and 6, a direct measurement of FSI is presented for different fin dimensions. Figure 5 shows the thrust as a function of time for fin length equal to half of the fin length with thrust presented in Fig. 6. The main goal of the research is to find out the construction and control data to achieve maximal value of thrust. Here the same control algorithm was used for
Fig. 7. The results of the PIV method for the fin in the middle during the movement to the top position Rys. 7. Wynik analizy metodą PIV dla płetwy w środkowym położeniu podczas przemieszczania do górnego położenia
Fig. 5. The thrust measured by force sensor as a function of time for fin length 150 mm Rys. 5. Napór zmierzony za pomocą czujnika siły w funkcji czasu dla płetwy o długości 150 mm
all tested fins. As it can be observed in the results of direct measurements of the thrust even if the control signal is symmetrical in both direction of the fin movements, the output signals differs. This is caused by different fin dimension (here only the fin length was changed). Although the mean thrust is similar for both fin measurements, the shape of the characteristic is different. A more complex propulsion systems comparison can be provided with the PIV method. The velocity vectors are highlighted in colour with a scale at the bottom of each figure. In Fig. 7–9 the PIV results are presented for fin length equal to 150 mm in different stages of the movement. In Fig. 7 the analysis is presented for the fin in the middle position during the movement to the upper position. The vortex can be seen below the fin trailing edge. The vortex is generally undesirable due to energy dissipation. In Fig. 8 and 9, the top and bottom positions of the fin are captured, respectively. The velocity vectors depicted in both figures show the fluid direction propelled by the fin. This analysis is crucial for comparison the fluid velocity with thrust
25
Propulsion System Analysis Based on Particle Image Velocimetry Method in Biomimetic Unmanned Underwater Vehicle
Although experimental tests are time-consuming, the results achieved can be used for propulsion system improvements. In the next step of research, different control algorithms will be tested using a designed laboratory water tunnel and the PIV method.
References 1. Grządziela A., Kluczyk M., Batur T., The Stand for Fin Drives Energy Testing. „Pedagogy”, Vol. 93, No. S6, 2021, 250–262, DOI: 10.53656/ped21-6s.22sta. 2. Grządziela A., Szymak P., Piskur P., Methodology for Assessing the Dynamics and Efficiency of Diving Fins, “Acta of Bioengineering and Biomechanics”, Vol. 22, No. 4, 2020, 139–150, DOI: 10.37190/ABB-01589-2020-06. 3. Jaskólski K., Marchel Ł., Felski A., Jaskólski M., Specht M., Automatic Identification System (AIS) Dynamic Data Integrity Monitoring and Trajectory Tracking Based on the Simultaneous Localization and Mapping (SLAM) Process Model, “Sensors”, Vol. 21, No. 24, 2021, DOI: 10.3390/s21248430. 4. Jurczyk K., Piskur P., Szymak P., Parameters identification of the flexible fin kinematics model using vision and genetic algorithms, “Polish Maritime Research”, Vol. 27, 2020, 39–47, DOI: 10.2478/pomr-2020-0025. 5. Kalmbach A., Breuer M., Experimental PIV/V3V measurements of vortex-induced fluid–structure interaction in turbulent flow—A new benchmark FSI-PfS-2a. “Journal of Fluids and Structures”, Vol. 42, 2013, 369–387, DOI: 10.1016/j.jfluidstructs.2013.07.004. 6. Kiciński R., Kruszkowska E.O., Szturomski B., Jurczak W., Stand for Biomimetic Swimming Fins Fatigue Testing. “Preprints”, 2022, 2022020087, DOI: 10.20944/preprints202202.0087.v1. 7. Majewski W., Wei R., Kumar V., Developing Particle Image Velocimetry Software Based on a Deep Neural Network. “Journal of Flow Visualization and Image Processing”, Vol. 27, No. 4, 2020, 359–376, DOI: 10.1615/JFlowVisImageProc.2020033180. 8. Majewski W., Kaspera W., Ples M., Sobkowiak-Pilorz M., Wei R., Wolański W., Super-resolution study of aneurism based on AI PIV – preliminary report. “Bulletin of the American Physical Society”, Vol. 66, No. 17, 2021. 9. Morawski M., Słota A., Zając J., Malec M., Fish-like shaped robot for underwater surveillance and reconnaissance–Hull design and study of drag and noise. “Ocean Engineering”, Vol. 217, 2020, DOI: 10.1016/j.oceaneng.2020.107889. 10. Piskur P., Strouhal Number Measurement for Novel Biomimetic Folding Fins Using an Image Processing Method. “Journal of Marine Science and Engineering”, Vol. 10, No. 4, 2022, DOI: 10.3390/jmse10040484. 11. Piskur P., Szymak P., Przybylski M., Naus K., Jaskólski K., ĩRNRZVNL M., Innovative Energy-Saving Propulsion System for Low-Speed Biomimetic Underwater Vehicles. “Energies”, Vol. 14, No. 24, 2021, DOI: 10.3390/en14248418. 12. Piskur P., Szymak P., Kitowski Z., Flis L., Influence of fin’s material capabilities on the propulsion system of biomimetic underwater vehicle. “Polish Maritime Research”. Vol. 4, 2020, 179–185, DOI: 10.2478/pomr-2020-0078. 13. Piskur P., Szymak P., Flis L., Sznajder J., Analysis of a Fin Drag Force in a Biomimetic Underwater Vehicle. “NAŠE MORE: znanstveni þDVRSLV za more i pomorstvo”, Vol. 67, No. 3, 2020, 192–198, DOI: 10.17818/NM/2020/3.2. 14. Piskur P., Gasiorowski M., Digital Signal Processing for Hydroacoustic System in Biomimetic Underwater Vehicle. “NAŠE MORE: znanstveni časopis za more i pomorstvo”, Vol. 67, No. 1, 2020, 14–18, DOI: 10.17818/NM/2020/1.3.
Fig. 8. The results of the PIV method during the movement of the fin to the top position Rys. 8. Wynik analizy metodą PIV dla płetwy podczas przemieszczania do górnego położenia
Fig. 9. The results of the PIV method during the movement of the fin to the bottom position Rys. 9. Wynik analizy metodą PIV dla płetwy podczas przemieszczania do dolnego położenia
generated. It gives information about the velocity for every time step and also the fluid acceleration can be calculated. The desired direction of fluid velocity is opposite to that of the vehicle.
6. Conclusion In this paper, both experimental results are presented: the direct measurement of thrust generated by the biomimetic propulsion system and the fluid velocity field achieved from the PIV method. The fluid dynamics using the PIV method is used to examine fluid velocity in the region of interest in the transient state analysis. Using the PIV method velocity fields are obtained with high spatial and temporal resolution in a non-intrusive manner.
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 /2022
Pawel Piskur
15. Szymak P., Praczyk T., Naus K., Szturomski B., Malec M., Morawski M., Research on biomimetic underwater vehicles for underwater ISR. In Ground/Air Multisensor Interoperability, Integration, and Networking for Persistent ISR VII, “SPIE Proceedings”, Vol. 9831, 2016, 126–139, DOI: 10.1117/12.2225587. 16. Thielicke W., Stamhuis E., PIVlab – Towards Userfriendly, Affordable and Accurate Digital Particle Image Velocimetry in MATLAB. “Journal of Open Research Software”, Vol. 2, No. 1, 2014, DOI: 10.5334/jors.bl.
17. Thielicke W., Sonntag R., Particle Image Velocimetry for MATLAB: Accuracy and enhanced algorithms in PIVlab. “Journal of Open Research Software”, Vol. 9, No. 1, 2021, DOI: 10.5334/jors.334.
Other Sources 18. www.gov.pl/web/obrona-narodowa/studenci-wojskowiopracowali-nowe-drony-dla-sil-zbrojnych-rp
0 % % * % .;O 6 6 * Z% % % # ' W artykule przedstawiono stanowisko laboratoryjne do bezpośredniego pomiaru naporu generowanego przez napęd falowy biomimetycznego pojazdu podwodnego. Stanowisko umożliwia przeprowadzenie badań i porównanie generowanego naporu z wynikami analizy interakcji płetwy i płynu z wykorzystaniem metody PIV. Stanowisko wyposażone jest w kamerę przemysłową do rejestrowania zmiany położenia markerów podświetlonych liniowym laserem w obszarze analizy. Porównanie wyników uzyskanych metodą PIV z przemysłowym czujnikiem siły pozwala na analizę sprawności biomimetycznego układu napędowego w funkcji zarówno parametrów konstrukcyjnych jak i sterujących. F 6 6
* % % % # % F * # 6 # 6 % %
$ )# + -$ * $ *% ORCID: 0000-0002-8823-4316 L % % F " F N * / % * 0 % (!!M T % F & " 0 V . 0 ; (!&! % . H % * A F N > * * * (!&R * . P 0 % T % % % # > 6
27
NR 3/2015
28
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 29–35, DOI: 10.14313/PAR_245/29
. 6 - F * * .G I * Marcin Szuster . 4 ;* * [ # / % V % " G # A % " N # . - + / &(# ?>)?) 4 +
3 #! " & ! H P ; B >N . 4 # . - + / &(# ?>)?) 4 +
Streszczenie: W #
# / # # # 0 " )+ # ! " # " $ "0 " # # # F * # 6
" 0 0 0# 1 # " 2 # " " 1 !
- # % * .G # 6
1. Wprowadzenie Bezpieczeństwo jest właściwością systemu, która odzwierciedla zdolność systemu do standardowego lub niestandardowego działania, bez niebezpieczeństwa spowodowania obrażeń lub śmierci człowieka, czy zagrożenia środowiska. Ważne jest, aby wziąć pod uwagę bezpieczeństwo oprogramowania. W większości przemysłowe systemy sterowania oparte są na oprogramowaniu tworzonym w jednym z języków normy IEC 61131-3 [3], opisującej graficzne i tekstowe języki programowania sterowników PLC. Sposób walidacji oprogramowania jest bezpośrednio związany z ogólnym bezpieczeństwem systemu. Jednym ze sposobów diagnozowania układów cyfrowych jest porównywanie oczekiwanej odpowiedzi układu z wzorcem. W artykule przedstawiono technikę, historycznie opracowaną do sprzętowego diagnozowania układów cyfrowych, zwaną analizą sygnatur. Na przykładach symulujących pracę sterownika PLC, opracowanych w oprogramowaniu Delta ISPSoft (DVP Simulator), dla sterownika DVP-SS2 przedstawiono ideę zastosowania analizy sygnatur do walidacji oprogramowania sterowania maszyny. Metody analizy sygnatur są stosowane w działach utrzymania ruchu do analizy sygnatur uszkodzeń maszyn – konserwacja predykcyjna maszyn (ang. predictive maintenance) [1, 4]. Przykładami usterek, które można zidentyfikować na podstawie analizy sygnatur np. poprzez analizę drgań są: usterka łożyska tocznego, usterka łożyska poprzecznego, usterka sprzęgła elastycznego itp. Stosując analizy sygnaturowe prądu silnika można przewidzieć jego stopień zużycia [7].
# ) F " # $ % % (! != (!(( # % % (= !) (!(( !
- F
Układ sterowania musi być tak zbudowany, żeby sterowany proces był zawsze bezpieczny. Jest to możliwe tylko wówczas, gdy proces ten będzie po uruchomieniu nieustannie kontrolowany przez sterownik PLC wykonujący odpowiedni program użytkownika [2]. Kod programu PLC sterowany zdarzeniami jest wrażliwy na czas i kolejność ich wystąpienia. Istnieją rozwiązania, w których walidacja oprogramowania przeprowadzana jest w sposób automatyczny przez zewnętrzny program testujący [9], który automatycznie generuje czasowe sekwencje zdarzeń. Zawarty w zewnętrznym urządzeniu testującym analizator zdarzeń wskazuje obszary, w których mogą znajdować się ukryte naruszenia bezpieczeństwa związane z błędami programistycznymi. Takie podejście wymaga dużych nakładów czasu na napisanie i rozwój programu wykrywającego potencjalne naruszenia bezpieczeństwa. Metoda poprawy bezpieczeństwa funkcjonalnego oprogramowania PLC, przedstawiona w niniejszym artykule, zastosowana w procesie walidacji umożliwia wykrycie naruszeń bezpieczeństwa spowodowanych niewłaściwie napisanym programem sterującym. Oznacza to najczęściej źle zaprojektowany algorytm sterowania, w którym np. nie uwzględniono błędnych sposobów postępowania obsługi [2] – struktura programu z tzw. kontrolowanymi działaniami obsługi, które nie były wystarczająco przetestowane lub programista przeoczył je pisząc program sterujący. W dostępnej literaturze autorzy nie spotkali się z zastosowaniem metody analizy sygnatur do walidacji systemów bezpieczeństwa w danych chwilach czasowych lub przy zmianach stanu systemu. Zaproponowana metoda jest elastyczna i prosta w realizacji, dzięki czemu nie wymaga znacznych nakładów czasowych na jej implementację. Oprogramowanie napisane w sposób przedstawiony w niniejszym artykule można stosować do wspomagania procesu walidacji systemu sterowania przed oddaniem maszyny do użytku, czy okresowego sprawdzania poprawnej pracy programu sterującego. W pracy na wybranym przykładzie określono sygnaturę prawidłowo działającego programu, a następnie wprowadzono losowe uszkodzenia i porównano otrzymane sygnatury z wzorcowymi. Podano podstawowe właściwości układu diagnostycznego tzw. analizatora sygnatur [6]. Stosowanie analizy sygnatur wymaga uwzględnienia specyficznych wymagań w procesie projektowania układu sterowania.
29
/ B / ; ' / ' %: / Z '
G1
bitowej (technika kompresji odpowiedzi) – sygnatury zawierającej opis wejść i wyjść cyfrowych testowanego programu PLC. Sygnatury wzorcowe są otrzymywane empirycznie w wyniku badania spodziewanego ciągu wejść i wyjść sterownika PLC. Zmiana jednego bitu powoduje dużą odległość sygnatury bieżącego stanu maszyny od sygnatury wzorcowej. Przez porównanie sygnatury bieżącego stanu maszyny otrzymanej w trakcie pracy lub symulacji PLC z sygnaturą wzorcową, układ porównania może stwierdzić prawidłową pracę oprogramowania bądź potencjalne defekty programowalnego układu sterowania.
Sygnatura to znak lub napis rozpoznawczy mający znaczenie podpisu [5]. W niniejszym artykule sygnaturą nazwany jest cyfrowy obraz stanu wejść i wyjść PLC w określonym punkcie testowym (Rys. 1), przekształcony do krótszej, bardziej czytelnej postaci za pomocą obliczenia zastępczej sumy kontrolnej o stałej długości, niezależnej od ilości wejść, dla której jest obliczana. Podstawową zasadą analizy sygnatur, zdefiniowanej jako metoda określania błędów w systemie poprzez pewnego rodzaju dopasowywanie wzorców, jest to, że efekt jest wynikiem przyczyny. Wynika z tego, że każda aplikacja do analizy sygnatur powinna opierać się na procesie mapowania, lepiej znanym jako rozpoznawanie wzorców. Sygnatury mogą być obrazami, przebiegami sygnału, lub dowolnym rodzajem pomiaru, który należy sklasyfikować. Technika zwana analizą sygnatur polega na kompresji odpowiedzi układu do krótszej postaci i wywodzi się z techniki cyklicznych kodów nadmiarowych CRC (ang. Cyclic Redundancy Checks), gdzie służyła pierwotnie do diagnostyki systemów cyfrowych. Metoda ta była od 1977 r. propagowana przez firmę Hawlett Packard, która wprowadziła pierwsze urządzenie analizujące: Signature analyzer 5004A [6]. Przy jej pomocy można testować zarówno warstwę sprzętową jak i programową [8], co pokazano w niniejszym artykule. Znając odpowiedź układu sterowania pracującego poprawnie można diagnozować program układu sterowania poprzez porównanie poprawnej odpowiedzi z odpowiedzią testowanego programu układu sterowania. W przypadku długich danych binarnych ich analiza i porównywanie z wzorcem jest uciążliwe i czasochłonne, ponieważ obraz każdego wejścia i wyjścia cyfrowego sterownika PLC musiałby zostać porównany bezpośrednio z wzorcem. Opracowano więc metodę umożliwiającą walidację programu PLC pod kątem bezpieczeństwa funkcjonalnego, w której ciąg bitów ulega kompresji do krótkiej sekwencji
I1 " # / ( 3 Poniżej przedstawiono fragmenty programu analizatora sygnatur, opracowanego w języku LAD i oprogramowaniu ISP Soft. Użyty sterownik DVP-SS2 umożliwia tworzenie 16-bitowych sygnatur wejść/wyjść cyfrowych [10]. Podczas walidacji układ testowy musi być pobudzany do pracy, aby wystąpiły niezbędne zmiany stanów wejść cyfrowych. Konieczny jest do tego zespół cyfrowych ciągów pobudzających, które można wygenerować w następujący sposób: − stosując zewnętrzne urządzenie do zadawania stanów wejść w odpowiednich chwilach czasowych (Rys. 2), − dostarczając sygnały z sensorów maszyny, − stosując programowe źródło ciągów testowych – wymuszanie stanów. Zewnętrzne urządzenie do zadawania sygnałów można zbudować w oparciu o zestaw startowy z mikrokontrolerem np. Nucleo-g491re [11], którego konfigurację i programowanie można zrealizować w darmowym oprogramowaniu STM32 CubeMX, STM32 CubeProgrammer, lub STM32 CubeIDE 1.4.0. Dołącze-
Rys. 1. Idea walidacji oprogramowania przy pomocy metody analiz sygnatur Fig. 1. The idea of software validation using method of signature analysis
Rys. 2. Idea zewnętrznego układu testującego do zmiany stanów wejść PLC w zadanych chwilach czasowych Fig. 2. The idea of an external test system to change the state inputs PLC in the specified time
30
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 /2022
Rys. 3. Program sterujący – program sekwencyjny napisany przy użyciu PROGRAM_INDEX Fig. 3. Control program – sequence program written using PROGRAM_INDEX
nie konwertera sygnałów 5–24 V umożliwia sterowanie wejściami PLC z poziomu mikrokontrolera. Duża liczba dostępnych timerów (11) i ich precyzja umożliwiają zadawanie sygnałów sterujących w dowolnych chwilach czasowych. Jednak ze względu na potrzeby niniejszego artykułu i prostotę rozwiązania – cyfrowe ciągi pobudzające są dostarczane poprzez programowe źródło ciągów testowych. Oprogramowanie ISPSoft sterownika PLC umożliwia zarówno generowanie stanów logicznych, jak i analizę wyjść badanego układu. Do testów analizatora sygnatur zastosowano programy napisane w sposób sekwencyjny implementując identyfikator tzw. „PROGRAM_INDEX”, informujący o aktualnym stanie realizacji algorytmu sterującego (Rys. 3). Poniżej omówiono przykład implementacji identyfikatora PROGRAM_INDEX do sekwencyjnej kontroli pracy układu sterowania. Ponieważ rzeczywiste programy sterujące pracą maszyn są skomplikowane i ich opis zająłby wiele miejsca, więc na potrzeby artykułu uproszczono do minimum program sterujący, który następnie rozbudowano o program monitorujący. Program sterujący za pomocą markera M1002 (Rys. 3) reaguje na rozpoczęcie pracy sterownika PLC. Do PROGRAM_INDEX wpisywana jest wartość 1. Jeśli w tym stanie zostaną załączone czujniki X0 i X1 na co najmniej 10 sekund, wówczas zostanie załączony zegar T0 ustawiając wyjście Y0 w stan wysoki i nastąpi wpisanie do PROGRAM_INDEX wartość 10. Jeśli PROGRAM_INDEX = 10 i sygnał z czujnika X2 = 1 wyjście Y0 zostanie ustawione w stan Y0 = 0, a realizacja programu rozpocznie się od początku. Zmiana stanu PLC jest równoznaczna zmianie identyfikatora PROGRAM_INDEX programu sterującego, co zastosowano do obliczenia sygnatury sterownika w zadanym stanie.
Sygnatura jest w procesie testowania przyporządkowywana do danej wartości identyfikatora PROGRAM_INDEX, przy każdej zmianie PROGRAM_INDEX tworzony jest obraz wejść i wyjść cyfrowych PLC. Program monitorujący można „wmontować” w program sterujący lub dopisać na końcu, czyli po programie sterującym. Przykład programu monitorującego dopisanego do programu sterującego znajduje się na Rys. 4 i 5. W programie monitorującym przejście wartości z PROGRAM_INDEX = 1 na PROGRAM_INDEX = 10 (zbocze narastające) powoduje zapis obraz stanu wejść cyfrowych X0–X7 oraz wyjść cyfrowych Y0–Y7. Obraz wejść zapisywany jest do rejestru D100, obraz wyjść do rejestru D102. Do zapisu stanu cyfrowych wejść/ wyjść zastosowano instrukcję MOV, która przenosi stan wejść/ wyjść PLC – wejścia od X0–X7 do pamięci D0, wyjścia Y0–Y7 do pamięci D2. Zapis K2X0 oznacza pobranie ośmiu kolejnych bitów stanu obrazu wejść PLC, a więc X0–X7. W przykładzie z Rys. 4 ustawione są bity X0 i X1, co heksadecymalnie równe jest wartości 3. Na wyjściu Y0 pojawia się stan wysoki Y0 = 1, co heksadecymalnie równe jest 1. Następnie obraz stanu wejść cyfrowych X0–X7 oraz wyjść Y0–Y7 jest poddawany kompresji odpowiedzi (Rys. 4) za pomocą algorytmu CRC przedstawionego w Tabeli 1. Sposób generowania sygnatury wywodzi się z techniki stosowanej w telekomunikacji. Za pomocą generacji CRC dokonuje się kompresji do sygnatury o wielkości dwóch bajtów. Wynik kompresji odpowiedzi, czyli sygnatura bieżącego stanu programu sterującego, może być przesyłany za pomocą jednego z przemysłowych protokołów komunikacji (np. Modbus) do zewnętrznego urządzenia analizującego wyznaczone sygnatury, bądź poddany analizie przy pomocy wewnętrznego, programo-
31
/ B / ; ' / ' %: / Z '
Rys. 4. Przykład obliczania CRC dla 8 wejść oraz 8 wyjść cyfrowych PLC (symulacja dla X0 = 1, X1 = 1) Fig. 4. CRC calculation example for 8 digital inputs and 8 digital outputs PLC (simulation for X0 = 1, X1 = 1)
Tabela 1 [10] Algorytm sprawdzenia sumy kontrolnej (CRC) Krok 1: Ustawienie 16 bitowego rejestru (rejestr CRC) = 0xFFFF. Krok 2 Krok 3 ! "
#
$
Krok 4 % & ' *+ , - / -2 * $ -3 *4 5 -3 5 7 / -2 * 4 , 8**9; , - Krok 5 ! < 7>?4 " 3 #5 Krok 6 ! @>A4
,
5 "
! # 2 " , B D EE & B 2 B EE $
5 B 2
B G ' B D 4 B 2 B + { int j;
B BG I * JJK EE 2 BG - $ L9M
2 '2 B +
{ BG NI D OOK P ' I*K Q K OO + { if (reg_crc & 0x01) { BG I ' BG TT9 + N *V8**9K ED W%X' *+I9 DE }
2 { reg_crc = reg_crc >>1; } } return reg_crc;
}
32
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 /2022
wego analizatora sygnatur. Sygnaturę wejść X0-X7 PLC dla programu sterującego z Rys. 3 (X0 = 1 i X1 = 1) stanowi wartość rejestru D100 = 41FF natomiast dla wyjść Y0–Y7 (Y0 = 1) D102 = 807E. Jeśli przyjmiemy, że dla prawidłowo działającego układu sterowania dla PROGRAM_INDEX = 10 powinny być załączone wejścia X0 = 1, X1 = 1 oraz wyjście Y0 = 1, wówczas każda modyfikacja wejść/wyjść PLC (np. przez dopisanie kolejnych programów cyklicznych modyfikujących stany wejść/ wyjść PLC) spowoduje zmianę sygnatur. Przykładowo dla programu sterującego z Rys. 3 Network 2 zastąpiono kodem z Rys. 5 otrzymując program napisany niewłaściwie, niezgodnie z opisem słownym – programista uwzględnił jedynie sygnał X0 zamiast X0 i X1 (komentarz dla Network 2). Sygnatura wejść bieżącego stanu programu sterującego uległa zmianie w porównaniu do poprawnie napisanego układu stero-
wania i wynosi D100 = 807E. Program monitorujący oprócz tworzenia sygnatur może zawierać również analizator sygnatur, czyli algorytm porównujący sygnatury otrzymane na każdym z etapów działania PROGRAM_INDEX z wzorcami, będącymi spodziewanymi stanami wejść/wyjść PLC. Analizator sygnatur może również stanowić np. zewnętrzny program analizujący pracę sterownika PLC, do którego dane przesyłane są poprzez jeden z protokołów komunikacji. Przykład wewnętrznego analizatora sygnatur przedstawiono na Rys. 6. Markery M100 i M101 służą do stwierdzenia poprawności porównania z wzorcem. Dla poprawnie działającego układu sterowania z Rys. 3 określono sygnatury prawidłowo działającego programu (wzorce), a następnie wprowadzono losowe uszkodzenie w układzie wejść (niepoprawny układ sterowania z Rys. 5). Porównując otrzymane sygnatury z wzorcowymi (analizator
Rys. 5. Przykład programu napisanego niewłaściwie Fig. 5. Example of a program written incorrectly
Rys. 6. Przykład analizatora sygnałów (poprawny program sterujący) Fig. 6. An example of signals analyzer (with correct control program)
Rys. 7. Przykład analizatora sygnałów (niepoprawny program sterujący) Fig. 7. An example of signals analyzer (with invalid control program)
33
/ B / ; ' / ' %: / Z '
$ '
sygnatur) można wykryć nieprawidłowe działanie układu sterowania (Rys. 7). Sygnatura wejść i wyjść jest porównywana z wzorcem, co tworzy najprostszy analizator sygnatur. W przykładzie z Rys.7 nie zgadza się sygnatura wejść cyfrowych sterownika PLC, spodziewana wartość to 41FF dla wejść X0 i X1 w stanie wysokim, pozostałe wejścia w stanie niskim. Oznacza to, że co najmniej jeden bit jest przekłamany i występuje duża różnica w CRC między obrazem stanu bieżącego wejść/wyjść, a obrazem wzorcowym (Rys. 7). Analizator sygnatur można zastosować do przygotowania biblioteki sygnatur, w której opisane zostaną uszkodzenia odpowiadające danym sekwencjom. Po wyodrębnieniu fałszywej sygnatury można stwierdzić, która część oprogramowania nie pracuje prawidłowo. Za pomocą sygnatur możliwe jest również zgłaszanie ostrzeżeń dotyczących pracy programu. W przyszłości taka biblioteka znacznie uprości sprawdzanie poprawności działania układu cyfrowego oraz umożliwi szybką diagnozę wystąpienia awarii. Baza sygnatur może być tworzona wraz z rozwojem oprogramowania. Utworzenie i rozbudowa biblioteki sygnatur umożliwia szybką ocenę działania układu sterowania względem stanu wzorcowego. W przypadku programów sterujących, w których mamy uwarunkowania liczbowe (liczniki) i złożone długie sekwencje sygnałów sterujących, może być potrzebne tzw. nałożenie maski na wybrane wejścia/wyjścia przed policzeniem CRC wejść / wyjść PLC zależnych od liczników i branie ich pod uwagę zawsze ze stałą wartością np. 1 przy liczeniu CRC. Stanowi to wadę tej metody, która dla szybkich, licznikowo zależnych sygnałów jest trudna do zastosowania, natomiast może sprawdzać się dla programów sekwencyjnych i pełnić również rolę dodatkowej autodiagnostyki układu sterowania. Druga wadą opisanej idei jest fakt, że nie istnieje algorytm umożliwiający na podstawie wyznaczonej sygnatury obliczyć, jakim danym wejściowym ona odpowiada. Jest więc konieczne opracowanie bazy sygnatur i na jej podstawie dopasowanie odpowiedzi układu sterowania do wzorca.
1. Bonaldi E.L., de Lacerda de Oliveira L.E., Borges da Silva J.G., Lambert-Torresm G., Borges da Silva L.E., Predictive Maintenance by Electrical Signature Analysis to Induction Motors, [In:] Induction Motors – Modelling and Control; DOI: 10.5772/48045. 2. Broel-Plater B., Układy wykorzystujące sterowniki PLC, Projektowanie algorytmów sterowania, Warszawa 2021. 3. Huber Ch., A generic approach for static code analysis of programs, Master Thesis, Johannes Kepler University Linz, Austria, 2016. 4. Ierace S., Gaiardelli P., Fumagalli L., Dovere E., Macchi M., Industrial applicability of Electric Signature Analysis as a diagnostic tool for Condition Based Maintenance: a case study, 2011. 5. Jadczak K., Białek R., Stanowisko laboratoryjne do badania niezawodności układów cyfrowych z wykorzystaniem analizy sygnatur, „Journal of Konbin”, Vol. 45, Nr 1, 2018, DOI: 10.2478/jok-2018-0009. 6. Laube J., Analizator sygnatur – uniwersalny przyrząd diagnostyczny do urządzeń cyfrowych, Warszawa 1982. 7. Pratesh J., Wadhwani A.K., Mulchandani K.B., Machine Fault Signature Analysis, “International Journal of Rotating Machinery”, 2008, DOI: 10.1155/2008/583982. 8. Schweitzer A., Improving the Safety Level of Programmable Electronic Systems (Pes) by Applying the Concept of Signature Analysis, 1986, [In: Safety and Reliability of Programmable Electronic Systems], 199-209, DOI: 10.1007/978-94-009-4317-9_21. 9. Zhang M., Chen Ch.-Y., Kao B.-Ch., Qamsane Y., Shao Y., Lin Y., Shi E., Mohan S., Barton K., Moyne J., Mao Z.M., Towards Automated Safety Vetting of PLC Code in Real-World Plants, Proceedings of 2019 IEEE Symposium on Security and Privacy (SP), DOI: 10.1109/SP.2019.00034.
%
J1 "
10. DVP-ES2/EX2/SS2/SA2/SX2/SE&TP Operation Manual – Programming, 2014 11. STM32 Nucleo-64 development board with STM32G491RE MCU, supports Arduino and ST morpho connectivity, https://www.st.com/en/evaluation-tools/nucleo-g491re.html 12. https://m.media-amazon.com/images/I/713XTXtWrML._ SL1001_.jpg 13. https://induprogress.pl/produkty/sterowanie-i-wizualizacja-procesow/sterowniki-plc-serii-dvp-slim/
Wydaje się, że analiza sygnatur może być bardzo użyteczna w odniesieniu do walidacji programów sterujących. Podstawową zaletą metody jest jej uniwersalność. Zgodność otrzymanych sygnatur z wzorcowymi oznacza, z dużym prawdopodobieństwem, że oprogramowanie oraz sprzęt mogą swoje funkcje spełniać prawidłowo. W systemach sterowania mogą występować uśpione usterki, które pozostają niewykryte przez wiele lat i rzadko się pojawiają. Pisanie oprogramowania z uwzględnieniem analizy sygnatur może spowodować wyeliminowanie znacznej liczby uśpionych usterek na etapie walidacji oprogramowania. Przedstawiona metoda może być zastosowana do dowolnych zmiennych sterownika PLC, które zostaną „ułożone” w spójny ciąg bitów, dla którego można obliczyć w opisany sposób sygnaturę. Na przedstawionym przykładzie działania analizatora sygnatur może być tworzone oprogramowanie walidujące poprawność pracy programowanego układu sterowania bazujące na oprogramowaniu i sterownikach innych producentów oraz na innym jak drabinkowy języku programowania. Zastosowanie analizy sygnatur może dostarczyć dowody weryfikacji i walidacji oprogramowania systemu sterowania oraz informacji, że proces integracji programowej maszyny został przeprowadzony z zastosowaniem procesów inżynierii bezpieczeństwa.
34
P
O
M
I
A
R
Y
•
A
U
T
O
M
Q
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
; * Y .G X F N * * 0 # #' The article presents the idea of the response compression technique called signature analysis used to validate PLC software in terms of functional control safety. The method of implementation of the developed validation idea, having practical application, was presented on the simulation examples. The research results based on a selected example are presented. cy KeywordsF * # %% 6 # F X .G % # F F F
# $ (
3 #! " & !
$ % ORCID: 0000-0002-9713-4456
6 $* ORCID: 0000-0002-5998-5890
06 / % V % " G . 4 / (!!R - * B # (!&( - % > % +B> # (!(! - % 6 * B > > % B / (!&& % I A % " 4 6 / % V % " G . 4 # *% % % \ * > 6 I % 6 + # % * # % * I > I # % # % 6 6 + \ . * N " N ] + > % M? 6 6 % * # % * F *
06 / % + ; B " > 4 6 8 # 0 # ; F ; B V > % 0 % L+ >T A / (!&& - B # (!&( - * B . % % I % > % + % N F P N * / " / (!&( I % # *% % 6 % % % % + % B % <% (!&) % + ;;; H P ; B > >N . 4 \ * 6 I I - B I 6 - 6 * I * * % % * I % * + # + B > % *
35
NR 3/2015
36
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 37–42, DOI: 10.14313/PAR_245/37
/ + 6 6 % ^ + % 9 ; <
$ - # " )
P % N _A.;`# A % N * ; F >. # A + #
8 # ) 4 ^ V % [ U . ; 0 . + .;0.# 0 \ (!(# !(>M'= /
Streszczenie: 4 # 2 5 # 2 5 0 ! 6 # # 2 ! 6 " ( # # # 5 # 2 5 2 " % 5 # ! 1 /# " / !0 # # 2 ! $ # # # / # # # 57 0$ 0 4 # # / ! "5 5 # "0 / # # 8 57 #/ "0 # # 0 4 $ " ! # 57 57 5 # 2 $ # # 5 5 0 0 " " " ! ( # 5 0 "/ # " 2 0 / # ! ! # # 5 5 # ! 5 # 2 $ # # " " 0 # # / ! " ! " 5 !2 F 6 % # 6 % # + * # # B # % # % % ^ 6
1. Wprowadzenie Działanie wielu obiektów, szczególnie użytkowanych w trudnych warunkach otoczenia, np. w przemyśle i w zastosowaniach terenowych, wymaga zwykle kontrolowania wielu parametrów zarówno bezpośrednio mierzonych, jak i obserwowanych pośrednio i wyznaczanych za pomocą operacji obliczeniowych z wyników pomiarów innych wielkości, traktowanych jako informacyjne. Obserwację stanu obiektu przeprowadza się w systemach analogowych lub analogowo-cyfrowych o strukturze równoległej lub równoległo-szeregowej. Przykład tej struktury podano na rys. 1.
# ) F * G / # &) =$* % !' !R (!(( # % % (M !) (!(( !
Struktura równoległo-szeregowa jest preferowana do pomiarów wielu parametrów oraz w przypadkach zdalnego monitorowania i sterowania obiektem. Zakresy sygnałów wyjściowych x1, x2, ... z przetworników P1, P2, …, Pn wielkości mierzonych bezpośrednio X1, X2, …, Xn są zwykle standaryzowane. Do obliczeń wartości pośrednio obserwowanych parametrów Y stosuje się jednocze-
Rys. 1. Schemat systemu pomiarowego o strukturze równoległo-szeregowej: P1(X1), P(X2), … – sensory z przetwornikami; x1, x2, … – sygnały wielkości mierzonych, Mx – multiplekser, MC – wspólny tor pomiarowy, Y – wektor parametrów obserwowanych, Comp. – cyfrowy układ obliczający lub komputer Fig. 1. Scheme of the measurement system of parallel-series structure: P1(X1), P(X2), … – sensors with input transmitters; x1, x2, … – signals of measured variables, Mx – multiplexer, MC – common measurement channel, Y – vector of observed parameters, Comp. – digital computing unit or computer
37
(/ L / L B / b / bG / śnie sygnały z przetworników w równoległej części układu, lub sekwencyjnie – po ich przełączeniu w multiplekserze Mx i przesyle przez wspólny tor pomiarowy MC. Do zdalnej realizacji badań i kontroli preferuje się strukturę równoległo-szeregową układu pomiarowego, gdyż do przesyłu sygnałów mierzonych wielkości x1, x2 wykorzystuje ona kolejno tylko jeden wspólny tor pomiarowy i ma większą odporność na zakłócenia. Cechą charakterystyczną pomiarów kontrolnych dla obiektów pracujących w trudnych warunkach eksploatacji, w szczególności w przemyśle i zdalnie w terenie, jest występowanie zakłóceń różnego rodzaju, głównie addytywnych. Jeśli w pomiarach kilku wielkości zakłócenia będą pochodzić ze wspólnego źródła, to wyniki ich odziaływań na sygnały wielkości mierzonych będą skorelowane. Rozpatrzymy bliżej to zagadnienie. Między dwiema zmiennymi X i Y występuje zależność stochastyczna, gdy istnieją wspólne czynniki losowe wpływające jednakowo na obie zmienne oraz inne czynniki wpływające różnie. Jeśli na przykład X1 jest funkcją zmiennych losowych: Z1, Z2, …, Zm; U1, U2, …, UK, tj.: X1= F1(Z1, Z2, …, Zm; U1, U2, …, UK). Zaś X2 reprezentuje funkcję tych samych zmiennych losowych Z1, Z2, …, Zm i zawiera też zbiór innych zmiennych losowych V1, V2, …, Vl, tj.: X2 = F2 (Z1, Z2, …, Zm; V1, V2, …, Vl). Z porównania funkcji X1 i X2 wynika, że są powiązane stochastycznie, czyli są skorelowane. Według zasad przyjętych w szacowaniu niepewności pomiarów w ISO [2] i w przewodniku GUM [3], wielkości uważa się za powiązane ze sobą, gdy do ich oceny stosuje się ten sam wzorzec, czujnik, przyrząd pomiarowy, dane standardowe, a nawet metodę pomiaru. Wielkości wejściowe i wyniki ich bezpośrednich pomiarów często są niezależne, ale mogą być też skorelowane, na przykład pod wpływem wspólnego zakłócenia oddziałującego na obiekt badany. Dokładność pomiarów ocenia się przez oszacowanie ich standardowej niepewności złożonej i z niej – nie pewności rozszerzonej o określonym prawdopodobieństwie [2, 3]. Najpierw trzeba jednak usunąć poprzez poprawki wpływ znanych systematycznych błędów. Sumę pozostałych błędów systematycznych o wartościach nieznanych i różnego pochodzenia randomizuje się. W pomiarach użytkowych, w tym przemysłowych, uwzględnia się wpływ niepewności typu B wyznaczanej z dopuszczalnego błędu maksymalnego aparatury pomiarowej E% podawanego przez wytwórców. Błąd ten ma charakter multiplikatywny i wynika głównie z rozrzutu parametrów przyrządów w produkcji. Szacowanie niepewności rozszerzonej z uwzględnieniem niepewności typu B w pomiarach pośrednich omówiono w [5], a pasma niepewności prostej wyznaczanej metodą regresji liniowej przy korelacji współrzędnych punktów [8–10]. Błędy od różnych oddziaływań zewnętrznych są zwykle addytywne. Najczęściej występuje przesunięcie charakterystyki przetwarzania. (ang. bias) o nieznanej wartości. Jeśli wystąpi ono w torze wspólnym MC systemu o strukturze równoległo-szeregowej, to pomiędzy sygnałami obu wielkości mierzonych na wyjściu tego toru, pojawi się powiązanie stochastyczne i wskazania wyników pomiarów staną się skorelowane. Należy też uwzględnić wpływ warunków pracy na działanie aparatury pomiarowej. One również mogą spowodować przesunięcie charakterystyki przetwarzania torów pomiarowych. Podsumowując, przy równoległo-szeregowej strukturze organizacji procedury pomiarowej wyniki bezpośrednich pomiarów parametrów informacyjnych, służące do obliczenia wartości obserwowanego parametru obiektu, podlegają funkcjonalnej transformacji według równania w modelu matematycznym. W praktyce zwykle sygnały wejściowych równoległych torów pomiarowych nie są skorelowane. Gdy ten sam tor pomiarowy MC stosuje się kolejno do uzyskania na wyjściu wartości mierzonych wielkości x1, x2, to pod wpływem zakłóceń w trudnych warunkach pracy może wystąpić nieznane, co do wartości przesunięcie (ang. bias) jego charakterystyki przetwarzania. Wskutek
38
P
O
M
I
A
R
Y
•
A
U
T
O
M
L B / b
tego pojawi się statystyczne powiazanie sygnałów na wyjściu tego toru, nazywane w tej pracy kowariancją instrumentalną [11]. Jest ono przyczyną dodatkowego składnika niepewności parametru obserwowanego. W niektórych źródłach [4] ten rodzaj powiązania stochastycznego nazywany jest korelacją logiczną, ale nie odzwierciedla to istoty fizycznej tego zjawiska. Kowariancja instrumentalna wpływa na wartość obserwowanego parametru wskutek tego, że wyniki bezpośredniego pomiaru zależą nie tylko od wartości mierzonej wielkości wejściowej z zakresu możliwych jej wartości, ale także od błędu pomiaru. Jeśli w pomiarach obu wielkości wykorzystuje się ten sam tor pomiarowy, to wnosi on do niepewności bezwzględnych wyników obu pomiarów są takie same składowe. Operację matematyczną, według której wyznacza się obserwowany parametr, wykonuje się na wielkościach losowych o wspólnej dodatkowej wartości. Jest to błąd addytywny bezpośredniego pomiaru o nieznanej wartości bieżącej i w zmiennych, lecz dopuszczalnych warunkach pomiaru, ich zbiór opisuje się przez niepewność typu B. W warunkach przemysłowych błędy multiplikatywne w torze pomiarowym MC występują rzadziej i przebieg charakterystyki toru pozostaje jednakowy, ale pojawia się jej przesunięcie spowodowane zakłóceniami addytywnymi. Ma ono różne i nieznane wartości w trakcie każdego pojedynczego pomiaru obu wielkości. Dalej zostanie przeanalizowany wpływ tego przesunięcia na niepewność charakterystyki rzeczywistej toru pomiarowego, na wynik pomiaru i na obliczoną wartość obserwowanego parametru [6]. Po analizie równania pomiaru można oszacować całkowitą niepewność standardową dla wyznaczanej wartości obserwowanego parametru z uwzględnieniem wpływu kowariancji instrumentalnej. Pozwoli to ocenić jej wkład i zaproponować układ ograniczający ten składnik.
G1 : # +, L
# #
Wiele obserwowanych pośrednio parametrów obiektów przemysłowych wyznacza się za pomocą operacji arytmetycznej mnożenia lub dzielenia. Prostym przykładem jest wyznaczanie wartości mocy i rezystancji badanego urządzenia elektrycznego z pomiarów napięcia i prądu stałego [11]. Schemat blokowy realizacji takiej procedury pomiarowo-obliczeniowej dla wyznaczania obserwowanego parametru podano na rys. 2.
Rys. 2. Schemat blokowy procedury pomiarowo-obliczeniowej: OS – obiekt badań, MX – multiplekser, MC – kanał pomiarowy, MD – urządzenie powielające, CD – urządzenie obliczeniowe, Δ – przesunięcie charakterystyki MC Fig. 2. Block diagram of the implementation of the measuring and computational procedure; OS – object of study, MX – multiplexer, MC – measuring channel, MD – multiplier device, CD – computing device, Δ – bias of the channel MC characteristic
Niepewność obserwowanego pośrednio parametru y, obliczanego przez wymnożenie wyników pomiarów dwu wielkości x1, x2. Równanie modelu ma postać: y = ax1 ⋅ bx2,
(1)
gdzie: x1, x2 – wartości wielkości określających obserwowany parametr obiektu; a, b – stałe współczynniki, które mogą przyjmować dowolne wartości inne niż zero. Występowanie dodatkowego składnika Δ, tj. przesunięcia charakterystyki toru wspólnego układu pomiarowego, po przekształceniu wzoru (1) wynika nowe równanie pomiaru: A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
! " # $ % & ' % ( (y + Δy) = a(x1 + Δ) ⋅ b(x2 + Δ),
(2)
gdzie: Δy – odchylenie wyniku; Δ – nieznane przesunięcie charakterystyki o wartości nie-przekraczającej dopuszczalnych znormalizowanych granic z prawdopodobieństwem 0,99. Wyrażenie (2) zastosowano do analizy składowych niepewności obliczanego wyniku pomiaru. Po wykonaniu działań w równaniu (2) otrzymuje się (y + Δy) = (x1 + Δ)ab(x2 + Δ) = = abx1x2 + abx1Δ + abx2Δ + abΔ2.
(3)
ności przy równoległym pomiarze parametrów informacyjnych wielkości wejściowych wynosi:
η=
2m . 1 + m2
(11)
W tym celu należy zbadać, jak stosunek wielkości wejściowych m = x1/x2 wpływa na wartość kowariancji instrumentalnej. Wyniki badań przedstawione są w tabeli 1. Tabela 1. Wpływ wartości m na wartość kowariancji instrumentalnej Table 1. Influence of the m value on the value of instrumental covariance
Pomijając bardzo małe składniki, otrzymuje się równanie: Δy = abΔ(x1 + x2).
(4)
Z wyrażenia (4) uzyskuje się sumaryczną niepewność standardową uc(y) typu B: uc(y) = a2b2u2(Δ)(x1 + x2)2,
(5)
gdzie: u(Δ) – standardowa niepewność od przesunięcia Δ charakterystyki pomiarowej. Wartość obserwowanego parametru y wyznacza się przez funkcjonalne przetworzenie wyników pomiarów bezpośrednich. Wskutek przesunięcia Δ powstaje dodatkowy błąd systematyczny, który spowoduje wzrost niepewności standardowej. Dodatkowy składnik tej niepewności wynika z pojawienia się kowariancji instrumentalnej. Odzwierciedla on istnienie zależności stochastycznej między sygnałami x1 i x2 wielkości wejściowych. Jego wartość wyznacza się z wyrażenia: (x1 + x2)2 = x12 + x22 + 2x1x2,
(6)
Ostatni składnik 2x1x2 w (6) uwzględnia występowanie kowariancji instrumentalnej. Jeśli stosunek wartości wielkości mierzonych oznaczy się jako m = x2/x1,
(7)
to wyrażenie (6) można zapisać w postaci (x1 + x2)2 = x12(1 + m2 + 2m).
m
0,1
0,2
0,3
0,5
0,8
1,0
3,0
5,0
7,0 10,0 15,0
h
0,2 0,38 0,55 0,8 0,98 1,0
0,6
0,4
0,3
I1 : # +,
(9)
B = a2b2u2(Δ)x12(1 + m2),
(10)
# #
Analizując składowe niepewności obserwowanego parametru wyznaczone za pomocą operacji dzielenia z wyników bezpośrednich pomiarów wielkości wejściowych jako parametrów informacyjnych. W tym przypadku równanie modelu ma postać: y=
uc2(y) = B(1 + h),
0,1
Z tabeli 1 wynika, że wzrost o 100 % łącznej niepewności standardowej ze względu na kowariancję instrumentalną wystąpi przy m = 1. Wraz ze wzrostem m udział kowariancji instrumentalnej h maleje. Dla niezależnego pomiarem każdej z wielkości informacyjnych, przy m > 15 kowariancja ta zwiększa niepewność złożoną poniżej 10 %. Przy m < 1, udział kowariancji instrumentalnej h znacząco zmniejsza się dopiero poniżej wartości m = 0,3. Z powyższej analizy wynika, że wpływ kowariancji instrumentalnej na dokładność wyznaczenia obserwowanego parametru obiektu y maleje wraz ze zmianą m. Po wstępnym oszacowaniu wartości tego wskaźnika wprowadza się skalowanie (podział) wartości parametru jednej z wielkości wejściowych. Pożądany jest dobór współczynnika podziału k na podstawie tabeli 1 taki, aby wartości podawane na wejście wspólnego toru pomiarowego różniły się o rząd wielkości. Im większa różnica, tym mniejszy wpływ instrumentalnej korelacji. Następnie wynik obliczenia mnoży się przez 1/k.
(8)
Z podstawienia (8) do (5) wynika, że wzrost niepewności wskutek istnienia kowariancji instrumentalnej zależy od stosunku wielkości wejściowych x1 i x2. Pierwsze dwa wyrazy w nawiasach w (8) charakteryzują niepewność wyniku przy braku kowariancji. Zachodzi to wówczas, gdy każdy z dwu parametrów informacyjnych wielkości wejściowej mierzy się oddzielnie, a tory pomiarowe mają jednorodną i nieskorelowaną charakterystykę. Szacowany składnik niepewności wyniku pomiaru wprowadzany przez kowariancję instrumentalną dla równoległoszeregowej struktury układu do pośrednich pomiarów obserwowanych parametrów informacyjnych. Wyrażenie (5) przyjmie postać:
0,2
ax1 . bx 2
(12)
Niepewność obliczanego wyniku ilorazu jest opisana za pomocą równania pomiaru:
(y + Δy ) =
a (x1 + Δ ) ax1 + Δa = b (x 2 + Δ ) bx 2 + Δb
(13)
lub (14)
Stąd wynika, że ze względu na przesunięcie charakterystyki toru pomiarowego, przyrost Δy będzie wynosił:
gdzie
Dotyczy to pomiaru realizowanego przy użyciu tego samego rodzaju równoległych torów pomiarowych dla każdej z wielkości wejściowych. Dodatkowy składnik niepewności standardowej wynikający z kowariancji instrumentalnej, odniesiony do niepew-
Δy =
ax1 ⎛ 1 1⎞ Δ⎜ − ⎟. bx 2 ⎝ x 1 x 2 ⎠
(15)
Niepewność otrzymanych wyników zależy od różnicy stosunków przesunięcia Δ charakterystyki przetwarzania i wielkości wejściowych.
39
(/ L / L B / b / bG / Wariancja, tj. kwadrat złożonej niepewności standardowej badanego parametru wynosi:
L B / b
rowego wraz ze wzorami opisującymi przetwarzanie sygnałów w tym układzie.
(16)
Człon 2
1 w wyrażeniu (16) wynika z kowariancji instrux1x 2
mentalnej. W przeciwieństwie do poprzednio rozpatrywanego przypadku, składnik ten nie zwiększa, lecz zmniejsza niepewność standardową. Po uwzględnieniu stosunku m dwu wartości mierzonych wielkości (7), wyrażenie w nawiasach we wzorze (16) przyjmie postać: ⎛ x12 + x 22 1 ⎞ ⎛ x12 + m 2x12 1 ⎞ − 2 =⎜ −2 2 ⎟. 2 ⎜⎝ x 2x 2 ⎟ x1x 2 ⎠ ⎝ x1 m x1 m ⎠ 1 2
m1 =
Wykorzystując wyrażenie (15), zanalizujemy wpływ kowariancji instrumentalnej na dokładność oszacowania parametru:
B1 =
a (1 + m
2
b 2m 2x12
)u
2
(Δ) .
W przemyśle i w innych trudnych, np. terenowych warunkach eksploatacji, do kontroli działania i sterowania badanych obiektów obserwuje się wiele parametrów, które wyznacza się pośrednio z wyników bezpośrednich pomiarów innych wielkości. wartości parametrów mierzonych pośrednio uzyskuje się po określonych operacjach obliczeniowych, tym mnożenia lub dzielenia. Najczęściej stosuje się układ o strukturze równoległo-szeregowej oddane na rysunku 1. Na wyniki pomiarów i obliczeń wymaganych do wyznaczania obserwowanego parametru wpływają głównie zakłócenia addytywne, które mogą spowodować przesunięcie charakterystyki przetwarzania wspólnego toru pomiarowego. Wskutek tego, na wyjściu tego toru pojawia się stochastyczna zależność sygnałów, nazwana w tej pracy kowariancją instrumentalną. Wpływa ona na estymację wartości i niepewności obserwowanego parametru zależnie od rodzaju matematycznej operacji wykonywanej na wynikach pomiarów bezpośrednich. Rozpatrzono i porównano proste przypadki, gdy obserwowany parametr obiektu wyznacza się za pomocą operacji mnożenia lub dzielenia. Podano też wzory opisujące wpływ wartości iloczynu lub ilorazu wielkości wejściowych na dodatkowy składnik niepewności standardowej obserwowanego parametru, jako skutek kowariancji instrumentalnej. Jako przykład liczbowy rozpatrzono obliczanie rezystancji z bezpośrednich pomiarów prądu i napięcia stałego. Analiza niepewności pomiaru wykazała, że gdy wartości obserwowanych parametrów oblicza się przy użyciu operacji mnożenia lub dzielenia, to względna zmiana niepewności wyniku spowodowana kowariancją instrumentalną zależy od stosunku wartości wielkości mierzonych bezpośrednio na wejściu układu. Dla układu z operacją mnożenia bezpośrednio mierzonych sygnałów kowariancja instrumentalna powoduje wzrost niepewności. Zaproponowano modyfikację struktury równoległo-szeregowej tego układu zmniejszającą ten wpływ. Podano ją na rysunku 3. Przy operacji dzielenia, kowariancja zawsze zmniejsza standardową niepewność wyniku.
(19)
Jest to kwadrat niepewność standardowej dla wyniku obliczonego z równania modelu (10), gdy nie ma kowariancji instrumentalnej. W tym przypadku istnienie kowariancji instrumentalnej zmniejsza niepewność obserwowanego parametru obiektu.
J1 " ' # Rozpatrzymy prosty przykład liczbowy. Działanie badanego obiektu charakteryzuje rezystancja R i należy ją wyznaczyć z pomiarów napięcia i prądu. Otrzymano następujące ich wartości: napięcie x1 = 5 V i prąd x2 = 1 A. W układzie pomiarowym o strukturze równoległo-szeregowej jest tor wspólny z granicznymi wartościami przesunięcia charakterystyki przetwarzania Δ = ±0,2 i standardowej niepewności pomiaru u(Δ) = 0,115. Przy braku kowariancji instrumentalnej, niepewność standardowa obserwowanego parametru równa się pierwiastkowi kwadratowemu z wyrażenia (19) i wyniesie 0,58. Wartość R mieści się w zakresie 3,88–6,16 W z prawdopodobieństwem 0,95. Przy występowaniu kowariancji instrumentalnej według (18), wartość badanej rezystancja R powinna być w zakresie 4,29–5,71 W. Aby to sprawdzić, obliczono rezystancję R = 5,2/1,2 = 4,33 W i jej wartość spełnia ten warunek. Z tabeli 1 wynika, że nie będzie wpływu przesunięcia Δ charakterystyki przetwarzania wspólnego toru układu pomiarowego na wartość wyniku dzielenia dla h = 1, ale wystąpi on w mnożeniu dla m = 1. Aby uzyskać taki sam warunek i dla tego przypadku, konieczne jest użycie specjalnego algorytmu do wyznaczania badanego parametru. Można to osiągnąć w sposób następujący. Początkowo wyznacza się stosunek wielkości wejściowych x1/x2 i dla otrzymanego jego wyniku wprowadza się współczynnik skalujący 1/t dla większej z wartości wejściowych. Następnie, aby wyznaczyć obserwowany parametr, wynik dzielenia mnoży się przez m. Dodatkowa („resztkowa”) niepewność określenia wartości tego parametru odpowiada niepewności stosunku m wartości wielkości wejściowych. Na rysunku 3 podano strukturę układu realizującego algorytm kompensujący wpływ przesunięcia Δ charakterystyki wspólnego toru pomia-
40
P
O
M
I
A
R
Y
•
A
U
T
O
M
(x 2 / m1 + Δ ) ⋅ m 1 (x1 + Δ )
5. Podsumowanie i wnioski
(18)
gdzie 2
y=
Rys. 3. Struktura układu z kompensacją losowego przesunięcia charakterystyki wspólnego toru MC, MX – multiplekser, MC – wspólny tor pomiarowy, CD – układ cyfrowy lub komputer Fig. 3. The structure of the system with compensation of the shift of characteristic of common canal MC, MX – multiplexer, MC – common measurement channel, CD – digital unit or computer
(17)
uc2 (y ) = B1 (1 − η ) ,
(x 2 + Δ ) , (x 1 + Δ )
$ ' 1. International Vocabulary of Metrology. – Basic and general concepts and associated terms (VIM). – ICGM, 2012. 2. ISO/IEC Guide 98-3:2008 Uncertainty of measurement — Part 3: Guide to the expression of uncertainty in meaA
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
! " # $ % & ' % (
3.
4.
5.
6.
7.
surement/International Organization for Standardization, Switzerland. JCGM 100:2008, GUM 2008 with minor corrections Evaluation of measurement data — Guide to the Expression of Uncertainty in Measurement/BIPM, France. Zakharov I.P., Estimating measurement uncertainty on the basis of observed and logical correlation, “Measurement Techniques”, Vol. 50, No. 8, 2007, 808–816, DOI: 10.1007/s11018-007-0154-8. Warsza Z.L., Puchalski J., Estimation of vector uncertainties of multivariable indirect instrumental measurement systems on the star circuit example. “Journal of Physics: Conf. Series”, Vol. 1065, No. 5, 2018, DOI: 10.1088/1742-6596/1065/5/052026. Volodarsky E., Warsza Z., Kosheva L., Idźkowski A., Transforming the conversion characteristic of a measuring system used for technical control, Vol. 543 of the series Advances in Intelligent Systems and Computing, Springer International Publishing 2017, 524–534, DOI: 10.1007/978-3-319-48923-0_56. Volodarskyi Y.T., Kosheva L.O., Dobrolubova M.V., Information-measuring system and uncertainty. “Ukrainian Journal of Metrology”, No. 3A, 2020, 30–34 (in Ukrainian)
8. Warsza Z.L., Puchalski J., Rozszerzona metoda oceny niepewności pośrednich pomiarów wielo-parametrowych i układów do tych pomiarów Cz. 1. Wpływ korelacji i niepewności funkcji przetwarzania – zależności podstawowe. „Pomiary Automatyka Robotyka”, R. 23, Nr 3, 2019, 55-63, DOI: 10.14313/PAR_233/55. 9. Warsza Z.L., Puchalski J., Estimation of uncertainties in indirect multivariable measurements. Part 1. Case of correlated quantities. [In:] R. Szewczyk et al. (Eds.): Proceedings of AUTOMATION 2020, AISIC series, Vol. 1140, 309–325, Springer Nature Switzerland AG 2020, DOI: 10. 1007/978-3-030-40971-5_29. 10. Warsza Z.L., Puchalski J., Ocena dokładności pomiarów w metodzie regresji liniowej z uwzględnieniem zasad przewodnika GUM. Metrologia Teoria i Praktyka (Materiały 53 MKM) Studia i Monografie Zeszyt 556, Politechnika Opolska 2021, 59–104. 11. Volodarskyi Y., Warsza Z.L., Kosheva L., Sautin A., Instrumental covariance and its impact on the uncertainty of tested parameters of industrial objects. [In:] R. Szewczyk et all. (Eds.) Automation 2022, AISC Vol. 1427, Springer Nature Switzerland AG, 2022, 356–369, DOI: 10.1007/978-3-030-74893-9_36.
; a F F 4 F H " F . <6 % ; % Abstract: The # #
# ; # # # # # # 6 # # = # # ; # # # # # " # # # # ; # > $ # ?# $ # ; # # # # $ # # # # # # # ; $ # ; # # #$ # # # # @ # # # # # 4 # # # # # ; ># # # # # # # # ; # # # # # # ; # # # # # ? # # # @ # # = # ; # # # # ; # # = # # # # ; # ; # # # # # ; # $ # # # ; $ = # # # # # instrumental covariance # # # # ; m pracy KeywordsF % 6 # % # X F # # # % #
41
(/ L / L B / b / bG /
- # " )
L B / b
8 # ) 4
% $* ORCID: 0000-0002-2689-604X
&) =$* ORCID: 0000-0002-3537-6134
06 b0 > * * f P > % N U . A bA.;f J (!(! K / (!(& - % * > " * + F > > <6 > % + % A % N * ; F >. S * % + +
06 / % 8 * . / &)?)# % > &)=R# % % &)R! . S ; 8 &)?'U&)= &))MU&))?# . / &)=!U&)R!# . Q &)R!U&)R' J * % / % N 4 % K# < * S < % 0 > . ; " * L % / % &)R'U &)'( % 0 . + ; . > &)' U&))( H % " 8% P % &))(U&))?# . 4 % &)' U(!!( <6 * + . > ; 0 . + .;0. 0 6 + % M!! 6 # &! * F # % 6 % > # && + ( % + . . * N > " * * . .04 0 % " *
# *; = <
>&$ ORCID: 0000-0003-2573-6543 . S P % N U . A bA.;f# A % 0 > V % - 8 g . % > I . % b" * f . - 0* 0 % 6 F ;888 . % - 0 % " > * S % > + % > 0 IB % !! 6 <% . % b B % f
42
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 43–48, DOI: 10.14313/PAR_245/43
. + @ + "8" Natalia Wasilewska ; A # G 6 " * # * ?!# !M>(R? /
! ; " * ; B V % # . / # / # .
( ^ V % [ U . ; 0 . + .;0.# 0 \ (!(# !(>M'= /
# ' Stosowane w praktyce filtry elektroniczne typu MEMS wymagają eksperymentalnego badania charakterystyk amplitudowych i fazowych. Wymaga to opracowania metody pomiarowej, która nie tylko zapewni pomiar charakterystyk, lecz umożliwi równoczesne oszacowanie niepewności tego pomiaru. Opisany sterowany komputerowo system pomiarowy umożliwia pomiary charakterystyk filtrów z zachowaniem spójności pomiarowej przy uwzględnieniu w pełni zautomatyzowanego procesu szacowania niepewności pomiaru. Testy przeprowadzone w trakcie badania charakterystyki przykładowego filtru magnetostrykcyjnego potwierdziły zarówno poprawność zaproponowanego rozwiązania, jak i jego możliwość zastosowania w praktyce. F @ "8" # ^ # @ 6
1. Wprowadzenie Filtry elektroniczne są powszechnie stosowanymi układami, których zadaniem jest wytłumianie sygnału napięciowego lub jego przepuszczanie przy określonych częstotliwościach. Są wykorzystywane w praktycznie każdej branży elektronicznej [5]. Wytłumiają nieoczekiwane zakłócenia z równolegle działających przyrządów. Przykładem może tu być stabilizator napięcia sieciowego, który zawiera zestaw filtrów mających za zadanie wycinanie szumów z sieci elektrycznej [6]. Takie zakłócenia potrafią zaburzyć dokładne pomiary lub, w skrajnych przypadkach, uszkodzić urządzenia. Innym bardzo częstym zastosowaniem jest odseparowywanie wybranej częstotliwości od całego spektrum sygnału. Na tym swoje działanie opierają odbiorniki radiowe [3], w tym GSM, LTE i Wi-Fi. Filtry elektroniczne coraz częściej są wykorzystywane w przyrządach, w których bardzo ważna jest duża dokładność takich jak urządzenia medyczne, dokładne przyrządy pomiarowe np. nanowoltomierze, przemysł kosmiczny, komunikacja radiowa, specjalistyczne zasilacze. Wynika z tego konieczność przeprowadzenia wzorcowania tych układów z dużą dokładnością.
# ) F P / # $ % !R != (!(( # % % (! !) (!(( !
Szczególną klasą filtrów elektronicznych są zaawansowane filtry MEMS, w których proces filtracji sygnału elektronicznego następuje z wykorzystaniem zjawisk elektromechanicznych lub magnetomechanicznych. W przypadku tego typu filtrów teoretyczne wyznaczenie wartości parametrów filtru jest procesem złożonym i obarczonym znaczną niepewnością. Dlatego, w odniesieniu do stosowanych w praktyce filtrów elektronicznych typu MEMS, kluczowe znaczenie ma opracowanie metody pomiarowej, która nie tylko zapewni pomiar charakterystyk, lecz umożliwi równoczesne oszacowanie niepewności tego pomiaru. Na rynku istnieją gotowe rozwiązania urządzeń do pomiarów charakterystyk filtrów. Większość z nich można sprowadzić do dwóch kategorii: pomiary szybkie i niedokładne lub pomiary dokładne, ale czaso- i pracochłonne. Istnieje kilka rodzajów klasyfikacji filtrów [2]. Najpopularniejszym jest ich dzielenie ze względu na pasmo przepustowe. Pasmo przepustowe lub pasmo przenoszenia filtru to część pasma częstotliwości, która jest przepuszczana przez filtr, a wytłumianą część spektrum nazywamy pasmem zaporowym. Inaczej pasmo przepustowe definiuje się, jako przedział częstotliwości, przy których wzmocnienie nie jest mniejsze niż 3 dB od maksymalnego. Częstotliwość, przy której spadek maksymalnego wzmocnienia wyniesie 3 dB to częstotliwość graniczna. Wzmocnieniem filtru jest to stosunek napięcia wyjściowego do wejściowego. Najczęściej wyrażany jest w decybelach [9]. ⎛U ⎞ K = 20 log ⎜ wy ⎟ ⎝ U we ⎠
[dB]
(1)
przy czym: Uwy to amplituda napięcia wyjściowego, zaś Uwe amplituda napięcia wejściowego.
43
/
L D L / C / b By uzyskać pełną informację o właściwościach filtru należy wykreślić również charakterystykę przesunięcia fazowego w zależności od częstotliwości. Pomiary te zwykle są bardziej problematyczne ze względu na ograniczenia sprzętowe. Najprostszym koncepcyjnie i sprzętowo sposobem wykonania stanowiska dostępnym dla większości laboratoriów elektrycznych jest wykorzystanie woltomierzy. Wymaga jedynie wykorzystania źródła sygnału napięcia zmiennego o nastawianej częstotliwości i dwóch mierników. Napięcie na źródle jest na bieżąco mierzone woltomierzem wzorcowym. Można te dwa urządzenia zastąpić przez zastosowanie kalibratora wzorcowego. Sygnał po przejściu przez filtr mierzony jest drugim woltomierzem. Przy takim pomiarze zalecane jest dziesięciokrotnie wykonanie pomiaru napięcia na wejściowego i napięcia wyjściowego badanego filtru [10]. Po zebraniu danych obliczane jest wzmocnienie i wykreślana jego charakterystyka. Dużą wadą tego rozwiązania, obok jego żmudności, jest brak możliwości pomiaru charakterystyki fazowej. Dodatkowo większość woltomierzy nie jest w stanie mierzyć napięcia przy wysokich częstotliwościach – ich pasmo kończy się najczęściej na około 100–200 kHz. Znaczne ulepszenie względem powyższego stanowiska można uzyskać z wykorzystaniem oscyloskopu, jako przyrządu pomiarowego. Wyklucza on używanie woltomierza wzorcowego, ponieważ oscyloskop będzie mierzył na dwóch kanałach jednocześnie sygnał wejściowy i wyjściowy filtru. Takie zestawienie pozwala na jednoczesny pomiar napięcia obu sygnałów, które zostaną wykorzystane do obliczenia wzmocnienia, oraz do pomiaru przesunięcia fazowego. Wadą takiego układu pomiarowego jest niedokładność pomiarowa oscyloskopu, zwłaszcza przy pomiarach przesunięcia fazowego. Wszystkie problemy poprzednio opisanego stanowiska można rozwiązać przez zastosowanie analizatora transmitancji. Przyrząd ten mierzy wyłącznie sygnał przy częstotliwości wzorcowej doprowadzanej do niego. W tym przypadku jest to sygnał wejściowy filtra. Analizator mierzy sygnał z dokładnością taką samą jak woltomierz, podając od razu wyniki wzmocnienia i przesunięcia fazowego między sygnałami. Wadą rozwiązania jest jego niska dokładność.
a)
b)
c)
Rys. 1. Możliwe warianty stanowisk do badań charakterystyki amplitudowo-częstotliwościowej z wykorzystaniem a) multimetru, b) oscyloskopu, c) analizatora transmitacji Fig. 1. Possible variants of stands for testing the amplitude-frequency characteristics with the use of a) a multimeter, b) an oscilloscope, c) a transmission analyzer
W filtrach środkowoprzepustowych i środkowozaporowych wyróżniana jest częstotliwość środkowa (przepustowa lub zaporowa). Jest to środkowa częstotliwość znajdująca się pomiędzy częstotliwościami granicznymi obliczana ze wzoru:
fo = fgd +
fgg − fgd
[Hz]
2
(2)
przy czym: fgd to częstotliwość graniczna dolna (bliższa zera), zaś fgd to częstotliwość graniczna górna (bliższa nieskończoności). Przesunięcie fazowe to różnica w fazie sygnału wprowadzana przez filtr ze względu na np. opóźnienia wzmacniacza czy czas ładowania się kondensatorów. Zależnie od przypadku może być uznawana za zjawisko pozytywne lub negatywne. W artykule przedstawiono projekt stanowiska wykazującego lepsze możliwości pomiarowe oraz dokładność niż dostępne rozwiązania rynkowe, oraz umożliwiającego szeroką automatyzację procesu pomiarowego.
I1 8# # Zaprojektowane stanowisko pomiarowe jest całkowicie obsługiwane przez dedykowane oprogramowanie. Użytkownik kontroluje parametry pomiaru, takie jak badany zakres częstotliwości, czas pomiaru, oraz napięcie pomiarowe, oraz odczytuje na bieżąco wyniki pomiaru za pomocą odpowiednich wykresów oraz aktualne wskazania przyrządów pomiarowych. Program obsługujący stanowisko został stworzony w graficznym środowisku programistycznym LabVIEW, w którym jest stosowany język programowania G. Programowanie polega na łączeniu ze sobą bloków funkcyjnych odpowiadających różnym funkcjom [8]. W trakcie pomiaru sygnał jest zadawany z generatora wedle zadanych parametrów. Sygnał doprowadzany jest bezpośrednio do miernika wzmocnienia i fazy, jako sygnał odniesienia. Ten sam sygnał jest przepuszczany przez badany filtr elektryczny, a następnie jest mierzony przez miernik wzmocnienia i fazy. Miernik oblicza wzmocnienie i przesunięcie fazowe między sygnałami i w formie napięcia przekazuje do multimetrów. Następnie jest bezpośrednio odczytywany i zapisywany przez program. Stanowisko można zastosować do pomiarów parametrów wszystkich analogowych filtrów elektronicznych w zakresie częstotliwości od 10 Hz do 13 MHz i amplitudy wejściowej od 4 mVpp do 20 Vpp. W zbudowanym stanowisku pomiarowym zastosowano generator arbitralny firmy Siglent typu SDG 1025. Poza odpowiednimi zakresami sygnałów – do 25 MHz oraz do 20 Vpp (7,07 Vrms) –
G1 % ) ) # W przypadku badań filtrów elektronicznych podstawowym pomiarem jest wyznaczenie charakterystyki amplitudowo-częstotliwościowej [5]. Jest to wykres zależności wzmocnienia od częstotliwości pomiarowej. Na jego podstawie można obliczyć podstawowe parametry filtru elektronicznego.
Rys. 2. Schemat blokowy zaproponowanego stanowiska pomiarowego Fig. 2. Block diagram of the proposed measuring station
44
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 /2022
@ @ (
Rys. 3. Algorytm działania programu sterującego stanowiskiem pomiarowym Fig. 3. Algorithm of operation of the program controlling the measuring stand
umożliwia także programowanie go w języku SCPI (ang. Standard Commands for Programmable Instruments) i łatwe podłączenie do komputera przez port USB [11]. Na multimetry wybrano Tonghui TH1961, które również przez port USB z wykorzystaniem poleceń języka SCPI mogą komunikować się bezpośrednio z komputerem [12]. Wykorzystany został dedykowany miernik wzmocnienia i fazy firmy Hewlett-Packard typu 3575A. Urządzenie to ma dwa wejścia sygnałowe i dokonuje pomiaru wzmocnienia oraz przesunięcia fazowego między tymi sygnałami. Pasmo pomiarowe przyrządu wynosi 13 MHz. Przyrząd ten mierzy tylko i wyłącznie sygnał o częstotliwości sygnału referencyjnego, co umożliwia filtrowanie szumów. Po zakończeniu procesu pomiarowego program rozpoczyna część obliczeniową, która polega na wyznaczeniu 13 parametrów, będących wynikami analizy charakterystyki amplitudowo-częstotliwościowej. Pierwszym parametrem jest wzmocnienie maksymalne. Jest to największe zmierzone wzmocnienie w trakcie całego procesu pomiarowego, oznaczane jest przez Kmax [dB]. Częstotliwość, przy której osiągnięto wzmocnienie maksymalne jest podawana przez program i oznaczana przez fKmax [Hz]. Analogicznie wzmocnienie minimalne jest najmniejszą wartością zmierzoną wzmocnienia. Oznaczane jest przez Kmin [dB]. Częstotliwością, przy której osiągnięto wzmocnienie minimalne, jest fKmin [Hz]. Parametr Rodzaj filtru określa, jaki jest rodzaj badanego filtru ze względu na jego przepustowość. Dokonuje się tego przez sprawdzenie dwóch warunków: K max ≥ Ko
(3)
K max ≥ K n
(4)
Program sprawdza, czy wzmocnienie maksymalne jest większe bądź równe wzmocnieniu początkowemu i końcowemu. Warunki te wynikają bezpośrednio z kształtu charakterystyk amplitudowo-częstotliwościowych badanych filtrów. Częstotliwość graniczna filtru, nazywana również częstotliwością odcięcia, jest częstotliwością, dla której kończy się pasmo przepustowe [7]. Określana jest, jako spadek o 3 dB wzmocnienia względem pasma przenoszenia. W programie rozróżniane są jej dwa rodzaje. Częstotliwość graniczna dolna odnosi się do częstotliwości granicznej filtrów górnoprzepustowych, ponieważ odcina dolne częstotliwości. Także dla filtrów środkowoprzepustowych i środkowozaporowych wyróżnia się częstotliwość graniczną dolną. Dla filtru dolnoprzepustowego wynosi zero. Częstotliwość graniczna górna, analogicznie odcina częstotliwości wyższe. Jest ona parametrem filtrów dolnoprzepustowych, środkowoprzepustowych i środkowozaporowych. Dla filtru górnoprzepustowego wynosi zero. Programistycznie są one sprawdzanie na zasadzie porównania wysokości wzmocnienia przy kolejnych częstotliwościach. Program oblicza wzmocnienie, przy którym powinno wystąpić odcięcie w odniesieniu do maksymalnego zmierzonego wzmocnienia: Kod = K max − 3 [dB]
(5)
Pasmo przepustowe filtru oznacza częstotliwości, które nie zostaną wytłumione przez filtr. Jego granice wyznaczają czę-
stotliwości graniczne. Ważnym parametrem filtru jest szerokość pasma przepustowego. W przypadku filtru dolnoprzepustowego jest to po prostu wartość równa częstotliwości granicznej dolnej, ponieważ wszystkie częstotliwości poniżej jej są przepuszczane. W przypadku filtru górnoprzepustowego program podaje różnicę między częstotliwością końcową pomiaru a częstotliwością graniczną górną. W przypadku filtru środkowoprzepustowego, który ma dwie częstotliwości graniczne, jest to różnica między częstotliwością graniczną górną a dolną. W przypadku filtru środkowozaporowego wyróżniane są dwa parametry: szerokość pasma przepustowego, która jest określana identycznie, jak w filtrze dolnoprzepustowym, oraz szerokość pasma przepustowego 2 określaną, jak w filtrze górnoprzepustowym. Innym parametrem charakterystycznym występującym tylko w przypadku filtrów środkowozaporowych jest szerokość pasma zaporowego. Jest określana, jako różnica między częstotliwością graniczną górną a dolną. Częstotliwość przepustowa środkowa jest najważniejszym parametrem filtru środkowoprzepustowego i jednocześnie najczęściej podawanym komercyjnie. Jest to częstotliwość średnia arytmetyczna wynikająca z częstotliwości granicznych filtru:
fo =
fodd + fodg 2
[Hz]
(6)
Parametr ten nie jest wyznaczany dla filtrów dolno-, górnooraz wszechprzepustowych. Częstotliwość zaporowa środkowa jest analogicznie do przepustowej średnią arytmetyczną częstotliwości granicznej górnej i dolnej, jest jednak osobno wyrażanym parametrem. Po zakończeniu części analitycznej oprogramowanie umożliwia automatyczne obliczanie niepewności pomiarowych parametrów mierzonych, którego proces opisano poniżej. Jeżeli wybrana zostanie opcja zapisywania do pliku po wprowadzeniu jego nazwy zapisane do niego zostaną wszystkie wyniki analizy charakterystyki amplitudowo-częstotliwościowej, wszystkie punkty pomiarowe oraz wartości niepewności.
J1 . # + # # # Wyznaczenie niepewności pomiarowych [15] odbywa się automatycznie po wybraniu tej opcji w programie przez użytkownika. Wybierane jest pięć równo rozłożonych po spektrum częstotliwości, przy których dokonywane jest 30 pomiarów wzmocnienia i przesunięcia fazowego [1]. Program dobiera częstotliwość na zasadzie równań:
f = fmin + Δi
Δ=
fmax − fmin 6
[Hz]
[Hz]
(7) (8)
gdzie: f – częstotliwość pomiarowa, Δ – krok zmiany częstotliwości, i – iteracja programu (kolejne liczby całkowite od 1 do 5), fmax – końcowa częstotliwość pomiarowa, zaś fmin – początkowa częstotliwość pomiarowa.
45
/
L D L / C / b
Rys. 4. Algorytm obliczania niepewności Fig. 4. Uncertainty calculation algorithm
Każda końcowa niepewność z poniżej opisanych niepewności pomiarów częstotliwości, napięcia i fazy podawana jest przez program, jako niepewność rozszerzoną, czyli niepewność pomiaru przemnożoną przez współczynnik rozszerzenia k = 2. Niepewność pomiaru częstotliwości wynika wyłącznie z rozrzutu sygnału napięciowego zadawanego przez generator Siglent SDG 1025. W jego przypadku niepewność obliczana jest w odniesieniu do największej częstotliwości pomiarowej.
[Hz]
u f = fmax ⋅ 100 ppm = fmax ⋅ 100 ⋅ 10−6
Parametr s jest estymatorem niepewności standardowej dla wartości napięcia i oblicza się go dla każdego z pięciu punktów pomiarowych na podstawie wzoru: s=
(uw )2 + (100uT )2 [dB]
(
1 udigit 3
)
2
+
1 (uA )2 + s 2 3
(10)
[V]
W celu sprawdzenia parametrów użytkowych stanowiska przebadano eksperymentalny, magnetostrykcyjny filtr MEMS z rezonatorami dyskowymi. Jest to środkowoprzepustowy filtr Czebyszewa o wysokiej dobroci. Deklarowana częstotliwość środkowa pasma przepustowego wynosi 128 kHz. Przebadano filtr w okolicy tej częstotliwości przy danych parametrach pomiaru: amplituda wymuszenia: 1 Vrms, częstotliwość pomiarowa początkowa: 125 kHz, częstotliwość końcowa: 135 kHz, czas pomiaru: 500 s. Na rysunku 5 podano wyznaczoną na opracowanym stanowisku pomiarowym charakterystykę amplitudowo-częstotliwościową badanego filtru, zaś na rysunku 6 przedstawiono charakterystykę przesunięcia fazową. Na obydwu wykresach zaznaczono także pole niepewności pomiarowej z uwzględnieniem współczynnika rozszerzenia [10] wynoszącego 2. Przedstawione na rysunkach 5 i 6 oraz w tabeli 1 przykładowe wyniki badań wskazują na niezwykle wąskie pasmo przepustowe i wysokie tłumienie pasma zaporowego badanego filtru. Parametry te są lepsze od typowych filtrów aktywnych RC dostępnych na rynku, również wielostopniowych. Natomiast znaczące znie-
(11)
[V]
(13)
M1 $
gdzie: udigit – niepewność digitalizacji, w opisywanym przypadku wynosi: udigit = 0,0000005 V; uA – niepewność wynikająca z deklarowanej dokładności miernika i na danym zakresie wynosi:
uA = 0,004% ⋅ x + 0,0009% ⋅ Z
[V]
n (n − 1)
Obliczanie niepewności przesunięcia fazowego przebiega w analogiczny sposób.
Niepewność wynikająca z miernika wzmocnienia jest deklarowana przez producenta wprost [13]. Składowa niepewności, wynikająca z dokładności pomiaru napięcia za pomocą multimetru jest określona zależnością: uT =
− x)
2
sr
gdzie: x – zmierzona wartość napięcia, xsr – średnia wartość zmierzonego napięcia, n – liczba pomiarów dla danego punktu (n = 30). Typowa wartość uzyskiwana na stanowisku wynosi s d 0,0004 V.
(9)
Niepewność pomiaru napięcia wynika z charakterystyki miernika wzmocnienia typu 3575A (uw), oraz woltomierza typu TH1961 (uT), z którego sygnał jest odczytywany, wynosi: uwz =
∑ (x
(12)
gdzie: Z – wartość zakresu wynosząca 1 V, zaś x – zmierzona wartość napięcia. Składowa uT wyliczana jest dla średniej w odniesieniu do każdego punktu pomiarowego. Do końcowych obliczeń program używa największej z policzonych niepewności.
Rys. 5. Charakterystyka amplitudowa badanego filtru MEMS, z uwzględnieniem pola niepewności pomiarowej (współczynnik rozszerzenia wynoszący 2) Fig. 5. Amplitude characteristics of the tested MEMS filter, taking into account the measurement uncertainty field (expansion coefficient equal to 2)
46
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 /2022
@ @ ( Tabela 1. Wyniki badania magnetostrykcyjnego filtru MEMS Table 1. Magnetostrictive MEMS filter results
Rodzaj filtru
Filtr środkowoprzepustowy MEMS
Częstotliwość przy wzmocnieniu maksymalnym
126 760,0 Hz
Częstotliwość przy wzmocnieniu minimalnym
125 770,0 Hz
Częstotliwość graniczna dolna
126 690,0 Hz
Częstotliwość graniczna górna
129 180,0 Hz
Częstotliwość przepustowa środkowa
127 935,0 Hz
Wzmocnienie maksymalne Wzmocnienie minimalne Szerokość pasma przepustowego Niepewność całkowita pomiaru częstotliwości
6,1 dB –74,4 dB 2490,0 Hz 27,0 Hz
Niepewność całkowita pomiaru fazy
4,0
Niepewność całkowita pomiaru wzmocnienia
4,0 dB
kształcenie charakterystyki amplitudowej w pasmie przenoszenia, typowe dla filtrów Czebyszewa, oraz gwałtowne przeskoki charakterystyki fazowej, czynią go niezdatnym do wykorzystania w technice pomiarowej. Wskazuje to na konieczność pomiaru pełnych charakterystyk w procesie ich prototypowania. Charakterystyka amplitudowa filtru podana na rysunku 5 potwierdza, że badany filtr to filtr Czebyszewa [4]. Na charakterystyce amplitudowej można zaobserwować pasmo przepustowe filtru wraz z charakterystycznymi zafalowaniami. Częstotliwość środkowa pasma filtru przepustowego została wyznaczona na 127,79 kHz, co jest bardzo bliskie wartości deklarowanej przez producenta.
S1 " Stanowisko może zostać wykorzystane do badania filtrów elektronicznych, w tym eksperymentalnych typu MEMS. Zapewnienie spójności pomiarowej w odniesieniu do państwowego wzorca pomiarowego napięcia elektrycznego przemiennego oraz wzorca czasu i częstotliwości utrzymywanych w Głównym Urzędzie Miar [14, 15].
Stanowisko charakteryzuje się niepewnościami pomiarowymi rzędu 1,5 % wartości mierzonej. Oznacza to dużo większą dokładność niż w komercyjnych analizatorach transmitancji, a tym bardziej nowoczesnych oscyloskopach cyfrowych z generatorami śledzącymi. Zwiększenie dokładności okupione jest wydłużonym czasem pomiaru – dla zaprezentowanych wyników wynosił 500 s. Dużą zaletą opisywanego stanowiska względem innych metod i rozwiązań analizatorów komercyjnych jest równoległy pomiar amplitudy i przesunięcia fazowego. Istotnym elementem nowości jest automatyczne wyznaczanie niepewności typu A zgodnie z obowiązującymi normami, co jest szczególnie przydatne w warunkach przemysłowych.
$ ' 1. Adams T.M., G104-A2LA Guide for estimation of measurement uncertainty in testing, American Association of Laboratory Accreditation Manual 10, 2002:1. 2. Bapat Y.N., Electronic Circuits and Systems: Analog and Digital, Tata McGraw-Hill Education, 1992. 3. Johnson Jr C.R., Sethares W.A., Klein A.G., Software receiver design: build your own digital communication system in five easy steps, Cambridge University Press, 2011. 4. Laghari W.M., Baloch M.U., Mengal M.A., Shah S.J., Performance analysis of analog Butterworth low pass filter as compared to Chebyshev type-I filter, Chebyshev type-II filter and elliptical filter, “Circuits and Systems”, Vol. 5, No. 9, 2014, 209–216, DOI: 10.4236/cs.2014.59023. 5. Litovski V., Electronic Filters, Springer Singapore, 2019. 6. Liu H., Wang J., Kiselychnyk O., Mathematical Modeling and Control of a Cost Effective AC Voltage Stabilizer, “IEEE Transactions on Power Electronics”, Vol. 31, No. 11, 2016, 8007–8016, DOI: 10.1109/TPEL.2015.2514180. 7. Przesmycki O., Filtry elektryczne, Wydawnictwa Komunikacji i Łączności, 1962. 8. Tłacza W., Środowisko LabVIEW w eksperymencie wspomaganym komputerowo, Wydawnictwo Naukowe PWN, 2017. 9. Williams A.B., Taylor F.J., Electronic filter design handbook, McGraw-Hill Education, 2006.
%
Q
10. EA-4/02 M:2013 Evaluation of the Uncertainty of Measurement in Calibration. 11. Siglent SDG1000 Datasheet. 12. Tonghui TH1961 Datasheet. 13. 3575A Operating & Service Manual. 14. ILAC-P14:09/2020 ILAC Policy for Measurement Uncertainty in Calibration, 2020, International Laboratory Accreditation Cooperation, Silverwater, Australia. 15. JCGM 100:2008, Evaluation of measurement data — Guide to the expression of uncertainty in measurement, 2008, Joint Committee for Guides in Metrology, Sèvres, Francja.
Rys. 6. Charakterystyka fazowa badanego filtru MEMS, z uwzględnieniem pola niepewności pomiarowej (współczynnik rozszerzenia wynoszący 2) Fig. 6. Phase characteristics of the tested MEMS filter, taking into account the measurement uncertainty field (expansion coefficient equal to 2)
47
/
L D L / C / b
" F . F "8" 8 Y 0 H F # #' MEMS type electronic filters used in practice require experimental testing of amplitude and phase characteristics. This requires the development of a measurement method that will not only measure the characteristics, but also allow for the simultaneous estimation of the measurement uncertainty. The computer-controlled measuring system described in the article enables the measurement of filter characteristics while maintaining measurement traceability, taking into account the fully automated process of estimating the measurement uncertainty. The tests carried out during the study of the characteristics of the exemplary magnetostrictive filter confirmed both the correctness of the proposed solution and its applicability in practice. KeywordsF "8" @ # # 6 @
# 4
!
$ ORCID: 0000-0002-3102-6591
$ % ORCID: 0000-0003-4156-5473
A . / 8 G 6 " * ; A L + 6 - > % B % \ % > % * + # > *+ > % 6 +
0% % + + . / % " . / / > I I I I 6 % % * > * % I - + I% - < %I + - % I * @ I%
( $ * ORCID: 0000-0002-1214-1009 / V % [ > U . * ; 0 > . + .;0. . % I ( L 4 6 % F * / * . > % N F . # " 4 J(!&=U(!&RK . % I * L 4 6 &M % + J 6 + K * > " L > % . * < * ; > * 4 + J(!&?U(!&'K A % % + + F * + % 6 # +> % @ * % +% * 6 B # 6 . A % % + + . * V % - JP V 4K * # + % 6
48
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 /2022
Pomiary Automatyka Robotyka, ISSN 1427-9126, R. 26, Nr 3/2022, 49–55, DOI: 10.14313/PAR_245/49
H 0 h % V % 6 X 8 Marek Godlewski, Krzysztof Rogowski . V # / % 8 # / M?H# &?> ?& V
Abstract: The article presents the data acquisition and control system built using the Scilab software environment which can be an interesting alternative for commercial and very expensive solutions. The system is composed of a National Instruments myDAQ data acquisition device connected to a PC with open-source software for numerical computations Scilab. The proposed system is equipped with Graphical User Interface (GUI) that allows users to process control, visualize and save the acquired data. In addition, the PID control strategy is implemented. Finally, results of laboratory tests verifying the operation of the created system and conclusions are presented. 9 F % h # 6# # .;H
1. Introduction Nowadays, Data Acquisition systems (DAQ) enabling the collection of measurement data of dynamic objects, allowing to monitor and control of the operation of a given object are increasingly used in various fields of life, especially in industry and science. This is due to the need to record more and more data to make developmental business decisions. It is therefore a desirable issue in every well-developing industrial company, as it allows one to avoid the occurrence of problems, time losses, faster repair of damages, or more intensive development. Therefore, for such a system to meet the requirements and demands of users, it must be characterized by reliability, accuracy, and ease of use [2, 3, 7, 8]. There are many DAQ systems available on the market, however, most of them require possessing very expensive software like LabVIEW, MATLAB, etc. Therefore, for less demanding measurement problems there is a need to find some cheaper alternatives for commercial solutions. The Scilab environment is an accessible open-source software for performing numerical calculations, having many methods tailored for this purpose, including solving linear systems, determining eigenvalues/vectors, fast Fourier transform, solving differential equations, optimization algorithms, etc. Additionally, Scilab has functions for creating low- and high-level graphics. The programming language introduced in this environment that operates on matrices is a simple, powerful, and efficient tool.
# ) F A F 4 * # * $ 6 % % ! != (!(( # % % (R !) (!(( !
This software can also work with subroutines written in C, C++ or Fortran. Except for a few commands related to graphics, the syntax of Scilab is the same as that used in MATLAB [6, 9, 10]. In [4, 5], a similar system was built using RTAI-Lab environment and Scilab. The presented tool requires the Linux kernel to be installed with ARM-based device and is dedicated to rapid control system of a DC servo motor. In this paper, the Scilab environment will be used to develop the author’s data acquisition system. The system will be based on the popular NI myDAQ measurement card and toolboxes: NIDAQ and GUI Builder. It will consist of two programs: the first one, enabling only data acquisition and visualization, and the second one, which will be extended with the implementation of a PID controller.
G1 ' Y ' [ Scilab was developed in 1990 by the French National Computer Research Institute INRIA and the world’s oldest engineering school ENPC for engineers and scientists. It has been distributed since 1994 under an open-source license [9, 10]. It is also licensed under the GPL, which allows the user much freedom, such as using the software for any purpose and adapting it to his needs or sharing the software with other users. Scilab is primarily used for mathematical computations and analysis. It allows operations on numbers as well as on vectors or matrices and contains hundreds of mathematical functions. Thanks to the presence of a high-level programming language in Scilab, it is possible to access advanced data structures or graphical functions. It can also cooperate with programs written in other languages. It can be used in many fields, from simple calculations to signal processing or process control [9, 10]. The NIDAQ toolbox enables Scilab to work with National Instruments devices. This module allows the user to [10]: − easily configure the measuring device and read the data in Scilab for immediate analysis, − send data through analog and digital output channels of a measuring device,
49
$ : B C "
I1 :% 3 \
− control the analog input and output, counter/timer and digital I/O of a DAQ device (National Instruments).
NI myDAQ is a portable data acquisition device designed and produced by National Instruments that allows the user to take measurements and analyze them in the real world. By combining NI myDAQ with the software on a computer, it is possible to analyze and process the signals obtained and to control simple processes anywhere and anytime [11]. An illustration of the NI myDAQ measurement card is presented in Figure 2.
NIDAQ module offers the functions such as [10]: − configuration and creation of channels for the measurement card – DAQ_CreateAIVoltageChan for analog inputs and analog outputs DAQ_CreateAOVoltageChan, − input data to the system from the HMI - DAQ_WriteAnalogF64 command, − reading measured data into the system using the DAQ_ ReadAnalogF64 command, − configuration and control of tasks in the system – DAQ_ CreateTask, DAQ_StartTask, DAQ_StopTask and DAQ_ ClearTask commands, − errors handling – DAQ_ErrChk command, which checks the status of the operation, and in case of failure the associated task specified by taskHandle is stopped, deleted, and the corresponding error message appears − getting some information about the system with the DAQ_ SystemInfoAttribute command. The latest version of the NIDAQ module (version 0.3.2) was released in 2012 and is compatible with the Scilab 5.4.x version (for Windows 32- or 64bit). GUI Builder is a module used to build graphical user interfaces for applications created in Scilab [12]. The program allows the user to quickly build a GUI by adding objects, resizing them and moving them around in the window. It also allows for modification of their properties using the Object Properties button or in the code, which is automatically generated for the built interface. The user building the graphical interface with GUI Builder has at his disposal such objects as [12]: − pushbutton – a rectangular button usually used to trigger callbacks, − radiobutton – a button with two states, − checkbox – button with two states (used for many independent selections), − edit – editable string area, − text – text control, − slider – a scale control, which is a slider used for setting values between ranges with the use of mouse, − frame – a space for inserting other objects, − listbox – a control representing a list of items that can be scrolled and selected with the mouse, − popupmenu – a button that causes the display of a menu when it is clicked.
Fig. 2. NI myDAQ measurement card [13] Rys. 2. Karta pomiarowa NI myDAQ [13]
NI myDAQ has two analog inputs AI, two analog outputs AO, eight-bit digital input and output DIO, two audio inputs, three power inputs, digital multimeter input, and a USB connector to connect it to a computer [13]. Therefore, it offers many possibilities in the area of measurement and control. In the proposed DAQ system described in this paper, one analog input and one analog output will be used. The most important parameters of the AI analog inputs are [13]: − ADC resolution – 16 bits, − maximum sampling frequency – 200 kS/s, − accuracy of time measurement – 100 ppm of the sampling frequency, − voltage range – ±10 V. Key parameters of the AO analog outputs of the NI myDAQ measurement card [13]: − DAC resolution – 16 bits, − maximum update rate – 200 kS/s, − voltage range – ±10 V.
J1 % # 3 \
A view of the GUI Builder windows for Scilab version 5.4.1 is shown in Figure 1.
The first stage in the execution of the algorithm was to create a graphical interface using the previously installed GUI Builder toolbox and then generate code for it to add appropriate action functions to each of the objects used. For the program used solely for data acquisition and visualization, the graphical interface was equipped with three pushbutton objects, two text objects and one slider and axes object each. The completed graphical window is shown in Figure 3. Using the START button, the user initiates the start of the measurement process. In the code of this object, there are initialized parameters and determination of analog input and output channels and ranges of the measurement card, which will be used for the measurements. This is followed by a piece of code responsible for performing the measurements, assigning the collected measurement points to an array, and visualizing them on a graph in the axes object. The whole process of performing measurements depends on the STOP variable associated with
Fig. 1. GUI Builder windows view for Scilab Rys 1. Widok okien GUI Builder dla programu Scilab
50
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 /2022
= '
The PID control strategy is implemented as a discrete-time version of the dynamic equation of the PID controller [1] t
u (t ) = K pe (t ) + K i ∫ e (τ )d τ + Kd 0
d e (t ) , dt
(1)
where Kp is a gain of proportional part and Ki, Kd are gains of integral and derivative part, respectively. The transfer function representation of the PID controller is given by C (s ) = K p +
Ki NKd + , s 1 + N /s
(2)
where N is a constant of a low-pass filter. By the discretisation of integral I and differential D using the backward Euler method we obtain the discrete-time form of the PID equation Fig. 3. The graphical window of the system performing data acquisition and visualization Rys. 3. Okno graficzne systemu wykonującego akwizycję i wizualizację danych
C (z ) =
U (z ) b0 + b1z −1 + b2z −2 = , E (z ) a0 + a1z −1 + a2z −2
(3)
where the coefficients b0, b1, b2, a0, a1, a2 are described by the following equations the button of the same name, it must have a logical value equal to 0 – false. Subsequent measurements are made using a while loop. The values of the measurement points (red) and the set value (blue) for which the measurements are obtained. Pressing the STOP button causes the logical value of the STOP variable to change, which in turn causes the measurements to stop. The last button – SAVE – enables saving the points from performed measurements as well as the setpoint and time-instant values for which the measurements were performed to a .txt text file. They are presented in the form of three columns. The first column shows the values of the measurements performed (AI values). The second column is a vector created with the same length as the first one and contains the values set on the DAQ output (AO). The third column contains time-instant values in seconds. The created file can be given any name and saved anywhere on the disk. The slider is used to put the voltage on the analog output of the measurement card. The range of changes of this voltage was declared in the properties during its addition and is from 0 to 10V. The value of the voltage set from the slider is assigned to the variable data_ao and displayed in one of the added text objects.
b0 = K p (1 + NTs ) + K iTs (1 + NTs ) + Kd N ,
(
)
b1 = − K p (2 + NTs ) + K iTs + 2Kd N , b2 = K p + Kd N ,
(4)
a0 = (1 + NTs ) , a1 = − (2 + NTs ) , a2 = 1. Finally, the coefficients of the controller output signal were calculated from the transformations of the PID differential equation: a0U (z ) + a1z −1U (z ) + a2z −2U (z ) = b0E (z ) + b1z −1E (z ) + b2z −2E (z ) . Hence, we get the recursive equation of the PID control u [k ] = −
a1 a b b b u [k − 1] − 2 u [k − 2] + 0 e [k ] + 1 e [k − 1] + 2 e [k − 2] . a0 a0 a0 a0 a0
M1 "%3 # # The next functionality of the proposed DAQ system is the possibility of PID control of dynamical models. For this purpose, the discrete-time PID controller equations were implemented in the system. In the code of the system algorithm global variables describing the PID controller parameters were added, and their initial values assigned (Kp = 1, Ki = 1, Kd = 0). The functioning of some of the used graphic objects (START button, SAVE button) has also been changed, and appropriate functions for inserting new values into edit fields have been implemented. In the function referring to the START pushbutton all global variables used in the PID calculations responsible for ensuring zero initial conditions and the range of output voltages of the regulator were introduced. The calculated coefficients of the input and output signal equations were there implemented.
In the algorithm, a vector of u[k] was also created to collect all the history of the past control samples. The graph shows three signals: the first set comes from the slider, and this is a set point, the control signal from the controller output, and the signal measured on the output of the plant (the controlled signal). In the further part of the algorithm assigned to the START button – a controller feedback loop was implemented in the while loop. This was done using the controller’s output signal equation and by assigning newly calculated input and output signal values to their previous values. Care was also taken to ensure that the signals do not fall outside the declared voltage range (from 0 V to 10 V) by conditionally assigning maximum or minimum values to those values (outside the range). This allowed for the fully correct operation of the built PID controller. The functioning of the SAVE button has also been changed very slightly. In the structure of the whole code, the write func-
51
$ : B C " tion has been replaced by the fprintfMat function (the write function only allows three columns of data to be written). The change was caused by extending the saved file with the recorded control values of the PID controller. The control signal points were placed in the third column of the .txt file, while the time vector points went to the fourth column. Compared to the code of the program used for data acquisition and visualization, the implementation of the functionality of graphic edit objects used to change the controller settings (Kp, Ki, Kd) was completely new. In the first step, the declared global variables Kp, Ki, and Kd were handled by the corresponding edit fields. However, to use the inserted values of the fields correctly throughout the algorithm, they had to be converted from the string variable to double, which was done using the strtod function.
From the saved data, an identical characteristic is obtained as in Figure 5.
S1G1 "%3 In the next step, the same three-inertia dynamical system will be controlled by the implemented in the DAQ system PID controller. Figure 6 shows three signals: the set-point signal (blue), the control signal (green), and the output - measurement signal, which forms the control characteristic (red). The obtained control characteristic recorded for the same setpoint and transmittance of the inertial dynamical system of the third-order allows one to assess the quality of regulation. As can be seen, the application of the PID regulator with the default settings values (Kp = 1, Ki = 1, Kd = 0) made it possible to obtain the regulation of the measurement signal regulation: zero steady-state
S1 - ' The practical verification of the developed systems for data acquisition and visualization and PID control will consist, respectively, of the registration of the step characteristic of a dynamic plant and two control characteristics. As the plant the laboratory model show in Figure 4 in taken.
Fig. 5. Step characteristics produced by data acquisition and visualization software Rys. 5. Charakterystyka skokowa wykonana przy użyciu programu służącego do akwizycji i wizualizacji danych
Fig. 4. Front panel of the dynamic system model Rys. 4. Płyta czołowa modelu obiektu dynamicznego
The set value for both registered characteristics is Uo = 4.623 V. For one of the control characteristics, the values of the PID controller set points remain intact in relation to the initial ones. The second one will be performed for the values of the settings determined by the Ziegler-Nichols graphical method based on the plant step characteristic. As a dynamic object used to verify the operation of the programs, the third-order inertial plant was chosen described by the transfer function G (s ) =
1.89
(5s + 1)(s + 1)(2.5s + 1)
.
S1H1 # ' [ Figure 5 shows the waveforms of two signals: the signal of set voltage (blue color) and the step characteristic consisting of measurement points (red color). The step characteristic in its shape fully reflects the character of the inertial plant of the third order. Saving the data to a text file was done by pressing the SAVE button during the recording of the step characteristics to check the correctness of the data acquisition and visualization software.
52
P
O
M
I
A
R
Y
•
A
U
T
O
M
Fig. 6. Step characteristics of the PID-controlled acquisition system – default settings of the PID controller Rys. 6. Charakterystyka regulacyjna systemu akwizycji z regulacją PID – domyślne nastawy regulatora PID
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
= ' error determined by the integration part of the PID controller, overshoot of about 68 % and settling time of 15.1 seconds. These results will be compared with the PID controller with parameters tuned using Ziegler-Nichols open-loop method [1]. First, it was necessary to determine the parameters R and L based on the step characteristics shown in Figure 5. The parameters values of the controlled are computed as follows 1.2 Kp = ≈ 0.69 0.75 ⋅ 1.94 Ti = 2 ⋅ 0.75 = 1.5
Ki =
Kp Ti
=
0.69 ≈ 0.55 1.5
Td = 0.5 ⋅ 0.75 = 0.375 Kd = K p ⋅ Td = 0.69 ⋅ 0.375 ≈ 0.31 The step characteristic of a control system with parameters of the PID controller tuned by the open-loop Ziegler-Nichols are shown in Figure 7. The control characteristic shown in Figure 7, shows a better quality of plant regulation compared to the characteristic shown in Figure 6. A more detailed assessment of the quality of the performed regulation confirms the observations, i.e., zero steady-state error of control, overshoot of about 39 %, and settling time of 8.6 seconds.
obtain the most accurate regulation of the output signal. The construction of the data acquisition system using the myDAQ NI measurement card forced the use of an older version of Scilab software – Scilab 5.4.1. The reason for this choice was the lack of availability of an additional module in the latest version that would enable communication between the card and the software environment. Experimental verification of the constructed system shows the accuracy of the programs executed in the Scilab environment. The recorded step characteristics fully reflect the character of the dynamic object – a 3rd order inertial segment. The characteristic carried out in MATLAB based on data stored in a text file coincides with the registered one. Performing the characteristic curve on this dynamic object, which is the system of automatic regulation, the inertial segment of the third order with the same transmittance and the same value of the set voltage, allows one to notice the regulation of the measurement signal. However, the selection of PID controller settings by the step characteristic method according to Ziegler-Nichols enables us to obtain better indicators of the performed regulation.
This research was carried out in the framework of the grant no. WZ/WE-IA/6/2020 financed from the funds for science by the Polish Ministry of Science and Higher Education.
- 1. Duzinkiewicz K., Grochowski M., Piotrowski R., Regulatory PID, Politechnika Gdańska Wydział Elektrotechniki i Automatyki, 2009. 2. Emilio M.P., Data Acquisition Systems: From Fundamentals to Applied Design, Springer, 2013, DOI: 10.1007/978-1-4614-4214-1. 3. Park J., Mackay S., Practical Data Acquisition for Instrumentation and Control Systems, Elsevier, 2003, DOI: 10.1016/B978-0-7506-5796-9.X5000-9. 4. Skiba G., Żabiński T., Wiktorowicz K., Rapid prototyping of servo controllers int RTAI-Lab, VI Conference on Computer Methods and System, Cracow 21-23 November 2007, 141–146. 5. Skiba G., Żabiński T., Bożek A., Rapid Control Prototyping with Scilab/Scicos/RTAI for PC-based and ARM-based Platforms, 2008 International Multiconference on Computer Science and Information Technology, DOI: 10.1109/IMCSIT.2008.4747324. 6. Urroz G.E, Introduction to SCILAB, InfoClearinghouse. com, 2001.
Other sources Fig. 7. Control characteristics of the acquisition system with PID control – PID controller set values selected using the open-loop Ziegler-Nichols method Rys. 7. Charakterystyka regulacyjna systemu akwizycji z regulacją PID – wartości nastaw regulatora PID dobrane metodą charakterystyki skokowej wg Zieglera-Nicholsa
7. Conclusions The constructed acquisition system allows one to measure the data from one object. The user, using a graphic window, can set and change the setpoint value of the signal, observe the obtained measurement results in real-time, and save the data to a text file for in-depth analysis performed in another program. It can also change the PID regulator settings values to
7. National Instruments, Data Acquisition Fundamentals, Application Note 007, National Instruments Corporation, 2002. 8. https://mikrokontroler.pl/2016/03/08/nowoczesne-systemy-akwizycji-danych/ – Data acquisition systems for beginners, 9. https://pl.wikipedia.org/wiki/Scilab – Information about Scilab 10. https://www.scilab.org/about/scilab-open-source-software, Scilab as open-source, 11. https://atoms.scilab.org/toolboxes/Nidaq/0.3.2 – NIDAQ module description. 12. https://atoms.scilab.org/toolboxes/guibuilder/4.2.1 – GUI Builder module description. 13. https://www.ni.com/docs/en-US/bundle/mydaq-features/ resource/373060g.pdf – Datasheet for the myDAQ NI measurement card.
53
$ : B C "
% % * * 6 Streszczenie: W artykule zaprezentowano system akwizycji danych i sterowania zbudowany w oparciu o środowisko programowe Scilab, który może stanowić interesującą alternatywę dla komercyjnych i bardzo kosztownych rozwiązań dostępnych na rynku. Układ składa się z karty akwizycji danych myDAQ produkowanej przez National Instruments oraz komputera wyposażonego w oprogramowanie do obliczeń numerycznych Scilab. Stworzono graficzny interfejs użytkownika (GUI), który pozwala na kontrolę procesu, wizualizację i zapis zmierzonych danych. Dodatkowo zrealizowano układ regulacji automatycznej z regulatorem PID. Na koniec pokazano badania laboratoryjne weryfikujące poprawność działania systemu oraz przedstawiono wnioski.m pracy F % # 6# # * .;H
Marek Godlewski, Eng.
Krzysztof Rogowski, PhD, Eng
* % !)$* ORCID: 0000-0002-8031-8283
* $ 6 % ORCID: 0000-0002-6871-4806
; (!((# % * * % * % > Y F 8 8 * > * F V F N > * U % > % T % * % 6 Y F " 8 * * F V F N * % * % F %
T % " J(!!RK % . H J(!&(K % * F V > F N * T 0% . F Y F 8 > 8 * *# V > F N * T > % % # % # % F %
54
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 /2022
B J @ VPMUOXVMT 8 MT @ `?MFMM
Informacje dla Autorów & > ' @ ( < ' MX MFV` 8 / L B / > < G / Z ' B ; / B Z / B L D Z / Z B Y B ; / B ' / B ' ' / _B B ' DYa8 $ L Y < / B / / ' D / B / ' Z L < ' B / 8
Wskazówki dla Autorów # ) # ' ' / B O Pomiary Automatyka Robotyka / / G Y/ Z ) > _ / Z QF L a Y / ' > Y ? L O D _ / B / a > _ B Y b VEF>MFF L a Y / ' > _E>Q a Y / Y ' ' > YbG > Y / _ B 8 ' a > / / / Y / Y ' > B Y / Y ' > ?' D ? Y B / 8 / 8 8 /' B 8 j b 8 `FF / 8 VFFF / b / ' Z ' D b 8
/ G B Y bG L Z F T ' / / G B Y b V ' _PF FFF L / B `FFF M L a 8 Q < ' 8 ( / / L / Z Y B Y bG ' / Yb 8 Nie drukujemy komunikatów! $ Z B G Z B ' D L _ Y a B Y b EFF>UEF L ' D 8 ' B / L L Y ' 8 / B Z / Z ; Z / G 8
" - # ) ` + # ' # ` # # g 8 / Z Z / bG bG 8 L / B Z / / ' / ' 8 & L bG / Y B Z G B / Z B G / ' / Y l L 8 8 + # - - L ' Y 8 / L b / 8 Z < ZG Z / > L D Y B ' D 8 $ / / / / ' / L ' / Y 8 ( / / < / B L / Z8
Kwartalnik naukowotechniczny Pomiary Automatyka Robotyka jest indeksowany w bazach BAZTECH, Google Scholar oraz INDEX COPERNICUS J; O (!(&S )!#! K# B w bazie naukowych 6 B 04;0PN0 . I I % realizacji idei Otwartej Nauki, % 6 6 naukowo-technicznym Pomiary Automatyka Robotyka. Punktacja Ministerstwa 8% P 6 naukowe w kwartalniku Pomiary Automatyka Robotyka wynosi obecnie R! J naukowych i recenzowanych + F % % % & * % (!(& # ()))?K . % naukowe – automatyka, elektrotechnika i elektronika.
EE
J@c] : C $% ^A] (
8+ ) + # # ) / # # '
3.
O ' Pomiary Automatyka Robotyka < Z / Y @ ( < ' Z Z Y ' L ' ? L L / / / / Y b Z ' ) 1. / L wymieniowego Autora # # ' > / / L 8 h' /i 8 / L / B LB L / / B B B 'L 8 2. / / # ' '` # jej powstanie > ) > / < B Z / / ' Y B /L B B L ? Y Z / / / / B > / < Y/ / / h' 'i 8 Y/ L B Z / /L / Y / / B L ' / / B
ET
P
O
M
I
A
/ / Z Y/ Z Z < Z / / ' B 8
/ Q g ' ` ) # # ' > / / D / B / OB B / ' / l L b L / Y< 8 hD i > B ' ; / B B / Y D B ;8
. # # # / B L < Z B B / < / > < G ' G b 8 & / ? / b Z< 8
# przeniesienie praw ) ' ) V$v & Z / Y / B Y/ / Z / Y8 ^ / / / / 8 ( / / ' ' Z 8
Redakcja kwartalnika Pomiary Automatyka Robotyka $
. L / B O B / / L / Z Y / $]J /8)
" " # 0% # \ " # . A # % * + - # ; P &M(R>)&(=# 4 (=# P ](!((# ?U&=# H<;S &! &M & ].04 (M?]?
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3 /2022
czasopisma
pomiary eksperyment
H > J
miara
POLSPAR
automatyka
' projekt
/
publikacje
konkurs
Z<
automatyka
seminarium
konferencje
POLSPAR
publikacje
relacja
AutoCAD
agencja kosmiczna
8 8
IFAC
esa
ZPSA
/ l
profesura
relacja
doktorat
robotyka seminarium
I szkolenie
58
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/2022
[ J%JA : ( @ @ ^ ](!
Prace w zakresie rozwoju technologii interfejsów mózg–komputer na potrzeby sterowania obiektami * % 6 B J * K ( & # # & # J $ % ( 1 $ ! # ! " " # # "
Y / / / Y B ' D / B ' ' B a D D : --; @ ' : @ _MFMV>MFMMa $ 1 # % Z B / / ' @ A^ C ) ' / B / L # % B 8 A ' bG / B :J Z B B ( B L / Z ' D _C =a8 B / /L B J / c 8 ' DY / B VP L 8 B L ' ( ' ' 8 L '> / _ :Ja 'L / / B / ' Y Y _MFVV 8a / B Z< Z / ' @ A^ C _MFMF MFMMa D / ' VT L ' D 8 L ' 8 A / 'L L ' D 8 8 / Z ' :J _MFVT MFVQ MFMVa L Z ' ( B 8 ' /8 ' YB / VFF / B ' / Y bG ' Z ' ' ' b ' ^ J 8 L L '> / _MFVPa8 ] / Z / = L / OB / / / B ; / b < EF B L ' 8 L L '> / L ' / B B Y / 8 8 B L B c [ / ' 8 / 8 ] MFVP 8 ' ( B ' Y L < / ' Y Z / L / B Y ' :J / . # Analysis and % $ % ># Z / < B < : --; B $ % 8 _ '8 ' a8 $ = # % S Y C ]B / % ; * # JCA ' - O '?(# * # (!(!# H<;S A ' OB _ &! &!!R])R'> >! !> !?'&>)# ; VP _( a MFMV 8 Y $ / C // ' )R'> >! !> !?'!>(# O;# & (
06 / % 8 # 0 ; F J F K . < J(!!R K# *% (!&& 6 % I % 6 # < # # 1 1 # . 6 F H & * % (!(& - % 6 * % # # % . < <6 . % I S * + *> # * + * % -
@ J C " 8 & Z / B / 8 8 $ ' ' ' ' % B C ' ' C " 8 ] MFVT 8 / / @ ' : ; 8 ( / Y / / ' L @ ' ( _@ ( a c _c(ca : C / C ' ' ^ " _:C ^ a 8 % ' L ]/ 8 ( / / V`F / L ) / ' ' B < B 8 ( /L L < B ]/ 8 ]B [ / PF / B B ( B VV B / [ VP8
" * A -
59
@ &C ]@]= cJC
MONOGRAFIE
STUDIA
ROZPRAWY
Hypersonic Technologies for Launching and Problems of Inertial Navigation Igor Korobiichuk, Viktorij Mel’nick Volodimir Karachun
Warszawa 2022
www.piap.pl
TF
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 /2022
Kalendarium wybranych imprez Data konferencji A ' ;
4th J D Conference in Brain-Computer J BCI 2021–2022
17–18 / 10 / 2022
Opole
13th Jc : / B : SYROCO 2022
17–20 / 10 / 2022
Japonia
16th C / ( / on Advanced Control $ ' ACD 2022
16–18 /11 / 2022
Nancy Francja
www: / )?? MFMM8 8 "O 8 mail: MFMMO W "O 8
1 Jc : ( / : : / COSY 2022
24–25 / 11 / 2022
Bolonia (
www: / )?? " 8 B 8 ? MFMM mail: MFMMW B 8
XXVII Konferencja NaukowoTechniczna automation 2023 > > @ b /
07–09 / 03 / 2023 10 / 10 / 2022
(
www: / )?? 8/ /8/ mail: W/ /8 8' "8/
21 European Control Conference ECC23
13–16 / 06 / 2023 15 / 01 / 2022
Rumunia
www: / )?? M`8 O 8 ' mail: M` W O 8 '
22nd Jc : ( : ' MFM`
09–14 / 07 / 2023 31 / 10 / 2022
Jokohama Japonia
www: / )?? 8 MFM`8 ' mail: MFM`W ' 8 8 /
Nazwa konferencji
Informacje dodatkowe
www: / )??B 8/ 8 / 8/ mail: 8/ W/ 8 / 8/
www: / )?? MFMV8
@ ( @
43
" # g # &5& # + = '
49
3 Y $ ' ~ 5 6