Cuprins:

Tutorial Arduino L293D Motor Driver Shield: 8 pași
Tutorial Arduino L293D Motor Driver Shield: 8 pași

Video: Tutorial Arduino L293D Motor Driver Shield: 8 pași

Video: Tutorial Arduino L293D Motor Driver Shield: 8 pași
Video: Motor driver shield control (L293D IC) 2024, Iulie
Anonim
Tutorial Arduino L293D Motor Driver Shield
Tutorial Arduino L293D Motor Driver Shield

Puteți citi acest tutorial și multe alte tutoriale uimitoare pe site-ul oficial al ElectroPeak

Prezentare generală

În acest tutorial, veți învăța cum să acționați motoare de curent continuu, pas cu pas și servo folosind un scut al driverului de motor Arduino L293D.

Ce veți învăța:

  • Informații generale despre motoarele de curent continuu
  • Introducere în ecranul motorului L293D
  • Conducerea motoarelor de curent continuu, servo și pas cu pas

Pasul 1: Motoare și drivere

Motoare și șoferi
Motoare și șoferi

Motoarele sunt o parte inseparabilă a multor proiecte de robotică și electronică și au diferite tipuri pe care le puteți utiliza în funcție de aplicația lor. Iată câteva informații despre diferite tipuri de motoare:

Motoare de curent continuu: motorul de curent continuu este cel mai comun tip de motor care poate fi utilizat pentru multe aplicații. Îl putem vedea în mașini de control de la distanță, roboți etc. Acest motor are o structură simplă. Va începe să ruleze prin aplicarea tensiunii adecvate la capetele sale și își va schimba direcția prin comutarea polarității tensiunii. Viteza motoarelor de curent continuu este controlată direct de tensiunea aplicată. Când nivelul de tensiune este mai mic decât tensiunea maximă tolerabilă, viteza ar scădea.

Motoare pas cu pas: în unele proiecte, cum ar fi imprimante 3D, scanere și mașini CNC, trebuie să cunoaștem cu precizie pașii de centrifugare a motorului. În aceste cazuri, folosim motoare Stepper. Motorul pas cu pas este un motor electric care împarte o rotație completă într-un număr de trepte egale. Cantitatea de rotație pe pas este determinată de structura motorului. Aceste motoare au o precizie foarte mare.

Servomotoare: Servomotorul este un motor simplu DC cu un serviciu de control al poziției. Utilizând un servo, veți putea controla cantitatea de rotație a arborilor și o puteți muta într-o anumită poziție. De obicei au o dimensiune mică și sunt cea mai bună alegere pentru brațele robotizate.

Dar nu putem conecta aceste motoare la microcontrolere sau la placa de control, cum ar fi Arduino direct, pentru a le controla, deoarece acestea au nevoie de mai mult curent decât poate conduce un microcontroler, deci avem nevoie de drivere. Șoferul este un circuit de interfață între motor și unitatea de comandă pentru a facilita conducerea. Unitățile de rulare vin în mai multe tipuri diferite. În această instrucțiune, învățați să lucrați la scutul motorului L293D.

L293D shield este o placă de driver bazată pe IC L293, care poate acționa simultan 4 motoare de curent continuu și 2 motoare pas cu pas sau servo.

Fiecare canal al acestui modul are curentul maxim de 1,2A și nu funcționează dacă tensiunea este mai mare de 25v sau mai mică de 4,5v. Așadar, aveți grijă să alegeți motorul potrivit în funcție de tensiunea și curentul său nominal. Pentru mai multe caracteristici ale acestui scut, să menționăm compatibilitatea cu Arduini UNO și MEGA, protecția electromagnetică și termică a motorului și circuitul de deconectare în cazul creșterii neconvenționale a tensiunii.

Pasul 2: Cum se utilizează ecranul driverului de motor Arduino L293D?

Cum se folosește ecranul driverului de motor Arduino L293D?
Cum se folosește ecranul driverului de motor Arduino L293D?

În timp ce utilizați acest scut, 6 pini analogici (care pot fi folosiți și ca pini digitali), pinul 2 și pinul 13 al arduino sunt liberi.

În cazul utilizării servomotorului, pinii 9, 10, 2 sunt utilizați.

În cazul utilizării motorului de curent continuu, pinul11 pentru # 1, pin3 pentru # 2, pin5 pentru # 3, pin6 pentru # 4 și pinii 4, 7, 8 și 12 pentru toate sunt utilizate.

În cazul utilizării motorului pas cu pas, pinii 11 și 3 pentru # 1, pinii 5 și 6 pentru # 2 și pinii 4, 7, 8 și 12 sunt folosiți.

Puteți utiliza pinii gratuiți prin conexiuni prin cablu.

