Tabla de contenido:

Geek Spinner: 14 pasos (con imágenes)
Geek Spinner: 14 pasos (con imágenes)

Video: Geek Spinner: 14 pasos (con imágenes)

Video: Geek Spinner: 14 pasos (con imágenes)
Video: La chica NERD 😳 #shorts 2024, Noviembre
Anonim
Image
Image
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner

Los fidget spinners son divertidos, y puedes encontrar uno en cualquier mostrador de caja por solo unos pocos dólares en estos días, pero ¿y si pudieras construir el tuyo propio? ¿Y tenía LED? ¿Y podrías programarlo para que diga o muestre lo que quieras? Si eso suena genial, ESTE ES EL PROYECTO PARA USTED.

Siempre me ha interesado el uso de LED parpadeantes para que los niños se interesen por la programación. El proyecto más simple con un microcontrolador Arduino es encender y apagar un LED. Luego, los hace ver qué tan rápido puede parpadear un LED antes de que parezca que está encendido continuamente (intervalos de aproximadamente 12 milisegundos). Luego agita el LED de un lado a otro y puede verlo parpadear de nuevo. Este fenómeno se llama "persistencia de la visión" (POV) y es como funciona este proyecto. Puede llevar a discusiones sobre cómo funciona el ojo y cuán increíblemente rápidas son las computadoras.

Este proyecto utiliza un microcontrolador programable de 8 bits, ocho LED y una celda de botón. Gira utilizando un cojinete de patineta estándar y utiliza un sensor de efecto Hall y un imán para determinar la rotación. Está hecho con piezas de orificio pasante fáciles de usar para principiantes y se puede programar utilizando el entorno de programación Arduino. Basta de hablar, empecemos…

Paso 1: Reúna las piezas, herramientas y suministros

Image
Image
Reúna las piezas, herramientas y suministros
Reúna las piezas, herramientas y suministros

Siempre es frustrante llegar a la mitad de una compilación y descubrir que te falta algo. Estas son las partes que he probado y he descubierto que funcionan bien. Sustituya bajo su propio riesgo:

Lista de materiales =================

  • 1 ea, PCB púrpura, cuidadosamente fabricado en los EE. UU. Por OSH Park
  • 1 ea, Attiny 84, Atmel ATTINY84A-PU,
  • 1 ea, interruptor táctil, TE 1825910-6,
  • 1 ea, orificio pasante SPDT del interruptor deslizante, C&K JS202011AQN,
  • 1 ea, soporte de batería, Linx BAT-HLD-001-THM,
  • 8 ea, LED rojo de 3 mm 160 Mcd, Wurth 151031SS04000,
  • 8 ea, 330 ohmios 1 / 8W, Stackpole CF18JT330R,
  • 1 ea, tapa de 0,1 uF, KEMET C320C104M5R5TA,
  • 1 ea, interruptor magnético, Melexis MLX92231LUA-AAA-020-SP,
  • 1 ea, cojinete de patineta 608,
  • 1 ea, pequeño imán de tierras raras de 2 mm x 1 mm,
  • 2 ea, tapas impresas en 3D (archivo STL adjunto).
  • 1 ea, batería CR2032, Panasonic BSP o equivalente,

Herramientas y suministros: para mis talleres, uso el kit de herramientas para principiantes de SparkFun, que tiene todo lo que necesita, excepto las pinzas:

  • Soldador.
  • Alambre de soldar
  • Plyers de corte al ras (¡me encanta el Hakko CHP170 de $ 5!)
  • Trenza desoldadora
  • Super pegamento

Programación del Attiny (paso 4, no es necesario si lo compra como un kit):

  • Arduino (evite los clones chinos baratos y apoye a sus fabricantes de código abierto de EE. UU.).

    • SparkFun Redboard
    • Metro de Adafruit
    • Arduino UNO
  • Escudo de programación AVR.
  • Adaptador Pogo (si se programa con chip instalado).
  • Un USB A-B estándar para Uno, USB Mini para Redboard o USB Micro para Metro.

Un kit para este proyecto está disponible en Tindie.com (menos la batería). La compra del kit le ahorrará el tiempo y los gastos de realizar pedidos a varios proveedores diferentes y evitará la prima mínima de pedido de PCB. Además, programar un Attiny no es trivial, y si compras el kit, ya estará preprogramado. ¡También me ayudarás a desarrollar y compartir otros proyectos en mis talleres!

Paso 2: la resistencia es esencial

La resistencia es esencial
La resistencia es esencial
La resistencia es esencial
La resistencia es esencial
La resistencia es esencial
La resistencia es esencial

