Cum sa creezi un sistem de autentificare cu parola folosind Arduino si tastatura 1x4

Cum sa creezi un sistem de autentificare cu parola folosind Arduino si tastatura 1x4
Salutare! Sunt Oana de la Bitmi.ro si astazi vreau sa iti arat cum poti construi un sistem de autentificare cu parola folosind o tastatura membrana 1x4, un ecran OLED si un modul RTC DS1302 cu Arduino. Este un proiect foarte util si interactiv, perfect pentru a invata cum functioneaza tastaturile, afisajele OLED si ceasurile RTC in proiectele cu Arduino. 
 

Despre tastatura membrana 1x4

Aceasta este formata dintr-un rand cu 4 butoane si are o constructie subtire, flexibila, cu conector tip banda. Fiecare buton este conectat pe cate o linie, ceea ce inseamna ca tastatura ocupa doar 4 pini digitali de pe placa Arduino. Functionarea este foarte directa: cand apesi un buton, acesta face contact electric si Arduino poate citi instant care dintre taste a fost apasata. Acest tip de tastatura este folosit frecvent in proiecte cu meniuri simple, coduri PIN sau controale rapide, fiind rezistenta si usor de integrat pe un panou sau o carcasa. 

 

Despre modulul RTC DS1302 cu biblioteca Rtc by Makuna

Modulul RTC ne permite sa pastram ora exacta chiar si atunci cand Arduino este oprit, folosind bateria integrata (CR2032). Biblioteca Rtc by Makuna simplifica comunicarea cu modulul si ofera functii pentru setarea si citirea orei curente. La prima rulare, ora se seteaza automat la data si ora la care s-a compilat codul, iar apoi ceasul functioneaza independent. 
 

Despre ecran OLED cu interfata I2C

Spre deosebire de LCD-urile clasice, un OLED nu are nevoie de iluminare de fundal, fiecare pixel emitand lumina proprie. Acest lucru inseamna un consum redus de energie si o vizibilitate foarte buna chiar si in intuneric. Cele mai intalnite modele au diagonala de 0.96 inch si rezolutie de 128x64 pixeli, suficiente pentru a afisa mesaje text, simboluri sau grafice simple. Comunicatia se face prin interfata I2C, ceea ce reduce numarul de pini necesari la doar doi: SDA si SCL. Datorita dimensiunilor mici si a usurintei in utilizare, aceste afisaje sunt ideale pentru proiecte portabile, panouri de control sau sisteme de monitorizare. 

Componente necesare
1 x Placa de dezvoltare compatibila Arduino R4 WiFi
1 x Ecran OLED 0.96" cu interfata IIC/I2C
1 x Tastatura membrana 1x4 Keypad
1 x Modul ceas RTC DS1302 
11 Fire tata - tata 
5 Fire tata - mama 


Schema de conectare



Cod sursa

Dupa ce ai realizat circuitul, e timpul sa introduci codul sursa, pentru a descarca codul sursa click AICI.

Conecteaza placa de dezvoltare compatibila Arduino Uno R4 la computer folosind portul USB. Apoi, mergi la meniul Tools si selecteaza tipul de placa si portul serial pe care il folosesti (optiunile Board si Port).  

 

Pentru ca acest proiect sa functioneze corect, este important sa instalezi cateva librarii in Arduino IDE. Acestea ii permit placii sa comunice cu modulul RTC si sa afiseze informatiile pe ecranul OLED.

  • Adafruit SSD1306 - pentru controlul ecranului OLED 0.96" prin interfata I2C.
  • Adafruit GFX Library - libraria grafica de baza folosita impreuna cu SSD1306 pentru text si elemente grafice.
  • Rtc by Makuna - pentru comunicarea cu modulul de ceas in timp real DS1302. 

Toate librariile se instaleaza rapid prin Library Manager din Arduino IDE: accesezi meniul Sketch > Include Library > Manage Libraries, tastezi numele fiecarei librarii si apesi butonul Install.

Dupa instalarea librariilor si introducerea codului, apasa butonul Upload (sageata spre dreapta). In partea de jos a ferestrei Arduino IDE vei putea urmari mesajele de stare: Compiling Sketch, Uploading si Done. Daca incarcarea s-a finalizat cu succes, Arduino va incepe imediat sa ruleze codul, iar proiectul tau este gata pentru testare. 


Cum functioneaza proiectul

La pornire, Arduino initializeaza toate componentele: ecranul OLED, modulul RTC DS1302 si tastatura 1x4. Pe ecranul OLED apare mesajul „Introdu parola (4 taste 1-4)”, care indica utilizatorului sa tasteze codul de acces. Fiecare apasare a unui buton de pe tastatura este citita de Arduino prin pinii digitali corespunzatori, iar cifrele introduse sunt afisate progresiv pe OLED. Cand utilizatorul introduce toate cele 4 cifre, Arduino verifica daca parola corespunde uneia dintre parolele definite pentru cei 6 utilizatori.

Daca parola este corecta, pe ecranul OLED se afiseaza mesajul „Bine ai venit, [Nume]!” si se afiseaza ora exacta a logarii, preluata de la modulul RTC DS1302. Daca parola introdusa nu corespunde niciunei parole valide, pe OLED apare mesajul „Parola gresita!”, iar dupa cateva secunde ecranul revine la mesajul de start.

Sistemul permite ca dupa autentificarea unui utilizator, ecranul sa ramana blocat afisand mesajul de confirmare pentru aproximativ 5 secunde, dupa care revine automat la mesajul de introducere a parolei.
Ora afisata pe ecran se actualizeaza automat si este preluata direct de la ceasul RTC, care mentine timpul corect chiar daca Arduino este oprit. Astfel, fiecare utilizator autorizat poate vedea pe OLED confirmarea autentificarii si ora exacta a logarii, iar sistemul poate fi usor extins cu mai multi utilizatori sau parole diferite.

Compara produse

Trebuie sa mai adaugi cel putin un produs pentru a compara produse.

A fost adaugat la favorite!

A fost sters din favorite!