Follower car

Niculae Radu-Alexandru 336CC

Introducere

Proiectul presupune constriurea unei masinute care sa se mentina la o distanta constanta data ca input fata ce cel mai apropriat obiect. Acest lucru poate fi util atat pentru masurarea unei distante cat si pentru urmarirea unui obiect aflat in miscare sau metinerea constanta a unei distante dintre doua obiecte.

Descriere generală

Masinuta va folosi un senzor cu ultrasunete pentru a masura distanata, va fi construita pe baza unei platforme cu 2 motoare controlate printr-un driver, va folosi 2 afisaje led cu 2 cifre pentru a afisa distanta data ca input si distanta curenta fata de obiectul din fata. Input-ul de distanta va vi dat print-un potentiometru pentru usurinta in utilizare, iar pentru a indica status-ul va fi folosit un led RGB. Pentru pornire/oprire va fi folosit un buton.

Hardware Design

Lista de componente

  1. Placuta Arduino
  2. Senzor ultrasonic HC-SR04
  3. 2 X Afișaj LED Dual cu 7 Segmente de 0.5'' cu Registru de Deplasare 74HC595
  4. Potentiometru
  5. Switch
  6. Buton
  7. Motor DC
  8. Driver motoare

Schema electrica

Software Design

Biblioteci

  1. ShiftRegister74HC595.h

Implementare

Functionalitatile proiectului au fost implementate in Arduino IDE folosind functii sepecifice acestuia.

Pentru extragerea unei valori de input de la potentiometru citesc valoarea generata de acesta pe un pin analog. Prin folosirea senzorului ultrasonic se contorizeaza perioada de timp intre trimierea unui semnal si receptionarea reflexiei acestuia, apoi se imparte la viteza sunetului si se afla distanta pana la primul obiect. Se face diferenta celor doua valori, iar semnul dicteaza directia de mers.

Daca distanta de parcurs este mai mare de un prag atunci masinuta va merge la viteza maxima, iar dupa depasirea pragului masinuta isi va micsora viteza cu cat se micsoreaza distanta. Acest lucru ajuta ca masinuta sa se stabilizeze mai rapid.

Cate doi pini de directie si un pin de enable controleza fiecare motor prin intermediul driver-ului de motoare.

Modulele de display led cu 7 segmente sunt controlate prin intermediul unei biblioteci. Pentru fiecare modul este necesar (pe langa Vcc si GND) un pin de date, unul cu semnal de ceas, si un pin de latch care sa permulte intre cele doua display-uri de pe fiecare modul. Administrarea acestor pini este realizata de biblioteca, ramase fiind definirea constantelor pentru fiecare cifra si trimiterea acestora.

Apasarea butonului declaseaza o intrerupere care seteaza o variabila. In urma apasarii butonului masinuta se va invarti 180 de grade.

Rezultate Obţinute

followercar_5.jpg

Concluzii

In final mi s-a parut un proiect interesant la care am reusit sa mai invat cate ceva despre Arduino si alte componente precum afisaje led cu 7 segmente, drivere de motoare, potentiometre si senzori. Pot sa ma laud ca am devenit mai bun la lipit, am ajuns de la aproape a topi placuta si izolatia de pe fire, pana la niste lipituri decente. Consider ca a fost o experineta productiva si as mai incerca si pe viitor sa fac astfel de proiecte.

Download

Jurnal

  1. 01.05.2021 Am dat comanda de componente
  2. 03.05.2021 Au ajuns componentele
  3. 05.05.2021 Am testat potentiometru impreuna cu unul din afisaje
  4. 07.05.2021 Am asamblat carcasa (motorase, baterii, switch)
  5. 20.05.2021 Am legat al doilea afisaj cu sezorul de distanta si am tasat Arduino pe masinuta
  6. 24.05.2021 Am teminat de scris cod si de asamblat
  7. 25.05.2021 Debug si ajustari

Bibliografie/Resurse

pm/prj2021/dbrigalda/follower-car.txt · Last modified: 2021/06/01 21:20 by radu.niculae
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