PROYECTO 5to Parcial
Individual #2: Puente H L298N
¿Qué es y para qué sirve un puente h?
El puente H es un circuito electrónico que permite a un motor eléctrico DC girar en ambos sentidos, avanzar y retroceder.
¿Cuáles son las entradas y salidas de un L298N?
Los puentes H ya vienen hechos en algunos circuitos integrados, pero también se pueden construir a partir de componentes eléctricos y/o electrónicos.
Un puente H se construye con 4 interruptores (mecánicos o mediante transistores). Cuando los interruptores S1 y S4 están cerrados ( S2 y S3 abiertos ) se aplica una tensión haciendo girar el motor en un sentido. Abriendo los interruptores S1 y S4 ( cerrando S2 y S3 ), el voltaje se invierte, permitiendo el giro en sentido inverso del motor.
¿Cuál es la conexión de un L298N?
La conexiones del Puente H en este proyecto es :
¿Qué es lo que hay que evitar al trabajar con un L298N?
Lo que uno debe evitar es un corto circuito en el puente H , debido a que si ocurre eso ya no se lo podrá utilizar.
¿Cuál es el programa Arduino básico para avanzar, retroceder y parar utilizando dos motorreductores conectados a un L298N?
(...)
-Programación -
int motorA1=2; //motor 1
int motorA2=3; //motor 1
int velA=6; //pin analógico
int motorB1=4; //motor 2
int motorB2=5; //motor 2
int velB=9; //pin analógico
void setup() {
pinMode(motorA1,OUTPUT); //motor 1
pinMode(motorA2,OUTPUT); //motor 1
pinMode(motorB1,OUTPUT); //motor 2
pinMode(motorB2,OUTPUT); //motor 2
pinMode(velA,OUTPUT);
pinMode(velB,OUTPUT);
}
void loop() {
//movimiento hacia adelante
digitalWrite(motorA1,HIGH); digitalWrite(motorB1,HIGH);
digitalWrite(motorA1,LOW); digitalWrite(motorA1,LOW);
analogWrite(velA,255); analogWrite(velB,100);
delay(3000); //por tiempo, solo por práctica
//movimiento hacia atrás
digitalWrite(motorA1,LOW);
digitalWrite(motorA2,HIGH);
delay(3000); //por tiempo, solo por práctica
//detener
digitalWrite(motorA1,LOW);
digitalWrite(motorA2,LOW);
delay(2000); //por tiempo, solo por práctica
}
int motorA2=3; //motor 1
int velA=6; //pin analógico
int motorB1=4; //motor 2
int motorB2=5; //motor 2
int velB=9; //pin analógico
void setup() {
pinMode(motorA1,OUTPUT); //motor 1
pinMode(motorA2,OUTPUT); //motor 1
pinMode(motorB1,OUTPUT); //motor 2
pinMode(motorB2,OUTPUT); //motor 2
pinMode(velA,OUTPUT);
pinMode(velB,OUTPUT);
}
void loop() {
//movimiento hacia adelante
digitalWrite(motorA1,HIGH); digitalWrite(motorB1,HIGH);
digitalWrite(motorA1,LOW); digitalWrite(motorA1,LOW);
analogWrite(velA,255); analogWrite(velB,100);
delay(3000); //por tiempo, solo por práctica
//movimiento hacia atrás
digitalWrite(motorA1,LOW);
digitalWrite(motorA2,HIGH);
delay(3000); //por tiempo, solo por práctica
//detener
digitalWrite(motorA1,LOW);
digitalWrite(motorA2,LOW);
delay(2000); //por tiempo, solo por práctica
}
BIBLIOGRÁFICAS:
Frank Mecadenix (2017) Puente h para control de motores. Recuperado el 14 de noviembre del 2019 desde: https://www.ingmecafenix.com/electronica/puente-h-control-motores/