Asumiremos que tienes experiencia en la construcción de kits. Si necesita ayuda para soldar, diríjase a www.sparkfun.com/tutorials/213 para repasar o ver a Geek Girl explicarlo en https://www.youtube.com/embed/P5L4Gl6Q4Xo. También tengo un kit apropiado para principiantes en

Me gusta comenzar con la resistencia porque a) son relativamente resistentes al calor mientras ingresa a la ranura de soldadura y el hierro está llegando a la temperatura, b) no tienen polaridad, por lo que la orientación no es crítica, yc) son los componente más bajo de la placa, así que siéntese bien al soldar. Hay ocho resistencias limitadoras de corriente de 330 ohmios, una para cada LED. Puede hacer uno a la vez o los ocho a la vez.

  • Doble los cables al ancho de las almohadillas e inserte la resistencia.
  • Da la vuelta a la placa y suelda los cables.
  • Recorte los cables con cortes al ras.
  • Golpéalos de nuevo con la plancha si quieres que impresionen a tus amigos geek.

Paso 3: ¿Código?

¿Código?
¿Código?
¿Código?
¿Código?
¿Código?
¿Código?
¿Código?
¿Código?

Si compró mi kit, el chip está preprogramado y puede pasar al siguiente paso.

Sí, este proyecto necesita algo de código. Y, si estabas prestando atención, en el Paso 1 te dije que programar un Attiny no era trivial. Utilizo Arduino, su entorno de programación, mi programador AVR y una plantilla de pogo pin.

El chip se puede programar antes de soldar en su lugar (foto 2), o después de que se haya soldado en su lugar usando el encabezado ISP en la parte inferior de la PCB (foto 3). En cualquier caso, la programación es la siguiente:

  • Descargue el entorno de programación Arduino.
  • Instale soporte para Attiny 85 desde:

    • https://highlowtech.org/?p=1695 (Arduino Tiny)
    • https://github.com/SpenceKonde/ATTinyCore (Attiny Core)
  • Cargue el "boceto de Arduino como ISP": [Archivo] -> [Ejemplos] -> [Arduino como ISP].
  • Colocó el protector de programación del AVR e inserte el cable plano en la posición Attiny84
  • Si usa el adaptador Pogo, colóquelo en el encabezado del ISP en la placa. Las almohadillas positivas y negativas están marcadas para que pueda orientar el encabezado correctamente.
  • Si usa el chip, insértelo con la patilla uno hacia el conector USB.
  • Seleccione el chip correcto:

    • Arduino Tiny: "Attiny 84 @ 8 Mhz"
    • Attiny Core: "Attiny 24/44/84"

      • Chip "Attiny 84"
      • 8 Mhz (interno)
      • Asignación de pines "en sentido antihorario"
  • Seleccione el Programador, [Herramientas] -> [Programador] -> [Arduino como ISP]
  • Configure los fusibles de programación, [Herramientas] -> [Grabar cargador de arranque]
  • Cargue el boceto adjunto, [Archivo] -> [Cargar usando el programador]

La mayor fuente de errores que obtengo consiste en no tener los pines alineados correctamente.

Paso 4: Chip It

Chip It
Chip It
Chip It
Chip It
Chip It
Chip It
Chip It
Chip It

Ahora que su chip tiene código, puede instalarlo. La orientación de un chip DIP ("paquete dual en línea") generalmente se indica mediante un orificio adyacente al pin uno, o una hendidura en el extremo del chip que contiene el pin uno, como es el caso aquí.

  • Doble los cables a 90 grados presionándolos contra una superficie plana (fotos 1 y 2).
  • Alinee el chip con el símbolo en la PCB e inserte el chip (foto 3).
  • Suelde un pin en los lados opuestos y verifique que ambos chips estén planos contra la PCB y que la orientación sea correcta. Se vuelve muy difícil de arreglar después de esto. Confía en mí en esto.
  • Una vez que esté seguro de que está colocado correctamente, suelde los pines restantes y luego córtelos al ras.

Paso 5: interruptor y condensador

Interruptor y condensador
Interruptor y condensador
Interruptor y condensador
Interruptor y condensador

El botón pulsador va al lado del IC y el condensador en el otro lado.

  • Empuje el botón en su lugar (asegúrese de que esté en la orientación correcta).
  • Sueldelo en su lugar.
  • Recorte los cables de la parte posterior.

El condensador no tiene orientación, pero si pones el lado de escritura hacia afuera, tus amigos geek sabrán qué valor usaste.

Paso 6: Interruptor y soporte de batería

Interruptor y soporte de batería
Interruptor y soporte de batería
Interruptor y soporte de batería
Interruptor y soporte de batería
Interruptor y soporte de batería
Interruptor y soporte de batería
Interruptor y soporte de batería
Interruptor y soporte de batería

El interruptor va con el nivel apuntando hacia afuera. Al igual que los otros elementos, suelde dos pines, verifique que quede plano y luego suelde el resto.

El soporte de la batería tiene una marca para mostrar la orientación, pero realmente no importa. Sin embargo, requerirá un poco más de calor que los cables normales, y querrá asegurarse de que quede plano para mantener la batería en su posición (imagen 4).

Paso 7: LED

LEDs
LEDs
LEDs
LEDs
LEDs
LEDs
LEDs
LEDs

No hay un proyecto decente que no incluya al menos un LED. ¡Esto tiene OCHO!

El cable largo es positivo (ánodo). Hay una marca "+" en la serigrafía y la almohadilla es cuadrada. Si hace los ocho a la vez, sosténgalos para asegurarse de tener todas las orientaciones correctas.

  • Suelde un cable en cada LED.
  • Verifique la orientación y que estén asentados planos (imagen 3).

    Si no es así, presione la carcasa con el pulgar y vuelva a calentar el cable hasta que encaje en su posición (figura 4)

  • Suelde el resto.
  • Corta los cables.

Paso 8: Compruébalo

Image
Image
Tiempo de centrifugado
Tiempo de centrifugado

En este punto, todavía podemos verificar los LED y apagar:

  • Inserte una batería con el lado positivo hacia afuera.
  • Encienda la ruleta y luego presione el botón hasta que todos (con suerte) los LED estén encendidos (vea el video).
  • Gire la ruleta y vea el patrón. Si un LED no se enciende, es posible que esté instalado al revés o que haya sufrido daños por calor. Desoldelo y coloque uno nuevo.

Solución de problemas:

  • Si no se encienden los LED:

    • Asegúrese de que su batería esté en buenas condiciones y en la orientación correcta.
    • ¿Programaste tu chip? ¿Está en la orientación correcta? ¿Hace calor?
    • ¿Están los LED orientados correctamente? ¿Usar la celda de botón a través de las uniones de soldadura LED para probarlas?
  • Si el interruptor no hace que los LED parpadeen:

    • Verifique las juntas de soldadura en el LED.
    • Compruebe las juntas de soldadura en el Attiny.
  • Si todo lo demás falla, toma y publica fotos de alta resolución de la parte delantera y trasera y pide ayuda en los comentarios.

Paso 9: tiempo de centrifugado

Tiempo de centrifugado
Tiempo de centrifugado
Tiempo de centrifugado
Tiempo de centrifugado
Tiempo de centrifugado
Tiempo de centrifugado

El cojinete se mantiene en su lugar soldando la carcasa a la almohadilla grande. Esto requiere paciencia y mucho calor:

  • Use algo como monedas sobre una superficie dura para colocar el rodamiento.
  • Caliente tanto la almohadilla como la carcasa del cojinete hasta que vea que la soldadura fluye hacia la carcasa (se necesita un poco).
  • Repita en el otro lado.
  • Verifique que el rodamiento esté alineado correctamente girando la ruleta.
  • Da la vuelta a la placa y suelda dos puntos en el otro lado.

Paso 10: ¿Es esto una revolución?

Image
Image
¿Es esto una revolución?
¿Es esto una revolución?
¿Es esto una revolución?
¿Es esto una revolución?

Para mostrar mensajes en lugar de solo patrones, necesitamos saber la posición de la ruleta en relación con el círculo. Usaremos un sensor de efecto Hall y un imán. Esto es similar a cómo los motores de combustión saben cuándo encender la chispa para obtener la mayor potencia. La orientación y alineación tanto del sensor como del imán son fundamentales para que esto funcione.

  • La escritura en la cara del dispositivo se enfrenta al rodamiento que coincide con la pantalla de seda (foto 1).
  • Alinee la altura justo por encima del cojinete (donde estará el imán en la tapa).
  • Suelde un cable.
  • Verifique la altura y la alimentación.
  • Suelde los cables restantes.
  • Corta los cables.

Si está utilizando un sensor omnipolar, deberá averiguar la orientación del imán. La mejor manera de hacer esto es establecer un modo diferente al patrón del paso anterior y luego encontrar el lado del imán que hace que los LED comiencen a parpadear (ver video). Pegue el imán con el lado que trabajó hacia afuera. Revisa tu trabajo.

Paso 11: Acto de equilibrio

Acto de equilibrio
Acto de equilibrio
Acto de equilibrio
Acto de equilibrio

Si sostiene la rueda giratoria horizontalmente con la batería adentro, verá que gira hacia el lado de la batería hacia abajo. A pesar de mi mejor esfuerzo por equilibrar los componentes, todavía está desequilibrado. Puede agregar algo de peso al lado que no es de la batería usando una tuerca y un perno, o agregar un poco de soldadura a la almohadilla.

Paso 12: estás operativo

Image
Image
Pero espera, hay más.
Pero espera, hay más.

Con su imán y sensor en su lugar, está listo para comprobar toda la maravilla de su Geek Spinner. El modo de la ruleta se muestra mediante el LED que se enciende al encender o después de presionar un botón (D0 - D7). El modo se cambia presionando el botón (ver video).

modos int = 8; // número de modos disponibles

// 0 -> texto "¡Hola mundo!" // 1 -> RPM // 2 -> tiempo en segundos // 3 -> número de vueltas // 4 -> número de vueltas (total) // 5 -> patrón "almohadilla de lilly" // 6 -> forma 1 (corazón) // 7 -> forma 2 (sonrisa)

Paso 13: Pero espera, hay más.

Pero espera, hay más.
Pero espera, hay más.
Pero espera, hay más.
Pero espera, hay más.
Pero espera, hay más.
Pero espera, hay más.

Los patrones de "corazón" y "emoticón" se crearon usando un gráfico polar para mostrar cómo se verían los ocho segmentos cada 5 grados de rotación.

Manualmente:

  • Descargue e imprima la imagen a resolución completa (imagen 1).
  • Rellena los bloques para hacer tu imagen (imagen 2).
  • A lo largo del radial, comenzando con 0, calcule el byte usando negro = 1, blanco = 0;

    El primer radial del corazón es 1, 0, 0, 0, 0, 0, 0, 0, por lo que el byte = 0b100000000;

  • Continúe hasta que haya terminado (pista, si su imagen es simétrica, solo necesita hacer la mitad).
  • Pegue sus bytes en la sección "textAndShapes.h" del boceto debajo de "shape_1 " o "shape_2 ".

Usando Python:

  • Instala Python.
  • Instale la biblioteca de imágenes de Python.
  • Descargue el script "readGraph.py" adjunto.
  • Descargue la imagen en resolución completa (imagen 1).
  • Abra la imagen en su editor favorito (GIMP o MS Paint).
  • Utilice el comando "Rellenar" con el color negro seleccionado para rellenar los segmentos que desee iluminar (imagen 2).
  • Guarde la imagen en el mismo directorio que el script "readGraph.py" y cambie el nombre del archivo en el script para que coincida:

im = Image.open ('corazón.png')

Ejecute el script y pegue la salida en la sección "textAndShapes.h" del boceto debajo de "shape_1 " o "shape_2"

De cualquier manera, siéntete libre de compartir tu creación (imagen y código) en los comentarios.

Paso 14: Créditos y reflexiones finales

Créditos y reflexiones finales
Créditos y reflexiones finales

Ciertamente no se me ocurrió todo esto por mi cuenta. Ni por asomo.

  • Mi primera experiencia práctica con POV fue con un proyecto de Nick Sayer llamado POV Twirlie: https://www.tindie.com/products/nsayer/pov-twirlie/. (También utilizo un adaptador pogo).
  • El pensamiento "LED + Fidget spinner = POV" apareció en mi cerebro después de ver el Instructable de Techydiy
  • Cada vez que tienes una idea genial, alguien ya la ha hecho: https://www.instructables.com/id/POV-Arduino-Fidget-Spinner/. La soldadura de montaje en superficie es algo que puedo hacer, pero no es realmente amigable para principiantes. Su código también estaba un poco sobre mi cabeza, pero usé sus ideas sobre la visualización de RPM y recuentos.
  • Pude entender y usar fragmentos del código del reloj POV de Reger-men para mostrar el texto:

Ningún proyecto está nunca completo o perfecto. Aquí hay algunos pensamientos que tengo en el futuro:

  • Equilibrio: las hojas de datos rara vez tienen información sobre el peso de los componentes, por lo que es difícil hacer una suposición fundamentada sobre el equilibrio sin simplemente construirlo. La batería es obviamente el componente más pesado. Agregué agujeros en cada extremo para poder agregar peso según sea necesario para equilibrarlo.
  • ¿Agujas del reloj? Si lo notó, el texto solo se muestra correctamente si gira en el sentido de las agujas del reloj. Girar en la otra dirección crea una imagen de espejo. Agregar un segundo sensor o imán Hall le permitiría derivar la dirección de rotación (el proyecto de Sean hizo esto).
  • ¿Color? El uso de LED RGB programables le permitiría hacer colores. Sin embargo, normalmente son de montaje en superficie.

Recomendado: