Detector de Viteza

Nume: GRIGORE Cosmin Mitica

Grupa: 332CC

Introducere

  • Dispozitivul poate fi folosit pentru a determina viteza unui obiect, viteza pe care o va afisa pe LCD, iar apoi o va transmite folosind pe un device mobil folosind mediul bluetooth. Dispozitivul are viteza limita de 100 cm/s, iar depasirea acesteia face ca LED-ul rosu sa se aprinda, iar Buzzer-ul sa se activeze, altfel se aprinde doar LED-ul verde. De asemnea, va afisa si un mesaj corespunzator pe ecranul LCD in functie de viteza.
  • Proiectul isi propune implementarea unui Radar fix, fara a avea nevoie de interventie umana putand fi folosit in diverse scopuri.
  • Initial am avut in mintea ideea de a implementa un radar fix, care sa afiseze viteza obiectului doar pe LCD, insa mi s-a parut prea usor si am zis sa il fac putin mai provocator si am mai adaugat si modulul bluetooth, activarea led-urilor si a buzzer-ului.

Descriere generală

  • Dispozitivul isi propune sa determine viteza unui obiect folosind 2 senzori infrarosu. Odata ce obiectul a trecut prin cele doua bariere infrarosu, dispozitivul ii va determina viteza pe care apoi o va afisa pe ecranul LCD. De asemenea, dispozitivul va transmite viteza si pe un device mobil folosind modulul bluetooth. Daca viteza determinata este mai mare decat limita prestabilita de 100 de cm/s se va aprinde LED-ul rosu si se va activa buzzer-ul, altfel se va aprinde doar LED-ul verde. Pe ecranul LCD si pe mobil se va afisa un mesaj corespunzator cu viteza determinata, “Alert” pentru depasirea vitezei sau “OK!” pentru respectarea limitei.

Schema bloc

Hardware Design

Lista componente

  • 1 x Arduino UNO
  • 2 x Senzor Infrarosu
  • 1 x Ecran LCD 1602
  • 1 x LED Rosu
  • 1 x LED Verde
  • 1 x Buzzer
  • 1 x Modul Bluetooth HC-05
  • 1 x BreadBoard
  • Fire mama-tata, tata-tata
  • 2 x Rezistoare de 460 ohm
  • 1 x Rezistor de 220 ohm

Schema electrica

Software Design

Pentru implementare am folosit Arduino IDE. Pentru comunicarea cu LCD-ul am folosit biblioteca LiquidCrystal. Pentru implementarea aplicatie cu care se va comunica prin bluetooth am folosit MIT App Inventor. In aplicatie, folosesc un button pentru conectare si un button pentru deconectare. Daca este conectat, device-ul va primi un caracter, 'A' sau 'O', astfel va afisa OK sau ALERT!. Pe telefon se va primi si viteza obiectului. Daca telefonul este deconectat, nu se va afisa nimic.

  • setup() - seteaza pinii pentru senzorii IR de tip INPUT, pinii pentru LED-urile Rosu, Verde si pentru Buzzer de tip OUTPUT. Porneste transmisia seriala pe baud de 9600, iar lcd-ul il porneste pe 16 coloane si 2 randuri. De asemenea, setez contrast-ul LCD-ul la 60.
  • alert() - apelata cand se depaseste viteza limita(100 default). Aprinde Led-ul Rosu, porneste buzzer-ul la 1KHz, printeaza mesajul “Alert!” pe LCD si trimite prin bluetooth caracterul “A”(de la Alerta) catre mobil.
  • ok() - apleata cand nu s-a depasit viteza limita. Aprinde LED-ul verde, printeaza mesajul “OK!” pe LCD si trimite prin bluetooth caracterul 'O'(de la OK).
  • loop() - Astept semnal de la primul senzor. Cand a primit semnal de la primul senzor (ultimul semnal - fac asta astept folosind o bucla while). Dupa ce a trecut de bucla in care a primit semnal masoara timpul folosind functia millis(). Astept apoi cat timp nu primesc semnal de la al doilea senzor. Cand am primit primul semnal, retin al doilea timp, verific ca timpii sa fie crescatori si apoi aflu diferenta pe care o convertesc in secunde. Calculez apoi viteza ca fiind distanta/timp. Daca viteza a depasit limita, apelez functia alert(), altfel apelez functia ok(). Trimit apoi viteza rotunjita prin bluetooth si apoi printez viteza si pe LCD si resetez LED-urile si buzzer-ul.

Rezultate Obţinute

Am reusit sa duc proiectul ales la bun sfarsit, sunt multumit de rezultat, cred ca e un proiect scalabil, care chiar poate fi folosit pe post de radar fix. Distanta dintre senzori este de 27 de cm.

Demo : aici

GALERIE

Concluzii

Mi se pare un proiect impresionant, util pentru un inginer in calculatoare. Experienta de a imbina hardware-ul cu software-ul mi-a placut, mai mult cu cat rezultatul este unul palpabil. Am avut putin probleme cu comunicare prin bluetooth prin faptul ca trebuia sa trimit date, nu sa primesc. Am pierdut putin timp sa gasesc cum sa fac aplicatia fiindca aplicatiile existente au suport pentru terminal si nu am gasit una care poate fi customizata, asa ca am folosit MIT App Inventor in care a trebuit sa scriu si back-end.

Download

Jurnal

30 Aprilie 2022 - Cumparare piese

5 Mai 2022 - Creare pagina Wiki

14 - 15 Mai 2022 - Creare Schema bloc Tinkercad

19 - 20 Mai 2022 - Montare piese + lipit bareta pe LCD

21 - 22 Mai 2022 - Implementare Software + Cumparat fire lipsa (mama-tata).

24 Mai 2022 - Schema electrica + Completare Wiki

27 Mai 2022 - Terminare Wiki (adaugat poze + demo + arhiva)

Bibliografie/Resurse

pm/prj2022/bogdanc/detector-de-viteza.txt · Last modified: 2022/05/27 13:04 by cosmin.grigore0410
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