This is an old revision of the document!
Seif Deștept
Nume: Avram Isabela-Maria
Grupa: 331CA
Introducere
Prezentarea pe scurt a proiectului ales:
Proiectul pe care doresc să-l implementez constă într-un seif deștept. Acesta se poate deschide cu un cifru care a fost setat inițial (introdus printr-o tastatură).
Scopul proiectului este ca să pot avea un loc mai sigur pentru depozitarea lucrurilor importante și de valoare.
Ideea de la care am pornit a fost faptul că aveam un cub din lemn în casă care nu avea nicio întrebuințare substanțială, era practic doar un suport, așa că m-am gândit că aș putea să-l folosesc cumva la proiectul de la PM (deși am sfârșit prin a folosi polistiren). Dat fiind faptul că este un cub, am zis că ar tebui să realizez un proiect prin care mă pot folosi de faptul că pot depozita ceva în interiorul cubului, așa mi-a venit ideea de seif.
Pentru mine este util deoarece, așa cum am menționat mai sus, mi-ar prinde bine să am un loc mai sigur pentru depozitarea lucrurilor importante și de valoare, iar pentru alții ar fi de folos tot din același motiv.
Descriere generală
Proiectul este un seif care poate fi deschis printr-un cifru (stabilit inițial în interiorul codului, deci este ceva prestabilit). Dacă cifrul corespunde parolei stabilite inițial, atunci este acționat servo motorul care deschide (printr-un zăvor) ușa seifului. În cazul în care cifrul introdus nu corespunde celui corect, atunci ușa va rămâne închisă. Totodată, la începutul programului, ușa se va închide automat. Se vor afișa mesaje corespunzătoare fiecărei etape în care se află seiful. Seiful va avea 3 melodii încorporate, acestea fiind redate la începutul fiecărei acțiuni importante din cadrul programului (pornire seif, deschidere ușă, cod greșit).
Hardware Design
1. Listă de piese folosite:
Arduino
Tastatură
Servomotor
Ecran LCD I2C
Fire
Buzzer Pasiv
Rezistență 100Ω
Breadboard
2. Schema electrică:
Software Design
Mediul de dezvoltare folosit este Arduino IDE.
Librării şi surse 3rd-party:
Wire.h
Keypad.h
LiquidCrystal_I2C.h
Servo.h
pitches.h
Descrierea funcționalității codului:
Prima etapă a fost să declar toți parametrii de care am avut nevoie.
Funcționalitatea dată seifului este practic de a se deschide când este introdusă parola corectă, altfel acesta este menținut închis. Parolele (cea setată = corectă și cea introdusă de la tastatură) sunt verificate caracter cu caracter. Programul nu acceptă mai mult de 4 caractere pentru parolă, fapt pentru care vor fi luate în considerare doar primele 4 caractere introduse de la tastatură.
Sistemul de închidere este format dintr-un servo motor, un zăvor metalic și o sârmă, astfel că modul în care funcționează acesta depinde în totalitate de corectitudinea parolei introduse, dacă este corectă, servo motorul își va schima poziția în “unlockPos”, iar dacă este incorectă, servo motorul va rămâne în poziția “lockPos”. Din poziția “unlockPos”, utilizatorul poate alege să închidă seiful apăsând pe butonul cu caracterul ”#”, astfel servo motorul schimbându-și poziția în “lockPos”. Procesul se poate relua astfel la nesfârșit.
Funcțiile implementate în cod sunt următoarele:
void setup():
se configurează pinul buzzer-ului;
se închide ușa (servo motorul va trece în poziția “lockPos”);
se inițializează ecranul LCD și se afișează un mesaj de start;
se redă una dintre melodiile definite;
void loop():
aici se verifică starea ușii, dacă este deschisă (caz în care se verifică dacă se vrea închiderea ușii cu ajutorul tastei ”#”, dacă este apăsată, atunci se va trece servo motorul în poziția “lockPos”) sau nu (se va ține ușa deschisă cu ajutorul funcției void Open());
void clearData():
void ServoOpen():
void ServoClose():
void Open():
în acestă funcție se așteaptă introducerea unei parole de acces la seif;
când o tastă este apăsată, aceasta va fi reținută într-un
Rezultate Obţinute
Care au fost rezultatele obţinute în urma realizării proiectului vostru.
Concluzii
Download
O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună

.
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.
Jurnal
21.05.2023: Implementare hardware + schemă bloc + schemă electrică
01.05.2023: Adăugare informații pe pagină
21.04.2023: Stabilire temă proiect
Bibliografie/Resurse
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.
Export to PDF