This is an old revision of the document!


Line Follower

Introducere

Ce face

Robotul meu linefollower este un dispozitiv autonom care urmărește linii trasate pe suprafețe prin intermediul unei matrice de 5 senzori infraroșu. Folosind placa Arduino UNO ca unitate centrală de procesare, robotul detectează linia de sub el și controlează două motoare DC prin intermediul driverului L298N pentru a se menține pe traseu. Construcția sa robustă, cu șasiul imprimat 3D personalizat, îi conferă durabilitate, în timp ce utilizarea chederului lipit pe roți asigură o aderență sporită la suprafață, prevenind alunecarea pe parcursul traseelor.

Care este scopul lui

Scopul principal al acestui robot este să demonstreze principiile de bază ale roboticii autonome și să ofere o platformă educațională pentru înțelegerea controlului de mișcare bazat pe feedback-ul senzorilor. Robotul este proiectat să parcurgă cu precizie trasee complexe la viteze optime, fiind capabil să navigheze prin curbe, intersecții și segmente drepte fără intervenție umană.

Care a fost ideea de la care am pornit

Ideea inițială a proiectului a pornit de la dorința mea de a crea un robot accesibil ca nivel de complexitate, dar suficient de performant pentru a fi competitiv. Am ales configurația cu 5 senzori IR pentru a avea un echilibru între precizie și simplitate, iar pentru alimentare am implementat soluția cu două baterii de 9V conectate pentru a asigura o capacitate energetică sporită și autonomie extinsă. Șasiul imprimat 3D l-am proiectat special pentru acest robot, optimizând distribuția greutății și poziționarea componentelor pentru stabilitate maximă, iar adăugarea chederului pe roți a venit ca soluție inovatoare pentru îmbunătățirea tracțiunii pe orice tip de suprafață.

De ce cred că este util pentru alții și pentru mine

Pentru mine, acest proiect reprezintă o oportunitate excelentă de a aplica practic cunoștințele de programare, electronică și design 3D într-un sistem integrat. Procesul de optimizare a codului pentru a face robotul mai eficient și mai precis mi-a dezvoltat abilitățile de rezolvare a problemelor și gândirea analitică.

Pentru alții, robotul meu oferă:

  • O platformă educațională ideală pentru începători în robotică și electronică
  • Un exemplu practic de implementare a sistemelor de control în buclă închisă
  • O bază solidă care poate fi adaptată și extinsă pentru proiecte mai complexe
  • Inspirație pentru explorarea designului 3D în aplicații practice
  • Un model funcțional care demonstrează cum soluțiile simple (precum utilizarea chederului pentru aderență) pot îmbunătăți semnificativ performanța

Descriere generală

O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează.

Exemplu de schemă bloc: http://www.robs-projects.com/mp3proj/newplayer.html

Design Hardware

Listă de Componente

Arduino UNO

  • Descriere: O placă microcontroler bazată pe ATmega328P.
  • Pini: UNUSED, IOREF, Reset, 3.3V, 5V, GND, Vin, A0, A1, A2, A3, A4, A5, SCL, SDA, AREF, D13, D12, D11, D10, D9, D8, D7, D6, D5, D4, D3, D2, D1, D0.

Driver de Motor DC L298N

  • Descriere: Un driver de motor cu punte H dublă care permite controlul a două motoare DC.
  • Pini: OUT1, OUT2, 12V, GND, 5V, OUT3, OUT4, 5V-ENA-JMP-I, 5V-ENA-JMP-O, +5V-J1, +5V-J2, ENA, IN1, IN2, IN3, IN4, ENB.

Motor DC (x2)

  • Descriere: Motoare DC standard utilizate pentru propulsia robotului.
  • Pini: pin 1, pin 2.

Matrice IR cu 5 Canale

  • Descriere: O matrice de senzori infraroșu utilizată pentru detectarea liniilor de pe sol.
  • Pini: OUT5, OUT4, OUT3, OUT2, OUT1, 5V, GND.

Baterie de 9V (x2)

  • Descriere: Sursă de alimentare pentru circuit.
  • Pini: -, +.

Mufă Universală Tip Baril (tată)

  • Descriere: Conector pentru sursa de alimentare.
  • Pini: Power Out, V+, V-.

Detalii de Cablare

Arduino UNO

  • 5V: Conectat la 5V al Matricei IR cu 5 Canale.
  • GND: Conectat la GND al Matricei IR cu 5 Canale.
  • D2: Conectat la OUT1 al Matricei IR cu 5 Canale.
  • D3: Conectat la OUT2 al Matricei IR cu 5 Canale.
  • D4: Conectat la OUT3 al Matricei IR cu 5 Canale.
  • D7: Conectat la OUT4 al Matricei IR cu 5 Canale.
  • D12: Conectat la OUT5 al Matricei IR cu 5 Canale.
  • D5: Conectat la ENB al Driverului de Motor DC L298N.
  • D6: Conectat la ENA al Driverului de Motor DC L298N.
  • D8: Conectat la IN4 al Driverului de Motor DC L298N.
  • D9: Conectat la IN3 al Driverului de Motor DC L298N.
  • D10: Conectat la IN2 al Driverului de Motor DC L298N.
  • D11: Conectat la IN1 al Driverului de Motor DC L298N.

Driver de Motor DC L298N

  • GND: Conectat la V- al Mufei Universale Tip Baril (tată) și - al ambelor Baterii de 9V.
  • 5V: Conectat la V+ al Mufei Universale Tip Baril (tată).
  • 12V: Conectat la + al ambelor Baterii de 9V.
  • OUT1: Conectat la pinul 2 al primului Motor DC.
  • OUT2: Conectat la pinul 1 al primului Motor DC.
  • OUT3: Conectat la pinul 2 al celui de-al doilea Motor DC.
  • OUT4: Conectat la pinul 1 al celui de-al doilea Motor DC.

Motoare DC

  • Primul Motor DC:
    • pin 1: Conectat la OUT2 al Driverului de Motor DC L298N.
    • pin 2: Conectat la OUT1 al Driverului de Motor DC L298N.
  • Al Doilea Motor DC:
    • pin 1: Conectat la OUT4 al Driverului de Motor DC L298N.
    • pin 2: Conectat la OUT3 al Driverului de Motor DC L298N.

Matrice IR cu 5 Canale

  • 5V: Conectat la 5V al Arduino UNO.
  • GND: Conectat la GND al Arduino UNO.
  • OUT1: Conectat la D2 al Arduino UNO.
  • OUT2: Conectat la D3 al Arduino UNO.
  • OUT3: Conectat la D4 al Arduino UNO.
  • OUT4: Conectat la D7 al Arduino UNO.
  • OUT5: Conectat la D12 al Arduino UNO.

Baterii de 9V

  • -: Conectat la V- al Mufei Universale Tip Baril (tată) și GND al Driverului de Motor DC L298N.
  • +: Conectat la 12V al Driverului de Motor DC L298N.

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

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

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:prj2009:cc: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

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2025/vradulescu/mihnea.stamatie.1747594268.txt.gz · Last modified: 2025/05/18 21:51 by mihnea.stamatie
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