Repoman

Autor

Introducere

Ideea proiectului constă în proiectarea unui robot care să colecteze diverse lucruri aflate în calea sa. Acesta este asemănător unei mașini, însa dispune de niște brațe în partea anterioară a sa, folosite pentru a colecta potențialele obiecte detectate.

Descriere generală

Robotul poate să se deplaseze prin intermediul unui modul bluetooth, care va asigura conectarea telefonului la acesta, sau poate parcurge un traseu aleator pentru a depista obiectele.
Va dispune de un senzor cu ultrasunete folosit la reperarea acestor obstacole întâlnite, ce va declanșa brațele de colectare la o detecție reușită. Acestea vor împinge spre platforma de depozitare obiectele, iar după revenirea la poziția lor inițială, își va continua deplasarea.
Servomotoarele sunt utilizate la mișcarea efectuată de către brațe, în timp ce driver-ele vor fi folosite pentru a controla motoarele și a efectua schimbări de direcție.

Schemă bloc

schblc_mateitita.jpg

Hardware Design

Listă de piese

  • Kit robot (4 motoare + șasiu)
  • Servomotor 9G x 2
  • Driver motoare L298N x 2
  • Modul bluetooth HC-05
  • Brațe + platformă

Schemă electrică

repoman.jpg

Software Design

Pentru porţiunea de cod unde am tratat interpreatarea caracterelor primite de la modulul bluetooth, am executat un switch case pentru fiecare comandă configurată.

   Primeşte caracterul de la telefon();

   switch pentru caracter {
          case faţă:
               activează pinii pentru deplasarea faţă
          case spate:
               activează pinii pentru deplasarea spate
          case stânga:
               activează pinii pentru deplasarea stânga
          case faţă:
               activează pinii pentru deplasarea dreapta
          case închidere braţe:
               schimbarea unghiurilor celor două braţe
          case deschidere braţe:
               schimbarea unghiurilor celor două braţe
          case mutare ambele braţe stânga:
               schimbarea unghiurilor celor două braţe
          case mutare ambele braţe dreapta:
               schimbarea unghiurilor celor două braţe
          case default:
               opreşte motoarele
               
   }

La partea ce implică servomotoarele am configurat registrele pentru timere şi am activat pinii folosiţi la mişcarea braţelor de colectare.

   TCCR1A|=(1<<COM1A1)|(1<<COM1B1)|(1<<WGM11);        //NON Inverted PWM
   TCCR1B|=(1<<WGM13)|(1<<WGM12)|(1<<CS11)|(1<<CS10); //FAST PWM

   ICR1=4999;  // fPWM=50Hz

   DDRD|=(1<<PD4);   // Pinii PWM de Out
   DDRD|= (1<<PD5);  // pentru servomotoare

Rezultate obținute

repoman1.jpg repoman2.jpg repoman3.jpg repoman4.jpg repoman5.jpg

Concluzii

Proiectul acesta m-a ajutat să înţeleg mai bine conceptul de interacţiune între hardware şi software-ul dezvoltat pentru acesta.

Partea de hardware a necesitat puţin mai multă implicare, întrucât legarea driverelor de motoare şi a modulului de bluetooth cu placa am făcut-o ghidându-mă după datasheet-uri şi tutoriale online. Restul cablării şi asamblarea şasiului doar a necesitat atenţie sportiă din partea mea. Braţele de colectare precum şi platforma ataşatâ maşinii au fost modelate de mine, design-ul acestora fiind unul propriu.

Software-ul dezvoltat nu a necesitat prea mult timp, întrucât eram obişnuit cu conceptele de timere de la laborator şi de configurare de port-uri pentru intrare / ieşire. Aplicaţia folosită pentru manevrarea maşinii am descărcat-o de pe Google Play (details) şi am adus modificări comportamentului repoman-ului la caracterele trimitse către acesta prin aplicaţie.

Download

Codul poate fi descărcat de la link-ul: matei_tita_332cb_repoman.zip

Jurnal

03.05 → Comandat piesele de bază

11.05 → Am început să asamblez şasiul din kit-ul maşinii

12.05 → Căutat piese adiţionale (cabluri, rezistenţe)

18.05 → Montat motoarele şi le-am ataşat modulelor

19.05 → Testat motoarele doar prin cabluri

20.05 → Conectat toate motoarele şi am realizat partea de cod pentru activarea acestora

21.05 → Am conectat modulul bluetooth şi servomotoarele la plăcuţă

22.05 → Testat din aplicaţia de android conectivitatea cu maşina

23.05 → Am realizat manopera maşinii (platformă şi braţele de colecare)

Bibliografie/Resurse

pm/prj2019/apredescu/repoman.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