13.07.2015 Views

Artykuł - PAR

Artykuł - PAR

Artykuł - PAR

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Pomiary Automatyka Robotyka 12/2009Detekcja zmian w szeregach czasowychza pomocą transformaty falkowejMaciej KlemiatoArtykuł przedstawia podstawy teoretyczne ciągłej i dyskretnej transformatyfalkowej oraz możliwości praktycznego zastosowania jej w analiziezdarzeń (takich jak np. wykrywanie skoków wartości średniej) w zaszumionychszeregach czasowych. Omawiane algorytmy mogłyby znaleźć zastosowaniew diagnostyce przebiegów procesowych w zaawansowanych systemachautomatyki.aawansowane systemy automatyki, oprócz algorytmówregulacji, systemów wizualizacji i archiwizacjidanych pomiarowych, powinny być także wyposażonew moduły diagnostyczne. Moduły te pełnią rolęnadzorcy procesu przemysłowego, diagnozując sprawnośćsystemu sterowania i jego poszczególnych elementów,takich jak czujniki, człony wykonawcze czymagistrale komunikacyjne. Jednym z podstawowychelementów systemów diagnostycznych jest analizazdarzeń w szeregach zmiennych procesowych. Przykłademtakiej analizy jest segmentacja szeregów czasowychumożliwiająca wykrycie okresów stacjonarności(stanów ustalonych), skoków wartości średniejlub wariancji. Jednym z podstawowych narzędzi doanalizy zdarzeń w szeregach czasowych jest algorytmPage-Hinkleya bazujący na testach stosunku funkcjiwiarygodności (ang. Likelihood Ratio – LR) [2]. Stosujesię także filtry wykorzystujące wieloaspektowetesty statystyczne. Powyższe metody zostały opisanewe wcześniejszym artykule autora [1].Oprócz metod statystycznych stosuje się równieżklasyczne narzędzia analizy częstotliwościowej (transformataFouriera) oraz metody bardziej zaawansowanetakie jak np. transformata falkowa [3, 4]. Analizafalkowa, będąca przedmiotem niniejszego artykułu,jest bardziej predysponowana do zastosowania do sygnałówprzejściowych lub niestacjonarnych niż klasycznaanaliza fourierowska. W kolejnych rozdziałachprzedstawione zostaną pokrótce założenia ciągłeji dyskretnej transformaty falkowej oraz przykłady ichpraktycznych zastosowań.Analiza czasowo-częstotliwościowaDobrze znana i szeroko wykorzystywana w analizie sygnałówtransformata Fouriera (ang. Fourier Transform– FT) dokonuje dekompozycji sygnału na składowe sinusoidalneo różnych częstotliwościach:gdzie F(w) jest widmem częstotliwościowym, a f(t) badanąrealizacją czasową.Podczas transformacji następuje zmiana dziedzinyczasu na dziedzinę częstotliwości (rys. 1). W wynikutej operacji informacja czasowa zostaje utracona. Jestto poważną wadą w przypadku analizy sygnałów niestacjonarnych,gdy informacja o chwili wystąpieniai czasie trwania danego zjawiska jest bardzo istotna(jak w analizie zdarzeń w szeregach zmiennych procesowych).Z tego względu transformata Fouriera jestskuteczna jedynie dla sygnałów periodycznych, regularnychi stacjonarnych.Rys. 1. Transformata Fouriera. Przejście z dziedziny czasu (sygnałpo lewej) do dziedziny częstotliwości (sygnał poprawej)W pewnym stopniu remedium na wady transformatyFouriera jest zaproponowana w 1946 r. przez DennisaGabora krótkookresowa transformata Fouriera(ang. Short-Time Fourier Transform – STFT). Transformatata, za pomocą przesuwanego wzdłuż sygnałuokna czasowego w(t), dzieli sygnał na małe kawałki,które można uznać za stacjonarne.∞− jwtF( w) = ∫ f( t)e dt(1)−∞dr inż. Maciej Klemiato, Katedra Automatyki, WydziałElektrotechniki, Automatyki, Informatyki i Elektroniki,Akademia Górniczo-Hutnicza, KrakówRys. 2. Zasada działania STFT17


