This is an old revision of the document!


SmartDoor

Introducere

SmartDoor este un sistem de control al accesului bazat pe carduri RFID. La scanarea unui card, Arduino Nano interoghează un server prin WiFi pentru a verifica dacă accesul este permis, afișează rezultatul pe un ecran LCD și trimite un log cu fiecare tentativă către server.

Utilitatea proiectului constă în:

  • securizarea ușilor fără chei tradiționale
  • feedback vizual imediat prin ecranul LCD (“Access Granted” / “Access Denied”)
  • înregistrarea automată a fiecărei tentative de acces (reușite sau nu)
  • posibilitatea de a revoca accesul unui card direct din baza de date, fără intervenție fizică

Descriere generală

Sistemul este compus din cinci blocuri principale:

  • Bloc de citire — Modulul RC522 citește UID-ul cardului RFID prezentat și îl trimite către Arduino Nano prin interfața SPI (prin intermediul level shifter-ului bidirecțional, deoarece RC522 lucrează la 3.3V iar Arduino la 5V).
  • Bloc de control — Arduino Nano primește UID-ul, îl formatează și îl transmite modulului ESP8266 prin comunicație serială UART (prin intermediul unui adaptor de tensiune 5V→3.3V).
  • Bloc de comunicație WiFi — ESP8266 ESP-01 se conectează la rețeaua WiFi și trimite o cerere HTTP către serverul de backend cu UID-ul cardului. Primește răspunsul (permis/refuzat) și îl transmite înapoi la Arduino.
  • Bloc de afișare — LCD 1602 cu modul I2C afișează mesajul corespunzător răspunsului primit: “Access Granted” sau “Access Denied”.
  • Bloc de alimentare — Modulul MB102 montat pe breadboard furnizează 5V pentru Arduino și LCD, respectiv 3.3V (prin adaptoare) pentru modulele ESP și RFID.

Schema bloc vizuală este prezentată mai jos.

Schemă bloc hardware SmartDoor

Hardware Design

Listă de piese:

1 Arduino Nano 1 Microcontroler principal, 5V logic
2 Breadboard + modul alimentare MB102 1 set Sursă 5V/3.3V din USB sau jack
3 Modul WiFi ESP8266 ESP-01 1 UART la 3.3V
4 Adaptor 5V→3.3V pentru ESP8266 (4-pin) 1 Conversie nivel UART + alimentare 3.3V
5 Kit cititor RFID RC522 1 SPI la 3.3V, include card și breloc
6 Level shifter 8 canale bidirecțional (5V↔3.3V) 1 Conversie logică SPI Arduino↔RC522
7 LCD 1602 cu modul I2C (PCF8574) 1 Afișaj feedback acces, 5V, I2C
8 Cabluri jumper ~25 M-M și M-F

Schema Electrica

Schemă Electrica SmartDoor

Descriere Pini

Arduino Nano
Pin Utilizare Descriere
VIN Alimentare intrare Primește tensiunea de 9V de la baterie pentru a alimenta întregul sistem prin regulatorul intern al Nano.
5V Alimentare ieșire Furnizează 5V către side-ul B al level shifter-ului, LCD și linia de alimentare a breadboard-ului.
3.3V Alimentare ieșire Furnizează 3.3V direct către VCC al RC522 și VCC al ESP8266 prin adaptorul de tensiune.
GND Masă comună Conectează masa comună pentru toate modulele din circuit.
D0 / RX UART recepție Primește datele seriale de la modulul ESP8266 (răspunsul serverului: permis/refuzat).
D1 / TX UART transmisie Trimite UID-ul cardului RFID citit către modulul ESP8266 pentru verificare pe server.
D9 RST RC522 Controlează pinul de reset al modulului RC522 pentru inițializarea și repornirea cititorului RFID.
D10 SS / SDA RC522 Pinul de Slave Select SPI, activează comunicația cu RC522 când este tras la LOW.
D11 / MOSI SPI date ieșire Transmite datele de comandă de la Arduino către RC522 prin protocolul SPI.
D12 / MISO SPI date intrare Primește datele citite de RC522 (UID card) înapoi la Arduino prin protocolul SPI.
D13 / SCK SPI clock Generează semnalul de clock pentru sincronizarea comunicației SPI cu RC522.
A4 / SDA I2C date LCD Linia de date I2C pentru trimiterea caracterelor și comenzilor către LCD 1602.
A5 / SCL I2C clock LCD Generează semnalul de clock I2C pentru sincronizarea comunicației cu LCD 1602.
RFID RC522
Pin Utilizare Descriere
VCC Alimentare 3.3V Primește 3.3V de la pinul 3.3V al Arduino prin side-ul A al level shifter-ului.
GND Masă Conectat la masa comună a circuitului.
SDA (SS) Chip Select SPI Activează modulul RC522 pentru comunicație atunci când Arduino îl selectează.
SCK Clock SPI Primește semnalul de clock SPI de la Arduino prin level shifter.
MOSI Date intrare SPI Primește comenzi și date de la Arduino prin level shifter.
MISO Date ieșire SPI Trimite UID-ul cardului citit înapoi către Arduino prin level shifter.
RST Reset Permite Arduino să reseteze și să reinițializeze modulul RC522 când e necesar.
Waveshare Level Shifter 8 Canale
Pin Utilizare Descriere
VCCA Alimentare 3.3V (side A) Referința de tensiune pentru side-ul de 3.3V, conectat la pinul 3.3V al Arduino.
VCCB Alimentare 5V (side B) Referința de tensiune pentru side-ul de 5V, conectat la pinul 5V al Arduino.
GND Masă Masă comună pentru ambele side-uri ale convertoarelor de nivel logic.
A0-A4 Side 3.3V → RC522 Pinii de 3.3V conectați direct la RC522 (SCK, MOSI, MISO, SS, RST).
B0-B4 Side 5V → Arduino Pinii de 5V conectați la Arduino (D13, D11, D12, D10, D9), realizând conversia bidirecțională.
ESP8266 ESP-01
Pin Utilizare Descriere
VCC Alimentare 3.3V Primește 3.3V prin adaptorul de tensiune dedicat ESP8266.
GND Masă Conectat la masa comună a circuitului.
TX UART transmisie Trimite răspunsul serverului (permis/refuzat) către pinul RX al Arduino.
RX UART recepție Primește UID-ul cardului de la Arduino pentru a-l trimite serverului prin WiFi.
CH_PD / EN Enable Tras la 3.3V permanent pentru a menține modulul ESP8266 activ și funcțional.
RST Reset Tras la 3.3V pentru funcționare normală, poate fi folosit pentru reset software.
GPIO0 Boot mode Tras la 3.3V pentru boot în mod normal de operare (nu în mod programare).
LCD 1602 I2C
Pin Utilizare Descriere
VCC Alimentare 5V Primește 5V de pe linia de alimentare a breadboard-ului pentru a alimenta ecranul.
GND Masă Conectat la masa comună a circuitului.
SDA I2C date Primește datele de la Arduino (A4) pentru a afișa mesajele “Access Granted” / “Access Denied”.
SCL I2C clock Primește semnalul de clock I2C de la Arduino (A5) pentru sincronizarea comunicației.

Poza Proiect

Poza Proiect SmartDoor

Software Design

Rezultate Obţinute

Concluzii

Download

Jurnal

Bibliografie/Resurse

pm/prj2026/alexandru.jipa2803/dacian.pascu.1779463704.txt.gz · Last modified: 2026/05/22 18:28 by dacian.pascu
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