Table of Contents

Eugen STOICA, Diana BĂLUŢOIU - Line follower

Autorul poate fi contactat la adresa: Login pentru adresa

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul constă în dezvoltarea unui robot ce urmează un traseu prestabilit marcat de o linie neagră pe un fundal alb. Am ales să facem acest robot deoarece ni se pare un proiect interesant şi în acelaşi timp distractiv.

Descriere generală

Robotul va citi datele de la senzori şi în funcţie de valoarea acestora va seta turaţiile motoarelor pentru a urmări precis linia. În curbe robotul se va mişca mai lent pentru ca linia să nu iasă din raza de acţiune a senzorilor. De asemenea motoarele vor fi alimentate de la o sursă separată de 9V.

Hardware Design

Piese placuţă

Piesă Cantitate Datasheet
PCB 1 -
microcontroller ATMEGA324PA-PU 1 link
condensator neelectrolitic 15pF 2 -
led 3mm 2 -
quartz 16MHz QMIM016 1 -
rezistenţă 10K 1 -
rezistenţă 1K 2 -
rezistenţă 100R 3 -
rezistenţă 10K 1 -
rezistenţă 2K2 1 -
push button 2 -
soclu DIP40 dil40emf 1 -
conector USB B-PCB-R 1 -
diodă Zener 2 -
condensator 100nF 3 -
condensator 100uF 2 -
7805CT 1 link
mufă alimentare 12V 1 -

Piese robot

Piesă Cantitate Datasheet
baterie 9V 1 -
acumulatori 1.2V 4 -
fire conexiune 30 -
kit robot (suport + motoare) 1 -
driver motoare L293D 1 link & link

Schemă electrică

Software Design

Ca şi mediu de dezvoltare am folosit Programmer's Notepad împreună cu WinAvr şi Cygwin pentru a rula Makefile-ul.

Algoritmul este unul destul de simplu de înţeles:

repetă
	dacă este activat senzorul din dreapta
		du-te în dreapta
	altfel dacă este activat senzorul din stânga
		du-te în stânga
	altfel
		du-te înainte

Principala problemă a fost faptul ca motoarele aveau ori o turaţie prea mare, ori o turaţie prea mică. Am testat diferite valori până când am ajuns la o soluţie optimă. În timpul curbelor robotul este setat să meargă cu o viteză mai scăzută deoarece în cele mai multe cazuri ieşea de pe traseu.

Rezultate Obţinute

Am reuşit, în final, să obţinem un line follower funcţional.

Concluzii

Partea hardware a fost mult mai placută deoarece am învăţat să lipim piesele şi sa ansamblăm modulele după multe bătăi de cap. De asemenea ne-am mai familiarizat cu cititul datelor din datasheets.

Partea software a fost de asemenea productivă deoarece am învăţat sa punem cap la cap toate modulele şi să le facem sa comunice între ele.

Per total a fost o experienţă interesantă.

Download

Fişier sursă

Bibliografie/Resurse

Datasheets

ATMEGA324PA-PU

7805CT

L293D

Scheme

schemă driver cu L293D