Control de Motor Paso Paso + Shield L298 con Arduino Leonardo

publicado en: Sin Categoria | 0

Motor Paso Paso + Shield L298 con Arduino Leonardo 2El Shield L298 se basa en un puente H doble integrado en un solo chip L298D (datasheet) que está diseñado para manejar cargas inductivas, relés, solenoides, motor DC y motores Paso a Paso. Esta Shield L298 te permite controlar desde tu ARDUINO la velocidad, dirección de forma independiente por cada canal.

Este Shield L298 posee 2 canales llamados A y B, cada canal posee 4 pines que están multiplexados a la placa ARDUINO. Con estos pines se puede controlar velocidad, dirección, freno rápido y detectar corriente. Además se puede utilizar cada canal por separado para conducir 2 motores DC o 1 motor Paso a Paso Bipolar. Este Shield L298 llega a suministrar 2 amperios por canal y un total de 4 amperios.

El Shield L298 es compatible con «Arduino Motor Shield» de la familia Arduino y posee todas sus características de hardware y componentes. Además arduino nos brinda gratuitamente el esquemático y archivos eagle.

Archivos Eagle: arduino_MotorShield_Rev3-reference-design.zip

Esquematico: arduino_MotorShield_Rev3-schematic.pdf

ESPECIFICACIÓNES TECNICAS DEL MÓDULO SHIELD L298

  • Voltaje de funcionamiento: 5v a 12v.
  • Controlador de Motor: L298P.
  • 2 motores DC o 1 motor paso a paso.
  • Corriente máxima: 2A por canal o 4A máximo. (con fuente de alimentación externa.)
  • Detección de Corriente: 1.65/1A.

PINES UTILIZADOR DEL MÓDULO SHIELD L298 EN LA PLACA ARDUINO

Shield L298 2

EJEMPLO

#include 
 
const int revolution = 200;
Stepper _Stepper(revolution, 12, 13);
 
const int pwmA = 3;
const int pwmB = 11;
const int brakeA = 9;
const int brakeB = 8;
 
void setup() {
  pinMode(pwmA, OUTPUT);
  pinMode(pwmB, OUTPUT);
  pinMode(brakeA, OUTPUT);
  pinMode(brakeB, OUTPUT);
  digitalWrite(pwmA, HIGH);
  digitalWrite(pwmB, HIGH);
  digitalWrite(brakeA, LOW);
  digitalWrite(brakeB, LOW);
  _Stepper.setSpeed(150);
 }
 
 void loop() {
   _Stepper.step(revolution);
   _Stepper.step(-revolution);
   delay(100);
 }

Deja una respuesta