Dacă aplicați o sursă de alimentare separată pentru Arduino și ecran, asigurați-vă că ați deconectat jumperul de pe ecran.

Pasul 3: Conducerea motorului de curent continuu

Motor de curent continuu
Motor de curent continuu

#include

Biblioteca de care aveți nevoie pentru a controla motorul:

AF_DCMotor motor (1, MOTOR12_64KHZ)

Definirea motorului de curent continuu pe care îl utilizați.

Primul argument reprezintă numărul de motoare din ecran și al doilea reprezintă frecvența de control al turației motorului. Al doilea argument poate fi MOTOR12_2KHZ, MOTOR12_8KHZ, MOTOR12_8KHZ și MOTOR12_8KHZ pentru motoarele numărul 1 și 2 și poate fi MOTOR12_8KHZ, MOTOR12_8KHZ și MOTOR12_8KHZ pentru motoarele numărul 3 și 4. Și dacă va fi lăsat necontrolat, va fi 1K.

motor.setSpeed (200);

Definirea turației motorului. Poate fi setat de la 0 la 255.

bucla nulă () {

motor.run (FORWARD);

întârziere (1000);

motor.run (BACKWARD);

întârziere (1000);

motor.run (ELIBERARE);

întârziere (1000);

}

Funcția motor.run () specifică starea de mișcare a motorului. Starea poate fi FORWARD, BACKWARD și ELIBERARE. ELIBERAREA este aceeași cu frâna, dar poate dura ceva timp până la oprirea completă a motorului.

Se recomandă lipirea unui condensator 100nF la fiecare pin al motorului pentru a reduce zgomotul.

Pasul 4: Conducerea servomotorului

Servomotor de conducere
Servomotor de conducere

Biblioteca Arduino IDE și exemple sunt potrivite pentru conducerea unui servomotor.

#include

Biblioteca de care aveți nevoie pentru conducerea motorului Servo

Servo miservo;

Definirea unui obiect servomotor.

configurare nulă () {

myservo.attach (9);

}

Determinați pinul care se conectează la Servo (pinul 9 pentru sevo # 1 și pinul 10 pentru servo # 2)

bucla nulă () {

myservo.write (val);

întârziere (15);

}

Determinați cantitatea de rotație a motorului. Între 0 și 360 sau 0 până la 180 în funcție de tipul de motor.

Pasul 5: Conducerea motorului pas cu pas

Conducerea motorului pas cu pas
Conducerea motorului pas cu pas

#include <AFMotor.h>

Stabiliți biblioteca de care aveți nevoie

AF_Steper motor (48, 2);

Definirea unui obiect motor Stepper. Primul argument este rezoluția pasului motor. (de exemplu, dacă motorul dvs. are precizia de 7,5 grade / pas, înseamnă că rezoluția pasului motorului este. Al doilea argument este numărul motorului pas cu pas conectat la ecran.

void setup () {motor.setSpeed (10);

motor.onestep (FORWARD, SINGLE);

motor.release ();

întârziere (1000);

}

bucla void () {motor.step (100, FORWARD, SINGLE);

motor.step (100, BACKWARD, SINGLE);

motor.step (100, FORWARD, DOUBLE); motor.step (100, BACKWARD, DOUBLE);

motor.step (100, FORWARD, INTERLEAVE); motor.step (100, BACKWARD, INTERLEAVE);

motor.step (100, FORWARD, MICROSTEP); motor.step (100, BACKWARD, MICROSTEP);

}

Determinați turația motorului în rpm.

Primul argument este cantitatea de pas necesară mișcării, al doilea este de a determina direcția (FORWARD sau BACKWARD), iar al treilea argument determină tipul de pași: SINGLE (Activați o bobină), DOUBLE (Activați două bobine pentru un cuplu mai mare), INTERLEAVED (Schimbarea continuă a numărului de bobine de la una la două și viceversa la precizie dublă, cu toate acestea, în acest caz, viteza este redusă la jumătate) și MICROSTEP (Schimbarea pașilor se face încet pentru mai multă precizie. În acest caz, cuplul este mai mic). În mod implicit, atunci când motorul se oprește din mișcare, își păstrează starea.

Trebuie să utilizați funcția motor.release () pentru a elibera motorul.

Pasul 6: Cumpărați scutul driverului motorului Arduino L293D

Cumpărați Arduino L293D Shield de la ElectroPeak

Pasul 7: Proiecte conexe:

  • L293D: Teorie, Diagramă, Simulare și Pinout
  • Ghidul pentru începători pentru controlul motoarelor de către Arduino și L293D

Pasul 8: Apreciați-ne pe FaceBook

Dacă vi se pare util și interesant acest tutorial, vă rugăm să ne placeți pe facebook.

Recomandat: