Răzvan-Andrei CIUREA (78622) - Bluetooth controlled car

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul pe care l-am ales isi propune crearea unei masinute controlata prin Bluetooth cu ajutorul unei aplicatii de pe un telefon mobil cu sistemul de operare Android.

Acest proiect are in primul rand un scop didactic pentru a ma face sa aprofundez cunsotintele dobandite la proiectarea microprocesoarelor dar nu numai. Acest proiect mai are ca si scop atragerea pasionatilor de jucarii teleghidate

Descriere generală

Schema bloc: Schema Electrica:

Hardware Design

Lista de piese:

  1. Placa de baza
  2. Componente Obligatorii
  3. Modul Bluetooth HC-05
  4. Modul driver de motoare dual L298N
  5. Kit Motoare
  6. Modul Buzzer
  7. Modul senzor proximitate
  8. LED-uri

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Medii de dezvoltare

  • Sublime Text 3
  • Android Studio

Librarii si surse 3rd-party

  • avr/io.h
  • util/delay.h
  • stdlib.h
  • string.h

Algoritmi şi structuri

  • Pentru putea da comenzi de pe aplicatie pentru AtMega324pa din aplicatia android trimit string-uri la modificari pe care le parsez cu ajutorul unor functii de parsare.

Rezultate Obţinute

Dupa ce am achizitionat componentele, primul lucru pe care l-am facut a fost sa asamblez piesele intre ele si vad daca toate functioneaza. Am demontat masinuta cumparata dupa care am conectat motorul si servomotorul la drivere si ledurile farurilor pe placuta.

Servomotorul este conectat la timer 1 iar motorul este conectat la timer 0. Ca sa setez valoarea factorului de umplere, setez valoarea registrului OCR0A. Aplicatia android trimite string-uri prin bluetooth microcontroller-ului unde am niste functii de parsare ce interpreteaza aceste valori.

Masina dispune de faruri, claxon si un senzor de proximitate

Directia este setata prin accelerometrul telefonului iar viteza masinii este setata printr-un slider. Buttonul de acceleratie face masina sa mearga iar daca iei degetul franeaza. Exista si butonul de break ce daca il apesi, masina franeaza. Exista butonul de lights ce aprinde farurile si horn ce reprezinta claxonul precum si un toggle care determina daca masina merge inainte sau in spate.

Concluzii

Acest proiect este cel mai interesant proiect la care am lucrat pana acum in facultate. Faptul ca am construit de la 0 o masina teleghidata prin bluetooth mi-a adus un sentiment de realizare extraordinar.

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2017:avoinescu:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Resurse hardware :avrfreaks.net ;ATmega324PA_Datasheet.pdf

Resurse software :https://developer.android.com/guide/topics/connectivity/bluetooth

  • Documentația în format PDF
pm/prj2018/astratulat/78622.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