Liviu-Andretti NAIDEN (66911) - Bluetooth controlled car

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul consta in proiectarea unei masinute controlate prin intermediul unui modul bluetooth, folosind o aplicatie de pe un telefon mobil ce ruleaza sistemul de operare Android pentru comunicatia cu placuta. Toate comenzile vor fi date de pe telefon si vor si receptionate de placuta prin modulul atasat. Masina are atasat in plus un buzzer care functioneaza pe post de claxon si totodata 8 faruri, 2 dintre ele fiind de faza lunga pe fata, 2 de stop pe spate si celelalte 4 pentru semnalizare pe laterale. Scopul proiectului este de a realiza o masinuta teleghidata ce reprezinta o buna metoda de divertisment. Ideea provine din concursurile de roboti de la facultate.

Descriere generală

Aplicatia de pe device-ul Android va trimite constant date catre modulul bluetooth. Placuta va primi date periodic de la modul prin protocolul USART si le va trimite mai departe catre motor driver, acesta actionand in final cele 2 motoare cuplate la perechile de roti de pe fata si respectiv spate. Alimentarea se face cu 3 baterii de 9V, una dintre ele fiind cuplata la placuta, alimentand astfel si modulul bluetooth, iar celelalte 2 la driver-ul de motor si LED-uri. LED-urile se aprind in felul urmator: la actionarea franei - cele de stop, la semnalizare - perechea de LED-uri de pe directia corespunzatoare in mod intermitent, iar cele de faza lunga doar la activarea lor, impreuna cu un sunet de claxon. Bateriile sunt activate folosind 2 switch-uri diferite.

<imgcaption shema_bloc|Schema>  </imgcaption>

Hardware Design

Nume piesa
Placa baza PM2017
Microcontroller ATmega324
Pachet de baza - componente placuta
Modul Bluetooth BLE CC2541
Driver motoare L298N
Masina cu 2 motoare functionale
Fire - conexiune mama-mama
3x Baterie 9V
8x LED-uri
2x Switch-uri
Buzzer

<imgcaption shema_bloc|Schema>  </imgcaption>

Software Design

Codul a fost scris in Programmers Notepad, folosind WinAVR pentru compilare. Comunicatia dintre placuta si modulul bluetooth am realizat-o folosind libraria “usart.h”, buzzer-ul l-am conectat folosind functia “speaker_morse”, iar codul majoritar implica:

  • setarea iesirilor pentru motoare, LED-uri, buzzer
  • oprirea motoarelor initial
  • preluarea comenzilor de la modulul bluetooth prin usart si activarea/dezactivarea iesirilor stabilite anterior
  • se folosesc bucle repetitive si delay pentru comenzi si aprinderea intermitenta a LED-urilor

Aplicatia folosita se gaseste pe Android Market si se numeste RoboRemoFree. details

Rezultate Obţinute

Masinuta poate primi urmatoarele comenzi:

  • aprinderea/stingerea farurilor de faza lunga impreuna cu actionarea automata a claxonului
  • comenzile de fata, spate, dreapta, stanga - pot fi folosite si simultan
  • aprinderea automata a farurilor de semnalizare pentru comenzile dreapta, stanga
  • aprinderea automata a farurilor de stop la incetarea accelerarii

<imgcaption shema_bloc|Schema>  </imgcaption> <imgcaption shema_bloc|Schema>  </imgcaption> <imgcaption shema_bloc|Schema>  </imgcaption>

Concluzii

Am reusit sa implementez tot ceea ce mi-am propus, atat din punct de vedere hardware cat si software. Initial am incercat sa conectez doar 2 baterii de 9V in paralel pentru placuta, driver de motoare si LED-uri, dar am observat ca se pierde puterea si cateodata modulul bluetooth alimentat direct de la placuta pierde conexiunea cu telefonul, asa ca am folosit inca o baterie de 9V, separat, pentru a alimenta doar placuta si LED-urile. A fost prima data cand am lucrat cu un modul bluetooth BLE si am avut probleme la conectarea lui, dar in final a mers perfect. Acesta este putin diferit si are o raza de acoperire de aproximativ 60 de metri.

Download

Bibliografie/Resurse

pm/prj2017/amusat/66911.txt · Last modified: 2021/04/14 17:07 (external edit)
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