background image

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. 

 

 

background image

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

background image

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.

background image

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. 

background image

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). 

 

background image

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. 

background image

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.

 

background image

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.

 

background image

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