control de giro de un motor
- carlos florez
- 6 jul 2018
- 2 Min. de lectura
# arduino
en esta ocasión estaremos realizando un proyecto muy utilizado a nivel educativo que es el control de giro del motor utilizando un arduino y un integrado l293d este ultimo es el encargado de realizar el giro ya que en su
interior lleva un circuito muy conocido que es el el puente h que a partir de 4 transistores realiza el giro del motor que deseamos controlar
circuito control de motor

pines del integrado l293d

función del circuito
el circuito funciona de la siguiente manera el arduino es el encargado de realizar el control del motor gracias a una función llamada if "estados" que nos da el siguiente ejemplo
if ( digitalRead (boton1) == HIGH && digitalRead (boton2) == LOW && digitalRead (boton3) == LOW )
{ digitalWrite ( led1, HIGH);
digitalWrite ( led2, LOW);
delay(100);}
esto nos indica que cuando el botón 1 esta high y los otros 2 están en low realiza la función de abajo que es la siguiente el led 1 se encenderá mientras que el dos se apagara
código del arduino
// aprendamos electronica
// carlos florez
// control de motor con arduino
// materiales
// un arduino
// un integrado 2l93d
// dos led cualquier color
// tres pulsadores
// tres resistencia de 1k
int led1 = 12; //salida del led
int led2 = 13; // salida del led
int boton1 = 10; // entrada boton derecha
int boton2 = 9; // entrada boton izquierda
int boton3 = 11; // entrada boton de parada
void setup() {
pinMode (led1, OUTPUT); //declaramos los pines como entrada y salida
pinMode (led2, OUTPUT);
pinMode (boton1, INPUT);
pinMode (boton2, INPUT);
pinMode (boton3, INPUT);
Serial.begin(9600);}
void loop() {
// estados de los botones
if ( digitalRead (boton1) == HIGH && digitalRead (boton2) == LOW && digitalRead (boton3) == LOW )
{ digitalWrite ( led1, HIGH);
digitalWrite ( led2, LOW);
delay(100);}
if ( digitalRead (boton1) == LOW && digitalRead (boton2) == HIGH && digitalRead (boton3) == LOW )
{ digitalWrite ( led1, LOW);
digitalWrite ( led2, HIGH);
delay(100);}
if ( digitalRead (boton1) == LOW && digitalRead (boton2) == LOW && digitalRead (boton3) == HIGH )
{ digitalWrite ( led1, LOW);
digitalWrite ( led2, LOW);
delay(100);}}
Comments