Mihail-Răzvan COJOCARU, Alexandru-Ionut FLOREA - Bluetooth controlled car

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul consta in realizarea unei masinute controlate prin Bluetooth folosind un device mobil cu sistemul de operare Android.

Am realizat proiectul in echipa pentru ca avem experienta lucrand la nenumarate proiecte impreuna si am considerat ca merita sa facem masinuta cat mai bine. Ni s-a parut un proiect interesant chiar daca a mai fost facut si in alti ani, experienta lucrului la el fiind una interesant (PM e mai usor decat credeam).

Descriere generală

Am alimentat placuta de la o baterie de 9V si am creat un circuit auxiliar ca sa o facem sa functioneza la 3.3V. Am legat la placuta un modul de bluetooth, pentru el am facut circuitul sa functioneze la 3.3V, HC-06 care primeste date de la o aplicatie android. Tot la placuta am legat driverul de motoare care primeste semnale de la microcontroler pentru mersul inainte, inapoi, stanga si dreapta. Schema bloc este urnatoarea:

Hardware Design

Lista componente

Plăcuță - 7 RON

Microcontroller ATMega324PA și componente pentru plăcuță - 55 RON

Modul Bluetooth HC-06 - 38 RON (Okazii)

Mașinuță cu motoare de curent continuu si driver pt. motoare - 65 RON (Cora)

Baterie 9V - 7 RON

Fire de conexiune mamă-mamă - 6 RON

De mentionat este ca am folosit driverul pentru motor deja existent pe masina cumparata. Cu mult ajutor din partea lui Ioan Deaconu + un datasheet in chineza am reusit sa facem reverse engineering pe masina si cu niste lipituri milimetrice am folosit driver-ul si puntile H integrate.

Schema electrica cu legaturile dintre microcontroler, modul bluetooth si driver:

Software Design

Codul pentru microcontroler l-am scris in Programmer's Notepad(WinAVR) iar codul pentru aplicatia Android in Eclipse cu ADT instalat.

Conexiunea cu modul de Bluetooth al aplicatiei mobile am realizat-o adaptand aplicatia de la linkul: android cerintelor noastre.

Protocolul folosit de aplicatie:

  • Aplicatia trimite date modulului de bluetooth cat timp este apasat butonul respectiv - l pt. left, r pt. right, f pt.forward, b pt. backward
  • Modulul de bluetooth receptioneaza datele si le trimite microcontrolerului
  • Microcontrolerul proceseaza datele primite si apoi trimite semnalele corespunzatoare driverului de motoare (cat timp primeste date, astfel masina oprindu-se daca se pierde semalul)

Rezultate Obţinute

Am reusit sa construim o masina controlata de pe un telefon cu Android (nu exista decat pe iPhone si era foarte scumpa), care functioneaza cum ne-am dorit.

Modulul de bluetooth are uneori probleme in realizarea conexiunii, uneori necesitand multiple incercari. Raza de actiune este in schimb mult mai mare decat ne asteptam, iar odata stabilizata conexiunea, functioneaza fara probleme.

Rezultat intermediar, aplicatie v1.0:

kDXM7kz6_hI

Final form:

Concluzii

Un proiect interesant, relativ usor de realizat raportat la satisfactia de a realiza ceva practic, functional.

Download

Codul pentru microcontroler: avrcode.zip

Codul pentru aplicatia Android: androidcode.zip

Jurnal

15.05.2015 - Cumparat masinuta de jucarie din Cora + restul componentelor pentru placuta

17.05.2015 - Analizat masinuta, testat daca merge, cautat datasheet-uri pentru driver-ul din interior

21.05.2015 - Reverse engineering pe masinuta cu ajutorul lui Ioan Deaconu

22.05.2015 - Realizat o conexiune functionala intre microcontroler si masinuta, rularea unor comenzi hardcodate

24.05.2015 - Cumparat modul bluetooth, scrierea aplicatiei si realizarea unei conexiuni rudimentare

25.05.2015 - Finisarea proiectului + cosmetica

Bibliografie/Resurse

Proiect arduino pentru interactiune Bluetooth HC-06 - Android: android-arduino-bluetooth-hc-06

pm/prj2015/ideaconu/btrccar.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