[ burex @ 07.11.2013. 19:42 ] @
| Prijatelju sam pravio sistem da daljinskim može da dimuje par LED traka.
Koristio sam 12V sa računarskog napajanja, gomilu LED traka, IRF540 MOSFETe za pojačavanje i PWM izlaze na Arduinu. Tu je i klasičan TSOP1738 za IR, ali to je manje bitno. U pitanju je Arduino Mega, a pošto mi je zafalilo PWM izlaza, koristio sam i SoftPWM biblioteku (da se od digitalnih izlaza može napraviti PWM izlaz, npr.).
Kada su svi kanali pojačani na 100%, sve je ok. Na 70%, isto sve ok. Na 40%, može proći... ali već kada se dođe do 30, 20 i 10%, počinje par traka da treperi. Kod nekih se vidi veoma jasno treperenje, dok kod nekih nimalo. Napon na 12V izlazu računarskog napajanja jeste oko 10V kada su svi kanali na 100%, a kada su svi kanali stišani na 10%, onda je oko 12V (12,1V kada sam merio).
Nisam siguran, nemam osciloskop, ali da li postoji mogućnost da Arduino ne može na svim kanalima da napravi kvalitetan PWM izlaz pa dolazi do treperenja? Ili ja sa IRF540 pravim rusvaj pri pojačavanju? Da li bi mogao ovo da rešim sa nekim jačim elektrolitskim kondenzatorima pa da ispegla izlaz, ili...? |
[ mikikg @ 07.11.2013. 19:54 ] @
IRF540 su prilicno "teski" fetovi, kapacitivnost gejta je 1700pF, to je bas puno i to ne moze da se "gura" iz izlaza nekog kontrolera nego moras da imas nesto jace, ili neki tranzistor ispred (najbolje push-pull veza) ili vec neki "pravi" drajver za tranzistore, neki IR21xx IC ili slicno.
Kada imas resen dobar drajv onda mozes da ides na vecu ucestanost PWM-a da bi izbego to treperenje.
Probaj IRF510, to je dosta "laksi" tranzistor, ima manju kapacitivnost gejta pa je samim tim i brzi.
U svakom slucaju bi ti znacilo da imas osciloskop da pogledas malo krivuljice na gejtu i na izlazu.
Problem je (verovatno) taj sto se tranzistor zbog spomenute kapacitivnosti ne zatvori totalno, jer ima dugacak slope dizanja napona na gejtu. Kada je jaci drajv to vreme slope-a se smanjuje i onda kod kraceg duty-ratio moze ipak da se skroz zatvori.
Eto odakle onda potrebe za 1A ili 4A drajv-a za gejt! ;)
[ magnat @ 07.11.2013. 19:58 ] @
Samo stavi 2k2 izmedju gejta i sorsa na fetu.
[ mikikg @ 07.11.2013. 20:13 ] @
Mozda pomogne taj otpornik, malo … Ali nesto nisam siguran …
Kada se radi sa PWM preko nekoliko kHz (za preko 20-30kHz tek da ne pricam), drajver za MOSFET je OBAVEZAN.
Mnoooogo struje treba da bi se savladala ta kapacitivnost pri tim ucestanostima. Amperi su u pitanju!
Takodje je bitno i gasenje tranzistora, opet struje reda ampera!
[ burex @ 07.11.2013. 20:17 ] @
Hvala obojici... Pokušaću sa magnatovim predlogom prvo jer je jednostavniji.
Samo mi reci molim te, kada kažeš 2k2, na šta konkretno misliš? (nisam upoznat sa terminologijom  )
[ mikikg @ 07.11.2013. 20:19 ] @
2k2 = 2.2kΩ = 2200Ω
[ burex @ 07.11.2013. 20:22 ] @
Da li će to smetati 5V PWM/TTL izlazima na Arduinu koji su povezani na gate?
[ mikikg @ 07.11.2013. 20:30 ] @
Hmm, nece da smeta taj otpornik, nego sad me podseti, pa tu je 5V izlaz, to ne moze da potpuno aktivira MOSFET iz serije IRF5xx!
Treba oko 10-ak V da imas …
Tebi sad taj tranzistor radi u nekom polu-linearnom rezimu, ko zna nasta lici napon iza njega … Od "cetvrtke" nema ni govora!
Mora drajver da stavis ili batali te MOSFET i uzmi neke darlington tranzistore poput BDX33 ili slican.
Otpornik za bazu tog darlingtona racunas na sledeci nacin:
Rbaza = 5V - 1.4V / 0.01A.
Ovo 1.4V je zaporni napon darlingtona, 0.01A je maksimalna dozvoljena struja na izlazu iz kontrolera (10mA).
[Ovu poruku je menjao mikikg dana 07.11.2013. u 21:40 GMT+1]
[ burex @ 07.11.2013. 20:44 ] @
Shvatio sam poentu... samo nisam znao da će biti treperenja. Pošto već imam zalemljeno sve na neku pločicu od tih IRFova sa gomilu klemni, lakše će mi biti da ih pobudim sa nečim drugim.
Koji mosfet driver biste mi predložili? Ili pak koje tranzistore? Pa da se bacim na posao...
[ mikikg @ 07.11.2013. 20:55 ] @
Kriticniji su ti drajveri od tranzistora, ako imas dobar drajver mozes bilo koji MOSFET da stavis.
Potrazi "low-side drivers", sta god da ima kod nas da se kupi. 1A drajver ce zavrsiti posao.
http://store.comet.rs/Catalogu...pbIjEyMDgwOCJdLCJpcHAiOiIxMCJ9
Naravno ovo sa drajverom vazi pod uslovom da tu imas i nekih 12 - 18V izvor sa kojim napajas sam drajver.
[ burex @ 07.11.2013. 21:04 ] @
Imam 12V sa druge grane na računarskom napajanju, poslužiće.
Hvala lepo :)
[ mikikg @ 07.11.2013. 21:25 ] @
Drajveri su zakon za PWM, posebno kada to predje nekoliko kHz.
Ja sam skoro nesto narucio od kolege iz inostranstva da mi donese "nesto", nisam narucivao ni racunare, telefone ovo-ono nego brate djavere za MOSFET i decoupling SMD kondenzatore za te PWM primene :) Nista mi vise sem toga ne treba ;)
HIP4081 i jos neke "zesce" od SiLabs … Nista slicno nema kod nas da se kupi, osim klasike porucivanja iz inostranstva i "izuvanja" oko troskova.
[ ZAS011 @ 07.11.2013. 21:28 ] @
Umesto IRF5xx stavi IRLZx4.
Između gejta i sorsa otpornik od cca. 2k2, između pina Arduina i gejta otpornik reda desetak oma, čisto da ti MOSFET ne ubije pin od kontrolera prevelikom strujom prilikom "punjenja" gejta.
To radi bez ikakvih low side drajvera sasvim lepo.
Kod mene konkretno PIC12F617 + IRLZ44N + 72W LED trake, natural bele, + neki TSOP za IR.
Dimovanje od 0 do 255, nigde nema treperenja (HPWM, podrazumevano)
Za "igranje" sa RGB LEDarama Atmega8535, 9 PWM kanala sa IRLZ44N, softverskih, nikakvo treperenje prilikom dimovanja (DMX komunikacija).
[ burex @ 07.11.2013. 21:50 ] @
Vidiš... Ovo je "logic-level" MOSFET. Ima li IRLZ kod nas da se kupi? Ne nađem ništa... Može i na PM :)
[ goran_68 @ 07.11.2013. 21:57 ] @
[ mikikg @ 07.11.2013. 22:51 ] @
Na kojoj PWM freq moze ta kombinacija logic-level sa 20mA izlazom iz kontrolera da radi?
[ ZAS011 @ 08.11.2013. 09:06 ] @
Na način kako ih ja imam povezane, bez totem pole drajvera (low side) funkcioniše do par kHz. Ionako PIConja i "puni" i "prazni" gejt, dodatnih 2k2 mu pripomogne kod pražnjenja.
Umesto trimera se stavi TSOPxxxx i ...
[ mikikg @ 08.11.2013. 09:19 ] @
U redu, jasno, hvala na odgovoru.
Za LED to moze da prodje, za neke moje druge (smps) potrebe je to presporo, no nije lose da se zna.
Mali problem je u tome sto je kod tih logic-level MOSFET i dalje prilicno veliki Total Gate Charge, cak recimo duplo veci nego kod IRF510, tako da je i dalje potrebna poveca struja za vece PWM brzine, nebitno sto su oni logic-level.
[ ZAS011 @ 08.11.2013. 10:15 ] @
Naravno, za svaku primenu postoji "odgovarajuće" low cost rešenje 
[ magnat @ 08.11.2013. 12:03 ] @
Evo dobrog poredjenja za uslugu koja se moze primeniti na Fetove i drajvovanje (uh kakva rec).

[ magnat @ 08.11.2013. 12:19 ] @
Evo jedne mogucnosti za drajvovanje feta.

[ mikikg @ 08.11.2013. 12:27 ] @
Da, moze tako. To je najprostija varijanta ali ce da radi fino i za nekoliko desetina kHz.
Mozda samo jedan 10ohm otpornik redno sa gejtom da se ipak malo ogranici struja i to je to.
Dodatno, nebi bilo lose (nije moranje) da se postavi jedna redna prigusnica sa LED od 100uH, da ogranici struju kroz LED jer ako izvor od 12V "pobegne" (poveca se napon) moze da osteti LED bez obzira ako je PWM na nekom niskom duty-ratio.
[ magnat @ 08.11.2013. 15:35 ] @
Verovatno si mislio neshto ovako.

[ burex @ 26.11.2013. 05:51 ] @
Da samo završim priču... Ubacio sam par IRLZ44N na način kao što ste opisali, ali je problem ostao isti.
Posle višesatnog njakanja i isprobavanja drugih napajanja, uzeo sam da menjam source code u SoftPWM biblioteci i da podešavam koliko CPU ciklusa koristi tako da treperenje nestane, a 2 kanala koja su bila na klasičnom AnalogOut PWM-u (timer1 ih radi, ako se ne varam, a nisam koristio Serial) sam prebacio na SoftPWM i sad radi odlično, a inače su imali neopisivo dosadnu fadein-fadeout ritmiku.
Ono što je naravno bitno jeste da je IRLZ44N prava stvar za ovo, iako stari IRF540 u suštini hoće da radi, IRLZ44N daje jači izlaz i lepše se da podesiti pošto ga odlično okida 5V PWM sa Arduino izlaza.
Hvala na pomoći!
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|