L298N: modul til styring af motorer til Arduino

l298n

Der er mange moduler til Arduino eller til brug i DIY-projekter af producenter. I tilfælde af L298N er et modul til styring af motorer. Med dem kan du bruge enkle koder til programmer vores Arduino-kort og være i stand til at styre jævnstrømsmotorer på en enkel og kontrolleret måde. Generelt bruges denne type modul mere i robotteknologi eller i motoriserede aktuatorer, selvom det kan bruges til en lang række applikationer.

Vi har allerede indtastet alt, hvad du har brug for om ESP-modulet med ESP8266-chip, har en modul, der gør det muligt at udvide kapaciteterne Arduino-kort og andre projekter, så de har WiFi-forbindelse. Disse moduler kan ikke kun bruges isoleret, det gode er, at de kan kombineres. For eksempel kan en ESP8266 bruges til vores prototype og L298N, som vi ville få en styrbar motor med via internettet eller trådløst.

Introduktion til L298N og datablad:

l298n pinout

Selvom du med Arduino også kan arbejde med trinmotorer, som er velkendte inden for robotteknologi, er det i dette tilfælde normalt mere almindeligt at bruge controlleren eller driver til jævnstrømsmotorer. Du kan få oplysninger om L298-chippen og modulerne i producentens datablad, f.eks STMicroelectronics fra dette link. Hvis du vil se et datablad for det specifikke modul og ikke kun chippen, kan du downloade denne anden PDF af Handsontec L298N.

Men generelt er en L298N en H-bro-type driver, der gør det muligt at kontrollere DC-motorers hastighed og rotationsretning. Det kan også nemt bruges med trinmotorer takket være 2 H-bro der implementerer. Det vil sige en bro i H, hvilket betyder, at den er dannet af 4 transistorer, der gør det muligt at vende strømens retning, så motorens rotor kan rotere i en eller anden retning, som vi ønsker. Dette er en fordel i forhold til controllere, der kun giver dig mulighed for at styre omdrejningshastigheden (RPM) ved kun at kontrollere værdien af ​​forsyningsspændingen.

L298N kan arbejde med forskellige spændinger, fra 3v til 35v, og med en intensitet på 2A. Dette er, hvad der virkelig vil bestemme motorens ydeevne eller rotationshastighed. Det skal huskes, at den elektronik, som modulet bruger normalt bruger omkring 3v, så motoren vil altid modtage 3v mindre fra den strøm, som vi tilfører den. Det er et noget højt forbrug, faktisk har det et højt effektelement, der har brug for en køleplade, som du kan se på billedet.

For at kontrollere hastigheden kan du gøre noget omvendt med det, vi gjorde med LM35, i dette tilfælde i stedet for at opnå en bestemt spænding ved udgangen og skulle konvertere den til grader, her vil det være det modsatte. Vi fodrer føreren med en lavere eller højere spænding for at opnå en hurtigere eller langsommere drejning. Derudover giver L298N-modulet også mulighed for, at Arduino-kortet får strøm ved 5V, så længe vi driver driveren med mindst 12V spænding.

Integration med Arduino

kredsløbsdiagram for l298n med Arduino

Der mange projekter, som du kan bruge dette modul L298N med. Faktisk kan du bare forestille dig alt, hvad du kunne gøre med det og komme på arbejde. For eksempel ville et simpelt eksempel være styringen af ​​to jævnstrømsmotorer, som det kan ses i det foregående diagram lavet med Fritzing.

Før vi arbejder med L298N, skal vi tage højde for, at input af modulet eller Vin understøtter spændinger mellem 3v og 35v og at vi også skal forbinde det til jord eller GND, som det kan ses på billedet med henholdsvis det røde og sorte kabel. Når den er tilsluttet strømmen, er den næste ting at forbinde motoren eller de to motorer, som den accepterer at kontrollere samtidigt. Dette er simpelt, du skal kun forbinde de to terminaler på motoren til forbindelsesfanen, der har modulet på hver side.

Og nu kommer måske det mest komplicerede og er at forbinde modulforbindelserne eller stifter til Arduino korrekt. Husk, at hvis modulets regulatorjumper eller bro er lukket, det vil sige, er modulets spændingsregulator aktiveret, og der er en 5v-udgang, som du kan bruge til at drive Arduino-kortet. På den anden side, hvis du fjerner jumperen, deaktiverer du regulatoren, og du skal strømforsyne Arduino uafhængigt. øje! Fordi jumperen kun kan indstilles til 12 volt spændinger, skal du mere end det fjerne den for ikke at beskadige modulet ...

Du kan sætte pris på det der er 3 tilslutninger til hver motor. Dem, der er markeret som IN1 til IN4, er dem, der styrer motor A og B. Hvis du ikke har en af ​​motorerne tilsluttet, fordi du kun har brug for en, behøver du ikke sætte dem alle. Springerne på hver side af disse forbindelser for hver motor er ENA og ENB, det vil sige for at aktivere motor A og B, som skal være til stede, hvis vi vil have begge motorer til at fungere.

til motor A (Det ville være det samme for B), vi skal have IN1 og IN2 tilsluttet, der styrer rotationsretningen. Hvis IN1 er HØJ og IN2 er LAV, drejer motoren i den ene retning, og hvis de er LAV og HØJ, drejer den den anden. For at kontrollere rotationshastigheden skal du fjerne INA- eller INB-jumpere og bruge de ben, der ser ud til at forbinde den til Arduino PWM, så hvis vi giver den en værdi fra 0 til 255, opnår vi henholdsvis en lav eller højere hastighed.

Vedrørende programmering er også let i Arduino IDE. For eksempel vil en kode være:

<pre>// Motor A
int ENA = 10;
int IN1 = 9;
int IN2 = 8;

// Motor B
int ENB = 5;
int IN3 = 7;
int IN4 = 6;

void setup ()
{
 // Declaramos todos los pines como salidas
 pinMode (ENA, OUTPUT);
 pinMode (ENB, OUTPUT);
 pinMode (IN1, OUTPUT);
 pinMode (IN2, OUTPUT);
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
//Mover los motores a pleno rendimiento (255), si quieres bajar la velocidad puedes reducir el valor hasta la mínima que son 0 (parados)</pre>
<pre>//Para mover los motores en sentido de giro contrario, cambia IN1 a LOW e IN2 a HIGH

void Adelante ()
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 255); //Velocidad motor A
 //Direccion motor B
 digitalWrite (IN3, HIGH);
 digitalWrite (IN4, LOW);
 analogWrite (ENB, 255); //Velocidad motor B
}</pre>

Vær den første til at kommentere

Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.