Tabla de contenido:

SpookyEyes Skull: 8 pasos
SpookyEyes Skull: 8 pasos

Video: SpookyEyes Skull: 8 pasos

Video: SpookyEyes Skull: 8 pasos
Video: DIY Spooky Halloween Prop - full tutorial on my channel. 2024, Diciembre
Anonim
SpookyEyes Skull
SpookyEyes Skull

Aquí hay una modificación simple que hice a una calavera de plástico de Halloween. Perforé las cuencas de los ojos y agregué un par de LED rojos. Los LED están conectados a un microcontrolador para efectos especiales (fade in / out, parpadeo, ese tipo de cosas). Hay algunas características adicionales de este diseño:

  • Bateria cargada
  • Optimizado para una larga vida útil (calculo 200 horas o más con un juego de 3 pilas alcalinas AA.

    • Se enciende al anochecer.
    • Funciona durante N horas (configurable por el programador), luego se apaga.
    • Se queda fuera durante el día.
  • Utiliza un chip microcontrolador ATtiny84.

Si eres un entusiasta de Arduino y todo lo que has trabajado son los chips que vienen preinstalados en una placa Arduino, entonces este podría ser un buen proyecto para expandir un poco tus horizontes. Existe una gama tan amplia de chips ATmega de varios tamaños que permanecer bloqueado en los 2 o 3 dispositivos que proporcionan las ofertas habituales de Arduino es bastante limitante. Por un lado, este proyecto se haría de manera muy diferente si tuviera que usar Uno Rev. 3. Esa placa en sí cuesta $ 22; ¡Estoy haciendo el trabajo aquí por solo $ 1,50! Además, dado que es mucho más lento (aunque lo suficientemente rápido como para encender los LED), consume menos energía. Esto significa que es más adecuado para un proyecto que funciona con baterías.

Paso 1: Objetivos

Metas
Metas

Aquí están:

  1. Crea espeluznantes ojos rojos en las cuencas de los ojos de una calavera de Halloween de plástico barata y monótona.
  2. Para alimentarlo con baterías.
  3. Para que funcione durante unas buenas 2 semanas con dichas baterías.
  4. Tener una fecha de vencimiento. Vivo en un área donde las cosas interesantes que se dejan al frente tienden a desaparecer. (¿Miedo, verdad? Quiero decir, una calavera de Halloween de repente se levanta y se aleja. Nunca la he visto, pero sé que sucede y la idea me llena de pavor).

    • No quiero que un tonto disfrute de los frutos de mi trabajo. ¡Si consiguen mi cráneo, pronto se volverá inútil para ellos! MWAH-hah-hah-HAH-HAH-HAH-HAAAHHHH !!!
    • Este cráneo solo se iluminará durante X días antes de que abandone el fantasma, por así decirlo.
  5. Partes mínimas (ver punto número 2, arriba).
  6. Adquirir conocimientos en otros microcontroladores AVR, además del ATmega328p en el Arduino Uno y otros.
  7. Para aprender a usar el dispositivo USBASP. Ver https://www.fischl.de/usbasp/. Como dice Thomas, "USBasp es un programador en circuito USB para controladores Atmel AVR … El programador utiliza un controlador USB solo de firmware, no se necesita un controlador USB especial".

Como sabrá, Arduino Uno, Leonardo y otras placas basadas en AVR vienen con un montón de componentes adicionales, como un chip FT232RL USB a serie, un regulador de potencia, un oscilador de cristal, varios conectores y luces, encabezados para cableado, etc. Y después de programar el chip a través de la interfaz USB, el IC adicional es solo un drenaje de energía. Además, si está suministrando energía a partir de baterías, el regulador de voltaje es, en el mejor de los casos, inútil y, en el peor de los casos, consume más energía. Si solo desea controlar un par de LED, prácticamente todo, además del procesador, es superfluo durante la mayor parte de la vida de su proyecto.

Además, la mayoría, si no todos, de los chips AVR vienen con un oscilador de reloj incorporado. No es tan rápido ni tan preciso como el cristal, pero para un caso de uso simple, ¿qué importa?

Al utilizar un procesador de la línea "ATtiny" con el nombre apropiado, obtiene un pequeño procesador increíblemente capaz que consume poca energía, proporciona todas las salidas que necesita, tiene una velocidad más que suficiente, es realmente barato y mantiene el número de piezas bajo. arrancar.

La compensación es que debe traer su propio dispositivo de programación. Afortunadamente, hay uno llamado "USBASP". Piense en ello como el chip USB a serie integrado de Arduino, pero separado y extraíble. Puede usarlo para todos sus proyectos. Aún mejor, elimina la necesidad de un gestor de arranque. Recupera ese recuerdo, si lo necesitas.

Y no tenga miedo, USBASP es realmente fácil de usar. Muchos pioneros antes de usted lo han estado utilizando, por lo que es bastante familiar y está bien respaldado para la tarea. En este tutorial lo usaremos y, como un proyecto simple para mojarse los pies en el mundo de los procesadores ATtiny, este puede ser un buen momento para que se familiarice.

8. Objetivo final: ¡Espero que disfrutes de este Instructable!

Paso 2: ingredientes

Ingredientes
Ingredientes
Ingredientes
Ingredientes
Ingredientes
Ingredientes
  • 3 pilas AA (Walgreens)
  • Soporte de batería para 3 pilas AA (eBay)
  • Clip de batería de 9V (eBay)
  • Placa de pruebas para pruebas (eBay)
  • Placa de circuito impreso (placa soldable)
  • Conectores hembra de 0,1 "(0,254 mm) (para su ATtiny84a. Si está seguro, solo suelde el ATtiny a la placa de circuito impreso). (EBay)
  • 2x LED rojos de 5 mm (eBay)
  • Condensador electrolítico de 100 uF (eBay)
  • Condensador cerámico de 0,1 uF (eBay)
  • Resistencia de 2,2 megaohmios (eBay)
  • resistencia sensible a la luz (eBay)
  • 2x resistencias de 82 ohmios (eBay)
  • Chip microcontrolador ATtiny84a (eBay)
  • Cable de conexión sólido de calibre 24 (eBay)
  • soldador (Amazon o Radio Shack)
  • soldadura (Amazon o Radio Shack. Lo mejor es sin plomo).
  • pegamento
  • Calavera de plástico de Halloween, no demasiado pequeña, hueca (Walmart, Dollar Store, etc.)
  • programador usbasp (eBay)

Consejos y trucos para comprar productos electrónicos para quienes se encuentran en los EE. UU.:

Para cualquiera de sus conceptos básicos (resistencias, transistores, condensadores, LED, etc.), vaya a eBay. Sus proyectos de electrónica generalmente tomarán tamaños estándar (como es el caso aquí); este es un buen momento para abastecerse. Busque y encuentre paquetes con 20, 40, 100 piezas en ellos. Compre esos; generalmente puede encontrarlos por menos de 10 dólares y envío gratis. Esto es mucho más barato que Mouser / Digi-Key / Newark. Allí, obtendrá precios razonables en las piezas, pero luego le darán 9 dólares por el envío; ¡esos precios bajos se evaporan rápidamente! Sin duda, puede encontrar las piezas especializadas y la selección es excelente en las tiendas especializadas, pero ese envío le perjudica. Por otro lado, encontré un paquete de 5 ATtiny84a por $ 7.50 en eBay, con envío gratis. ¡5 MCU por menos del precio de envío 1 de Mouser! ¡Yowser! Y eBay tiene todos los paquetes de variedad de componentes que podrías necesitar, y sabes que si necesitas una resistencia, ¡necesitarás una docena!

Paso 3: el USBasp

El USBasp
El USBasp
El USBasp
El USBasp

Antes de comenzar, hablemos un poco sobre USBasp. Son fáciles de encontrar en eBay, así que consigue uno. No te preocupes, esperaré…

¿Lo tienes? ¡Bien! ¿Lo compraste en China? No es de extrañar que haya tardado tanto.:-) Ok, bueno, era más barato de esa manera, estoy seguro. Envío gratis también.

