Annoy-O-Bug: Construye un Juguete Compacto de LED y Zumbador con ATtiny85
Componentes y suministros
| PCB personalizado OSH Park | × | 1 |
| Zumbador | × | 1 |
| LED (genérico) | × | 1 |
| Resistencia 330 ohm | × | 1 |
| Batería de botón CR2032 | × | 1 |
| Soporte para CR2032 | × | 1 |
| Microchip ATtiny85 | × | 1 |
| Zócalo DIP de 8 pines | × | 1 |
| Arduino UNO | × | 1 |
| Condensador 10 µF | × | 1 |
Herramientas y máquinas necesarias
- Soldador (genérico)
Aplicaciones y servicios en línea
- Autodesk circuits.io
Sobre este proyecto
Lo suficientemente pequeño para caber en una lata de mentas, pero lo bastante ruidoso para escucharse en toda una casa por solo unos dólares por unidad. ¡Una combinación genial para una buena broma! ¡Vamos a sumergirnos!
Paso uno: El circuito

Puedes comprar la placa de circuito impreso en OSH Park usando el enlace en la sección de componentes. No es obligatorio usar un ATtiny ni mi propia PCB. Este circuito tardaría unos 20 minutos en montarse en cualquier protoboard. Si quieres que sea diminuto, te recomiendo la opción de PCB. Si te interesa montarlo en protoboard o perfboard, arriba se muestra la versión en protoboard. Puedes sustituir el ATtiny85 por cualquier microcontrolador.
Paso dos: Montar la PCB

