This is an old revision of the document!


Popescu Irina-Elena Bluetooth Door Lock

Bluetooth and RFID door lock

Autor

  • nume: Popescu Irina-Elena 331CB
  • grupa: 331CB

Introducere

Door lock-ul se poate deschide atat prin RFID, folosindu-se de un tag, cat si prin modul de bluetooth, folosindu-se de o aplicatie de telefon. Exista doua functii: lock si unlock door. Cand se va apela una dintre aceste functii, se vor porni led-ul si buzzer-ul, si un servomotor se va roti 180 de grade, pentru a trage de un zavor. Am vrut sa fac un door lock pentru a mi-l pune la usa mea, deoarece daca imi inchid usa, mereu trebuie sa ma ridic sa o deschid pentru altcineva; dar acum, pot sa fac totul de pe telefon. :-P

Descriere generală

  • Cand se va da lock, led-ul rosu se va aprinde de 2 ori, si buzzer-ul va suna tot de 2 ori, pe o anumita frecventa; la final, servomotorul se va roti cu 180 de grade.
  • Cand se va da unlock, led-ul verde se va aprinde de 3 ori, si buzzer-ul va suna tot de 3 ori, pe o alta frecventa; la final, servomotorul se va roti cu 180 de grade, in sens opus.
  • Daca tag-ul este gresit, led-ul albastru se va aprinde de 5 ori, si buzzer-ul va suna tot de 5 ori, pe o alta frecventa.
  • Aplicatia de mobil a fost creata cu MIT App Inventor.

Pentru a putea da comenzile de lock/unlock din aplicatia de mobil, trebuie sa se introduca o parola in aplicatie.

Exista un unic tag care va porni functiile de lock/unlock folosind modulul de RFID, tag identificat prin numarul sau serial de 4 bytes.

Schema bloc:

Hardware Design

Lista de componente:

  • Arduino UNO ATmega328p
  • Breadboard
  • Modul Bluetooth Master Slave HC-05
  • Modul Tag RFID-RC522
  • Micro servo motor SG90
  • Led RGB cu catod comun
  • Buzzer activ
  • Fire tata-tata/mama-tata
  • Rezistoare
  • Tag RFID

Schema electrica:

Software Design

Am folosit Arduino IDE pentru a dezvolta programul. Bibliotecile folosite au fost:

  • AddicoreRFID.h pentru modulul RFID-RC522.
  • SPI.h pentru modulul RFID-RC522 - acest comunica prin SPI.
  • Servo.h pentru micro servo motor SG90.

Variabilele globale sunt:

  • door_locked: reprezinta starea actuala a usii; ia valoarea 1/0 daca usa este inchisa/deschisa.
  • i, state: variabile auxiliare.
  • checksumRFID, strRIFD: variabile folosite in functiile pentru RFID.
  • myRFID: obiectul de tip AddicoreRFID.
  • myServo: obiectul de tip Servo.

Functii:

setPins()

Setez pinii pe care voi lega componentele de arduino pe OUTPUT:

  • 7, 8, 9 pentru led-ul RGB.
  • 2 pentru buzzer
  • 5, 10 pentru RFID

si ii atasez obiectului de tip servo pinul PWM 3.

activatePins()

Scriu pe pinul 10 valoarea LOW si pe pinul 5 valoarea HIGH, pentru a activa RFID-ul.

setupComponents()

Initializez variabilele globale. Folosind AddicoreRFID_Init() initializez obiectul myRFID. Folosind write setez servo motorul la 0 grade, si variabila door_locked este 0, adica usa este deschisa.

setup()

set_RGB_led(int red_light, int green_light, int blue_light)

servo_lock(int startp, int endp)

servo_unlock(int startp, int endp)

door_routine(int redl, int greenl, int bluel, int delayt, int flickert, int freqb)

lock()

unlock()

wrong_tag()

check_tag()

RFID_routine()

bluetooth_routine()

loop()

Rezultate Obţinute

TODO

Concluzii

TODO

Download

TODO

Jurnal

  • 25.04.2021: am ales proiectul si am creat pagina.
  • 03.05.2021 - 26.05.2021: lucrat la proiect
  • 26.05.2021: update la pagina + adaugat schema electrica
  • 26.05.2021:

Bibliografie/Resurse

PDF

pm/prj2021/alazar/bluetooth_door_lock.1622048505.txt.gz · Last modified: 2021/05/26 20:01 by irina.popescu0706
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