Si eres un aficionado a Linux como yo, el USBasp funciona de inmediato. Para Windows 10, es un poco más complicado. Así que vamos a repasarlo:

El sitio web de USBasp en https://www.fischl.de/usbasp/ nos indica la herramienta de instalación del controlador "Zadig" en

  • Descargalo. Descargué la versión 2.4.
  • Windows 10 le preguntará si desea que realice cambios en su dispositivo. Si. Si tu puedes.
  • Decide si quieres que Zadig busque actualizaciones de la aplicación. Dije si.
  • Ahora seguí las instrucciones de https://rayshobby.net/dead-simple-driver-installa…. Es decir,
  • Conecte el dispositivo USBasp. Probablemente verá que se enciende un LED rojo.
  • En Zadig, en el cuadro a la derecha de la gran flecha verde, haz clic en las pequeñas flechas hacia arriba o hacia abajo hasta que veas libusbK (v3.0.7.0). Esto es para Windows 10.
  • Haga clic en el botón grande Instalar controlador.
  • Esperar. En unos segundos, verá el mensaje "El controlador se instaló correctamente". caja de diálogo. Cierralo.

¡Su dispositivo USBasp ya está listo!

Paso 4: Soporte Arduino para ATtiny

Soporte Arduino para ATtiny
Soporte Arduino para ATtiny
Soporte Arduino para ATtiny
Soporte Arduino para ATtiny

El IDE de Arduino no es compatible con la serie de chips ATtiny listos para usar. Debe agregarlo al IDE usando el administrador de tableros. Ver

Suponiendo que ya haya descargado el software Arduino, volveré a crear los pasos de la URL anterior. Simplemente

  • Abra el software Arduino (estoy usando 1.8.7 al momento de escribir este artículo).
  • Abra el menú: Archivo -> Preferencias. Busque el cuadro "URL adicionales del administrador de tableros" cerca de la parte inferior.
  • Copie y pegue lo siguiente:

raw.githubusercontent.com/damellis/attiny/…

  • Eso es
  • Haga clic en Aceptar
  • Abra el menú: Herramientas -> Tablero: "" -> Administrador de tableros (en la parte superior de la lista)
  • Desplácese hasta el final. Debería encontrar "attiny de David A. Mellis".
  • Haga clic en el botón Instalar.
  • Desplácese hasta el final de la lista. Debería ver "INSTALADO" ahora.
  • Abra el menú: Herramientas -> Tablero: ""
  • Debería ver ATtiny al final de la lista. Haga clic en "ATtiny24 / 44/84".
  • Abra el menú: Herramientas -> Procesador: "". Elija el ATtiny84.
  • En el menú Herramientas, debería ver una entrada de Reloj. El valor predeterminado está bien. Así es como se envían los procesadores ATtiny, con un reloj interno de 1 MHz.
  • En el menú Herramientas, elija el puerto. Quieres "COM1".

Paso 5: Probar, Probar: Probar su circuito

Probando, probando: Breadboard Your Circuit
Probando, probando: Breadboard Your Circuit
Probando, probando: Breadboard Your Circuit
Probando, probando: Breadboard Your Circuit

Si no está familiarizado con las protoboards … bueno, consiga una. Esta es la única forma de probar sus circuitos y asegurarse de que hagan lo que desea. Lo recomiendo incluso si está construyendo un circuito conocido como este, que ha sido probado y funciona. Se familiarizará con la disposición de las cosas para que, si algo no funciona correctamente, le resultará más fácil solucionar problemas.

Se adjunta un posible diseño de placa de pruebas y también un esquema de este pequeño circuito. Conecte su circuito como se muestra.

Al insertar los LED y el condensador electrolítico, recuerde que la dirección cuenta: debe colocar el lado negativo hacia el negativo de la batería y el lado positivo hacia el lado más positivo de las cosas. En el caso de los LED, estarán encendidos cuando el pin del ATTiny84a se vuelva positivo (o "ALTO"). Entonces, el lado positivo de los LED debe conectarse al pin apropiado en el ATTiny84a.

