Tabla de contenido:

¡Una pantalla de punto de vista para gobernarlos a todos!: 10 pasos (con imágenes)
¡Una pantalla de punto de vista para gobernarlos a todos!: 10 pasos (con imágenes)

Video: ¡Una pantalla de punto de vista para gobernarlos a todos!: 10 pasos (con imágenes)

Video: ¡Una pantalla de punto de vista para gobernarlos a todos!: 10 pasos (con imágenes)
Video: Una herramienta para gobernarlos a todos, Azure Purview - Diego Muñoz 2024, Noviembre
Anonim
Image
Image
¡Una pantalla de punto de vista para gobernarlos a todos!
¡Una pantalla de punto de vista para gobernarlos a todos!
¡Una pantalla de punto de vista para gobernarlos a todos!
¡Una pantalla de punto de vista para gobernarlos a todos!

Motivación

¡Realmente me gustan las pantallas POV (persistencia de la visión)! No solo son interesantes de ver, sino también un gran desafío para desarrollarlos. Es una tarea realmente interdisciplinaria. ¡Necesitas muchas habilidades: mecánica, electrónica, programación, etc.!

Siempre quise construir el mío propio y hacerlo lo más grande y capaz posible. ¡Hace un año lo hice! Fue mucho trabajo y muy complejo de hacer. Me gustan este tipo de desafíos. Así que fue divertido;-)

Ahora también quiero que construyas uno tú mismo. Puede tomar esto como una guía para desarrollar el suyo o simplemente seguir las instrucciones para obtener una copia de mi pantalla de POV. Intentaré señalar todos los desafíos que tuve que superar para hacer el mío.

Repetí mi diseño para que fuera lo más fácil posible reconstruir. No hay componentes SMT y todo debería ser soldable por principiantes. No me malinterpretes, sigue siendo un gran desafío armar todo. ¡Pero debería ser factible!

ADVERTENCIA: ¡Este proyecto contiene LED que se actualizan con altas velocidades y potencialmente desencadenan convulsiones en personas con epilepsia fotosensible

¿Como funciona?

Aquí puede leer cómo funciona una pantalla POV en general.

Primero necesitamos una fuente que transmita una señal de video. En el diseño original lo hice a través de WIFI. Escribí un programa para capturar la pantalla de una computadora y enviar estos datos a un ESP8266 a través de WIFI. El problema de este enfoque es que el ESP8266 era demasiado lento y el ancho de banda WIFI era suficiente para 16 FPS. Entonces ahora usamos un ESP32. Estaba pensando que todos los problemas están solucionados, pero resultó que el ESP32 tampoco ofrece más ancho de banda a través de WIFI que el ESP8266. Sin embargo, el ESP32 tiene suficiente poder computacional para decodificar una transmisión de video. Así que terminé enviando imágenes JPEG a través de WIFI al ESP32. Por lo tanto, el ESP32 aloja un sitio web. En este sitio puede seleccionar imágenes o videos y el sitio web luego transmitirá archivos JPEG al ESP32. La decodificación JPEG necesita mucha memoria, por lo que también tenemos un problema. Pero funciona por el momento. Tal vez se me ocurra una solución mejor más adelante.

A continuación, debemos controlar los LED nosotros mismos. Para que esto funcione necesitamos saber la posición exacta de los LED en cada momento. Por lo tanto, agregué un sensor de efecto Hall. Cada rotación pasa por un imán y, por lo tanto, permite la detección. Luego medimos el tiempo de la rotación. Suponemos que la próxima rotación tomará el mismo tiempo. Por tanto, podemos calcular nuestra posición. Este proceso se repite una y otra vez. Para controlar los LED usamos una FPGA. También podríamos usar un microprocesador, pero probablemente sea demasiado lento. La mayoría de los LED externos deben actualizarse unas 10.000 veces por segundo. Una FPGA está a la altura de la tarea y lo hará con menos jitter.

Si los LED deben actualizarse con tanta frecuencia, también necesitamos LED rápidos. En mi diseño original, estaba usando LED APA102. Tienen una frecuencia de actualización de alrededor de 20 KHz. Traté de conseguir tiras de LED con estos LED, pero el vendedor en línea me envió SK9822 y me dijo que son iguales (sucedió dos veces…) Así que usaremos el SK9822. Solo tienen una frecuencia de actualización de 4.7kHz, pero con suerte será suficiente. También tienen un protocolo ligeramente diferente. Solo ten cuidado. Entonces, el ESP32 está empujando los cuadros de imagen a la FPGA. Entonces, la FPGA está controlando los LED.

Ahora los LED solo necesitan girar. Por lo tanto, utilizamos un motor de CC. Este motor se controla mediante una señal PWM de un ESP8266. El ESP8266 también está conectado por WIFI al ESP32. Por lo tanto, solo necesitamos un sensor para medir la velocidad de rotación. En el diseño original usé dos.

Puede encontrar más información sobre el sistema en mi video sobre el diseño original.

Instrumentos

Usé las siguientes herramientas:

  • impresora 3d
  • Hierro de soldadura
  • Pegamento caliente
  • Super pegamento
  • Cable micro USB
  • Tijeras
  • Taladro + taladro para madera 3 4 8 y 12mm
  • Destornillador
  • Alicates planos
  • Cortador lateral
  • Pelacables
  • Suministros de pintura
  • Papel de lija

Pedido

Abrí una tienda TINDIE. Entonces puedes comprar un kit si quieres y ayudarme a hacer más proyectos como este;-)

SST

Como siempre, todo lo que ves aquí se publica como código abierto.

Actualizaciones

Hay algunas cosas que quiero mejorar en el futuro:

  • Mayor resolución de color de 12 bits a 24 bits => por lo tanto, necesitamos una FPGA con más RAM =>

    Cmod A7, son compatibles con pines:-)

  • ESP32 con PSRAM para evitar problemas de memoria
  • Solucione el problema del cepillo …

Suministros

Piezas a medida

¡Tienes que pedirlos o pedirme un kit!

1 * PCB principal (los archivos gerber se encuentran en la carpeta gerber main.zip)

1 * PCB del controlador del motor (los archivos gerber se encuentran en la carpeta gerber motor.zip)

4 * Esquinas 3D 1 Imprimir (el archivo stl se encuentra en la carpeta 3D corner.stl)

1 * Soporte de PCB principal 3D 3 Imprimir (los archivos stl están debajo de la carpeta 3D holder1.stl, holder2.stl, holder3.stl)

1 * Soporte de pincel 3D 2 Imprimir (los archivos stl se encuentran en la carpeta 3D brush1.stl y brush2.stl)

Piezas estándar

Tenga cuidado, algunos de los enlaces incluyen paquetes de 10 o incluso 100 piezas.

Tira de LED 1m * SK9822 con 144 LED / m

1 * Cmod S6 FPGA

1 * Desarrollo Geekcreit de 30 pines ESP32

1 * Geekcreit D1 mini V2.2.0 ESP8266

4 * 74HCT04

5 * DC-DC 5V 4A

1 * Motor de CC 775

44 * 100nf 50V

9 * 220 uf 16 V

10 * imán de neodimio 10 mm x 2 mm

1 * sensor de efecto Hall

2 * Bruches de carbono Dremel 4000

2 * Cepillos de carbono para motor

2 * rodamientos 6803ZZ

2 * Montaje de motor 775

2 * Conector de CC de 5,5 x 2,1 mm

1 * fuente de alimentación

1 * botón de 8 mm

2 * XT30PB macho y hembra PCB

2 * Cable macho y hembra XT30 Plug

Resistencia de 2 * 130Ohm 1 / 4W

2 * MOSFET IRF3708PBF

2 * 1N5400

1 * encabezado de pin de una sola fila

1 * encabezado femenino

1 * Cable 30AWG

1 * Cable 22AWG

Ferretería

1 * MDF 500 mm x 500 mm x 10 mm

1 * MDF de 100 mm x 500 mm x 10 mm

4 * MDF 200 mm x 510 mm x 10 mm

1 * vidrio acrílico 500 mm x 500 mm x 2 mm

12 * Esquina de metal 40 mm x 40 mm x 40 mm

40 * Tornillo para madera 3 mm x 10 mm

6 * espaciador M3 12 mm

Tornillos M3 y M4

