This is an old revision of the document!


Senzor ultrasonic cu RFID

Introducere

Idee de proiect: Transformam senzorul ultrasonic + bar-graph + backlight adaptiv intr-un asistent de parcare personalizat controlat prin RFID:

* Pornire/Oprire cu cartela:

  • Apropii cartela “Cheie parcare” → activezi senzorul si interfata.
  • Apropie aceeasi (sau o alta) cartela → dezactivezi complet modul parcare (economisesti energie si blochezi masuratorile).

* Profiluri utilizator:

  • Fiecare cartela incarca setari proprii:
  • Praguri de alerta (incepand de la 10 cm pana la 1 cm)
  • Ideal pentru familie sau cine imparte aceeasi masina, fiecare cu preferinte diferite.

* Moduri de operare:

1. **Mod „Normal”** (Bar-graph + bip proportional)
2. **Mod „Silence”** (numai backlight + afisaj vizual, fara sunet)

* Extensii posibile:

  • Log distante: stochezi ultimele 10 valori de distanta in EEPROM si le descarci la PC.
  • Interfata seriala: trimiti profilul curent si istoricul distantelor la aplicatie desktop.

Astfel, proiectul devine mai versatil, trece de la un simplu senzor de parcare la o platforma configurabila prin cartela RFID, adaptata la nevoile fiecarui utilizator.

Descriere generala

Lista scurta a modulelor si interfetelor:

* HC-SR04 (PD6 TRIG, PD5 ECHO – Timer1 Input Capture): masoara distanta cu ultrasunete (∼15 mA).

* LCD I²C 16×2 (blue backlight) (PC4/A4 SDA, PC5/A5 SCL – I²C @ 100 kHz, 5 V, ∼5 mA backlight): afiseaza mesaje text si distanta.

* PWM backlight (OC2A → PB3, Fast-PWM @ 976 Hz): regleaza luminozitatea backlight-ului (pana la 50 mA).

* Buzzer pasiv (OC0A → PD6, PWM @ 2 kHz): semnalizare sonora (≤10 mA).

* RFID MFRC522 (SPI bus + CS PC4, RST PC5): citeste tag-uri (SPI @ ≤10 MHz, 30–50 mA @ 3.3 V).

Hardware Design

Lista de piese:

  • HC-SR04 ultrasonic sensor
  • LCD I²C 16×2 (blue backlight)
  • Buzzer pasiv (alerte sonore de proximitate)
  • MFRC522 RFID reader module

Schema electrica:

Bill of Materials

Detalii Pinout

1. HC-SR04 Ultrasonic Rangefinder

 1.1. **VCC** → **5 V** pe Arduino Uno (alimentare modul)  
 1.2. **GND** → **GND** pe Arduino Uno (masă comună)  
 1.3. **TRIG** → **D2 (PD2)** pe Arduino Uno (pin digital 2)  
 1.4. **ECHO** → **D3 (PD3)** pe Arduino Uno (pin digital 3)  

2. LCD I²C 16×2 (Blue Backlight)

 2.1. **GND** → **GND** pe Arduino Uno
 2.2. **VCC** → **5 V** pe Arduino Uno
 2.3. **SDA** → **PC4 (Analog 4 / A4)** pe Arduino Uno
 2.4. **SCL** → **PC5 (Analog 5 / A5)** pe Arduino Uno

3. Buzzer Pasiv

 3.1. **+** → **D5 (PD5)** pe Arduino Uno (pin PWM pentru tonuri)
 3.2. **–** → **GND** pe Arduino Uno

4. MFRC522 RFID Module

 4.1. **3.3 V**   → **3.3 V** pe Arduino Uno (alimentare RFID)
 4.2. **GND**    → **GND** pe Arduino Uno
 4.3. **MOSI**   → **D11 (PB3)** pe Arduino Uno (Master-Out Slave-In SPI)
 4.4. **MISO**   → **D12 (PB4)** pe Arduino Uno (Master-In Slave-Out SPI)
 4.5. **SCK**    → **D13 (PB5)** pe Arduino Uno (SPI Clock)
 4.6. **SDA/SS** → **D10 (PB2)** pe Arduino Uno (Chip-Select pentru RFID)
 4.7. **RST**    → **D9  (PB1)** pe Arduino Uno (Reset extern RFID)

