Giftduino - La caja de regalo perfecta para Arduino
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Aplicaciones y servicios en línea
| ||||
|
Acerca de este proyecto
La electrónica
Para este proyecto, usamos dos componentes relativamente nuevos en circuito.io:
el sensor de efecto Hall y la pantalla LCD gráfica de Nokia.
El sensor de efecto hall reacciona a un campo magnético. Para activarlo, debe haber un cambio en el campo magnético que lo rodea. Como probablemente habrá adivinado, usamos un imán . El imán se coloca en la tapa de la caja de regalo.
Cada vez que se abre la tapa, el sensor de efecto hall se activa y emite una señal para que la pantalla y el altavoz piezoeléctrico toquen su turno. Aquí hay una buena explicación sobre los sensores de efecto Hall y cómo funcionan.
Primer paso:recopile los componentes
En este enlace de circuito mágico preseleccionamos los componentes que usamos en el proyecto. Después de hacer clic en generar , verá todas las piezas que necesita, incluidos los periféricos, como resistencias, condensadores, etc.
Tenga en cuenta que con circuito.io puede crear muchas combinaciones diferentes para este proyecto con los componentes que tiene disponibles.
Aquí hay algunas otras combinaciones que pensamos para este proyecto:
- Reemplaza el altavoz piezoeléctrico con un LED
- Reemplazar el sensor de efecto Hall con un telémetro ultrasónico
- Reemplaza el adaptador de corriente de pared con un 9V batería
- Reemplaza la pantalla de Nokia con una LCD 16x2
Segundo paso:cableado
Si hizo clic en Generar en el enlace mágico de arriba y desplazándose hacia abajo en la respuesta, llegará al esquema de cableado. Siga la guía paso a paso que le mostrará exactamente cómo armar sus dispositivos electrónicos. Puede parecer complicado, pero si sigue la guía paso a paso, ¡es realmente simple!
Tercer paso:código
Si te desplazas hacia abajo una vez más en la respuesta de circuito.io, llegarás al código sección. En esta sección tendrás que descargar el código de circuito.io y extraerlo a su computadora.
Luego, deberá abrir el código con Arduino IDE y súbelo a tu Arduino .
el código de circuito.io es un código de muestra. Integra todos los componentes y sus bibliotecas. Este código lo ayudará a probar que su cableado sea correcto.
Una vez que haya terminado con esta parte, puede copiar y pegar el código al final de este tutorial en el firmware.ino tab en el código que obtuvo de circuito.io.
Dentro del código verá comentarios que explican cada parte y función del mismo, por lo que puede realizar cambios en los valores, por ejemplo, puede cambiar la melodía que se reproduce cuando se abre el cuadro, o el pixel-art que aparece . No olvide cargar el nuevo código en su Arduino una vez que haya terminado.
¡Lo estás haciendo genial! Ahora pasaremos a hacer la caja de regalo
Haciendo la caja
La caja que hicimos es una combinación de piezas impresas en 3D y cartón de PVC, pero puedes volverte loco aquí y usar diferentes materiales para darle un aspecto totalmente diferente.
Por ejemplo, puedes usar madera y vidrio, puedes agrandar o achicar la caja, decorarla, redondearla, hacerla del color que quieras. Realmente depende de usted.
Si quieres hacer una caja como la nuestra, tienes los archivos .STL aquí mismo para descargar .
Ensamblaje:armar todo
Una vez que tenga todas las piezas listas, es hora de armar todo.
- Coloque el Arduino con el escudo dentro de la caja.
- Pegue el imán en la tapa de la caja.
- Enhebre un alambre de acero flexible para conectar la tapa y el cuerpo de la caja
¡Felicidades! Has construido tú mismo la caja de regalo perfecta.
Háganos saber si hizo uno haciendo clic en "Yo hice esto" o envíenos fotos y videos de su proyecto en nuestra página de Facebook.
Código
- Código Giftduino
Código Giftduino Arduino
copia y pega este código directamente en la pestaña de firmware en el código que descargaste de circuito.io#include "Arduino.h" #include "HallA1302.h" #include "AnalogReader.h" #include "Adafruit_GFX.h" #include "Adafruit_PCD8544.h" #include "TimerFreeTone.h" #include "Speaker.h" #define HALLA_PIN_VOUT A3 # define NOKIALCD_PIN_DC 4 # define NOKIALCD_PIN_CS 2 # define NOKIALCD_PIN_RST 3 #IGER define el contraste de LCD en píxeles) #define LCD_CONTRAST 70 # define LCD_SIZE_COL 84 # define LCD_SIZE_ROW 48unsigned int piezoSpeakerHoorayLength =6; // cantidad de notas en melodyunsigned int piezoSpeakerHoorayMelody [] ={NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C5, NOTE_G4, NOTE_C5}; // lista de notas. La longitud de la lista debe coincidir con ¡HoorayLength! Unsigned int piezoSpeakerHoorayNoteDurations [] ={8, 8, 8, 4, 8, 4}; // nota duraciones; 4 =negra, 8 =corchea, etc. La longitud de la lista debe coincidir con HoorayLength. circuito para trabajar. Se ejecuta primero cada vez que su circuito se alimenta con electricidad. * / void setup () {// Setup Serial que es útil para depurar // Use el Serial Monitor para ver los mensajes impresos Serial.begin (9600); Serial.println ("inicio"); // Calibrar sensor //hallA.calibrate (); // Inicializar la instancia de Nokia nokiaLcd.begin (LCD_SIZE_COL, LCD_SIZE_ROW); nokiaLcd.setContrast (LCD_CONTRAST); // Ajustar el contraste de la pantalla} / * Este código es la lógica principal de su circuito. Define la interacción entre los componentes que seleccionó. Después de la configuración, se ejecuta una y otra vez, en un ciclo eterno. * / void loop () {// Obtener la medida del sensor de pasillo. Dependiendo de la polaridad del polo del imán, el sensor devolverá valores positivos o negativos. int hallAVal =hallA.read (); Serial.println (hallAVal); // Verifica si la caja fue abierta if (abs (hallAVal - 512) <50) {delay (500); // espera 0.5 seg nokiaLcd.clearDisplay (); // Borrar y borrar el búfer de pantalla nokiaLcd.setRotation (2); nokiaLcd.setTextColor (NEGRO); // Establece el color del texto en negro, el fondo es blanco por defecto nokiaLcd.setTextSize (2); // establecer el tamaño del texto nokiaLcd.setTextSize (1); // establece el tamaño del texto nokiaLcd.print ("¡Sorpresa!"); nokiaLcd.setTextSize (2); // establece el tamaño del texto nokiaLcd.drawCircle (37, 15, 3, BLACK); nokiaLcd.drawCircle (41, 15, 3, NEGRO); nokiaLcd.drawRect (25, 22, 30, 20, NEGRO); nokiaLcd.drawRect (22, 18, 36, 5, NEGRO); nokiaLcd.drawRect (37, 22, 5, 20, NEGRO); nokiaLcd.display (); // mostrar en pantalla // El altavoz reproducirá la melodía Hooray piezoSpeaker.playMelody (piezoSpeakerHoorayLength, piezoSpeakerHoorayMelody, piezoSpeakerHoorayNoteDurations); retraso (10000); // espera 10 segundos}}
Piezas y carcasas personalizadas
Marco
Arriba
puerto USB
Proceso de manufactura
- ¿Qué es el efecto piel?
- Control de un efecto con sensores reales
- Capturando las gotas de agua con Arduino
- Arduino + ESP Weather Box
- Cómo medir la masa de la Tierra usando Arduino
- Uso del sensor de pulso portátil MAX30100 con Arduino
- Cree la aplicación Fridgeye con una pantalla Nextion
- Uso del sensor de humedad del suelo YL-39 + YL-69 con Arduino
- La Bomba de Calor Perfecta Agua Caliente
- La mejor opción:un torno CNC con forma de caja
- Descripción del sensor de efecto Hall