Motor Paso a Paso Un paso cada vez

Los motores paso a paso, debido a su diseño único, se pueden controlar con un alto grado de precisión sin mecanismos de retroalimentación. El eje de un motor paso a paso, montado con una serie de imanes, es controlado por una serie de bobinas electromagnéticas que están cargadas positivamente y negativamente en una secuencia específica, precisamente, moviéndolo hacia adelante o hacia atrás en "pasos" pequeños.

Hay dos tipos de motores paso a paso, unipolares y bipolares, y es muy importante saber qué tipo está usted trabajando. Para cada uno de los motores, hay un circuito diferente. El código de ejemplo controlará los dos tipos de motores. Ver los esquemas motores unipolares y bipolares para obtener información sobre cómo cablear su motor.

En este ejemplo, un potenciómetro (u otro sensor) en la entrada analógica 0 se utiliza para controlar el movimiento de un motor paso a paso usando la biblioteca Stepper de Arduino. El motor paso a paso es controlado por los pines digitales con 8, 9, 10, y 11, ya sea para motores bipolares o unipolares.

La placa Arduino o Genuino se conectará a una matriz Darlington U2004  si está utilizando un paso a paso unipolar o un SN754410NE H-Bridge si tiene un motor bipolar.

Para obtener más información acerca de las diferencias de los dos tipos, por favor, eche un vistazo a la página Motores paso a paso.


Hardware necesario

Placa Arduino o Genuino
Potenciómetro de 10k ohm
Motor paso a paso
Darlington Array U2004 (si se utiliza un paso a paso unipolar) SN754410ne H-puente (si se utiliza un paso a paso bipolar)
Fuente de alimentación adecuada para su paso a paso en particular
Cable de conexionado
Placa protoboard

Circuitos

En la página Biblioteca Stepper encontrará circuitos para ambos motores paso a paso unipolares y bipolares. En cualquiera de los casos, es mejor alimentar sus motores paso a paso desde una fuente externa, ya que consumen demasiado para ser alimentados directamente desde la placa Arduino.
En ambos circuitos, conectar un potenciómetro de 10k entre  alimentación y tierra, con su toma central conectada al pin analógico 0.

Nota: Ambos circuitos descritos son cuatro configuraciones de cableado. Dos configuraciones de cableado no funcionarán con el código proporcionado.

Código


Para ambos motores paso a paso unipolares y bipolares


// Control de un motor pasa a paso - un paso cada vez 

// Este programa controla un motor paso a paso unipolar o bipolar. 
// El motor está conectado a los pinesdigitales 8 - 11 del Arduino. 
// El motor se mueve un paso cada vez, muy lentamente. 
// Usted puede usar esto para comprobar que tiene los cuatro // cables de su motor paso a paso conectadoscorrectamente. 
// Si esta conectado correctamente, todos los pasos deben ir en // la misma dirección. Utilice esto también para contar el número 
// de pasos por revolución de su motor, si no lo sabe. A continuación, 
// conecte ese número en el programa de ejemplo // oneRevolution  para ver si lo ha hecho bien. 

// Creado 30 Nov. 2009 por Tom Igoe

#include <Stepper.h>

const int stepsPerRevolution = 200;  // cambiar esta para fijar el número de pasos por revolución
// de su motor

// inicializar la biblioteca Stepper de pinos 8 a 11:
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);

int stepCount = 0;         // número de pasos que el motor ha dado

void setup() {
  // initializa el puerto serie:
  Serial.begin(9600);
}

void loop() {
  // paso a paso:
  myStepper.step(1);
  Serial.print("Pasos:");
  Serial.println(stepCount);
  stepCount++;
  delay(500);
}

No hay comentarios:

Publicar un comentario