Tabla de contenido:

Control de motor DC Arduino Uno R3: 6 pasos
Control de motor DC Arduino Uno R3: 6 pasos

Video: Control de motor DC Arduino Uno R3: 6 pasos

Video: Control de motor DC Arduino Uno R3: 6 pasos
Video: 💡 Control de MOTORES DC con Arduino y el chip L293D 【 2021 】 - Capítulo #35🔋 2024, Septiembre
Anonim
Control de motor DC Arduino Uno R3
Control de motor DC Arduino Uno R3

En este experimento, aprenderemos a controlar la dirección y la velocidad de un motor de CC de pequeño tamaño mediante un chip controlador L293D. Haciendo experimentos simples, simplemente haremos que el motor gire hacia la izquierda y hacia la derecha, y acelere o desacelere automáticamente.

Paso 1: componentes

- Placa Arduino Uno * 1

- Cable USB * 1

- L293D * 1

- Motor DC pequeño * 1

- Tablero de pruebas * 1

- Cables de puente

Paso 2: Principio

La corriente máxima de un puerto de E / S de Arduino es de 20 mA, pero la corriente de accionamiento de un motor es de al menos 70 mA. Por lo tanto, no podemos usar directamente el puerto de E / S para impulsar la corriente; en su lugar, podemos usar un L293D para impulsar el motor. L293D L293D está diseñado para proporcionar corrientes de mando bidireccionales de hasta 600 mA a voltajes de 4,5 V a 36 V. Se utiliza para impulsar cargas inductivas como relés, solenoides, motores paso a paso bipolares y de CC, así como otras cargas de alta corriente / alto voltaje en aplicaciones de suministro positivo.

Vea la figura de pines a continuación. L293D tiene dos pines (Vcc1 y Vcc2) para fuente de alimentación. Vcc2 se utiliza para suministrar energía al motor, mientras que Vcc1, para el chip. Dado que aquí se utiliza un motor de CC de tamaño pequeño, conecte ambos pines a + 5V. Si utiliza un motor de mayor potencia, debe conectar el Vcc2 a una fuente de alimentación externa.

Paso 3: el diagrama esquemático

El diagrama esquemático
El diagrama esquemático

Paso 4: Procedimientos

Procedimientos
Procedimientos
Procedimientos
Procedimientos

El pin de habilitación 1, 2EN del L293D ya están conectados a 5 V, por lo que L293D siempre está en estado de funcionamiento. Conecte el pin 1A y 2A al pin 9 y 10 del tablero de control respectivamente. Los dos pines del motor están conectados a los pines 1Y y 2Y respectivamente. Cuando el pin 10 se establece como nivel alto y el pin 9 como bajo, el motor comenzará a girar en una dirección. Cuando el pin 10 es bajo y el pin 9 es alto, gira en la dirección opuesta.

Paso 1:

Construye el circuito.

Paso 2:

Descarga el código de

Paso 3:

Sube el boceto a la placa Arduino Uno

Haga clic en el icono Cargar para cargar el código en el tablero de control.

Si aparece "Carga finalizada" en la parte inferior de la ventana, significa que el boceto se cargó correctamente.

Ahora, la cuchilla del motor de CC comenzará a girar hacia la izquierda y hacia la derecha, a una velocidad que varía en consecuencia.

Paso 5: Código

Código
Código

// Control de motor de CC

// El motor DC

comenzará a girar hacia la izquierda y hacia la derecha, y su velocidad variará en consecuencia.

//Correo electrónico:[email protected]

// Sitio web:www.primerobotics.in

/***************************************/

const int motorIn1

= 9; // adjuntar a uno de los pines del motor

const int motorIn2

= 10; // adjuntar a otro pin del motor

/***************************************/

configuración vacía ()

{

pinMode (motorIn1, SALIDA); // inicializa el pin motorIn1 como salida

pinMode (motorIn2, SALIDA); // inicializar el pin motorIn2 como salida

}

/****************************************/

bucle vacío ()

{

en el sentido de las agujas del reloj (200); //rotar las agujas del reloj

retraso (1000);

//Espera un segundo

en sentido antihorario (200); //girar en sentido antihorario

retraso (1000);

//Espera un segundo

}

/****************************************

/ La función para

motor de accionamiento girar en sentido horario

vacío en el sentido de las agujas del reloj (int

Velocidad)

{

analogWrite (motorIn1, Velocidad); // establece la velocidad del motor

analogWrite (motorIn2, 0); // detener el pin motorIn2 del motor

}

// La función para conducir

motor girar en sentido antihorario

vacío

en sentido antihorario (velocidad int)

{

analogWrite (motorIn1, 0); // detener el pin motorIn1 del motor

analogWrite (motorIn2, Velocidad); // establece la velocidad del motor

}

/****************************************/

Recomendado: