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.
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.
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):
Schema realizată în Eagle:
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>
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:
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.
Arhiva conține codul sursă, Makefile și schema realizată în Eagle: