28BYJ-48: tot el que cal saber sobre aquest motor pas a pas

28BYJ-48 motor pas a pas

Un dels motors pas a pas més populars és el 28BYJ-48. Després de l'article que es va publicar en aquest mateix bloc, ja hauries de conèixer tot el que necessites sobre aquest tipus de motors de precisió en els que pots controlar el gir perquè avanci lentament o es quedi estàtic en una posició que vulguis. Això permet que tinguin multitud d'aplicacions, des industrials, fins robòtica, passant per moltes altres que se t'acudeixin.

El 28BYJ-48 és un petit motor pas a pas de tipus unipolar, I fàcil d'integrar amb Arduino, ja que posseeix un mòdul controlador / controlador model ULN2003A que se sol incloure juntament amb ell. Tot per un preu molt barat i una mida bastant compacte. Aquestes característiques també el fan ideal per començar a practicar amb aquests dispositius.

Característiques de l'28BYJ-48

28BYJ-48

el motor 28BYJ-498 és un motor pas a pas que té les següents característiques:

  • Tipus: Motor pas a pas o stepper unipolar
  • Fases: 4 (full step), a l'haver-hi 4 bobines al seu interior.
  • Resistència: 50 Ω.
  • Parell de motor: 34 N / m, és a dir, si es passen els Newton per metre a kg, seria una força equivalent a posar uns 0.34 kg per cm en el seu eix. Suficient per aixecar amb una politja mica més d'un quart de quilo.
  • Consum: 55 mA
  • Passos per volta: 8 de tipus half step (45º cadascun)
  • reductora integrada: Sí, d'1/64, de manera que divideix cada pas en 64 més petits per a més precisió, per tant, arriba als 512 passos de 0.7º cadascun. O també es pot veure com 256 passos complets per volta (full step).

Els passos complets o mitjans, o full i half steps, són les maneres en què pot treballar. Si ho recordes, en l'article sobre els motors pas a pas vaig dir que l'exemple d'el codi per Arduino IDE es treballava a parell ple.

Per a més informació, pots descarregar la seva datasheet, com per exemple aquest. Pel que fa a l'pinout, no t'has de preocupar massa, encara que també pots veure informació en el datasheet de el model que hagis comprat. Però aquest concret té una connexió que et permet connectar tots els cables d'una vegada, sense preocupar-te de polarització ni d'on va cada un, només inserir al controlador i llest ...

Driver mòdul ULN2003

Pel que fa a controlador o driver de motor que inclou aquest motor 28BYJ-48, tens l'ULN2003A, Un dels més populars i que pots utilitzar amb Arduino de manera molt senzilla. Posseeix un array de transistors Darlington que suporta fins a 500mA i disposa de pins de connexió per enllaçar les 4 bobines amb pins de la placa Arduino numerats de l'IN1 a l'In4, com vas veure en l'article de l'motor pas a pas que vaig citar anteriorment. Des Arduino, pots tenir cables des del pin 5v i GND als dos pins de la placa de la lliçó controlador marcades com - + (5-12v) per alimentar la placa i el motor stepper.

ULN2003A xip pinout i circuit

Per cert, amb els transistors Darlington es permet fer servir un parell de transistors bipolars col·locats junts i que actuen com un transistor únic. Això augmenta molt el guany del senyal en el «transistor» únic resultant, i també permet conduir corrents i tensions més elevades.

El parell Darlington, Com es coneix a l' «transistor» únic format per la combinació de dos transistors bipolars. Es va originar en els Bell Labs el 1952, per Sidney Darlington, d'aquí el seu nom. Aquests transistors es connecten de manera que un NPN té el seu col·lector connectat amb el col·lector de l'segon transistor NPN. Mentre que l'emissor de el primer va a la base de l'segon. És a dir, el transistor o parell resultant té tres connexions com un únic transistor. La base del primer transistor i el col·lector / emissor de el segon transistor ...

On comprar el motor

paquet motor 28BYJ-48

Els pots trobar en multitud de botigues especialitzades en electrònica, i també de forma online com Amazon. Per exemple, pots comprar-los en:

  • Per uns 6 € pots tenir un motor 28BYJ-48 amb el mòdul controlador.
  • No s'ha trobat cap producte. i cables per les seves connexions, per si necessites més d'un motor per al robot o projecte que estiguis fent ...

