Și lumina însăși:
După un timp, luminile de fundal au încetat să mai funcționeze și am luat-o pe acest candelabru acasă pentru a descoperi cauza defecțiunii.
Umplerea candelabrului arată astfel:
Primul lucru care a prins ochiul a fost conectarea LED-urilor. Buget, nesigur, dar funcționează. Verificarea sursei de alimentare a LED-urilor a fost surprinsă de tensiunea pe ea, care era de aproximativ 320V. În opinia mea, pentru 47 de LED-uri acest lucru este prea mult. Mijloacele meșteșugărești chinezești ... După ce au aflat că sursa de alimentare este în viață, a început să verifice LED-urile. Când era un LED mort, îl înlocuiește cu ceea ce era acasă. Ca urmare, aproximativ 5 piese au fost înlocuite, așa cum se poate vedea în fotografie:
În principiu, acest lucru ar putea fi finalizat prin achiziționarea câtorva LED-uri noi albastre și suspendarea candelabrului înapoi. Dar nu mi-a plăcut legătura dintre LED-uri și am fost convins că arderea restului nu este un timp foarte lung. În plus, lumina de fundal cu o singură culoare este plictisitoare, dar am vrut să fac ceva interesant.
În primul rând sa gândit în direcția LED-urilor RGB să o înlocuiască. Dar este scump, pentru o lungă perioadă de timp să se deranjeze cu conexiunea, o mulțime de fire și timp. Această idee a fost imediat aruncată.
Apoi mi-am amintit că un prieten cumva a comandat mult timp pentru el însuși bandă RGB cu WS2801 pentru fiecare LED: bandă pe aliexpress. L-am contactat, am aflat că nu are nevoie de el și că a devenit fericit proprietarul acestei benzi.
Particularitatea lucrului cu această bandă este un algoritm foarte simplu de operare și doar 2 picioare pentru control. Trimitem o secvență de biți egală cu numărul de LED-uri multiplicate cu 24 (8 biți pe culoare) și apoi banda în sine strălucește în modul specificat. Câteva cicluri simple și totul funcționează. Nu te deranja nici cu PWM, nici cu tine. Mai devreme am încercat să conectez 18 benzi decupate LED la PIC18F4550 prin registrul de deplasare. Sa dovedit a fi un monstru destul de greoaie în ceea ce privește hardware-ul și codul. În acest caz, totul este simplu și simplu.
Sa decis să gestionăm acest caz utilizând stm32f100c4. Doar pentru astfel de sarcini mici, plăcile de bază pentru acești controlori au fost comandate la uzina chineză (datorită acestui subiect). După instalarea umplerii, placa arată astfel:
O placă mică, de 5x5 cm. Există mai multe picioare, este posibil să conectați un ceas și o baterie. Puteți să vă alăturați atât de la 5B, cât și de la 3.3. În general, ieftin și convenabil.
Sursa de alimentare a fost o sursă externă de alimentare de la unele D-Link cu o tensiune de 5V și o putere de curent de 3A.
Aceste LED-uri erau mai extinse decât cele native, și era leneș să extindă găurile. Am încercat adezivul fierbinte pentru a le lipi în găuri - sa dovedit că se păstrează bine.
O probă de lipire și plasarea plăcilor în candelabru:
Totul este lipit și pregătit pentru testare:
În candelabru se folosesc numai lămpi cu incandescență, așa că am instalat un dispozitiv pentru pornirea ușoară a granitului. Chiar dacă nu crește viața lămpilor, cel puțin lumina se va aprinde ușor și mai plăcut pentru ochi. Dispozitivul este mic:
Chiar și odată cu modificarea candelabrului, problema era că firele native din lămpi erau smochine și se rup când se mișcau. trebuia să se schimbe. Cel mai rău lucru în această operațiune este că firele din cartușe se lipesc de terminale. A trebuit să curăț rugina cu un cuțit și apoi să lipesc firele normale.
În general, totul este conectat și funcționează. Acum vă puteți gândi cum va străluci totul.
Din fotografii puteți vedea că LED-urile sună. Numărul de LED-uri din inele: 3, 8, 15, 21. Modul principal a trebuit să fie neted și să nu bată în ochi, așa că a fost luată ideea unei lămpi de dispoziție. Dar am fost dispus să folosesc ceea ce puteți controla fiecare LED. Asta a venit în minte: un mod când lampa este pornită și apoi un flux neted de culori. Au fost inventate modurile de pornire 2: aprinderea LED-urilor într-o spirală și de-a lungul inelelor (de la centru la margini). Iată ce sa întâmplat:
Următoarea problemă: modurile de rulare 2 și trebuie să alegeți unele aleatoare. A fost utilizată o metodă congruențială liniară. Dar valoarea inițială la începutul lui MK a fost întotdeauna aceeași, ceea ce, în final, nu permitea alegerea unui mod cu adevărat aleatoriu. Aceasta înseamnă că valoarea inițială a parametrului la pornire este diferită de valoarea din execuția precedentă. Pentru a face acest lucru, am decis să folosesc DAC-ul controlorului și să capturez pickup-ul. Un fir a fost atașat la picior, care a servit ca o antenă. Lansarea testului a arătat că această soluție funcționează cu succes.
Pentru lampa de dispozitie, exista 2 optiuni de implementare: folositi RGB si folositi paleta de culori HSV. În primul caz, trebuie să te deranjezi pentru ca culoarea albă să nu se termine și algoritmul rezultat este mai complicat, așa că am folosit a doua abordare. Prin schimbarea componentei H, puteți obține o gamă bună de culori pentru lampă. Mai mult, totul este simplu: alegeți câte repetiții vom mări sau micșora valoarea culorii H, selectați viteza debitului și începeți.
Firmware și depanare:
Înainte de a ieși, am scăpat de un alt bloc nativ (imaginea de mai sus - o cutie albă pe partea stângă), care vă permite să faceți 3 moduri de operare de la un buton (luminile sunt aprinse, LED-urile sunt aprinse, totul este pornit). Și LED-urile cu lămpi erau atârnate pe diferite butoane ale comutatorului.
Candelabru fără frumos:
Pentru confortul de rafinament ulterior, portul SWD pentru firmware a fost scos cu fire în partea laterală a candelabrului (prin orificiile de ventilație). Deci, este posibil să nu scoateți candelabruul pentru al refăge.
- Banda este 1000 freca.
- Panou, controler, articulație - aproximativ 100r.
- Dispozitivul de pornire ușoară - 300р pentru 500Vт.
- Alimentare - 300r.
Codul sursă (realizat în Atollic TrueSTUDIO) poate fi găsit aici.
Primul lucru care a prins ochiul a fost conectarea LED-urilor. Buget, nesigur, dar funcționează. Ce nu ți-a plăcut? Din câte văd, conexiunea serială standard.
Verificarea sursei de alimentare a LED-urilor a fost surprinsă de tensiunea pe ea, care era de aproximativ 320V. În opinia mea, pentru 47 de LED-uri acest lucru este prea mult. Ce tip de alimentare? În cazul în condensator, atunci totul este corect - fără sarcină la ieșirea de intrare integrală.
P.S. Imaginile sunt cel mai bine încărcate chiar aici, pe serverul comunității, butonul din stânga "imagine" Și apoi se poate dovedi ca cu un habraffect.
Ce nu ți-a plăcut? Din câte văd, conexiunea serială standard. Ars unul - toate inceteaza sa mai arda. Ar fi mai bine să faceți mai multe "linii" de LED-uri, dar acest lucru va crește costul :)
Ce tip de alimentare? În cazul în condensator, atunci totul este corect - fără sarcină la ieșirea de intrare integrală. Da, condensatorul. Nu știam despre asta, va trebui să citesc despre ele.
P.S. Despre imagini uchtu, mulțumesc.
Și, dacă aceștia clipește doar când pornesc - atunci normele.