Sistem Inteligent de Control Acces cu RFID și Afișaj Personalizat

Introducere

Prezentare: Proiectul reprezintă un sistem de securitate pentru controlul accesului, care validează identitatea utilizatorilor pe baza tag-urilor sau cardurilor RFID. La scanarea unui card autorizat, sistemul acționează un mecanism de blocare (simulat printr-un servomotor), afișează un mesaj personalizat de bun venit pe un ecran LCD cu interfață I2C și emite un semnal sonor de confirmare.

Scopul proiectului: Scopul principal este crearea unei yale electronice inteligente care să permită gestionarea utilizatorilor (adăugare/ștergere) direct din interfața fizică a dispozitivului. Acest lucru se va realiza printr-un “Master Card” care accesează un mod de configurare, salvând noile ID-uri în memoria non-volatilă (EEPROM) a microcontroller-ului.

Ideea de la care am pornit: Ideea a pornit de la sistemele clasice de control acces din clădirile de birouri sau hoteluri. Am dorit să dezvolt o versiune interactivă a acestora, care să ofere nu doar siguranță, ci și un feedback vizual personalizat și auditiv pentru utilizator.

Utilitate: Pentru mine, este o oportunitate excelentă de a integra simultan mai multe protocoale de comunicație (SPI, I2C) și funcții hardware avansate (Timere, PWM, Întreruperi și EEPROM) pe un singur microcontroller. Pentru alții, un astfel de sistem poate fi scalat și integrat în viața reală pentru a securiza dulapuri, cutii de valori sau chiar ușa unei camere.

Descriere generală

Arhitectura sistemului este centrată în jurul unui microcontroller ATmega328P și este împărțită în trei blocuri logice principale: Input, Procesare și Output.

  • Blocul de Procesare (Unitatea Centrală): Microcontroller-ul gestionează mașina de stări (State Machine) a întregului sistem. Acesta stochează în memoria internă EEPROM baza de date cu UID-urile cardurilor valide. Procesorul interoghează constant intrările, iar în funcție de datele primite, schimbă starea sistemului (ex. din “Așteptare” în “Acces Permis” sau “Mod Administrator”) și comandă perifericele de ieșire.
  • Blocul de Input (Intrări):
    • Modulul RFID RC522: Citește tag-urile și comunică cu unitatea centrală prin protocolul SPI.
    • Buton tactil (Exit Button): Permite deschiderea manuală a ușii din interior. Este conectat la un pin setat să declanșeze o întrerupere externă hardware, asigurând un răspuns imediat al sistemului.
  • Blocul de Output (Ieșiri):
    • Display LCD 1602 (cu modul I2C): Afișează mesaje de status și saluturi personalizate. Comunicarea se face prin protocolul I2C.
    • Servomotor SG90: Reprezintă acționarea fizică (zăvorul). Este controlat prin generarea unui semnal PWM.
    • Buzzer pasiv: Oferă feedback auditiv (bip scurt pentru succes, bip lung pentru eroare), controlat tot prin semnale PWM cu frecvențe variabile.

Hardware Design

Stadiul actual

Sistemul este montat pe breadboard în jurul unei plăci Arduino Uno. Toate componentele sunt conectate și sistemul răspunde corect la scanarea cardurilor.

Componente și rol

Componentă Rol în proiect
Arduino Uno (ATmega328P) Creierul sistemului — decide ce se întâmplă când se scanează un card și ține minte cardurile autorizate
Modul RFID RC522 Citește cardurile și brelocurile RFID
LCD 1602 cu modul I²C Afișează mesaje (status, bun venit, erori)
Servomotor SG90 Simulează zăvorul care se deschide
Buzzer pasiv Sunete de confirmare sau eroare
LED roșu Indicator vizual când accesul e refuzat
Buton Deschide zăvorul din interior (buton de “exit”)

Detalii de cablare

  • RC522: alimentat la 3.3 V (foarte important — modulul se arde la 5 V!). Comunică cu Arduino prin SPI, deci folosește pinii D10-D13 (sunt pinii dedicați pentru SPI pe Arduino Uno). Pinul RST este pus pe D7.
  • LCD I²C: alimentat la 5 V și conectat la pinii A4 (SDA) și A5 (SCL), pinii dedicați pentru comunicarea I²C. Doar 4 fire în total — un mare avantaj față de un LCD obișnuit care ar avea nevoie de 6-7 fire.
  • Servomotor SG90: semnalul pe D9, un pin care poate genera semnal PWM (necesar pentru a controla unghiul motorului).
  • Buzzer pasiv: conectat la D3, tot un pin PWM, ca să poată genera sunete de frecvențe diferite.
  • LED roșu: anodul pe D4 printr-un rezistor de 220 Ω (ca să nu se ardă LED-ul), catodul la GND.
  • Buton: un capăt pe D2, celălalt la GND. D2 a fost ales pentru că poate declanșa o întrerupere — adică Arduino reacționează imediat când butonul e apăsat, fără să aștepte să termine ce face în acel moment.

Schema electrică

Schema electrică a sistemului

Schema separă cele două surse de alimentare (3.3 V doar pentru RC522, 5 V pentru restul) și cele două magistrale de comunicare (SPI pentru RC522, I²C pentru LCD), toate cu masă comună pe breadboard.

pm/prj2026/andrei.batasev/serban.dadulescu.txt · Last modified: 2026/05/16 16:33 by serban.dadulescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0