AVR 182: Detektor przejścia przez zero
Strona 1/9
AVR 182: Detektor przejścia przez zero – OPIS.
Funkcje
• Sterownik przerwań
• W Module kodu źródłowego C
• Długość wydajnego kodu
• dokładne i szybkie wykrycie zera
• minimum elementów zewnętrznych
Wprowadzenie
Jednym z wielu problemów w rozwijających się
nowoczesnych aplikacji jest otrzymanie impulsów w
chwili przejścia napięcia sieci przez zero, szczególnie
podczas przełączania zasilania sieciowego i na
zewnętrze źródło. W większość współczesnych nowych
zastosowaniach są sterowane za pomocą jednego lub
w
ięcej mikrosterowników, co stwarza możliwość
uniknięcia tego zakłóceń w prosty i efektywny pod
względem kosztów sposób.
SZakłocenia wytwarzane podczas przełączenia są
zależne od amplitudy napiecia sinusa AC w
rzeczywistym punktie przełączania. Aby uzyskać te
zakłucenia na jak najniższym poziomie idealnym
przełączaniem będzie wykonanie tego, gdy amplituda
napięcia będzie wynosić 0V (wolt). Lub Gdy Amplituda
przekroczył 0 volt w okolicach "przejścia przez zero".
Przełączanie zasilania sieciowego i wyjść na przejściu
napięcia sieci przez zero wymaga jakiegoś sposób
wykrywania kiedy nastąpi przejście i rozpoczęcie
działań przełączania przy przekraczaniu. Rodzi to
potrzebę w opłacalny sposób wykrywania przejścia
przez zero. Niniejsza nota wyjaśnia, jak to zrobić.
Detekcja przejścia przez zero może być również
wykorzystywane do innych celów, takich jak obliczanie
częstości i względny pomiaru przesunięcia fazowego.
AVR 182: Detektor przejścia przez zero
Strona 2/9
Rysunek 1. Detektor przejścia przez zero - Korzystanie AVR.
Przykład Zastosowania
Uwa
ga ta aplikacja pokazuje użytkownikowi, jak
zaimplementować zerowy przekrój detektora z minimum
elementów zewnętrznych. Należy zauważyć, że to
rozwiązanie nie daje żadnych galwanicznego
mikrokontrolera z sieci prądu przemiennego. Zero krzyż
rezystor sensie
może być sposobem na zakłócenia
elektroniczne, aby dostać się do systemu.
Nie zostanie opisane w niniejszym zgłoszeniu noty. Patrz
"AVR040: Postępowanie konstrukcyjne EMC" dla dalszych
szczegółów na ten temat.
Aplikacja wykorzystuje ATmega16, ale kod może być
ponownie skompilowana dla dowolnego urządzenia AVR.
Sprzęt
Aby chronić urządzenie przed napięciami powyżej VCC i
poniżej GND, AVR posiada wewnętrzne diody podłączone
na kołki I/O (patrz rysunek 1). Diody są połączone od kołków
do VCC i GND aby zacho
wać wszystkie sygnały wejściowe
poniżej napięcia zasilania układu AVR (patrz rysunek 2).
Każde napięcie wyższe niż VCC + 0,5V będzie zmuszony do
zachowania tej wartości VCC + 0.5V (0.5V to jest spadek
napięcia na diodzie) a dla dowolnego napięciu poniżej GND
będzie ograniczone do - 0.5V będzie zmuszony w stosunku
do GND.
AVR 182: Detektor przejścia przez zero
Strona 3/9
Dodając duży rezystor szeregowo z wejściem, diody te
mogą być wykorzystywane do konwertowania sygnału
wysokiego napięcia z sinusa w dół na sygnał prostokątny
niskiego napięcia o amplitudzie napięcia wewnątrz
operacyjnego zasilania AVR ± 0.5V
. Diody będą zatem
zmuszać sygnał wysokiego napięcia sieciowego do napięcia
zasilania układu AVR.
Należy pamiętać, że rezystor szeregowy i pojemność
wejściowa pinu tworzą filtr RC, który wprowadzi małą
r
óżnicę faz między prostokątnymsugnałem wejścia a
sygnałem sieciowym. Różnica faz jest nieznaczna w
bieżącym przykład, patrz "Filtr RC i opóźnienie między
VCC/2
a rzeczywistym przejściem przez zero (zobacz na
stronie 7, aby uzyskać więcej informacji).
Jako
sygnał fali prostokątnej jest w fazie z z napięciem sieci
prądu zmiennego, wykorzystując przewagę zbocza
opadjącego pokaże bardzo dokładnie, gdzie nastepuje
detekcja przejście przez zero. Za pomocą tego sygnału z
AVR
może być bardzo dokładne zaprogramowany cheep
tak, aby być generować kod przerwania w pobliżu zera sieci
z bardzo małym błędem.
Z sygnału zasilającego powstaje fala prostąkątna bo jego
wierzchołki są odcięte i będą miały napięcie w zakesie
(VCC - 0.5V do VCC + 0,5V
) jako sygnał elektryczny
(patrz rysunek 2
). Gdy prostokątny fala detektora wyzwala
opadającym zboczem AVR generuje przerwanie w okolicy
napięcia VCC/2 (~ +2,5V) tuż przed przejściem przez zero,
sieciową amplituda będzie także VCC/2 i tuż przed
przejściem przez zero. Jeśli odbywa się to na opadającym
zboczu AVR dostanie przerwanie tuż przed przejściem przez
zero i będzie miał czas, aby rozpocząć akcję przejścia przez
zero w rzeczywistym punkcie przecięcia. Przerwanie
zostanie uruchomiony przy około VCC/2, gdyż jest to środek
logicznego
napięcia progu AVR.
Sygnał jest podłączony do 0-pin od zewnętrznego przerwania, który umożliwia umieszczenie
rutynowych detekcji zera w procedurze przerwania i sprawiają, że wykrycie przerwania pełni
odpowiada przejściu przez zero. Figura 3 przedstawia zrzut ekranu oscyloskopu
rzeczywistego sygnału wejściowego. Zauważ, że sygnał sieciowy jest skalowany i zbocze
zewnętrznego przerwania na 0-pin jest taka sama jak dla krawędzi zbocza zasilania, ze
względu na skalowanie, krawędź sieciowego zbocza wygląda wydaje się po zewnętrznym
przerwaniu od zera sieci.
AVR 182: Detektor przejścia przez zero
Strona 4/9
Rysunek 2. Fala Prostokatna sygnału wejściowego na zewnętrznym wyjście układu
przerwania wykrywania przejscia przez zero 0-pin.
Rysunek 3. Zrzut ekranu Oscyloskop z wejściowym sygnałem prostokątnym na zewnętrznym
0-
pin wejściu przerwań od zera sieci.
Rezystor szeregowy wejściowy jest to rezystor 1MΩ. Nie zaleca się stosowania diody
poziomujących gdyż sam opornik nie podnosi więcej prądu niż maksymalnie do1 mA a
rezystor 1MΩ umożliwić zabezpieczenie maksymalne do napięcie około 1 000V.
Każde napięcie wyższe niż 1 000V pewnie byłoby uszkodzenia lub przepięcia wejścia. Diody
ograniczajace są w stanie poradzić sobie z impulsami o krótkim czasie trwania, ale nie z
przepięciami.
W Nocie aplikac
yjnej nie omawiamy sposobu ochrony przed przepięciami, ale po prostu
zaleca się ich zastosowanie dla ochrony przed przepięciami.
AVR 182: Detektor przejścia przez zero
Strona 5/9
Większość rezystorów ma górny limit maksymalnego napięcia wiekszy niż to w sieci AC.
Upewnij się, że rezystory stosowane w aplikacji może obsłużyć możliwie najwyższe napięcia
zasilania AC, w tym wysokie skoki tego napięcia.
W systemach o niższym napięciu zasilania wartość rezystora może być zmienieszona, ale w
ogóle rezystor powinien być w stanie wytrzymać 110 - 240V systemu AC bez żadnych
problemów.
Rezystor 1 MΩ szeregowo sieci GND zapewnienia właściwy potencjału uziemienia dla tej
aplikacji.
Softwer
Oprogramowanie sprzętowe zewnętrzne i wewnętrzne diody
poziomującej uczyni sygnał prostokątnym na 0-pin AVR
External Interrupt.
Jak opisano w Sekcja o sprzęcie
prostokątna fala będzie miała tę samą częstotliwość jak
napiecie sieciowe. Okres Wysokiego sygnału będzie
przypadał, gdy zasilanie sieciowe jest wyższe niż VCC/2.
Daje to efekt taki że przejścia przez zero wypada bardzo
blis
ko krawędzi przekształconego do prostokątnego napiecia
sieci. Narastające zbocze fali wypada trochę po przejściu
napięcia sieci przez zero, a krawędź jest nieznacznie spada
przed przekraczaniem zera.
Gdy spada krawędź prostokątnego napięcia sieci jest tuż
przed przejściem przez zero napięcia sieci, opadające
zbocze przerwanie wystąpi tak blisko rzeczywistej
przeprawy, że od razu można rozpocząć akcję przejścia
przez zero.
W tym przykładzie zastosowania akcja przejścia przez zero
(sygnał) na moment tylko ustawić górny poziom napięcia na
wejściu PB0 przez krótki okres czasu, a następnie
natychmiast rozpoczyna szukania następnego opadającego
zbocza impulsów zera sieci. To sprawia, że bardzo łatwo jest
sprawdzić, czy wykrywanie przejścia przez zero jest
poprawne
czy nie. Wystarczy podłączyć sondę oscyloskopu
do sieci, i inną (drugi kanał) do wejścia PB0. Jeżeli wykrycie
jest poprawne zostanie to wskazaniem na wejściu PB0
wysokiego sygnału na krótki okres czasu, przy każdym
opadającym zboczu przejścia przez zero
(patrz rysunek 4 i rysunek 5).
AVR 182: Detektor przejścia przez zero
Strona 6/9
Rysunek 4. Zrzut ekranu z oscyloskopu wejścia sieciowego i Wyjścia PB
0
Rysunek 5. Zrzut ekranu z oscyloskopu, wejście zasilania i Wyjścia PB
0
W rzeczywistej aplikacji wyłączenie zewnętrznego przerwania od
0 przed powrotem z procedury przerwania dokona tylko
pojedynczej detekcji zera. Aby wykryć nowe przejście przez zero,
wystarczy zezwolić na ponownie wykrywanie krawędź opadjacej
przerywń od zera sieci w programie głównym.
Aby upewnić się, że przerwania są ważne a nie tylko produktami
impulsów zakłócajacych pinie, jest filtr realizowany w procedurze
przerwania. Filtr programowy Próbkuje poziomnapięcia na linii
przerwania pięć razy i porównuje wartości, aby zobaczyć, czy
wartość napięcia jest stabilna. Jeśli wartość nie jest taka sama dla
wszystkich próbek, zdarzenie zostanie odrzucone, a procedura
wraca do programu głównego czeka na nowe przerwanie od zera
(patrz rysunek 6).
Więcej informacji na temat programu można znaleźć
komentarzach w kodzie programu.
AVR 182: Detektor przejścia przez zero
Strona 7/9
Rysunek 6. Oprogramowanie: Wykres przepływu dla programu głównego i zewnętrznego
przerwania od 0 sieci. Postępowanie Routynowe.
Uwarunkowania specjalne
Stosowanie wysokich napięć do mikrokontrolerów zwiększa
prawdopodobieństwo awarii lub uszkodzenia. Wskazane
jest, aby przestrzegać kilku szczególnych zasad, gdyż każdy
błąd może spowodować poważne uszkodzenie elementów,
emulatorów lub porażenie prądem.
Emulatory i Diody podciągajace
Rodzina AVR jest skonfigurowana z kompletnym
systemem emu
lacji, ale ze względu na charakter obróbki niektóre
emulatory, nie są one wyposażone w wewnętrzne diody
podciągajaco-ograniczajace. ICE200 i ICE40/50 są jedynymi
emulatory z diodami podciągajaco-ograniczajacymi. ICE10 i ICE30
nie zawierają tych diody. Dodając zewnętrzne diody podciągajaco-
ograniczajace te emulatory dostanie to samo napięcie na wejście jak
w innych układch.
Zastosować wysokiego napięcia AC (przemiennego) do emulatora
może spowodować poważne uszkodzenie wyposażenia i należy
zachować szczególną ostrożność. Zaleca się użycie transformatorów
izolacyjnych od napiecia sieci i oddzielone galwanicznie złącza RS-
232 do komunikacji z komputerem.
AVR 182: Detektor przejścia przez zero
Strona 8/9
Filtr RC Opóźnienie
Między VCC/2 a
Rzeczywiste Zero
Sieci
Rezystor szeregowy i wejściowa pojemność złącz będzie stanowić
filtr RC, który opóźnia reakcję w stosunku do rzeczywistego
przejścia przez zero.
Rezystor 1 MΩ wraz z pojemności wejściową AVR wprowadza
opóźnienie, które daje bardzo zbliżoną wartośc wykrywania zera
sieci do rzeczywistego przejscia przez z
ero. Dla innych napięć AC
lub rezystorów innej serii zaleca się wykonanie badania za pomocą
oscyloskopu, aby zobaczyć, jakie jest przesunięcie od wykrywania
od rzeczywistego przejścia przez zero. To sprawia, że bardzo łatwo
sprawdzić, czy wykrywanie przejścia przez zero jest poprawne czy
nie. Podłączyć sondę oscyloskopu do sieci, a drugą sądę do PB0.
Prawidłowe wykrycie pokaże gdy na PB0 będzie wysoki potencjał
na krótki okres czasu w każdym opadającym zboczu przejścia
przez zero (patrz rysunek 4 i rysunek 5).
Jeżeli wykrycie zera jest po rzeczywistym prześciu przez zero,
następne przejście powinno być kierowane przez dodanie pewnego
opóźnienia impulsu. Opóźnienie powinno być równe czasowi
pozostałego do następnego przejścia.
Rezystor szeregowy może być używany do modyfikowania tego
opóźnienia w pewnym stopniu do, ale należy pamiętać, że
maksymalny prąd płynący przez diodę przylegania do Avr nie
powinna być większy niż 1 mA.
Uziemiającej masa
powinna być
symetryczna
Masa sieciowa musi być symetryczna do faz w sieci zasilającej.
Ponieważ czujnik wykorzystuje tylko jedną fazę i ziemię, jest to
konieczne dla wykrycia rzeczywistego przejścia przez zero
odpowiednio do trzech faz sieci elektrycznej. Jeśli podstawa nie jest
symetryczna nie jest możliwe określenie, kiedy to przejście
występuje za pomocą tylko jednej fazy. To może być tylko problem
w dla sieci w konfiguracji trójkata. W większości krajów, z wyjątkiem
Norwegii i Albanii (Trójkąt), sieci są konfigurowane w kształcie
gwiazdy w systemie zasilania i nie będzie tego problemu.
Jak obliczyć wolne
przełączniki
(przekaźnik)
Typowym zastosowaniem jest detektor przejścia przez zero może
sterować przekaźnikiem zasilania. Jeśli przekaźniki mają czas reakcji,
który będzie większy niż zwłoka od przesunięcia zera jest jest większa od
rzeczywistej przeprawy jedna technika może być tylko dodanie
odpowiedniego opóźnienia do manipulacji, to znaczy, trzeba wyczuwać
przejście na opadającym zboczu i sprawić, że usytuować impuls od
przekaźnika blisko zera na zboczu narastającym.
Aby to zrobić, czas reakcji przekaźnika i częstotliwość sieci zasilającej
musi być znana. Te wartości mogą być dostarczone od producenta
przekaźnika, lub zmierzone w laboratorium lub w AVR.
AVR 182: Detektor przejścia przez zero
Strona 9/9
Jak obliczyć wolne
przełączniki
(przekaźnik)
Pomiar może być realizowany w oprogramowanie AVR. Stosując
czujnika przejścia przez zero może łatwo próbkować częstotliwość
sygnału i dodajac kilka elementów zewnętrznych może również
korygować pomiaru czasu reakcji przekaźnika. Zapewni to
uniwersalny system, który może dostosować się do niemal każdej
częstotliwość zasilania AC i odpowiedni przekaźnik czasowy.
Będzie również to działac poprawnie w dalszym ciągu, nawet jeśli
czas reakcji przekaźnika lub częstotliwość sieci będzie się zmieniać
w czasie.
tłum.:
saj5