Pentru a conecta Keypad-ul la Arduino Uno folosim pinii de la D1, pana la D7. Pentru a conecta servomotorul la Arduino, folosim pinul D9 de la Arduino la pinul PWM al servomotorului.Firul pozitiv al buzzer-ului il conectam la pinul D10 al Arduino-ului, iar pe cel negativ la ground.Pentru conectarea LCD-ului am procedat astfel:
Voi atasa schema electrica:
Librarii folosite:
Pentru acest proiect, am setat parola initiala ca fiind “9876”.Se poate modifica in cod, astfel putem pune ce parola dorim.Daca este cea corecta, se va afisa “Corect”, altfel “Incorect”. Am definit o matrice key pentru keypad, continand toate cele 12 taste.Cu ajutorul functiilor din libraria Keypad.h, precum getKey, putem citi de la tastatura care este parola introdusa de utilizator.Atunci cand este cea corecta, apelam functia “unlockdoor”, in care avem diverse mesaje ce se vor afisa pe LCD, dar si modificarea servomotorului de la 180 la 0 grade,timp de 5 secunde, dupa care va reveni in pozitia initiala.In cazul opus, se va apela functia “incorrect”, unde, de asemenea, avem diverse mesaje ce se vor afisa pe LCD, dar si sunetul buzzer-ului, redat folosind “unlockbuzz”.In cazul in care parola este gresita de 5 ori la rand, se va apela functia “torture”, utilizatorul fiind obligat sa astepte 15 secunde pana a mai putea introduce o alta parola.Apeland functia “change”, la apasarea tastei ”#”, parola default este schimbata cu o alta din keypad.
In cadrul proiectului, am invatat sa configurez keypad-ul si lcd-ul, fiind prima data cand realizez un proiect mai complex, simultan pe partea de hardware, cat si pe cea de software.Am observat ca un singur fir pus gresit poate inseamna mult timp pentru debugging.Proiectul ales a fost o experienta placuta, atat pentru faptul ca am simtit ca fac ceva de care la un moment dat, cu alte resurse hardware, ma voi putea folosi poate in viata reala.Din punct de vedere al problemelor intampinate, lcd-ul a avut mai multe probleme de afisare.
Analiza schemei bloc: 20 aprilie 2022
Alegerea componentelor: 21 aprilie 2022
Inceperea implementarii: 26 aprilie 2022
Finalizarea proiectului: 29 mai 2022
Finalizarea documentatiei: 31 mai 2022