Elektroda.pl
Elektroda.pl
X
Relpol przekaźniki
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia

27 Lis 2009 15:50 27421 73
  • Poziom 22  
    Witam,

    Chcę zrobić fazową regulacje napięcia, aby sterować żarówką.

    Schemat:
    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia

    Kod:

    Code:

    #include <avr/io.h>
    #include <avr/interrupt.h>


    volatile uint8_t g_licznik = 0;
    volatile uint8_t wart = 100; //190 krokow


    SIGNAL(TIMER1_COMPA_vect)
    {
       if(!(PIND & 0x80))  //sprawdzenie, czy tranzystor jest zatkany => napiecie sieci przechodzi przez zero
       {
          g_licznik = 0;
          PORTA = 0x00;

       }   
       else
       {
          if(g_licznik++>wart)  //opoznienie dla zalaczenie triaka
          {
             PORTA = 0x01;
          }
          else
          {
             PORTA = 0x00;
          }
       }
    }

    int main(void)
    {
       DDRA = 0xff; //wyjscia
            DDRD = 0x00;
    //   PORTD = 0xff;
       TCCR1B |= (1 << WGM12); // Ustawia timer w tryb CTC
           OCR1A = 100; // Ustawia wartość pożądaną na 20kHz(50us) dla preskalera 8
       TCCR1B |= (1 << CS11); // Ustawia timer z preskalerem Fcpu/8
       TIMSK |= (1 << OCIE1A); // Zezwolenie na przerwania dla CTC
       sei();
       
       while(1)
       {
       
       }

    }



    Regulacja jasności odbywa sie z rozdzielczością 190 kroków.
    Przerwanie na TIMER1 jest co 50us

    Na poczatek, jako obciązenie podłaczylem zwykle diody(dwie) czerwone przez rezystor 1k, jako zasilanie diod napiecie za transformatora TS2/14(ok 10VAC).

    Diody nie swieca sie w ogole. Moim zdaniem podowdem tego jest to, ze transystor ciagle jest zatkany => g_licznik = 0;
    PORTA = 0x00;

    Wiec optotriak nie jest w ogole właczany.

    Jak poprawic ta detekcje zera?
  • Relpol przekaźniki
  • Poziom 38  
    Kolego, jak już to detektor zera podłącz pod przerwanie np. INT0, INT1 reagujące na Rising Edge, a nie pod normalny port. Układ nie pominie żadnego impulsu jak dobrze rozwiążesz priorytety przerwań.

    Ponadto zauważ, że transformator - jako iż jest indukcyjnością - może wprowadzić Ci niepożądane przesunięcie fazowe.
  • Poziom 22  
    Widzialem uklad do regulacji fazowej napiecia w elektronice dla wszystkich. I wlasnie detekcja zera i opoznienie wlaczenia triaka byla zrobiona w jednym przerwaniu(co okolo 54us). Ja wlasnie chcialem zrobic podobnie.
  • Użytkownik usunął konto  
  • Relpol przekaźniki
  • Poziom 28  
    Ja do portu przetwornika AC wpinałem się poprzez wzmacniacz w konfiguracji wzmacniacza odwracającego o duże imp. wejściowej. Praktycznie bez przesunięć itd. Jak masz sygnał próbkowany to już sprawa prosta wykrycie zera, zaimplementowanie filtru czy cokolwiek innego...
  • Użytkownik usunął konto  
  • Poziom 35  
    Chyba prościej było by tak:
    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia
    Odpada mostek i transformator który jak napisali poprzednicy wprowadzi nie potrzebne błędy w pomiarze detekcji 0.
  • Poziom 17  
    Ja też proponuje Ci podłączyć detekcję zera sieci do INTx, sam tak zrobiłem i jestem bardzo zadowolony z urządzenia.
  • Specjalista - oświetlenie sceniczne
    Wykrywam zero praktycznie tak samo gmiro, nie ma najmniejszego problemuz takim układem, tak że przesuniecia z trafa nie nalezy się bać. Ewentualnie, żeby było cycuś glancuś można go sobie uwzględnić.
  • Poziom 21  
    witam, zbudowałem układ detekcji zera, taki sam jak 3 posty wyżej na schemacie, na układzie LTV814.

    problem mam taki, że ja zamiast ~230V mam ~12V, dałem wiec rezystory 47k zamiast 100k jak na schemacie, jednak nie wykrywam zera.

    nie wiem co może być przyczyną, jaką wartość powinny mieć te rezystory dla 12V wejścia ??

    program testowy ma w przerwaniu zapalić diodę i nic więcej, i gdy ręcznie zewrę pin do GND, dioda się zapala, wiec program działa, gdyby na wyjściu układu pojawiło się GND, to by działało, tylko że sie nie pojawia ...

    byłby ktoś chętny podzielić się sugestiami ??
    (nie mam dostępu do oscyloskopa niestety)
  • Specjalista - oświetlenie sceniczne
    masz 20x mniejsze napięcie... daj 20x mniejszy opornik...
  • Poziom 43  
    mgiro: odwrotnie podłączyłeś triaka. Zamień miejscami anody A1 i A2. I jeszcze dołóż rezystor od G do A1 o wartości 330R.
    O tak:
    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia
  • Specjalista - oświetlenie sceniczne
    A jakie jest w ogóle zadanie 330R
  • Poziom 43  
    Zabezpieczenie przed przypadkowymi wyzwoleniami triaka. Bez niego zakłócenia (a zakłócenia z GSM to szczególnie) mogą wyzwalać triaka kiedy popadnie.
    Ale oczywiście można oszczędzać na tym rezystorze. Tak samo jak na kondensatorach 100nF filtrujących zasilanie.
  • Użytkownik usunął konto  
  • Poziom 22  
    to triak podlączony wg tego schematu nie będzie działać??
  • Poziom 43  
    Nie będzie. Anody A1 i A2 nie są zamienne.
  • Poziom 21  
    bolek napisał:
    masz 20x mniejsze napięcie... daj 20x mniejszy opornik...


    mam 12V podlaczyłem oporniki 4.7KΩ (20 razy mniej niz 100kΩ na schemacie wyżej)

    problem dalej istnieje, dokopałem sie do oscyloskopa, zrobiłem fotke, jakość nie jest najlepsza ale widac co sie dzieje

    1) niebieskie - wyjście z transformatora 230 / 12, nie wiem czemu ta 'sinusoida' jest aż tak zniekształcona, ale to jest sygnał który dostaje ... nic na to nie poradze

    2) zółte, sygnał na wyjściu z LTV814 (idzie do INT0, oraz podciągnięty do 5V przez 1kΩ)

    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia

    GND jest dla obu sygnałów pośrodku 'sinusoidy', tam gdzie żółty prostokącik po lewej.

    i tutaj moje pytanie, bo wyjscie z LTV814, Vmax = 5.12V, ale Vmin = 2.38V
    (zmierzone na oscyloskopie, akurat nie zrobiłem zdjecia pomiaru, ale widać że żółty sygnał nie dochodzi do GND tylko gdzieś do połowy)

    czy powinienem zmniejszyć jeszcze rezystory na wejściu ??, w tej chwili prad jest 12V/4.7KΩ = (+/-) 2.55mA, z noty wyczytałem, że przy 1mA działa, ale maximum było 20mA.



    chciałem sie jeszcze upewnić, do uC podłączam do INT0 na rising edge, tak ma być ?
  • Poziom 43  
    Sinusoida faktycznie masakryczna.
    Rozumiem obcięcie wierzchołów, ale skąd niesymetria względem osi X?
    No i co to za chwila zawahania w okolicach zera (wygląda to tak jak by w tym momencie był włączany triak)?

    Skoro napięcie nie spada do zadowalająco niskiego poziomu to nadal masz za dużą wartość rezystora.
  • Poziom 21  
    atom1477 napisał:
    Sinusoida faktycznie masakryczna.
    Rozumiem obcięcie wierzchołów, ale skąd niesymetria względem osi X?
    No i co to za chwila zawahania w okolicach zera (wygląda to tak jak by w tym momencie był włączany triak)?

    Skoro napięcie nie spada do zadowalająco niskiego poziomu to nadal masz za dużą wartość rezystora.


    tak jak mówiłem, też bylem zaskoczony tym co dostaje z transformatora, takiego dostałem od uczelni, kupiony w TME, normalny toroidalny, wyglada jak wiele innych ;) .

    co do tego zawachania, sam nie wiem skad sie bierze, podczas pomiarów, triak zalaczający zarowke byl caly czas aktywny, zarowka sie paliła caly czas (narazie moge nia sterować ON/OFF bo wlasnie detekcja zera leży).

    bede wtakim razie zmniejszał rezystory, dzięki za odpowiedź
  • Specjalista - Mikrokontrolery
    acid12 napisał:

    czy powinienem zmniejszyć jeszcze rezystory na wejściu ??, w tej chwili prad jest 12V/4.7KΩ = (+/-) 2.55mA, z noty wyczytałem, że przy 1mA działa, ale maximum było 20mA.?


    To masz 1 czy 2 rezystory 4k7?
    Jak 2 to masz 9,4k do tego spadek napięcia na diodzie. Przy 9,4k masz prąd ok 1mA. Biorąc pod uwagę CTR transoptora to tranzystor transoptora może przepuścić nawet tylko do 200uA, co dla rezystora podciągającego o wartości 4k7 daje tylko około 1V spadku napięcia, a to jest za mało. Optymalny prąd IF wynosi 5mA a to przy 12V daje około 2,2k sumarycznej rezystancji. Czyli jeden rezystor 2k2 lub dwa 1k1.
  • Poziom 22  
    atom1477 ale ja używam układu MOC3020(nie ma detekcji zera). To jak wg tego schematu podłączyć zasilanie 230V i obciążenie??

    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia

    bo ten schemat nie jest jednoznaczny
  • Poziom 21  
    jak dla mnie schemat jest jednoznaczny, pisze gdzie podlaczyc faze (HOT), kabel neutralny (NEUTRAL) oraz obciazenie (LOAD)
  • Poziom 22  
    a jak zamienię HOT z NEUTRAL to triak nie będzie działał??
  • Poziom 10  
    atom1477 napisał:
    mgiro: odwrotnie podłączyłeś triaka. Zamień miejscami anody A1 i A2. I jeszcze dołóż rezystor od G do A1 o wartości 330R.
    O tak:
    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia


    Bzdura. To tak, jakby podłączyć odwrotnie wyłącznik jednobiegunowy.Kolejność
    anod nie ma żadnego znaczenia.
  • Poziom 43  
    No to powodzenia w zamianie miejscami anod.
  • Poziom 22  
    A jaki jest najefektywniejszy sposób tłumienia zakłóceń??

    Wiem, że jednym z nich jest filtr:
    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia

    Tylko brak indukcyjności cewki(dławika).

    Słyszałem również, że należy stosować układ "gasikowy" z elementów RC(rezystor z kondensatorem połączone szeregowa) połaczonych równolegle z triakiem. Bo chyba te wartości 39 omów i kondensator o wartosci 0,01 nie sa najlepsze??
  • Poziom 28  
    mgiro napisał:
    Bo chyba te wartości 39 omów i kondensator o wartości 0,01 nie są najlepsze??


    Jeszce raz roszę o wytłumaczenie o co w tym daniu chodzi...

    A najlepszy sposób na zakłócenia to sterowanie grupowe a nie fazowe, jeżeli takie da się zastosować...
  • Poziom 22  
    Detektor zera + MOC3020 + BT136 = Fazowa regulacja napiecia

    Rezystor 39 omow i kondensator 0,01 to uklad zapobiegajacy wzbudzaniu sie triaka??