www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Kako bi pogladil svetilnost LED pri PWM krmiljenju?

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Brusli
Član
Član



Pridružen-a: Tor 24 Nov 2020 12:10
Prispevkov: 141
Aktiv.: 3.41
Kraj: Hrastnik

PrispevekObjavljeno: Ned Okt 31, 2021 4:16 pm    Naslov sporočila:  Kako bi pogladil svetilnost LED pri PWM krmiljenju? Odgovori s citatom

Živjo.

Pri izdelavi svojega PWM krmilnika za LED razsvetljavo sem naletel na težavo. Imam LED verige s predupori, ki se napajajo preko enosmerne napetosti. Svetilnost teh ledik pa reguliram s pomočjo N-kanalnega mosfeta, ki mu na GATE terminal dovajam oglatovalovni signal. Ta signal se generira na 8-bitnem PWM krmilniku in je fiksne frekvence, lahko pa mu spreminjam vrednost duty-cycle od 0 do 255. S spreminjanjem duty-cycle stopnje reguliram kakšen delež periode oglatovalovnega signala so ledike prižgane oz. izklopljene (in posledično tudi njihovo svetilnost). Nižja kot je ta stopnja, manjša bo svetilnost ledik. V priponki je poenostavljena shema tega vezja.

Težava pa je sledeča. Ko svetilnost po korakih manjšam z nižanjem stopnje duty-cycle in eventualno prispem do vrednosti 1, bodo ledike še vedno svetile pre močno! Naslednja nižja vrednost pa je 0 in ta povzroči, da se ledice popolnoma izklopijo nakar dobim čisto temo. Se pravi, problem je, da je sprememba svetilnosti med stopnjo 0 in 1 pre velika. Žal tukaj ne morem uporabiti vmesne stopnje svetilnosti na 8-bitnem PWM krmilniku, saj je stopnja 1 od 255 najmanjša možna nastavitev, stopnja 0 pa je že tema. Pričakoval bi, da ledike pri stopnji 1 še morda ne svetijo, pri stopnji 2 svetijo očesu komaj opazno, pri 3 svetijo čisto malo, korak 4 svetijo malenkost bolje, itd, pri koraku 10 pa svetijo toliko, kot sedaj svetijo pri stopnji 1. Skratka spremembo svetilnosti med stopnjo 0 in 1 bi želel pogladiti oz. razširiti na 10 ali več korakov.

Ima kdo kakšno ideja kako bi se lotil tega? Think
Po možnosti brez zamenjave PWM krmilnika za drugega.

lp



krmiljenje.gif
 Opis:
Krmilno vezje

Download
 Ime datoteke:  krmiljenje.gif
 Velikost datoteke:  3.73 KB
 Downloadano:  20 krat

Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjang
Član
Član



Pridružen-a: Tor 03 Jan 2006 15:29
Prispevkov: 3172
Aktiv.: 14.25
Kraj: Postojna

PrispevekObjavljeno: Ned Okt 31, 2021 6:41 pm    Naslov sporočila:   Odgovori s citatom

Uporabi več bitni PWM. Glede na nizko zahtevano frekvenco PWM in relativno visoko frekvenco ure mikrokrmilnika, je lahko precej več kot 256 stopenj. Tudi 8-bitni mikrokrmilniki imajo pogosto 16-bitni PWM.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mosqito
Član
Član



Pridružen-a: Čet 07 Apr 2016 23:22
Prispevkov: 3234
Aktiv.: 33.10

PrispevekObjavljeno: Ned Okt 31, 2021 10:14 pm    Naslov sporočila:   Odgovori s citatom

Uporabiš lahko tudi SPI vodilo namesto PWM in na vsake 4 bajte pošlješ en bit na "1". Frekvenca PWM pri 32MHz SPI je tako lahko 1MHz. Še vedno pa lahko uporabiš 256korakov za LED, le da narediš malo bolj nelinearno karakteristiko. Priporočam pa uporabo DMA, da hardver dela sam brez CPU.
_________________
Always going the extra mile.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Brusli
Član
Član



Pridružen-a: Tor 24 Nov 2020 12:10
Prispevkov: 141
Aktiv.: 3.41
Kraj: Hrastnik

PrispevekObjavljeno: Ned Okt 31, 2021 10:48 pm    Naslov sporočila:   Odgovori s citatom

Kaj pa kakšna analogna rešitev glajenja?

