Contenido del curso

Actividad 11

 

Mi primer proyecto con electrónica

En esta primera actividad con los componentes del MentorBit, imagina que estás diseñando un semáforo para controlar el tráfico en una pequeña intersección. Quieres que las luces de los semáforos cambien de manera secuencial para guiar a los vehículos. Para simular este proceso, utilizaremos los tres LEDs de colores incluidos en la placa del MentorBit.

La idea es que las luces cambien de color en el siguiente orden: primero se encenderá la luz roja, indicando que los vehículos deben detenerse. Luego, se encenderá la luz verde, permitiendo que los vehículos avancen. Finalmente, se encenderá la luz azul, representando una señal especial. Una vez que el LED azul se apague, la secuencia se reiniciará desde el principio.

Las luces se mantendrán encendidas tres segundos con el color rojo, dos segundos con el verde y un segundo con el azul. El ciclo continuará de forma ininterrumpida, similar al comportamiento de un semáforo real.

La conexión de los LEDs ya está definida en la placa del MentorBit, y podrás usar las variables que la librería proporciona para controlar cada uno de los colores.


Recuerda que está disponible el siguiente bloque con el que crear un bucle infinito:


Recuerda que la extensión de MentorBit para mBlock incluye el siguiente bloque con el que podemos
controlar los diodos LED ubicados dentro de la placa:


Recuerda que para incluir una librería previamente instalada en nuestro programa, debemos utilizar
la sentencia siguiente:

#include <MentorBit.h>

En nuestro ejemplo incluiremos la librería MentorBit, que facilita el uso de los componentes básicos de la
placa.
Recuerda que cuando incluimos una librería, ésta normalmente trae consigo lo que se conoce como un
Objeto. Los Objetos, de manera resumida, definen la estructura de una plantilla que puede reutilizarse.
Para utilizar las funciones que vienen incluidas en el Objeto es necesario crear una copia o instancia del
mismo. Esto se consigue de la siguiente manera:

MentorBit miMentorBit;

Donde MentorBit es el nombre del objeto que incluimos con la librería y miMentorBit es la copia o instancia
que hemos creado y que utilizaremos para acceder a todas las funciones definidas.
Recuerda que, para utilizar los métodos o atributos de la librería seleccionada, es necesario hacer
referencia tanto al objeto o instancia de la librería, como a la funcionalidad específica que queremos
emplear en nuestro código o script. Esto se consigue de la siguiente manera:

miMentorBit.LED_ROJO // Acceso a un valor definido en el objeto (por ejemplo LED_ROJO = D5)
miMentorBitSensores.obtenerLecturaDS18B20() // Acceso a un método definido en el objeto
Recuerda que la librería de MentorBit da acceso a las conexiones de los diferentes LEDs de colores
empleando las siguientes referencias:

- miObjetoMentorBit.LED_ROJO

- miObjetoMentorBit.LED_VERDE

- miObjetoMentorBit.LED_AZUL
Recuerda que para poder controlar un LED primero debemos configurar el modo de funcionamiento
del pin donde se encuentre conectado como SALIDA u OUTPUT utilizando la siguiente función:

pinMode(pin, modo);

Donde pin es el número identificador del pin donde está conectado el LED y modo puede ser INPUT
(entrada) u OUTPUT (salida). Esto debe ir colocado en la función setup del programa.
Recuerda que para poder controlar un LED debemos modificar el estado del puerto donde se encuentre
conectado utilizando la siguiente función:

digitalWrite(pin, estado);

Donde pin es el número identificador del pin donde está conectado el LED y estado puede ser HIGH
(1 o Encendido) o LOW (0 o apagado).


Puedes descargar la solución pinchando en el siguiente icono:

Puedes descargar la solución sin utilizar nuestra extensión en el siguiente icono:

#include <MentorBit.h>

// Declaración de instancia de la clase
MentorBit miMentorBit;

// Inicialización del sketch
void setup() {

    // Inicializar pines apagados
    digitalWrite(miMentorBit.LED_ROJO, LOW);
    digitalWrite(miMentorBit.LED_VERDE, LOW);
    digitalWrite(miMentorBit.LED_AZUL, LOW);

}

// Bucle principal del sketch
void loop() {

    // Encendemos el LED rojo solamente y esperamos
    digitalWrite(miMentorBit.LED_ROJO, HIGH);
    digitalWrite(miMentorBit.LED_VERDE, LOW);
    digitalWrite(miMentorBit.LED_AZUL, LOW);
    delay(3000);

    // Encendemos el LED verde solamente y esperamos
    digitalWrite(miMentorBit.LED_ROJO, LOW);
    digitalWrite(miMentorBit.LED_VERDE, HIGH);
    digitalWrite(miMentorBit.LED_AZUL, LOW);
    delay(2000);

    // Encendemos el LED azul solamente y esperamos
    digitalWrite(miMentorBit.LED_ROJO, LOW);
    digitalWrite(miMentorBit.LED_VERDE, LOW);
    digitalWrite(miMentorBit.LED_AZUL, HIGH);
    delay(1000);

}

Puedes descargar la solución sin utilizar nuestra librería en el siguiente icono:

Vistas
23 Número de vistas
23 Vistas de miembros
0 Vistas públicas
Acciones
0 Gustos
0 No me gusta
0 Comentarios
Compartir en redes sociales
Compartir enlace
Compartir por correo

Por favor iniciar sesión para compartir esto webpage por correo.