Práctica 1 - Cuadrado coche
En esta práctica hemos empezado a utilizar el coche, al cuál, le hemos colocado una pila para que se puedan alimentar los motores y otra para poder alimentar la placa de Arduino donde se guarda nuestro programa.
Este programa lo he utilizado para que el coche pueda dibujar un cuadrado.
// Motor A
int ENA = 3; // definimos los pines donde se encuentra el motor A
int IN1 = 2;
int IN2 = 4;
// Motor B
int ENB = 6; // definimos los pines donde se encuentra el motor B
int IN3 = 7;
int IN4 = 8;
void setup ()
{
pinMode (ENA, OUTPUT); // definimos todos los pines como salidas
pinMode (ENB, OUTPUT);
pinMode (IN1, OUTPUT);
pinMode (IN2, OUTPUT);
pinMode (IN3, OUTPUT);
pinMode (IN4, OUTPUT);
}
void Adelante () // definimos la señal para que vaya hacia delante y no la tengamos que repetir siempre
{
digitalWrite (IN1, HIGH); // definimos la velocidad y dirección del motor A
digitalWrite (IN2, LOW);
analogWrite (ENA, 100);
digitalWrite (IN3, HIGH); // definimos la velocidad y dirección del motor B
digitalWrite (IN4, LOW);
analogWrite (ENB, 100);
}
void Atras () // definimos la señal para que vaya hacia atrás y no la tengamos que repetir siempre
{
digitalWrite (IN1, LOW); // definimos la velocidad y dirección del motor A
digitalWrite (IN2, HIGH);
analogWrite (ENA, 100);
digitalWrite (IN3, LOW); // definimos la velocidad y dirección del motor B
digitalWrite (IN4, HIGH);
analogWrite (ENB, 100);
}
void Derecha () // definimos la señal para que vaya hacia la derecha y no la tengamos que repetir siempre
{
digitalWrite (IN1, HIGH); // definimos la velocidad y dirección del motor A
digitalWrite (IN2, LOW);
analogWrite (ENA, 50);
digitalWrite (IN3, LOW); // definimos la velocidad y dirección del motor B
digitalWrite (IN4, HIGH);
analogWrite (ENB, 5);
void Izquierda () // definimos la señal para que vaya hacia la izquierda y no la tengamos que repetir siempre
{
digitalWrite (IN1, LOW); // definimos la velocidad y dirección del motor A
digitalWrite (IN2, HIGH);
analogWrite (ENA, 200);
digitalWrite (IN3, HIGH); // definimos la velocidad y dirección del motor B
digitalWrite (IN4, LOW);
analogWrite (ENB, 100);
}
void Parar () // definimos la señal para que pare y no la tengamos que repetir siempre
{
digitalWrite (IN1, LOW); // definimos la velocidad y dirección del motor A
digitalWrite (IN2, LOW);
analogWrite (ENA, 0);
digitalWrite (IN3, LOW); // definimos la velocidad y dirección del motor B
digitalWrite (IN4, LOW);
analogWrite (ENB, 0);
}
void loop () //definimos el programa completo para que haga nuestras instrucciones
{
Adelante();
delay (500);
Parar();
delay(100);
Derecha();
delay (200);
Parar();
delay(100);
Adelante();
delay (500);
Parar();
delay(100);
Derecha();
delay (200);
Parar();
delay(100);
Adelante();
delay (500);
Parar();
delay(100);
Derecha();
delay (200);
Parar();
delay(100);
Adelante();
delay (500);
Parar ();
}
Muchas gracias por compartir el código, me servirá de ayuda.
ResponderEliminar