Esta PCB debería ser bastante fácil de poblar con componentes. Ten en cuenta que el zumbador y el LED SÍ son componentes polarizados. El pin más largo del zumbador debe ir por el pad redondo y el más corto por el cuadrado. El pin más largo del LED debe ir por el orificio opuesto al rectángulo blanco. La parte más delicada es soldar el conector de la batería. Asegúrate de soldar todos los componentes en el frente primero. Luego puedes soldar el pin de tierra del conector de la batería a su pad a través del orificio central del zócalo DIP.
También he incluido un rectángulo blanco en la serigrafía de la PCB por si quieres escribir un pequeño mensaje a tu víctima :). Si quieres personalizar la PCB, simplemente duplica mi diseño en circuits.io: https://circuits.io/circuits/2677013-annoying-circuit.
Paso tres: El software
// Código producido por Alex Wulff: https://www.AlexWulff.com
#define BUZZ 0
#define LED 1
#define BEEP_DELAY 30
#define LIGHT_DELAY 200
#define INITIAL 5000 // Valor en milisegundos.
// 10,000 ms produce un tiempo total de secuencia de 46.5 segundos
// 20,000 ms produce un tiempo total de secuencia de 91.5 segundos
// 30,000 ms produce un tiempo total de secuencia de 136.5 segundos
// Entiendes el patrón. Cada 10 segundos añade otros 45 segundos al tiempo total.
void setup() {
pinMode(BUZZ, OUTPUT);
pinMode(LED, OUTPUT);
// Parpadea el LED para verificar que el dispositivo funciona
for (int i = 0; i < 5; i++) {
digitalWrite(LED, HIGH);
delay(LIGHT_DELAY);
digitalWrite(LED, LOW);
delay(LIGHT_DELAY);
}
}
void loop() {
// Itera 50 veces, reduciendo el delay en un factor de 1/i cada vez
for (int i = 1; i < 50; i++) {
digitalWrite(BUZZ, HIGH);
digitalWrite(LED, HIGH);
delay(BEEP_DELAY);
digitalWrite(BUZZ, LOW);
digitalWrite(LED, LOW);
delay(INITIAL / i);
}
}
El programa anterior muestra algunas capacidades del dispositivo y es el que se ejecuta en el vídeo. El tiempo entre cada pitido se vuelve progresivamente menor, ¡lo que puede resultar muy molesto! Puedes cambiar la escala temporal modificando INITIAL a un valor mucho mayor. ¡Incluso es posible que funcione durante una semana, acelerándose progresivamente cada día!
También podrías escribir un programa simple que pite y parpadee aleatoriamente, o hacer que el zumbador toque una melodía corta sincronizada con el LED. ¡Las posibilidades son infinitas!
He creado una simulación en Autodesk Circuits que te permite probar tu sketch en un circuito virtual sin cablear nada. Pruébalo aquí: https://circuits.io/circuits/4778452-the-annoy-o-bug-a-chirping-light-up-throwie/.
Paso cuatro: Programar el ATtiny85
Puedes programar tu ATtiny usando un Arduino Uno (o prácticamente cualquier dispositivo basado en ATmega) y un condensador de 10uF. Las instrucciones están aquí: https://www.hackster.io/arjun/programming-attiny85-with-arduino-uno-afb829.
Ten cuidado al sacar el ATtiny del zócalo DIP. A veces ayuda usar alicates para extraerlo en lugar de intentar sacarlo con los dedos.
Paso cinco: Colocación
Colocar el dispositivo es la mitad de la diversión. Dependiendo de dónde compres los componentes, cada unidad puede costar menos de $5; es relativamente barato hacer muchas. Son lo bastante pequeñas para colocarlas en macetas, cajas pequeñas, almohadas, dentro de lámparas, en escritorios y en cualquier otro lugar que imagines. Si usas un watchdog timer para poner el ATtiny en suspensión, este circuito puede funcionar más de un año con una pila de botón.
¡Eso es todo! Si necesitas ayuda para crear un programa específico o montar el circuito, simplemente comenta abajo. Estaré encantado de ayudar.
Para ver más de mis proyectos visita www.AlexWulff.com y https://www.hackster.io/AlexWulff.
Pequeña advertencia: Debido a la naturaleza de este proyecto, es posible que algunos interpreten los sonidos que produce como una posible amenaza explosiva. Por tanto, no los coloques en áreas públicas donde podrías tener problemas.
Código
Circuito Molesto (Arduino)
// Código producido por Alex Wulff: https://www.AlexWulff.com
#define BUZZ 0
#define LED 1
#define INITIAL 5000
// 10,000 ms produce un tiempo total de secuencia de 46.5 segundos
// 20,000 ms produce un tiempo total de secuencia de 91.5 segundos
// 30,000 ms produce un tiempo total de secuencia de 136.5 segundos
// Cada 10 segundos añade otros 45 segundos al tiempo total.
void setup() {
pinMode(BUZZ, OUTPUT);
pinMode(LED, OUTPUT);
for (int i = 0; i < 5; i++) {
digitalWrite(LED, HIGH);
delay(200);
digitalWrite(LED, LOW);
delay(200);
}
}
void loop() {
for (int i = 1; i < 50; i++) {
digitalWrite(BUZZ, HIGH);
digitalWrite(LED, HIGH);
delay(30);
digitalWrite(0, LOW);
digitalWrite(LED, LOW);
delay(INITIAL / i);
}
}
Esquemáticos
Diseño PCB
Proceso de manufactura
- Circuitos integrados (CI): chips compactos y potentes que impulsan la electrónica moderna
- Drone Pi: Quadcopter Multiwii y Raspberry Pi de doble modo para control por smartphone y mando a distancia
- Kit MOSMusic: Control de Iluminación de Alta Potencia Sincronizada con Música vía MOSFET y Arduino
- Partes Esenciales de las Máquinas de Sierra de Cinta de Doble Columna
- Dominando el diseño de piezas mecanizadas: Guía completa
- Tendencias del mercado en componentes aeroespaciales y de aeronaves de precisión
- Dominar el cross-referencing: guía para precisión y ahorro de costes
- Elementos Esenciales de una Comunicación de Crisis Efectiva
- Componentes Clave de una Máquina CNC Explicados
- Componentes Clave de un Sistema de Aire Comprimido Confiable
- Cómo la Modernización de Grúas Transforma Componentes Clave para un Rendimiento Óptimo