Software Design

Mediu de dezvoltare si librarii: - Arduino IDE - Biblioteci utilizate:

  1. SPI.h (bus SPI hardware pentru RFID)
  2. MFRC522.h (cititor RFID MFRC522)
  3. Wire.h (I²C bus pentru LCD)
  4. LiquidCrystal_I2C.h (driver pentru LCD I²C 16×2)

Structura firmware:

1. HC-SR04 – Timer & Input-Capture

  • Generare puls de trigger (CTC)
  • Masurare echo si calcul distanta

2. I²C LCD 16×2

  • Initializare LiquidCrystal_I2C (0x27, 16×2)
  • Afisare text sincron cu Serial Monitor

3. PWM Buzzer

  • Tonuri non-blocante (tone()) pentru acces garantat/blocat
  • analogWrite() pentru volum proportional cu distanta

4. Serial UART

  • Transmitere mesaje de stare si distanta la 9600 baud

5. RFID MFRC522

  • Initializare SPI si MFRC522
  • Detectare si toggle acces la scanare card

Rezultate Obtinute

Stare actuala proiect(18 mai):

Concluzii

* Am demonstrat cu succes integrarea senzorului HC-SR04, a modulului RFID MFRC522, a display-ului LCD I²C 16×2 si a buzzer-ului pasiv intr-un sistem unificat de asistenta la parcare.

* Logica de comutare „acces garantat”/„acces blocat” prin scanarea cardului RFID functioneaza stabil, iar masurarea distantei si semnalizarea sonora PWM au fost validate atat pe ecranul LCD, cat si in Serial Monitor.

* Afisarea textului pe LCD I²C (16×2) s-a realizat prin `LiquidCrystal_I2C`, cu mesaje clare (negru pe albastru), iar valoarea distantei apare in timp real.

* Software-ul este complet: toate modulele majore (HC-SR04 cu timer CTC, HC-SR04 input-capture, RFID pe SPI, buzzer PWM, I²C LCD si UART) si protocoalele de autentificare sunt implementate si testate.

* Extensii viitoare posibile:

  • profiluri personalizate stocate in EEPROM pentru diferiti utilizatori,
  • stocare si descarcare a istoricului de distante prin serial/USB,
  • adaugarea unui senzor de lumina ambientala pentru backlight adaptiv,
  • migrarea pe o placa cu Wi-Fi pentru monitorizare remote.

* Proiectul combina cu succes notiuni teoretice (timer CTC, SPI, I²C, PWM) cu practica Arduino (debugging, optimizare, design hardware), oferind o platforma solida pentru viitoare aplicatii embedded.

Jurnal

* 2025-05-16 – Am adaugat sectiunea Bill of Materials intre Hardware Design si Software Design.

* 2025-05-16 – Am inserat sectiunea Functionalitate Hardware cu descriere succinta a modulelor si interfetelor.

* 2025-05-16 – Am completat sectiunea Detalii Pinout cu explicatii pin-by-pin.

* 2025-05-24 – Am integrat si testat controlul Buzzer pasiv cu semnale PWM si tonuri non-blocante, precum si logica de mapare discreta a volumului pe intervale de 1 cm.

* 2025-05-25 – Am adaugat functionalitatea de toggle acces prin scanare RFID cu asteptare la indepartarea cardului si afisarea mesajelor pe LCD I²C 16×2.

* Stadiu software – Aproximativ 100% gata: toate modulele (HC-SR04, RFID, I²C LCD, buzzer PWM, UART) si logica principala sunt implementate si testate.

Bibliografie/Resurse

pm/prj2025/avaduva/ionut_andrei.rusu.1748358768.txt.gz · Last modified: 2025/05/27 18:12 by ionut_andrei.rusu
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