Proiectul are ca scop crearea unui senzor de parcare ce va emite sunete pe frecvențe diferite în funcție de apropierea față de un obstacol și va afișa pe un display distanță în cm și un mic desen reprezentativ pentru a ilustra apropierea față de obiect. Ideea acestui proiect a venit din dorința de a crea ceva cu aplicabilitate practică în viață reală, chiar dacă implementarea mea este una minimalistă.
Proiectul presupune utilizarea unui senzor de distanță pentru a detecta gradul de apropiere față de un obstacol. În momentul în care un anumit prag a fost atins (ex.obiectul se află la 50 cm de senzor), un buzzer se va declanșa și va emite sunete pe o anumită frecvența. Cu cât obiectul se apropie/depărtează, se va schimbă rapiditatea emiterii sunetului. Pe tot parcursul funcționarii, se va afișa pe un display distanță și un desen minimal care să reprezinte mașină și obiectul.
Întreaga funcționalitate a proiectului este împărțită în funcții cât mai specifice, ce sunt apelate în loop
. Asfel, pentru a lua informații de la senzor, m-am folosit de acest tutorial.
Pentru a afișa informații pe LCD, am implementat funcțiile:
printUI
printSelf
printDistance
printDistanceCircle
Ultimul pas a fost să recreez sunetul emis de un senzor de parcare de la o mașină reală. Pentru a face acestu lucru, am folosit un buzzer pe care l-am programat folosind două întreruperi: una pentru când începe să se audă și una pentru când trebuie să se oprească. Frecvența emiterii sunetului este calculată în funcție de distanță obiectului față de senzor (in funcția beep_freq
).
Demo
YouTube link
YouTube link
În final, rezultatul este un “senzor de parcare” (pentru mașini de jucărie cel mult), care măsoară distanță unui obstacol aflat la maxim 1m față de “mașină” și afișează pe display distanță în cm și un desen simbolic. În acest desen avem un punct fix alb, ce reprezintă mașină și un cerc care se află mai aproape sau mai departe, în funcție de unde se află obstacolul. De asemenea, avem și sunetul caracteristic. Un buzzer începe să scoată sunete când obstacolul este la mai puțin de 50 cm și scade perioada emiterii sunetului o dată cu apropierea obstacolului.
Pot spune cu certitudine că acest proiect m-a făcut să înțeleg mult mai multe despre cum pot crea ceva cu utilitate practică, cum pot folosi diverse piese hardware și cum pot programa întregul ansamblu de piese pentru a ajunge la un rezultat. Pentru rezultate mai performante, ar fi trebuit folosit un senzor de distanță cu laser în loc de cel cu ultrasunete. Însă consider că pentru un prim proiect am învățat foarte multe și sunt fericită că a ieșit ceva funcțional din mâinile mele .
20 Aprilie → alegerea temei proiectului
26 Aprilie → creare pagină de documentație
03-22 Mai → lucru la montajul hardware
22 Mai → realizarea și adăugarea schemei electrice
24 Mai → adăugare sofware design
28 Mai → adăugare demo, concluzii și arhivă