Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Pytanie o PWM o częstotliwości 100kHz [mega8][Bascom]

elektor18 29 Mar 2011 11:11 3452 12
  • #1
    elektor18
    Level 18  
    Witam
    Chce zrobić generator PWM do półmostka H (Half-Bridge) sterującego dwoma mosfetami w typowy sposób dla półmostka czyli że gdy górny załączony, dolny wyłączony a między tymi stanami czas martwy. Chciałem zrobić to na timerze Timer1 ale jest problem z częstotliwością bo potrzebuję minimum 60kHz a najlepiej 100kHz. Ma ktoś jakiś pomysł/podpowiedź jak to zrealizować?
  • #2
    nsvinc
    Level 35  
    NA ATMEGACH NIE ROBI SIĘ ELEKTRONIKI MOCY!!. Chcesz zbudować pełny mostek, pracujący z częstotliwością 100kHz i sterować tym 8bitowym klockiem który w najmniejszym stopniu nie jest przystosowany do sterowania takimi układami. Ten procesor nie będzie w stanie obsłużyć praktycznie żadnych zabezpieczeń, a na stabilizację napięcia lub prądu (PID itp.) jest zdecydowanie za wolny przy założonej częstotliwości.

    Peryferium Timer1 nie obsługuje deadtime'ów. W efekcie czego skopcisz tranzystory...
    PWM wygenerowany tym timerem przy 100kHz będzie miał kilka bitów rozdzielczości
    , i jeśli chcesz użyć tego mostka do przetwornicy, to zapomnij, że będzie to chodzić prawidłowo...

    Weź odpowiedni procesor do tego zastosowania: np. dsPIC33FJ16GS502. Ja na tym procku szóstego SMPSa niedawno zbudowałem...
  • #3
    elektor18
    Level 18  
    A jakaś inna rada prócz tej o której wiadomo (że ten uC się nie bardzo nada do tego...), tzn. mam na myśli czy są może jakieś układy I2C o wyższych częstotliwościach niż ten procek? A kolejne pytanie to jak wymusić Fast PWM na mega8 w Bascom bo chyba standardowo jest z korekcją fazy?
  • #4
    nsvinc
    Level 35  
    Nie ma scalaków na i2c do sterowania przetwornicami. Napisz dokładnie co chcesz sterować tym mostkiem...Trafo? Głośnik? Silnik...?
  • #5
    elektor18
    Level 18  
    Chce sterować kluczami przetwornicy poprzez PWM i musi to być sterowanie cyfrowe. To jak z tym Fast PWM w Bascom? Da się włączyć ten tryb?
  • #6
    nsvinc
    Level 35  
    Czyli jednak przetwornica.... Zrozum moje słowa, że nie zbudujesz ani nie uruchomisz pełnego mostka sterowanego atmegą i softem w bascomie!. A już na pewno nie przy 100kHz! Heh, czy ty wogóle zdajesz sobie sprawę z poziomu trudności budowy takiej konstrukcji?

    Potrzebujesz do takiej przetwornicy następujących:
    - precyzyjny DPWM z zegarem conajmniej 80MHz
    - obsługa deadtime
    - wyjścia komplementarne chodzących z tego samego zegara
    - cyfrowy current monitor z override'm stanów wyjść PWM
    - dwa lub trzy kanały bardzo szybkiego ADC, minimum 1Msps
    - jeśli chcesz wykorzystać trafo sterujące zamiast scalonych driverów, musisz mieć choppery na wyjsciach PWM do kluczowania tego trafa
    - Leading Edge Blanking, bez tego będziesz łapać OC lub fault wtedy gdy tak naprawdę wogóle nie wystąpiła taka sytuacja (impulsy przy załączaniu i wyłączaniu tranzystorów)

    A tak poza tym, to aby zaimplementować cyfrową pętlę kontroli prądu i napięcia, musisz mieć szybki procesor i znać conajmniej podstawy asemblera tego procesora. No i musisz mieć sporą wiedzę na temat przetwornic. Inaczej będziesz tylko palił tranzystory...

    Co do PWM w atmedze i bascoma, niestety nie pomogę, bo nie znam ani jednego ani drugiego. To zupełnie nie ten stopien wtajemniczenia, który jest wymagany do budowy takiej przetwornicy.

    Jak chcesz zrealizować podstawowy control w tej przetwornicy? Prąd średni, prąd szczytowy czy napięcie wyjściowe?
    Jak chcesz sterować tranzystorami mocy?
    Jaki przewidujesz tryb pracy ciągłej, CV czy CC?

    Ja na początek radziłbym ci zbudować jednotranzystorowy forward przy 30kHz...mniej tranzystorow do zjarania, i znacznie prostsza budowa...
  • #7
    ZbeeGin
    Level 39  
    nsvinc wrote:
    NA ATMEGACH NIE ROBI SIĘ ELEKTRONIKI MOCY!!. Chcesz zbudować pełny mostek, pracujący z częstotliwością 100kHz i sterować tym 8bitowym klockiem który w najmniejszym stopniu nie jest przystosowany do sterowania takimi układami.
    (...)
    Peryferium Timer1 [b]nie obsługuje deadtime'ów. W efekcie czego skopcisz tranzystory...

    Tak się wtrącę. Proszę sobie zajrzeć do noty katalogowej ATTiny26 i jego młodszych braci ATTiny261/461/861. Ciekawe po co robili taki zaawansowany Timer i PLL taktujący ten licznik?
  • #8
    janbernat
    Level 38  
    No i programowany deadtime i ADC o znacznie lepszych parametrach niż reszta rodzinki AVR.
    Z tym że tak bezpośrednio z Bascoma to sie nie da tego ustawić.
    Trzeba pod Bascomem sięgnąć bezpośrednio do rejestrów.
  • #9
    nsvinc
    Level 35  
    ZbeeGin wrote:
    Proszę sobie zajrzeć do noty katalogowej ATTiny26 i jego młodszych braci ATTiny261/461/861. Ciekawe po co robili taki zaawansowany Timer i PLL taktujący ten licznik?

    Autor tematu chce budować tą przetwornicę na atmega8, nie attiny26. Poza tym, co z tego że attiny26 ma troszeczkę bardziej zaawansowany timer od reszty... A deadtime jakoś nie zauważyłem...

    Komparator nie potrafi override'ować PWMów, ani nie ma wewnętrznego DAC. Duży minus...

    A control? Co można zrobić z ADC który wypluje sampel co max 13us?... Jak zaawansowaną pętlę kontroli da się napisać na 8bitowym, 16DMIPSowym procku gdy przetwornica ma chodzić z częstotliwością 100kHz (dużo!)?
    Kontrola prądu cykl-w-cykl odpada prosto z wejścia, pozostaje pomiar prądu średniego (+ stabilizacja Vout). A tu zonk, bo przetwornik zużywa 13us na pomiar a jeszcze trzeba uśredniać, więc reakcja na OV/OC będzie ślimacza...
    A bez kontroli prądu szczytowego transformatora co cykl jakiekolwiek anomalie doprowadzają do natychmiastowego wybuchu tranzystorów.

    Na tym attiny to można sobie zbudować synchroniczny buck z minimalną ilością zabezpieczeń (lub zupełnie bez nich) i pracujący z częstotliwością kilkudziesięciu kHz. Nie 100kHz...

    BTW, ciekawe z jakim napięciem ma pracować ten półmostek...bo chyba nie sieciowym?
  • #10
    janbernat
    Level 38  
    elektor18 wrote:
    Chce sterować kluczami przetwornicy poprzez PWM i musi to być sterowanie cyfrowe. To jak z tym Fast PWM w Bascom? Da się włączyć ten tryb?

    Jak to na zal. to się da.
    Nie ma sensu robić z tego 100kHz i w dodatku z sieci.
    Choćby z powodu ceny- ale nie tylko.
    Ale 10kHz z jakiegoś bezpiecznego napięcia zrobić się da.
    W celach dydaktycznych.
    Chociażby po to aby to wszystko obliczyć, połączyć poszczególne bloki- ADC, PWM, rejestry deadtime itd.
    Policzyć ograniczenia czasowe, rozdzielczość ADC, deadtime itp.
    Można to wszystko ładnie pokazać na oscyloskopie.
    A potem uzasadnić dlaczego lepiej zastosować dedykowany układ tylko do przetwornicy.
    Albo nie- bo układ ma być tylko jeden i poza sterowaniem przetwornicy ma mieć czas aby jeszcze coś robić.
    Chociaż w to akurat trochę wątpię.
  • #11
    elektor18
    Level 18  
    To ma być do przetwornicy Buck-Boost (DC/DC) czyli tylko przy stałym napięciu do tego max 22V (od 6V do 22V) na wejściu i stale 14V na wyjściu.
  • #12
    nsvinc
    Level 35  
    A jaką moc ma przenosić przetwornica? W buck-boost coś nie widzę ani trafa ani miejsca na zastosowanie półmostka...
  • #13
    elektor18
    Level 18  
    Bo to będzie synchroniczna przetwornica (zamiast diody w klasycznym układzie jest drugi tranzystor). Moc do 150W.