Pomiary Automatyka Robotyka 12/2009Następnie kawałki te są poddawane FT(rys. 2):∞− jwtF( t, w) = ∫ [ f( t) w( t −t)]e dt (2)−∞W ten sposób w pewnym stopniu odzyskujesię traconą przez FT informacjęczasową.Główną wadą STFT jest fakt, że jakośćinformacji częstotliwościowej jest odwrotnieproporcjonalna do jakości informacjiczasowej. Związane jest to z szerokościąokna czasowego, która jest stała. Dla wąskiegookna występują: dobra rozdzielczośćczasowa i słaba rozdzielczość częstotliwościowa,dla szerokiego okna sytuacjajest odwrotna. Transformata falkowa natomiastdokonuje dekompozycji sygnałuna składowe falkowe o różnych częstotliwościach(skalach) i różnych pozycjach.Ponieważ falka zmienia swoją szerokość(skalę), nie występuje tu, jak w STFT, an-Rys. 4. Różne rodzaje falek oraz odpowiadające im funkcje skalujące. Ośpozioma oznacza czas (próbki), a oś pionowa – amplitudęCiągła transformata falkowaCiągła transformata falkowa (ang. Continous WaveletTransform – CWT) ma postać:Rys. 3. Różnice w rozdzielczości w dziedzinach: czasowej, częstotliwościowej,transformaty STFT oraz falkowejtagonizm między rozdzielczością informacji czasoweja rozdzielczością informacji częstotliwościowej. Falkęmożna tu rozpatrywać w kategoriach okna o zmiennejszerokości. Dla porównania, na rys. 3 przedstawionorozdzielczość reprezentacji czasowej, częstotliwościowej,STFT oraz falkowej.Asymetria i nieregularne kształty niektórych faleknaturalnie predysponują je do analizy sygnałów przejściowych,o dużych zakłóceniach, gwałtownych zmianachi pikach (powszechnie występujących w instalacjachprzemysłowych). Sygnały takie o wiele trudniejodwzorować za pomocą sinusoid. Ponieważ dla różnychfalek uzyskuje się różne reprezentacje tego samegosygnału, kluczową sprawą jest wybór falki bazowej.Jest to bardzo ważny element całej analizy. Na rys. 4przedstawiono kilka najbardziej popularnych falek.∞1 ⎛ t − b⎞fy( a, b)= ∫ f () t y dta ⎝⎜a ⎠⎟ (3)−∞gdzie: y Î L 2 (R), f Î L 2 (R) – funkcje ciągłe, całkowalnez kwadratem, bÎR, aÎR + .Jądrem transformaty falkowej jest falka podstawowa(bazowa) y Î L 2 (R) (ang. mother wavelet). Generalniejest ona funkcją oscylującą, szybko zanikającąlub określoną na nośniku zwartym, o zerowej wartościśredniej.Rodzina falek jest tworzona z falki podstawowejpoprzez jej przesunięcie, realizowane przez parametrtranslacji b oraz zmianę jej skali (częstotliwości) realizowanejprzez parametr skalujący a:yab, ()= t1 ⎛ t − b⎞ya ⎝⎜a ⎠⎟(4)Czynnik normalizujący a –1 / 2sprawia, że wszystkiefalki rodziny mają taką samą energię.Wzór (3) generuje współczynniki falkowe f y(a,b),które są funkcją skali a i przesunięcia b. Współczynnikfalkowy jest miarą podobieństwa (korelacji)między sygnałem f(t) a falką dla odpowiedniejskali i pozycji. Rys. 5 obrazuje procedurę obliczaniatych współczynników. Falka jest przesuwana wzdłuż sygnałui dla każdej jej pozycji obliczany jest współczynnikfalkowy. Po osiągnięciu końca sygnału, falka zostajeprzeskalowana, powraca na początek sygnału i całaprocedura się powtarza. Zestaw wszystkich współczynnikówf y(a,b) reprezentuje sygnał f(t) w dziedzinie falkowej.18


Pomiary Automatyka Robotyka 12/2009Rys. 5. Procedura obliczania współczynników falkowych dla CWT. Oś poziomaoznacza czas (próbki), a oś pionowa – amplitudęIstnieją różne metody graficznej reprezentacji ciągłejtransformaty falkowej. Rys. 6 przedstawia jedną z nich:dwuwymiarową reprezentację współczynników falkowychw funkcji czasu (oś pozioma) i skali (oś pionowa),gdzie kolor oznacza amplitudę współczynników.Analizowany jest tu sygnał skokowy, zakłócony szumembiałym. W miejscach zmian wartościśredniej (tj. w próbkach 500, 1000,1500) wyraźnie widać pionowe czarnelinie (odpowiadające lokalnymminimum współczynników), któreje identyfikują. Można by zatem stosowaćtę transformatę jako detektorskokowych zmian w sygnale. Największymproblemem jest tu dobórodpowiedniej falki i skali, w którejbędzie widoczna oczekiwana informacja.Nie istnieje jednoznaczny algorytmumożliwiający automatycznydobór tych parametrów, jest toraczej kwestia doświadczenia w doborzefalki do charakteru analizowanegosygnału.Dyskretna transformatafalkowaTransformata falkowa jest przekształceniemdwuparametrowym,odwzorowującym jednowymiarowysygnał f(t) w dwuwymiarową tablicęwspółczynników c j,k:j/jf()t = ∑ cjk, 2 2 y 2 t −k(5)jk ,( )gdzie zbiór funkcji falkowych y j,k(t)jest zazwyczaj bazą ortogonalnąoraz j Î (0, ∞), kÎ(-∞, ∞). Zbiór wszystkich współczynnikówc j,kjest nazywany dyskretną transformatą falkową(ang. Discrete Wavelet Transform – DWT) sygnałuf(t), a wzór (5) jest transformatą odwrotną. Wprowadzająctzw. funkcję skalującą j j,k, sygnał f(t) możnaprzedstawić jako:∞∞ ∞() ∑ k k ∑ ∑ j, k jk ,k=−∞j=0 k=−∞f t a j t d y t= ()+ ()(6)Pierwsza suma we wzorze (6) stanowi aproksymacjęsygnału, druga suma, wraz ze wzrostem j, reprezentujecoraz bardziej szczegółowe detale sygnału. Oczywiściew praktyce zakres sumowania jest skończony, tak jakskończony jest analizowany sygnał f(t).Transformatę falkową można rozpatrywać w kategoriachfiltrów cyfrowych. Jeżeli wyrazimy funkcję skalującąj(t) i falkę y(t) jako sumę ważoną przesuniętychfunkcji skalujących z wyższego poziomu j(2t):Rys. 6. Wizualizacja ciągłej transformaty falkowej z zastosowaniemfalki db3. Na górze: analizowany sygnał (czerwony),na dole: wykres współczynników falkowych dla tegosygnałuj()= t ∑ h( n) 2 j 2 t −n(7)n( )y()= t ∑ h 1 ( n) 2j2t −n(8)n( )to h(n) i h 1(n) możemy traktować jako współczynnikicyfrowego filtru FIR. Parametr n oznacza wtedy długośćfiltru (liczbę jego współczynników), a sumowaniewe wzorach (7) i (8) przebiega od 1 do n.19