Hay muchos sitios web que tratan sobre la polaridad de los LED; uno de estos tutoriales se puede encontrar aquí: https://learn.sparkfun.com/tutorials/polarity/diod…. En última instancia, la mejor manera que he encontrado para probar la polaridad es enchufar una resistencia de 120 ohmios en el negativo de la batería, enchufar un pin de un LED en el otro extremo de esa resistencia y luego conectar el otro extremo del LED al positivo de la batería (también conocido como VCC). Si el LED se enciende, sabrá qué pin es cuál.

Para el condensador de 100 microfaradios, este es un condensador de tipo electrolítico. Básicamente, eso significa que su orientación también es importante. El pin negativo debe estar etiquetado. Mediante el proceso de eliminación, puede averiguar cuál es el pin positivo:-). Conéctelo correctamente.

Las resistencias, la fotocélula y el pequeño condensador cerámico circular no tienen polaridad. Conéctelos en la dirección que desee. Asegúrese de conectar el pequeño condensador cerámico muy cerca de los pines VCC y GND del ATTiny84a. Su trabajo es suavizar cualquier pico rápido en el consumo de energía del microcontrolador ATtiny. Se llena con una pequeña carga de la fuente de energía (baterías), que está disponible muy rápidamente si el microcontrolador lo necesita en microsegundos. Evita que el voltaje de suministro al chip caiga demasiado bajo debido a los rápidos consumos de corriente transitorios.

El condensador electrolítico de 100 microfaradios hace lo mismo, pero a intervalos más grandes. Debido al hecho de que es un bobinado de láminas de metal delgadas, contiene cierta resistencia interna y, por lo tanto, su carga no está tan fácilmente disponible. Puede ser rápido, es cierto, pero no a la velocidad proporcionada por el condensador de disco cerámico.

Ambos condensadores reaccionan más rápidamente a los consumos transitorios de corriente que las baterías, por lo que están incluidos. Ha ocurrido que mis circuitos se han comportado de forma extraña si faltan. Puede ser muy misterioso, por eso son importantes.

Actualizar

No se muestra aquí, pero es necesario, es una resistencia de 10K ohmios desde el pin 4 a Vcc. Haría bien en instalar uno. Sin embargo, no lo hice y el circuito funcionó bien. Sin embargo, sin él, corre el riesgo de restablecimientos falsos en su chip.

Paso 6: cargue el boceto

Cargar el boceto
Cargar el boceto

Ahora llega el momento de cargar el boceto. ¡Hagamos esas luces intermitentes!

Encontrará el código fuente del boceto en

  • Cógelo y cárgalo en el software Arduino.
  • NOTA: Hay una sección en el código que se ve así:

/ / --- DEPURAR DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG // --- DEBUG DEBUG DEBUG DEBUG D - vvvv - UG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG DEBUG

Recomiendo cambiar el

#undef DEPURACIÓN

para

#define DEBUG

ya que los tiempos de bucle se acortan considerablemente. Debería volver a cambiarlo y volver a cargarlo cuando esté listo para mostrar los SpookyEyes de verdad.

  • Adelante, haz eso ahora. El resto de esta página asume que lo ha hecho.
  • Asegúrese de haber seguido los pasos del Paso 4: Soporte Arduino para ATtiny
  • Ahora conecte el lado Arduino del usbasp a su placa. Quieres conectarlo de la siguiente manera:

    • GND al negativo de la batería
    • MOSI al pin 7 del ATtiny
    • MISO al pin 0 del ATtiny
    • SCK al pin 9 del ATtiny
    • RST al pin 4 del ATtiny
  • Conecte el otro extremo del USBasp al puerto USB de su PC
  • Conecte la batería u otra fuente de alimentación de 5v a su circuito.
  • Cargue el boceto usando el IDE de Arduino (Boceto-> Cargar). Los LED parpadearán ya que algunos de los pines que se usan para el circuito también se usan para el USBasp.

Cómo funciona el boceto

Asegúrese de estar en una habitación algo luminosa o dirija la luz de una linterna a la pequeña resistencia sensible a la luz. Encienda el circuito y observe los LED de los ojos. Este es el modo "luz del día". Ahora que se está ejecutando el boceto, debería ver lo siguiente. Tenga en cuenta que las áreas del código que se describen aquí están marcadas con "BooKmarks", no con números de línea, para que pueda seguirlas. Estos tienen la forma: # BK.descriptive_string ("Pound B K Period" y luego algún tipo de cadena descriptiva). Por ejemplo, el primer marcador se llama "# BK. Hello" y se puede encontrar en el código donde los LED se encienden por un segundo y luego en blanco por un segundo:

  • Ambos LED se encenderán durante un segundo y luego se apagarán durante un segundo. # BK. Hola
  • Ambos parpadean lentamente 3 veces. Esto indica que el ATtiny está configurado a una velocidad de 1MHz. # BK.check_time * Consulte la NOTA A a continuación.
  • Haz una pausa por un segundo.
  • Luego parpadean rápidamente dos veces.
  • Haz una pausa por un segundo.
  • Ahora estás en el loop () # BK.loop. Recuerde, ahora una hora son solo 10 segundos.

El "pestillo" está apagado. Y aún no ha transcurrido una cantidad de HOUR_millis (== 1 hora, en modo normal). Por lo tanto, pasamos por alto todo hasta llegar a # BK.indicate_duration. Hasta ahora estamos en la hora cero, por lo que parpadeamos los ojos 0 veces.

  • Esto continúa hasta llegar a HOUR_millis segundos (10 segundos, en modo DEBUG).
  • Luego parpadea rápidamente tres veces. # BK.time_management
  • Agrega otra "hora" incrementando la variable latch_time_off
  • Luego salta hasta # BK.indicate_duration. Allí, mostramos el número de "horas" que hemos estado ejecutando. Este número se almacena en la EEPROM, por lo que está disponible incluso si se desconecta la alimentación del chip.

    • Nuestra primera hora a la luz se ha completado. Entonces parpadeamos una vez, brevemente.
    • Luego haga una pausa de 2 segundos.
  • Volver al bucle ():

    • Cada iteración a través del ciclo ahora, verificamos si ha pasado el tiempo de HOURS_milli. Para las primeras iteraciones (en DEBUG), no lo ha hecho. Entonces no parpadeamos 3 veces.
    • Saltamos a # BK.indicate_duration, y mostramos rápidamente un conteo de la cantidad de horas que hemos estado en la luz, que nuevamente se almacena en la ubicación 0 de EEPROM.
    • Esto continúa durante mucho tiempo.
    • Tenga en cuenta que una vez que el número en la ubicación 0 de EEPROM es lo suficientemente grande, el ciclo simplemente se convierte en:

      • Parpadea 3 veces a un ritmo razonable,
      • Destella rápidamente la cantidad de HOURS_millis que hemos estado en la luz,
      • Espere 2 segundos,
      • repetir.

Ahora coloque su dedo sobre la resistencia sensible a la luz. O simplemente apaga las luces. El bucle ahora se convierte en:

  • Nuestro latch_time_off ha pasado más de una hora y está oscuro, así que en # BK.check_the_light, encontramos que de hecho está oscuro.
  • Abrimos el pestillo. Esto inicia las cosas espeluznantes en cada ciclo. Vea AQUÍ ESTÁ LA COSA ESPOSA. El código debe ser bastante descriptivo.
  • Una vez que el pestillo haya estado el tiempo suficiente, lo apagaremos. Consulte # BK.turn_spookiness_off.
  • Ahora volvemos a # BK.time_management, según "parpadea rápidamente tres veces", arriba.

Corre de verdad

No olvide cambiar el boceto a #undef DEBUG.

NO HAY TÉ

* NOTA A: Se incluye un código para configurarlo en 8 MHz. Vea CLKPR = 0x00; código comentado. Si desea hacer esto (y no hay razón para hacerlo para este circuito), asegúrese de cambiar el IDE de Arduino, en el elemento de menú Herramientas-> Reloj.

Paso 7: de la placa de pruebas al circuito soldado

De la placa de pruebas al circuito soldado
De la placa de pruebas al circuito soldado
De la placa de pruebas al circuito soldado
De la placa de pruebas al circuito soldado
De la placa de pruebas al circuito soldado
De la placa de pruebas al circuito soldado

¡Ahora es el momento de hacer el circuito de Producción! Consiga un poco de perfboard soldable; Me gusta el catálogo de Radio Shack #: 2760159, visto aquí: https://www.radioshack.com/collections/prototyping…. Hay muchos agujeros para transferir los componentes de su placa de circuito impreso a la placa perfilada.

¡No olvide incluir pequeñas piezas de enchufe para insertar los cables USBasp (para la programación)! Necesitarás 5 de ellos.

Prepara el cráneo

Oriente su cráneo en cuanto a cómo se asentará en el suelo. Deberá perforar un agujero para el fotorresistor, de modo que realmente se ilumine:-). … ¡Paso importante! Además, utilizando su herramienta de corte favorita, corte la parte inferior del cráneo para dejar espacio para la placa de circuito y las baterías. Córtelo solo en 3 lados para hacer una puerta.

Taladre el orificio para que el fotorresistor encaje a presión. Obviamente, puede probar el tamaño desde el exterior del cráneo para hacerlo bien. Siempre comience de a poco con sus taladros y no taladre demasiado rápido para no crear mucho destello alrededor del orificio que tendrá que afeitar con un cuchillo.

Taladre agujeros en los ojos para los LED. Tamaño de ellos con cuidado, por lo que los LED encajarán a presión. Coloqué mis LED desde adentro, y como no había mucho espacio libre para trabajar adentro, simplemente goteé un poco de pegamento termofusible en la parte posterior de los LED como un poco de seguro adicional para sostenerlos.

También tuve cuidado de revestir uno de los cables de cada LED con un tubo termorretráctil.

Pon el circuito en

Dado que el cráneo simplemente se encuentra allí, no tuve mucho cuidado al montar la placa de circuito. Me aseguré de que el paquete de baterías se colocara en la parte inferior y que no hubiera cortocircuitos. Una vez conectado, insertado y encendido, cerré ipt y puse una gota de pegamento termofusible en la solapa inferior.

Asegúrese de que los cables a los LED y la fotorresistencia sean largos para poder sacar la placa de circuito para la reprogramación.

Paso 8: ¡Ojos espeluznantes! Oooooooo !!

Ojos espeluznantes !!!! Oooooooo !!!!
Ojos espeluznantes !!!! Oooooooo !!!!

Ok, eso es todo. Tus Spooky Eyes se encenderán al anochecer, se mostrarán para los que hacen truco o trato durante 4 horas y luego se apagarán para conservar las baterías. Permanecerá apagado hasta la noche siguiente. Lo hará durante TOTAL_RUN_HOURS horas, así que prepare ese valor en el boceto con cuidado. Dado que tengo un MAX_RUNTIME predeterminado de 4 horas, 40 horas para TOTAL_RUN_HOURS significa que se ejecutará durante 10 días.

Si alguien decide que es demasiado delicioso para ti y se lo lleva a casa, SpookyEyes terminará su recorrido y luego se quedará en silencio y perseguirá para siempre sus almas. ¡Basta decir que los ladrones harían bien en evitar tomar tu cráneo de SpookyEyes!

Guarde sus SpookyEyes durante la temporada. El año que viene, simplemente sube el boceto de nuevo y SpookyEyes cobra vida. ¿Qué tan espeluznante es eso? ¡¡¡¡Ooooooo !!!!

Mejoras

Probablemente debería haber hecho que el ATtiny se durmiera durante el día. Apagado, consume muy poca corriente.

Debería haber puesto una resistencia de 10K ohmios en el pin 4. Esto evita que el circuito se reinicie misteriosamente. Sin embargo, no tuve ningún problema. Pero debe hacerse para que sea correcto.

Bateria cargada

Me encanta el ATtiny84. Es un gran chip para un circuito de baja potencia. Claro, no tiene las capacidades Serial.print () del Arduino ATmega328p y sus similares, pero puede hacer que las luces parpadeen de cierta manera para indicarle lo que está sucediendo dentro de su circuito, para la depuración. No es difícil trabajar con él.

Espero que hayas encontrado este Instructable … ¡Instructable!

Recomendado: