piątek, 18 marca 2016

Kodzenie na fazie - PWM dla odważnych

Powrót do przeszłości

Post o Fast PWM przypomniał mi pewną rzecz, którą popełniłem w ramach pracy inżynierskiej.

Tematem pracy był "Moduł sterowania Inteligentnego Domu sterowany z urządzenia z systemem Android za pośrednictwem Bluetooth.", co sprowadziło się do podpięcia modułu Bluetooth do płytki STM32 Discovery, napisania prostej aplikacji na Androida i zaprojektowaniu układu wykonawczego dla całego modułu. I gdzie tu miejsce na Fast PWM?

Moduł umożliwia sterowanie fazowe oświetleniem - co dla użytkownika oznacza rozjaśnianie i przyciemnianie żarówki :) I to wszystko jest możliwe z poziomu telefonu z Androidem - wypas!

I przy odrobinie (nie)szczęścia może nas porazić prąd... Zatem pokrętło ostrożności ustawiamy na max i do dzieła!

Sterowanie fazowe oświetleniem

Sterowanie fazowe oświetleniem polega na „wycinaniu” z sinusoidalnego przebiegu napięcia odpowiedniego fragmentu. Układ wykrywa moment przejścia sinusoidy przez zero i odlicza czas, po jakim zostanie załączony triak. Im większy czas, tym moc dostarczona do urządzenia zewnętrznego będzie mniejsza. Na poniższym wykresie zaznaczono 2 sytuacje – pierwsza, gdy czas oczekiwania na załączenie triaka jest bliski ½ T (dla zasilania sieciowego 230V 50Hz jest to 20ms), do urządzenia zewnętrznego podawana jest mała moc – ok. 10%, dla drugiego przypadku – przy opóźnieniu załączenia bliskim 0 – moc dostarczona do urządzenia jest zbliżona do maksymalnej.

Sterowanie fazowe. Źródło: Elektronika Praktyczna


Realizacja sprzętowa

Układ wykonawczy (po prawej 2 zestawy triak-optotriak odpowiedzialne za sterowanie oświetleniem)


Schemat układu wykrywającego "przejście sinusoidy przez zero"


Do złącz ACIN1 i ACIN2 doprowadzone jest napięcie zasilania 12 VAC z zewnętrznego transformatora. Na anodę diody transoptora OK6 podawane jest napięcie wyprostowane za pomocą mostka Graetza B2. W momencie, gdy sygnał osiąga wartość 0, tranzystor transoptora nie przewodzi – sygnał ZERO wyzwala przerwanie w układzie sterującym.
Schemat układu sterującego oświetleniem

A kodzik?

Sygnał OSWIETL1 podawany na anodę optotriaka U$1 pochodzi z mikrokontrolera. Jest aktywny w momencie, gdy triak T3 powinien przewodzić. 17 Do złącz P$2 i P$3 należy podpiąć obciążenie. Sugeruje się także wpięcie zewnętrznego filtra RC, który zmniejszyłby zakłócenia powodowane dużą częstotliwością przełączania triaka. 

Sygnał zero podpięty jest do pinu mikrokontrolera skonfigurowanego jako wejście zewnętrznego przerwania. W momencie, gdy przerwanie zostanie wyzwolone, zerowana jest zmienna bulbCounter, która przechowuje czas, jaki upłynął od momentu przejścia przebiegu sinusoidalnego napięcia przez zero. Timer mikrokontrolera skonfigurowany jest tak, by generować przerwanie co 1 mikrosekundę. W momencie wyzwolenia przerwania inkrementowana jest wartość zmiennej bulbCounter i porównywana z wartością zmiennej brightness, która przechowuje zadaną przez Użytkownika jasność żarówki (w skali od 0 do 100). Jeżeli wartości obu zmiennych są równe, optotriak załącza triaka, w przeciwnym wypadku triak nie przewodzi prądu.

W poprzednich postach pokazałem, jak można obsłużyć zewnętrzne przerwanie i zmienić stan wyjścia. Podpinając ten układ do Atmegi i biorąc poprawkę na prawidłową wartość rezystora R3 możemy pobawić się żarówkami w naszym domu.




Brak komentarzy:

Prześlij komentarz