Domaći drajver za LED lampu. USBISP - prenesite svoj firmver na baterijsku lampu. Ugradnja LED-a umjesto žarulje sa žarnom niti

Ova recenzija će zanimati uglavnom one koji vole da završe i preprave kineske lampione.

Govorimo o jednom modu 15mm 3W LED drajvera. Evo linka za proizvod na FocalPrice. Za one koji su nestrpljivi i upućeni, odmah ću reći da je drajver normalan, dobro radi i relativno je jeftin (nisam našao jeftinije, ali sam birao iz relativno malog broja prodavnica ). Pa, detalji su ispod.

Nakon kupovine svjetiljke Sipik SK58, koja se napaja baterijom ili baterijom veličine AA, više puta sam pomislio da LED u njoj ne svijetli punom snagom. Štoviše, opterećenje na staroj NiMH bateriji prelazi granice pristojnosti (sa svježe napunjenom baterijom, struja je oko 1 A - baterija je već bila stara 5 godina, zašto je toliko forsirati). Stvar je u tome da je za napajanje LED dioda potreban napon od oko 3,4 - 3,6 V, dok NiMH baterija u svježe napunjenom stanju proizvodi oko 1,4 V (moja je jedva dostigla 1,2), a kako se prazni, napon može pasti kao čak 0,9 V (možda niže, ali tada baterija brzo gubi kapacitet). Stoga ova svjetiljka sadrži LED drajver za povećanje, tj. ploča koja pretvara napon baterije u istih 3,4 - 3,6 V. Istovremeno, Sipik drajver ne pokušava regulisati struju kroz LED - on daje napon koji se ispostavi (na osnovu napona baterije), i šta god da se desi.LED dostiže maksimalnu efikasnost tek pri određenoj radnoj struji npr.bela LED sa snagom od 1W - pri struji od 350mA.Struja kroz LED u mom slučaju je bila manja.

Odlučio sam da promijenim drajver u baterijskoj lampi iz step-up u step-down, i zamijenim NiMH bateriju litijum-jonskom baterijom veličine 14500. Litijum-jonske baterije imaju napon od oko 3,6 - 4,2 V, što je vrlo pogodan za napajanje bijelih LED dioda. Driver u ovom slučaju stabilizira struju kroz LED.

Drajver sam pronašao na FocalPrice-u, birao iz nekoliko prodavnica - pri kupovini tri ploče cijena od FP-a je bila znatno niža nego u drugim trgovinama.

Ploča drajvera sadrži tri AMC7135 čipa, od kojih svaki daje struju od 350 mA. Ukupna struja je, prema tome, jednaka 1050 mA (mikrokrugovi se mogu spojiti paralelno - ovako su povezani na ploči). Odlučio sam da LED napajam strujom od 350 mA (snaga 1 W), pošto nije bilo tačnih podataka o LED diodi, a prema indirektnim dokazima (navedena svjetlina svjetiljke) trebala bi biti od jednog vata. Struju koja mi treba je obezbeđena od jednog AMC7135 čipa, tako da sam jednostavno otlemio dva od tri čipa sa ploče i koristio ih u drugim rasvetnim uređajima (posebno u faru za bicikl, koji je ranije imao balastni otpornik umesto drajvera) . Ploča drajvera savršeno se uklapa u baterijsku lampu i sija znatno jače nego sa AA baterijom i originalnim drajverom.

Ovako izgleda vozač na odgovarajućem mjestu rastavljene svjetiljke:

Nisam mogao da ga izvadim odatle - čvrsto je zaglavio :).

Ovako izgleda drajver 7135 (levo) u poređenju sa matičnim Sipik boost drajverom (desno).

I iz drugog ugla - ako vas zanima, možete pročitati natpise na mikro krugovima:

Vidi se da Sipik drajver preuzima napajanje iz kućišta baterijske lampe sa strane na kojoj se nalaze mikro kola - uz ivicu ploče postoji prsten, ali ga AMC7135 drajver nema (već je na zadnjoj strani) Zbog toga sam morao da zalemim komad bakarne folije, omotan preko ivice ploče (vidi se na prvoj fotografiji gore desno). Pa ovo je posao pola minuta - čak i ako je telo vaše baterijske lampe ne dolazi u kontakt sa zadnjom stranom ploče, drajver se može koristiti nakon takve modifikacije.

Dvije preostale ploče iz narudžbe koristim kao izvor AMC7135 čipova, što se pokazalo da nije baš lako kupiti u maloprodaji.

Ako planirate kupiti ovaj drajver, budite oprezni: u posljednjim komentarima kupaca na FocalPriceu spominje se da su sada na ploči samo dva čipa, a struja će, shodno tome, biti 700 mA, a ne 1050 mA. Cijena je također smanjena u odnosu na onu po kojoj sam ga kupio (moja cijena bulkrata je bila 1,61 dolara, sada je 1,07 dolara) - možda je to upravo zbog nepostojanja jednog mikrokola.

Dugo sam gledao ove čipsove. Vrlo često nešto lemim. Odlučio sam da ih uzmem za kreativnost. Ova mikro kola su kupljena prošle godine. Ali nikada nije došlo do toga da ih se koristi u praksi. Ali ne tako davno, moja majka mi je dala svoju baterijsku lampu, kupljenu van mreže, da popravim. Vežbao sam na tome.
Narudžba je uključivala 10 mikrokola, a stiglo je 10.


Plaćeno 17. novembra, primljeno 19. decembra. Došao u standardnoj vrećici sa mehurićima. Unutra je još jedna torba. Išli smo bez staze. Iznenadila sam se kada sam ih pronašla u svom poštanskom sandučetu. Nisam ni morao da idem u poštu.


Nisam očekivao da su tako mali.

Naručio sam mikro kola za druge svrhe. Neću dijeliti svoje planove. Nadam se da ću imati vremena da ih (planove) oživim. Pa, za sada je to malo drugačija priča, bliža životu.
Moja majka je dok je šetala po radnjama vidjela baterijsku lampu na dobrom sniženju. Ono što joj se više dopalo kod baterijske lampe ili popusta, istorija ćuti. Ova lampa je ubrzo postala moja glavobolja. Koristila ga je ne više od šest mjeseci. Šest mjeseci problema, pa jedno, pa drugo. Kupio sam joj tri druga da zamenim ovu. Ali ipak sam to morao da uradim.