Cable de 3 m * 2,5 mm2 de un solo hilo / rígido

Pintura negra para la madera MDF

Tiempo de construcción: ~ 10 horas

Coste de construcción: ~ 300 €

Paso 1: descargar archivos

Descargar archivos
Descargar archivos

Para comenzar, primero debemos descargar todo lo que se necesita para este proyecto.

Vaya a la página de lanzamiento del repositorio aquí.

Luego descargue Release.zip de la última versión y descomprímalo en su computadora.

Cada vez que haga referencia a un archivo en estos instructibles, lo encontrará allí;-)

Paso 2: programa el firmware

Paso 2.1: Programar FPGA

Para programar la FPGA necesitamos instalar un software de xilinx:

Para Windows 10 necesita instalar: ISE Design Suite para Windows 10 (~ 7GB)

Para Windows 7 o XP puede instalar: Lab Tools (~ 1GB)

Después de instalar, abra ISE iMPACT y haga clic en "No" si se le solicita y también en "Cancelar" para obtener un nuevo formulario de proyecto. Conecte la placa FPGA Cmod S6 y espere a que se instalen los controladores. Haga doble clic en escaneo de límites. Luego haga clic derecho en la nueva ventana y elija "Inicializar cadena". Haga clic en "No" nuevamente y cierre el nuevo formulario. Ahora debería ver un símbolo "SPI / BPI", haga doble clic en él. Elija el archivo "SPIFlash.mcs". En el nuevo formulario, elija "SPI PROM" y "S25FL128S" y Ancho de datos "4". Haga clic en Aceptar". A continuación, vuelva a hacer clic en el símbolo "FLASH". Debería ser verde ahora. Luego presione "Programa". Haga clic en "Aceptar" en el nuevo formulario y espere. Esto puede tardar unos minutos.

Bien hecho, la FPGA está lista;-) ¡Puedes desconectarla de nuevo!

Paso 2.2: Programar ESP32

Instale el núcleo esp32 en la ID de Arduino, puede seguir este tutorial. Se recomienda la V1.0.2.

Bibliotecas necesarias:

  • AutoPID de Ryan Downing V1.0.3 (se puede instalar sobre el administrador de la biblioteca)
  • ArduinoWebsockets de Gil Maimon, modificado por mí (descargue el archivo zip e instálelo)

Abra el archivo povdisplay.ino en la carpeta povdisplay.

Elija en el tablero de herramientas: "DOIT ESP32 DEVKIT V1". Deje los demás ajustes como están.

Conecte la placa esp32 a través de USB y descargue el programa.

Paso 2.3: Programar ESP8266

Instale el núcleo ESP8266 en la ID de Arduino, puede seguir este tutorial.

¡No se necesitan bibliotecas!

Abra el archivo motordrive.ino en la carpeta motordrive.

Elija en el Panel de herramientas: "Módulo ESP8266 genérico". Deje los demás ajustes como están.

Conecte la placa esp8266 a través de USB y descargue el programa.

Paso 3: Soldar PCB

Image
Image
PCB de soldadura
PCB de soldadura
PCB de soldadura
PCB de soldadura
PCB de soldadura
PCB de soldadura

PASO 3.1 PCB del controlador del motor de soldadura

Los siguientes componentes están soldados:

  • WEMOS1 (Geekcreit D1 mini V2.2.0 ESP8266)

    • Suelde los encabezados de los pines a la placa WEMOS
    • Suelde los encabezados hembra en la PCB
  • DCDC (CC-CC 5 V 4 A)

    • Utilice 4 pines del encabezado de pines y suelde el convertidor CC-CC directamente a la placa
    • Tenga cuidado con la orientación, debe coincidir con la pantalla de seda.
  • CN1 (conector de CC de 5,5 x 2,1 mm)
  • 1N5400

    Tenga cuidado con la orientación, la línea blanca del diodo debe estar del mismo lado que la línea de la pantalla de seda

  • 220u (220uf 16V)

    Tenga cuidado con la orientación, la línea blanca debe estar en el lado opuesto del más en la pantalla de seda

  • R1 y R1 (resistencia 130Ohm 1 / 4W)
  • Q1 y Q2 (MOSFET IRF3708PBF)

    Tenga cuidado con la orientación, la parte posterior de metal debe estar en el lado con la línea gruesa en la pantalla de seda

  • MOTOR (PCB hembra con conector XT30PB)

    Tenga cuidado con la orientación, el extremo redondo debe estar en el lado marcado en la pantalla de seda

  • LED y TASTER (PCB macho con conector XT30PB)

    Tenga cuidado con la orientación, el extremo redondo debe estar en el lado marcado en la pantalla de seda

PASO 3.2 Soldar PCB principal

Los siguientes componentes están soldados:

  • CMODS6 (Cmod S6 FPGA)

    Debería haber encabezados de pines incluidos. Sueldelos en la PCB

  • ESP (Geekcreit 30 Pin ESP32 Development)

    Utilice conectores hembra y suéldelos en la PCB

  • DCDC1 - DCDC4 (DC-DC 5V 4A)

    • Utilice 4 pines del encabezado de pines y suelde el convertidor CC-CC directamente a la placa
    • Tenga cuidado con la orientación, debe coincidir con la pantalla de seda.
  • PRUEBA_POTENCIA (conector DC 5,5 x 2,1 mm)
  • D1 (1N5400)

    Tenga cuidado con la orientación, la línea blanca del diodo debe estar del mismo lado que la línea de la pantalla de seda

  • ALIMENTACIÓN (PCB hembra con conector XT30PB)

    Tenga cuidado con la orientación, el extremo redondo debe estar en el lado marcado en la pantalla de seda

  • C1, C3, C4, C6, C7, C9, C10, C11 (220 uf 16 V)

    Tenga cuidado con la orientación, la línea blanca del condensador debe estar en el lado opuesto del positivo en la pantalla de seda

  • C2, C5, C8, C12 (100nf 50V)
  • IC1 - IC4 (74HCT04)

    Tenga cuidado de alinear el corte del IC con la marca en la pantalla de seda

PASO 3.3 Pegamento caliente

La PCB principal girará muy rápido. Por lo tanto, debemos pegar los condensadores (C1, C3, C4, C6, C7, C9, C10, C11) en la PCB para evitar problemas. Solo usa pegamento caliente para eso.

Paso 4: Prepare las tiras

Image
Image
Preparar tiras
Preparar tiras
Preparar tiras
Preparar tiras
Preparar tiras
Preparar tiras

PASO 4.1 Cortar la tira en pedazos

Retire la protección contra el agua con unas tijeras.

Necesitamos cuatro ALAS y cada ala contiene cuatro grupos. One WING es especial, tiene un LED más que los demás.

WING1:

  • G1: 5 LED (grupo más externo)
  • G2: 6 LED
  • G3: 8 LED
  • G4: 14 LED

WING2 - WING4:

  • G1: 5 LED (grupo más externo)
  • G2: 6 LED
  • G3: 8 LED
  • G4: 13 LED

Por lo tanto, necesitamos 129 LED y nuestra tira tiene 144, por lo que tenemos cierta tolerancia para un corte incorrecto;-) En el peor de los casos, puede soldar el corte.

Corte lo más centrado posible entre los LED.

PASO 4.2 Suelde los cables a la tira de LED

En cada uno de los segmentos de la tira de LED, suelde dos cables 30AWG en el reloj y el pin de datos. Estos son los dos pines del medio. Tenga cuidado de soldarlos en la entrada de la tira de LED. Normalmente, las flechas muestran la dirección del flujo de datos. Los cables deben tener alrededor de medio metro de largo.

Recorta todo del otro lado del stripto para evitar un corto entre los pines de datos y reloj de los diferentes grupos cuando juntamos los WING.

PASO 4.3 Condensadores de soldadura

En cada grupo, suelde dos condensadores (100nf 50V) en la parte posterior de los segmentos de la tira de LED en cada extremo. Para G4 también suelde uno en el medio. Los cables deben pasar por debajo de los condensadores para dejar algo de espacio pero no demasiado.

PASO 4.4 Junte las alas

Para cada ALA, pase los cables de G1 a G2 y luego estos cables a través de G3 y lo mismo con G4.

PASO 4.4 Suelde los grupos juntos

Ahora necesitamos el cable de cobre (cable de 2,5 mm2 de un solo hilo / rígido). Córtelo en ocho piezas de unos ~ 30 cm de longitud. Pele el aislamiento de todos los cables. Enderece los cables tanto como sea posible. Puede fijar un extremo en una abrazadera de tornillo y sujetar el otro con unos alicates planos y luego golpear los alicates con un martillo.

Fije el cable en un lado para facilitar el trabajo. Luego suelde el primer grupo. Alinee el segmento de la tira de LED con el cable y suéldelo en un lado a los dos condensadores. El cable debe descansar plano sobre la tira de LED. Continúe con el siguiente grupo. Tenga cuidado de que la distancia entre dos grupos de LED también sea de 7 mm. Al final, todos los LED deberían tener el mismo espacio entre ellos. Continúe con los otros dos grupos. En el último grupo, suelde los tres condensadores al cable.

Luego corte el cable al final. Continúe con otro cable en el otro lado de la tira.

¡Ahora la primera ALA está terminada! Haz lo mismo con las otras tres alas.

PASO 4.5 Doble los condensadores

Simplemente dóblelos todos para adelgazar las tiras.

Paso 5: suelde las tiras en la PCB principal

Image
Image
Suelde las tiras en la PCB principal
Suelde las tiras en la PCB principal
Suelde las tiras en la PCB principal
Suelde las tiras en la PCB principal

PASO 5.1 Verifique la polarización

Primero necesitamos conocer la polarización de la tira de LED. En otras palabras: donde 5V y tierra son relativos a la PCB. Esto realmente depende de la tira de LED que tenga y puede ser de cualquier manera.

Sostenga una ALA en el PCB principal. Las flechas en la tira de LED deben apuntar al centro de la PCB. Ahora mire si 5V está en el lado DATOS o RELOJ de los pines.

Si el 5V está en el lado de los DATOS, está bien y puede usar el cobre de 2.5 mm2 para soldar la tira de LED directamente a la PCB.

De lo contrario, debe usar un cable 22AWG para tachar los dos lados. Por lo tanto, suelde el cable a la tira de LED y tache el lado izquierdo y derecho y suelde eso a la PCB.

PASO 5.2 Cable de soldadura de 2,5 mm2

Utilice el resto del cable de cobre de 2,5 mm2 y pele todo. Sueldelos en la parte superior de la PCB. Cortar el alambre soldado a la misma altura alrededor de 1 cm.

PASO 5.3 Suelde la primera ALA

Utilice la ALA más larga y colóquela en el PCB (LED1) como se muestra en la pantalla de seda. Sueldelo a los cables de 2,5 mm2. ¡Haga conexiones realmente fuertes, esto verá mucha fuerza durante la rotación! Luego, conecte los cables del Grupo 1 a G1 Data y G1 Clock.

No olvide soldar la conexión de alimentación como se describe arriba.

Conecte el ESP32 y el FPGA (48 y 1 está en el lado marcado) y encienda la placa con la fuente de alimentación.

Los LED más externos deberían parpadear en azul ahora (puede tardar hasta 40 segundos en hacerlo). Si no es así, compruebe si ha conectado CLOCK y DATA de la forma correcta.

PASO 5.4 Sensor de efecto Hall

Suelde un cabezal de clavija hembra (con tres clavijas) al pasillo. Posteriormente le conectaremos el sensor.

Suelde el sensor (sensor de efecto Hall) a un cabezal de clavija macho. Los enlaces con el sensor y el encabezado del pin deben ser de alrededor de 25 mm.

PASO 5.5 Continuar con el resto de ALAS

Para LEDs2 - LEDs4 == WING2 - WING4 hacer el mismo proceso que con WING1.

De vez en cuando encienda la PCB y compruebe si todo está parpadeando. El patrón comienza con el led más externo, va hacia adentro y comienza de nuevo.

PASO 5.6 Equilibrio

Intente equilibrar el PCB principal en el medio con un objeto puntiagudo. Si un lado pesa más, intente agregar soldadura al otro lado. No tiene que ser perfecto, pero un desequilibrio excesivo provocará más tarde una gran cantidad de vibraciones durante el funcionamiento, lo que puede provocar problemas mecánicos.

Paso 6: Primera pintura

Paso 6.1: Taladro

Necesitamos perforar algunos agujeros:

En el tablero MDF 500 * 500 necesitamos dos agujeros. Mire el archivo drill_wood_500_500.pdf y taladre los agujeros según el plano.

En el tablero de 500 * 100 MDF necesitamos muchos agujeros. Por lo tanto imprima el archivo drill_wood_500_100_A4.pdf y alinéelo en el tablero. Simplemente taladre donde están marcados los agujeros en el papel.

Paso 6.2: pintura

Pinta un lado de cada madera. Para el tablero de MDF de 500 x 500, es el lado en el que perforaste.

Pinta ambos lados de la madera de 100x500.

También puedes pintar las esquinas metálicas de negro. Esto se verá mejor;-)

El resto lo pintaremos cuando hayamos montado todo (el exterior de la caja).

Paso 7: Ensamblaje mecánico

Image
Image

Paso 7.1 Monte la PCB del controlador del motor

La PCB está montada en la placa MDF de 100 x 500. Utilice los espaciadores (espaciador M3 de 12 mm) y algunos tornillos y tuercas m3.

Paso 7.2 Montaje de soportes

Monte los dos soportes (montaje del motor 775) en la placa MDF 100 x 500 con tornillos M4.

Paso 7.3 Prepare el soporte

Las dos barreras (rodamientos 6803ZZ) deben desactivarse. Solo necesitamos los dos anillos exteriores.

Suelde cables 22AWG en cada anillo. Uno negro y uno rojo.

Tome las piezas impresas en 3D del Holder y móntelas.

Coloque las siete tuercas M3 en sus respectivos orificios y deslice el anillo con el cable rojo primero en el soporte, luego el espaciador y luego el anillo con el cable negro. Agregue la tercera pieza en la parte superior e inserte los tornillos.

Corte los dos cables a una distancia de 2 cm y suelde el conector (cable macho de enchufe XT30). El cable negro va hacia el lado curvado.

Paso 7.4 Montar el motor

Atornille el motor (Motor DC 775) al soporte del motor en el medio de la placa MDF 100 x500.

Monte el soporte en el motor y atorníllelo.

Paso 7.5 Instale los pinceles

Tenía planeado utilizar un cepillo Dremel (Carbon Brushes Dremel 4000). Necesitamos el uso de otro carbón (Escobillas de carbón de motor) porque el carbón para las escobillas Dremel tiene una resistencia demasiado alta. Pasé por alto eso en el proceso de desarrollo. Así que usamos las escobillas del motor y las lijamos al tamaño de las escobillas dremel.

Cortar el alambre del cepillo del motor a 5 mm del carbón.

Luego usamos papel de lija para recortar el carbón a las siguientes dimensiones: 8.4 x 6.3 x 4.8 mm

Un lado del cepillo del motor mide 6,1 mm, por lo que solo necesitamos lijar dos lados.

Puede probar si se desliza fácilmente en el portaescobillas, entonces está bien.

También intente lijar una curva en la parte superior para mejorar la conexión con los anillos de metal.

Suelde un alambre 22AWG en el carbón para ambos carbones. Utilice un cable rojo y uno negro. Inserte el resorte del cepillo dremel.

Inserte los cepillos en el portaescobillas. El cepillo con el alambre rojo va en la parte superior. La parte superior del soporte es un poco más gruesa. Tenga cuidado de que los dos resortes no se toquen entre sí.

Monte el soporte en la base con tuercas y tornillos m3.

Monte la base del portaescobillas en el segundo soporte del motor con soporte. Utilice tornillos M4 y tuercas incluidos con el soporte.

El motor debe poder girar libremente.

Guíe los dos cables entre los dos soportes.

Corte los dos cables a lo largo para que puedan llegar a la PCB y suelde el conector (cable macho de enchufe XT30) a él. El cable negro va hacia el lado curvo.

Suelde dos cables 22AWG a los motores y córtelos a una distancia para alcanzar fácilmente la PCB y suelde el conector (cable hembra de enchufe XT30) a él. El cable negro va hacia el lado curvo.

Paso 8: Terminar

Recomendado: