George-Nicolae NEAMȚU (67276) - Death Race Car

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Vreau sa fac o masinuta comandata prin Bluetooth inspirata din filmul Death Race si pe care o sa o folosesc intr-un derby. Ea o sa foloseasca un driver pentru motoare care o sa faca legatura intre uC si cele 4 motoare si un modul Bluetooth pentru a putea fi comandata de pe telefon. La final o sa testez masinuta intr-o arena impotriva altor masinute ale unor colegi.

Descriere generală

Masinuta o sa fie controlata prin Bluetooth cu ajutorul unui telefon cu Android astfel inca comenzile de pe telefon sunt procesate de aplicatia Android si trimise prin Bluetooth catre modulul Bluetooth al masinutei. Modulul Bluetooth livreaza datele catre uC care le trimite mai departe in format corespunzator catre driver-ul motoarelor care face cele 4 motoare sa miste masinuta in directia dorita.

Hardware Design

Lista Piese:

  • Placa de baza + componente de baza
  • Modul Bluetooth HC-05 – Pret 30 lei – Olx
  • Driver Motoare L298N – Pret 10 lei – Optimus digital
  • Acumulator 9V – Pret 12 lei – Carrefour
  • Kit Robot cu 4 Motoare ce contine: – Pret 80 lei – roboromania
    1. 4 Motoare cu reductor
    2. 4 Roti
    3. Sasiu
  • Fire de legatura – Pret 15 lei – Optimus digital

Am avut ceva probleme din cauza faptului ca foloseam o singura baterie de 9v pentru a alimenta driver-ul si placuta (tot de la driver pentru ca are un regulator de tensiune si daca il alimentam cu > 7v poate oferi 5v la iesire). Problema aparea cand puneam toate 4 motoarele in sarcina(doar cate 2 nu aveam problema) si nu mai primea semnalele de la telefon. Am crezut ca problema este de la bateria de 9v(amperaj prea mic??) si am inlocuit-o cu un acumulator NI-MH de 8.4V/1600mAh si problemele s-au rezolvat.

Software Design

Pentru partea de software a proiectului am lucrat in Android pentru a dezvolta aplicatia ce ruleaza pe telefon si in C pentru dezvolta programul ce va rula pe masinuta.

  • In Android am implementat o aplicatie ce foloseste un joystick care are in total 8 pozitii pentru a ghida masinuta:
    1. Fata/Spate: Cele 4 motoare merg la viteza maxima in fata sau in spate.
    2. Stanga/Dreapta: Doua motoare de pe aceeasi parte merg la viteza maxima iar celelate doua sunt oprite.
    3. Fata-Stanga/Fata-Dreapta/Spate-Stanga/Spate-Dreapta: Doua motoare de pe aceeasi parte merg la viteza maxima iar celelate doua merg la o viteza mai mica.
    4. Mai exista si doua butoane care fac masinuta sa se roteasca pe loc in stanga sau in dreapta setand ca doua motoare de pe aceeasi parte sa mearega intr-o directie iar celelalte doua in directia opusa.
    5. Se poate selecta si viteza folosind unul din cele 5 moduri.
  • Pe placuta am urcat cod care face urmatorul lucru:
    1. Initializeaza toti pinii folositi, timer-ul 0 pentru PWM si USART pentru a primi pe Bluetooth.
    2. Primeste cate un caracter de la modulul Bluetooth prin USART si il interpreteaza pentru a seta directia motoarelor sau PWM pentru a reduce din turatia lor.

Rezultate Obţinute

Rezultatele au fost o masinuta interesanta cu care poti sa te distrezi putin:

Download

Am atasat o arhiva ce contine fisierele sursa pentru aplicatia Android si codul incarcat pe masinuta, poze si un README: deathrace_car.zip

Bibliografie/Resurse

Am gasit destule informatii in descrierile de la Optimus Digital:

pm/prj2017/avoinescu/death-race-car.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