UNIWERSYTET ZIELONOGÓRSKI WYDZIAŁ ELEKTROTECHNIKI, INFORMATYKI I TELEKOMUNIKACJI INSTYTUT INŻYNIERII ELEKTRYCZNEJ PRACA DYPLOMOWA MAGISTERSKA Cyfrowe algorytmy sterowania energetycznymi filtrami aktywnymi i ich implementacja za pomocą procesora sygnałowego typu ADSP-21061 Pracę wykonał: Paweł Szcześniak Nr albumu 16690 Prowadzący: Dr inż. Krzysztof Sozański Zielona Góra, Czerwiec 2004 Spis treści 2 Spis treści 3 SPIS TREŚCI Wykaz symboli, oznaczeń i skrótów ...............................................................................................5 1. Wstęp ....................................................................................................................................9 1.1 Wprowadzenie ....................................................................................................................... 9 1.2. Cel i zakres pracy ............................................................................................................... 10 2.Przegląd teorii mocy ...................................................................................................................11 2.1. Moce w obwodach z przebiegami sinusoidalnymi ............................................................. 11 2.2.Moce w obwodach z przebiegami niesinusoidalnymi ......................................................... 12 2.2.1.Teoria Budeanu ............................................................................................................12 2.2.2.Teoria Fryzego..............................................................................................................13 2.2.3.Teoria mocy według Shepherda i Zakikhaniego ..........................................................14 2.2.4.Teoria według Kustrers’a i Moore’a ............................................................................16 2.2.5.Teoria mocy według Czarneckiego ..............................................................................16 2.3.Podsumowanie teorii mocy ................................................................................................. 17 3. Algorytmy sterowania energetycznymi filtrami aktywnymi .....................................................19 3.1. Podstawy filtracji aktywnej ................................................................................................ 19 3.2. Metoda identyfikacji harmonicznej podstawowej .............................................................. 22 3.3. Metody całkowe ................................................................................................................. 23 3.3.1. Pierwsza metoda całkowa............................................................................................23 3.3.2. Druga metoda całkowa ................................................................................................23 3.4. Metody wektorowe-teoria mocy chwilowych .................................................................... 24 3.4.1. Metody wektorowe wg H. Akagi oraz T. Furuhashi ...................................................24 3.4.2. Przekształcenie Clarka - Parka ....................................................................................26 3.4.3. Algorytm sterowania trójfazowego APF na podstawie teorii mocy chwilowych .......29 3.4.4. Układ sterowania oparty na modyfikacji teorii mocy chwilowych .............................32 3.4.5. Algorytm oparty na teorii mocy chwilowych p-q-r ....................................................33 3.5. Algorytmy bezpośrednie oparte na rozkładzie przebiegu okresowego w szereg Fouriera.............................................................................................................................. 36 3.5.1. Algorytm Moving Fourier Transform .........................................................................36 3.5.2. Algorytm sliding DFT .................................................................................................37 3.5.3. Algorytm sliding Goertzel DFT ..................................................................................40 3.6. Algorytm kwadraturowy..................................................................................................... 42 4. Podstawowe układy nadążnych modulatorów PWM ................................................................47 4.1. Jednofazowy modulator histerezowy ................................................................................. 47 4.2. Trójfazowy modulator histerezowy .................................................................................... 48 4.3. Podstawy modulacji PWM ................................................................................................. 49 4.4. Regulator PI ........................................................................................................................ 51 4.5. Jednofazowy modulator nadążny PWM z regulatorem PI ................................................. 53 4.6. Trójfazowy modulator nadążny PWM z regulatorem PI.................................................... 53 4.7. Trójfazowy modulator histerezowy nadążny z tablicą przełączeń ..................................... 54 5. Procesor sygnałowy ...................................................................................................................57 5.1. Wiadomości podstawowe dotyczące procesora sygnałowego ADSP 21061 ..................... 57 5.2. Formaty zapisu liczb........................................................................................................... 61 5.3. Pisanie programów i ich optymalizacja .............................................................................. 62 6. Badania symulacyjne .................................................................................................................67 6.1 Badanie symulacyjne trójfazowego histerezowego modulatora nadążnego ....................... 67 6.2. Badanie symulacyjne trójfazowego modulatora nadążnego PWM z regulatorem PI ........ 69 6.3. Badanie symulacyjne trójfazowego modulatora nadążnego z tablicą przełączeń .............. 71 Spis treści 4 6.4. Symulacja układu nadążnego kształtowania prądu kompensacyjnego .............................. 73 6.5. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na identyfikacji pierwszej harmonicznej ................................................................................ 74 6.6. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na teorii mocy chwilowych .................................................................................................... 79 6.7. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na modyfikacji teorii mocy chwilowych ................................................................................ 84 6.8. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na teorii mocy chwilowych p-q-r ........................................................................................... 89 6.9. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na filtracji typu sliding DFT ................................................................................................... 93 6.10. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na filtracji typu sliding Goertzel DFT ............................................................................... 97 6.11. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania moving Fourier Transform ........................................................................................................... 101 6.12. Badanie symulacyjne trójfazowego układu APF z kwadraturowym algorytmem sterowania ........................................................................................................................ 104 6.13. Implementacja algorytmów sterowania aktywnymi filtrami aktywnymi za pomocą procesora sygnałowego ADSP-21061 ............................................................................. 107 7. Posumowanie i wnioski końcowe ...........................................................................................117 Streszczenie ................................................................................................................................119 LITERATURA ............................................................................................................................121 Wykaz symboli, oznaczeń i skrótów 5 Wykaz symboli, oznaczeń i skrótów Symbole: A0, Am1, Am2... –wartości maksymalne harmonicznej zerowej, pierwszej, drugiej ... Cq –macierz transformacji e, eA, eB, eC –różnica pomiędzy prądem zadanym a wyjściowym fS –częstotliwość sygnału modulującego i01h –wartość pierwszej harmonicznej prądu obciążenia iav –wartość średnia prądu iα , iβ –prądy w układzie ortogonalnym α-β i*α , i*β –prądy zadane w układzie ortogonalnym α-β iC0, iC1, iC2, iC3 –sygnały kompensujące wykorzystywane jaką prądy zadane w modulacji nadążnej iK, iKA, iKB, iKC –prąd wyjściowy modulatora iK0, iK1, iK2, iK3 –prądy kompensujące iO, iO0, iO1, iO2, iO3 –prądy obciążenia iS, iS0, iS1, iS2, iS3 –prądy sieci iZ, iZA, iZB, iZC –prąd zadany modulatora nadążnego Ip, Iq –składowa czynna i bierna prądu I* –wartość prądu sprzężona do prądu I k –numer harmonicznej kp –współczynnik wzmocnienia regulatora proporcjonalnego n –numer próbki N –ilość próbek na okres P –moc czynna p, q –wartości chwilowe mocy czynnej i biernej pˆ , qˆ –pożądane moce chwilowe, czynna i bierna, pobierane z linii zasilającej p L* , q L* –kompensowane składowe mocy chwilowych czynnej i biernej odbiornika pL , qL –średnie wartości mocy chwilowych czynnej i biernej odbiornika p L+ , q L+ –średnie wartości mocy chwilowych czynnej i biernej odbiornika dla zgodnego kierunku wirowania wektora napięć fazowych p L− , q L− –średnie wartości mocy chwilowych czynnej i biernej odbiornika dla przeciwnego kierunku wirowania wektora napięć fazowych Wykaz symboli, oznaczeń i skrótów 6 r –współczynnik tłumienia R –stopień interpolacji - decymacji S, SA., SB, S.C. –sygnał sterujący tranzystorami falownika Sn –sygnał modulujący Sm –sygnał modulowany t –czas Ti –czas całkowania regulatora całkującego (czas zdwojenia) Ts –okres napięcia zasilania linii u, uA, uB, uC –sygnał wyjściowy regulatora PI u(t), i(t) –wartości chwilowe napięcia i prądu UDC –wartość napięcia stałego na kondensatorze falownika * U DC –wartość zadana napięcia na kondensatorze falownika Um, Im –wartości maksymalne napięcia i prądu US –wektor napięć fazowych Uq –wektor napięć prostopadły do wektora napięć fazowych US1, US2, US3 –napięcia fazowe Uα , Uβ –napięcia fazowe w układzie ortogonalnym α-β Z –sygnał sprzężenia zwrotnego α, β, αx, βx –sygnały wyjściowe regulatorów histerezowych w układzie trójfazowego regulatora nadążnego z tablicą przełączeń δ (t + TS / 4) –operator przesunięcia o ¼ okresu Ts Δh –szerokość pętli histerezy ϕ, ϕ1, ϕ2, ϕ3 –kąty przesunięcia napięcia fazowego ϕd –przesunięcie fazowe przesuwnika fazy ϕf –przesunięcie fazowe filtru dolnoprzepustowego ω –pulsacja Oznaczenia: G(s) –transmitancja zespolona G(z) –transmitancja cyfrowa Wykaz symboli, oznaczeń i skrótów 7 Skróty: ALU –układ arytmetyczno-logiczny (Arithmeti-Logic Unit) APF –energetyczny filtr aktywny (active power filter) DAG –generator adresowy (Data Address Generators) DMA –bezpośredni dostęp do pamięci (Direct Memory Access) DSP –cyfrowy processor sygnałowy (Digital Signal Processor) FD –filtr dolnoprzepustowy FG –filtr górnoprzepustowy PI –regulator proporcjonalno-całkujący PLL –pętla synchronizacji z napięciem sieci (phase locked loop) PWM –modulacja szerokości impulsów (pulse width modulation) SHARC –Super Harvard Architecture Computer SFDR –współczynnik określający zakres dynamiczny bez zniekształceń (spurious free dynamic range) SINAD –współczynnik określający zakres dynamiczny (signal to noise and distortion ratio) THD –współczynnik zawartości harmonicznych (total harmonics distortion) VSI –falownik napięcia (voltage source inverter) Wykaz symboli, oznaczeń i skrótów 8 1. Wstęp 9 1. Wstęp 1.1 Wprowadzenie W ostatnich latach nastąpił duży postęp w dziedzinie wytwarzania, przesyłu i przekształcania energii elektrycznej. Jednocześnie nastąpił znaczny wzrost liczby zastosowanych urządzeń elektrycznych o dużych mocach jednostkowych i nieliniowych charakterystykach prądowo-napięciowych. Odbiorniki te są źródłami zarówno wyższych harmonicznych, jak i przesunięć fazowych prądów w liniach zasilających. Niejednokrotnie w układach trójfazowych może wystąpić niesymetria obciążenia. Wszystkie niepożądane składowe prądów, związane z przesunięciem fazowym niesymetrią i wyższymi harmonicznymi powodują wzrost mocy ustalonej urządzeń, dodatkowe straty mocy czynnej oraz zakłócenia elektromagnetyczne, które wpływają niekorzystnie na inne odbiorniki, a szczególnie na systemy zabezpieczeń, automatyki, łączności i sterowania. Filtracja aktywna jest jednym z możliwych sposobów służących poprawie jakości zasilania energii elektrycznej. Celem działania równoległego filtru aktywnego (APF-Active Power Filter) jest doprowadzenie kształtu prądu do przebiegu sinusoidalnego współfazowego z napięciem sieci, tak aby źródło obciążone było tylko mocą czynną. Uproszczony schemat zastępczy równoległego filtru aktywnego zawiera źródło prądowe podłączone równolegle do obciążenia, którego działanie polega na kształtowaniu prądów kompensacyjnych równych niepożądanym składowym prądów odbiornika. W literaturze można spotkać wiele materiałów zawierających algorytmy sterowania aktywnymi filtrami równoległymi [16,18,19,20,21,22,23,24,25,26,28,29]. Praca ta poświęcona jest syntezie analizy działania niektórych z tych algorytmów. Rozdział drugi zawiera przegląd teorii mocy dla obwodów o sygnałach sinusoidalnych oraz niesinusoidalnych. Przedstawione w tym rozdziale są podstawowe założenia z kilku najbardziej znanych teorii. Rozdział trzeci zawiera opis teoretyczny wybranych metod wyznaczania prądów kompensujących. Należą do nich algorytmy identyfikacji składowej podstawowej prądu obciążenia, metody całkowe [16], metody oparte o teorię mocy chwilowej [16,18,19,20, 21,22,23,24,25], metody bezpośredniego rozkładu prądu obciążenia w szereg Fouriera takie jak sliding DFT [27,28,29], sliding Goertzel DFT [27], moving Fourier transform [26], oraz metoda kwadraturowa. 1. Wstęp 10 W rozdziale czwartym przedstawione różne rodzaje modulatorów służących do nadążnego kształtowania prądów kompensujących [30]. Rozdział piąty zawiera opis zmiennoprzecinkowego procesora sygnałowego ADSP-21061 [32,33]. Przedstawione są w tym rozdziale podstawowe dane i właściwości procesora, krótki opis sposobu programowania, i funkcję ułatwiające programowanie i optymalizacje algorytmu. W rozdziale szóstym zostały przedstawione zmiennoprzecinkowe symulacje komputerowe, w programie Matlab układów równoległych filtrów aktywnych, z zastosowaniem niektórych z wyżej przedstawionych algorytmów sterowania. Symulacje te przedstawiają przebiegi czasowe sygnałów występujących w algorytmach, jak również analizę częstotliwościową, i parametry prądu sieci przed i po filtracji aktywnej. Podsumowanie zawiera porównanie algorytmów pod względem rodzaju i dokładności kompensacji jak również złożoności i problemów wynikających przy implementacji opisanych algorytmów. 1.2. Cel i zakres pracy Zapoznanie się z podstawowymi teoriami mocy w układach prądu przemiennego. Analiza istniejących rozwiązań układowych filtrów aktywnych. Przegląd algorytmów sterowania filtrami aktywnymi. Badania symulacyjne wybranych cyfrowych algorytmów sterowania jednofazowymi i trójfazowymi energetycznymi filtrami aktywnymi. Implementacja wybranych cyfrowych algorytmów sterowania filtrami aktywnymi za pomocą procesora sygnałowego ADSP-21061. Realizacja wybranych cyfrowych układów sterowania za pomocą laboratoryjnego modelu filtru aktywnego. Badania jednofazowych i trójfazowych energetycznych filtrów aktywnych. Analiza wyników badań. 2. Przegląd teorii mocy 11 2.Przegląd teorii mocy Temat teorii mocy w obwodach prądu przemiennego okresowego należy do zagadnień trudnych i nie do końca wyjaśnionych. Istnieje więc wiele opracowań dotyczących teorii mocy w obwodach prądu przemiennego. Jednym z opracowań zawierającym przegląd tych teorii jest artykuł [15], który pokrótce został omówiony w tej pracy. 2.1. Moce w obwodach z przebiegami sinusoidalnymi Dla obwodu elektrycznego o obciążeniu pasywnym liniowym, opisanego następującymi przebiegami sinusoidalnymi: u (t ) = 2 U cos(ωt + α ) , (2.1) i (t ) = 2 I cos(ωt + β ) , (2.2) można określić następujące moce opisujące właściwości energetyczne tego obwodu: p(t ) = u (t )i(t ) = U I cos ϕ [1 + cos(2ωt + 2α )] + U I sin ϕ sin(2ωt + 2α ) , (2.3) p(t ) = u (t )i(t ) = P[1 + cos(2ωt + 2α )] + Q sin ϕ sin(2ωt + 2α ) . (2.4) gdzie: U , I -wartości skuteczne napięcia u(t), oraz prądu i(t) P -moc czynna Q -moc bierna ϕ -argument impedancji Moc czynna określona jest jako: 1 P = p (t ) = T T ∫ p(t )dt = U I cos ϕ . (2.5) 0 Moc bierna określana jest jako: Q = U I sin ϕ . (2.6) S =U I . (2.7) Moc pozorna Współczynnik mocy λ = cos ϕ = P . S (2.8) Dla przebiegów sinusoidalnych do opisu właściwości energetycznych wprowadza się tzw. moc pozorną zespoloną: S = UI * = P + jQ . (2.9) Równanie mocy 2 S = P2 + Q2 . (2.10) 2. Przegląd teorii mocy 12 2.2.Moce w obwodach z przebiegami niesinusoidalnymi Prekursorem teorii mocy dla przebiegów odkształconych okresowych uznaje się Ch. P. Steinmetza, który w 1897r. Stwierdził na przykładzie prostownika rtęciowego, że moc pozorna |S| >P na skutek odkształcenia prądu. W kolejnych latach powstało wiele teorii mocy dla przebiegów odkształconych. W latach dwudziestych ubiegłego wieku E. Webera oraz F. Emde, stwierdzili, że nie można utworzyć pojęcia mocy biernej dla przebiegów niesinusoidalnych. Stwierdzili oni w swojej pracy naukowej, że pojęcie mocy urojonej dotyczy tylko obwodów z przebiegami sinusoidalnymi oraz, że nie da się przenieść na obwody o przebiegach odkształconych. Ponadto E. Weber w swoich pracach udowadnia, że w obwodach n –przewodowych pojęcia mocy pozornej i urojonej jest niejednoznacznie określone. Stwierdza że zachodzi następująca nierówność: 2 S ≥ P2 + Q2 . (2.11) 2.2.1.Teoria Budeanu Jedną z bardziej znanych teorii mocy jest teoria mocy, przedstawiona w 1927r. przez C.I. Budeanu [1,2,3]. Jest ona najbardziej rozpowszechnioną i aktualną teorią mocy dla przebiegów okresowych odkształconych. Swą popularność i aktualność teoria zawdzięcza temu, że zdefiniowana przez niego moc bierna spełnia zasadę bilansu energetycznego. Jest to tzw. podejście częstotliwościowe. Budeanu dla liniowego odbiornika przedstawił napięcie u(t) i prąd i(t) w postaci szeregu Fouriera: ∞ u (t ) = U 0 + 2 Re ∑ U n e j 2 πn/T . (2.12) i (t ) = I 0 + 2 Re ∑ I n e j 2 πn/T . (2.13) n =1 ∞ n =1 Dla tak przedstawionych sygnałów zdefiniował on moc czynną P i bierną QB jako superpozycję mocy czynnych i biernych wszystkich harmonicznych przebiegu u(t) i i(t). T ∞ ∞ ∞ 1 P = ∫ u (t )i(t )dt = U 0 I 0+ ∑ U n I n cosϕ n = ∑ Pn = Re ∑ U n I n* , (2.14) T 0 n =1 n =0 n =0 ∞ ∞ ∞ n =1 n =0 n =0 QB = ∑ U n I n sin ϕ n = ∑ Qn = Im ∑ U n I n* , ∞ ∑ Un S =U I = n =0 2 ∞ ∑I n =0 2 n . (2.15) (2.16) Dla tak zdefiniowanych mocy zachodzi nierówność: 2 S ≥ P 2 + QB2 . (2.17) Uzupełniając powyższą nierówność Budeanu wprowadził nową wielkość DB nazwaną mocą odkształcenia (deformacji), jednocześnie nie definiując co należy rozumieć pod pojęciem odkształcenie. Wówczas równanie 2.16 przybrało postać: 2 S = P 2 + QB2 + DB2 . (2.18) 2. Przegląd teorii mocy 13 DB S P QB Rys.2.1. Prostopadłościan mocy Teoria ta jest bardzo mocno krytykowana za brak interpretacji fizycznej mocy deformacji, oraz sumowanie amplitud poszczególnych harmonicznych. W Polsce zwolennikiem teorii mocy wg Budeanu był Z. Nowomiejski [4], który określił w dziedzinie czasu moc bierną Budeanu: T 1 QB = ∫ u (t )[ H (i(t ) )]dt , (2.19) T 0 gdzie H oznacza transformatę Hilberta określoną wzorem: T 1 i(τ ) [ H (i(t ) )] = ∫ dτ . (2.20) π 0τ −t 2.2.2.Teoria Fryzego Inną teorię mocy w obwodach z przebiegami odkształconymi okresowymi przedstawił w 1931 roku Stanisław Fryze [5,6,7]. Zaproponowana przez niego teoria zakłada spełnienie równania: 2 (2.21) S = P2 + Q2 . Punktem wyjścia teorii było dążenie do takiego uogólnienia opisu właściwości energetycznych słusznych dla wymuszeń sinusoidalnych, aby były spełnione dla dowolnych wymuszeń okresowych. Sygnał sinusoidalny można rozłożyć na sumę dwóch składników wzajemnie ortogonalnych: (2.22) i (t ) = ia (t ) + ib (t ) , gdzie: ia(t) –składowa czynna prądu ib(t) –składowa bierna prądu Dla tych składowych zachodzą następujące zależności: T ∫ i (t )i (t )dt = 0 , a b (2.23) 0 T T 1 1 u (t )i(t )dt = ∫ u (t )ia (t ) = P . ∫ T 0 T 0 Moc czynną oraz pozorną można wyznaczyć na podstawie równań: P = U Ia , (2.24) (2.25) 2. Przegląd teorii mocy 14 QF = U I b , (2.26) Ten sam algorytm Fryze zastosował dla przebiegów odkształconych okresowych. Pierwszym etapem rozważań było określenie czynnego prądu źródła zgodnie z równaniem: ia (t ) = Gu (t ) , (2.27) gdzie G –konduktancja zastępcza źródła określona zależnością: T G= P u 2 L2 = 1 u (t )i (t )dt T ∫0 T 1 2 u (t )dt T ∫0 T = 1 u (t )ia (t )dt T ∫0 T 1 2 u (t )dt T ∫0 . (2.28) Prąd ten został przedstawiony jako superpozycja prądu czynnego oraz biernego zgodnie z zależnością 2.21. Moc według teorii Fryzego jest efektem wtórnym w stosunku do rozkładu prądu: 2 2 2 (2.29) i L2 = ia L2 + ib L2 . Mnożąc dwustronnie powyższe równanie przez ||u||2 otrzymujemy równanie mocy: 2 S = P 2 + QF2 . (2.30) Tak zdefiniowana moc bierna nie jest zachowawcza. Zaletą tak zdefiniowanej teorii mocy jest to, że rozkład na składową czynną i bierną następuje na wielkościach pierwotnych źródła jakimi są napięcie i prąd, bez rozkładu tych wartości w szereg Fouriera. Fryze twierdził, że stosowanie rozkładu sygnałów w przebieg Fouriera nie daje pełnego odwzorowania sygnału w punktach nieciągłości ze względu na tzw. efekt Gibbsa. Teoria ta jednak nie wyjaśnia sensu fizycznego mocy biernej. Wskazuje tylko, że moc bierna jest zbędnym obciążeniem źródła. 2.2.3.Teoria mocy według Shepherda i Zakikhaniego Teoria ta ogranicza się jedynie do obwodów jednofazowych [8]. Prąd źródła został rozłożony na dwa składniki: i(t ) = iR (t ) + ir (t ) , (2.31) gdzie: ∞ iR (t ) = 2 ∑ I n cos ϕ n cos(nωt + α n ) , (2.32) n =1 ∞ ir (t ) = 2 ∑ I n sin ϕ n sin( nωt + α n ) . (2.33) n =1 Składnik iR reprezentuje składową rezystancyjną prądu, natomiast ir składową reaktancyjną. Gdzie: αn –argument Un, ϕn –kąt (Un,In). Prądy te spełniają warunek ortogonalności czyli: T ∫i 0 R (t )ir (t )dt = 0 . (2.34) 2. Przegląd teorii mocy 15 Z zależności 2.30 i 2.33 wynika równanie mocy: 2 S = u 2 i 2 = u 2 2 iR + u 2 ir 2 = S R2 + Qr2 . (2.35) W równaniu tym nie ma mocy czynnej P, ponadto moce SR i Qr nie są zachowawcze. Dlatego też teoria ta była mocno krytykowana. Teoria ta została zmodyfikowana przez Sharona [9]. Wprowadził on do niej moc czynną. Równanie mocy przybrało postać: (2.36) S 2 = P 2 + Q2 + S C2 , gdzie: S C2 = S R2 − P 2 . (2.37) Moc SC została nazwana mocą pozorną dopełniającą. Interpretacja prądów opisanych wzorem 2.30 jest prosta dla odbiorników SLS i można zapisać je jako: ∞ iR (t ) = 2 Re ∑ Gn 0U n e jnωt , (2.38) n =1 ∞ ir (t ) = 2 Re ∑ jBn 0U n e jnωt . (2.39) n =1 a) b) In Un IRn Gn0 In=IRn Ir n Bn0 Bnk Un IRn Gn0 Ir n Bn0 Rys.2.2. Układ ilustrujący zasadę teorii mocy wg Shepherda i Zakikhaniego a) układ zastępczy, b) idea kompensacji. Prąd określony zależnością 2.38 jest nazywany prądem reaktancyjnym (biernym) i jest interpretowany jako prąd związany ze zwrotnym przepływem energii między odbiornikiem z źródłem, a jego miarą jest moc bierna Qr. Prąd ir(t) może być kompensowany dla skończonej liczby harmonicznych dwójnikiem reaktancyjnym dołączonym równolegle do odbiornika (rysunek 2.2.b), o susceptancji Bnk=-Bn0. Na podstawie tej teorii można więc wyznaczyć pojemność kondensatora kompensującego, dla której współczynnik źródła przybiera największą wartość: ∞ Copt = ∑ nU n =1 n ∞ I n sin ϕ n ω∑ n U n 2 . (2.40) 2 n =1 Zaletami tej teorii jest możliwość kompensacji prądu ir(t) dla skończonej liczby harmonicznych oraz wyznaczenie pojemności kompensującej. Do wad należy zaliczyć to, że w równaniu mocy nie ma mocy czynnej P, moce SR, Qr nie spełniają bilansu energetycznego, oraz to, że teoria jest określona wyłącznie dla obwodów jednofazowych. 2. Przegląd teorii mocy 16 2.2.4.Teoria według Kustrers’a i Moore’a Teoria ta została opublikowana w 1980 roku [10]. Zakłada ona rozkład prądu źródła dla odbiornika rezystancyjno-indukcyjnego na prąd czynny (prąd Fryzego), prąd bierny pojemnościowy iqC oraz resztkowy prąd bierny iqCr: i (t ) = ia (t ) +i qC (t ) + iqCr (t ) , (2.41) gdzie: ia (t ) = P u 2 u (t ) , (2.42) T 1 du i (t )dt T ∫0 dt du iqC (t ) = , 2 dt du (2.43) dt iqCr (t ) = i (t ) − (ia (t ) + iqC (t )) . (2.44) Prądy te są wzajemnie ortogonalne, zatem dla ich wartości skutecznych spełnione jest równanie: i 2 = ia 2 + iqC 2 2 + iqCr . (2.45) Równanie mocy przyjmuje postać: 2 2 . S = P 2 + QC2 + QCr (2.46) Moc QC może być całkowicie kompensowana za pomocą kondensatora włączonego na zaciski odbiornika o pojemności: QC . (2.47) C=− du u dt 2.2.5.Teoria mocy według Czarneckiego Teoria ta opiera się również na rozkładzie prądu źródła na składniki wzajemnie ortogonalne [11,12,13,14]. Rozszerzając koncepcje Fryzego o rozkład prądu biernego na składową reaktancyjną i składową rozrzutu otrzymał: i (t ) = ia (t ) + ib (t ) = ia (t ) + (is (t ) + ir (t )) . (2.48) Natomiast wzbogacając teorię Shepherda i Zakikhaniego, zastępując prąd rezystancyjny prądem czynnym i prądem rozrzutu uzyskał: i (t ) = iR (t ) + ir (t ) = (ia (t ) + is (t )) + ir (t ) . (2.49) Dla obu teorii uzyskał identyczny rozkład prądów. Zakładając że: ∞ u (t ) = U 0 + 2 Re ∑ U n e jnωt , (2.50) n =1 uzyskał: ∞ ia (t ) = GU 0 (t ) + 2 Re ∑ GeU n e jnωt , n =1 (2.51) 2. Przegląd teorii mocy 17 ∞ ir (t ) = 2 Re ∑ jBn 0U n e jnωt , (2.52) n =1 ∞ iS (t ) = (G0 − Ge )U 0 + 2 Re ∑ (Gn 0 − Ge )e jnωt . (2.53) n =1 Schemat układu ilustrujący zasadę teorii mocy według Czarneckiego ilustruje rysunek 2.3. In Ian Un Ge Isn Ir n Bn G0n-Ge Rys.2.3. Układ ilustrujący zasadę teorii mocy wg Czarneckiego Ponieważ prądy te są wzajemnie ortogonalne więc zachodzi zależność: i 2 L2 = ia 2 L2 + ir 2 L2 + iS 2 L2 . (2.54) Równanie mocy według koncepcji Czarneckiego przybiera postać: 2 S = P 2 + Qr2 + Qs2 = P 2 + QF2 . (2.55) Moce Qr i Qs nie podlegają bilansowi energetycznemu. Równanie 2.53 po raz pierwszy wyjaśniło, dlaczego wartość skuteczna prądu ||i|| w odbiornikach liniowych z sygnałami odkształconymi jest większa od wartości skutecznej prądu czynnego ||ia||. Prąd ir jest całkowicie kompensowany za pomocą dwójnika reaktancyjnego, natomiast prąd is nie może być skompensowany dwójnikiem pasywnym LC. 2.3.Podsumowanie teorii mocy Z przedstawionych powyżej teorii mocy, można wyróżnić dwa podstawowe podejścia czasowe i częstotliwościowe. Podejście czasowe wiąże się przede wszystkim z koncepcją Fryzego, natomiast podejście częstotliwościowe z teorią Budeanu. Ponadto występują jeszcze wiele innych koncepcji mocy nie omówionych w tym rozdziale. Przedstawione teorie mocy mają wiele cech wspólnych. Wszystkie są one wyprowadzane na poziomie najprostrzego modelu obwodu złożonego z idealnym źródłem i odbiornikiem. Tylko niektóre z powyższych teorii były rozwinięte dla układów trójfazowych i wielofazowych. Wszystkie koncepcje dotyczą obwodów z przebiegami odkształconymi okresowymi. Wyprowadzone moce bierne z reguły nie spełniają bilansu energetycznego, oraz nie posiadają interpretacji fizycznej. 2. Przegląd teorii mocy 18 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 19 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 3.1. Podstawy filtracji aktywnej Filtry aktywne są to układy pełniące funkcję energoelektronicznych źródeł dodawczych napięciowych lub prądowych, które mają za zadanie generować odpowiedni sygnał kompensujący [16]. W zależności od tego jak filtr aktywny jest przyłączony do linii zasilającej rozróżniamy aktywne filtry szeregowe oraz równoległe. Aktywny filtr szeregowy pracuje jako sterowane źródło napięcia dodawczego, natomiast aktywny filtr równoległy jako sterowane źródło prądu dodawczego. Każdy z tych układów może być sterowany zarówno w układzie otwartym jak i zamkniętym. a) ZS IS IO IK US ES b) ZS IO kG ( jω ) IS IO IK ES IO kG ( jω ) US Rys.3.1. Częstotliwościowe modele jednofazowe systemów równoległej kompensacji aktywnej, sterowanych: a) w układzie otwartym b) w układzie zamkniętym W układzie otwartym, dla filtracji równoległej widmo prądu kompensującego IK można wyrazić następującymi wzorami: I K = kG ( jω ) I O , (3.1) lub IK = kG ( jω ) I S . 1 − kG( jω ) (3.2) Natomiast widmo prądu sieci wynosi: I L = I O [1 − kG ( jω )] . (3.3) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi a) 20 UK ZS IO UO ES b) ES US IO kG ( jω ) UK ZS IO US kG ( jω ) UO IO Rys.3.2. Częstotliwościowe modele jednofazowe systemów szeregowej kompensacji aktywnej, sterowanych: a) w układzie otwartym b) w układzie zamkniętym Pełna kompensacja niepożądanych składowych występuje gdy jest spełniona zależność kG(jω ) → 1 . (3.4) W przypadku sterowania równoległym filtrem aktywnym w układzie zamkniętym Widmo prądu kompensującego opisują równania: I K = kG ( jω ) I S , (3.5) kG ( jω ) I O . 1 + kG ( jω ) (3.6) I S = I O [1 + kG ( jω )] (3.7) kG ( jω ) → ∞ . (3.8) lub IK = Widmo prądu sieci wynosi wówczas: Pełna kompensacja jest osiągana przy: Zaletą sterowania w układzie otwartym jest stabilność układu kompensacji. Okupione to jest większą złożonością układu sterowania, niż w przypadku układu zamkniętego. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 21 W przypadku kompensacji szeregowej w układzie otwartym widmo napięcia dodawczego oraz napięcia sieci wynoszą odpowiednio: U K = kG ( jω )U S , (3.9) U O = U S [1 − kG ( jω )] . (3.10) Pełna kompensacja jest otrzymywana przy: kG( jω) → 1 . (3.11) Dla kompensacji w układzie zamkniętym: U K = kG ( jω )U O , (3.12) US , 1 + kG ( jω ) (3.13) UO = a warunkiem pełnej kompensacji jest: kG ( jω ) → ∞ . (3.14) Sterowanie równoległymi filtrami aktywnymi będzie miało za zadanie wyznaczenie sygnałów sterujących równych niepożądanym harmonicznym prądu. Ponieważ każdą funkcję okresową spełniającą warunki Dirichleta (mająca w skończonym przedziale skończoną liczbę punktów nieciągłości pierwszego rodzaju i skończona liczbę maksimów i minimów) [16,17], można rozwinąć w szereg trygonometryczny opisany wzorem: f (t ) = A0 + Am1 sin(ωt + ϕ1 ) + Am 2 sin(ωt + ϕ 2 ) + K ∞ f (t ) = ∑ Amk sin( kωt + ϕ k ) . (3.15) k =0 To pierwszy wyraz szeregu A0 wyraża składową stałą, natomiast drugi Am1sin(kω+ϕ1) składową podstawową. Wszystkie pozostałe wyrazy określają harmoniczne wyższych rzędów. Zadaniem układu kompensującego jest dostarczenie do nieliniowego odbiornika wszystkich składowych prądu oprócz składowej podstawowej. W takim przypadku odbiornik będzie pobierał z sieci zasilającej tylko podstawową harmoniczną: iL (t ) = I m1 sin(ωt + ϕ1 ) . (3.16) Układ sterowania powinien więc generować prądy o przebiegu opisanym zależnością: n iC (t ) = ∑ I mk sin( kωt + ϕ k ) − I m1 sin(ωt + ϕ1 ) . k =0 (3.17) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 22 3.2. Metoda identyfikacji harmonicznej podstawowej Do identyfikacji harmonicznej podstawowej można zastosować filtr dolnoprzepustowy, o następującej transmitancji: 1 . (3.18) G ( s) = 1 + sT1 + s 2 T2 Ponieważ filtr wprowadza określone przesunięcie fazowe ϕ f zależne od częstotliwości sygnału wejściowego, należy zastosować przesuwnik fazowy [16]. Dodatkowe przesunięcie fazowe sygnału wejściowego ϕd, wprowadzane przez przesuwnik, dla częstotliwości podstawowej powinno być tak dobrane aby był spełniony warunek: ϕ f + ϕd = π . (3.19) Transmitancję operatorową takiego przesuwnika fazowego przedstawia następujące równanie: G(s) = 1 − sT . 1 + sT (3.20) Rysunek 3.3 przedstawia metodę wyznaczania prądów kompensujących w oparciu o algorytm identyfikacji harmonicznej podstawowej. Na rysunku 3.4 pokazane są przebiegi czasowe prądów płynących w obwodzie z rysunku 3.3. iL FILTR DP iL1h' iL1h PRZESÓWNIK FAZOWY iC + Rys.3.3. Układ do identyfikacji harmonicznej podstawowej 1.5 Sygnał wejsciowy Sygnał po filtrze Sygnał po przesówniku a) Amplituda [A] 1 0.5 0 -0.5 -1 -1.5 0 0.01 0.02 0.03 0.04 0.05 0.06 Czas [s] b) Amplituda [A] 1 Sygnał kompensujacy 0.5 0 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 0.06 Czas [s] Rys.3.4. Przykładowe przebiegi czasowe prądów płynących w układzie z rysunku 3.3 a) sygnały wejściowy, po filtrze i po przesuwniku fazowym, b)sygnał kompensujący 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 23 3.3. Metody całkowe 3.3.1. Pierwsza metoda całkowa Metoda całkowa identyfikacji niepożądanych składowych prądu linii polega na identyfikacji mocy czynnej pobieranej przez odbiornik, co pozwala na proste wyznaczenie składowej czynnej prądu [16]. Po odjęciu składowej czynnej od prądu linii uzyskujemy składową bierną prądu. u FILTR DP P iC iO1h iO Rys.3.5.Schemat blokowy układu pomiarowego identyfikującego podstawową harmoniczną 3.3.2. Druga metoda całkowa W przypadku gdy prąd odbiornika jest odkształcony [16]: ∞ ∞ n=2 n=2 i0(t) = B1 sin (ωt ) + C1 cos(ωt )∑ Bn sin (nωt ) + ∑ C n cos(nωt ) . (3.21) gdzie: B1 sin ωt -składowa czynna prądu, C1 cos ωt -składowa bierna prądu, ∞ ∞ n=2 n=2 ∑ Bn sin (nωt ) +∑ Cn cos(nωt ) - składowe odkształcenia. Prąd kompensujący określony jest następująco: iw (t ) = B1 sin ω ⋅ t − i0 (t ) . (3.22) Aby obliczyć wartość współczynnika B1, należy wyznaczyć wartość średnią iloczynu napięcia zasilającego i prądu obciążenia , co daje moc średnią pobieraną przez odbiornik. Chwilowe wartości sygnału sterującego kompensatorem oblicza się przez wyznaczenie amplitudy składowej czynnej prądu odbiornika, co przy założeniu sinusoidalnego napięcia linii zasilającej oraz stałości jej amplitudy można wyznaczyć zgodnie z zależnością: P , (3.23) I m 01 = 2 Um gdzie: 1 (3.24) P = ∫ u (t ) ⋅ i (t )dt . T Iloczyn napięcia zasilającego i prądu obciążenia jest całkowany w czasie równym połowie okresu napięcia zasilania. Sygnał wyjściowy członu całkującego jest doprowadzony do ekstapolatora rzędu zerowego. Po wprowadzeniu informacji do ekstrapolatora sygnał całkowania jest sprowadzany do zera. Wielkość wyjściowa z ekstrapolatora jest równa współczynnikowi B1. Sygnał wyjściowy z ekstapolatora podawany jest do członu mnożącego gdzie uzyskujemy sygnał B1sin(ωt). Następnie, tak uzyskany sygnał odejmujemy od prądu linii i w ten sposób uzyskujemy prądy kompensujące. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi FILTR DP iO iO1h P 24 iC E0 2/Um u Układ sterujący Rys.3.6.Schemat blokowy układu pomiarowego z ekstrapolatorem rzędu zerowego 3.4. Metody wektorowe-teoria mocy chwilowych 3.4.1. Metody wektorowe wg H. Akagi oraz T. Furuhashi Wartości chwilowe prądów kompensujących są często wyznaczane na podstawie teorii mocy chwilowej [16,18,19,20,21]. Wielkościami podstawowymi teorii mocy chwilowej są: a) moc chwilowa czynna – p, b) moc chwilowa bierna - q. (3.25) p = U siT , q = UqiT , (3.26) gdzie: i - odpowiednio wektory prądów iL lub iS, lub iC , Uq=USCqT - wektor napięć prostopadły do wektora US , Cq - macierz transformacji. Pozostałe oznaczenia według rysunku.3.7. eS1 iS1 iO1 eS2 iS2 iO2 ODBIORNIK eS3 iS3 iO3 iK0 iK3 iK2 iK1 iO0 NIELINIOWY iS0 APF Rys.3.7. Ogólny model systemu trójfazowego z układem APF Po raz pierwszy zależności opisujące metodę kompensacji na podstawie teorii mocy chwilowych określił H. Akagi. Wartości chwilowe wektora prądów iC są wyznaczane na podstawie jednego z następujących układów równań: U q i C = qC = q L = q U s i C = pC = 0 , (3.27) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 25 lub U s (iO − iC ) = p = pL = p T T U q (iO − iC ) = qs = 0 T T . (3.28) Równania te wynikają z założenia, że układ APF kompensuje wyłącznie wszystkie składowe prądów odbiornika związane z mocą bierną qL. Oznacza to, że ze źródła napięcia sieci do obciążenia jest dostarczana tylko chwilowa moc czynna. Z powyższych równań nie można jednak jednoznacznie wyznaczyć prądów kompensujących iC w systemach 3-fazowych 4-przewodowych oraz w systemach więcej niż 3-fazowych. W tych przypadkach równania te muszą zostać uzupełnione dodatkowymi zależnościami, w tym przede wszystkim równaniem prądu w przewodzie neutralnym kompensatora: iC × 1 = iC0 . (3.29) 1 = [1,1,1...]T – elementarny wektor. Przeważnie przyjmuje się, że iS0=iO0-iC0 w przewodzie neutralnym linii powinien być równy zero. To założenie nie gwarantuje jednak otrzymania minimalnych wartości skutecznych prądów linii po kompensacji w przypadku niesymetrii napięcia zasilania, oraz w układach więcej niż 3-fazowych. Problem ten nie występuje w przypadku optymalizacyjnej metody kompensacji wg T. Furuhashi. Metoda optymalizacyjna pozwala jednoznacznie wyznaczać prądy kompensujące iC w systemie o dowolnej liczbie faz i przewodów. W tym celu przeprowadza się minimalizację funkcjonału: T T (iO − iC )(iO − iC ) ⇒ min . (3.30) co jest równoznaczne z wyznaczaniem minimalnej wartości chwilowej sumy kwadratów wartości chwilowych wszystkich prądów linii iS. Gdy kompensacja jest przeprowadzana w systemach n-fazowych n-przewodowych, to funkcjonał jest minimalizowany względem prądów kompensujących z uwzględnieniem ograniczenia: T U S × iC = pC = 0 , (3.31) lub U S × (iO − iC ) = p = pL = pS , T T (3.32) oraz równania: iC × 1 = iC 0 = 0 . (3.33) W systemach 3-fazowych macierz transformacji Cq i powiązana z nią zależność na chwilową moc bierną określa następujące wzory: ⎡ 0 −1 1 ⎤ 1 ⎢ Cq = 1 0 − 1⎥⎥ , ⎢ 3 ⎢⎣− 1 1 0 ⎥⎦ ⎡ 0 − 1 1 ⎤ ⎡ i1 ⎤ 1 q= [U S1 U S 2 U S 3 ] ⎢⎢ 1 0 − 1⎥⎥ ⎢⎢i2 ⎥⎥ . 3 ⎢⎣− 1 1 0 ⎥⎦ ⎢⎣i3 ⎥⎦ (3.34) (3.35) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 26 Prądy kompensujące systemach 3-fazowych 3-przewodowych są określane następująco: ⎡ iC1 ⎤ ⎡ iO1 ⎤ ( pS1 = p L = p ) ⎢i ⎥ = ⎢i ⎥ − ⎢ C 2 ⎥ ⎢ O2 ⎥ 2 U 2 + U 2 + U 2 − U U − U U − U U S1 S2 S3 S1 S1 S2 S3 S 3 S1 ⎢⎣iC 3 ⎥⎦ ⎢⎣iO 3 ⎥⎦ ( ) ⎡2U S 1 − U S 2 − U S 3 ⎤ ⎢2U − U − U ⎥ , (3.36) S1 S3 ⎥ ⎢ S2 ⎢⎣2U S 3 − U S 1 − U S 2 ⎥⎦ a w systemach 3-fazowych 4-przewodowych są określane jako: ⎡ iC1 ⎤ ⎡ iO1 ⎤ ⎢i ⎥ = ⎢i ⎥ − ( pS1 = p L = p ) ⎢ C 2 ⎥ ⎢ O2 ⎥ 2 e2 + e2 + e2 S1 S2 S3 ⎢⎣iC 3 ⎥⎦ ⎢⎣iO 3 ⎥⎦ ( iC0 = iO 0 − ) ⎡U S 1 ⎤ ⎢U ⎥ , ⎢ S2 ⎥ ⎢⎣U S 3 ⎥⎦ p (U S 1 + U S 2 + U S 3 ) . U S21 + U S22 + U S23 (3.37) (3.38) 3.4.2. Przekształcenie Clarka - Parka Transformację, prądów do układu współrzędnych ortogonalnych α-β odbywa się na podstawie wzorów transformaty Clarka: ⎡iα ⎤ ⎢i ⎥ = ⎢β⎥ ⎢⎣ i0 ⎥⎦ ⎡ ⎢ ⎢ 2⎢ 3⎢ ⎢ ⎢ ⎣ 1 0 1 6 1 2 3 2 1 6 − 1 ⎤ 2 ⎥ ⎡i ⎤ ⎥ O1 3⎥ ⎢ ⎥ iO 2 . − 2 ⎥⎢ ⎥ 1 ⎥ ⎢⎣iO 3 ⎥⎦ ⎥ 6 ⎦ − (3.39) Widma wartości iα, zawierają tylko współczynniki urojone, natomiast widma składowych iβ, zawierają tylko współczynniki rzeczywiste. Moduł widma prądu iα, i iβ są sobie równe: Iα = I β . (3.40) Przykładowo dla układu symetrycznego trójfazowego i prądów wejściowych zawierających pierwszą, trzecią i piątą harmoniczną, których przebiegi i ich widma przedstawia rysunek 3.8, kształt prądów w układzie ortogonalnym α-β oraz moduły ich widm mają następujących wygląd przedstawiony na rysunku 3.9. Poszczególne wartości współczynników rzeczywistych i urojonych tych widm przedstawia rysunek 3.10. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 20 d) 0 -20 -40 0 0.01 0.02 0.03 40 20 20 10 0 0.04 a) 0 1000 2000 3000 4000 5000 Amplituda [A] Amplituda [A] Amplituda [A] a) Widma sygnałów wejściowych 30 40 c) 0 -20 Amplituda [A] Sygnały wejsciowe 40 27 30 20 10 0 0.01 0.02 0.03 10 0 0.04 0 1000 2000 3000 4000 5000 20 f) 0 -20 0 0.01 0.02 0.03 30 10 0 0.04 b) 20 0 Czas [s] 1000 2000 3000 4000 b) 0 -5 -10 0 1000 2000 3000 4000 5000 40 20 d) 10 0 d) -20 0 0.01 0.02 0.03 5000 0 1000 2000 3000 4000 5000 20 10 0 0.04 Czestotliwosc [Hz] 0 20 -10 a) -20 -30 -40 -40 0 1000 2000 3000 4000 5000 b) 0 -20 -10 -20 -30 0 0.01 0.02 Czas [s] 0.03 -40 0.04 10 40 40 5 20 30 c) 0 -5 0 -10 Im(Ibeta) Re(Ibeta) 30 c) 30 1000 2000 3000 4000 40 0 Im(Ialfa) Re(Ialfa) a) 20 0 Rys.3.9.Prądy w układzie α-β i moduły ich widm: a) prąd iα, b) prąd iβ, c) moduł widma prądu iα, d) moduł widma prądu iβ 10 5 0 0.04 Czas [s] Rys.3.8.Prądy fazowe i moduły ich widm: a) prąd fazy A, b) prąd fazy B, c) prąd fazy C, d), moduł widma prądu fazy A, e) moduł widma prądu fazy B, f) moduł widma prądu fazy C 10 0.03 40 -40 5000 0.02 40 Częstotliwość [Hz] Amplituda -40 Amplituda [A] c) Amplituda [A] 40 Amplituda -40 0.01 Amplituda [A] -20 0 20 Im(P) e) 0 d) 0 -20 Re(Q) 20 -40 30 Amplituda [A] Amplituda [A] b) Amplituda [A] 40 0 1000 2000 3000 4000 Czestotliwosc [Hz] 5000 0 1000 2000 3000 4000 Czestotliwosc [Hz] 5000 20 10 0 0 1000 2000 3000 4000 Częstotliwość [Hz] 5000 -10 -40 0 1000 2000 3000 4000 5000 0 0.01 0.02 Czas [s] 0.03 0.04 Częstotliwość [Hz] Rys.3.10.Wartości rzeczywiste oraz urojone widma prądów w układzie α-β: a) wartość rzeczywista widma prąd iα, b) wartość urojona widma prąd iα, c) wartość rzeczywista widma prąd iβ, d) wartość urojona widma prąd iβ Rys.3.11. Prądy w układzie p-q oraz ich widma: a) prąd ip, b) widmo prądu ip c), prąd iq, d) widmo prądu iq Przejście z układu α-β do układu p-q wirującego synchronicznie z wektorem napięcia sieci zapewnia transformata Parka: ⎡i p ⎤ ⎡ cos(ϕ ) sin(ϕ ) ⎤ ⎢i ⎥ = ⎢ ⎥ ⎣ q ⎦ ⎣− sin(ϕ ) cos(ϕ )⎦ ⎡iα ⎤ ⎢i ⎥ . ⎣β⎦ (3.41) Wartości ip i iq są proporcjonalne do chwilowym wartością mocy czynnej i biernej, pobieranej przez układ trójfazowy. Przykładowe przebiegi prądów w układzie odniesienia p-q oraz ich widma przedstawia rysunek 3.11. Widma te wskazują na tętnienia mocy czynnej i biernej. W tym przykładzie widma zawierają prążki w częstotliwościach czterokrotnie większych od częstotliwości podstawowej oraz ich wielokrotności. Przejście z powrotem do układu ortogonalnego α-β zapewnia odwrotna transformata Parka, opisana następującymi równaniami: 3. Algorytmy sterowania energetycznymi filtrami aktywnymi ⎡iα ⎤ ⎡cos(ϕ ) − sin(ϕ )⎤ ⎡i p ⎤ ⎢i ⎥ = ⎢ ⎥ ⎢ ⎥. ⎣ β ⎦ ⎣ sin(ϕ ) cos(ϕ ) ⎦ ⎣iq ⎦ 28 (3.42) Przejście ze współrzędnych ortogonalnych na fazowe wykonywane jest przy użyciu odwrotnego przekształcenia Clarka: ⎡ ⎤ ⎢ 1 0 ⎥ ⎡ia ⎤ ⎢ 3 ⎥ ⎡iα ⎤ ⎢i ⎥ = 2 ⎢− 0.5 ⎥⎢ ⎥. (3.43) ⎢ b⎥ 3⎢ 2 ⎥ ⎣iβ ⎦ ⎢⎣ic ⎥⎦ ⎢ 3⎥ ⎢− 0.5 − 2 ⎥ ⎣ ⎦ Obrazem graficznym tych przekształceń jest rysunek 3.12. ib iq iβ ip ϕ iα ia ic Rys.3.12. Obraz graficzny przekształceń Clarka i Parka 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 29 3.4.3. Algorytm sterowania trójfazowego APF na podstawie teorii mocy chwilowych Kompensacja równoległa układach trójfazowych rozpatrywana jest we współrzędnych ortogonalnych α-β-0 [16,20]. Taka zmiana współrzędnych jest przeprowadzana za pomocą transformaty Clarka wzór 3.39. Moce chwilowe czynna i bierna są określone następująco: p = U Sα iα + U Sβ iβ + U S 0i0 q = U Sα iβ − U Sβ iα . (3.44) Kompensację można najłatwiej zdefiniować przez zadanie pożądanych przebiegów mocy chwilowych czynnej p̂ i biernej q̂ pobieranych z linii zasilającej. Wartości chwilowe prądów wyznaczane są na podstawie równań: ⎡ U Sα ⎢− U ⎣ Sβ U Sβ ⎤ ⎡iSα ⎤ ⎡ pS ⎤ = , U Sα ⎥⎦ ⎢⎣iSβ ⎥⎦ ⎢⎣ qS ⎥⎦ (3.45) iCα = iOα − iSα iCβ = iOβ − iSβ . (3.46) iC 0 = iO 0 Równania końcowe opisujące prądy kompensujące przyjmują postać. ⎡iCα ⎤ ⎡iOα ⎤ 1 ⎢i ⎥ = ⎢i ⎥ − ⎢ Cβ ⎥ ⎢ Oβ ⎥ U 2 + U 2 Sα Sβ ⎢⎣iC 0 ⎥⎦ ⎢⎣ iO 0 ⎥⎦ ⎡ pˆ L ⎢ qˆ ⎢ L ⎢⎣ 0 − qˆ L ⎤ ⎡U Sα ⎤ pˆ L ⎥⎥ ⎢ . U Sβ ⎥⎦ ⎣ 0 ⎥⎦ (3.47) gdzie p̂ ,q̂ pożądane moce chwilowe pobierane z linii zasilającej. p * = pO − pˆ S ; q * = qO − qˆ S -kompensowane składowe mocy chwilowych pO i pS odbiornika. Jeżeli pożądane moce chwilowe pobierane z linii są równe średnim wartościom mocy chwilowych odbiornika pˆ = p, ( p * = pL − pL ) i qˆ = q , (q * = q L − qL ) , to układ kompensuje wyższe harmoniczne i składowe kolejności przeciwnej o częstotliwości podstawowej. Dla pełnej kompensacji, gdy prądy linii powinny zawierać tylko składowe czynne kolejności zgodnej o częstotliwości podstawowej, należy przyjąć: pˆ = p, ( p * = p L − pL ) i qˆ = 0, (q * = q L ) . (3.48) Schemat układu do wyznaczania prądów kompensujących według teorii mocy chwilowych przedstawia rysunek 3.13. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 30 * U DC U DC - Ua U Sα A-B-C Ub Uc Δp PI + α −β p p FDP - p∗ p-q iCα α −β iC1 + U Sβ αβ iC2 i1 A-B-C iα i2 iβ i3 αβ iC3 iCβ q = q∗ α −β p-q A-B-C Rys.3.13. Schemat układu do wyznaczania prądów kompensujących według teorii mocy chwilowych Jeżeli zadaniem APF przy niesymetrycznym obciążeniu jest kompensacja tylko wyższych harmonicznych to korzystamy z następujących zależności: ⎡ U Sα ⎢− U ⎣ Sβ ⎡U Sα ⎢U ⎣ Sβ U Sβ ⎤ ⎡iOα ⎤ ⎡ p L+ ⎤ = , U Sα ⎥⎦ ⎢⎣iOβ ⎥⎦ ⎢⎣ p L+ ⎥⎦ (3.49) − U Sβ ⎤ ⎡iOα ⎤ ⎡ p L− ⎤ = . U Sα ⎥⎦ ⎢⎣iOβ ⎥⎦ ⎢⎣ p L− ⎥⎦ (3.50) Należy ponadto wyznaczyć wartości średnie pL+ , pL− , qL+ , qL− mocy chwilowych dla zgodnego i przeciwnego kierunku wirowania wektora napięć. Moce chwilowe pobierane podczas kompensacji z linii zasilającej powinny wynosić: p̂ S+ = p L+ , q̂ S+ = q L+ , p̂ S− = p L− , q̂ S− = q L− . (3.51) Pożądane składowe prądu sieci kolejności zgodnej i przeciwnej można wyznaczyć z zależności: ⎡iS+α ⎤ 1 ⎢ + ⎥= 2 2 ⎣⎢iSβ ⎦⎥ U Sα + U Sβ ⎡ pˆ S+ ⎢ + ⎣ qˆ S − qˆ S+ ⎤ ⎡U Sα ⎤ ⎥⎢ ⎥, pˆ S+ ⎦ ⎣U Sβ ⎦ (3.52) ⎡iS−α ⎤ 1 ⎢− ⎥= 2 2 ⎢⎣iSβ ⎥⎦ U Sα + U Sβ ⎡ pˆ S− ⎢ − ⎣ qˆ S qˆ S− ⎤ ⎡U Sα ⎤ ⎥⎢ ⎥. − pˆ S− ⎦ ⎣U Sβ ⎦ (3.53) Natomiast prądy kompensujące przyjmują postać: + − ⎡iCα ⎤ ⎡iOα ⎤ ⎡iSα + iSα ⎤ ⎡iOα ⎤ 1 ⎢ i ⎥ = ⎢i ⎥ − ⎢ i + + i − ⎥ = ⎢ i ⎥ − ⎢ Cβ ⎥ ⎢ Oβ ⎥ ⎢ Sβ Sβ ⎥ ⎢ Oβ ⎥ U 2 + U 2 Sα Sβ ⎢⎣ iC 0 ⎥⎦ ⎢⎣ iO 0 ⎥⎦ ⎢⎣ 0 ⎥⎦ ⎢⎣ iO 0 ⎥⎦ ⎡ pˆ S+ + pˆ S− ⎢ + − ⎢ qˆ S + qˆ S ⎢ 0 ⎣ qˆ S− − qˆ S+ ⎤ ⎥ ⎡U Sα ⎤ . pˆ S+ + pˆ S− ⎥ ⎢ U Sβ ⎥⎦ ⎣ 0 ⎥⎦ (3.54) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 31 Przy niesymetrycznym zasilaniu układ APF nie kompensuje poprawnie niepożądanych składowych prądu odbiornika. Przyczyną tego jest niewłaściwa postać macierzy transformacji Cq, a następnie jest źle wyznaczana macierz Uq. Dla systemów 3-fazowych niesymetrycznych macierze te należy zapisać jako: 0 0 ⎡δ (t + TS / 4) ⎤ ⎢ ⎥, 0 0 δ (t + TS / 4) Cq = ⎢ ⎥ ⎢⎣ 0 0 δ (t + TS / 4)⎥⎦ Uq T ⎡U S' 1 ⎤ ⎡U S 1 (t + TS / 4) ⎤ ⎥ ⎢ = ⎢U S' 2 ⎥ = ⎢⎢U S 2 (t + TS / 4)⎥⎥ , ⎢U S' 3 ⎥ ⎢⎣U S 2 (t + TS / 4)⎥⎦ ⎦ ⎣ q = [i1 i2 ⎡U S' 1 ⎤ ⎥ ⎢ i3 ] ⎢U S' 2 ⎥ , ⎢U S' 3 ⎥ ⎦ ⎣ (3.55) (3.56) (3.57) gdzie: Ts- okres napięcia zasilania linii, δ (t + TS / 4) -operator przesunięcia o ¼ okresu Ts. Moc czynną wyznaczamy ze wzoru: p = U S 1i1 + U S 2i2 + U S 3i3 . (3.58) Natomiast prądy kompensujące: ⎡iCα ⎤ ⎡iOα ⎤ 1 ⎢i ⎥ = ⎢i ⎥ − β β C O ' ⎢ ⎥ ⎢ ⎥ U U −U ' U Sα Sβ Sα Sβ ⎢⎣ iC 0 ⎥⎦ ⎢⎣ iO 0 ⎥⎦ ⎡U S' β ⎢ ' ⎢U Sα ⎢ 0 ⎣ − U Sβ ⎤ ⎥ ⎡ pˆ ⎤ U Sα ⎥ ⎢ S ⎥ , qˆ 0 ⎥⎦ ⎣ S ⎦ (3.59) gdzie: U S' α = U Sα (t + TS / 4), U S' β = U Sβ (t + TS / 4) . (3.60) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 32 3.4.4. Układ sterowania oparty na modyfikacji teorii mocy chwilowych Metoda sterowania opiera się na ocenie parametrów odbiornika na podstawie obserwacji uśrednionych wartości współrzędnych wektora prądu pobieranego z sieci, mierzony w układzie odniesienia wirującym synchronicznie z wektorem napięcia sieci [22]. Prądy sieci przedstawiamy w układzie α-β: i0α = i0α 2⎛ 1 1 ⎞ ⎜ iO1 − iO 2 − iO 3 ⎟ 3⎝ 2 2 ⎠ 2⎛ 3 3 ⎞ = ⎜⎜ iO 2 − iO 3 ⎟⎟ 3⎝ 2 2 ⎠ . (3.61) Tak otrzymany wektor przenoszony jest do układu wirującego synchronicznie z wektorem napięcia sieci za pomocą przekształcenia Parka wzór 3.41. Otrzymane sygnały po uśrednieniu w filtrach dolnoprzepustowych są proporcjonalne odpowiednio do pierwszej harmonicznej prądu odpowiedzialnego za moc czynną Ip i bierną Iq. W celu stabilizacji napięcia na kondensatorze zastosowano regulator napięcia UDC typu P. sygnał wyjściowy z regulatora wynosi: ( ) * u = k U DC − U DC , (3.62) gdzie: k- współczynnik wzmocnienia regulatora, * -wartość zadana napięcia na kondensatorze, U DC U DC - wartość zmierzona napięcia na kondensatorze. Do składowej prądu czynnego Ip dodawany jest uchyb u z regulatora napięcia kondensatora, natomiast składowa odpowiedzialna za moc bierną pozostaje bez zmian. ⎧ I Cp = I p + u . ⎨ I I = Cq q ⎩ (3.63) Otrzymane w ten sposób prądy są przeniesione z układu wirującego x-y do układu stacjonarnego α-β za pomocą odwrotnego przekształcenia Parka wzór 2.42. Następnie przechodzimy ze składowych ortogonalnych do współrzędnych fazowych: iC1 = iCα 1 3 iC 2 = − iCα + iCβ . 2 2 1 3 iC 3 = − iCα − iCβ 2 2 (3.64) Schemat blokowy układu sterowania filtrem aktywnym oparty o modyfikację teorii mocy chwilowej przedstawia rysunek 3.14. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi V1 iO1 iO2 iO3 PLL ϕ i0 x αβ i0α ABC 33 i0 β e jϕ I cq Ip FILTR DP I cp i0 y iCα e jϕ i0 β ABC αβ iC1 iC2 iC3 u UDC * U DC Rys.3.14. Schemat blokowy układu sterowania filtrem aktywnym oparty o modyfikację teorii mocy chwilowej 3.4.5. Algorytm oparty na teorii mocy chwilowych p-q-r Chwilowe moce rzeczywista i urojone mogą zostać zdefiniowane w obwodzie trójfazowym czteroprzewodowym tzw. teoria p-q-r [23,24,25]. Napięcia i prądy przedstawione w kartezjańskim układzie współrzędnych a-b-c można transformować do układu 0-α-β za pomocą transformaty Clarka, opisaną wzorem 3.39. Prądy w układzie p-q-r wirujące zgodnie z wektorem napięcia sieci można zapisać następująco: ⎡ ⎢ e ⎡i p ⎤ ⎢ 0 ⎢i ⎥ = ⎢ 0 ⎢ q⎥ ⎢ ⎢⎣ ir ⎥⎦ ⎢ ⎢ ⎢eαβ ⎣ − eα e0αβ eβ eαβ ee − 0 α eαβ ⎤ ⎥ eβ ⎥ ⎡ ⎤ i0 e0αβ eα ⎥ ⎢ ⎥ ⎥ iα , eαβ ⎥ ⎢ ⎥ ⎢i ⎥ e0 eβ ⎥ ⎣ β ⎦ − eαβ ⎥⎦ (3.65) gdzie: e0αβ = e02 + eα2 + eβ2 , (3.66) eαβ = eα2 + eβ2 . (3.67) Napięcia w układzie p-q-r zdefiniowane są następująco: ⎡ ⎢ e ⎡e p ⎤ ⎢ 0 ⎢e ⎥ = ⎢ 0 ⎢ q⎥ ⎢ ⎢⎣ er ⎥⎦ ⎢ ⎢ ⎢eαβ ⎣ eα e0αβ eβ eαβ e0 eα eαβ ⎤ ⎥ eβ ⎥ ⎡ e0 ⎤ ⎡e0αβ ⎤ e0αβ eα ⎥ ⎢ ⎥ ⎢ ⎥ ⎥ ⎢eα ⎥ = ⎢ 0 ⎥ . eαβ ⎥ ⎢e ⎥ ⎢ 0 ⎥⎦ e0 eβ ⎥ ⎣ β ⎦ ⎣ eαβ ⎥⎦ (3.68) Chwilowa rzeczywista moc jest zdefiniowana jako iloczyn skalarny wektorów napięcia i prądu jako: r r p ≡ e pqr i pqr = e p i p (3.69) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 34 Chwilowa urojona moc jest zdefiniowana jako iloczyn wektorowy wektorów napięcia i prądu: ⎡ 0 ⎤ r r r ⎢ ⎥ q ≡ e pqr × i pqr = ⎢− e p ir ⎥ . ⎢ e p iq ⎥ ⎣ ⎦ (3.70) Należy zauważyć, że prąd ir przyczynia się do określenia chwilowej urojonej mocy qq i prąd iq przyczynia się do określenia chwilowej urojonej mocy qr. Dla wygody wyrażenia, chwilowych rzeczywistych i urojonych mocy mogą zostać wyrażone jako: ⎡ p ⎤ ⎡ e pi p ⎤ ⎢q ⎥ = ⎢− e i ⎥ . ⎢ q⎥ ⎢ p r⎥ ⎢⎣ qr ⎥⎦ ⎢⎣ e p iq ⎥⎦ (3.71) Trzy chwilowe moce są liniowo niezależne od siebie. W ten sposób, trzy komponenty prądu mogą zostać kontrolowane niezależnie od trzech chwilowych mocy kolejno. Moc pozorną układu można określić jako: r r s = e pqr × i pqr = p 2 + qq2 + qr2 (3.72) Wykres wektorowy mocy płynących w układzie przedstawia rysunek 3.15. qr qq p qqr s Rys.3.15. Wykresy wektorowe mocy płynących w układzie Prądy układu obliczone z mocy można przedstawić za pomocą następujących wzorów: ⎡ p ⎤ ⎡i p ⎤ 1 ⎥ ⎢ ⎢i ⎥ = ⎢ q ⎥ e ⎢ qr ⎥ p ⎢− qq ⎥ ⎢⎣ ir ⎥⎦ ⎦ ⎣ (3.73) Układ równoważny dla układu podstawowego składa się z trzech jednofazowych układów (p, q, r), pokazanych na rysunku 3.16. Obwód p zawiera tylko rzeczywisty komponent prądu, odnoszący się do rzeczywistej chwilowej mocy p. Obwód q zawiera urojony komponent prądu, oznaczający chwilową urojoną moc qr. Obwód r posiada tylko urojoną część prądu, odpowiedzialną za chwilową urojoną moc qq. Dlatego rzeczywisty prąd ip oraz urojone prądy iq oraz ir są całkowicie niezależne od siebie w przedstawionym układzie zastępczym. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi ip zp jiq zq jir zr 35 ep Rys.3.16. Układ zastępczy Prąd ir z układu p-q-r głównie odnosi się do prądu w przewodzie neutralnym in w trójfazowym czteroprzewodowym systemie. Aby wyeliminować prąd w przewodzie neutralnym, przestrzenny wektor prądów musi być kontrolowany w celu odniesienia go do płaszczyzny α-β. Kiedy nie występuje napięcie zerowe e0 w systemie, prąd w przewodzie zerowym jest określony jako: in = 3ir = 3i0 . (3.74) Wówczas kompensacja urojonej mocy chwilowej qq prowadzi do wyeliminowania prądu ir, a w konsekwencji prądu in, bez żadnego elementu magazynującego energii. Kiedy występuje w systemie napięcie e0 prąd in nie jest równy prądowi z układu r. W tym przypadku urojona moc chwilowa qq musi zostać całkowicie skompensowana w celu eliminacji prądu in, bez użycia elementu gromadzącego energię. Wówczas referencyjny prąd ir* do eliminacji prądu in jest określony jako: ir* = − e0 ip . eαβ (3.75) Aby wyznaczyć prądy kompensujące należy przejść z układu p-q-r do układu współrzędnych 0-α-β za pomocą odwrotnego przekształcenia Parka, przyjmując za chwilową moc bierną q sumę mocy qq oraz qr. Następnie stosując odwrotne przekształcenie Clarka otrzymujemy prądy kompensujące. Schemat układu do wyznaczania prądów kompensujących przedstawia rysunek 3.17. Do wyznaczenia sygnałów kompensujących w układzie α-β użyto następujących wzorów; ⎡iCα ⎤ 1 ⎡eα ⎢i ⎥ = 2 2 ⎢ ⎣ Cβ ⎦ eα + eβ ⎣eβ − eβ ⎤ ⎡ p ⎤ eα ⎥⎦ ⎢⎣qq + qr ⎥⎦ (3.76) Natomiast do wyznaczenia fazowych prądów kompensujących użyto wzorów: ⎡ia ⎤ ⎢i ⎥ = ⎢ b⎥ ⎢⎣ic ⎥⎦ ⎡ ⎤ ⎢ 1 0 ⎥ ⎢ 2 3 ⎥ ⎢− 0.5 ⎥ 3⎢ 2 ⎥ ⎢ 3⎥ ⎢− 0.5 − ⎥ 2 ⎦ ⎣ ⎡ir ⎤ ⎡iα ⎤ 1 ⎢ ⎥ ⎢i ⎥ + ⎢ir ⎥ c β ⎣ ⎦ ⎢⎣ir ⎥⎦ (3.77) 3. Algorytmy sterowania energetycznymi filtrami aktywnymi Ua Uα A-B-C p Ub Uc Uβ αβ iα A-B-C i2 p qq FGP p-q-r - iCα α −β −0 iC1 + Wyznaczanie prądów i1 FGP 36 qq iC2 + p, q, r, iC3 iCβ i3 iβ i0 qr α −β −0 FGP qr - α −β −0 A-B-C + Rys.3.17. Schemat układu do wyznaczania prądów kompensujących według teorii mocy chwilowych p-q-r 3.5. Algorytmy bezpośrednie oparte na rozkładzie przebiegu okresowego w szereg Fouriera 3.5.1. Algorytm Moving Fourier Transform Prąd obciążenia [26] można zapisać jako: iL = ∑ ( An (t ) cos(nωt ) + Bn sin(nωt ) ) , (3.78) gdzie: t 2 An = ∫ i (τ ) sin( nωτ )dτ T t −T t 2 Bn = ∫ i (τ ) cos( nωτ )dτ T t −T W postaci dyskretnej dla ωt = . (3.79) 2 πk : N ⎛ 2 πmn ⎞ i (m) sin ⎜ ⎟ ⎝ N ⎠ m = k − N +1 , k 2 ⎛ 2 πmn ⎞ Bn = ∑ i(m) cos⎜⎝ N ⎟⎠ N m = k − N +1 An = 2 N k ∑ (3.80) a w postaci rekursywnej: An (k ) = An (k − 1) + 2 [i(k ) − i(k − N )]sin ⎛⎜ 2πkn ⎞⎟ N ⎝ N ⎠ 2 ⎛ 2 πkn ⎞ Bn (k ) = Bn (k − 1) + [i (k ) − i (k − N )] cos⎜ ⎟ N ⎝ N ⎠ . (3.81) ⎛ 2 πkn ⎞ ⎛ 2 πkn ⎞ Po wymnożeniu współczynników An i Bn odpowiednio przez sin ⎜ ⎟ i cos⎜ ⎟ ⎝ N ⎠ ⎝ N ⎠ otrzymamy wartość pierwszej harmonicznej prądu obciążenia. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 37 Schemat blokowy układu wyznaczania prądów kompensujących za pomocą algorytmu moving Fourier transform przedstawia rysunek 3.18. B1(k-1) z−N z −1 i0(k-N) B1(k) cos(2 πkn / N ) i0(k) sin( 2 πkn / N ) A1(k) 2/N A1(k-1) z −1 Rys 3.18. Schemat blokowy układu wyznaczania prądów kompensujących poprzez bezpośredni rozkład sygnału na szereg Fouriera za pomocą algorytmu moving Fourier transform 3.5.2. Algorytm sliding DFT Algorytm Sliding DFT pozwala na wykonanie algorytmu DFT w czasie miedzy kolejnymi próbkami sygnału wejściowego, z N punktowego przesuwającego się okna próbek [27,28,29]. Okno czasu jest przesuwane naprzód o jedna próbkę, i następnie jest obliczane nowe N punktowe DFT. Wartości nowego DFT są za każdym razem obliczane bezpośrednio z wyników poprzedniego. Algorytm można przedstawić za pomocą wzoru: S k ( n) = S k ( n − 1) ⋅ e j 2 πk / N − x ( n − N ) + x ( n) , (3.82) gdzie: Sk(n)-nowym elementem widma, Sk(n-1)-poprzednim elementem widma. Wartość Sk(n) obliczamy odejmując od poprzedniej wartości Sk(n-1) pomnożonego przez ej2πk/N wartość próbki x(n-N) sygnału wejściowego i dodając aktualną wartość próbki x(n) tego sygnału. Zatem algorytm typu sliding DFT wymaga dla każdej harmonicznej dwóch mnożeń liczb zespolonych i dwóch dodawań składników rzeczywistych, aby otrzymać próbkę wyjściową. Schemat blokowy układu realizującego równanie 3.82 pokazano na rysunku 3.19. Transmitancja dla k – tego elementu widma można więc przedstawić jako: H SDFT ( z ) = 1 − z−N . 1 − e j 2 πk / N z −1 (3.83) x(n) SK(n) z −1 z −N SK(n-1) -1 − e − j 2 πk / N Rys.3.19. Struktura filtru do wyznaczania pojedynczej składowej widma z zastosowaniem algorytmu SDFT 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 38 W celu wyznaczenia całego widma dla N – punktowego DFT, należy zastosować N filtrów od k=0,do N-1. Strukturę takiego banku filtrów analizy przedstawiono na rysunku 3.20. Filtr taki ma N zer jednakowo rozstawiony dookoła okręgu jednostkowego na płaszczyźnie zespolonej Z, oraz pojedynczy biegun, w punkcie ej2πk/N (Rys.3.21). Uproszczone charakterystyki amplitudowe pokazane są na rysunku 3.22. S0(n) z −1 S0(n-1) − e− j2π0/ N x(n) S1(n) z −1 z−N S1(n-1) -1 − e − j 2 π1 / N SN-1(n) z −1 SN-1(n-1) − e − j 2 π ( n −1) / N Rys.3.20. Struktura filtru do wyznaczania N składowych widma z zastosowaniem algorytmu SDFT 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 39 Rozmieszczenie pierwiastków 1 0.8 0.6 Imaginary Part 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -1.5 -1 -0.5 0 Real Part 0.5 1 1.5 Rys.3.21. Rozmieszczenie pierwiastków i zer filtru SDFT 0 -5 -10 Amplituda [V] -15 -20 -25 -30 -35 -40 -45 -50 0 100 200 300 Częstotliwość [Hz] 400 500 Rys.3.22. Charakterystyki fazowe N kanałowego filtru realizującego algorytm SDFT Filtr typu sliding DFT pracuje na granicy stabilności, ponieważ biegun transmitancji jest umieszczony na okręgu jednostkowym płaszczyzny zespolonej Z. Jeśli współczynnik filtru podlegają zaokrągleniu w wyniku zastosowania arytmetyki stałoprzecinkowej, układ filtru może stać się niestabilny. W celu zapewnienia stabilności stosuje się tzw. współczynnik tłumienia r, który przesuwa biegun transmitancji do wnętrza okręgu jednostkowego. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 40 Transmitancja cyfrowa przyjmuje wówczas postać: H SDFT , gs ( z ) = 1 − r N ⋅ z−N , 1 − r ⋅ e j 2 πk / N z −1 (3.84) a równanie algorytmu wynosi: S k , gs (n) = S k , gs (n − 1) ⋅ re j 2 πk / N − x(n − N ) ⋅ r N + x(n) . (3.85) Strukturę takiego filtru przedstawia rysunek 3.23. x(n) SK(n) z −1 z −1 SK(n-1) − rN − re − j 2 πk / N Rys.3.23. Struktura filtru do wyznaczania pojedynczej składowej widma z zastosowaniem algorytmu typu sliding DFT ze współczynnikiem tłumienia r Zastosowanie współczynnika r bliskiego jedności, powoduje zapewnienie stabilności ale okupione jest to dodatkowymi operacjami układu logicznego. Ustalenia, czy współczynnik tłumienia r jest konieczny, w indywidualnych aplikacjach SDFT wymaga ostrożnego empirycznego zbadania. 3.5.3. Algorytm sliding Goertzel DFT Rozwinięciem algorytmu sliding DFT jest algorytm sliding Goertzel DFT [27]. Uzyskujemy go wymnażając licznik i mianownik transmitancji zespolonej przez czynnik 1 − e j 2 πk / N z −1 . Wówczas transmitancja zespolona przyjmuje postać: ( H SG ( z ) = (1 − e z −1 )(1 − z − N ) 1 − 2 cos(2πk / N ) z −1 + z − 2 ) − j 2 πk / N (3.86) Strukturę takiego algorytmu przedstawia poniższy rysunek: v(n) x(n) y(n) z −1 z−N 2 cos(2 πk / N ) z -1 −1 − e − j 2 πk / N -1 Rys.3.24. Struktura filtru do wyznaczania pojedynczej składowej widma z zastosowaniem algorytmu sliding Goertzel DFT 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 41 Jeśli chce się obliczyć całe N punktowe DFT, należy zastosować podobnie jak w algorytmie sliding DFT, N filtrów od k=0, do N-1. Filtr taki ma N zer jednakowo rozstawiony dookoła okręgu jednostkowego na płaszczyźnie zespolonej Z, oraz dwa bieguny sprzężone, w punktach e±j2πk/N (Rys.3.25), co zwiększa jego stabilność. Charakterystyki amplitudowe mają identyczny kształt co w sliding DFT. Rozmieszczenie pierwiastków 1 0.8 0.6 Imaginary Part 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -1.5 -1 -0.5 0 Real Part 0.5 1 1.5 Rys.3.25. Rozmieszczenie pierwiastków i zer filtru sliding Goertzel Wzór rekursywny algorytmu sliding Goertzel składa się z dwóch części i ma następującą postać: v ( n) = x( n) − x ( n − N ) + 2 cos( 2 πk / N )v ( n − 1) − v ( n − 2) , y (n) = v(n) − e − j 2 πk / N v(n − 1) . (3.87) (3.88) Algorytm sliding Goertzel ma mniejsze obciążenie obliczeniowe niż sliding DFT, ponieważ do obliczenia wartości v(n) wykorzystywane są wyłącznie rzeczywiste współczynniki sprzężenia zwrotnego. Zespolony współczynnik wykorzystywany jest dopiero do obliczenia końcowej wartości widma. Natomiast przy sliding DFT były używane współczynniki zespolone w sprzężeniu zwrotnym, co zwiększało liczbę operacji arytmetycznych. 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 42 3.6. Algorytm kwadraturowy Algorytm kwadraturowy polega na rozbiciu sygnału wejściowego na sygnały synfazowy i kwadraturowy. Część synfazową otrzymujemy wymnażając sygnał wejściowy przez sygnał cos(ωt), natomiast część kwadraturową wymnażając ten sam sygnał wejściowy przez sin(ωt). Schemat blokowy takiego modulatora przedstawia rysunek 3.26. y1 (t ) = x(t ) Am cos(ωmt ) x(t) Am cos(ωmt ) y2 (t ) = x(t ) Am sin(ωmt ) Am sin(ωmt ) Rys.3.26. Schemat blokowy modulatora kwadraturowego Jeżeli sygnałem wejściowym jest przebieg sinusoidalny to modulację kwadraturową możemy opisać następującymi wzorami: Dla sygnału y1(t): x(t ) = A1 sin(ω1t ) . (3.89) y1 = A1 sin(ω1t ) Am cos(ωmt ) . (3.90) Na podstawie wzoru trygonometrycznego: sin(α ) cos(β ) = 0.5(sin(α + β ) + sin(α − β ) ) , (3.91) y1 = 0.5 A1 Am (sin((ω1 + ωm )t ) + sin((ω1 − ωm )t ) ) . (3.92) y2 = A1 sin(ω1t ) Am sin(ωmt ) . (3.93) otrzymujemy: Dla sygnału y2(t): Na podstawie wzoru trygonometrycznego: sin(α ) sin(β ) = 0.5(cos(α − β ) − cos(α + β ) ) , (3.94) y2 = 0.5 A1 Am (cos((ω1 − ωm )t ) + cos((ω1 + ωm )t ) ) . (3.95) otrzymujemy: Rozważmy sygnał rzeczywisty x(t), zawierający pierwszą, trzecią i piątą harmoniczną, którego widmo pokazane jest na rysunku 3.28. Gdy zmieszamy sygnał x(t), z przebiegiem kosinusoidalnym o częstotliwości f0, równej częstotliwości harmonicznej podstawowej to uzyskamy sygnał synfazowy którego widmo przedstawia rysunek 3.29. Analitycznie tą operację można zapisać w następujący sposób: Dla f=50 Hz y1( 50 Hz ) = 0.5 ⋅ 30(sin((50 + 50)t ) + sin((50 − 50)t ) ) = 15(sin(100t ) + sin( 0t )) . Dla f=150 Hz y1(150 Hz ) = 0.5 ⋅ 10(sin((150 + 50)t ) + sin((150 − 50)t ) ) = 5(sin( 200t ) + sin(100t )) . 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 43 Dla f=250 Hz y1( 250 Hz ) = 0.5 ⋅ 5(sin(( 250 + 50)t ) + sin(( 250 − 50)t ) ) = 2.5(sin(300t ) + sin( 200t )) . Całkowity sygnał jest sumą poszczególnych sygnałów y1 = y1(50 Hz ) + y1(150 Hz ) + y1( 250 Hz ) , y1 = 20 sin(100t ) + 7.5 sin(200t ) + 2.5 sin(300t ) . Poszczególne części wzorów przedstawiają odpowiednie prążki widma z rysunku 3.29. Podobnie się dzieje przy powstawaniu składowej kwadraturowej. Sygnał wejściowy wymnażamy jest z sygnałem sinusoidalnym o częstotliwości f0, równej częstotliwości harmonicznej podstawowej. Analitycznie tą operację można zapisać w następujący sposób: Dla f=50 Hz y 2 ( 50 Hz ) = 0.5 ⋅ 30(cos((50 − 50)t ) − cos((50 + 50)t ) ) = 15(cos( 0t ) − cos(100t )) . Dla f=150 Hz y 2 (150 Hz ) = 0.5 ⋅ 10(cos((150 − 50)t ) − cos((150 + 50)t ) ) = 5(cos(100t ) − cos( 200t )) . Dla f=250 Hz y 2 ( 250 Hz ) = 0.5 ⋅ 5(cos(( 250 − 50)t ) − cos(( 250 + 50)t ) ) = 2.5(cos( 200t ) − cos(300t )) . Całkowity sygnał jest sumą poszczególnych sygnałów y2 = y2(50 Hz ) + y2(150 Hz ) + y2( 250 Hz ) , y2 = 15 cos(0t ) − 10 cos(100t ) − 2.5 cos(200t ) − 2.5 cos(300t ) . Poszczególne części wzorów przedstawiają odpowiednie prążki widma z rysunku 3.30. Modulację kwadraturową można wykorzystać do sterowania energetycznymi filtrami aktywnymi. Schemat blokowy takiego sterowania przedstawia rysunek 3.27. cos(ωt + ϕ ) cos(ωt + ϕ ) 2 1+40s iL sin(ωt + ϕ ) sin(ωt + ϕ ) iC 2 1+40s Rys.3.27. Jednofazowy schemat blokowy wykorzystujący modulator kwadraturowy do wyznaczania prądów kompensujących 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 44 Sygnał wejściowy (Rys 3.27) poddany jest modulacji kwadraturowej (rysunek 3.29, i 3.30). Po wzmocnieniu, ze współczynnikiem wzmocnienia dwa, podlegają filtracji dolnoprzepustowej (rysunek 3.31 i 3.32). Filtr został zaprojektowany tak by przepuścić tylko składową stałą sygnału. Następnie sygnały po filtracji zostają odjęte od sygnałów przed wzmocnieniem i filtracją (rysunek 3.33 i 3.34). Ponieważ przebiegi filtrowane poddane były wzmocnieniu to amplituda składowej stałej po operacji odejmowania zmieni znak na przeciwny. Sygnały te jeszcze raz zostają poddane wymnożeniu odpowiednio przez cos(ωt) oraz sin(ωt) (demodulacja) (rysunek 3.35 i 3.36). Podczas tego procesu zachodzą identyczne przekształcenia jak zostały opisane powyżej. W ten sposób powstają widma których składowa podstawowa synfazowa ma przeciwny znak do składowej podstawowej kwadraturowej. Po zsumowaniu obu składowych otrzymujemy sygnał w którym znajdują się tylko wyższe harmoniczne przebiegu wejściowego (rysunek 3.37). 22 30 20 18 25 16 14 Amplituda Amplituda 20 15 12 10 8 10 6 4 5 2 0 0 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 0 500 Rys.3.28. Moduł widma sygnału wejściowego. 0 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 500 Rys.3.29.Moduł widma sygnału synfazowego 5 16 4.5 14 4 12 3.5 3 Amplituda Amplituda 10 8 2.5 2 6 1.5 4 1 2 0 0.5 0 0 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 Rys.3.30.Moduł widma sygnału kwadraturowego 500 0 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 500 Rys.3.31. Moduł widma sygnału synfazowego po filtracji 3. Algorytmy sterowania energetycznymi filtrami aktywnymi 45 20 30 18 25 16 14 Amplituda Amplituda 20 15 12 10 8 10 6 4 5 2 0 0 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 0 500 Rys.3.32. Moduł widma sygnału kwadraturowego po filtracji i wzmocnieniu 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 500 Rys.3.33. Moduł widma różnicy sygnału synfazowego przed i po filtracją 15 10 10 Amplituda Amplituda 15 5 0 5 0 50 100 150 200 250 300 350 400 450 0 500 Czestotliwosc [Hz] Rys.3.34. Moduł widmo różnicy sygnału kwadraturowego przed i po filtracją 0 11 11 10 10 9 9 8 8 7 7 6 5 3 3 2 2 1 1 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 150 200 250 300 Czestotliwosc [Hz] 350 400 450 500 5 4 0 100 6 4 0 50 Rys.3.35. Moduł widma sygnału synfazowego po demodulacji Amplituda Amplituda 0 450 500 Rys.3.36. Moduł widma sygnału kwadraturowego po demodulacji 0 0 50 100 150 200 250 300 Czestotliwosc [Hz] 350 400 450 Rys.3.37. Moduł widma sygnału wyjściowego 500 4. Podstawowe układy nadążnych modulatorów PWM 46 4. Podstawowe układy nadążnych modulatorów PWM 47 4. Podstawowe układy nadążnych modulatorów PWM 4.1. Jednofazowy modulator histerezowy Modulacja nadążna polega na śledzenie wartości zadanej przez sygnał wyjściowy modulatora. Najprostszym układem modulatora nadążnego jest regulator histerezowy [30]. VSI iZ e L S iK R iK R UDC R Rys.4.1. Schemat symulacyjny jednofazowego nadążnego modulatora histerezowego Jeżeli wartość sygnału wyjściowego jest mniejsza od wielkości zadanej to błąd e między prądem zadanym iz i prądem wyjściowym iK jest dodatni i większy od połowy szerokości histerezy. Wówczas dla zwiększenia sygnału wyjściowego regulator histerezowy załącza +UDC napięcia zasilania. Sygnał wyjściowy wzrasta aż do osiągnięcia przez błąd e wartości ujemnej i mniejszej od połowy szerokości histerezy. Wtedy zostaje załączone –UDC napięcia zasilania, co powoduje, że sygnał wyjściowy maleje. Zasadę działania modulatora histerezowego przedstawia rysunek 4.2. Δh iK iZ iK iZ e t Δh 2 − Δh 2 t S t Rys.4.2. Zasada działania jednofazowego modulatora histerezowego. Sygnał wyjściowy oscyluje wokół sygnału zadanego w granicach określonych szerokością histerezy. Oscylacje te są tym mniejsze im mniejsza jest histereza komparatora. Jednak wraz ze zmniejszeniem szerokości histerezy rośnie częstotliwość przełączeń łączników. Częstotliwość ta jest ograniczona ze względu na czasy komutacji oraz straty komutacyjne w falowniku. 4. Podstawowe układy nadążnych modulatorów PWM 48 4.2. Trójfazowy modulator histerezowy Modulacja nadążna w każdej z trzech faz przebiega niezależnie. Wynika stąd, że trójfazowy modulator histerezowy jest złożeniem trzech modulatorów jednofazowych [30]. iZA SA eA VSI L R L R L R R iZB SB eB R iZC SC eC R UDC iKA iKB iKC R R R Rys.4.3.Schemat symulacyjny trójfazowego nadążnego modulatora histerezowego Trójfazowy falownik posiada sześć łączników energoelektronicznych. Schemat uproszczony takiego falownika przedstawia rysunek 4.4. + S1 S2 S3 ZA ZB UDC ZC S4 S5 S6 Rys.4.4. Uproszczony model trójfazowego falownika napięcia 4. Podstawowe układy nadążnych modulatorów PWM 49 Poniższa tabela zawiera rozkład napięcia zasilania UDC na poszczególne napięcia fazowe w zależności od stanów łączników w danej gałęzi falownika. Tabela.4.1.Rozkład napięcia zasilania UDC w falowniku napięcia Konfiguracja sygnałów sterujących 001 010 100 011 101 110 Faza A Faza B Faza C 2/3UDC -1/3 UDC 2/3 UDC -2/3 UDC 1/3 UDC 1/3 UDC -1/3 UDC 2/3 UDC -1/3 UDC 1/3 UDC -2/3 UDC 1/3 UDC -1/3 UDC -1/3 UDC -1/3 UDC 1/3 UDC 1/3 UDC -2/3 UDC 4.3. Podstawy modulacji PWM Proces modulacji PWM polega na porównaniu sygnału modulującego (nośnego) Sn z sygnałem modulowanym Sm [30]. Są stosowane dwa rodzaje sygnałów nośnych, sygnał trójkątny i piłokształtny. Modulację sygnałem piłokształtnym nazywamy jednostronną, ponieważ jedno zbocze sygnału sterującego ma zawsze ustaloną pozycję względem sygnału modulującego, a drugie zbocze jest modulowane. Natomiast modulację sygnałem trójkątnym nazywamy dwustronną ponieważ położenia obu zboczy sygnału sterującego są modulowane w czasie okresu sygnału modulującego. Zastosowanie modulacji sygnałem trójkątnym zmniejsza zawartość wyższych harmonicznych sygnału w porównaniu do modulacji sygnałem piłokształtnym o tej samej częstotliwości modulacji fs. Przy obu tych sposobach modulacji sygnał sterujący załączany jest na wartości ±UDC. Taki tryb sterowania nazywamy dwubiegunowym. 1 a) Amplituda 0.5 0 -0.5 -1 0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02 0.012 0.014 0.016 0.018 0.02 Czas [s] b) Amplituda +UDC -UDC 0 0.002 0.004 0.006 0.008 0.01 Czas [s] Rys.4.5.Przykład jednostronnej modulacji dwubiegunowej, a)sygnał modulowany i modulujący, b)sygnał sterujący 4. Podstawowe układy nadążnych modulatorów PWM 50 1 a) Amplituda 0.5 0 -0.5 -1 0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02 0.012 0.014 0.016 0.018 0.02 Czas [s] b) Amplituda +UDC -UDC 0 0.002 0.004 0.006 0.008 0.01 Czas [s] Rys.4.6.Przykład dwustronnej modulacji dwubiegunowej, a) sygnał modulowany i modulujący, b) sygnał sterujący Jeżeli zamiast jednego sygnału modulującego Sn zastosujemy dwa sygnały modulujące Sn i -Sn to zamiast dwóch stanów sygnału sterującego ±UDC otrzymamy dodatkowy stan 0V. Taką modulację nazywamy jednobiegunową, ponieważ w półokresie sygnału modulowanego uzyskujemy tylko jeden stan napięcia zasilania +UDC. Zastosowanie takiej modulacji poprawia jakość sygnału zmodulowanego oraz zmniejsza częstotliwość kluczowania, a co za tym idzie powoduje zmniejszenie strat w falowniku. 1 a) Amplituda 0.5 0 -0.5 -1 0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02 0.012 0.014 0.016 0.018 0.02 Czas [s] b) Amplituda +UDC -UDC 0 0.002 0.004 0.006 0.008 0.01 Czas [s] Rys.4.7.Przykład modulacji jednobiegunowej: a) sygnał modulowany i modulujący, b) sygnał sterujący 4. Podstawowe układy nadążnych modulatorów PWM 51 4.4. Regulator PI W dziedzinie ciągłej regulator jest opisany transmitancją operatorową [31]: G(s) = ⎛ 1 ⎞ u ( s) k ⎟⎟ = k P + I , = k P ⎜⎜1 + e( s ) s ⎝ Ti s ⎠ (4.1) gdzie: kP –współczynnik wzmocnienia członu proporcjonalnego P, kI –współczynnik określający parametry członu całkującego I, Ti –czas całkowania (zdwojenia). Ponieważ ω PI = KI , to powyższe równanie można zapisać jako: KP ⎛ s ⎞ +1⎟ ⎜ ω ⎟e( s ) . u ( s) = k Pω PI ⎜ PI ⎜ s ⎟ ⎜ ⎟ ⎝ ⎠ (4.2) Przejście z dziedziny czasowej do dyskretnej wymaga aby operacja całkowania była aproksymowana przez dyskretne sumowanie. Rozróżniamy dwa rodzaje aproksymacji: metodą prostokątów i metodą trapezów (biliniową). Dla metody prostokątów przyjmuje się aproksymację pokazaną na rysunku 4.8. x(nTp ) nTp-Tp nTp t Rys.4.8. Całkowanie metodą prostokątów Układ cyfrowy realizujący taką aproksymacje można zapisać transmitancją operatorową: G ( z ) = TP z −1 . z −1 − 1 (4.3) Transmitancja operatorowa regulatora PI przyjmie postać: k P z −1 + k p (ω PI TP − 1) TP ⎞ ⎛ u ( z ) = k P ⎜1 + ω PI −1 ⎟ e( z ) = e( z ) . z −1⎠ z −1 − 1 ⎝ (4.4) 4. Podstawowe układy nadążnych modulatorów PWM 52 Dla metody trapezów aproksymacja całkowania przebiega następująco: x(nTp ) nTp-Tp nTp t Rys.4.9. Całkowanie metodą trapezów Układ cyfrowy realizujący taką aproksymacje można zapisać transmitancją operatorową: TP z −1 + 1 G( z) = . 2 z −1 − 1 (4.5) Transmitancja operatorowa regulatora PI przyjmie postać: ⎛ω T ⎞ ⎛ω T ⎞ k p ⎜ PI P + 1⎟ + k p ⎜ PI P − 1⎟ ⎛ TP z + 1 ⎞ 2 ⎠ ⎝ 2 ⎠ e( z ) . ⎟⎟ e( z ) = ⎝ u ( z ) = k P ⎜⎜1 + ω PI −1 −1 2 z −1⎠ z −1 ⎝ −1 (4.6) Przy doborze nastaw regulatora cyfrowego bardzo ważny jest odpowiedni dobór czasu próbkowania, tak aby błąd aproksymacji funkcji był mniejszy od 3%. W przeciwnym razie cyfrowy regulator PI nie zachowuje się jak jego ciągły odpowiednik. Dla metody prostokątów dobiera się tak czas próbkowania aby: ω PI TP ≤ 1 , 20 (4.7) natomiast dla metody trapezów ω PI TP ≤ 1 . 10 (4.8) 4. Podstawowe układy nadążnych modulatorów PWM 53 4.5. Jednofazowy modulator nadążny PWM z regulatorem PI Różnica e pomiędzy prądem zadanym iz i prądem wyjściowym iK jest podawana na regulator PI. Sygnał z regulatora jest porównywany z sygnałem modulującym modulacji PWM. Efektem porównania jest sygnał sterujący S o modulowanej szerokości impulsu. GENERATOR VSI iZ e PI L u R iK R iK UDC R Rys.4.10. Schemat symulacyjny jednofazowego modulatora PWM z regulatorem PI 4.6. Trójfazowy modulator nadążny PWM z regulatorem PI Modulacja nadążna w każdej z trzech faz przebiega niezależnie od pozostałych. Napięcie zasilania ulega identycznemu rozkładowi jak w podpunkcie 4.2, i jest rozpisane w tabeli 4.1 GENERATOR iZA eA PI uA VSI iZB eB PI uB SB SC eC PI R L R L R R UDC iZC L R SA R uC R R R Rys.4.11. Schemat symulacyjny trójfazowego modulatora PWM z regulatorem PI iKA iKB iKC 4. Podstawowe układy nadążnych modulatorów PWM 54 4.7. Trójfazowy modulator histerezowy nadążny z tablicą przełączeń Proces modulacji przebiega w układzie ortogonalnym α-β. Przejście ze współrzędnych fazowych do układu α-β odbywa się za pomocą transformaty Clarka określonej wzorem 3.39. α VSI iZA αβ iα* αx TABLICA β PRZEŁĄCZEŃ iKA iKB iKC iZB iZC ABC UDC i*β βx Z iβ ABC iα αβ Rys.4.12. Trójfazowy modulator nadążny z tablicą przełączeń Modulator histerezowy z tablicą przełączeń oprócz wartości uchybu prądu uwzględnia dodatkowo tendencję jego zmian. Do tego procesu wykorzystane są dwa równolegle połączone regulatory histerezowe o różnych szerokościach pętli histerezy. Gdy zostaje przekroczona zewnętrzna strefa histerezy, wystawiany jest jeden z dwóch wektorów zerowych napięcia. Jeżeli wartość bezwzględna uchybu rośnie załączany jest wektor niezerowy, natomiast gdy wartość bezwzględna błędu maleje załączany jest wektor zerowy. Wyjścia regulatorów histerezowych tworzą czterobitowy adres stanów wektorów napięcia falownika, które przedstawione są w tabeli 3.2. W zależności od stanu sygnału sprzężenia zwrotnego Z, którym objęty jest blok tablicy przełączeń, określany jest, który z wektorów zerowych powinien być załączany. Tabela.4.2. Rozkład wektorów napięcia. Numer wektora 0 1 2 3 4 5 6 7 Stan kluczy falownika 000 001 110 010 011 001 101 111 4. Podstawowe układy nadążnych modulatorów PWM 55 W zależności od stanów wyjść regulatorów histerezowych i sygnału Z określane jest który z wektorów powinien być załączany, oraz wystawiana jest nowa wartość sygnału Z. Poniższa tabela przedstawia strategię sterowania falownika: Tabela.4.3.Rozkład tablicy przełączeń l.p. αx α β βx Z 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 0 1 1 0 0 X X X X X X X X X X X X 0 1 0 1 0 1 0 1 Nr wektora 5 4 4 3 6 2 5 3 6 1 1 2 0 7 0 7 0 7 0 7 Z 0 1 1 0 1 1 0 0 1 0 0 1 0 1 0 1 0 1 0 1 5. Procesor sygnałowy 56 5. Procesor sygnałowy 57 5. Procesor sygnałowy 5.1. Wiadomości podstawowe dotyczące procesora sygnałowego ADSP 21061 Digital Signal Processor (DSP), czyli cyfrowy procesor sygnałowy, to po prostu nazwa procesora, wyspecjalizowanego w określonym zadaniu np. przetwarzaniu sygnałów akustycznych, wizyjnych, układach sterowania itp. Ogromna prędkość wykonywania rozkazów i wysoka jakością przetwarzania sygnałów przez współczesne procesory sygnałowe DSP pozwala na implementowanie oprogramowania i algorytmów działających w czasie rzeczywistym. Dzięki temu układy takie znajdują ogromne zastosowanie w wielu dziedzinach nauki takich jak telekomunikacja, medycyna, motoryzacja czy grafika komputerowa. Obecnie procesory DSP są prawie wszechobecne, nie tylko w wysoko wyspecjalizowanych urządzeniach i układach, ale także w urządzeniach elektronicznych codziennego użytku. Obecnie wiele znanych firm produkuje procesory sygnałowe. W mojej pracy dyplomowej przedstawię jeden z procesorów sygnałowych firmy Analog Devices. Druga generacja procesorów sygnałowych DSP firmy Analog Devices to procesory zmiennoprzecinkowe (ang. Floating-Point DSP). Tworzy ją rodzina ADSP-21000 [32,33]. Są to 32-bitowe, programowalne, jednoukładowe mikroprocesory z rozszerzoną architekturą typu Harvard, optymalizowaną dla cyfrowego przetwarzania sygnałów i innych aplikacji, wymagających bardzo szybkiego przetwarzania numerycznego. W skład tej rodziny wchodzą procesory dwóch typów: ADSP-21020 oraz ADSP-2106x. Procesory serii ADSP-2106x są znacznie lepiej wyposażone i oparte na rozszerzonej architekturze harwadzkiej zwanej Super Harvard Architecture Computer, a w skrócie SHARC. Procesory te pracują z częstotliwością zegarową równą 40 MHz. Długość cyklu maszynowego dla tej częstotliwości wynosi 25ns. Procesor dodatkowo zawiera w swojej strukturze pamięć dwa bloki pamięci SRAM umożliwiającą dwukrotny dostęp w jednym cyklu zegarowym (ang. Dual Access Memory). Zapis i odczyt pamięci możliwy jest przez układ bezpośredniego dostępu DMA (ang. Direct Memory Access). Urządzenie posiada kompletny interfejs pozwalający tworzenie systemów wieloprocesorowych. Dzięki temu udało się zwolnić procesor z tzw. operacji we/wy i jednocześnie zwiększyć ich szybkość. W pracy tej do realizacji algorytmów sterowania równoległymi procesorami aktywnymi wykorzystano procesor ADSP-21061. Procesor ten składa się z rdzenia procesora sygnałowego ADSP-21000, dwuportowej, wewnętrznej pamięci SRAM i sterownika I/O z magistralą I/O, co stanowi kompletny system w pojedynczym układzie scalonym. Rdzeń procesora posiada cztery szyny. Szyny adresowe pamięci programu (PMA) i pamięci danych (DMA), oraz szyny danych pamięci programu (PMD) i danych pamięci danych (DMD). Produkowany jest on w szybkiej, o niskim poborze mocy, technologii CMOS. Procesor ADSP-21061 posiada cykl rozkazowy trwający 25 ns, przy częstotliwości zegara 40 MHz. Zastosowano w procesorze pamięć SRAM o podwójnym dostępie. Procesor ADSP-21061 wyposażony jest w 1Mbit takiej pamięci, zorganizowanej jako dwa banki po 0.5 Mbit każdy. Pamięć ta jest programowo ustawiana jako pamięć danych i programu. Może być konfigurowana maksymalnie jako 32k słowa pamięci danych 32-bitowych, 64k słowa 16-bitowej pamięci danych, 16k słów 48-bitowej pamięci programu. Pamięć SRAM podzielona została sprzętowo na dwa bloki, pozwalając na jednoczesny dostęp do obu bloków jednocześnie. Dostęp do obu z tych bloków jest możliwy za pomocą magistrali pamięci programu i magistrali pamięci danych. Jednocześnie pamięć SRAM jest połączona z procesorem we/wy oddzielnymi magistralami IO. Dzięki rozdzielonym szynom i dwóm portom dostępu możliwe są dwa przesyły danych w jednym cyklu zegarowym. Jeden z rdzenia procesora i jeden z układu I/O. Pełny schemat blokowy procesorów z rodziny ADSP-2106x przedstawia rysunek 5.1. 5. Procesor sygnałowy 58 Blok 0 Timer Generator adresów DAG1 8x4x32 Generator adresów DAG2 8x4x32 Cache Rdzeń procesora rodziny ADSP-2106x Dwuportowa pamięć SRAM Adr Sekwencer programu Adres pamięci programu (PMA) Przełącznik magistrali Blok 1 32x48 bitów 48 IOD Adr 17 IOA Port zewnętrzny 24 Adres pamięci danych (DMA) 32 Dane pamięci programu (PMD) 48 Dane pamięci danych (DMD) Dane Dane Adr Dane Dane Adr Zewnętrzna magistrala adresowa 32 Adresy 48 Dane 32/40 Zewnętrzna magistrala danych Układ Przeliczający Układ DMA 4 6 Rejestr IOP Porty szeregowe 0 i 1 6 36 Port łączący Procesor we/wy Rys.5.1 Schemat blokowy procesora sygnałowego rodziny ADSP-2106x Procesor wyposażony jest w podręczną pamięć instrukcji Cache (ang. Instruction Cache), o pojemności 32x48bitów, dzięki której jest możliwe wykonywanie kilku instrukcji w pojedynczym cyklu rozkazowym. Pamięć ta jest przeznaczona do przechowywania kodów instrukcji wywołujących konflikt na magistrali PM. Są to instrukcje zawierające rozkazy transmisji danych pomiędzy rejestrami i pamięcią programu PM, które wymagają dodatkowego cyklu maszynowego do swojej realizacji. Pozwala więc na trzy wymiany danych na magistralach tj. pobrania instrukcji i dwóch danych w jednym cyklu W przypadku gdy program jest wykonywany sekwencyjnie w pętli to dodatkowy cykl jest potrzebny tylko podczas pierwszego wykonania pętli. W następnych krokach rozkaz jest pobierany z pamięci CACHE. W rejestrze kontrolnym MODE2 znajdują się dwie flagi sterujące pracą pamięci podręcznej. Ustawienie 4 bitu (CADIS) wyłącza ją, bit 19 (CAFRZ) powoduje zamrożenie jej zawartości. Struktura procesora wyposażona jest ponadto w układ czasowy umożliwia periodyczne generowanie przerwań. Procesor ADSP-21061 posiada dwa niezależne generatory adresowe DAG (ang. Data Address Generators) i sekwencer programu. Generator DAG1 służy do generacji 32-bitowego adresu magistrali adresowej pamięci danych DMA. Natomiast DAG2 generuje 24-bitowy adres w magistrali adresowej pamięci programu PMA. Oba układy wykonują swoje operacje niezależnie podczas jednego cyklu maszynowego. Każdy z nich jest wyposażony w sprzętowy bufor cyrkulacyjny (ang. Circular Data Buffers), pozwalający na adresowanie cyrkulacyjne. Generatory DAG automatycznie wspomagają adresowanie cyrkulacyjne, redukują ilość cykli, zwiększają wydajność oraz upraszczają implementację. Bufory te mogą zaczynać się i kończyć w dowolnej miejscu 32-bitowej przestrzeni adresowej pamięci. Sekwencer programu dostarcza adres następnej instrukcji, kontroluje wykonywanie pętli i ewentualnych instrukcji warunkowych. Dzięki wewnętrznemu licznikowi pętli i stosowi procesor może wykonywać pętle bez opóźnień. Nie jest konieczna instrukcja skoku przy dekrementacji i sprawdzeniu licznika. Każdy z układów generacji adresów posiada cztery typy rejestrów I, M, B, L gdzie: I0-15 – rejestry adresowania indeksowego, M0-15 – rejestry modyfikujące, B0-15 – rejestry bazowe dla adresowania cyrkulacyjnego, L0-15 – rejestry długości buforów dla adresowania cyrkulacyjnego. 5. Procesor sygnałowy 59 Każdy z tych rejestrów posiadają swoje alternatywne odpowiedniki, które są włączane bitami SRD1L, SRD1H, SRD2L, SRD2H w rejestrze systemowym procesora MODE1. Przynależność odpowiednich rejestrów do poszczególnych układów adresowych pokazuje rysunek 5.2. DAG1 (DATA MEMORY) I0 I0 I1 I0 M0 L0 B0 M1 L1 B1 I3 I0 I4 I0 M2 L2 B2 M3 L3 B3 I5 M4 L4 B4 I6 M5 L5 B5 I7 I8 M6 M7 L6 L7 B6 B7 MODE1 SRD1L SRD1H DAG2 (PROGRAM MEMORY) I9 M8 L8 I10 M9 L9 B8 B9 I11 I12 M10 M11 L10 L11 B10 B11 I13 M12 L12 B12 I14 M13 L13 B13 I15 M14 L14 B14 I16 M15 L15 B14 SRD2L SRD2H Rys.5.2 Rejestry układów generacji adresów DAG1, DAG2. Układ obliczeniowy procesora składa się z trzech, niezależne i równolegle pracujących jednostek obliczeniowych. Jednostki arytmetyczno-logicznej ALU (ang. Arithmeti-Logic Unit), układu mnożącego MAC (ang. Multipler), i układu przesuwającego (ang. Shifter). Te jednostki są zaprojektowane do równoległej pracy, tak aby zwiększyć maksymalnie prędkość obliczeń. Procesor ADSP-21061 dla instrukcji wielofunkcyjnej wykonuje równolegle operacje w układzie ALU i MAC. Procesor wykonuje operacje obliczeniowe stało i zmiennoprzecinkowe. Układ obliczeniowy wyposażony jest w pole 32, czterdziestobitowych rejestrów, złożone z dwóch zestawów po 16 każdy (16 głównych, 16 pomocniczych). Dla obliczeń zmiennoprzecinkowych używa się prefiksu „F” lub „f”. Do obliczeń na liczbach w formacie stałoprzecinkowym używa się prefiksu „R” lub „r”. Schemat układu obliczeniowego procesora sygnałowego ADSP-21061 przedstawia rysunek 5.3. 5. Procesor sygnałowy 60 Dane pamięci programu (PMD) 48 Dane pamięci danych (PMD) 40 R0 lub F0 R1 lub F1 R2 lub F2 40 R3 lub F3 R4 lub F4 R5 lub F5 40 R6 lib F6 R7 lub F7 40 40 40 R8 lub F8 R9 lub F9 Układ mnożący MAC R10 lub F10 Układ przesuwający Shifter Jednostka arytmetyczno-l ogiczna ALU R11 lub F11 40 MR2 MR1 R12 lub F12 MR0 R13 lub F13 40 R14 lub F14 40 40 R15 lub F15 Rys.5.3. Schemat układu obliczeniowego procesora sygnałowego ADSP-21061 Port wyjściowy umożliwia pracę wieloprocesorową. Za jego pomocą można podłączyć pamięć zewnętrzną lub układy peryferyjne. Zewnętrzna przestrzeń adresowa obejmująca 4G-słów i jest połączona w jednolitą przestrzeń adresową z pamięcią wewnętrzną. Zewnętrzna pamięć SRAM może mieć długość 16, 32, albo 48 bitów. Kontroler DMA automatycznie przetwarza dane zewnętrzne dla uzyskania odpowiedniej długości słowa: 48-bitowe słowo instrukcji lub 32-bitowe słowo danych. ADSP-21061 posiada we wnętrzu kontroler DMA, pozwalający na bezstratny transfer danych, bez niepożądanej ingerencji procesora. Sterownik DMA działa niezależnie i niewidocznie dla rdzenia procesora, operacje DMA umożliwiają równoczesne wykonywanie instrukcji programu przez rdzeń. Transfer DMA może odbywać się między wewnętrzną pamięcią procesora ADSP-21061 i zewnętrzną pamięcią, zewnętrznymi peryferiami, portami szeregowymi lub procesorem nadrzędnym. Jest dostępne 6 kanałów DMA. Cztery z nich są wykorzystywane przez porty szeregowe i dwa przez sterownik zewnętrznego portu (dla transferu z jednostką nadrzędną, innym procesorem ADSP-21061, pamięcią lub układem I/O). Przez kanał DMA można załadować program do pamięci wewnętrznej układu ADSP-21061. Procesor ADSP-21061 posiada dwa synchroniczne porty szeregowe. Umożliwiają pracę z pełną częstotliwością procesora, każdy może pracować z szybkością 40 Mbita/s. Umożliwiają niezależne nadawanie i odbiór danych, uzyskując w ten sposób większą elastyczność komunikacji szeregowej. Porty szeregowe mogą automatycznie przesyłać dane z i do pamięci wewnętrznej pamięci przez kanał DMA. Porty szeregowe umożliwiają pracę wielokanałową. 5. Procesor sygnałowy 61 5.2. Formaty zapisu liczb Stałoprzecinkowy format zapisu danych Rdzeń rodziny ADSP-21000 wykorzystuje do obliczeń 32-bitowy, stałoprzecinkowy format zapisu liczb całkowitych i ułamkowych ze znakiem i bez. Wynik obliczeń może być 32-, lub 64-bitowy, w zależności od wykonywanej operacji arytmetycznej. Przy wynikach 64-bitowychwystępują dodatkowe formy zapisu liczb. Jeżeli oba argumenty całkowite są brane ze znakiem to wynik operacji jest również ze znakiem. Wówczas cały wynik zostaje przesunięty w lewo: najmłodszy bit staje się bitem zerowym, natomiast bit znaku określa czynnik –262. Jeśli struktura danych jest ułamkowa wówczas wszystkie bity oprócz najstarszego zostają przesunięte w lewo. Najstarszy bit pozostaje bitem znaku. Bit znaku 31 30 29 -2 31 2 30 2 29 Bit znaku 31 30 29 b) -2 0 2 -1 2 -2 31 30 29 c) 2 31 2 30 2 29 31 30 29 -2 -1 2 -2 2 -3 63 62 61 2 63 2 62 2 61 63 62 61 -2 -1 2 -2 2 -3 Bit znaku 63 62 61 -2 63 2 62 2 61 Bit znaku 63 62 61 -2 62 2 61 2 60 Bit znaku 63 62 61 -2 0 2 -1 2 -2 a) d) e) f) g) h) i) j) Bit znaku 63 62 61 -2 0 2 -2 2 -3 2 1 0 22 21 20 2 1 0 ... 2 -29 2 -30 2 -31 2 1 0 ... 22 21 20 2 1 0 2 -30 2 -31 2 -32 ... ... 2 1 0 22 21 20 2 1 0 2 -62 2 -63 2 -64 2 1 0 22 21 20 2 1 0 21 20 2 -1 2 1 0 ... 2 -61 2 -62 2 -63 2 1 0 ... 2 -62 2 -63 2 -64 ... ... ... ... Rys.6.4. Stałoprzecinkowy format zapisu liczb: a) 32-bitowa liczba całkowita ze znakiem, b) 32-bitowa liczba całkowita bez znaku, c) 32-bitowa liczba ułamkowa ze znakiem, d) 32-bitowa liczba ułamkowa bez znaku e) 64bitowa liczba całkowita bez znaku, f) 64-bitowa liczba ułamkowa bez znaku, g) 64-bitowa liczba całkowita bez przesunięcia w lewo, h) 64-bitowa liczba całkowita z przesunięciem w lewo, i) 64-bitowa liczba ułamkowa bez przesunięcia w lewo, j) 64-bitowa liczba ułamkowa z przesunięciem w lewo 5. Procesor sygnałowy 62 Zmiennoprzecinkowe formaty zapisu liczb Zmiennoprzecinkowe reprezentacje dwójkowe pozwalają nam przezwyciężyć większość ograniczeń precyzji i zakresu dynamicznego, charakterystycznych dla stałoprzecinkowych reprezentacji dwójkowych, w szczególności w redukcji szkodliwych skutków przepełnienia. Reprezentacje zapisu zmiennoprzecinkowego dokonują podziału słowa danych na dwie części: mantysę (m) i wykładnik (e). W procesorze ADSP-21061 występują trzy formy zmiennoprzecinkowego zapisu liczb: 16-bitowy, 32-bitowy pojedynczej precyzji zgodny z normą IEEE, oraz rozszerzony 40-bitowyt. W najpopularniejszej, 32-bitowej reprezentacji zapisu IEEE wartość dziesiętna jest wyliczana ze wzoru: (5.1) y = ( −1) S (1.f 22−0 ) 2 e−127 . Wykładnik e jest liczbą w reprezentacji dwójkowej, ułamek jest liczbą dwójkową w zapisie znak-moduł z ukrytym bitem, który z założenia jest równy 20. Wszystkie formaty zmiennoprzecinkowego zapisu liczb przedstawia rysunek 5.5. Bit znaku 15 a) S Bit znaku 31 b) S 11 Ukryty bit 0 1.f10...f0 Wykładnik 30 23 Ukryty bit 22 e 7 ...e 0 Mantysa 0 1.f22...f0 Wykładnik 38 Mantysa 10 e 3...e 0 S Bit znaku 39 c) Wykładnik 14 31 e 7 ...e 0 Ukryty bit 30 Mantysa 0 1.f30 ...f0 Rys.5.5. Zmiennoprzecinkowy format zapisu liczb: a) 16-bitowy, b) 32-bitowy pojedynczej precyzji zgodny z formatem IEEE, c) 40-bitowy rozszerzony 5.3. Pisanie programów i ich optymalizacja Wyróżniamy sześć form wykonywania programu: - liniowe wykonywanie programu instrukcja po instrukcji (rysunek 5.6.a), - wykonywanie programu w pętli (rysunek 5.6.b), - wykonywanie skoku do innej części programu (rysunek 5.6.c), - skok do podprogramu (rysunek 5.6.d), - wykonanie przerwania (rysunek 5.6.e), - stan bezczynności (rysunek 5.6.f). Liniowe wykonywanie programu instrukcji jest stosowane przy mało rozbudowanych programach nie wymagających cyklicznych powtórzeń fragmentów programów. Do efektywnego wykonywania algorytmów iteracyjnych zastosowano liczniki pętli ze swoim własnym stosem, który pozwala na zagnieżdżanie się pętli do sześciu poziomów. Przykładowy program realizujący pętlę przedstawia poniższa sekwencja instrukcji: LCNTR=R0, DO nazwa_petli UNTIL CE; instrukcja_1; ... (możliwość zagnieżdżenia pętli ) ... nazwa_petli: instrukcja_k; 5. Procesor sygnałowy a) Adres b) 63 c) n Instrukcja DO UNTIL JUMP n+1 Instrukcja Instrukcja Instrukcja n+2 Instrukcja Instrukcja Instrukcja n+3 Instrukcja Instrukcja Instrukcja n+4 Instrukcja Instrukcja Instrukcja n+5 Instrukcja Instrukcja Instrukcja Przerwanie d) e) f) CALL Instrukcja IDLE Instrukcja Instrukcja Instrukcja Instrukcja Instrukcja Instrukcja Instrukcja Instrukcja Instrukcja Instrukcja RTS RTI Instrukcja Rys.5.6.Przykłady wykonywania programu: a) liniowe wykonywanie programu, b) pętle, c) skoki w dowolne miejsce programu, d) skoki do podprogramu, e) przerwania, d)stan bezczynności Skoki do dowolnego miejsca programu JUMP wykonywane są najczęściej przy instrukcjach warunkowych IF. Po wykonaniu instrukcji JUMP nie jest zapisywany na stosie adres powrotny. Oznacza to że instrukcje, które zostały pominięte nie będą wykonane w programie. Istnieją dodatkowo jeszcze dwa rodzaje skoku. JUMP(LA) oraz JUMP(CI). Jeżeli w wykonującej się pętli wystąpi instrukcja JUMP(LA) to instrukcja ta powoduje automatyczne przerwanie pętli. Jeżeli pętla zostanie przerwana to na stos zostanie zapisany rejestr PC oraz licznik pętli. Dane te są zapamiętywane dla zewnętrznych pętli jeżeli występowało zagnieżdżenie. Instrukcja ta nie może być użyta w trzech ostatnich instrukcjach przed wyjściem z pętli, gdyż potrzebuje czterech cykli maszynowych oby została wykonana. Jeżeli zostanie użyta w ostatnich trzech instrukcjach pętli, to do pamięci zostanie załadowana instrukcja rozkazu sprawdzająca warunek wyjścia z pętli nadrzędnej. Wówczas sekwencer programu zliczy kolejne zwiększenie się licznika pętli. To spowoduje nieprawidłową liczbę wykonanych pętli. Należy zwrócić szczególną uwagę na stosowanie tej instrukcji w pętlach, które mają mniej niż trzy instrukcje do wykonania, gdyż wystąpienie instrukcji nawet gdy pętla ma się jeszcze raz wykonać może spowodować wystąpienie błędu w programie. Normalnie procesor ADS-2106x ignoruje i nie zapamiętuje przerywania, kiedy program przerwania jest już wykonywany. Podczas przerwania, odpowiedni bit rejestru IRPTL jest ustawiony. Bit ten jest zerowany podczas każdego cyklu, wykonywania procedury przerwania, powstrzymując tym samym zapamiętanie kolejnych przerwań przychodzących w czasie przerwania. Instrukcja Jump(CI), pozwala na odwołanie przerwania kiedy to jest ono już wykonywane. To może być przydatne w systemach, które wymagają szybkiej odpowiedzi na przerwania i niskiego priorytetu przerwania. Instrukcja Jump(CI) powinna zostać umieszczona w programie przerwania. Jump (CI) oczyszcza stan bieżącego przerwania bez opuszczania programu przerwania, redukując programy przerwania do normalnego podprogramu. To pozwala na zapamiętanie nowego przerwania, które może się zdarzyć znów, w wyniku jakiegoś zdarzenia albo zadania w systemie. Jump(CI) redukuje program przerwania do normalnego podprogramu przez zerowanie odpowiedniego bitu w rejestrze przerwań (IRPTL) i wskaźniku maski przerwania (IMASKP) oraz zapamiętując stan stosu. Procesor wtedy zatrzymuje automatycznie czyszczenie bitu przerwania (w IRPTL) w każdym cyklu, pozwalając na to by przerywanie 5. Procesor sygnałowy 64 mogło zdarzyć się znów. Wracając z takiego podprogramu, należy użyć instrukcji RTS(LR), (w przypadku przerwań, które zdarzyły się podczas ostatnich dwóch instrukcji pętli). Przykładowy program wykorzystujący instrukcję Jump(CI) przedstawia poniższa sekwencja: instr1; {pozycja przerwania z programu głównego} JUMP(PC,3) (DB,CI); {czyszczenie statusu przerwania} instr3; RTS (LR); {użycie modyfikatora LR podczas powrotu z podprogramu} Innym rodzajem skoku jest instrukcja Call. Różni się on od instrukcji Jump tym że na stosie jest zapisywany adres powrotny. Powrót zapewnia instrukcja RTS. Instrukcję Call wykorzystuje się do wykonywania podprogramów. Jeżeli dana sekwencja instrukcji powtarza się kilka razy w programie to można ją zapisać w formie podprogramu, do którego odwołujemy się instrukcją Call. Zastosowanie takiego rozwiązania upraszcza program i czyni go bardziej przejrzystym. Podczas wykonywania instrukcji skoku Jump oraz Call jak i powrotu z podprogramu RTS, można wykorzystać instrukcję opóźnienia DB (Delayed Branch). Jeśli gałąź jest bez opóźnienia, dwie instrukcje po rozkazie skoku lub powrotu, które są ładowane do pamięci i dekodowane, nie są wykonywane. Powoduje to niepotrzebną stratę czasu. Przykłady takiego przypadku pokazuje rysunek 6.7.a) i 6.7.b). a) Wykonywana instrukcja n nop Dekodowana instrukcja n + 1 → nop n + 2 → nop j Ładowana instrukcja n + 2 → nop nop j j+1 j j+1 j+2 n nop b) Wykonywana instrukcja Dekodowana instrukcja n + 1 → nop n + 2 → nop r Ładowana instrukcja n + 2 → nop nop r r r+1 r+1 r+2 Rys.6.7. Instrukcje bez opóźnienia a) instrukcje skoków Jump oraz Call b) instrukcje powrotu z podprogramu RTS Gdzie: n-wykonywana instrukcja, j-instrukcja Jump albo Call, r-instrukcja RTS Zastosowanie instrukcji z opóźnieniem (Jump(DB), Call(DB), RTS(DB)), powoduje optymalizację cyklu pracy programu. Instrukcje te umieszczane są dwa rozkazy wcześniej. Przykłady takiego przypadku pokazuje rysunek 6.8.a) i 6.8.b). a) Wykonywana instrukcja Dekodowana instrukcja Ładowana instrukcja b) Wykonywana instrukcja Dekodowana instrukcja Ładowana instrukcja n n+1 n +1 n+2 j n+2 n n +1 n+1 n+2 n+2 r n+2 j j+1 j j+1 j+2 n+2 r r+1 r r+1 r+2 Rys.5.8. Instrukcje z opóźnieniem a) instrukcje skoków Jump(DB) oraz Call(DB) b) instrukcje powrotu z podprogramu RTS(DB) 5. Procesor sygnałowy 65 Przerwania są spowodowane przez szereg warunków, zarówno wewnętrzny i zewnętrzny dla procesora. Przerwij wymusza wywołanie podprogramu dla pierwotnie zdefiniowanego adresu wektora przerwań. Procesory serii ADSP-2106x posiadają przerwania zewnętrzne, uszeregowane według priorytetu, o trzech rodzajach wywołania: indywidualnie maskowanie przerwania, wywołanie zboczem albo poziomem sygnału. Te przerwania są spowodowane przez urządzenie peryferyjne przychodzące na jedno z trzech wejść (IRQ2-0). Wewnętrznymi wygenerowanymi przerwania są arytmetyczne wyjątki, przepełnienie stosu i przepełnienie bufora cyrkulacyjnego danych. Przerwanie jest uważane za ważne, jeśli nie jest zamaskowane, jeśli przerwania globalne są dostępne (jeśli bit 12 w MODE1 jest ustawiony), i jeśli przerwania o wyższym priorytecie nie jest ustawione. Powrót z programu przerwania do programu głównego odbywa się po instrukcji RTI.W rejestrze IRPTL są przypisane priorytety przerwań, od 0 (najwyższego) do 31 (najniższego). Priorytet przerwania określa, które przerwanie jest wykonywane kiedy więcej niż jedno zdarza się w tym samym cyklu maszynowym. To też określa, które przerwania są zagnieżdżone, kiedy zagnieżdżanie jest umożliwione. Idle oraz Idle16 są specjalnymi instrukcjami do zatrzymania rdzenia procesora w niskim stanie mocy od zewnętrzny przerywać (IRQ2-0), przerwań czasowych, przerwań DMA, albo wektora przerwań VIRPT. Optymalizacja pisania programów Zastosowanie w procesorach rodziny ADSP-2106x rozbudowanej struktury sprzętowej umożliwia wykonanie wielu operacji w jednym cyklu maszynowym. Możliwe są operacje: - dodawania i odejmowania (dla tych samych rejestrów wejściowych) - mnożenie i operacje ALU - mnożenie dodawanie i odejmowanie (dla tych samych rejestrów wejściowych) Dla wykonywania takich operacji jest ograniczona swoboda w wyborze argumentów wejściowych. I tak dla układu mnożącego rejestrami wejściowymi X1 są rejestry F0÷F3, (R0÷R3), natomiast rejestrami X2 są rejestry F4÷F7 (R4÷R7). Wynik operacji układu mnożącego może być przesyłany do dowolnego rejestru. Dla operacji jednostki ALU argumentami X1 są rejestry F8÷F11 (R8÷R11), argumentami X2 są rejestry F12÷F15 (R12÷R15). Wynik również może zostać zapisany do dowolnego z rejestrów. Przykładowo najbardziej złożona instrukcja wygląda następująco: F0=F1*F4, F5=F8+F12, F6=F8-F12, F3=DM(I0,M0), F9=PM(I8,M8); Cała ta instrukcja wykonywana jest w jednym cyklu maszynowym I wykonuje ona następujące operacje: -mnożenie zmiennoprzecinkowe -dodawanie i odejmowanie zmiennoprzecinkowe tych samych rejestrów wejściowych F8 i F12, -zapis do rejestru F3 zawartości komórki pamięci danych o adresie I0 -zapis do rejestru F9 zawartości komórki pamięci programu o adresie I8 -modyfikacja wskaźnika adresu pamięci danych I0=I0+M0 i pamięci programu I8=I8+M8. 6. Badania symulacyjne 66 6. Badania symulacyjne 67 6. Badania symulacyjne 6.1 Badanie symulacyjne trójfazowego histerezowego modulatora nadążnego Układ symulacyjny na rysunku 4.3. trójfazowego modulatora nadążnego a) Amplituda [A] 40 prąd zadany prąd wyj 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 Amplituda [A] 40 b) 0.04 0 -20 0.005 0.01 0.015 0.02 0.025 0.03 40 Amplituda [A] 0.035 prąd zadany prąd wyj 20 -40 0 c) przedstawiony 0.035 0.04 prąd zadany prąd wyj 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 Czas [s] Rys.6.1.Przebiegi prądów zadanych i po modulacji nadążnej: a) faza A, b) faza B, c) faza C a) Amplituda [A] 2 1 0 -1 -2 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.005 0.01 0.015 b) 0.02 0.025 0.03 0.035 0.04 b) Amplituda [A] 2 1 0 -1 -2 0 c) Amplituda [A] 2 1 0 -1 -2 0 Czas [s] Rys.6.2.Przebiegi uchybów w modulacji nadążnej: a) faza A, b) faza B, c) faza C jest 6. Badania symulacyjne 20 10 30 20 Amplituda [A] c) e) 10 0 0 Widmo w skali decybelowej -20 -40 f) 20 10 1000 2000 3000 4000 5000 1000 2000 3000 4000 5000 0 -20 -40 -60 0 1000 2000 3000 4000 5000 30 0 0 0 -60 0 1000 2000 3000 4000 5000 Amplituda [dB] Amplituda [A] 0 0 b) d) Amplituda [dB] 30 Amplituda [dB] a) Amplituda [A] Widmo w skali liniowej 68 1000 2000 3000 4000 5000 0 -20 -40 -60 0 1000 2000 3000 4000 5000 Częstotliwość [Hz] Częstotliwość [Hz] Rys.6.3. Widma prądów po modulatorze nadążnym w skali liniowej a) faza A, b) faza B, c) faza C i w skali decybelowej d) faza A, e) faza B, f) faza C Tabela.6.1. Parametry prądu sieci pierwszej fazy po modulatorze. Parametry ISK [A] 18,9273 IŚR [A] 21,0358 Współ. kształtu 1,1114 THD [%] 2,0127 SFDR [dB] -45,5439 SINAD [dB] -33,9298 Współ. nieliniowości 0,02015 Współ. niesinusoidalności. 0,99936 Tabela.6.2.Parametry symulacji. Parametry fP [Hz] N -liczba próbek na okres H –szerokość histerezy 12800 256 1 UDC [V] 400 US [V] 230 fS [Hz] 50 R- współ. nadpróbkowania 6. Badania symulacyjne 69 6.2. Badanie symulacyjne trójfazowego modulatora nadążnego PWM z regulatorem PI Układ symulacyjny trójfazowego modulatora nadążnego PWM z regulatorem PI przedstawiony jest na rysunku 4.11. a) Amplituda[A] 40 Sygnał wyj Syganł zadany 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 b) Amplituda[A] 40 Sygnał wyj Syganł zadany 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 c) Amplituda[A] 40 0.035 0.04 Sygnał wyj Syganł zadany 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 Czas [s] Rys. 6.4. Przebiegi prądów zadanych i po modulacji nadążnej, a) faza A, b) faza B, c) faza C a) Amplituda 1 sygnał modulujący sygnał błędu 0.5 0 -0.5 -1 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 b) Amplituda 1 sygnał modulujący sygnał błędu 0.5 0 -0.5 -1 0 0.005 0.01 0.015 0.02 0.025 0.03 c) Amplituda 1 0.035 0.04 sygnał modulujący sygnał błędu 0.5 0 -0.5 -1 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 Czas [s] Rys. 6.5. Przebiegi uchybów i sygnału modulującego, a) faza A, b) faza B, c) faza C 6. Badania symulacyjne 0 30 20 d) 10 0 0 2000 4000 6000 8000 Amplituda [dB] a) Amplituda [A] Widmo w skali liniowej Widmo w skali decybelowej -20 -40 -60 -80 0 10000 70 2000 4000 6000 8000 10000 2000 4000 6000 8000 10000 2000 4000 6000 8000 10000 20 e) 10 0 0 2000 4000 6000 8000 Amplituda [dB] b) Amplituda [A] 0 30 -20 -40 -60 -80 0 10000 20 f) 10 0 0 2000 4000 6000 8000 Amplituda [dB] c) Amplituda [A] 0 30 10000 -20 -40 -60 -80 0 Częstotliwość [Hz] Częstotliwość [Hz] Rys.6.6. Widma prądów po modulatorze nadążnym w skali liniowej: a) faza A, b) faza B, c) faza C i w skali decybelowej: d) faza A, e) faza B, f) faza C Tabela.6.3. Parametry prądu sieci pierwszej fazy po modulatorze Parametry ISK [A] IŚR [A] Współ. kształtu THD [%] SFDR [dB] SINAD [dB] Współ. nieliniowości Współ. niesinusoidalności. 18,7981 20,9062 1,1121 8,0408 -22,0373 -21,9224 0,08014 0,99675 Tabela.6.4.Parametry symulacji Parametry fP [Hz] N -liczba próbek na okres UDC [V] US [V] fS [Hz] Ti -czas całkowania [s] k –współ. wzmocnienia fm –f modulująca [Hz] 12800 256 400 230 50 0.0186 1,8 8000 6. Badania symulacyjne 71 6.3. Badanie symulacyjne trójfazowego modulatora nadążnego z tablicą przełączeń Układ symulacyjny trójfazowego modulatora nadążnego z tablicą przełączeń przedstawiony jest na rysunku 4.12. a) iα* [A] 50 0 -50 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0 0.005 0.01 0.015 0.02 Czas [s] 0.025 0.03 0.035 0.04 b) iβ* [A] 50 0 -50 c) iα [A] 50 0 -50 d) iβ [A] 50 0 -50 Rys.6.7. Prądy a) iα*, b) iβ*, c) iα, d) iβ a) Amplituda [A] 40 sygnał zadany sygnał wyj 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 b) Amplituda [A] 40 sygnał zadany sygnał wyj 20 0 -20 -40 0 0.005 0.01 0.015 0.02 0.025 0.03 c) Amplituda [A] 40 0.035 0.04 sygnał zadany sygnał wyj 20 0 -20 -40 0 0.005 0.01 0.015 0.02 Czas [s] 0.025 0.03 0.035 0.04 Rys. 6.8.Przebiegi prądów zadanych i po modulacji nadążnej, a) faza A, b) faza B, c) faza C 6. Badania symulacyjne Widmo w skali liniowej 20 d) 10 0 0 1000 2000 3000 4000 -20 -40 -60 5000 20 e) 10 0 0 1000 2000 3000 4000 3000 4000 5000 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 Częstotliwość [Hz] 5000 0 f) 10 0 1000 2000 3000 4000 Czestotliwość [Hz] 5000 Amplituda [dB] Amplituda [A] 2000 -40 -60 5000 20 0 1000 -20 30 c) 0 0 Amplituda [dB] Amplituda [A] 30 b) Widmo w skali decybelowej 0 Amplituda [dB] a) Amplituda [A] 30 72 -20 -40 -60 Rys.6.9. Widma prądów po modulatorze nadążnym z tablicą przełączeń w skali liniowej: a) faza A, b) faza B, c) faza C, i w skali decybelowej: d) faza A, e) faza B, f) faza C Tabela.6.5. Parametry prądu sieci pierwszej fazy po modulatorze Parametry ISK [A] IŚR [A] Współ. kształtu THD [%] SFDR [dB] SINAD [dB] Współ. nieliniowości Współ. niesinusoidalności. 19,3431 21,5422 1,1137 4,6367 -38,2328 -36,6851 0,04631 0,99893 Tabela.6.6.Parametry symulacji. Parametry fP [Hz] N -liczba próbek na okres UDC [V] US [V] fS [Hz] h1 - szerokość histerezy 1 h2 - szerokość histerezy 2 12800 256 400 230 50 0.01 0.05 6. Badania symulacyjne 73 6.4. Symulacja układu nadążnego kształtowania prądu kompensacyjnego W celu uzyskania w symulacjach komputerowych prądów kompensujących zbliżonych do rzeczywistych zastosowano proces nadpróbkowania, przy wyznaczaniu odpowiedzi sygnałów z falownika napięcia na dławikach kompensujących. Nadpróbkowanie polega na powtórzeniu tej samej próbki R razy. Wówczas częstotliwość próbkowania wzrasta z fp do Rfp. Po wyznaczeniu odpowiedzi sygnały zostają poddane procesowi decymacji. Decymacja polega na zmianie częstotliwości próbkowania sygnału poprzez wyrzucanie danej ilości próbek i pozostawienie jednej. Stopień decymacji jest również równy R. W taki sposób uzyskujemy ponownie częstotliwość próbkowania równą fp. iK1 iK2 iK3 fp decymator R R Lk3 R Lk1 Lk2 Rfp Interpolator R R R fp iC1 MODULATOR NADĄŻNY iC2 iC3 Rys. 6.10. Układ do symulacji nadążnego kształtowania prądu Schemat taki stosowany będzie we wszystkich układach symulacyjnych równoległych filtrów aktywnych zamieszczonych w pracy. 6. Badania symulacyjne 74 6.5. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na identyfikacji pierwszej harmonicznej Algorytm ten jest wykorzystywany do kompensacji wyższych harmonicznych prądu obciążenia. Do identyfikacji harmonicznej podstawowej użyto cyfrowego filtru Butterwortha drugiego rzędu, zaprojektowanego na częstotliwość 100 Hz. Charakterystykę amplitudową filtru przedstawia rysunek 4.11, a transmitancja cyfrowa filtru wyznaczona w programie Matlab wynosi: 0.000582 z - 2 + 0.001164 z -1 + 0.000582 H(z) = (6.1) 0.93295 z - 2 -1.93062 z -1 + 1 Transmitancja cyfrowa przesuwnika fazy została określona jako: H(z) = -0.99031430666482 z -1 + 1 z −1-0.99031430666482 e1 iL1 iO1 e2 iL2 iO2 e3 iL3 iO3 (6.2) ODBIORNIK NIELINIOWY iK1 iK2 iK3 Lk3 Lk2 Lk1 iC1 MODULATOR NADĄŻNY iC2 iC3 i1h1 i1h2 i1h3 PRZESÓWNIK FAZOWY PRZESÓWNIK FAZOWY PRZESÓWNIK FAZOWY i1h1' i1h2' i1h3' FILTR DP FILTR DP FILTR DP Rys.6.11. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym na identyfikacji podstawowej harmonicznej 6. Badania symulacyjne 75 5 0 -5 -10 Amplituda [dB] -15 -20 -25 -30 -35 -40 -45 -50 0 10 1 2 10 3 10 Częstotliwość [Hz] 4 10 10 40 200 20 0 0 b) U2 [V] -400 0 -20 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 400 40 200 20 0 0 -200 U3 [V] -400 0 c) -40 0.1 -20 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 -40 0.1 400 40 200 20 0 0 -200 -400 0 -20 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 iO2 [A] -200 iO1 [A] 400 iO3 [A] a) U1 [V] Rys.6.12. Charakterystyka fazowa filtru dolnoprzepustowego -40 0.1 Czas [s] Rys. 6.13. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania a) iO1, U1, b) iO2, U2 c) iO3, U3 a) Amplituda [A] 6. Badania symulacyjne 0 -20 Amplituda [A] Amplituda [A] 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 i02 i1h2' i1h2 20 0 -20 0 c) i01 i1h1' i1h1 20 0 b) 76 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 i03 i1h3' i1h3 20 0 -20 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 Czas [s] Rys.6.14. Przebiegi czasowe prądów obciążenia, prądów po filtracji dolnoprzepustowej oraz prądów po przesuwniku fazowym: a) iO1, i1h1’, i1h1 b) iO2, i1h2’, i1h2 c) iO3, i1h3’, i1h3 40 a) iK1 [A] 20 0 -20 -40 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 40 b) iK2 [A] 20 0 -20 -40 0 40 c) iK3 [A] 20 0 -20 -40 0 Czas [s] Rys.6.15. Prądy kompensujące: a) iK1, b) iK2, c) iK3 6. Badania symulacyjne 77 40 a) iS1 [A] 20 0 -20 -40 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 Czas [s] 0.07 0.08 0.09 0.1 40 b) iS2 [A] 20 0 -20 -40 0 40 c) iS3 [A] 20 0 -20 -40 0 Rys.6.16. Prądy sieci po kompensacji a) iS1, b) iS2, c) iS3 20 10 20 e) 10 0 30 f) 10 0 0 1000 2000 3000 4000 5000 Częstotliwość [Hz] 20 10 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 30 20 10 0 1000 2000 3000 4000 5000 20 30 0 1000 2000 3000 4000 5000 Amplituda [A] Amplituda [A] Amplituda [A] 0 30 0 c) d) Amplituda [A] 30 0 b) Widmo prądów sieci po kompensacji Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 30 20 10 0 Częstotliwość [Hz] Rys.6.17. Widma prądów przed filtracją: a) faza A, b), faza B, c) faza C i po filtracji aktywnej: d) faza A, e) faza B, f) faza C 6. Badania symulacyjne 78 Tabela.6.7. Parametry prądu sieci pierwszej fazy przed i po filtracji Przed Filtracją Po filtracji ISK [A] 19,922 20,8064 IŚR [A] 24,447 23,0751 Współ. kształtu 1,2271 1,109 THD [%] 31,222 15,4225 SFDR [dB] -13,853 -27,8161 SINAD [dB] -10,515 -13,3567 Współ. nieliniowości 0,2981 0,15211 Współ. niesinusoidalności. 0,9545 0,9863 Parametry Tabela.6.8.Parametry symulacji Parametry fP [Hz] 12800 N -liczba próbek na okres 256 H –szerokość histerezy 0,5 UDC [V] 400 R 4 fS [Hz] 50 Parametry przedstawione w tabeli 6.8 dotyczą parametrów wszystkich symulacji układów sterowania APF umieszczonych w pracy. 6. Badania symulacyjne 79 6.6. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na teorii mocy chwilowych Algorytm ten jest wykorzystywany do kompensacji wyższych harmonicznych prądu obciążenia, jak również kompensacji mocy biernej. Do filtracji tętnień mocy czynnej użyto cyfrowego filtru Butterwortha drugiego rzędu, zaprojektowanego na częstotliwość 15 Hz. Transmitancja cyfrowa filtru wyznaczona za pomocą programu Matlab wynosi: 10 - 5 (0.33796 z - 2 + 0.67593z -1 + 0.33796 ) H (z ) = 0.9948 z - 2 -1.99479 z -1 + 1 (6.3) Symulacja pokazuje przypadek kompensacji zarówno wyższych harmonicznych jak również mocy biernej. e1 iL1 iO1 e2 iL2 iO2 e3 iL3 iO3 ODBIORNIK u1 NIELINIOWY u2 iK1 u3 iK2 iK3 Lk3 Lk2 Lk1 iC1 αβ iCα pq p∗ p αβ FDP iC2 iα iCβ NADĄŻNY iC3 ABC Vβ p MODULATOR Vα ABC αβ q = q∗ pq iβ αβ Rys.6.18. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym na teorii mocy chwilowych 400 40 200 20 0 -200 -400 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 40 200 20 0 0 -200 -400 0 -20 0.02 0.04 0.06 0.08 0.1 0.12 0.14 -40 0.16 400 40 200 20 U3 [V] c) -40 0.16 400 U2 [V] b) -20 0 0 -200 -400 0 -20 0.02 0.04 0.06 0.08 0.1 0.12 0.14 iO2 [A] 0 iO3 [A] U1 [V] a) 80 iO1 [A] 6. Badania symulacyjne -40 0.16 Czas [s] Rys. 6.19. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania: a) iO1, U1, b) iO2, U2 c) iO3, U3 300 Prąd iα Napięcie Uα 200 a) Amplituda 100 0 -100 -200 -300 0 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 300 0.14 0.16 Prąd iβ Napięcie Uβ 200 b) Amplituda 100 0 -100 -200 -300 0 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 Rys.6.20. Napięcia i prądy w układzie α-β: a) Uα , iα , b) Uβ, iβ 0.16 6. Badania symulacyjne 81 15000 Moc p Moc p* a) Amplituda 10000 5000 0 -5000 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 Czas [s] 5000 Amplituda 0 -5000 -10000 0 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 0.16 Rys.6.21. Moce chwilowe: a) p, p*, b) q a) icα [A] 50 0 -50 0 0.02 0.04 0.06 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 0.16 0.1 0.12 0.14 0.16 50 b) icβ [A] b) Moc q 0 -50 0 0.08 Czas [s] Rys.6.22. Prądy kompensujące w układzie α-β a) iCα , b) iCβ 6. Badania symulacyjne 82 a) iK1 [A] 40 20 0 -20 -40 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 b) iK2 [A] 40 20 0 -20 -40 c) iK3 [A] 40 20 0 -20 -40 Czas [s] 40 100 20 0 0 -100 -20 -200 -40 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 200 40 100 20 0 0 -100 -20 -200 -40 U3 [V] 0 c) iS2 [AA] b) U2 [V] 0 iS1 [A] 200 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 200 40 100 20 0 0 -100 -20 -200 -40 0 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 0.16 Rys.6.24. Prądy sieci po kompensacji oraz napięcia fazowe: a) iS1, U1, b) iS2, U2 c) iS3, U3 iS3 [A] a) U1 [V] Rys.6.23. Prądy kompensujące: a) iK1, b) iK2, c) iK3 6. Badania symulacyjne 20 10 20 e) 10 0 20 f) 10 0 20 10 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 30 20 10 0 1000 2000 3000 4000 5000 30 0 30 0 1000 2000 3000 4000 5000 Amplituda [A] Amplituda [A] Amplituda [A] 0 30 0 c) d) Amplituda [A] 30 0 b) Widmo prądów sieci po kompensacji Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 83 30 20 10 0 Częstotliwość [Hz] Częstotliwość [Hz] Rys.6.25. Widma prądów przed filtracją: a) faza A, b), faza B, c) faza C i po filtracji aktywnej: d) faza A, e) faza B, f) faza C Tabela.6.9. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 19,922 IŚR [A] 24,447 23,1998 Współ. kształtu 1,2271 1,1124 THD [%] 31,222 14,3392 SFDR [dB] -13,853 -29,2535 SINAD [dB] -10,515 -16,9757 Współ. nieliniowości 0,2981 0,1416 Współ. niesinusoidalności. 0,9545 0,9878 Parametry Po filtracji 20,8551 6. Badania symulacyjne 84 6.7. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na modyfikacji teorii mocy chwilowych Algorytm ten w przeciwieństwie do pokazanego w punkcie 6.5, jest wykorzystywany tylko do kompensacji wyższych harmonicznych prądu obciążenia. Do filtracji pulsacji składowych chwilowych prądów iOx, iOy. użyto cyfrowego filtru dolnoprzepustowego, drugiego rzędu o częstotliwości granicznej 10 Hz. Transmitancja cyfrowa takiego filtru wyznaczonego w programie Matlab wynosi: H (z ) = 10 - 6 (0.376169 z - 2 + 0.752338 z -1 + 0.37617 ) 0.998266 z - 2 -1.99826 z -1 + 1 eL1 iL1 iO1 eL2 iL2 iO2 eL3 iL3 (6.4) ODBIORNIK NIELINIOWY iO3 iC1 iC2 iC3 Lk3 Lk2 Lk1 PLL UDC ϕ MODULATOR NADĄŻNY + + - - + - iC1 + - + + iC 2 iC 3 - - U DC ε + αβ iCα iCβ UVW e jϕ αβ UVW ICP ICq IP i0 x FDP i0 y i0 β i0α e jϕ * U DC Rys.6.26. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym na modyfikacji teorii mocy chwilowych 400 40 200 20 0 -200 -400 0 0.02 0.04 0.06 0.08 0.1 0.12 40 200 20 0 0 -200 -400 0 -20 0.02 0.04 0.06 0.08 0.1 0.12 -40 0.14 400 40 200 20 U3 [V] c) -40 0.14 400 U2 [V] b) -20 0 0 -200 -400 0 -20 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 iO2 [A] 0 iO3 [A] U1 [V] a) 85 iO1 [A] 6. Badania symulacyjne -40 0.14 b) 40 20 0 -20 -40 0 50 i0β [A] a) i0α [A] Rys. 6.27. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania: a) iO1, U1, b) iO2, U2, c) iO3, U3 i0x [A] 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 0 -20 0 -36 i0y [A] d) 0.04 0 -50 0 20 c) 0.02 -38 -40 0 Rys.6.28. Prądy: a) i0α ,, b) i0β, c) i0x, d) i0y 6. Badania symulacyjne 86 a) Icp [A] 0 -0.5 -1 0 0 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 -20 Icq [A] b) 0.02 -40 c) icα [A] -60 0 50 0 d) icβ [A] -50 0 50 0 -50 0 Rys.6.29. Prądy: a) ICp, b) ICq, c) iCα d) iCβ a) iC1 [A] 50 0 -50 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 b) iC2 [A] 50 0 -50 0 c) iC3 [A] 50 0 -50 0 Czas [s] Rys.6.30. Prądy: a) iC1, b) iC2, c) iC3 6. Badania symulacyjne 87 a) iK1 [A] 40 20 0 -20 -40 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 b) iK2 [A] 40 20 0 -20 -40 0 c) iK3 [A] 40 20 0 -20 -40 0 Czas [s] Rys.6.31. Prądy kompensujące: a) iK1, b) iK2, c) iK3 a) iS1 [A] 50 0 -50 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 b) iS2 [A] 50 0 -50 0 c) iS3 [A] 50 0 -50 0 Rys.6.32. Prądy sieci po kompensacji: a) iS1, b) iS2, c) iS3 6. Badania symulacyjne 20 10 Amplituda [A] e) 10 f) 20 10 1000 2000 3000 4000 5000 Częstotliwość [Hz] 20 10 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 30 0 0 Amplituda [A] Amplituda [A] 20 30 0 0 1000 2000 3000 4000 5000 30 0 0 c) d) Amplituda [A] 30 0 0 b) Widmo prądów sieci po kompensacji Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 88 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 Częstotliwość [Hz] Rys.6.33. Widma prądów sieci przed filtracją: a) faza A, b), faza B, c) faza C i po filtracji aktywnej: d) faza A, e) faza B, f) faza C Tabela.6.10. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 19,9219 IŚR [A] 24,447 23,60705 Współ. kształtu 1,2271 1,1113 THD [%] 31,2218 11,1643 SFDR [dB] -13,8534 -32,2142 SINAD [dB] -10,5148 -19,1246 Współ. nieliniowości 0,29803 0,1106 Współ. niesinusoidalności. 0,95456 0,99069 Parametry Po filtracji 22,1998 6. Badania symulacyjne 89 6.8. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na teorii mocy chwilowych p-q-r Algorytm ten jest wykorzystywany do kompensacji wyższych harmonicznych prądu obciążenia, oraz symetryzacji obciążenia w układach trójfazowych czteroprzewodowych. Do filtracji pulsacji składowych chwilowych mocy p, qq oraz qr. użyto cyfrowego filtru górnoprzepustowego, drugiego rzędu o częstotliwości granicznej 15 Hz. Transmitancja cyfrowa takiego filtru wyznaczona za pomocą programu Matlab jest określona następująco: 0.9974 z - 2 − 1.9948 z -1 + 0.9974 H(z) = -1.99479 z - 2 + 0.9948 z -1 + 1 (6.5) Rys.6.34. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym na teorii mocy p-q-r Rys. 6.35. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania a) iO1, U1, b) iO2, U2 c) iO3, U3, d) in 6. Badania symulacyjne 400 20 200 0 0 -20 -40 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 -400 0.14 400 20 200 0 0 -20 -40 eβ [V] 40 iβ [A] b) eα [V] 40 iα [A] a) 90 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 -400 0.14 2 2 c) 0 0 -1 -2 0 0.02 0.04 0.06 Czas [s] 0.08 0.1 0.12 -2 0.14 Rys.6.36. Napięcia i prądy w układzie α-β: a) eα , iα , b) eβ, iβ c) i0, e0 10000 5000 b) qq [VAR] 0 0 200 qr [VAR] c) 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0 -200 -400 0x 104 1.2 d) 0.02 0 -200 0 200 s [VA] a) p [W] 15000 1.15 1.1 0 Czas [s] Rys.6.37. Moce chwilowe: a) p, b) qq, c) qr, d) s e0 [V] i0 [A] 1 6. Badania symulacyjne 91 a) iK1 [A] 20 0 -20 0 0.02 0.04 0.06 iK2 [A] 0.1 0.12 0.14 a) 20 b) 0.08 0 -20 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 c) iK3 [A] 20 0 -20 0 Czas [s] Rys.6.38. Prądy kompensujące: a) iK1, b) iK2, c) iK3 a) iS1 [A] 50 0 -50 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.02 0.04 0.06 0.08 0.1 0.12 0.14 b) iS2 [A] 50 0 -50 0 c) iS3 [A] 50 0 -50 0 Czas [s] Rys.6.39. Prądy sieci po kompensacji: a) iS1, b) iS2, c) iS3 6. Badania symulacyjne 20 10 1000 2000 3000 4000 20 e) 10 0 1000 2000 3000 4000 30 f) 10 0 0 1000 2000 3000 4000 20 10 5000 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 0 1000 2000 3000 4000 5000 30 20 10 0 5000 20 30 0 5000 Amplituda [A] Amplituda [A] Amplituda [A] 0 30 0 c) d) Amplituda [A] 30 0 b) Widmo prądów sieci po kompensacji Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 92 30 20 10 0 Częstotliwość [Hz] Częstotliwość [Hz] Rys.6.40. Widma prądów sieci przed filtracją: a) faza A, b) faza B, c) faza C i po filtracji aktywnej: d) faza A, e) faza B, f) faza C Tabela.6.11. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 19,9219 IŚR [A] 24,447 23,7742 Współ. kształtu 1,2271 1,1245 THD [%] 31,2218 21,7853 SFDR [dB] -13,8534 -22,8249 SINAD [dB] -10,5148 -11,69 Współ. nieliniowości 0,29803 0,26032 Współ. niesinusoidalności. 0,95456 0,96542 Parametry Po filtracji 20,252 6. Badania symulacyjne 93 6.9. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na filtracji typu sliding DFT Algorytm ten jest wykorzystywany do kompensacji wyższych harmonicznych prądu, kompensacji mocy biernej, jak również symetryzacji obciążenia. W celu symetryzacji obciążenia wyliczana jest wartość średnia modułów podstawowej harmonicznej z każdej z trzech faz (wzór 7.6). W celu zapewnienia kompensacji mocy biernej wartość średnią należy zsynchronizować z odpowiednimi napięciami fazowymi. Tak uzyskany sygnał odejmujemy od prądu obciążenia i otrzymujemy prądy kompensujące. Wyznaczone w powyższy sposób sygnały kompensujące wykorzystane są jako prądy zadane w regulacji nadążnej. Prądy kompensujące dla każdej z faz zasilania przedstawiają poniższe zależności: I m11 + I m12 + I m13 3 iC1 (t ) = i01 (t ) − iśr (t ) sin (ωt + ϕ1 ) iśr = (6.6) iC 2 (t ) = i02 (t ) − iśr (t ) sin (ωt + ϕ 2 ) (6.7) iC 3 (t ) = i03 (t ) − iśr (t ) sin (ωt + ϕ 3 ) e1 iL1 e2 iL2 e3 iL3 iO1 u1 NIELINIOWY u2 iK1 ODBIORNIK iO2 iO3 u3 iK2 iK3 Lk3 Lk2 Lk1 PLL sin(ωt + ϕ1 ) MODULATOR NADĄŻNY sin(ωt + ϕ 2 ) sin(ωt + ϕ 3 ) 1 3 ∑ ABS SLIDING DFT ABS SLIDING DFT ABS SLIDING DFT Rys.6.41. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym na filtracji typu Sliding DFT. Symulacja pokazuje przypadek kompensacji zarówno wyższych harmonicznych, mocy biernej, jak również symetryzacji obciążenia, W fazie B amplituda prądu odkształconego jest mniejsza od amplitud w pozostałych fazach. 0.14 30 20 10 0 -10 -20 -30 0.16 0.14 30 20 10 0 -10 -20 -30 0.16 a) U1 [V] 200 0 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 b) U2 [V] 200 0 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 c) U3 [V] 200 0 -200 0 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 iO1 [A] 0.14 30 20 10 0 -10 -20 -30 0.16 iO2 [A] 94 iO3 [A] 6. Badania symulacyjne Rys.6.42 Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania a) iO1, U1, b) iO2, U2 c) iO3, U3 a) i1h1 [A] 30 0 -30 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 b) i1h2 [A] 30 0 -30 0 c) i1h3 [A] 30 0 -30 0 Czas [s] Rys.6.43. Przebiegi czasowe pierwszych harmonicznych prądów obciążenia i1h1, i1h2, i1h3 po filtracji typu sliding DFT 6. Badania symulacyjne 95 a) iK1 [A] 20 0 -20 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 0.16 b) iK2 [A] 20 0 -20 0 c) iK3 [A] 20 0 -20 0 200 20 100 0 0 -20 -100 b) U2 [V] 0 U3 [V] 0.04 0.06 0.08 0.1 0.12 0.14 0.16 40 200 20 100 0 0 -20 -100 -40 -200 0 c) -200 0.02 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 40 200 20 100 0 0 -20 -100 -40 0 -200 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 iS2 [A] -40 iS1 [A] 40 0.16 Rys.6.45. Prądy sieci po kompensacji oraz napięcia fazowe a) iS1, U1, b) iS2, U2, c) iS3, U3 iS3 [A] a) U1 [V] Rys.6.44. Prądy kompensujące: a) iK1, b) iK2, c) iK3 6. Badania symulacyjne 20 30 10 1000 2000 3000 4000 5000 30 20 e) 10 20 10 0 0 1000 2000 3000 4000 5000 30 1000 2000 3000 4000 5000 30 20 f) 10 0 0 20 0 0 1000 2000 3000 4000 5000 Amplituda [A] Amplituda [A] Amplituda [A] d) 10 0 0 c) 30 Amplituda [A] 30 0 0 b) Widmo prądów sieci po kompensacji 1000 2000 3000 4000 5000 Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 96 20 10 0 0 1000 2000 3000 4000 5000 Częstotliwość [Hz] Częstotliwość [Hz] Rys.6.46. Widma prądów sieci przed filtracją: a) faza A, b), faza B, c) faza C i po filtracji aktywnej: d) faza A, e) faza B, f) faza C Tablica.6.12. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 19,9219 IŚR [A] 24,447 23,625 Współ. kształtu 1,2271 1,1083 THD [%] 31,2218 13,3219 SFDR [dB] -13,8534 -29,4741 SINAD [dB] -10,5148 -17,6017 Współ. nieliniowości 0,29803 0,1318 Współ. niesinusoidalności. 0,95456 0,98935 Parametry Po filtracji 21,3151 6. Badania symulacyjne 97 6.10. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania opartym na filtracji typu sliding Goertzel DFT Algorytm ten, tak samo jak sliding DFT jest wykorzystywany do kompensacji wyższych harmonicznych prądu, kompensacji mocy biernej, jak również symetryzacji obciążenia. Symetryzacja obciążenia oraz kompensacja mocy biernej przebiega w identyczny sposób co w algorytmie z wykorzystaniem filtracji typu sliding DFT. e1 iL1 e2 iL2 e3 iL3 iO1 u1 NIELINIOWY u2 iK1 iK2 iK3 Lk3 Lk2 iO3 u3 PLL Lk1 sin(ωt + ϕ1 ) MODULATOR NADĄŻNY ODBIORNIK iO2 sin(ωt + ϕ 2 ) sin(ωt + ϕ 3 ) 1 3 ∑ ABS SLIDING GOERTZEL ABS SLIDING GOERTZEL ABS SLIDING GOERTZEL Rys.6.47. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym na filtracji typu sliding Goertzel DFT. Symulacja pokazuje przypadek kompensacji zarówno wyższych harmonicznych, mocy biernej, jak również symetryzacji obciążenia, W fazie A amplituda prądu odkształconego jest mniejsza od amplitud w pozostałych fazach. 6. Badania symulacyjne 98 0 0 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 U2 [V] 0 0 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 U3 [V] -30 0.16 30 200 c) iO2 [A] 30 200 b) -30 0.16 0 0 -200 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 iO3 [A] U1 [V] a) iO1 [A] 30 200 -30 0.16 Czas [s] Rys. 6.48. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania: a) iO1, U1, b) iO2, U2 c) iO3, U3 a) i1h1 [A] 30 0 -30 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 b) i1h2 [A] 30 0 -30 c) i1h3 [A] 30 0 -30 Czas [s] Rys.6.49. Przebiegi czasowe pierwszych harmonicznych prądów obciążenia a) i1h1, b) i1h2, c) i1h3 po filtracji typu sliding Goertzel DFT 6. Badania symulacyjne 99 a) iK1 [A] 20 0 -20 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 b) iK1 [A] 20 0 -20 0 c) iK1 [A] 20 0 -20 0 Czas [s] Rys.6.50. Prądy kompensujące: a) iK1, b) iK2, c) iK3 0 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 U2 [V] 0 0 -200 0 -50 0.16 50 200 b) iS1 [A] 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 iS2 [A] a) U1 [V] 50 -50 0.16 0 0 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 -50 0.16 Czas [s] Rys.6.51. Prądy sieci po kompensacji oraz napięcia fazowe a) iS1, U1, b) iS2, U2, c) iS3, U3 iS3 [A] c) U3 [V] 50 6. Badania symulacyjne Widmo prądów sieci po kompensacji 20 10 30 20 Amplituda [A] c) e) 10 0 0 30 f) 10 0 0 20 10 1000 2000 3000 4000 5000 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 20 30 0 0 1000 2000 3000 4000 5000 Amplituda [A] Amplituda [A] 0 0 b) d) Amplituda [A] 30 Amplituda [A] Amplituda [A] Widmo prądów sieci przed kompensacja a) 100 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 Częstotliwość [Hz] Częstotliwość [Hz] Rys.6.52. Widma prądów sieci przed filtracją: a) faza A, b), faza B, c) faza C i po filtracji aktywnej: d) faza A, e) faza B, f) faza C Tabela.6.13. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 20.0391 IŚR [A] 24,5188 22,7906 Współ. kształtu 1,2236 1,1311 THD [%] 31,0091 14,9543 SFDR [dB] -14,0441 -25,4058 SINAD [dB] -10,5692 -16,639 Współ. nieliniowości 0,29617 0,14725 Współ. niesinusoidalności. 0,95511 0,98466 Parametry Po filtracji 20,1494 6. Badania symulacyjne 101 6.11. Badanie symulacyjne trójfazowego układu APF z algorytmem sterowania moving Fourier Transform e1 iL1 iO1 e2 iL2 iO2 e3 iL3 iO3 ODBIORNIK NIELINIOWY iK1 iK2 iK3 Lk3 Lk2 Lk1 iC1 MODULATOR iC2 NADĄŻNY i1h1 i1h2 iC3 i1h3 ALGORYTM MOVING FOURIER TRANSFORM ALGORYTM MOVING FOURIER TRANSFORM ALGORYTM MOVING FOURIER TRANSFORM Rys.6.53. Schemat blokowy trójfazowego APF z algorytmem sterowania opartym moving Fourier transform 40 20 0 0 -20 -200 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 iO1 [A] a) U1 [V] 200 -40 0.1 40 20 0 0 -20 -200 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 iO2 [A] b) U2 [V] 200 -40 0.1 40 20 0 0 -20 -200 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 iO3 [A] c) U3 [V] 200 -40 0.1 Czas [s] Rys.6.54. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania: a) iO1, U1, b) iO2, U2, c) iO3, U3 6. Badania symulacyjne 102 a) iK1 [A] 20 0 -20 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 b) iK2 [A] 20 0 -20 0 c) iK3 [A] 20 0 -20 0 Czas [s] Rys.6.55. Prądy kompensujące: a) iK1, b) iK2, c) iK3 a) iS1 [A] 40 20 0 -20 -40 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.01 0.02 0.03 0.04 0.05 0.06 Czas [s] 0.07 0.08 0.09 0.1 b) iS2 [A] 40 20 0 -20 -40 0 c) iS3 [A] 40 20 0 -20 -40 0 Rys.6.56. Prądy sieci po kompensacji: a) iS1, b) iS2, c) iS3 6. Badania symulacyjne 20 10 Amplituda [A] e) 10 20 10 20 f) 10 1000 2000 3000 4000 5000 Częstotliwość [Hz] 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 30 0 0 Amplituda [A] Amplituda [A] 20 30 0 0 1000 2000 3000 4000 5000 30 0 0 c) d) Amplituda [A] 30 0 0 b) Widmo prądów sieci po kompensacji Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 103 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 Częstotliwość [Hz] Rys.6.57. Widma prądów przed filtracją a) faza A, b), faza B, c) faza C i po filtracji aktywnej d) faza A, e) faza B, f) faza C Tabela.6.14. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 19,9219 IŚR [A] 24,447 23,8678 Współ. kształtu 1,2271 1,1118 THD [%] 31,2218 15,0683 SFDR [dB] -13,8534 -28,1308 SINAD [dB] -10,5148 -16,5531 Współ. nieliniowości 0,29803 0,14871 Współ. niesinusoidalności. 0,95456 0,98691 Parametry Po filtracji 21,4681 6. Badania symulacyjne 104 6.12. Badanie symulacyjne trójfazowego układu APF z kwadraturowym algorytmem sterowania e1 iL1 iO1 e2 iL2 iO2 e3 iL3 iO3 ODBIORNIK NIELINIOWY iK1 iK2 iK3 Lk3 Lk2 Lk1 iC1 MODULATOR ALGORYTM KWADRATUROWY iC2 NADĄŻNY ALGORYTM KWADRATUROWY iC3 ALGORYTM KWADRATUROWY 40 200 20 0 -200 b) U2 [V] -400 0 -20 0.02 0.04 0.06 0.08 0.1 0.12 0.14 400 40 200 20 0 0 -200 U3 [V] -400 0 c) -40 0.16 -20 0.02 0.04 0.06 0.08 0.1 0.12 0.14 -40 0.16 400 40 200 20 0 0 -200 -400 0 -20 0.02 0.04 0.06 0.08 0.1 0.12 0.14 iO2 [A] 0 iO1 [A] 400 iO3 [A] a) U1 [V] Rys.6.58. Schemat blokowy trójfazowego APF z kwadraturowym algorytmem sterowania -40 0.16 Czas [s] Rys.6.59. Przebiegi czasowe prądów obciążenia i napięć fazowych zasilania: a) iO1, U1, b) iO2, U2 c) iO3, U3 6. Badania symulacyjne 105 a) iK1 [A] 20 0 -20 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.02 0.04 0.06 0.08 Czas [s] 0.1 0.12 0.14 0.16 b) iK2 [A] 20 0 -20 0 c) iK3 [A] 20 0 -20 0 Rys. 6.60. Prądy kompensujące: a) iK1, b) iK2, c) iK3 a) iS1 [A] 40 20 0 -20 -40 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 b) iS2 [A] 40 20 0 -20 -40 c) iS3 [A] 40 20 0 -20 -40 Czas [s] Rys.6.61. Prądy sieci po kompensacji: a) iS1, b) iS2, c) iS3 6. Badania symulacyjne 20 10 Amplituda [A] e) 10 20 20 10 f) 10 1000 2000 3000 4000 5000 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 30 0 0 Amplituda [A] Amplituda [A] 20 30 0 0 1000 2000 3000 4000 5000 30 0 0 c) d) Amplituda [A] 30 0 0 b) Widmo prądów sieci po kompensacji Amplituda [A] a) Amplituda [A] Widmo prądów sieci przed kompensacja 106 1000 2000 3000 4000 5000 30 20 10 0 0 1000 2000 3000 4000 5000 Czestotliwość [Hz] Częstotliwość [Hz] Rys.6.62. Widma prądów przed filtracją a) faza A, b), faza B, c) faza C i po filtracji aktywnej d) faza A, e) faza B, f) faza C Tabela.6.16. Parametry prądu sieci pierwszej fazy przed i po filtracji ISK [A] Przed Filtracją 19,9219 IŚR [A] 24,447 23,2054 Współ. kształtu 1,2271 1,1235 THD [%] 31,2218 22,2077 SFDR [dB] -13,8534 -26,01 SINAD [dB] -10,5148 -13,2798 Współ. nieliniowości 0,29803 0,21678 Współ. niesinusoidalności. 0,95456 0,97612 Parametry Po filtracji 20,654 6. Badania symulacyjne 107 6.13. Implementacja algorytmów sterowania aktywnymi filtrami aktywnymi za pomocą procesora sygnałowego ADSP-21061 W podrozdziale tym przedstawiłem listingi programów z procesora sygnałowego ADSP-21061, zawierające algorytmy sterowania równoległymi filtrami aktywnymi. Sprawdzenie poprawności algorytmu polegało na wczytaniu do pamięci wejściowych próbek danych proporcjonalnych do prądów obciążenia. Następnie próbki te były brane jako sygnały wejściowe. Algorytmy są wykonywane w pętli programowej równej liczbie próbek w buforze wejściowych. Wynik działania, czyli sygnały sterujące zostały zapisane do bufora próbek wyjściowych. Poniżej przedstawione są przebiegi próbek wejściowych i wyjściowych. Pliki zawierające listingi programów dołączone są w załączniku. Pamięć z próbkami wejściowymi Procesor sygnałowy ADSP-21061 Pamięć z próbkami wyjściowymi Analiza próbek wyjściowych w programie Matlab Rys.6.63. Schemat blokowy sprawdzania poprawności działania algorytmów sterowania równoległymi filtrami aktywnymi za pomocą procesora sygnałowego ADSP-21061 Identyfikacja pierwszej harmonicznej Algorytm filtracji sygnałów wejściowych przebiega z zgodnie z równaniem: y1 (n ) = A1 x1 (n − 2 ) + A2 x1 (n − 1) + A3 x1 (n ) − B1 y1 (n − 2) − B2 y1 (n − 1) (6.8) Algorytm przesuwnika fazy przebiega zgodnie z równaniem: y2 (n ) = C1 x1 (n − 1) + C2 x1 (n ) − D1 y2 (n − 1) (6.9) Listing programu: lcntr=length(x1) , do petla until lce; f1=dm(i0,m0); call filtr_przesownik; f10=f1+f10; f1=dm(i2,m2); call filtr_przesownik; f10=f1+f10; f1=dm(i3,m3); call filtr_przesownik; f10=f1+f10; pm(i9,m9)=f10; petla: nop; //odczyt próbki wejściowej fazy A //skok do podprogramu realizującego filtr oraz przesuwnik fazy //sygnał wyjściowy minus sygnał wejściowy //odczyt próbki wejściowej fazy B //skok do podprogramu realizującego filtr oraz przesuwnik fazy //sygnał wyjściowy minus sygnał wejściowy //odczyt próbki wejściowej fazy C //skok do podprogramu realizującego filtr oraz przesuwnik fazy //sygnał wyjściowy minus sygnał wejściowy //zapis sygnału sterującego trzeciej fazy do bufora wyjściowego filtr_przesownik: f0=dm(i1,m1), f7=pm(i8,m8); f11=f0*f7, f0=dm(i1,m1), f7=pm(i8,m8); f12=f0*f7, f7=pm(i8,m8); f2=f1*f7, f12=f11+f12; f11=f2+f12, f3=dm(i1,m1), f7=pm(i8,m8); f12=f3*f7, f3=dm(i1,m1), f7=pm(i8,m8); f5=f3*f7, f2=f11-f12; f6=f2-f5, f2=dm(i1,m5), f7=pm(i8,m8); f10=f6*f7, dm(i1,m1)=f0, f7=pm(i8,m8); f12=f3*f7, dm(i1,m1)=f1, f7=pm(i8,m8); f2=f2*f7, f10=f10+f12, dm(i1,m1)=f3; rts(DB); f10=f10-f2, dm(i1,m1)=f6; dm(i1,m1)=f10; //odczyt x1(n-2),A1 //x1(n-2)*A1, odczyt x1(n-1), A2 //x1(n-1)*A2, odczyt A3 //x1(n)*A3, x1(n-2)*A1+x1(n-1)*A2 //x1(n-2)*A1+x1(n-1)*A2+x1(n)*A3, odczyt y1(n-2), B1 //y1(n-2)*B1, odczyt y1(n-1), B2 //y1(n-1)*B2, x1(n-2)*A1+x1(n-1)*A2+x(n)*A3+y1(n-2)*B1 //x1(n-2)*A1+x1(n-1)*A2+x(n)*A3+y1(n-2)*B1-y1(n-1)*B2 , C1,y2(n-1) //x2(n)*C1,zapis x1(n) do buforu, odczyt C2 //x2(n-1)*C2, zapis y1(n-1) do buforu, odczyt D1 //y2(n-1)*D1, x2(n)*C1+x2(n-1)*C2, zapis y1(n) do buforu //powrót z podprogramu //x2(n)*C1+x2(n-1)*C2-y2(n-1)*D1, zapis y1(n) //zapis y2(n) 108 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 1 Sygnał wejściowy 1 b) 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 Sygnał wejściowy -1 0.06 1 1 c) -1 0.06 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 Czas [s] 0.04 0.05 -1 0.06 Sygnał kompensujący Sygnał wejściowy a) Sygnał kompensujący 1 1 Sygnał kompensujący 6. Badania symulacyjne Rys.6.64. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C Teoria mocy chwilowej Listing programu: lcntr=length(x1) , do petla until lce; call ABC_alfa_beta; call moce_chwilowe; call filtracja; call prady_komp_Alfa_Beta_ABC; f0=f0-f4; f1=f1-f5; f2=f2-f6; pm(i15,m15)=f0; pm(i14,m14)=f1; petla: pm(i13,m13)=f2; ABC_alfa_beta: f0=dm(i0,m0), f11=f0*f7, f12=f1*f7, f13=f2*f7, f10=f1*f7, rts(DB); f13=f2*f7; f5=f10+f13; moce_chwilowe: f3=pm(i9,m9); f11=f3*f4, f12=f5*f14; f11=f3*f5, f10=f4*f14; rts(DB); f9=f10+f11; f15=pass f3; f7=pm(i8,m8); f1=dm(i1,m1), f2=dm(i2,m2), f11=f11+f12; f4=f11+f13, f14=pm(i10,m10); f8=f11-f12; //przejście z układu ABC do α-β //obliczenie mocy chwilowych p i q //filtracja mocy chwilowych //przejście z alfa-beta na ABC //wyznaczanie prądów kompensujących f7=pm(i8,m8); f7=pm(i8,m8); f7=pm(i8,m8); f7=pm(i8,m8); //odczyt io1(n),A11-macierzy przejścia abc doα-β //io1*A11,odczyt io2, A12-macierzy przejścia abc doα-β //io2*A12,odczyt io3, A13-macierzy przejścia abc doα-β //io3*A13, io1*A11+io2*A12, odczyt A22-macierzy przejścia //io2*A22,iα=io1*A11+io2*A12+io3*A13, odczyt A23-macierzy //powrót z podprogramu //io3*A23 // iβ= io2*A22+io3*A23 //odczyt sin(fi) //ialfa*sin(fi), odczyt cos(fi) //ibeta*cos(fi) //ibeta*sin(fi), p=ialfa*sin(fi)-ibeta*cos(fi) //ialfa*cos(fi) //powrót z podprogramu //q=ialfa*cos(fi)+ibeta*sin(fi) //zapamietanie cos(fi) 6. Badania symulacyjne //odczyt współczynnika A1 filtru f6=pm(i11,m11); //A1*p, odczyt p(n-1),A2 //A2*p(n-1), odczyt q(n-1) //A1*q(n) f3=dm(i3,m3); //A1*p(n)+A2*p(n-1), odczyt yp(n-1) f5=pm(i11,m11); //A2*q(n-1), odczyt B1 f11=f11+f13, f3=dm(i3,m3); //B1*yp(n-1),A1*q(n)+A2*q(n-1),odczyt yq(n-1) f10=f10-f12, dm(i3,m3)=f8; //B1*yq(n-1),A1*p(n)+A2*p(n-1)-B1*yp(n-1), zapis p(n-1) dm(i3,m3)=f9; //A1*q(n)+A2*q(n-1)-B1*yq(n-1), zapis q(n-1) //powrót z podprogramu dm(i3,m3)=f10; //p=p-p', zapis yp(n-1) dm(i3,m3)=f11; //q=q-q', zapis yq(n-1) f11=dm(i3,m3), f12=dm(i3,m3); c) 1 1 0.5 0.5 0 0 -0.5 -1 0 -0.5 0.01 0.02 0.03 0.04 0.05 1 1 0.5 0.5 0 0 -0.5 -1 0 -0.5 0.01 0.02 0.03 0.04 0.05 1 -1 0.06 1 0.5 0.5 0 0 -0.5 -1 0 -1 0.06 -0.5 0.01 0.02 0.03 0.04 Czas [s] 0.05 -1 0.06 Sygnał kompensujący //p*sin(fi) //q*cos(fi) //icα= p*sin(fi)+q*cos(fi), //p*cos(fi) //q*sin(fi), odczyt A11-macierzy przejścia α-β do abc //ic1=icα*A11, icβ=q*sin(fi)-p*cos(fi), odczyt A21 //icα*A21, odczyt A22-macierzy przejścia α-β do abc //icβ*A22, odczyt A31-macierzy przejścia α-β do abc //icα*A31,ic2=icα*a21+icβ*A22, odczyt A32-macierzy //icbeta*A32 Sygnał kompensujący Sygnał wejściowy b) Sygnał wejściowy a) Sygnał wejściowy prady_komp_Alfa_Beta_ABC: f10=f8*f15; f12=f9*f14; f3=f10+f12; f10=f8*f14; f13=f9*f15, f7=pm(i12,m12); f4=f3*f7; f10=f13-f10, f7=pm(i12,m12); f11=f3*f7, f7=pm(i12,m12); f12=f10*f7, f7=pm(i12,m12); f9=f3*f7, f5=f11+f12, f7=pm(i12,m12); rts(DB), f10=f10*f7; f6=f10+f11; Sygnał kompensujący filtracja: f5=pm(i11,m11); f10=f8*f5, f11=f11*f6, f13=f9*f5; f10=f10+f11, f11=f12*f6, f12=f3*f5, f13=f3*f5, f11=f11-f13, rts(DB); f8=f8-f10, f9=f9-f11, 109 Rys.6.65. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C 6. Badania symulacyjne 110 Modyfikacja teoria mocy chwilowej Listing programu: lcntr=length(x1) , do petla until lce; //przejscie z ukladu ABC do Alfa-Beta f0=dm(i0,m0), f7=pm(i8,m8); f11=f0*f7, f1=dm(i1,m1), f7=pm(i8,m8); f12=f1*f7, f2=dm(i2,m2), f7=pm(i8,m8); f13=f2*f7, f11=f11+f12; f7=pm(i8,m8); f10=f1*f7, f4=f11+f13, f7=pm(i8,m8); f13=f2*f7, f3=pm(i10,m10); f11=f3*f4, f5=f10+f13, f14=pm(i9,m9); //obliczenie mocy chwilowych p i q f12=f5*f14; f15=f3*f5, f7=f11-f12; f9=f4*f14, f4=dm(i3,m3), f5=pm(i11,m11); //filtracja mocy chwilowych f15=pass f3; call filtr; f6=f10-f12, dm(i3,m3)=f3; dm(i3,m3)=f6; f7=f9+f15, f4=dm(i3,m3), f5=pm(i11,m11); call filtr; f10=f10-f12, dm(i3,m3)=f3; f9=f6*f15; dm(i3,m3)=f10; //wyznaczanie prądów kompensacyjnych icα, icβ f12=f10*f14; f3=f9+f12; f12=f6*f14; f9=f10*f15, f7=pm(i12,m12); //przejscie z alfa-beta na ABC f11=f3*f7, f13=f9-f12, f7=pm(i12,m12); f12=f13*f7, f7=pm(i12,m12); f10=f3*f7, f4=f11+f12, f7=pm(i12,m12); f9=f13*f7; f5=f9+f10; f0=f0-f3; f1=f1-f4; f2=f2-f5; pm(i15,m15)=f0; pm(i14,m14)=f1; petla: pm(i13,m13)=f2; filtr: f11=f4*f5, f12=f8*f5, f10=f3*f7, f13=f3*f5, rts(DB); f12=f3*f5, dm(i3,m3)=f7; //odczyt io1(n),A11-macierzy przejścia abc do α-β //io1*A11, odczyt io2, A12-macierzy przejścia abc doα-β //io2*A12,odczyt io3, A13-macierzy przejścia abc do α-β //io3*A13, io1*A11+io2*A12, odczyt A22- przejścia abc do α-β //io2*A22,iα=io1*A11+io2*A12+io3*A13, odczyt A23-macierzy //io3*A23, odczyt cos(fi) //iα*cos(fi), iβ=io2*A22+io3*A23, odczyt sin(fi) //iβ*sin(fi) //iβ*cos(fi), p=iα*sin(fi)-iβ*cos(fi) //iα*sin(fi), odczyt x(n-2) współczynnika A1 filtru //zapamietanie cos(fi) //p'=x(n-2)*A1+x(n-1)*A2+x(n)*A3-Y(n-1)*B2-Y(n-1)*B2zapis y(n-1) //zapis y(n) //q=iα*cos(fi)+iβ*sin(fi) odczyt x(n-2) wsp A1 filtru //q'=x(n-2)*A1+x(n-1)*A2+x(n)*A3-Y(n-1)*B2-Y(n-1)*B2 zapis y(n-1) //zapis y(n), p*cos(fi) //q*sin(fi) //ic1=icalfa= p*sin(fi)+q*cos(fi), //p*sin(fi) //q*cos(fi), odczyt A21- macierzy przejścia α-β do abc //icα*A21, icβ=q*cos(fi)-q*cos(fi), odczyt A22-macierzy //icβ*A22, odczyt A31- macierzy przejścia α-β do abc //icα*A31,ic2=icα*A21+icβ*A22, odczyt A32-macierzy //icβ*A32, //ic2=icα*A31+icβ*A32 //wyznaczanie prądów kompensacyjnych //zapis prądów kompensujących do buforów f8=dm(i3,m3), f5=pm(i11,m11); //x(n-2)*A1, odczyt x(n-1), A2 f3=pm(i11,m11); //x(n-1)*A2, odczyt x(n), A3 f12=f11+f12, f3=dm(i3,m3), f5=pm(i11,m11);//x(n)*A3,x(n-2)*A1+x(n-1)*A2, odczyt Y(n-2), B1 f10=f10+f12, f3=dm(i3,m4), f5=pm(i11,m11);//Y(n-2)*B1 x(n-2)*A1+x(n-1)*A2+x(n)*A3,y(n-1)B2 //powrót z podprogramu f10=f10-f13, dm(i3,m3)=f8; //Y(n-1)*B2, x(n-2)*A1+x(n-1)*A2+x(n)*A3-Y(n-1)*B2, x(n-2) //zapis x(n-1) 1 -1 0 0 0.01 0.02 0.03 0.04 0.05 0.06 1 1 0.5 0 0 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 -1 0.06 1 1 0.5 0 0 -0.5 -1 0 0.01 0.02 0.03 Czas [s] 0.04 0.05 -1 0.06 Sygnał kompensujący 0 Sygnał kompensujący 111 Sygnał kompensujący c) Sygnał wejściowy b) Sygnał wejściowy a) Sygnał wejściowy 6. Badania symulacyjne Rys.6.66. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C Teoria mocy chwilowej p-q-r Listing programu lcntr=length(x1) , do petla until lce; //przejscie z ukladu ABC do Alfa-Beta f0=dm(i0,m0), f7=pm(i8,m8); f8=f0*f7, f1=dm(i1,m1), f7=pm(i8,m8); f12=f1*f7, f2=dm(i2,m2); f12=f2*f7, f9=f8-f12, f6=pm(i8,m8); f8=f1*f6, f15=f9-f12, f7=pm(i8,m8); f12=f2*f6; f9=f0*f7, f14=f8-f12; f12=f1*f7; f8=f2*f7, f12=f9+f12; f3=f8+f12, f0=dm(i3,m3), f7=pm(i8,m8); f8=f0*f7, f1=dm(i4,m4), f7=pm(i8,m8); f12=f1*f7, f2=dm(i5,m5); f12=f2*f7, f9=f8-f12, f6=pm(i8,m8); f8=f1*f6, f5=f9-f12, f7=pm(i8,m8); f12=f2*f6; f9=f0*f7, f4=f8-f12; f12=f1*f7; f8=f2*f7, f12=f9+f12; f7=f8+f12; //wyliczanie e0αβ f0=f5*f5, pm(i15,m15)=f5; f1=f4*f4, pm(i15,m15)=f4; f2=f3*f3, pm(i15,m15)=f15; f0=f0+f1, pm(i15,m15)=f14; f1= rsqrts f0; f6= recips f1; f2=f0+f2; f0= rsqrts f2; //wyznaczanie ip, ir, iq f11=f4*f14; //pobranie x1(n), A11 //x1(n)*A1;pobranie x2(n),A12 //x2(n)*A2;pobranie x3 //x3(n)*A23, x1(n)*A11-x2(n)*A12;pobranie A22=A23 //x2*A22,iα=x1(n)*A11-x2(n)*A12-x3(n)*A23,pobranie A31=A32 //x3*A23 //x1(n)*A31, iβ=x2(n)*A22-x3*A23 //x2(n)*A32 //x3(n)*A33, x1(n)*A31+x2(n)*A32; //i0=x1(n)*A31+x2(n)*A32+x3(n)*A33, odczyt V1, A11 //V1(n)*A11;pobranie V2(n),A12 //V2(n)*A2;pobranie V3 //V3(n)*A23; V1(n)*A11-V2(n)*A12;pobranie A22=A23 //V2(n)*A22,Vα=V1(n)*A11-V2(n)*A12-V3(n)*A23, A31=A32=A33 //V3(n)*A33 //V1(n)*A31, Vβ=V2(n)*A22-V3(n)*A23 //V2(n)*A32 //V3(n)*A33, V1(n)*A31+V2(n)*A32; //V0=V1(n)*A31+V2(n)*A32+V3(n)*A33 //Vα2; zapamiętanie Vα //Vβ2; zapamiętanie Vβ //V02 //Vα2+ Vβ2 //1/sqrt(Vα2+ Vβ2) //eαβ=sqrt(Vα2+ Vβ2) // Vα2+ Vβ2+ V02 //1/sqrt(Vα2+ Vβ2+ V02) //iβ*Vβ 6. Badania symulacyjne f12=f5*f15; //iα*Vα f10=f3*f7, f11=f11+f12; //i0*V0; iβ* Vβ+ iα*Vα f10=f10+f11; // i0*V0; iβ* Vβ+ iα*Vα+ i0*V0 f10=f10*f0; ///( i0*V0; iβ* Vβ+ iα*Vα+ i0*V0)/ e0αβ f11=f14*f5; // iβ* Vα f12=f15*f4; // iα* Vβ f13=f3*f6, f11=f11-f12; // iβ* Vα- iα* Vβ; eαβ*i0 f11=f11*f1; //( iβ* Vα- iα* Vβ)/ eαβ f8=f7*f5; //V0* Vα f9=f7*f4; //V0* Vβ f8=-f8; //-V0* Vα f8=f8-f9; //- V0* Vα- V0* Vβ f8=f8*f6; //(- V0* Vα- V0* Vβ)/ eαβ f8=f8+f13; //(- V0* Vα- V0* Vβ)/)/ eαβ+ eαβ*i0 f8=f8*f0; ///wyznaczanie mocy f0= recips f0; // e0αβ f1=f0*f10, f4=pm(i10,m10); /moc p f2=f0*f8, f5=pm(i10,m10); //moc -qq f2=-f2; f3=f0*f11, f0=dm(i6,m6), f6=pm(i10,m10); //moc qr //filtracja f10=f0*f4; //p(n-1)*A1 f12=f1*f5, f0=dm(i6,m7); //p(n)*A2, odczyt yp(n-1) f15=f0*f6, f10=f10+f12, dm(i6,m6)=f1; //yp(n-1)*B,p(n-1)*A1+p(n)*A2,zapis p(n) f10=f2*f5, f12=f10-f15; //qq(n)*A2, p(n-1)*A1+p(n)*A2-yp(n-1)*B f7=f1-f12, dm(i6,m6)=f12; //zapis yp(n) f0=dm(i6,m6); //odczyt qq(n-1) f15=f0*f4, f0=dm(i6,m7); //qq(n-1)*A2 odczyt yqq(n-1) f13=f0*f6, f9=f10+f15, dm(i6,m6)=f2; //yqq(n-1)*B, qq(n-1)*A2+qq(n)*A2, zapis qq(n) f10=f3*f5, f11=f9-f13; //qr(n)A2, qq(n-1)*A2+qq(n)*A2-yqq(n-1)*B f11=f2-f11, dm(i6,m6)=f11; //zapis yqq(n) f0=dm(i6,m6); //odczyt qr(n-1) f15=f0*f4, f0=dm(i6,m7); //qr(n-1)*A2 odczyt yqr(n-1) f9=f0*f6, f10=f10+f15, dm(i6,m6)=f3; //yqr(n-1)*B, qr(n-1)*A2+qr(n)*A2, zapis qr(n) f10=f10-f9; //qr(n-1)*A2+qr(n)*A2-yqq(n-1)*B f12=f3-f10, dm(i6,m6)=f10, f0=pm(i15,m15); //qr=qr-qr', zapis yqr(n), odczyt Vα //wyznaczanie prądów iα iβ, oraz przejście do współrzędnych fazowych f8=f0*f0, f1=pm(i15,m15); //Vα2; odczyt Vβ f15=f1*f1, f9=pm(i15,m15); //Vβ2, odczyt iα f10=f0*f7, f4=f11-f12, f11=pm(i15,m15);//p*Vα, qq+qr odczyt iβ f14=f1*f4, f15=f8+f15; //Vβ*(qq+qr) Vα2+ Vβ2 f15= recips f15; //1/( Vα2+ Vβ2) f14=f10-f14; //p*Vα-Vβ*(qq+qr) f14=f14*f15; //( p*Vα-Vβ*(qq+qr))*1/( Vα2+ Vβ2)) f12=f0*f4, f5=f9-f14; //q*Vα, icα=iα-(p*Vα- Vβ*(qq+qr)) *(1/( Vα2+ Vβ2) f13=f1*f7; //p*Vβ f13=f12+f13; //p*Vβ+ q*Vα f13=f13*f15, f0=pm(i12,m12); //( p*Vβ+ q*Vα)*(1/( Vα2+ Vβ2)); odczyt A11 f0=f0*f5, f13=f11-f13, f1=pm(i12,m12); //icα*A11,icβ=iβ-(p*Vβ+q*Vα)*((1/( Vα2+ Vβ2)), odczyt A21 f11=f1*f5, f2=pm(i12,m12); // icα*A21, odczyt A22 f12=f2*f13, f3=pm(i12,m12); //icβ*A22, odczyt A31 f3=f3*f5, f11=f11+f12; f1=pm(i12,m12); //icα*A31, icα*A21+icβ*A22, odczyt A32 f4=f1*f13; //icβ*A32 f10=f3+f4; // icα*A31+ icβ*A32 pm(i11,m11)=f11; //zapis sygnału wyjściowego fazy A petla: nop; 112 0 0 -0.5 -0.5 -1 Sygnał wejściowy Sygnał wejściowy 0.02 0.03 0.04 0.05 -1 0.06 1 1 0.5 0.5 0 0 -0.5 -0.5 -1 0 c) 0.01 0.01 0.02 0.03 0.04 0.05 -1 0.06 1 1 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 Czas [s] 0.04 0.05 -1 0.06 Sygnał kompensujący 0.5 0.5 Sygnał kompensujący 1 1 0 b) 113 Sygnał kompensujący a) Sygnał wejściowy 6. Badania symulacyjne Rys.6.67. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C Sliding DFT Listing programu: f0=0.99922903624072; f1=0.03925981575907; f3=0.0125; f2=0.3333333333333; //program główny lcntr=length(x1) , do petla until lce; f4=pm(i8,m8); f9=pass f4, dm(i0,m0)=f4; f5=dm(i0,m6); call SDFT; f10=pass f15, f4=pm(i9,m9); f14=pass f4, dm(i1,m1)=f4; f5=dm(i1,m6); call SDFT; f10=f10+f15, f4=pm(i10,m10); dm(i2,m2)=f4; f5=dm(i2,m6); call SDFT; f10=f10+f15; f10=f10*f2, f11=pm(i12,m12); f15=f10*f11; f15=f9-f15; dm(i4,m4)=f15, f11=pm(i13,m13); f15=f10*f11; f15=f14-f15; dm(i5,m5)=f15, f11=pm(i14,m14); f15=f10*f11; f15=f4-f15; petla: pm(i11,m11)=f15; //wartość rzeczywista współczynnika //wartość rzeczywista współczynnika //2/N //1/3 //odczyt x(n) faza A /zapis x(n) zapamiętanie x(n) //odczyt x(n-N), odczyt napięcia fazy A //skok do podprogramu wykonującego SDFT //zapamiętanie wartość modułu fazy A, odczyt x(n) faza B //zapis x(n) //odczyt x(n-N) //skok do podprogramu wykonującego SDFT /wartość modułu (fazy A+faza B), odczyt x(n) faza C, //zapis x(n) //odczyt x(n-N) //skok do podprogramu wykonującego SDFT //wartość modułu (faza A+faza B+faza C) //podzielenie przez 3 (wartość średnia), odczyt napięcia faza A //(napięcia faza A)*(wartość średnia) //wyliczanie sygnałów kompensujących dla fazy A //zapis wyjścia fazy A, odczyt napięcia faza B //(napięcia faza B)*(wartość średnia) //wyliczanie sygnałów kompensujących dla fazy A //zapis wyjścia fazy B, odczyt napięcia faza C //(napięcia faza C)*(wartość średnia) //wyliczanie sygnałów kompensujących dla fazy A //zapis sygnału wyjściowego fazy C 6. Badania symulacyjne 1 1 0.5 0.5 0 0 -0.5 -1 0 -0.5 0.01 0.02 0.03 0.04 0.05 1 1 0.5 0.5 0 0 -0.5 -1 0 -0.5 0.01 0.02 0.03 0.04 0.05 -1 0.06 1 1 0.5 0.5 0 0 -0.5 -1 0 -1 0.06 -0.5 0.01 0.02 0.03 Czas [s] 0.04 0.05 -1 0.06 Sygnał kompensujący //x(n)-x(n-N), odczyt real_wynik //real_wynik*real_wsp, odczyt imag_wynik //imag_wsp*imag_wyj, x(n)-x(n-N)+real_wynik*real_wsp //imag_wsp*real_wyj, x(n)-x(n-N)+real_wynik*real_wsp-imag_wsp*imag_wyj //real_wsp*imag_wyj, modyfikacja adresu i3 o -2; //imag_wsp*real_wyj+real_wsp*imag_wyj, zapis real_wyj /podniesienie real_wyj do kwadratu, zapis wartości imag wynik //podniesienie imag_wyj do kwadratu, //suma kwadratów //obliczenie 1/sqrt() //powrót z podprogramu //1/x //wymnożenie 2/N Sygnał kompensujący f6=dm(i3,m3); f7=dm(i3,m3); f8=f8+f12; f8=f8-f13; modify(i3,m7); dm(i3,m3)=f8; dm(i3,m3)=f12; Sygnal kompensujący c) Sygnał wejściowy b) Sygnał wejściowy a) Sygnał wejściowy SDFT: f8=f4-f5, f12=f6*f0, f13=f1*f7, f12=f1*f6, f13=f0*f7, f12=f12+f13, f15=f8*f8, f12=f12*f12; f15=f15+f12; f12=rsqrts f15; rts(DB); f15=recips f12; f15=f15*f3; 114 Rys.6.68. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C Sliding Geortzel DFT Listing programu: f0=1.99845807248145; f1=0.99922903624072; f3=0.03925981575907; f4=0.0125; f2=0.33333333333333; //2*cos(2pi/N) //real_wsp //imag_wsp //2/N //1/3 //program główny input_samples: lcntr=length(x1) , do petla until lce; f5=pm(i8,m8); dm(i0,m0)=f5; f15=pass f5, f6=dm(i0,m6); call SGDFT; f7=pass f11, f5=pm(i9,m9); f14=pass f5, dm(i1,m1)=f5; //odczyt x(n) //zapis x(n) //odczyt x(n-N) //skok do podprogramu wykonującego SGDFT //zapamiętanie modułu fazy A, odczyt x(n) fazy B //zapis x(n) 6. Badania symulacyjne f13=dm(i4,m4); pm(i11,m11)=f13; pm(i13,m13)=f13; f6=dm(i3,m3); f13=dm(i3,m3); f8=f8+f12, f8=f8-f13; dm(i3,m3)=f8; dm(i3,m3)=f6; modify(i3,m7); /x(n)-x(n-N), odczyt v(n-1) /v(n-1)*2*cos(2pi/N),odczyt v(n-2) //real_wsp*V(n-1), x(n)-x(n-N)+v(n-1)*2*cos(2pi/N), //i_y=i_wsp*v(n-1), v(n)=x(n)-x(n-N)+v(n-1)*2*cos(2pi/N)-v(n-2) /real_y(n)=v(n)-real_wsp*V(n-1), zapis v(n-1) //podniesienie do kwadratu imag_y, zapis v(n-2) //podniesienie do kwadratu real_y, //suma kwadratów //obliczenie 1/sqrt() //powrót z podprogramu //1/x //wymnozenie wyniku przea 2/N, 1 a) Sygnał wejściowy 1 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 1 Sygnał wejściowy 1 b) 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 Sygnał wejściowy -1 0.06 1 1 c) -1 0.06 0.5 0.5 0 0 -0.5 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 -1 0.06 Sygnał kompensujący f5=pm(i10,m10); Sygnł lkompensujący SDFT: f8=f5-f6, f12=f6*f0, f9=f1*f6, f10=f3*f6, f11=f8-f9, f10=f10*f10, f11=f11*f11; f11=f10+f11 f12=rsqrts f11; rts(DB); f11=recips f12; f11=f11*f4; //odczyt x(n-N) //skok do podprogramu wykonującego SGDFT /moduł fazy A + moduł fazy B, odczyt x(n) //zapis x(n) //odczyt x(n-N) //skok do podprogramu wykonującego SGDFT //wartość modułu (faza A+faza B+faza C) //dzielenie przez 3(wartość średnia),odczyt napięcia Faza A //(napięcia faza A)*(wartość średnia) //prąd kompensujący fazy A //odczyt napięcia faza B, zapis syg wyjściowego fazy A //(napięcia faza B)*(wartość średnia) //prąd kompensujący fazy B //zapis syg wyjściowego fazy B //odczyt napięcia faza C //(napięcia faza C)*(wartość średnia) //prąd kompensujący fazy C //zapis syg wyjściowego fazy C Sygnał kompensujący f6=dm(i1,m6); call SGDFT; f7=f7+f11, dm(i2,m2)=f5; f6=dm(i2,m6); call SGDFT; f7=f7+f11; f7=f7*f2, f13=f7*f13; f13=f15-f13; f15=dm(i5,m5), f15=f7*f15; f15=f14-f15; pm(i12,m12)=f15; f13=pm(i14,m14); f13=f7*f13; f13=f5-f13; petla: 115 Czas [s] Rys.6.69. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C 6. Badania symulacyjne 116 Algorytm kwadraturowy Listing programu: //program główny lcntr=length(x1) , do petla until lce; f0=dm(i0,m0), f4=pm(i9,m9); f2=f0*f4, f5=pm(i10,m10); call algorytm_jednofazowy; f1=f14+f15, f0=dm(i1,m1); f2=f0*f4, pm(i13,m13)=f1; call algorytm_jednofazowy; f13=f14+f15, f0=dm(i2,m2); f2=f0*f4, pm(i14,m14)=f13; call algorytm_jednofazowy; f14=f14+f15 ; pm(i15,m15)=f14; petla: nop; //odczyt współczynnika A1 filtru f7=pm(i11,m11); //A1*x(n), odczyt x(n-1), A2 f7=pm(i11,m11); //A2*x(n-1), odczyt y(n-1), B1 //modyfikacja adresu dm(i3,m3)=f2; //B1*y(n-1),A1*x(n)+A2*x(n-1), zapis x(n-1) // powrót z podprogramu //A1*x(n)+A2*x(n-1)-B1*y(n-1) //zapis y(n-1) c) 1 1 0.5 0.5 0 0 -0.5 -1 0 -0.5 0.01 0.02 0.03 0.04 0.05 -1 0.06 1 1 0.5 0 0 -0.5 -1 0 0.01 0.02 0.03 0.04 0.05 1 1 0.5 0.5 0 0 -0.5 -1 0 -1 0.06 -0.5 0.01 0.02 0.03 0.04 0.05 -1 0.06 Sygnał kompensujący //filtracja składowej kwadraturowej //i=i-i' //i*sin(fi) //i(n)*cos(fi) //filtracja składowej synfazowej //i=i-i', powrót z podprogramu //i*cos(fi) Sygnał kompensujący Sygnał wejściowy b) Sygnał wejściowy a) Sygnał wejściowy algorytm_jednofazowy: call filtr; f14=f2-f11; f14=f14*f4; f2=f0*f5; call filtr; rts(DB), f15=f2-f11; f15=f15*f5; Sygnał kompensujący filtr: f7=pm(i11,m11); f8=f2*f7, f3=dm(i3,m3), f12=f3*f7, f3=dm(i3,m3), modify(i3,-2); f11=f3*f7, f12=f8+f12, rts(DB); f11=f12-f11; dm(i3,m3)=f11; //odczyt io1(n), sin(fi) //io1(n)*sin(fi), odczyt cos(fi) //skok do podprogramu wykonującego algorytm kwadratur. // sygnał kompensujący Fazy A, odczyt io2(n) //io2(n)*sin(fi), zapis sygnały wyj do bufora //skok do podprogramu wykonującego algorytm kwadratur. //sygnał kompensujący Fazy B, odczyt io3(n) //io3(n)*sin(fi), zapis sygnały wyj do bufora //skok do podprogramu wykonującego algorytm kwadratur. //sygnał kompensujący Fazy C //zapis sygnały wyj do bufora Czas [s] Rys.6.70. Sygnały wejściowe i kompensujące z procesora sygnałowego: a) dla fazy A, b) dla fazy B, c) dla fazy C 7. Podsumowanie i wnioski końcowe 117 7. Posumowanie i wnioski końcowe Równoległa filtracja aktywna jest jednym ze sposobów poprawy jakości zasilania energii elektrycznej. W pracy przestawione zostały tylko niektóre z popularniejszych algorytmów sterowania tymi filtrami. Skupiła się ona na wyprowadzeniu podstawowych zależności każdej z przestawionych metod, oraz na porównaniu dokładności kompensacji filtrów wykorzystujących niektóre z powyższych algorytmów sterowania. Metoda identyfikacji podstawowej harmonicznej za pomocą dolnoprzepustowego filtru, jest jedną z najprostszych algorytmów sterowania. Prostota jest okupiona małą dokładnością kompensacji. O dokładności filtracji decydują parametry zastosowanego filtru dolnoprzepustowego. Jednakże użycie filtrów wyższego rzędu powoduje niepoprawność działania algorytmów. Zastosowany filtr drugiego rzędu niejednokrotnie niedokładnie wyznacza składową podstawową, co prowadzi do niepełnej kompensacji. Algorytm ten działa niezależnie dla każdej fazy, dlatego może być stosowany w zarówno w filtrach jednofazowych jak i trójfazowych. Służy on jedynie do kompensacji wyższych harmonicznych prądu obciążenia, nie można kompensować mocy biernej oraz symetryzować obciążenia. Sterowanie filtru wykorzystujące tą metodę można w bardzo prosty sposób zrealizować zarówno w sposób analogowy jak również cyfrowy za pomocą procesora sygnałowego DSP. Metody sterowania oparte o teorię mocy chwilowej są bardziej złożonymi algorytmami. Jednakże niektóre z nich pozwalają zarówno na kompensację wyższych harmonicznych, kompensację mocy biernej jak i symetryzację obciążenia. Przedstawiony w pracy algorytm sterowania oparty o teorię mocy chwilowej pozwala na wykonanie tych trzech czynności. Modyfikacja teorii mocy opisana w punkcie 3.4.4. służy tylko kompensacji wyższych harmonicznych prądów oraz symetryzacji obciążenia. Algorytm, w którym wykorzystano teorię mocy p-q-r służy do kompensacji wyższych harmonicznych prądów, oraz symetryzacji obciążenia ale dla układów trójfazowych czteroprzewodowych. Stopień skomplikowania tych algorytmów jest znaczny, gdyż wymagają one przejścia z układu współrzędnych fazowych a-b-c do układu ortogonalnego α-β, i z powrotem, co powoduje znaczną ilość obliczeń arytmetycznych. Algorytmy bezpośrednie oparte na rozkładzie przebiegów okresowych w przebieg Fouriera są jednymi z dokładniejszych metod wyznaczania sygnałów sterujących równoległymi filtrami aktywnymi. Jednak ich złożoność obliczeniowa powoduje, że są one trudno realizowalne. Zwłaszcza przedstawiony algorytm moving Fourier transform, posiada znaczną liczbę obliczeń arytmetycznych. Algorytmy te działają niezależnie dla każdej z faz i służą jedynie kompensacji wyższych harmonicznych prądów obciążenia. Zastosowanie operacji opisanych w punkcie 5.7. pozwala również na kompensację mocy biernej i symetryzację obciążenia. Operacja wymnożenia sygnałów równych modułom pierwszych harmonicznych każdej z faz z odpowiednimi sygnałami proporcjonalnymi do napięć fazowych powoduję kompensację mocy biernej wprowadzanej przez elementy reaktancyjne obciążenia. Natomiast wcześniejsze obliczenie wartości średniej z tych modułów doprowadzi do symetryzacji obciążenia. Czynności te zostały pokazane przy zastosowaniu filtracji typu sliding DFT oraz sliding Geortzel DFT. Sterowanie wykorzystujące bezpośredni rozkład sygnałów w szereg Fouriera można wykonać jedynie przy pomocy układów cyfrowych, a przede wszystkim procesorów sygnałowych DSP. Ostatni przedstawiony w pracy algorytm to algorytm kwadraturowy. Zastosowana w nim modulacja kwadraturowa pozwala na operacje przesunięcia składowej podstawowej widma sygnału w kierunku 0 Hz, co w znacznym stopniu ułatwia jej filtrację. Wystarczy stosowanie filtru pierwszego rzędu w celu filtracji tej składowej. Algorytm ten również działa niezależnie w każdej z faz układu, i służy jedynie do kompensacji wyższych harmonicznych prądów obciążenia. Jego prostota pozwala na analogową oraz cyfrową realizację 7. Podsumowanie i wnioski końcowe 118 W poniższej tabeli zostały porównane pod względem rodzaju kompensacji, przedstawione w pracy algorytmy sterowania. Tabela.7.1. Porównanie algorytmów sterowania ze względu na rodzaj kompensacji Metoda Identyfikacja składowej podstawowej Teoria mocy chwilowej Modyfikacja teorii mocy chwilowej Teoria mocy p-q-r Algorytm moving Fourier transform Filtracja typu sliding DFT Filtracja typu sliding Geortzel DFT Algorytm kwadraturowy Wyższe harmoniczne TAK TAK TAK TAK TAK TAK TAK TAK Moc bierna NIE TAK NIE NIE NIE TAK TAK NIE Symetryzacja obciążenia NIE TAK TAK TAK NIE TAK TAK NIE Z powyższej tabeli wynika iż najlepszymi z zaprezentowanych w pracy algorytmami sterowania trójfazowych równoległych filtrów aktywnych, pod względem rodzaju kompensacji są algorytmy oparte na teorii mocy chwilowej oraz na filtracji typu sliding DFT i sliding Geortzel DFT. Innym kryterium porównawczym dokładności kompensacji równoległych filtrów aktywnych jest porównanie parametrów sygnału po kompensacji, a w szczególności współczynnika zawartości wyższych harmonicznych THD. Przy tym porównaniu należy również zwrócić uwagę na amplitudę prądów po kompensacji. Na jej dokładność wpływa dokładność wyznaczenia prądów kompensujących. Jednakże prądy po kompensacji będą w znaczący sposób zależały od zastosowanego modulatora przy nadążnym kształtowaniu prądów kompensujących. Zastosowany w symulacjach modulator histerezowy jest najprostszym oraz dosyć niedokładnym układem. Dlatego wyniki porównania mogą być niemiarodajne, zwłaszcza przy różnych kształtach prądów kompensujących wynikających z niedokładności ich wyznaczenia. W poniższej tabeli zostały przedstawione THD oraz wartość skuteczna prądu fazy pierwszej po kompensacji równoległym filtrem aktywnym. Wszystkie symulacje zostały przeprowadzone dla tych samych parametrów zasilania i obciążenia: Tabela.7.2 Porównanie równoległych filtrów aktywnych z zastosowaniem omówionych algorytmów sterowania Metoda Identyfikacja składowej podstawowej Teoria mocy chwilowej Modyfikacja teorii mocy chwilowej Teoria mocy p-q-r Algorytm moving Fourier transform Filtracja typu sliding DFT Filtracja typu sliding Geortzel DFT Algorytm kwadraturowy THD 16.6478 15,2968 15,16,43 17,0791 15,0683 15,3592 15,3592 15,6406 Irms 23,0751 24,072 24,6725 25,1221 23.8678 23,8235 23,8235 23,1553 Jak można zauważyć wartość współczynnika THD jest porównywalna dla każdego zastosowanego algorytmu. Niestety wartość skuteczna prądów po kompensacji różni się dla różnych algorytmów. Wynika to z niedokładności wyznaczania sygnałów kompensujących. Streszczenie 119 Streszczenie W pierwszej części pracy zostały przedstawiony krótki zarys niektórych teorii mocy w układach prądu przemiennego. Głównym tematem pracy dyplomowej jest przedstawienie kilku algorytmów sterowania równoległymi filtrami aktywnymi. Zawiera ona opis podstawowych zależności i wzorów strategii wyznaczania sygnałów kompensujących, za pomocą tych algorytmów. Przedstawione zostały zmiennoprzecinkowe symulacje komputerowe w programie Matlab, równoległych filtrów aktywnych sterowanych przez wybrane algorytmy. Zawiera również krótkie porównanie parametrów prądów sieci przed i po filtracji aktywnej. W pracy opisany został również zmiennoprzecinkowy procesor sygnałowy ADSP-21061 firmy Analog Devices, oraz kilka algorytmów sterowania równoległymi filtrami aktywnymi zrealizowanych za pomocą tego procesora. Abstract The first part of work describes some theories of power in electric circuits. Presentation of a few algorithms of control parallel active filters is main subject of this work. The basic dependences of algorithms are introduced. The floating-point computer simulation results, in program Matlab, are also presented in the paper. The comparison of parameters of currents lines before and after active filtration also presented in this work. This paper describes of the floatingpoint digital signal processor ADSP-21061 of firm Analog Devices. Streszczenie 120 Literatura 121 LITERATURA [1] Budeanu C.I., Puissance reactives et fictives. RGE, T.XXIII,1928, [2] Budeanu C.I., Reactive and fictitious powers. Rumanian National institute, publication No 2, 1927, [3] Budeanu C.I., The different options and conceptions regarding active power in non- sinusoidal system., Rumanian National institute, publication No 4, 1927, [4] Nowomiejski Z., Generalized theory of electrical power. Archiv fur Elektrotechnik, 1977 [5] Fryze S., Moc czynna, bierna i pozorna w obwodach o przebiegach odkształconych prądu i napięci . Przegląd Elektrotechniczny, nr 22 1932 [6] Fryze S., W sprawie określenia mocy w obwodach elektrycznych o przebiegach odkształconych prądu i napięcia. Przegląd Elektrotechniczny, nr 7, nr 8 1931 [7] Fryze S., Wybrane zagadnienia teoretycznych podstaw elektrotechniki. PWN, WarszawaWrocław 1966. [8] Shepherd E., Zakikhani P., Suggested definition of reactive power from non-sinusoidal system. Proc. IEE Vol.119, No.9, Sept. 1972, oraz Vol.120, No.7 July 1973 [9] Sharon D. Reactive power definition and power factor improvement in nonlinear systems. Proc. IEE Vol.120, No.6, 1973 [10] Kusters N.L., Moore W.J.M., On the definition of reactive power under non-sinusoidal conditions. IEEE trans. Pow. Appl. Systems. Vol.99, 1980 [11] Czarnecki L.S., Interpretacja, identyfikacja i modyfikacja właściwości energetycznych obwodów jednofazowych z przebiegami odkształconymi. Z.N. Politechniki Śląskiej „Elektryka”, 1984 [12] Czarnecki L.S., What is wrong with the Budeanu concept of reactive and distortion powers and why is should be abandonded. IEEE Trans. Instrum. Means. IM-Vol.36, No.3, June 1987. [13] Czarnecki L.S., Scattered and reactive current, voltage and power in circuits with non- sinusoidal waveforms and their compensation. IEEE Trans. Instrum. Meas. Vol.40, No.3, June 1991. [14] Czarnecki L.S., Moc bierna i pozorna: czy wszystko jest już wyjaśnione?. Materiały konferencyjne EPN’2000, Elektrotechnika prądów niesinusoidalnych. Zielona Góra 2000. Literatura 122 [15] Pasko M. Przegląd teorii mocy dla układów z przebiegami odkształconymi. Materiały konferencyjne EPN’2002, Elektrotechnika prądów niesinusoidalnych. Zielona Góra 2002. [16] Strzelecki. R, Supronowicz H., Współczynnik mocy w systemach zasilania prądu przemiennego i metody jego poprawy, Oficyna wydawnicza Politechniki Warszawskiej, Warszawa 2000. [17] Lyons R., Wprowadzenie do cyfrowego przetwarzania sygnałów. Wydawnictwo Komunikacji i Łączności, Warszawa 1999 [18] Akagi H., Kanazawa Y., Nabae A., Generalized theory of the instantaneous reactive power in tree phase circuits. Conference Rec., IEEE PESC, Tokyo 1983, s.855-861. [19] Akagi H., Nabae A., Atoh S., Control strategy of active power filters using multiple voltage- source PWM converters. IEEE Trans. Onon IA, Vol IA-22, No3, 1986. [20] Strzelecki R., Zastosowanie teorii mocy Chwilowej do sterowania Energetycznych filtrów aktywnych, Jakość i Użytkowanie Energii Elektrycznej 1997. [21] Sozański K, Strzelecki R., Kempski A., Digital Control Circuit for Active Power Filter with Modified Instantaneous Reactive Power Control Algorithm, Uniwersytet Zielonogórski, Instytut inżynierii elektrycznej. [22] Bednarski D., Realizacja praktyczna sterowania filtrem aktywnym, Praca wykonana w ramach projektu S/WE/1/98 PB, Białystok 1998. [23] Kim H., Blaabjerg F., Bak-Jensen B., Choi J., Instantaneous Power Compensation in Three- Phase Systems by Using p–q–r Theory, IEEE Transactions on Power Electronics, Vol. 17, No. 5, September 2002. [24] Kim H., Blaabjerg F., Bak-Jensen B., Spectral Analysis of Instantaneous Powers in Single- Phase and Three-Phase Systems With Use of p–q–r Theory, IEEE Transactions on Power Electronics, Vol. 17, No. 5, September 2002. [25] Kim H., Akagi H., The Instantaneous Power Theory on the Rotating p-q-r Reference Frames, IEEE 1999 International Conference on Power Electronics and Drive System, PEDS’99, July 99, Hong Kong. [26] Nakajima T., Masada E., An active power filter with monitoring of harmonic spectrum, European Conference on Power Electronics and Applications EPE 1998, Aachen 1998. [27] Jacobsen E., Lyons R. The Sliding DSP, IEEE Signal Processing Magazine, March, 2003 [28] Sozański K. Harmonic Compensation Using the Sliding DFT Algorithm, 35rd Annual IEEE Power Electronics Specialists Conference –PESC’04, Aachen, Germany, 2004. Literatura 123 [29] Sozański K., Active Power Filter Control Algorithm using the Sliding DFT, Signal Processing 2003 Workshop, Poznań, 2003. [30] Nowacki Z., Modulacja szerokości impulsów w napędach przekształtnikowych prądu przemiennego, PWN, Warszawa 1991. [31] Implementing PI controllers with the ADMC401, Analog Devices Inc., January 2000 [32] ADSP-2106X Sharc User’s Manual, Analog Devices 1997. [33] www.analog.com