Alexandru-Cristian TRIFAN - SmartCar

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul reprezinta o masina inteligenta comandata prin telefon cat si softul pe arduino special pentru a comanda masina.

Functionalitati Masina:

  • semnalizatoare
  • avarie
  • pozitie
  • semnal luminos frana
  • mers inainte
  • mers inapoi
  • viraj
  • comunicatie bluetooth

Functionalitati Soft:

  • connectare deconectare client
  • comenzi prin bluetooth
  • simularea pe baza accelerometrului a unui volan si trimitere unghiuri rotatie

Motivatie: Intotdeauna mi-au placut masinile, si la scara mica ce am facut poate fi un bun start - un prototip pentru a putea implementa aceleasi functionalitati la scara mai larga.

Utilitate:

  1. Modulul in stare actuala poate fi extins cu un webcam si poate fi folosit la distante variabile in functie de receiverul de bluetooth pentru a examina locuri greu accesibile sau periculoase pentru om direct pe baza telefonului sau a unui calculator.
  2. Modulul actual poate fi transpus pe o masina reala si poate fi comandat pentru partea electriconica, nu neaparat pentru condus pentru diferite mini functionalitati dar si altele precum: alarma, ridicarea geamurilor la iesirea din masina, inchidere centralizata si deschiderea usilor pe baza informatiilor de proximitate.

Descriere generală

In poza de mai sus este descrisa interactiunea dintre client/telefon si masinuta mai exact microcontrollerul atmega324PAPU cu tot cu legatura catre output dar si catre modulul de bluetooth.

Descriere pasi:

  • Clientul descarca aplicatia SmartCar
  • Intra in aplicatie si urmeaza pasii descrisi
  • Se conecteaza la modulul de bluetooth
  • Bluetoothul poate comunica in urma conexiunii full duplex atat cu clientul cat si cu placuta doar a doua varianta este folosita
  • Pe baza comenzilor trimise din aplicatie catre bluetooth placuta decide ce actiuni are de facut: lumini, semnale, claxon, miscare

Hardware Design

Microcontroller

Componente:

  1. ATMEGA324PA-PU
  2. Condensator neelectrolitici
  3. LED 5mm verde
  4. LED 5mm rosu
  5. Banda conectori tip tata
  6. PUSHBUTTON
  7. Rezistente: 10k, 1k, 100r, 2,2k
  8. Quartz: 16mhz
  9. Soclu DIP40
  10. USB-B
  11. Dioda Zenner
  12. Condensatoare 100nF
  13. Jumper
  14. Condensator electrolic
  15. Jack conector placa alimentare 12V

Schema electrica:

PUNTEA H (Driver Motor)

Componente:

  1. Placa de test gaurita
  2. Conectori bloc
  3. Banda conectori tip mama
  4. L298N
  5. 1N4001 diode
  6. Condensator 100nF
  7. Rezistente 0.47Ohm x 1W

Schema electrica:

Masina

Componente:

  1. Microcontroller finalizat
  2. Punte H finalizata
  3. Modul bluetooth
  4. Mini Breadboard
  5. Panglica fire tip tata-mama
  6. Buzzer
  7. Leduri 3mm
  8. Servo-motor
  9. Motor
  10. Sasiu

Software Design

Pe partea de embeded C am lucrat cu programmers notepad pentru avr - compilare winavr.

Pe partea de telefon - android - am lucrat cu java (eclipse cu adt) - android development toolkit

Embeded C:

  • Intrerupere pentru USART (bluetooth) - pentru preluarea comenzilor
  • Clock timer1 pentru semnalizari
  • Timer1 PWM pentru servo motor
  • Timer0 COMA PWM pentru intensitate lumini spate(frana si pozitie)
  • Timer0 COMB PWM pentru intensitate curent electric - control motoare tractiune - puntea H
  • Timer2 COMA PWM pentru claxon - intensitate sunet

Embeded C: - descriere pini

  • PB0 - lumini fata
  • PB1 - lumini stanga
  • PB2 - lumini dreapta
  • PB3 - lumini spate + PWM
  • PB4 - enable PWM motor punte tractoare
  • PB5 - mers in fataa
  • PB6 - mers in spate
  • PD6 - PWM servo
  • PD7 - PWM claxon

Android:

Pe partea de android am folosit eclipse cu ADT - android development toolkit.

Aplicatia contine 2 activitiuri - 2 viewuri:

  • DeviceList - partea care se ocupa cu gestiune conexiunii la masinuta
  • SmartCar - partea care se ocupa de controlul efectiv al masinutei

Aplicatia folosest un thread separat pentru comunicarea prin bluetooth pentru a nu ocupa main threadul GUI-ului - necesita doar permisiuni la bluetooth aplicatia.

Aplicatia a fost implementata pentru android minim 4.2.

ScreenShot main view:

Rezultate Obţinute

Masina este finala si functionala complet:

trifan_alexandru_filmare_masinuta.zip

Concluzii

Proiectul poate fi extins cu usurinta prin introducerea unor senzori pentru a face masina sa conduca singura sau sa se implementeze un modul de safety, collision safety, parking safety, siguranta la depasire, etc. Screening - transmitere de imagini de la masina catre telefon pe baza unui webcam.

Proiectul a fost terminat cap coada in 2 saptamani de lucru, se poate alimenta de la priza sau acumulatori. Acumulatorii trebuie sa fie indicat de 15V pentru a putea alimenta atat placa cat si motoarele. Am testat si cu 9V dar s-au consumat instant si nici nu are forta pentru a pune masinuta in miscare.

Acest model in miniatura a unei masini controlata prin telefon poate fi proiectat si la o scara mai mare, pe masini adevarate.

Download

Cod embeded smart_car: trifan_alexandru_smart_car_embeded.zip

Cod android smart_car: trifan_alexandru_smart_car_android.zip

Apk SmartCar - pentru instalare pe telefon: smartcar_apk.zip

Jurnal

  • 24 aprilie finalizat lipit placuta + puntea h + placuta control leduri
  • 28 aprilie testat puntea h
  • 30 aprilie aplicatie partial finala telefon + testat lumini si buzzer
  • 2 mai - finalizat adaptare servo la masina + aplicatie finala telefon
  • 3 mai - inchidere masinuta(capsat caroserie) - proiect gata
pm/prj2015/ideaconu/smart_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