Cyfrowe algorytmy sterowania energetycznymi

advertisement
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
Download