- Conceptele de Line Follower
- Explicația circuitului
- Funcționarea robotului Line Follower folosind Arduino
- Diagrama circuitului
- Explicația programului
- Componente necesare
Robotul care urmărește linia este un robot foarte simplu care urmează o linie, fie o linie neagră, fie o linie albă. Acest tip de roboți este foarte simplu de construit și este adesea prima alegere pentru începătorii care încep cu robotica. Practic, există două tipuri de roboți care urmăresc linia: unul este un urmăritor de linie neagră care urmează linia neagră și al doilea este un următor de linie albă care urmează linia albă. Adeptul de linie simte de fapt linia și o urmează. Deși ideea sună simplă, cu un pic mai multă dezvoltare, roboți similari cu aceștia sunt folosiți practic în multe aplicații, cum ar fi roboții de gestionare a podelelor din fabrică sau roboții de depozit.
Conceptele de Line Follower
Conceptul de lucru al urmăritorului de linie este legat de lumină. Folosim aici comportamentul luminii la suprafețele alb-negru. Când lumina cade pe o suprafață albă, aceasta este aproape complet reflectată și, în cazul unei suprafețe negre, lumina este complet absorbită. Acest comportament al luminii este utilizat la construirea unui robot de linie.
În acest robot urmăritor de linie bazat pe Arduino, am folosit transmițătoare IR și receptoare IR numite și fotodiode. Sunt folosite pentru trimiterea și primirea luminii. IR transmite lumini infraroșii. Când razele infraroșii cad pe suprafața albă, acestea sunt reflectate înapoi și captate de fotodiodele care generează unele modificări de tensiune. Când lumina IR cade pe o suprafață neagră, lumina este absorbită de suprafața neagră și nu se reflectă raze înapoi, astfel dioda foto nu primește nicio lumină sau raze. Aici, în acest robot urmăritor de linie Arduino, când senzorul detectează suprafața albă, atunci Arduino primește 1 ca intrare și când detectează linia neagră, Arduino primește 0 ca intrare.
Deoarece robotul Line follower este un proiect interesant pentru începători, l-am construit și folosind diferite plăci de dezvoltare, altele decât Arduino, le puteți verifica și folosind linkul de mai jos dacă sunteți interesat
- Line Follower Robot folosind microcontrolerul 8051
- Line Follower Robot folosind Raspberry Pi
- Texas MSP430 Launchpad, bazat pe Line Follower
- Simple Line Follower folosind microcontrolerul PIC
- Urmăritor de linie utilizând microcontrolerul ATmega16 AVR
Explicația circuitului
Întregul robot de linie Arduino poate fi împărțit în 3 secțiuni: secțiunea senzorului, o secțiune de control și secțiunea șoferului.
Secțiunea senzorului:
Această secțiune conține diode IR, potențiometru, comparator (Op-Amp) și LED-uri. Potențiometrul este utilizat pentru setarea tensiunii de referință la un terminal al comparatorului și senzorii IR sunt utilizați pentru a detecta linia și a oferi o schimbare de tensiune la al doilea terminal al comparatorului. Apoi comparatorul compară ambele tensiuni și generează un semnal digital la ieșire. Aici, în acest circuit de urmărire a liniei, am folosit doi comparatori pentru doi senzori. LM 358 este utilizat ca comparator. LM358 a încorporat două amplificatoare de operare cu zgomot redus.
Secțiunea de control:
Arduino Pro Mini este utilizat pentru controlul întregului proces al robotului de linie. Ieșirile comparatoarelor sunt conectate la pinii numerici 2 și 3 din Arduino. Arduino citește aceste semnale și trimite comenzi către circuitul driverului către urmăritorul driveline.
Secțiunea șoferului:
Secțiunea driverului este formată din driverul motorului și două motoare de curent continuu. Driverul motorului este utilizat pentru acționarea motoarelor, deoarece Arduino nu furnizează suficientă tensiune și curent motorului. Așadar, adăugăm un circuit de conducător motor pentru a obține suficientă tensiune și curent pentru motor. Arduino trimite comenzi acestui driver de motor și apoi acționează motoare.
Funcționarea robotului Line Follower folosind Arduino
Este interesant să construiești un robot de linie care folosește Arduino. Robotul care urmărește linia detectează o linie neagră utilizând un senzor și apoi trimite semnalul către Arduino. Apoi Arduino acționează motorul în funcție de ieșirea senzorilor.
Aici, în acest proiect, folosim două module de senzori IR și anume senzorul stâng și senzorul drept. Când senzorii stânga și dreapta simt alb, robotul se deplasează înainte.
Dacă senzorul stâng vine pe o linie neagră, atunci robotul întoarce partea stângă.
Dacă senzorul drept detectează linia neagră, atunci robotul se rotește spre dreapta până când ambii senzori ajung pe suprafața albă. Când vine suprafața albă, robotul începe să avanseze din nou.
Dacă ambii senzori vin pe linia neagră, robotul se oprește.
Diagrama circuitului
Schema completă a circuitului pentru robotul de linie arduino este prezentată în imaginea de mai sus. După cum puteți vedea, ieșirea comparatoarelor este conectată direct la pinul digital Arduino numărul 2 și 3. Iar pinul de intrare al driverului motorului 2, 7, 10 și 15 este conectat la pinul digital Arduino numărul 4, 5, 6 și respectiv 7. Și un motor este conectat la pinul de ieșire al driverelor de motor 3 și 6 și un alt motor este conectat la pinul 11 și 14.
Explicația programului
În program, în primul rând, am definit pinul de intrare și de ieșire, iar apoi în buclă, verificăm intrările și trimitem ieșirea în funcție de intrări la pinul de ieșire pentru motorul de acționare. Pentru verificarea pinului de intrare am folosit instrucțiunile „if”. Codul complet al robotului care urmărește linia poate fi găsit în partea de jos a acestei pagini.
Există patru condiții în această linie care urmează robotului pe care le citim folosind Arduino. Am folosit doi senzori și anume senzorul din stânga și cel din dreapta.
Intrare |
Ieșire |
Circulaţie De Robot |
||||
Senzor stâng |
Senzor drept |
Motor stânga |
Motor dreapta |
|||
LS |
RS |
LM1 |
LM2 |
RM1 |
RM2 |
|
0 |
0 |
0 |
0 |
0 |
0 |
Stop |
0 |
1 |
1 |
0 |
0 |
0 |
Obligatoriu Dreapta |
1 |
0 |
0 |
0 |
1 |
0 |
Vireaza la stanga |
1 |
1 |
1 |
0 |
1 |
0 |
Redirecţiona |
Scriem codul adept linie Arduino în conformitate cu condițiile prezentate în tabelul de mai sus.
Componente necesare
Arduino
În Proiectul nostru, am folosit un microcontroler pentru a controla întregul proces al sistemului care este ARDUINO. Arduino este un hardware open-source și foarte util pentru dezvoltarea proiectelor. Există multe tipuri de arduino precum Arduino UNO, arduino mega, arduino pro mini, Lilypad etc. disponibile pe piață. Aici am folosit arduino pro mini în acest proiect, deoarece arduino pro mini este mic și, prin urmare, este compatibil cu panourile. Pentru a arde codul arduino al robotului de linie, am folosit un arzător FTDI.
Driver motor L293D
L293D este un driver IC care are două canale pentru acționarea a două motoare. L293D are două perechi incorporate de tranzistori Darlington pentru amplificarea curentului și un pin de alimentare separat pentru alimentarea externă a motoarelor.
Modul IR:
Modulul IR este un circuit senzor care constă în perechi LED / fotodiodă IR, potențiometru, LM358, rezistențe și LED. Senzorul IR transmite lumina infraroșie, iar fotodioda primește lumina infraroșie.
Alimentare electrică
Am adăugat un regulator de tensiune pentru a obține 5 volți pentru Arduino, comparator și driver de motor. Și o baterie de 9 volți este utilizată pentru alimentarea circuitului.