This is an old revision of the document!


Asistent de parcare

Autor: Grigore Lucian-Florin 336CA

Introducere

Senzor de proximitate montat pe peretele garajului care ajuta soferul, in momentul parcarii, sa stie cat de aproape este de un anumit perete, prin schimbarea culorii afisate si a frecventei de afisare, precum si printr-o avertizare sonora.

Ideea a pornit de la dorinta de a ii ajuta pe cei care isi parcheaza masina in locuri stramte.

Descriere generala

Schema bloc

Hardware design

Piese necesare:

  • Arduino Uno/Nano
  • HC-SR04 senzor ultrasonic
  • Condensator 1000uF (se pot si mai mici, dar puse in paralel pentru a obtine aceeasi impedanta)
  • Rezistor 470 ohm si 330 ohm (se poate folosi si doar un singur fel)
  • WS2812B LED strip sau LED-uri individuale (RGB sau single color)
  • Dioda 1N4148 (optionala, doar pentru alimentara in acelasi timp si a placutei Arduino, si a benzii, de la priza)
  • Buzzer/difuzor
Schema electrica cu banda LED

Schema electrica cu LED-uri individuale

TODO

Software design

Pentru unelte de analiza a datelor primite de la senzorul HC-SR04, am folosit libraria QuickStats. Aceasta nu este gasita in meniul “Manage libraries” din Arduino IDE, asa ca trebuie descarcata ca arhiva si trebuie folosita optiunea “Add a .ZIP library”. Pentru controlul benzii LED am folosit libraria FastLED. Codul pentru Uno R3 a fost scris de mine in Arduino IDE. Codul de Nano este compatibil cu Uno R3, deoarece porturile folosite au aceleasi capabilitati (PWM).

LED strip

Daca se utilizeaza o banda WS2812B, atunci libraria FastLED contine functii precum show() si CRGB(). Cu cea din urma se seteaza culoarea intr-un vector de tipul CRGB, care reprezinta led-urile fizice, iar cu cea dintai se afiseaza noua configuratie a LED-urilor.

Individual LEDs

Folosind LED-uri individuale, se folosesc functiile analogWrite() (datorita necesitatii PWM pentru cele 3 canale de culoare) pentru RGB si digitalWrite() pentru LED-uri single color. Am creat functii care sa afiseze orice spectru de culori pe LED-urile RGB, iar pentru LED-urile single color am creat un numar fix de configuratii posibile de lumini, care sunt folosite in functie de cat de apropiata este masina de senzor.

Arduino Code

Codul Arduino folosit (pentru Uno R3) se poate gasi aici.

Codul Arduino (pentru Nano) care se poate folosi impreuna cu o banda LED WS2812B se poate gasi aici.

Rezultate obtinute

Functionare

Distantele configurate pentru demonstratie au fost destul de mari si la intervale mari, ceea ce poate fi destul de dificil pentru senzorul ultrasonic. Acesta se comporta mult mai bine la distante mai mici, unde precizia lui creste substantial. Astfel, intr-un scenariu real de utilizare, as recomanda configurarea pentru distante mici, unde se va obtine o performanta excelanta, dar si o consistenta mai solida.

Senzorul va avertiza (vizual si sonor) pentru urmatoarele scenarii:

  • Unordered List Item
Demo video

Concluzii

Download

Jurnal

  • 24 mai 2021 - inceput proiect
  • 29 mai 2021 - terminare design software si asamblare componente, cu exceptia benzii LED
  • 31 mai 2021 - am ajuns la concluzia ca banda LED nu merge, dupa ce am incercat sa o conectez in 100 de feluri
  • 1 iunie 2021 - modificare proiect astfel incat sa folosesc LED-uri individuale
  • 2 iunie 2021 - terminare montaj, filmare demo seara
  • 4 iunie 2021 - terminare documentatie completa

Bibliografie/resurse

pm/prj2021/apredescu/asistent_parcare.1622807084.txt.gz · Last modified: 2021/06/04 14:44 by lucian.grigore
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