Para realizar las pruebas de funcionamiento de los motores nos vamos a servir del tutorial de electronilab sobre el L298N
En primer lugar deberemos analizar la función de cada parte del programa
int IN3 = 5;
int IN4 = 4;
void setup()
{
pinMode (IN4, OUTPUT); // Input4 conectada al pin 4
pinMode (IN3, OUTPUT); // Input3 conectada al pin 5
}
void loop()
{
// Motor gira en un sentido
digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
delay(4000);
// Motor no gira
digitalWrite (IN4, LOW);
delay(500);
// Motor gira en sentido inverso
digitalWrite (IN3, HIGH);
delay(4000);
// Motor no gira
digitalWrite (IN3, LOW);
delay(5000);
}
Probemos ahora con los dos motores a la vez, realiza los cambios pertinentes en el programa.
void avanza()
{
digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
digitalWrite (IN2, HIGH);
digitalWrite (IN1, LOW);
delay(200);
}
int IN3 = 5;
int IN4 = 4;
int IN2 = 7;
int IN1 = 6;
void setup()
{
pinMode (IN4, OUTPUT); // Input4 conectada al pin 4
pinMode (IN3, OUTPUT); // Input3 conectada al pin 5
pinMode (IN2, OUTPUT); // Input2 conectada al pin 7
pinMode (IN1, OUTPUT); // Input1 conectada al pin 6
}
void loop()
{
avanza();
}
void avanza()
{
digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
digitalWrite (IN2, HIGH);
digitalWrite (IN1, LOW);
delay(200);
}
Realiza las pruebas con todas las funciones definidas y documenta el trabajo práctico
En primer lugar deberemos analizar la función de cada parte del programa
int IN3 = 5;
int IN4 = 4;
void setup()
{
pinMode (IN4, OUTPUT); // Input4 conectada al pin 4
pinMode (IN3, OUTPUT); // Input3 conectada al pin 5
}
void loop()
{
// Motor gira en un sentido
digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
delay(4000);
// Motor no gira
digitalWrite (IN4, LOW);
delay(500);
// Motor gira en sentido inverso
digitalWrite (IN3, HIGH);
delay(4000);
// Motor no gira
digitalWrite (IN3, LOW);
delay(5000);
}
Probemos ahora con los dos motores a la vez, realiza los cambios pertinentes en el programa.
Después de probar el código lo reescribiremos de forma que nuestro programa realice las siguientes funciones avanza, retrocede, gira_izquierda, gira_derecha, para
¿Qué es y como podemos definir una función? Una función es una parte del código que realiza una tarea determinada. Permite al programador que el código sea más sencillo y legible.
Ya hemos utilizado algunas de las funciones de ARDUINO como pinmode, digitalwrite o delay, además, todos nuestros programas deben contener dos funciones setup y loop.
¿Qué es y como podemos definir una función? Una función es una parte del código que realiza una tarea determinada. Permite al programador que el código sea más sencillo y legible.
Ya hemos utilizado algunas de las funciones de ARDUINO como pinmode, digitalwrite o delay, además, todos nuestros programas deben contener dos funciones setup y loop.
Pero también podemos definir nuestras propias funciones, en este ejercicio programaremos las funciones que nos permitiran mover el coche.
Vamos a programar por ejemplo la función avanza, esta función es de tipo void (significa que no nos devuelve ningún valor), recuerda que todas las instrucciones deben estar entre { },y que al final de cada línea debes finalizar con ;
Vamos a programar por ejemplo la función avanza, esta función es de tipo void (significa que no nos devuelve ningún valor), recuerda que todas las instrucciones deben estar entre { },y que al final de cada línea debes finalizar con ;
void avanza()
{
digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
digitalWrite (IN2, HIGH);
digitalWrite (IN1, LOW);
delay(200);
}
Escribe el resto de funciones, en tu programa debes escribirlas al finalizar la función loop(),
Nos queda probarlas
int IN4 = 4;
int IN2 = 7;
int IN1 = 6;
void setup()
{
pinMode (IN4, OUTPUT); // Input4 conectada al pin 4
pinMode (IN3, OUTPUT); // Input3 conectada al pin 5
pinMode (IN2, OUTPUT); // Input2 conectada al pin 7
pinMode (IN1, OUTPUT); // Input1 conectada al pin 6
}
void loop()
{
avanza();
}
void avanza()
{
digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
digitalWrite (IN2, HIGH);
digitalWrite (IN1, LOW);
delay(200);
}
Realiza las pruebas con todas las funciones definidas y documenta el trabajo práctico