Programació de l'28BYJ-48 amb Arduino

Arduino amb motor pas a pas i controlador

Primer de tot, hauries tenir clars els conceptes d'un motor pas a pas, De manera que et recomano llegir l'article de Hwlibre sobre aquests elements. Aquests motors no estan dissenyats per ser alimentats de forma contínua, sinó anar-los polaritzant en les seves diferents fases perquè avancin només els graus que volem. Per excitar les fases i controlar el gir de l'eix, hauràs d'anar alimentant de forma adequada cada connexió.

El fabricant recomana excitar 2 bobines cada vegada.

  • Perquè funcioni a el màxim parell, Amb la velocitat més ràpida i amb el consum màxim, pots fer servir aquesta taula:
Pas bobina A bobina B bobina C bobina D
1 ALTRE ALTRE BAIX BAIX
2 BAIX ALTRE ALTRE BAIX
3 BAIX BAIX ALTRE ALTRE
4 ALTRE BAIX BAIX ALTRE
  • Per excitar només una bobina cada vegada, i que funcioni en manera wave drive (Parell a la meitat, però baix consum), podries fer servir la següent taula:
Pas bobina A bobina B bobina C bobina D
1 ALTRE BAIX BAIX BAIX
2 BAIX ALTRE BAIX BAIX
3 BAIX BAIX ALTRE BAIX
4 BAIX BAIX BAIX ALTRE
  • O per avenços mitjans (half steps), Pots usar això altre per aconseguir major precisió de gir en passos més curts:
Pas bobina A bobina B bobina C bobina D
1 ALTRE BAIX BAIX BAIX
2 ALTRE ALTRE BAIX BAIX
3 BAIX ALTRE BAIX BAIX
4 BAIX ALTRE ALTRE BAIX
5 BAIX BAIX ALTRE BAIX
6 BAIX BAIX ALTRE ALTRE
7 BAIX BAIX BAIX ALTRE
8 BAIX BAIX BAIX ALTRE

I pots pensar ... ¿i això què té a veure amb la programació d'Arduino? Doncs la veritat és que molt, ja que pots crear una matriu o array amb els valors en Arduino IDE perquè el motor es mogui al teu gust, i aleshores utilitzar aquest array en bucle o quan ho necessitis ... Tenint en compte que LOW = 0 i HIGH = 1, és a dir, absència de voltatge o voltatge alt, pots crear els senyals que Arduino ha de trametre a el controlador per accionar el motor. Per exemple, per a donar passos mitjans podries fer servir el codi per a la matriu:

int Paso [ 8 ][ 4 ] = 
     {  {1, 0, 0, 0}, 
        {1, 1, 0, 0}, 
        {0, 1, 0, 0}, 
        {0, 1, 1, 0}, 
        {0, 0, 1, 0}, 
        {0, 0, 1, 1}, 
        {0, 0, 0, 1}, 
        {1, 0, 0, 1} };

És a dir, per el codi complet de l'esquetx d'Arduino IDE, podeu fer servir aquest exemple bàsic per anar provant com funciona el motor pas a pas 28BYJ-48. Amb ell, podràs fer girar l'eix de l'motor un cop tinguis tot l'esquema connectat adequadament. Intenta modificar els valors o alterar el codi per a l'aplicació que necessitis en el teu cas:

// Definir pines conectados a las bobinas del driver
#define IN1  8
#define IN2  9
#define IN3  10
#define IN4  11

// Secuencia de pasos a par máximo del motor. Realmente es una matriz que representa la tabla del unipolar que he mostrado antes
int paso [4][4] =
{
  {1, 1, 0, 0},
  {0, 1, 1, 0},
  {0, 0, 1, 1},
  {1, 0, 0, 1}
};

void setup()
{
  // Todos los pines se configuran como salida, ya que el motor no enviará señal a Arduino
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
}

// Bucle para hacerlo girar
void loop()
{ 
    for (int i = 0; i < 4; i++)
    {
      digitalWrite(IN1, paso[i][0]);
      digitalWrite(IN2, paso[i][1]);
      digitalWrite(IN3, paso[i][2]);
      digitalWrite(IN4, paso[i][3]);
      delay(10);
    }
}

Com pots apreciar, en aquest cas funcionaria amb parell màxim activant de dos en dos les bobines ...


Sigues el primer a comentar

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.