Jump to content
ELFORUM - Forumul Electronistilor

Bandi Szasz

Membru activ
  • Content Count

    556
  • Joined

  • Last visited

Community Reputation

33 Se poate si mai bine

About Bandi Szasz

  • Rank
    Membru

Recent Profile Visitors

280 profile views
  1. O sa experimentez cu niste joculete de lumini prin care sa nu se observe sau sa nu iasa in evienta atat de tare ca sunt grupate a cate 3, daca o sa arata chiar foarte rau revin la planul initial cu WS2812b insa se va complica treaba la alimentare, estimez minim 350W limitand puterea prin evitarea culorii albe (consum maxim) si luminozitate mai scazuta, din cate am vazut sunt foarte sensibile si la tensiune. Am reusit sa prajesc o rola intreaga de 5m cu o sursa proasta care la pornire are un spike peste tensiunea reglata, la 12V imi e mai usor sa implementez protectie cu diode TVS, MOVuri si pornire intarziata prin mosfeturi de putere, la 5V nu prea am gasit nici diode nici movuri . Modelul de care zici ca nu se pot repara este modelul turnat in silicon, modelul in tub siliconic se poate repara pentru ca banda led este pur si simplu introdusa intr-un tub din silicon nefind lipit sau prins in nici un fell de acel tub. Revenind la subiect, in zilele urmatoare o sa ma apuc sa fac softul care sa poata afisa caractere si te-as ruga sa imi zici cand ai stabilit ce dimensiune o sa aiba caracterele, nu e mare problema daca o sa mai schimbam dupa doar asa estimativ sa stiu pt un punct de pornire.
  2. Eu cred ca o sa merg pe varinta de 30LED/M si ma gandeam sa merg pe cea de 12V ( WS2811 ) singurul dezavantaj este ca sunt controlate in grupuri de 3led-uri si nu individual fiecare led insa simplifica mult partea de alimentare, se gasesc mult mai usor surse de putere mare la 12V, curentul e mai mic deci si cablul de alimentare necesar poate fi mai subtire, caderea de tensiune pe benzi mai mica, etc... si nu cred ca se observa de la distanta ca sunt grupuri de 3led-uri, ramane sa fac niste teste cand imi vine ESP-ul sa vad cum arata. Chinezii il vand cu 15-17$ rola de 5m cu 150LED, IP65 ( banda LED este in tub siliconic, poate sta afara in ploaie fara nici o problema).
  3. Salut, Am facut si programul de test pentru masurarea consumului ( il gasesti in folderul V2 pe acelasi link). Pe linia 6 se afla "#define COLUMN_COUNT 40" sa inlocuiesti 40 cu numarul de coloane pentru care vrei sa masori consumul iar pe linia urmatoare se afla "TOTAL_COLUMN" acolo sa pui numarul total de coloane pe care il are afisorul daca vrei sa testezi pentru toate coloanele pui acelasi numar la ambele definitii. O sa se aprinda pe rand cele 3 culori, fiecare pt 5s pentru a putea masora pentru fiecare culoare in parte ( portocaliu o sa consume cel mai mult find ambele leduri aprinse). Spor.
  4. Da cablul ar fi cea mai usoara solutie. ESP32 din care am vazut este dual core, IDE ul arduino compileaza functia "loop" pe core 0 deci si wifi-ul merge pe core 0, iar particele de cod care trebuie sa mearga fara sa fie deranjate se pot configura sa mearga pe core 1 in paralel. Oricum asta deja e partea avansata de folosire a ESP32 si nu este chiar atat de simplu, eu vreau sa-l folosesc pentru a comanda in jur de 1000 de neopixeli ( WS2812), am gasit cateva exemple care folosesc modulul I2S cu DMA pentru a trimite datele catre leduri in paralel ca CPU-ul sa poata deja precalcula urmatoarea secventa, din cate am vazut in acel exemplu tot setup-ul modulului si procesarea erau mutate pe core 1 lasand 100% liber CPU-ul pentru programul generat de Arduino IDE insa e foarte complicat codul pe acolo care ma intrece si pe mine. Alternativa ar fi module externe de comunicare care sa se ocupa de toata treaba iar uC sa primeasca rezultatul pe UART, module bluetooth HC, sau ceva similar. Dar atat timp cat se poate rezolva cu fir nu stiu daca merita complicatia.
  5. Total de acord cu tine, se pot programa separat si de la facut de la 0 partea de alimentare, asa in mare am vazut cum sta treaba cu ESP-urile si cum se programeaza (si individual cu un usb/ttl extern)insa doar de acum incolo sa ma ma apuc sa fac cate ceva sa mai experimentez. Acuma totul depinde de @niculae cat de bine se descurca in proiectat eventualele cablaje si de lipit componente de dimensiune mai mici, daca se descurca sa poata asambla doar cipul ESP atunci este o varianta (eventual un modul de incarcare daca alege sa mearga pe celule li-ion / acumulatori NI-MH), daca nu se pot folosii si PIC -uri sau alte uC-uri si de gasit un modul de transimitere cat de cat ok in variante THT, probabil depinde si de bugetul alocat. Am avut si eu de gand sa fac un termometru exterior cu ESP care sa transmita date pe un server si o pagina web pentru vizualizare, as avea cam toate componentele in afara de un chip ESP32 poate daca o sa am timp la iarna o sa iau niste ESP uri fara base board si sa mesteresc un pcb pentru el cu alimenatre li-ion si incarcare pe usb. Daca imi iese atunci as putea sa fac inca un modul. Insa am destul de putin timp liber si alte treburi mai prioritare. Cum ziceam mai sus depinde cat de urgent e toata treaba, daca nu e graba mare atunci il realizam in pasi mici
  6. Da e poate face si cum sugereaza @costi002 insa din experiente anterioare cu alte module sunt probleme pe partea de alimentare, pe marea majoritate de module chinezul pune regulatoare standard cu curent de mers in gol de 4 - 5mA ( quescient current) si nu prea ai facut mare treaba daca ESP in sine consuma mult sub 1mA dar regulatorul manaca 5mA si atunci trebuie intervenit pe placuta si schimbat partea de alimentare cu un regulator mai serios care sa consume doar cateva sute uA. Este realizabil dar necesita modificari aduse modulelor, acuma nu stiu ce regulator au pus pe ESP32 ca inca nu am pus mana pe unu-l insa sunt convins ca este unu-l standard cu curent de lucru in jur de 4 - 5mA, care ar goli o pereche de li-ion de 4000mA in cam 30-35 de zile ( doar regulatorul in sine neluand in calcul puterea necesra transmiterii datelor in intervale de 10-15minute). Ca o alta posibila slutie se mai gasesc module RF de 433mhz ("433Mhz RF Transmitter and Receiver" este denumirea cu care le gasesti pe ebay) insa nu stiu ce raza de transmitere au ca nu am folosit pana acuma.
  7. Salut, rama e facuta din ceva profil pvc nu stiu exact denumirea, mi la dat o cunostinta care lucreaza intr-un atelier de termopane ma gandesc ca e ceva profil de geamuri / usi. Comanda e facuta cu un PIC16F1503, insa e doar un simplu ceas fara alte functii. - Nu stiu ce sa iti recomand la digiti, trebuie sa vezi cam cum iti ies caracterele sa in cat spatiu poti sa le aranjezi dupa plac. - Reglaj de lumina cred ca se rezolva prin PWM in pin 9, trebuie incercat. Daca merge atunci se poate folosii si o fotorezistenta care sa comande luminozitatea in fucntie de lumina ambientala. - DS-ul are functie de alarma insa nu stiu daca e posibil de setat in care zile ale sapt. probabil va trebuii intervenit si din cod pt asta. Pentru sunet in afara de buzzer eu am mai folosit in alte proiectele module "DF Player mini", sunt module mici de mp3 player. Necesita un card microSD pe care copiezi sunete .mp3, merge destul de tare, sunt exemple pe youtube daca te intereseaza varianta asta. 4-5-6 Depinde de ce caractere o sa alegi si daca o sa incapa in formatul propus de tine. Se pot afisa texte pe acelasi rand cu culori diferite acela nu impune o problema majora. Cu comunicatia nu stiu ce sa zic, eu inca nu am facut insa am pe drum de la vecinii Chinezi module "ESP32" sunt niste microcontrollere cu WIFI si bluetooth incluse si se pot programa in Arduino insa imi va lua ceva timp pana ma prind cum functioneaza. Insa in regim amator e foarte greu de facut modul extern pe baterii, mult mai probabil va trebuii si acela alimentat separat. Arduino asa simplu ar avea cred pini insuficienti, trebuie calculat exact numarul exact si de vazut, se pot elibera pini prin adaugarea unui 74HC595 intre arduino si display sa mai reduca pinii necesari pt conectarea la JP4. De efecte scrolling din nou nu am o parere, personal nu am facut si nici incercat sa fac nu stiu cat de complicat este de facut. Proiectul pare realizabil ( cu comunicatia wireless ramane de vazut de ce este capabil acest ESP32, eu vrea sa fac un fell de automatizare sa pot controla mai multe jucarii prin WIFI de la distanta) insa necesita timp, personal nu pot dedica foarte mult timp zilnic, daca nu este urgent proiectul gen cateva saptamani 1 luna, incercam pe bucatele sa-l construim, daca e mai urgent poate exista persoane pe forum care au mai mult timp / cunostinte cu module bluetooth / wifii etc...
  8. Salut, da este normal comportamentul, nu am stiut exact cate cloane are si am pus 40 se pare ca sunt mult mai multe. Pe primele linii este o definitie care arata asa "#define COLUMN_COUNT 40" acolo trebuie sa schimbi 40 cu numarul exact de coloane si atunci se va duce chiar pana la capat. Consumul maxim o sa fie exact consumul pe care il are cand pe prima linie are toate led-urile aprinse, afisarea se face pe randuri dar schimbarea intre randuri o sa fie atat de rapid ca va parea ca sunt toate aprinse. Azi o sa ajung foarte tarziu acasa si nu voi avea timp sa fac mai nimic. Facem maine sau in weekend un test si cu toate led-urile aprinse sa poti masura mai usor. Urmatorul pas ar fi sa te gandesti ce caractere vrei sa afiseze, din cate am inteles o sa fie un ceas si atunci ma gandesc ca o sa fie numere. Si sa faci cate o schita pentru fiecare caracter in parte asa in forma matriciala (Care leduri din matrice sa fie aprinse, de exemplu un caracter o sa fie un bloc de 5x7 si din acel bloc care leduri sa fie aprinse pentru fiecare numar in parte), am si eu un ceas similar eu am facut caractere de 5*7, la tine cred ca se pot face si mai mari (de preferat sa fie toate caracterele de aceasi dimensiune). Cand sunt toate caracterele schitate o sa explic cum trebuie transformate ca se le putem folosii in program. Al meu arata cam asa:
  9. Revin cu micul test pt Arduino, il poti lua de aici: https://1drv.ms/f/s!Ault6cjXvjzrgog-Sa5Xs67m-ZBfMg, este un folder local de pe PC-ul meu prin OneDrive, orice modific eu local la mine il poti vedea si tu pe acel link, cand mai fac ceva la program tot de pe acel link o sa-l poti lua. Am folosit Arduino 1.8.6, la librarii inca nimic special deci momentan nu trebuie sa instalezi nimic aparte. Conectare: JP4 - pin arduino 1 - D2 2 - D3 3 - D4 4 - D5 5 - D6 6 - D7 7 - D8 8 - D9 9 - D10 La pin 9 poti conecta cu rezistenta cu care ai testat sa ai luminozitate mai mica, celalalte legaturi pot fi facute pentru siguranta cu cate o rez. 240 / 330 ohm, dar merge si fara. In cazul in care alimentezi din surse diferite ( display cu o sursa si Arduino din USB) sa faci masa comuna intre cele doua surse. Daca totul merge corect ar trebuii sa se aprinda unu cate unu LED-urile, rosu - verde - portocaliu pe prima linie dupa care se repeta pe linia 2,3,4,etc... Daca nu merge mai verificam prin cod, posibil sa se fi strecurat o greseala. Spor.
  10. Salut, Super, se aprind si se sting in grup din cauza zgomotului introdus de butoane, asta se rezolva fara probleme cu Arduino si se vor aprinde cu precizie. Revin mai spre seara cand ajung acasa cu un mic program de test, dupa care o sa incercam sa stabilim niste etape de urmat pentru programul final si o sa facem impreuna si programul final de comanda pentru Arduino.
  11. Uhh, acum ca amintesti de groupul de rezistente observ ca am gandit putin gresit legarea butoanelor, greseala mea. - de pe pin 7,8 elimina rezistenta de 10k, nu este nevoie de ea. Grupul de rezistente face treaba acelui rezistor. Fara a apasa pe buton ar trebuii sa ai 5V, daca este mai putin incearca inlaturarea butonului, daca in momentul acela o sa ai 5V inseamna ca butonul are scapari si nu prea e bun in cazul de fara. - pe pin 5, 6 din nou trebuie elimitat rezistenta iar butonul se muta intra pin si masa dar cu contactele normal inchis, deci cat timp butonul nu este apasat el ar trebuii sa conduca si sa traga pinul la masa, in momentul apasarii lui sa intrerupa legatura iar groupul de rezistente trage pin-ul la 5V, mai simplu il rezolvi prin legarea pin-ului cu niste fire direct la masa iar cand vrei sa simulezi apasarea butonului deconectezi pur si simplu firul. Totusi mi se pare cidat de ce parazitii din pin 9 schimba care leduri sunt aprinse, conform schemei pin 9 merge la 74HC138 in pin E3 nici cum nu are legatura cu registrii de shiftare sa poate influenta care leduri sunt aprinse si care nu, el poate doar aprinde sau stinge absolut toate ledurile conform schemei. Daca ai chef poti incerca cu butoanele reconfigurate cum am trecut mai sus, maine am sa fac un mic proiectel pt Arduino si incercam si asa.
  12. Salut, Butoanele ar trebuii sa arata asa, daca asa sunt connectate atunci este montat corect. In momentul in care s-au aprins unele leduri intr-un anumit rand inseamna ca mosfetul lucreaza corect si nu aven treaba cu ei. Pasul urmator ar fi sa-l pornesti din nou pui pin 1,2,3 la masa sa se aprinda randul 1 si incerci sa te joci cu butoanele iar daca se schimba chiar si fara sens care led-uri sunt aprinse atunci este ok, registrii de shiftare sunt foarte sensibili iar butoanele au asa numitul efect de "bounce" care inseamna ca pana butonul face calumea contact el da mai multe impulsuri scurte detectabile de 74HC595. Idea este sa se schimbe macar care leduri sunt aprinse in momentul in care apesi butonul din pin 5 dupa ce te ai jucat putin cu butoanele 7,8 si 6. Daca se schimba atunci presupun ca am nimerit pinii de comanda si daca ai un Arduino prin sertare o sa facem un mic program sa testam, Arduino poate da comenzi exacte fara acel efect de bounce si poate aprinde cu precizie fiecare led.
  13. Revin cu pasii de urmat pentru testare: Pe conectorul JP4 avem asa (LOW = masa, HIGH = +5V ): - pin 9, activeaza decodoarele care comanda mosfetii, daca schema este corecta si avem doua porti logice cu negare unu-l dupa altul atunci activarea se face prin legarea acestui pin la masa, deci stare LOW. Daca nu merge se incearca la +5V deci stare HIGH, asta in cazul in care e o greseala in schema si de fapt este doar o singura poarta inversoare. - pin 4, cu starea LOW se activeaza una dintre cele doua module de leduri legate in paralel, iar cu starea HIGH se activeaza cealalta pereche. - pin 1,2,3 este intrarea in decodor, care comanda pe rand cate un moseft ( atasez mai jos o poza cu combinatiile posibile), pe scurt daca toate trei sunt LOW se aprinde primul rand din matrice, daca este LOW,LOW,HIGH se aprinde al doilea rand din matrice. La randul 9 ramanem fara posibilitati aici intervine pinul 4 pe care il tragem spre HIGH sa activam al doilea modul de matrice si repetam combinatiile de la inceput, deci cu pin 4 HIGH si pin 1,2,3 LOW se va aprinde randul 9. - pin 7,8 este intrarea in registrii de shiftare, unu-l dintre ele comanda culoarea rosie, celalalt comanda verdele, din moment ce registrii comanda catozii sa se aprinda un LED trebuie trimis logic LOW, iar sa fie stins logic HIGH. - pin 6 este pinul clock pentru registrii, acest pin trebuie tinut in stare LOW, cand trece in HIGH confirma ca pe pinul 7 si 8 sau pus starile dorite si registrul il poate citi si salva. - pin 5 este pinul Latch, care trebuie tinut in stare LOW, cand trece in HIGH se confirma ca toate datele au fost transmise si registrul poate activa pe iesiri valorile salvate. Pentru a testa: - Pin 9 cu o rez.10k -> la masa adica LOW. - Pin 4 cu o rez.10k -> LOW ( testam primele 8 linii din matrice, daca se vrea a fi testate liniile 9-16 se pune pin-ul HIGH) - Pin 1,2,3 cu rez.10k -> in combinatiile enumerate mai sus, toate trei -> LOW aprind primul rand, 1-> LOW, 2->LOW, 3->HIGH aprinde randul 2, etc.... - Pin 7,8 cu o rez.10k -> HIGH si in paralel cu rezistenta un buton catre masa, clasicul buton cu rezistenta pull-up. - Pin 6 cu o rez.10k -> LOW si in paralel cu rezistenta un buton catre +5V, buton cu rezistenta pull down. - Pin 5 similar cu Pin 6. Daca este gata testam asa: - Pe pinii 1,2,3 alegem o combinatie, cel mai usor e sa fie legata toate 3 la masa si testam pe linia 1. La fell si cu pin 4 cu rez. 10k direct la masa. ( Pasul acesta ar trebuii sa fie deja gata urmand pasii de mai sus) - Pentru a aprinde un led din matrice tinem unu-l dintre butoanele aflate pe pin-ul 7 sau 8 depinde care culoare o vrem si tinand acest buton apasat apasam scurt butonul de pe pin 6 care confirma ca am ales combinatia dorita din pin 7,8 iar registrul poate citi valorile. Pentru fiecare coloana se repeta pasii, daca se vrea a aprinde primele 4 led-uri se repeta pasii de 4 ori. Apasand butonul din pin 6 fara a apasa unu-l din butoanele de pe pin 7,8 sare peste acel LED care ramane stins. Daca facem prima data primul pas, apoi odata fara sa apasam urmat din nou odata primul pas unde apasam una din butoane obtinem: LED 1 aprins, LED 2 stins, LED 3 aprins. - Cand am terminat de ales led-urile pe care le vrem aprinse apasam scurt butonul din pin 5, acest fapt confirma registrului ca am terminat de ales ledurile dorite si le poate afisa, in acest moment pe matrice ar trebuii sa se aprinda niste led-uri pe primul rand din matrice, daca chiar se aprind atunci am nimerit modul de comanda si se poate trece mai departe la un Arduino sau orice alt uC, daca nu a functionat inversam starea pinului 9 si repatam, daca nici asa nu vrea atunci am gresit undeva la modul de comanda. Combinatiile pentru pinii 1,2,3 : ( A0, A1, A2 in schema sunt pinii 1,2,3 iar Y0-7 sunt iesirile catre mosfeti)
  14. Revin dupa o inspectie mai atenta a schemei si putina documentatie pentru fiecare componenta in parte. - Modulele de LED-uri ( matricea de 8x8 ) are anod comun iar pentru fiecare culoare in parte ( rosu / verde ) are cate un rand de catod deci 8 pin-uri de anod si 16 de catod. - In total avem 16 linii ( row - uri ) si tot atatea mosfeturi deci tragem concluzia ca fiecare mosfet activeaza cate o linie in parte alimentand anodul liniei respective din moment ce sunt mosfeti canal P si sunt legati la +5V. - Acele decodoare sunt legate in asa fell incat se asigura ca in orice situatie ( comenzi primite ) exista cel mult o singura linie activa, deci nu putem avea doua linii din matrice active in acelasi timp. - Doua module de LED-uri au catozii legate in paralel, unu-l dintre HC595 comanda catozii culorii rosii iar celalalt HC595 comanda catozii culorii verzi, astfel se pot aprinde ambele culori in acelasi timp obtinand portocaliu. Ce mi se pare bizar este ca doar unu-l dintre ei are atasat rezistori de limitare, celalalt pare legat direct la leduri, mult mai sigur cel cu rezistori comanda culoarea rosie avand tensiune de deschidere mai mica decat cel verde iar pentru culoarea verde nu exista rezistente de limitare. Nu stiu cum anume au gandit ei sa alimenteze ledurile verzi direct la 5V fara rezistente de limitare, ori se bazeaza pe faput capabilitatii reduse a curentului suportat de HC595 ori faput ca led-ul este pulsat foarte scurt la 5V si acesta suporta curentul tras la 5V pentru un timp foarte scurt. Legat de schema mi se pare putin ciudat intrarea 9 din conectorul J4 care are atasat doua porti inversoare unu-l dupa altul, daca se trimite logic HIGH la iesire avem tot logic HIGH pentru ca prima poarta il face LOW iar al doilea inapoi in HIGH, daca nu este o greseala in schema nu imi dau seama care este motivul folosirii unei porti inversoare ca poarta nevinversoare. In rest pare destul de clar modul in care functioneaza, o sa revin mai spre seara daca imi fac putin timp si cu niste pasi pentru a testa modul de functionare, dar am niste dubii legat de comanda culorii verzi fara rezistente, daca se bazeaza pe un impuls scurt se poate testa doar cu un mic program pe Arduino care sa comande in impulsuri afisorul. Poate mai e cineva pe aici care intelege mai bine modul de comanda cu HC595 si fara rezistente de limitare, am gasit o schema de la un display similar vandut pe ebay care nu are absolut nici o rezistenta de limitare dintre HC595 si display, mult mai posibil se bazeaza pe curentul mic suportat de registru dar totusi e un compromis destul de urat sa stresezi acel registru pentru cateva rezistente amarate.
  15. Bandi Szasz

    Android studio - bluetooth HC-06

    Salut, e putin mai complicat din cate tin minte. Am eu un proiectel in Android Studio cu bluetooth ( eu am folosit modul HC - 05) l-am facut acuma vro 2 ani nu mai tin minte exact cum era treaba cu bluetooth-ul, eu am gasit un tutorial pe net si l-am adaptat pe acela. Daca crezi ca te ajuta sa treci prin el si sa vezi cum este facut o sa-l caut, e undeva pe OneDrive, dar din pacate nu mai tin minte exact cum mergea deci doar asa ca model si sa vezi daca intelegi ceva de acolo si il poti refolosii.
×