Našel sem nek predlog, kjer so porabniku dodali filter oz. vezje nadgradili na neke vrste buck step-down pretvornik, ki je tiste PWM pulze pogladil v enosmerno napetost. Nisem čisto prepričan kako bi tole funkcioniralo, vendar pa je simulacija v LTspice pokazala precej nelinearno zvezo. Štos bo, da bodo od samega porabnika odvisne tudi posamezne komponente filtra (npr, če ledikam spremenim tokovno porabo, se bo krivulja svetilnosti spremenila).

https://electronics.stackexchange.com/questions/184941/smoothing-a-high-current-pwm
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Jan
Član
Član



Pridružen-a: Sob 10 Jun 2006 14:19
Prispevkov: 313
Aktiv.: 1.44
Kraj: Dolenjska

PrispevekObjavljeno: Pon Nov 01, 2021 7:57 am    Naslov sporočila:   Odgovori s citatom

Najbolj elegantno boš to rešil na nek softwarski način kot so ti predlagali ostali.
Če pa vztrajaš na hardwarski rešitvi, lahko poskusiš tole, je hitro in enostavno za narediti test.

RC filter pred krmilnim pinom tranzistorja zmanjša hitrost naraščanja in padanja krmilnega signala, tako da pri kratkih pulzih tranzistorja dejansko ne odpre do konca.
S tem boš pri kratkih pulzih dosegel manjšo moč na LED, pri daljših pulzih pa to ne bo opazno vplivalo na obliko signala in končno povprečno moč.
Res da se ti bo tranzistor malo bolj grel, ampak mislim da ne bo pretirano, sploh če nimaš velikega toka na ledicah.

Na grafih je prikazana moč na bremenskih uporih (rumena s filtrom, zelena brez) z LED bo dejansko nekoliko drugačno to razmerje moči,
tako da moraš malo poskusiti kakšen RC filter bo ustrezen.

Jan



PWM f-100Hz dc-1od255.png
 Opis:
 Velikost datoteke:  44.13 KB
 Pogledana:  12 krat

PWM f-100Hz dc-1od255.png



PWM f-100Hz dc-127od255.png
 Opis:
 Velikost datoteke:  43.85 KB
 Pogledana:  6 krat

PWM f-100Hz dc-127od255.png


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Brusli
Član
Član



Pridružen-a: Tor 24 Nov 2020 12:10
Prispevkov: 141
Aktiv.: 3.41
Kraj: Hrastnik

PrispevekObjavljeno: Pon Nov 01, 2021 10:32 am    Naslov sporočila:   Odgovori s citatom

Jan, hvala za info.

Štos je, da za generiranje PWM ne uporabljam mikrokrmilnika ampak ločeni oz. namenski I2C PWM krmilnik z več 8-bitnimi izhodi (8), ker jih moj mikrokrmilnik (atmega328) nima dovolj. Zato pač iščem hardware rešitev, ker v tej konfiguraciji software rešitev ne pride v poštev.

Tvoj predlog sem že preizkusil, kjer sem paralelno mojemu R3 dodal različne kondenzatorje in opazoval kako se svetilnost obnaša pri spreminjanju duty-cycle. Ugotovil sem, da dodatni kondenzator nekako razširi oz. pogladi spodnji del svetilnosti, vendar pa ima še stranski učinek, da zamakne tudi stopnjo maksimalnoe svetilnosti navzdol. Se pravi, da bodo ledike svetile že z polno močjo, ko bo duty-cycle nastavljen na cca 65% namesto na 100%. To pa mi je uspelo "rešiti" tako, da sem paralelno R2 na mojemu vezju dodal še schottky diodo, ki pospešuje le praznjenje kondenzatorja in posledično izklop mosfeta. Dosegel sem, da se je maksimalna svetilnost pomaknila proti 95% duty-cycle.

Sicer še vedno ni idealno, ampak se mi zdi še najbolj enostavna rešitev.
Poigrati se bom moral še z vrednostmi RC.

lp
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjang
Član
Član



Pridružen-a: Tor 03 Jan 2006 15:29
Prispevkov: 3172
Aktiv.: 14.25
Kraj: Postojna

PrispevekObjavljeno: Pon Nov 01, 2021 10:58 am    Naslov sporočila:   Odgovori s citatom

Bolj zapletena rešitev bi bila analogna regeneracija PWM. Obstoječi signal sfiltriraš v DC s katerim potem preko ustrezne karakteristike krmiliš nov generator PWM. V enem pretvorniku jaz uporabljam TimerBlox LTC6992. Pri analognih rešitvah se hitro pojavi problem točnosti, torej ali bo nastavitev 1 res pomenila minimalno svetenje, ali bo takrat že ugasnjeno.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 67 dni


Powered by phpBB © 2001, 2005 phpBB Group