Ceas Arduino fără modul RTC

 Autor:   Publicat pe:    Niciun comentariu

Folosirea unui modul RTC (real time clock) este recomandată la realizarea unui proiect care se folosește de oră și dată. Modulele RTC sunt ieftine, au acuratețe bună, dar mai mult de atât continuă să funcționeze și când placa de dezvoltare nu este alimentată. Acestea folosesc o baterie tip celulă litiu pentru a ține evidența timpului utilizând curenți foarte mici. Există destul de multe biblioteci Arduino care implementează funcții pentru comunicarea cu diverse surse de timp (module RTC, servere NTP etc.). Un exemplu este biblioteca Time de Paul Stoffregen care utilizează timer-ul microcontroller-ului pentru a ține evidența timpului, dar permite și sincronizarea periodică cu o sursă de acuratețe mai mare.

Totuși, am decis să scriu o funcție ce ține evidența timpului incrementând variabile la fiecare apelare. Schița apelează această funcție în fiecare secundă, iar aceasta incrementează variabila secundelor și o afișează. Dacă s-a numărat până la 60, variabila secundelor trece la 0 și funcția avansează, incrementând minutele. Tot așa, sunt incrementate oricând este cazul variabilele pentru oră, zi, lună și an. Afișajul este actualizat doar pentru ce va fi modificat. Pentru a scrie programul am folosit o placă de dezvoltare compatibilă cu Arduino Uno căreia i-am atașat un shield cu afișaj LCD 16x2 și butoane analogice. Doar două butoane sunt necesare pentru modificarea datei și orei, așa că poți folosi butoane tactile conectate la pini de intrare digitali. În acest caz, vei modifica mai multe linii de cod, evaluând starea pinilor digitali.

Ceas Arduino fără modul RTC

KiCad: ajustări schemă și asociere amprente circuit (2)

 Autor:   Publicat pe:    Niciun comentariu
KiCad reprezintă o suită de aplicații gratuite și cu sursă deschisă pentru desenarea de scheme electronice și proiectarea de circuite imprimate. Este una din puținele suite de acest tip oferită gratuit și fără limitări. Mai mult de atât, rulează pe toate sistemele de operare (Windows, Linux, Mac). Deși considerat de unii greu de utilizat și instabil, versiunile recente vin cu îmbunătățiri și caracteristici noi. KiCad nu vine cu limitări în ceea ce privește dimensiunea circuitului imprimat. Numărul maxim de straturi este 32 pentru conexiunile electrice.

Într-un articol anterior am desenat o schemă electrică pentru un alimentator cu LM317. Acum, vom finaliza schema și ne vom pregăti pentru proiectarea circuitului imprimat. Schema proiectată nu are simbolurile numerotate și nici valorile lor afișate. Deschide schema din proiectul creat în articolul precedent.
Introducere în KiCad: asociere amprente circuit

KiCad: primii pași în desenarea schemei (1)

 Autor:   Publicat pe:    Niciun comentariu
KiCad reprezintă o suită de aplicații gratuite și cu sursă deschisă pentru desenarea de scheme electronice și proiectarea de circuite imprimate. Este una din puținele suite de acest tip oferită gratuit și fără limitări. Mai mult de atât, rulează pe toate sistemele de operare (Windows, Linux, Mac). Deși considerat de unii greu de utilizat și instabil, versiunile recente vin cu îmbunătățiri și caracteristici noi. KiCad nu vine cu limitări în ceea ce privește dimensiunea circuitului imprimat. Numărul maxim de straturi este 32 pentru conexiunile electrice.

Pachetul KiCad este format din mai multe aplicații: Eeschema este utilizat pentru desenarea de scheme electronice; în Pcbnew se proiectează circuitele imprimate; cu GerbView se pot vizualiza fișierele Gerber. Pe lângă acestea mai sunt disponibile câteva utilitare: editoarele de simboluri și amprente ale componentelor, editorul pentru chenarul care încadrează schemele, un calculator util în proiectarea circuitelor electronice dar și o aplicație ce poate transforma o imagine în amprentă PCB pentru o componentă.
Introducere în KiCad: desenare scheme (1)

Măsurare frecvență cu Arduino

 Autor:   Publicat pe:    Niciun comentariu
Măsurarea frecvenței unui semnal folosind o placă de dezvoltare Arduino pare un lucru simplu. Dar,  mediul de dezvoltare Arduino nu prevede o funcție simplă care analizează un semnal de pe un pin și întoarce frecvența acestuia. Există funcția pulseIn pe care mulți utilizatori Arduino o folosesc pentru a măsura frecvențe, dar utilitatea ei este în a măsura durata unui semnal. Măsurarea unui singur ciclu al unui semnal oscilant nu este o metodă corectă pentru determinarea frecvenței acelui semnal. Mai mult de atât, „frecvența” maximă ce poate fi determinată astfel este de doar 50 kHz.

Măsurarea corectă a frecvenței unui semnal folosind un microcontroller se face numărând pulsațiile semnalului necunoscut într-un interval de timp bine determinat. Pentru o apreciere corectă, în acel interval de timp, semnalul ar trebui să treacă prin sute sau mii de tranziții (oscilații). Acest mod de măsurare presupune configurarea unor timer-e hardware. Timer-ul este un registru special care își incrementează valoarea sincron cu oscilatorul principal al sistemului sau în funcție de oscilațiile unui semnal extern aplicat pe un pin al microcontroller-ului.

Măsurare frecvență cu Arduino

Lipituri în electronică: aliaje, fluxuri, echipamente

 Autor:   Publicat pe:    Un comentariu
Lipirea în electronică are rolul de a îmbina (electric și mecanic) piese metalice, la cald, cu ajutorul unui metal de adaos în stare topită (numit aliaj de lipit), având temperatura de topire inferioară aceleia a pieselor de lipit care se umezesc, dar nu participă prin topire la formarea îmbinării. Diferența între lipire și sudură este aceea că, la sudură are loc procesul de topire a metalelor ce vor fi îmbinate.

Aliajul de lipit în stare lichidă se comportă asemenea unei picături de apă ce întâlnește o suprafață. Dacă această suprafață este curată și lipsită de particule de praf, grăsimi sau uleiuri, picătura va „umezi” suprafața, distribuindu-se uniform pe aceasta. În caz contrar, tensiunea superficială a lichidului limitează aria de contact cu suprafețele pe care le atinge.

Majoritatea producătorilor de componente electronice folosesc materiale ușor de lipit pentru terminalele componentelor. Metalele și aliajele uzuale sunt cupru, oțel acoperit de cupru sau nichel-oțel, ce pot fi acoperite cu argint, staniu, plumb-staniu sau aur. Principalele surse de contaminare a suprafețelor de lipit sunt grăsimile și uleiurile, praful și oxizii.

Lipituri în electronică: aliaje, fluxuri, echipamente

Utilizarea shield-ului cu ecran LCD și butoane pentru Arduino

 Autor:   Publicat pe:    Niciun comentariu
Majoritatea proiectelor Arduino necesită o interfață prin care diverse date pot fi afișate utilizatorului, dar și o interfață prin care utilizatorul poate modifica variabile ale programului. Afișarea datelor se face de obicei pe ecrane LCD. Cele mai utilizate împreună cu microcontrollere sunt LCD-urile alfanumerice care pot afișa 1, 2 sau 4 rânduri de 16 sau 20 caractere. Pentru a interacționa cu programul ce rulează pe microcontroller, utilizatorul folosește cel mai adesea câteva taste/butoane.

Pentru a ușura munca dezvoltatorilor, producătorul chinezesc DFRobot a creat un shield pentru Arduino care conține un LCD alfanumeric cu două rânduri de câte 16 caractere dar și 5 butoane tactile legate în configurație analogică. Shield-ul se conectează direct pe plăcile de dezvoltare Arduino UNO și compatibile. Prețul acestui shield variază între 3 și 10 USD la magazinele chinezești cu livrare internațională.

Shield-ul cu LCD și butoane (sursa: DFRobot)
Shield-ul cu LCD și butoane (sursa: DFRobot)