PROYECTO Nº 2: Caja fuerte

Aprende a construir y programar una caja fuerte utilizando los componentes del Maker Control Kit y el Maker Kit 3.

Utiliza el servomotor y dos botones para construir una cerradura que se abrirá únicamente introduciendo una combinación secreta de pulsaciones con los botones.

NIVEL DE DIFICULTAD: Intermedio.

DURACIÓN DEL EJERCICIO:  60 min.

MATERIALES:

  • 1 Servomotor
  • 2 Botones
  • 1 Caja de cartón
  • 1 Placa controladora Build&Code 4in1
  • 1 Cable USB – Micro USB
  • Ordenador
  • Material para crear la cerradura
  • Adhesivo o cinta adhesiva

¿Qué es un botón?

Un botón o pulsador es un operador eléctrico que cuando se oprime, permite el paso de la corriente eléctrica y, cuando se deja de oprimir, lo interrumpe.

CONSTRUCCIÓN DE LA ESTRUCTURA:

Utilizarás cartón pluma para fabricar la cerradura y una caja de cartón para fabricar la caja fuerte. Para hacer las uniones de los distintos elementos usarás cinta adhesiva y tornillos.

Para construir la estructura descarga la plantilla de la cerradura y descarga la guía rápida de montaje. Sigue los pasos indicados:

  1. Pega la plantilla de cerradura en el cartón pluma y utiliza las líneas como guía para recortar el cartón.
  2. Haz un agujero en la caja para introducir el servomotor y otro agujero para introducir el cable USB. Une la cerradura y el resto de los componentes electrónicos a la caja.

Una vez que la estructura esté montada, pon la placa controladora Build&Code 4in1 en el interior de la caja y conecta todos los componentes electrónicos siguiendo las indicaciones del apartado de conexiones que se encuentra a continuación.

CONEXIONES:

  1. Conecta el botón 1 al puerto digital 4 de la placa controladora Build&Code 4in1.
  2. Conecta el botón 2 al puerto digital 5 de la placa controladora Build&Code 4in1.
  3. Conecta el servomotor al puerto digital 9 de la placa controladora Build&Code 4in1.

Para guiarte, mira los colores de los cables y los colores de los terminales de la placa controladora Build&Code 4in1. Cada cable debe ir conectado a su color.

 

CÓDIGO DE PROGRAMACIÓN:

El programa consiste en dos partes:

  1. Lectura y contabilización de las pulsaciones de cada botón.
  2. Comparación del número de pulsaciones de cada botón con el código secreto introducido en el programa.

Para hacer que el sistema sea más seguro, hay una forma de introducir el código secreto. Primero hay que introducir el primer número con el pulsador conectado al puerto digital 4 y a continuación introducir el segundo número con el pulsador conectado al puerto digital 5. Si se introduce al revés, la cerradura no se abrirá y habrá que reiniciar la cuenta.

Si la introducción del código es correcta el servomotor se moverá 90º, abriendo la cerradura.

Para reiniciar todo el sistema y cerrar la cerradura, pulsarás los dos botones a la vez y el servomotor se posicionará en 15º, cerrando la cerradura. El sistema de conteo de pulsaciones de los botones se pondrá en cero. De esta manera, el sistema estará listo para volver a introducir el código.

Puedes realizar esta actividad utilizando los software Arduino y Bitbloq, además de otros software de programación por bloques compatibles. A continuación encontrarás el código de programación necesario para cada software.

Código Arduino

  1. Descarga el software Arduino y realiza el proceso de instalación.
  2. Abre el programa Arduino y, una vez en él, copia el siguiente programa:
    #include <Servo.h> // Librería del servomotor
    Servo motor1; // Nombre del servomotor es motor1
    int VButton1, VButton2; // Variables para el botón 1 y el botón 2
    int Button1 = 4, Button2 = 5; // Puertos de conexión de los botones, puerto digital 4 y 5
    int CODE1 = 2; // 1er número del código secreto es 2
    int CODE2 = 5; // 2ndo número del código secreto es 5
    int X1 = 0; // Variables para guardar las pulsaciones de los botones
    int X2 = 0;
    int X3 = 0;
    
    void setup() {
      // Put your setup code here, to run once:
      motor1.attach (9); // Servomotor conectado al puerto digital 9
      motor1.write (15); // Servomotor a 15º
      pinMode (Button1, INPUT); // Configuración de los botones como señal de entrada
      pinMode (Button2, INPUT);
      pinMode (13, OUTPUT); // Configuración del puerto 13 como salida
      Serial.begin(9600); // Configuración de comunicación por puerto serie de los botones
      Serial.print ("Button1");
      Serial.print ("\t");
      Serial.println ("Button2");
    }
    
    void loop() {
      // Put your main code here, to run repeatedly:
      VButton1 = digitalRead (Button1); // Lectura del estado del botón 1, pulsado/no pulsado
      VButton2 = digitalRead (Button2); // Lectura del estado del botón 1, pulsado/no pulsado
      if(VButton1 == 1) // Si el botón1 es pulsado 
      {
        X1 = X1+1; // X1 incrementa +1
        delay(300); // Espera de 300 ms
      }
      if(VButton2 == 1) // Si el botón2 es pulsado
      {
        X2 = X2+1; // X2 incrementa +1
        delay(300); // Espera de 300 ms
      }
      if((X1 == CODE1) && (X2 == 0) && (X3 == 0)) // Si X1 es igual a CODE 1 y X2 = 0 y X3 = 0
      {
        X3 = 1; // X3 = 1
      }
      if ((X2== CODE2) && (X3 == 1)) // Si X2 es igual a CODE2 y X3 = 1
      {
        digitalWrite (13, HIGH); // LED de la placa encendido 
        motor1.write (90); // Servomotor a 90º
      }
      if ((VButton1 == 1) && (VButton2 == 1)) // Si botón1 y botón 2 están pulsados a la vez
      {
        X1 = 0; // X1, X2 y X3 a 0
        X2 = 0;
        X3 = 0;
        digitalWrite (13, LOW); // LED de la placa apagado
        motor1.write (15); // Servomotor a 15º
      }  
      Serial.print (X1); // Mostrar por pantalla el valor de X1
      Serial.print ("\t");
      Serial.println (X2); // Mostrar por pantalla el valor de X2
    }
    
  3. Configura y carga el código, siguiendo las instrucciones indicadas en el documento de Primeros Pasos de la placa Build&Code 4in1.

Código para el software de programación por bloques compatible

  1. Descarga el software y realiza el proceso de instalación.
  2. Abre el programa y, una vez en él copia el siguiente código:
  3. Configura y carga el código, siguiendo las instrucciones indicadas en el documento de Primeros Pasos de la placa Build&Code 4in1.

Código BitBloq

  1. Accede al software Bitbloq.
  2. Abre el programa Bitbloq y, una vez en él, copia el siguiente código:
    • Hardwar
    • Software
  3. Configura y carga el código, siguiendo las instrucciones indicadas en el documento de Primeros Pasos de la placa Build&Code 4in1.

RESULTADO DEL EJERCICIO:

La cerradura funciona con el servomotor y la introducción del número secreto se realiza utilizando los botones. Al introducir la combinación de pulsaciones correcta, el servomotor se moverá 90º, abriendo la cerradura. Pulsando los dos botones a la vez, el servomotor se posicionará en 15º, cerrando la cerradura. ¡Has fabricado tu propia caja fuerte!

5 0

0