Paul-Alexandru SĂPUNARU & Radu Costin UNGUREANU - Line Follower

Introducere

Proiectul nostru constă în realizarea unui “clasic” robot de tip line follower. Scopul acestui robot este de urmări o linie neagră care are în jurul ei un fundal contrastant (alb, în general), fiind un vehicul autonom.

Descriere generală

Schema bloc:

Schema bloc

Așa cum se poate observa, modulul central al proiectului nostru este placa de bază cu AtMega324A. Acesta este conectat direct atât la bara de senzori de la care va primi input, cât și la circuitul secundar folosit pentru a comanda motoarele. Bateria de 9V este folosită pentru a alimenta toate circuitele.

Hardware Design

Piesele pe care le-am folosit în realizarea line follower-ului nostru au fost:

Prețul total al componentelor (exceptând placa de bază) a fost ~250RON.

Câteva poze cu piesele, precum și asamblarea lor (fiecare poză are un tooltip cu descrierea ei):

Bară senzori + driver L298N Motoare Circuit secundar partial Circuit secundar complet Șasiu asamblat Robot asamblat

Schema realizată în Eagle:

Schema

Software Design

Pentru dezvoltarea software-ului pentru microcontroller, am folosit pachetul WinAVR, care conține IDE-ul Programmer's Notepad, precum și bibliotecile necesare compilării programului pentru AtMega324A. Pentru a încarca fișierul .hex pe microcontroller, am folosit HIDBootFlash.

Algoritmul folosit este unul simplist: bazându-se pe inputul primit de la bara de senzori, acesta controlează motoarele pentru a ține linia neagră cât mai aproape de centrul barei de senzori. Spre exemplu, dacă valoarea primită de la senzori indică faptul că robotul s-a îndepărtat prea mult de linie în stânga, roata din dreapta va fi oprită, efectuându-se astfel un viraj la dreapta, mai larg sau mai scurt, în funcție de cât este nevoie pentru ca linia neagră sa revină în centru. Același lucru este valabil și pentru cealaltă parte.

<fc #FF0000>Login pentru cod</fc>

Rezultate Obţinute

Rezultatul obținut este un robot line-follower funcțional, care se mișcă destul de bine pe traseul improvizat de noi. Nemulțumirea noastră, însă, este că motoarele alese sunt destul de lente (85 RPM în gol), așa că la capitolul viteză, robotul nostru nu excelează.

Filmuleț demonstrativ:

The Adobe Flash Plugin is needed to display this content.

Concluzii

Prin realizarea acestui proiect, am avut ocazia să punem în practică și singuri cunoștințele prezentate în laboratoarele de PM. Acest lucru s-a dovedit a fi oarecum dificil la început, dar până la urmă, văzând că robotul nostru funcționează, efortul a meritat.

Download

Arhiva conține codul sursă, Makefile și schema realizată în Eagle:

Arhiva

Bibliografie/Resurse

pm/prj2013/rdobre/spur.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