Proiecte

Robot de urmărire linie folosind microcontroler

28 NOIEMBRIE 2018 ADMINISTRATOR 14 COMENTARII

Ți-ai făcut vreodată propriul tău robot? Iată un robot foarte simplu și ușor. În acest proiect, voi explica cum să proiectați și să construiți un robot Line Follower folosind microcontroler. Robotul de urmărire linie este un robot de bază care urmează o cale specifică indicată de o linie (de obicei o linie neagră pe o suprafață de culoare deschisă) având o anumită lățime.

Principiul circuitului de robot urmăritor de linie

Acest circuit constă în principal din microcontroler 8051, doi senzori IR, motoare și IC driver de motor (încorporat într-un modul). Robotul urmăritor de linie are nevoie de o aranjare mecanică a șasiului. Am folosit un șasiu acrilic 4WD. Cei doi senzori IR sunt montați pe partea din față a robotului, cu diodele îndreptate spre Pământ. Când robotul este plasat pe calea fixată, urmează calea detectând linia. Direcția de mișcare a robotului depinde de ieșirile celor doi senzori. Când cei doi senzori sunt pe linia traseului, robotul se deplasează înainte. Dacă senzorul din stânga se îndepărtează de linie, robotul se deplasează spre dreapta. Similar, dacă senzorul din dreapta se îndepărtează de cale, robotul se deplasează spre stânga. Ori de câte ori robotul se îndepărtează de calea sa, acesta este detectat de senzorul IR.

Știți cum funcționează circuitul robotului spion controlat de la distanță?

Senzorul IR este format dintr-un transmițător IR și un receptor IR pe o placă. Când vehiculul se mișcă pe o linie neagră, razele IR sunt absorbite continuu de suprafața neagră și nu există nicio rază reflectată care să facă ieșirea high. Ori de câte ori robotul se deplasează pe suprafața albă, începe să reflecte razele IR și să facă ieșirea low. Astfel, în funcție de ieșirea senzorului IR, microcontrolerul indică motoarele să își schimbe direcția.

Diagrama circuitului

Componente în circuit

  • Microcontroller 8051

  • Placă dezvoltare pentru Microcontroller 8051 (preferată)

  • 10KΩ Rezistor X 2

  • 10µF Condensator

  • Cristal 11,0592 MHz

  • 33pF Condensator X 2

  • Push Button

  • Modul driver motor (L298N)

  • Șasiu Robot cu motoare

  • Senzor IR x 2

Cum se proiectează?

Circuitul este format din microcontroler 8051 , senzori IR (cu transmițător IR și receptor IR), Modul driver de motor L298N, șasiu robot cu 4 roți și 4 motoare, suport baterie.
Microcontrolerul 8051 este componenta principală a proiectului. Este un microcontroler pe 8 biți cu 32 de pini I/O programabili. Acesta are multe caracteristici periferice, cum ar fi
UART programabil, două temporizatoare/contor de 8 biți, două întreruperi, acces la memorie externă etc.
Motoarele de curent continuu ale robotului sunt conectate la controler folosind un circuit integrat driver de motor. Deoarece ieșirea controlerului este de maxim 5V cu un curent foarte mic, acesta nu poate comanda motoarele. Așadar, pentru a amplifica această tensiune se folosește IC driver de motor. L298N poate comanda motoare de până la 36 V și poate furniza un curent de antrenare de 3 A.
Driverul IC are 15 pini și este de obicei disponibil în pachet multiwatt15. Aceste circuite integrate sunt ușor disponibile pe piață ca module. Intrările la modulul driver de motor sunt conectate la pinii PORT2 P2.0, P2.1, P2.2 și P2.3.
Cei doi senzori IR sunt conectați la pinii P2.6 și P2.7 ai microcontrolerului. Aranjați șasiul și conectați cele patru roți ale vehiculului robotic la motoarele care sunt la rândul lor conectate la microcontroler.

Postare conexă: Vehicul robotic controlat DTMF fără a utiliza microcontroler

Proiectarea senzorilor IR

Circuitul senzorului IR este format în principal din transmițător IR și receptor IR. Transmițătorul IR este similar cu un LED. Tensiunea sa de funcționare este de aproximativ 1,4 V. Deci, pentru a-l proteja, un rezistor de 150Ω este plasat în serie cu acesta și este conectat în polarizare directă. Receptorul IR este conectat în polarizare inversă și un rezistor de 10KΩ este plasat între VCC și receptor. Ieșirea este luată între rezistor și receptorul IR.
Deoarece aceasta este o
ieșire analogică, o putem converti într-un digital HIGH și LOW cu ajutorul unui comparator simplu IC, cum ar fi LM358, de exemplu. Modulul senzor IR utilizat în acest proiect folosește aceeași configurație, iar schema circuitului este prezentată mai jos.

Funcționarea senzorilor IR

Emițătorul IR transmite continuu razele IR. Când transmițătorul IR se află pe suprafața neagră, aceste raze au fost absorbite de suprafață, iar când este pe suprafața albă, aceste raze au fost reflectate. Receptorul IR are rezistență maximă atunci când nu sunt recepționate raze IR și tensiunea de la VCC trece prin rezistor. La pinul de ieșire, tensiunea este de aproximativ 5V.
Pe măsură ce intensitatea razelor IR primite de receptor crește, valoarea rezistenței scade și are loc fenomenul invers. Astfel, tensiunea prin rezistor este legată la pământ. Deci, la pinul de ieșire, va produce 0V.

Urmărirea liniei

  1. Desenați inițial calea pe o suprafață de culoare deschisă cu bandă de culoare neagră.

  2. Așezați robotul pe podea.

  3. Acum porniți circuitul.

  4. Robotul se mișcă pe calea specificată.

  5. Când se îndepărtează, senzorii îl verifică și reglează automat robotul.

Code

#include<reg51.h>

sbit mot1=P2^0;

sbit mot2=P2^1;

sbit mot3=P2^2;

sbit mot4=P2^3;


sbit s_left=P2^6;

sbit s_right=P2^7;


void forward (void);

void backward (void);

void left (void);

void right (void);

void forward (void)

{

mot1=0;

mot2=1;

mot3=1;

mot4=0;

}

void backward (void)

{

mot1=0;

mot2=1;

mot3=0;

mot4=1;

}

void left (void)

{

mot1=0;

mot2=1;

mot3=0;

mot4=0;

}

void right (void)

{

mot1=0;

mot2=0;

mot3=1;

mot4=0;

}

void stop (void)

{

mot1=0;

mot2=0;

mot3=0;

mot4=0;

}




void main()

{

s_left=1;

s_right=1;

while(1)

{

if(s_left==0 && s_right==0)

{

forward();

}

else if(s_left==1 && s_right==1)

{

stop();

}

else if(s_left==0 && s_right==1)

{

left();

}

else if(s_left==1 && s_right==0)

{

right();

}

}

}

Aplicații

  • Acesta poate fi utilizat în sistemul auto fără șofer, cu unele funcții suplimentare, cum ar fi detectarea obstacolelor.

  • Acesta poate fi folosit și în aplicații industriale și de apărare.

Limitări

  • Robotul de urmărire a liniei necesită o linie largă de 2-3 inchi.

  • Este posibil să nu se miște corect dacă linia neagră trasată este de intensitate scăzută.

  • Senzorii IR pot absorbi uneori și razele IR din împrejurimi. Ca rezultat, roboții se pot mișca într-un mod necorespunzător.

Notă: Dacă cineva este interesat de mai multe proiecte de robotică, vizitați pagina: Proiecte de robotică


Postări asemănatoare: