Urmaritor de linie

Introducere

Proiectul presupune realizarea unui robot autonom care urmareste o linie neagra pe fundal alb folosind senzori IR. Robotul trebuie sa detecteze linia si sa urmareasca traseul definit de aceasta.

Descriere generala

Robotul are un buton start/stop si functioneaza cu if-uri. Inputul de la bara de senzori este procesat de microcontroler si in functie de rezultat se trimit anumite semnale catre outputurile driverului de motoare.

Schema bloc:

Hardware Design

Piese

  • ATMega324
  • Motoare 3-6V
  • Driver Dual Motoare L298N
  • Bara cu 3 senzori IR digital QTR-3RC
  • Sasiu
  • Doua roti + un ball caster
  • Baterie 9V
  • Fire
  • Suruburi
  • Comutator

Software Design

Am folosit Arduino IDE si bootloadHID pentru scrierea codului, compilare si flash pe placa.

Algoritm: Fiecare senzor are o pondere. Am ales ponderile left = -1, mid = 0 si right = 1. In functie de suma ponderilor robotul se va misca intr-o anumita directie.

Pentru a da o anumita viteza celor doua motoare am folosit PWM pe pinii PB3 si PD7, iar in functie de directia aleasa setez OCR2A si OCR0A la o anumita valoare.

Rezultate Obtinute

Robotul functioneaza rezonabil la viteze mici, pe trasee simple. Rezultatul ar fi putut fi mai bun folosind o bara cu 8 senzori qtr-8rc si un algoritm mai complex.

Poze:

Video: https://youtu.be/Hi1eKu9hq7c

Concluzii

A fost un proiect interesant, desi am intampinat probleme pe partea de hardware cu primele motoare care nu functionau corect si cu butonul care s-a stricat dupa o zi.

Bibliografie/Resurse

Arhiva cu surse: sketch_may13a.zip

PDF

pm/prj2019/astratulat/urmaritoru.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