conexiones

Proyecto con Arduino Nº 06 – Coche fantástico interactivo

FUNCIONAMIENTO DEL PROGRAMA:

En este proyecto con arduino, vamos a utilizar 10 leds, para conseguir un efecto similar a KITT el coche fantástico de la famosa serie de televisión, pero ahora introduciremos un nuevo componente electrónico, el potenciómetro, que nos permitirá regular la velocidad de desplazamiento del led encendido, en este caso un potenciómetro de 4K7, 4.700 Ohmios, el potenciómetro tiene tres patillas, entre las dos de los extremos tendremos una resistencia de 4K7, y entre uno de los extremos y la patilla del centro tendremos una resistencia variable de 0 a 4.700 Ohmios dependiendo de cuanto giremos el potenciómetro, si además de ello colocamos el potenciómetro en un circuito eléctrico con una tensión fija en sus extremos podremos utilizar el potenciómetro como un divisor de tensión.

Si llevamos la patilla de en medio del potenciómetro a una entrada analógica del arduino, podremos leer ese valor de tensión, y en este ejercicio la frecuencia de barrido de las luces del coche fantástico dependerá de ese valor analógico de entrada.

El potenciómetro es un componente electrónico muy usado, por ejemplo, para manejar el volumen de una radio, para regular el brillo de una lámpara, y en general en cualquier circuito eléctrico en el que necesitemos regular una magnitud.

Conexiones

Comprobando primero que todo está desconectado. Conectaremos el Arduino tal como aparece en el simulador y teniendo mucho cuidado de colocar cada uno de los extremos del cable en los orificios (entradas y salidas) adecuados.

 

Esquema eléctrico

Hardware (Lista de materiales)

Id

Descripción

Cantidad

1

Placa Arduino R3

1

2

Placa Protoboard

1

3

Led Rojo

10

4

Resistencias de 220 Ohmios

10

5

Potenciómetro de 4K7

1

Programa

// Proyecto 06 – Coche fantástico interactivo

 byte ledPin[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; // Creo un array para los Leds

 int ledDelay=100; // Establezco el retraso entre los cambios

 int direction = 1;

 int currentLED = 0;

 unsigned long changeTime;

 int potPin=2; // Pin 2 analógico como entrada

 void setup()

 {

 Serial.begin(9600);

for (int x = 0; x < 10; x++) // Establezco los pins a cero, ahora van de cero a diez

 {

pinMode(ledPin[x], OUTPUT);

}

 changeTime = millis();

 }

 void loop()

 {

 ledDelay=analogRead(potPin);

 Serial.println(ledDelay);

 if ((millis() – changeTime) > ledDelay) // Si ha pasado el tiempo de cambio desde el último cambio

 {

 changeLED();

 changeTime = millis();

 }

 }

 void changeLED()

 {

 for (int x = 0; x < 10; x++) // turn off all LED’s

 {

 digitalWrite(ledPin[x], LOW);

 }

 digitalWrite(ledPin[currentLED], HIGH); // turn on the current LED

 currentLED += direction; // increment by the direction value

 if (currentLED == 9) // change direction if we reach the end

 {

 direction = -1;

 }

if (currentLED == 0)

 {

 direction = 1;

 }

 }

Notas:
  • Utiliza cable negro para todas las conexiones a masa (GND).
  • Utiliza cable rojo para todas las conexiones a VCC (5V).
  • No importa los colores que utilices para las demás conexiones.
  • Ten cuidado al conectar los componentes en el protoboard pues puedes dañarlos.
  • Comprueba que conectas el led con la polaridad correcta. (Cátodo a masa).
  • Cuando todo esté correctamente conectado puedes conectar el cable USB.
Observaciones
  • Una vez comprobado el código y subido el led al Arduino, ser encenderán y apagarán todos los leds tres veces y después comenzará la secuencia del programa.
Enlaces del proyecto en 123D Circuits

Comentarios

Un comentario en “Proyecto con Arduino Nº 06 – Coche fantástico interactivo

Deja un comentario