Iako je baterijska lampa jeftina, ima niz značajnih prednosti: udobno leži u ruci, prilično je svijetla, dugme je na uobičajenom mjestu i ima aluminijumsko kućište.
Pa, sad o nedostacima.
Lampa se napaja od četiri ćelije tipa AAA.


Ugradio sam sve četiri baterije. Izmjerio sam potrošnju struje - više od 1A! Shema je jednostavna. Baterije, dugme, 1.0 Ohm ograničavajući otpornik, LED. Sve je konzistentno. Struja je ograničena samo otporom od 1,0 oma i unutrašnjim otporom baterija.
Ovo je ono što imamo na kraju.


Čudno je da se bezimeni LED ispostavilo da je živ.


Prvo što sam uradio je da napravim cuclu od stare baterije.


Sada će se napajati na 4,5V, kao i većina kineskih baterijskih lampi.
I što je najvažnije, umjesto otpora instalirat ću upravljački program AMC7135.
Ovdje je standardni dijagram povezivanja.

Ovaj čip zahtijeva minimalno ožičenje. Među dodatnim komponentama, preporučljivo je ugraditi par keramičkih kondenzatora kako bi se spriječilo samopobuđenje mikrokola, posebno ako postoje dugačke žice koje idu do LED-a. Tehnički list sadrži sve potrebne informacije. U baterijskoj lampi nema dugih žica, tako da zapravo nisam instalirao nikakve kondenzatore, iako sam ih naveo na dijagramu. Evo moje šeme, redizajnirane za specifične zadatke.


U ovom krugu, velika struja više neće teći kroz dugme prekidača u principu. Samo kontrolna struja teče kroz dugme i to je to. Jedan problem manje.


Provjerio sam i dugme i podmazao ga za svaki slučaj.

Umjesto otpora, sada postoji mikrokolo sa stabilizacijskom strujom od 360 mA.


Sve sam ponovo sastavio i izmjerio struju. Spojio sam i baterije i akumulatore, slika se ne mijenja. Struja stabilizacije se ne mijenja.


Sa lijeve strane je napon na LED diodi, sa desne strane je struja koja teče kroz nju.
Šta sam postigao kao rezultat svih izmjena?
1. Svjetlina lampe se praktično ne mijenja tokom rada.
2. Rasterećeno dugme za uključivanje/isključivanje lampe. Sada kroz njega teče sićušna struja. Oštećenje kontakata zbog velike struje je isključeno.
3. Zaštitio LED od degradacije zbog velikog protoka struje (ako je sa novim baterijama).
To je, generalno, sve.
Svako odlučuje za sebe kako pravilno iskoristiti informacije iz moje recenzije. Mogu da garantujem za tačnost svojih merenja. Ako nešto nije jasno u vezi sa ovom recenzijom, postavite pitanja. Za ostalo, posaljite mi PM, sigurno cu odgovoriti.
To je sve!
Sretno!

Takođe bih želeo da vam skrenem pažnju na činjenicu da moja lampa ima prekidač sa pozitivne strane. Mnogi kineski lampioni imaju prekidač na negativnoj strani, ali ovo će biti drugačiji sklop!

Planiram kupiti +59 Dodaj u favorite Svidjela mi se recenzija +58 +118

Kao što znate, dioda je strujni uređaj; treba je napajati jednosmjernom strujom, a ne naponom. LED diode su također diode, a također ih je potrebno napajati stabilnom strujom. Prilikom trajnog instaliranja LED-a, problem njegovog napajanja lako se rješava korištenjem otpornika koji postavlja struju kroz LED diodu. Ohmov zakon pomaže u izračunavanju vrijednosti otpornika: R=(Upit-Upad)/I, Gdje Upit– napon napajanja u voltima, Upfall– napon koji pada na LED diodi (približno 3-3.5V, ovisno o struji kroz LED), i I– željena struja kroz LED u amperima. Zatim odaberite otpornik najbliže vrijednosti, koji je dostupan i sve radi dobro. Pri velikim strujama otpornik će se jako zagrijati, pa bi trebali koristiti jači.

Loša strana stabilizatora baziranog na otporniku je njegova nesposobnost da odgovori na promjene napona napajanja (struja kroz LED i, kao rezultat toga, njegova svjetlina će pasti kako se baterija prazni), kao i nepotrebno rasipanje snage na otporniku. . Za rješavanje ovog problema postoje takozvani LED drajveri (strujni stabilizatori). Strujni stabilizatori se mogu pojačati (Boost) ili spustiti (Buck). Boost stabilizatori se koriste kada je napon na baterijama manji od pada napona na LED diodi, a Buck stabilizatori se koriste kada je napon na bateriji veći od pada napona na LED diodi.
Kada sam dizajnirao svoju „neuništivu“ baterijsku lampu, odlučio sam da koristim paralelni snop litijumskih baterija ili 3 kom. AA baterije (tj. ulazni napon drajvera mora biti unutar 3-4,5V). Za ovaj zadatak potrebno je koristiti Buck drajver, ali to ne koristi oko 20% pohranjene energije u baterijama! Ovih 20% može se istisnuti umetanjem Boost drajvera u kolo, koji će se uključiti kada je napon napajanja prenizak za Buck drajver. Sve ovo je jako zamorno i glomazno, 2 drajvera + komparator ili mikrokontroler za prebacivanje. Ovo neće otići daleko. Nakon što sam pročitao odjeljak o tehnologiji rasvjete na speleo.ru, otkrio sam Boost/Buck stabilizator sa rasponom napona napajanja koji su mi bili potrebni i dobrom efikasnošću (ostvarljivo uz promišljeno namotavanje induktivnosti). Ovaj čip prati napon napajanja i automatski prebacuje ugrađene Boost/Buck drajvere. Prekidači za napajanje u mosnom kolu su integrisani u samo mikrokolo, i omogućavaju prebacivanje struje do 1A. Dijagram povezivanja je preuzet iz i malo izmijenjen:


Kondenzatori C3,C4– tantal u SMD verziji 68 μF, C1,C2,C5– keramika 0,1 µF. Nisam se zamarao sa namotavanjem induktiviteta, pa sam ga kupio i uzeo SUMIDA CDRH5D28RNP-5RØN na 5 µH. Kao što vidite, upravljački čip ima 2 "kanala" koji se mogu uključiti pojedinačno ili zajedno koristeći visoki logički nivo na pinovima EN1, EN2. Struje "kanala" se podešavaju pomoću 2 otpornika R1, R2 koji se izračunava po formuli R1=3580*0,8/I1, R2=3580*0,8/I2. Glavna stvar je da je ukupna struja "kanala" manja od 1A, inače postoji velika šansa za spaljivanje unutrašnjih prekidača. Nadalje, kako je planirano, svjetiljka će imati 2 načina rada, „radna“ i „snažna“ sa odgovarajućim strujama kroz diodu od 0,2A i 1A (snažni način rada se postiže uključivanjem 2 „kanala“ od 0,2A i 0,8A na isto vrijeme). Odnosno, otpornik R1, koji postavlja režim rada treba da bude 15 kOhm, i R2– 3,9 kOhm. Režimi će se mijenjati pomoću dugmeta sata zapečaćenog komadom gume i pritisne ploče. Odnosno, za ovo morate dodati mikrokontroler koji će čitati pritiske tipki i mijenjati modove osvjetljenja diode. Lampa će se uključiti/isključiti dugim držanjem dugmeta (2 sekunde). A prebacivanje između "trčanja" i "snažnog" režima će se vršiti kratkim pritiskom na dugme (0,5 s). Kompletna shema sklopa uređaja sa mikrokontrolerom:


Mikrokontroler je uzeo onaj koji je bio najbliži. Ispostavilo se da je to verzija SO-14. Njegov firmver je trivijalan, osim obrade pritiska na tastere, gde se uzima u obzir vreme zadržavanja. Kada se lampa isključi, mikrokontroler prelazi u Power-Down mod i troši samo 0,1 μA ( LTC3454 u SHUTDOWN modu također ne troši ništa - 1 µA) i neće značajno isprazniti bateriju. Također sam dodao još jedan element, kondenzator C6– 0,1 µF na napajanju mikrokontrolera.

    #include

    #include

  1. #define EN1 2

    #define EN2 3

  2. #defini KLJUČ 2

  3. unsigned char mode= 0 ;

    unsigned char sleep_flag= 1;

  4. void pauza (unsigned int a)

    ( unsigned int i;

  5. za (i= a; i> 0 ; i-- )

  6. void set_mode(void)

    if (mode== 0 ) PORTA&= ~((1<< EN1) | (1 << EN2) ) ;

    ako (način== 1) PORTA= (1<< EN1) ;

    ako (način== 2 ) PORTA= (1<< EN1) | (1 << EN2) ;

  7. ISR (INT0_vect)

    (int count;

  8. count= 0 ;

    count= count+ 1 ;

  9. if (broj== 1000 ) (

  10. if (mode== 1 ) mode= 2 ;

    else if (mode== 2) mode= 1;

  11. dok ((PINB& _BV(KEY) ) == 0x00 )

    count= count+ 1 ;

    if (broj== 9000 ) (

    if (mode== 0) mode= 1;

    drugo(

    mod= 0 ;

    sleep_flag= 1 ;

    set_mode() ;

  12. dok ((PINB& _BV(KEY) ) == 0x00 )

    set_mode() ;

  13. povratak ;

  14. int main(void)

    DDRB= 0x04 ; //PB2 kao ulaz

    PORTB= 0x04 ;

  15. DDRA= 0x0c ; //PA2,PA3 kao izlazi

  16. pauza(1000); //Pauza

  17. GIMSK= (1<< INT0) ;

    MCUCR= (0<< ISC00) | (0 << ISC01) ; //Prekid niske razine na PB2

    MCUCR|= (1<< SM1) | (0 << SM0) | (1 << SE) ; //Dozvoli režim gašenja

    sei() ; //Omogući prekide

Sigurno mnogi ljudi imaju lampe Convoy, one su se odavno etablirale kao jeftin i kvalitetan izvor svjetlosti. Ali malo ljudi zna da uz pomoć programatora od 3 USD i kopče od 3 USD možete dodati prilagođeni firmver nekim baterijskim lampama, koje će imati više funkcija ili će biti praktičnije za korištenje. Odmah da rezervišem da će se u članku govoriti o firmveru lampe sa drajverima baziranim na mikrokontroleru Attiny13a; takvi drajveri se nalaze u svim konvojima serije S (osim novog S9), kao i u Convoy M1, M2, C8 . Mnogi drugi proizvođači također instaliraju Attiny drajvere u svoje svjetiljke, ovaj priručnik se također odnosi na njih, ali treba obratiti pažnju na osigurače i Attiny portove koji se koriste.

Kratak edukativni program

Nisu svi upoznati sa strukturom modernih lampiona, pa ću prije nego što pređem na vještičarenje pokušati da vas upoznam sa novostima. Dakle, električni krug tipične svjetiljke sastoji se od sljedećih dijelova:

  • Dugme za isključivanje se obično nalazi u repu "taktičkih" EDC svjetiljki kao što su Convoys
  • Baterija - obično Li-ion banka
  • Vozač je najvažniji dio svjetiljke, njen mozak
  • LED - govori za sebe

Od sve te sramote, kao što ste već shvatili, prvenstveno nas zanima vozač. Odgovoran je za rad svjetiljke u različitim modovima osvjetljenja, pamteći zadnji uključeni način rada i drugu logiku. U baterijskim lampama s jednom baterijom najčešće se nalaze PWM drajveri. Takvi drajveri obično koriste ili tranzistor sa efektom polja ili gomilu linearnih regulatora AMC7135 kao prekidač za napajanje. Na primjer, ovako izgleda prilično popularan drajver Nanjg 105D:


Attiny13a mikrokontroler sadrži firmver koji određuje logiku lampe. Zatim ću pokazati kako možete učitati drugi firmver na ovaj mikrokontroler da biste proširili funkcionalnost svjetiljke.

Pozadina

Danas postoji zaista ogroman broj džepnih EDC baterijskih lampi na tržištu, a karakteristično je da svaki proizvođač nastoji da izmisli svoj firmver sa sopstvenim jedinstvenim™ kontrolama. Od svih postojećih rješenja najviše mi se dopao firmware sa kojim su se donedavno isporučivale Convoy lampe sa drajverom Nanjg 105D. Imao je 2 grupe modova (grupa 1: Min-Medium-Max, grupa 2: Min-Medium-Max-Strobe-SOS). Promjena grupa u njemu izvršena je intuitivno jednostavno: uključite minimalni način rada, nakon nekoliko sekundi svjetiljka će treptati - kliknite gumb i grupa načina se mijenja. Nedavno je Convoy počeo da isporučuje svoja svetla sa novim firmverom za biscotti. Ima više mogućnosti (12 grupa načina rada, mogućnost uključivanja ili onemogućavanja memorije posljednjeg načina rada, pamćenje načina rada kada je isključen (tzv. off-time memorija)), ali ima nekoliko značajnih nedostataka, što za mene lično poništava sve prednosti:

  • Složene kontrole. Da biste promijenili grupu načina, morate zapamtiti šamanski niz klikova na gumbe
  • Memorija van vremena ne radi kada koristite osvijetljene tipke (kao što su ove)
  • Mnoge beskorisne grupe načina, koje se razlikuju samo po redoslijedu pojavljivanja

Kada sam nakupio pristojan zoološki vrt baterijskih lampi sa različitim firmverima, ali istim drajverima, odlučio sam da ih objedinim tako što sam ih sve ažurirao istim firmverom. Sve bi bilo u redu, ali ne možete samo nadograditi Nanjg 105D na stari dobri firmware sa dvije grupe, jer nije slobodno dostupan, a proizvođač je zabranio čitanje deponije memorije mikrokontrolera, tj. Nema gdje nabaviti originalni firmver. Ne postoji analog ovog firmvera u repozitorijumu firmvera lampe, tako da mi je ostala samo jedna opcija - da sve napišem sam.

Upoznajte Quasar v1.0

Koristeći luxdrv 0.3b firmware od DrJones-a kao osnovu, napravio sam svoj vlastiti s blackjack-om i zabavnim parkovima. Pokušao sam da ga učinim što sličnijim standardnom firmveru Nanjg 105D i skalabilnijim. Šta moj Quasar može:

  • 2 grupe načina: (Minimum - Srednji - Maksimalni - Turbo) i (Minimum - Srednji - Maksimum - Turbo - Strobe - Policijski Strobe - SOS)
  • Strobe evil (frekvencija bljeska oko 12Hz)
  • Novi način rada - policijski blister - pravi isprekidane serije od 5 bljeskova, režim može biti koristan za bicikliste, jer povećava vidljivost
  • Prebacivanje grupa se vrši kao u tvorničkom firmveru: uključite prvi način rada, pričekajte nekoliko sekundi, kliknite odmah nakon što lampica treperi
  • Izmjenom izvora možete dodati do 16 grupa, u svakoj grupi možete postaviti do 8 načina rada
  • Koristi se tradicionalna on-time memorija, možete koristiti osvijetljene tipke bez gubitka funkcionalnosti
  • Kada se baterija isprazni ispod 3V, svjetiljka počinje da smanjuje svjetlinu, ali se ne gasi u potpunosti - koristite baterije sa zaštitom ako se bojite da ćete ih ubiti.
  • Zgodna funkcija za provjeru trenutnog nivoa baterije: u bilo kojem načinu rada, napravite 10-20 brzih dopola pritiska na tipku dok lampica ne prestane da se uključuje. Nakon toga, lampa će napraviti od 1 do 4 treptaja, svaki bljesak pokazuje nivo napunjenosti u skladu s tim< 25%, < 50%, < 75% и < 100%.

Na mom githubu možete pronaći izvore, kompajliranu binarnu datoteku sa dvije grupe modova i projekt za Atmel Studio. Zapamtite da se izvori distribuiraju pod licencom CC-BY-NC-SA, a firmver koristite na vlastitu odgovornost bez ikakvih garancija.

Dodaci

Za učitavanje prilagođenog firmvera trebat će nam:

  • SOIC isječak Kupi
  • Kupite bilo koji klon Arduino Nano 3.0 za korištenje kao programator
  • Već sam imao Arduino, pa sam odlučio nabaviti zaseban nezavisni uređaj za bljeskalice i kupio USBISP programator Kupi
  • Dupont žice za spajanje kopče na programator Kupi

Priprema programatora

Za flešovanje firmvera drajvera, prikladan je običan Arduino Nano 3.0 sa učitanom ArduinoISP skicom, ali sam odlučio da nabavim poseban programator, pa sam kupio USBISP. Ima oblik fleš diska u aluminijumskom kućištu:


Izvan kutije, ovaj programator se detektuje na računaru kao HID uređaj i radi samo sa kineskim pogrešnim softverom; da biste ga koristili sa avrdudeom, možete ga ponovo prebaciti na USBASP. Da bismo to učinili, začudo, potreban nam je još jedan programer koji radi. Ovdje će nam pomoći Arduino Nano, spojiti ga na računalo, otvoriti Arduino IDE i otvoriti standardnu ​​ArduinoISP skicu:


Dekomentirajte red #define USE_OLD_STYLE_WIRING:


I otpremite skicu na Nano. Sada imamo AVRISP programator koji se može koristiti za ponovno flešovanje našeg USBISP-a u USBASP. Da bismo to uradili, prvo nam je potreban avrdude, nalazi se u Arduino IDE instalacionom folderu duž putanje \hardware\tools\avr\bin. Radi praktičnosti, savjetujem vam da dodate punu putanju do avrdude.exe u varijablu okruženja PATH.

Sada trebamo otvoriti USBISP i staviti ga u programski mod postavljanjem UP džampera:



Istovremeno, vodimo računa da Atmega88 ili 88p bude zalemljen na ploči, kao u mom slučaju:


Ostale skakače, uprkos savjetima na internetu, ne treba dirati, s njima sve dobro funkcionira.

Sada pažljivo gledamo pinout USBISP programatora, odštampan na njegovom aluminijumskom kućištu, i povezujemo ga sa Arduino Nano:

  • VCC i GND na VCC i GND respektivno
  • MOSI do D11
  • MISO do D12
  • SCK do D13
  • RESET na D10

Nisam imao ženske-ženske žice, pa sam koristio mini-master:


Sljedeći korak je preuzimanje firmvera usbasp.atmega88-modify.hex, povezivanje Arduina sa računarom, pokretanje konzole i odlazak u folder sa sačuvanim firmverom. Prvo, podesimo osigurače naredbom:

Avrdude -p -m88 -c avrisp -b 19200 -U lfuse:w:0xff:m -U hfuse:w:0xdd:m

Zatim učitajte firmver naredbom:

Avrdude -p m88p -c avrisp -b 19200 -U flash:w:usbasp.atmega88-modify.hex

Nakon toga uklonite kratkospojnik na USBISP-u, povežite ga sa računarom i ako je sve urađeno kako treba upalit će se plava LED dioda na njemu:


Sada imamo potpuni kompaktni USBASP programator u praktičnom metalnom kućištu.

SOIC clip

Možete programirati mikrokontrolere bez kopče, svaki put lemeći žice na odgovarajuće kontakte, ali ovo je toliko rutinski proces da je bolje ne trošiti novac na kopču. Prva stvar koju treba da uradite nakon što dobijete štipaljku je da "izbrusite" kontakte, jer se van kutije nalaze preblizu jedan drugom i nemoguće je pravilno lemiti žice na njih:


Povezujemo kontakte kopče sa programatorom u skladu sa pinoutom mikrokontrolera:


Za veću pouzdanost, zalemio sam žice na obujmicu i zategnuo cijelu stvar termoskupljajućim:


Učitavanje firmvera u baterijsku lampu

Sada kada su programator i klip spremni, preostaje samo da okrenete glavu lampe, odvrnete stezni prsten vozača i uklonite ga. U većini slučajeva nema potrebe za odlemljivanjem žica od drajvera, njihova dužina je dovoljna za pristup mikrokontroleru:


Pričvršćujemo kopču, promatrajući orijentaciju. Referentna točka u ovom slučaju je okrugli simbol na tijelu mikrokola; on označava njegov prvi pin (RESET u našem slučaju):


Uvjerite se da su sve igle kopče utonule u tijelo. Povezujemo programator sa računarom, sada jedino što je preostalo je učitavanje firmvera) Da biste to uradili, idite na GitHub, preuzmite binarni fajl quasar.hex, pokrenite konzolu, idite u fasciklu sa binarnim fajlom i izvršite naredbu:

Avrdude -p t13 -c usbasp -u -Uflash:w:quasar.hex:a -Ulfuse:w:0x75:m -Uhfuse:w:0xFF:m

Ako je sve u redu, tada će započeti proces preuzimanja firmvera, u ovom trenutku nikada ne smijete dirati klip, bolje je uopće ne disati) Ako je firmver uspješno instaliran, izlaz na kraju će biti otprilike ovako:


Jednostavno, zar ne? Ali nema veze, sa vjerovatnoćom od 90% umjesto preuzimanja firmvera vidjet ćete ovo:


Razlog najčešće leži u činjenici da novi modeli drajvera imaju kratko spojene pinove 5 i 6 (MISO i MOSI), što onemogućava programiranje. Stoga, ako se avrdude požali da meta ne odgovara, onda se prije svega naoružamo skalpelom i pažljivo pogledamo tablu.Moramo iseći stazu, kao što je prikazano na slici:


Nakon toga, firmver se obično učitava bez problema. Ako ne, pogledajte pažljivo mikrokontroler, možda uopće nemate Attiny13a, barem sam naišao na drajvere iz Fasttecha sa PIC kontrolerima.

Modifikacija firmvera

Prevedeni firmver na Githubu je u suštini malo napredniji analog originalnog firmvera, tako da je mnogo interesantnije sastaviti sopstvenu verziju firmvera sa svojim grupama i modovima. Sada ću vam reći kako to učiniti. Prije svega, preuzmite i instalirajte Atmel Studio sa službene web stranice. Zatim preuzimamo sve projektne datoteke (oni koji znaju koristiti git mogu jednostavno klonirati cijelu repu) i otvaramo Quasar.atsln kroz instalirani studio:


Navest ću najzanimljivija mjesta u kodu:

#define VRIJEME ZAKLJUČAVANJA 50

Postavlja vrijeme nakon kojeg će se trenutni način pohranjivati. Vrijednost od 50 odgovara 1 sekundi, odnosno, postavljanjem 100 možete dobiti interval čekanja od 2 sekunde

#defini BATTMON 125

Postavlja kritični nivo napona na bateriji, po dolasku do kojeg će lampa početi da se gasi. Za standardni Nanjg 105D, vrijednost od 125 odgovara otprilike 2,9 volti, ali sve ovisi o vrijednostima otpornika djelitelja napona na ploči. Ako u potpunosti izbrišete ovu liniju, svjetiljka neće pratiti napon baterije.

#define STROBE 254 #define PSTROBE 253 #define SOS 252

Definicije treptajućih modova i digitalnih vrijednosti ne treba dirati ako bilo koji način rada nije potreban - odgovarajući red se može izbrisati, ne zaboravljajući potom ispraviti deklaracije grupa načina u nizu grupa.

#define BATCHHECK

Uključuje režim indikacije nivoa baterije nakon 16 brzih klikova. Može se ukloniti ako ova funkcija nije potrebna.

#define MEM_LAST

Postavlja memoriju posljednjeg moda. Moguće su sljedeće vrijednosti: MEM_LAST - svjetiljka je uključena u posljednjem uključenom načinu rada, MEM_FIRST - lampa je uvijek uključena u prvom modu, MEM_NEXT - svjetiljka je uvijek uključena u sljedećem načinu rada.

#define MODES_COUNT 7 #define GROUPS_COUNT 2

Podesite broj režima u grupi i broj grupa, respektivno. Usko povezan sa sljedećim nizom grupa:

PROGMEM const byte grupe = (( 6, 32, 128, 255, 0, 0, 0 ), ( 6, 32, 128, 255, STROBE, PSTROBE, SOS ));

Ovdje su navedene grupe samih načina rada. Brojevi 6, 32, 128, 255 - vrijednosti osvjetljenja, STROBE, PSTROBE, SOS - oznake posebnih modova. Nulte vrijednosti svjetline se zanemaruju, tako da se u različitim grupama može postaviti različit broj načina rada (u ovom slučaju prva grupa ima 4 načina, druga - 7).

Na primjer, ako želite da napustite jedan jedini način rada sa 100% svjetline, to možete učiniti ovako:

#define MODES_COUNT 1 #define GROUPS_COUNT 1 PROGMEM const byte groups = (( 255 ));

Ako su vam potrebne 3 grupe načina rada bez trepćućih svjetala i s obrnutim redoslijedom (od maksimuma do minimuma), onda možete učiniti sljedeće:

#define MODES_COUNT 4 #define GROUPS_COUNT 3 PROGMEM const byte groups = (( 255, 0, 0, 0 ), ( 255, 64, 6, 0 ), ( 255, 128, 32, 6 ));

U ovoj situaciji, u prvoj grupi postoji samo jedan režim sa 100% osvetljenosti, u drugoj - 3 režima, u trećoj - 4 režima sa glatkijim smanjenjem osvetljenosti. Lako i jednostavno, zar ne? Sve što preostaje je kompajlirati izvor u heksadecimalni fajl koristeći studio; da biste to učinili, odaberite "Oslobodi" u upravitelju konfiguracije i kliknite "Pokreni bez otklanjanja grešaka":


Ako niste nigdje zeznuli u kodu, tada će se u direktoriju projekta pojaviti direktorij Release, a u njemu će se nalaziti heksadecimalna datoteka, koju treba prenijeti u drajver koristeći metodu opisanu u prethodnom odjeljku.

To je sve, nadam se da će ovaj priručnik nekome biti od koristi. Ako neko ima bilo kakva pitanja, slobodno komentirajte)

Standardni RT4115 LED upravljački krug je prikazan na donjoj slici:

Napon napajanja trebao bi biti najmanje 1,5-2 volta veći od ukupnog napona na LED diodama. U skladu s tim, u rasponu napona napajanja od 6 do 30 volti, od 1 do 7-8 LED dioda može se spojiti na drajver.

Maksimalni napon napajanja mikrokola 45 V, ali rad u ovom načinu rada nije zajamčen (bolje obratite pažnju na sličan mikro krug).

Struja kroz LED diode ima trouglasti oblik sa maksimalnim odstupanjem od prosječne vrijednosti od ±15%. Prosječna struja kroz LED diode postavlja se otpornikom i izračunava se po formuli:

I LED = 0,1 / R

Minimalna dozvoljena vrijednost je R = 0,082 Ohm, što odgovara maksimalnoj struji od 1,2 A.

Odstupanje struje kroz LED od izračunatog ne prelazi 5%, pod uslovom da je otpornik R ugrađen sa maksimalnim odstupanjem od nominalne vrijednosti od 1%.

Dakle, da bismo uključili LED pri konstantnoj svjetlini, ostavljamo DIM pin da visi u zraku (povučen je do nivoa od 5V unutar PT4115). U ovom slučaju, izlazna struja je određena isključivo otporom R.

Ako spojimo kondenzator između DIM pina i mase, dobijamo efekat glatkog osvjetljenja LED dioda. Vrijeme potrebno za postizanje maksimalne svjetline ovisit će o kapacitetu kondenzatora; što je veći, lampa će duže svijetliti.

Za referenciju: Svaki nanofarad kapacitivnosti povećava vrijeme uključivanja za 0,8 ms.

Ako želite napraviti drajver za zatamnjivanje LED dioda s podešavanjem svjetline od 0 do 100%, onda možete pribjeći jednom od dvije metode:

  1. Prvi način pretpostavlja da se na DIM ulaz dovodi konstantan napon u rasponu od 0 do 6V. U ovom slučaju, podešavanje svjetline od 0 do 100% vrši se pri naponu na DIM pinu od 0,5 do 2,5 volti. Povećanje napona iznad 2,5 V (i do 6 V) ne utiče na struju kroz LED diode (svjetlina se ne mijenja). Naprotiv, smanjenje napona na nivo od 0,3V ili niže dovodi do isključivanja kola i stavljanja u stanje mirovanja (potrošnja struje pada na 95 μA). Tako možete efikasno kontrolisati rad drajvera bez uklanjanja napona napajanja.
  2. Drugi način uključuje snabdijevanje signalom iz pretvarača širine impulsa sa izlaznom frekvencijom od 100-20000 Hz, svjetlina će biti određena radnim ciklusom (ciklus impulsa). Na primjer, ako visoki nivo traje 1/4 perioda, a niski nivo, respektivno, 3/4, onda će to odgovarati nivou svjetline od 25% od maksimuma. Morate razumjeti da je radna frekvencija drajvera određena induktivnošću induktora i ni na koji način ne ovisi o frekvenciji zatamnjivanja.

PT4115 LED upravljački krug sa dimerom konstantnog napona prikazan je na donjoj slici:

Ovaj sklop za podešavanje svjetline LED dioda odlično funkcionira zbog činjenice da se unutar čipa DIM pin "povlači" na 5V sabirnicu kroz otpornik od 200 kOhm. Stoga, kada je klizač potenciometra u najnižoj poziciji, formira se djelitelj napona od 200 + 200 kOhm i na DIM pinu se formira potencijal od 5/2 = 2,5 V, što odgovara 100% svjetline.

Kako shema funkcionira

U prvom trenutku, kada se primijeni ulazni napon, struja kroz R i L je nula i izlazni prekidač ugrađen u mikrokolo je otvoren. Struja kroz LED diode počinje postepeno rasti. Brzina porasta struje zavisi od veličine induktivnosti i napona napajanja. Komparator u krugu upoređuje potencijale prije i poslije otpornika R i čim razlika bude 115 mV, na njegovom izlazu se pojavljuje nizak nivo koji zatvara izlazni prekidač.

Zahvaljujući energiji pohranjenoj u induktivnosti, struja kroz LED diode ne nestaje trenutno, već počinje postepeno opadati. Pad napona na otporniku R postepeno se smanjuje. Čim dostigne vrijednost od 85 mV, komparator će ponovo dati signal za otvaranje izlaznog prekidača. I cijeli ciklus se ponavlja iznova.

Ako je potrebno smanjiti raspon talasa struje kroz LED diode, moguće je spojiti kondenzator paralelno sa LED diodama. Što je veći njegov kapacitet, trokutasti oblik struje kroz LED diode će biti izglađen i to će postati sličniji sinusoidalnom. Kondenzator ne utiče na radnu frekvenciju ili efikasnost drajvera, ali povećava vreme potrebno da se određena struja kroz LED diode smiri.

Važni detalji montaže

Važan element kola je kondenzator C1. On ne samo da izglađuje talase, već i kompenzuje energiju akumuliranu u induktoru u trenutku kada je izlazni prekidač zatvoren. Bez C1, energija pohranjena u induktoru će teći kroz Schottky diodu do sabirnice napajanja i može uzrokovati kvar mikrokola. Stoga, ako uključite drajver bez kondenzatora koji shuntuje napajanje, mikrokolo će se gotovo sigurno isključiti. I što je veća induktivnost induktora, veća je šansa da se mikrokontroler izgori.

Minimalni kapacitet kondenzatora C1 je 4,7 µF (a kada se kolo napaja pulsirajućim naponom nakon diodnog mosta - najmanje 100 µF).

Kondenzator bi trebao biti smješten što bliže čipu i imati najmanju moguću ESR vrijednost (tj. tantalski kondenzatori su dobrodošli).

Također je vrlo važno odgovorno pristupiti odabiru diode. Mora imati nizak pad napona naprijed, kratko vrijeme oporavka tokom prebacivanja i stabilnost parametara kako temperatura p-n spoja raste, kako bi se spriječilo povećanje struje curenja.

U principu, možete uzeti običnu diodu, ali Schottky diode najbolje odgovaraju ovim zahtjevima. Na primjer, STPS2H100A u SMD verziji (napon naprijed 0,65V, revers - 100V, impulsna struja do 75A, radna temperatura do 156°C) ili FR103 u DO-41 kućištu (reverzni napon do 200V, struja do 30A, temperatura do 150 °C). Uobičajeni SS34-i su se vrlo dobro pokazali, koje možete izvući iz starih ploča ili kupiti cijelo pakovanje za 90 rubalja.

Induktivnost induktora zavisi od izlazne struje (vidi tabelu ispod). Pogrešno odabrana vrijednost induktivnosti može dovesti do povećanja snage raspršene na mikro krugu i prekoračenja granica radne temperature.

Ako se pregrije iznad 160°C, mikrokolo će se automatski isključiti i ostati u isključenom stanju dok se ne ohladi na 140°C, nakon čega će se automatski pokrenuti.

Unatoč dostupnim tabelarnim podacima, dopušteno je ugraditi zavojnicu s induktivnim odstupanjem većim od nominalne vrijednosti. U ovom slučaju, efikasnost cijelog kruga se mijenja, ali ostaje u funkciji.

Možete uzeti fabrički prigušivač, ili ga možete napraviti sami od feritnog prstena sa izgorjele matične ploče i PEL-0,35 žice.

Ako je važna maksimalna autonomija uređaja (prijenosne svjetiljke, lanterne), onda, kako bi se povećala efikasnost kruga, ima smisla potrošiti vrijeme na pažljiv odabir induktora. Pri malim strujama, induktivnost mora biti veća kako bi se minimizirale greške u kontroli struje koje su rezultat kašnjenja u prebacivanju tranzistora.

Induktor bi trebao biti smješten što je moguće bliže SW pinu, idealno spojen direktno na njega.

I konačno, najprecizniji element kola LED drajvera je otpornik R. Kao što je već spomenuto, njegova minimalna vrijednost je 0,082 Ohma, što odgovara struji od 1,2 A.

Nažalost, nije uvijek moguće pronaći otpornik odgovarajuće vrijednosti, pa je vrijeme da se prisjetimo formule za izračunavanje ekvivalentnog otpora kada su otpornici povezani serijski i paralelno:

  • R zadnji = R 1 +R 2 +…+R n;
  • R parovi = (R 1 xR 2) / (R 1 +R 2).

Kombinacijom različitih metoda povezivanja možete dobiti potrebnu otpornost od nekoliko otpornika pri ruci.

Važno je usmjeriti ploču tako da struja Schottky diode ne teče duž puta između R i VIN, jer to može dovesti do grešaka u mjerenju struje opterećenja.

Niska cijena, visoka pouzdanost i stabilnost karakteristika drajvera na RT4115 doprinose njegovoj širokoj upotrebi u LED lampama. Gotovo svaka druga 12-voltna LED lampa sa MR16 bazom sastavljena je na PT4115 (ili CL6808).

Otpor otpornika za podešavanje struje (u omima) izračunava se koristeći potpuno istu formulu:

R = 0,1 / I LED[A]

Tipičan dijagram povezivanja izgleda ovako:

Kao što vidite, sve je vrlo slično krugu LED lampe sa drajverom RT4515. Opis rada, nivoi signala, karakteristike upotrebljenih elemenata i raspored štampane ploče su potpuno isti kao i oni, tako da nema smisla ponavljati.

CL6807 se prodaje za 12 rubalja/kom, samo treba paziti da ne skliznu zalemljene (preporučujem da ih uzmete).

SN3350

SN3350 je još jedan jeftin čip za LED drajvere (13 rubalja po komadu). Gotovo je potpuni analog PT4115 s jedinom razlikom što se napon napajanja može kretati od 6 do 40 volti, a maksimalna izlazna struja je ograničena na 750 miliampera (kontinuirana struja ne bi trebala prelaziti 700 mA).

Kao i svi gore opisani mikro krugovi, SN3350 je impulsni opadajući pretvarač sa funkcijom stabilizacije izlazne struje. Kao i obično, struja u opterećenju (a u našem slučaju jedna ili više LED dioda djeluje kao opterećenje) je postavljena otporom otpornika R:

R = 0,1 / I LED

Da bi se izbjeglo prekoračenje maksimalne izlazne struje, otpor R ne smije biti manji od 0,15 Ohma.

Čip je dostupan u dva pakovanja: SOT23-5 (maksimalno 350 mA) i SOT89-5 (700 mA).

Kao i obično, primjenom konstantnog napona na ADJ pin, krug pretvaramo u jednostavan podesivi drajver za LED diode.

Karakteristika ovog mikrokola je nešto drugačiji raspon podešavanja: od 25% (0,3V) do 100% (1,2V). Kada potencijal na ADJ pinu padne na 0,2V, mikrokolo prelazi u stanje mirovanja sa potrošnjom od oko 60 µA.

Tipičan dijagram povezivanja:

Za ostale detalje pogledajte specifikacije za mikrokolo (pdf fajl).

ZXLD1350

Unatoč činjenici da je ovaj mikro krug još jedan klon, neke razlike u tehničkim karakteristikama ne dopuštaju njihovu izravnu zamjenu.

Evo glavnih razlika:

  • mikrokolo počinje na 4,8V, ali postiže normalan rad samo s naponom napajanja od 7 do 30V (do 40V može se napajati pola sekunde);
  • maksimalna struja opterećenja - 350 mA;
  • otpor izlaznog prekidača u otvorenom stanju je 1,5 - 2 Ohma;
  • Promjenom potencijala na ADJ pinu od 0,3 do 2,5 V, možete promijeniti izlaznu struju (svjetlina LED dioda) u rasponu od 25 do 200%. Na naponu od 0,2V u trajanju od najmanje 100 µs, drajver prelazi u stanje mirovanja sa malom potrošnjom energije (oko 15-20 µA);
  • ako se podešavanje vrši PWM signalom, tada pri brzini ponavljanja impulsa ispod 500 Hz, raspon promjene svjetline je 1-100%. Ako je frekvencija iznad 10 kHz, onda od 25% do 100%;

Maksimalni napon koji se može primijeniti na ADJ ulaz je 6V. U ovom slučaju, u rasponu od 2,5 do 6V, drajver proizvodi maksimalnu struju, koju postavlja otpornik za ograničavanje struje. Otpor otpornika izračunava se na isti način kao u svim gore navedenim mikro krugovima:

R = 0,1 / I LED

Minimalni otpor otpornika je 0,27 Ohma.

Tipični dijagram povezivanja se ne razlikuje od svojih kolega:

Bez kondenzatora C1 NEMOGUĆE je napajanje strujnog kola!!! U najboljem slučaju, mikrokolo će se pregrijati i proizvesti nestabilne karakteristike. U najgorem slučaju, odmah će propasti.

Detaljnije karakteristike ZXLD1350 mogu se naći u datasheet-u za ovaj čip.

Cijena mikrosklopa je nerazumno visoka (), unatoč činjenici da je izlazna struja prilično mala. Općenito, to je jako za svakoga. Ne bih se mešao.

QX5241

QX5241 je kineski analog MAX16819 (MAX16820), ali u zgodnijem pakovanju. Također dostupan pod nazivima KF5241, 5241B. Ima oznaku "5241a" (vidi sliku).

U jednoj poznatoj trgovini prodaju se gotovo po težini (10 komada za 90 rubalja).

Drajver radi na potpuno istom principu kao i svi gore opisani (kontinuirani opadajući pretvarač), ali ne sadrži izlazni prekidač, tako da rad zahtijeva povezivanje eksternog tranzistora sa efektom polja.

Možete uzeti bilo koji N-kanalni MOSFET sa odgovarajućom strujom odvoda i naponom drejn-izvora. Na primjer, pogodni su: SQ2310ES (do 20V!!!), 40N06, IRF7413, IPD090N03L, IRF7201. Općenito, što je niži napon otvaranja, to bolje.

Evo nekih ključnih karakteristika LED drajvera na QX5241:

  • maksimalna izlazna struja - 2,5 A;
  • Efikasnost do 96%;
  • maksimalna frekvencija zatamnjenja - 5 kHz;
  • maksimalna radna frekvencija pretvarača je 1 MHz;
  • tačnost stabilizacije struje preko LED dioda - 1%;
  • napon napajanja - 5,5 - 36 Volti (normalno radi na 38!);
  • izlazna struja se izračunava po formuli: R = 0,2 / I LED

Pročitajte specifikaciju (na engleskom) za više detalja.

LED drajver na QX5241 sadrži nekoliko delova i uvek je sastavljen prema ovoj šemi:

Čip 5241 dolazi samo u paketu SOT23-6, tako da je najbolje da mu ne prilazite s lemilom za lemilice. Nakon ugradnje, ploču treba temeljito oprati kako bi se uklonio fluks; svaka nepoznata kontaminacija može negativno utjecati na rad mikrokola.

Razlika između napona napajanja i ukupnog pada napona na diodama trebala bi biti 4 volta (ili više). Ako je manji, onda se uočavaju neki kvarovi u radu (trenutna nestabilnost i zviždanje induktora). Zato uzmite sa rezervom. Štaviše, što je veća izlazna struja, veća je rezerva napona. Mada, možda sam upravo naišao na lošu kopiju mikrokola.

Ako je ulazni napon manji od ukupnog pada na LED diodama, proizvodnja ne uspijeva. U tom slučaju, prekidač izlaznog polja se potpuno otvara i LED diode svijetle (naravno, ne punom snagom, jer napon nije dovoljan).

AL9910

Diodes Incorporated je kreirao jedan vrlo zanimljiv LED drajver IC: AL9910. Zanimljivo je po tome što njegov radni napon omogućava direktno povezivanje na mrežu od 220 V (preko jednostavnog diodnog ispravljača).

Evo njegovih glavnih karakteristika:

  • ulazni napon - do 500V (do 277V za naizmjenični);
  • ugrađeni stabilizator napona za napajanje mikro kruga, koji ne zahtijeva otpornik za gašenje;
  • mogućnost podešavanja svjetline promjenom potencijala na kontrolnoj nozi sa 0,045 na 0,25 V;
  • ugrađena zaštita od pregrijavanja (pokreće se na 150°C);
  • radnu frekvenciju (25-300 kHz) postavlja eksterni otpornik;
  • za rad je potreban eksterni tranzistor sa efektom polja;
  • Dostupan u osmokrakim SO-8 i SO-8EP paketima.

Drajver sastavljen na AL9910 čipu nema galvansku izolaciju od mreže, pa ga treba koristiti samo tamo gdje je nemoguć direktan kontakt sa elementima kola.