Pomiary Automatyka Robotyka 12/2009Rys. 7. Pojedynczy blok transformacyjny (po lewej) oraz cały proces dekompozycji(po prawej)Pojedynczy blok transformacyjny jest przedstawionyna rys. 7. Filtr górnoprzepustowy h 1(n) reprezentujefalkę podstawową i na wyjściu produkuje współczynnikifalkowe (detale sygnału). Filtr dolnoprzepustowyh(n) reprezentuje funkcję skalującą i na wyjściu dajeaproksymację sygnału. Cały proces dekompozycji polegana przepływie sygnału przez identyczne bloki transformacyjne,tak że wyjście z poprzedniego bloku jestwejściem do następnego bloku.jej zastosowania w analizie zdarzeńw szeregach czasowych, takich jakwykrywanie skoków wartości średniej.Narzędzie to jest w stanie precyzyjniewykryć moment zmianynawet w mocno zaszumionym sygnale.Jednakże należy podkreślić,że przedstawiona analiza zostałaprzeprowadzona w trybie off-line,tzn. analizowany szereg czasowybył dostępny w całości. To oczywiścieogranicza możliwości zastosowaniatego podejścia w ciągłych systemach nadzorowania,gdzie wymagany jest tryb on-line, tzn. kolejnepróbki sygnału „przychodzą” z instalacji. Zastosowanietransformaty falkowej w trybie on-line jest takżemożliwe, lecz bardziej skomplikowane. Teoretycznie,zakres sumowania we wzorze (6) jest nieskończony.W praktyce długość sygnału poddawanego transformacjimusi być skończona. Co więcej, ze względu naspecyfikę przekształcenia, długość ta musi być wielokrotnościąpotęgi liczby dwa. Wymagane jest zatem dopełnianiesygnału (tzw. symetryzacja lub dopełnianiezerami). Dopełnianie oraz skończona długość sygnałupowodują błędy brzegowe. Błędy te z kolei powodujązniekształcenia transformacji (co w pewnych zastosowaniachmoże być istotne). Zagadnienia te wykraczająjednak poza obszar niniejszego artykułu.Na rynku istnieje sporo różnego rodzaju oprogramowaniado efektywnego obliczania transformatyfalkowej. Na przykład bardzo rozbudowany WaveletToolbox (dla środowiska Matlab) [6], czy NumericalRecipes – znany pakiet bibliotek języka C, zawierającyrównież procedury dla DWT [5]. W Internecie możnaznaleźć również wiele darmowych aplikacji [7].Rys. 8. Przebiegi aproksymacji i detali. Kolumna lewa zawieraanalizowany sygnał (na górze) oraz kolejne jego aproksymacje(od a 1do a 9). W kolumnie prawej analogiczneprzedstawione są detale (od d 1do d 9)Podobnie jak w przypadku CWT, istnieje szereg możliwościgraficznej reprezentacji DWT. Na rys. 8 zostałypokazane przebiegi aproksymacji i detali dla tego samegosygnału, który był analizowany za pomocą CWTna rys. 6. Jak widać, aproksymacje, wraz ze wzrostempoziomu dekompozycji, są coraz gładsze – stosuneksygnału do szumu jest coraz większy. Sygnał aproksymacjina 9. poziomie (a 9) mógłby z powodzeniem byćwykorzystany jako funkcja decyzyjna dla celów rozpoznawaniamomentu zmiany wartości średniej zakłóconegosygnału.PodsumowanieW artykule przedstawiono podstawy teoretycznetransformaty falkowej oraz możliwości praktycznegoArtykuł został napisany w ramach grantu finansowanegoz Europejskiego Funduszu Rozwoju Regionalnegow Programie Operacyjnym Innowacyjna Gospodarka.Nr grantu: UDA-POIG.01.03.01-12-171/08/00Bibliografia1. M. Klemiato, Przegląd statystycznych metod detekcjinagłych zmian w przebiegach procesowych,Pomiary Automatyka Robotyka nr 1/20062. M. Basseville, I. Nikiforov, Detection of AbruptChanges: Theory and Applications, Prentice Hall,19933. T. P. Zieliński, Reprezentacje sygnałów niestacjonarnychtypu czas-częstotliwość i czas-skala, ZeszytyNaukowe AGH, 19944. R. K. Young, Wavelet Theory and Its applications,Kluwer Academic Publ., Boston, 19935. W. H. Press, S. A. Teukolsky, W. T. Vetterling, B. P.Flannery, Numerical Recipes: The Art of ScientificComputing, Cambridge University Press, 20076. http://www.mathworks.com/products/wavelet7. http://www.amara.com/current/wavesoft.html20

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!