Hacer un escritor de aire pov conducido por menos de $ 5

Se puede hacer todo tipo de cosas con LEDs intermitentes, y en este proyecto simple, vamos a hacer un pequeño dispositivo que se ilumina mensajes en el aire cuando le hace señas hacia atrás y adelante. Es más fácil de lo que piensa, y el coste total de las piezas es menos de $ 5.

Este proyecto utiliza una ilusión óptica llamada persistencia de la visión para que el texto aparezca en el aire. Usted probablemente ha llegado a través de este fenómeno cuando alguien mueve una bengala encendida rápidamente por la noche. Vamos a utilizar un Arduino y algunos LED para imitar este efecto. Este proyecto es sencillo de construir, con pocos componentes y poca soldar (aunque si quieres algunos consejos sobre cómo empezar con su cheque a cabo soldador esta guía).Aprender cómo soldar, con estos sencillos consejos y ProyectosAprender cómo soldar, con estos sencillos consejos y Proyectos¿Es usted un poco intimidados por la idea de una plancha caliente y el metal fundido? Si desea empezar a trabajar con la electrónica, vas a tener que aprender a soldar. Vamos a ayudarle.Lee mas

Vídeo: Conferencia: Escribir hoy. Los desafíos para un escritor en tiempos de Internet

Necesitará

  • Arduino (he usado un Nano $ 2, ya que es compacto y barato, pero cualquier modelo debe estar bien).
  • LEDs rojos 5x.
  • resistencias 5x 220 Ohm.
  • 1x soporte de la batería de 9V.
  • 1x interruptor basculante.
  • piece 1x de protoboard.
  • Un alojamiento para el producto terminado (I utiliza una pequeña caja de cartón pintado de negro).

Vídeo: CARLOS FUENTES - La escritura: encuentro y memoria

Usted también necesitará un soldador y un poco de estaño para ponerlo todo junto.

Aunque opcional, algunos mecha de soldadura puede ser muy útil en caso de que se cometan errores de soldadura. Un tablero y algunos cables de conexión también son útiles para probar su circuito.

Componentes necesarios para el Proyecto

Alambrado

El cableado no puede ser más sencillo. En primer lugar, conectar sus Arduino, LEDs y resistencias como se muestra en este diagrama.

Fritzing POV

Botones D2 a D6 ir a cada resistor, respectivamente, que están unidos al ánodo positivo (pierna de longitud) de cada LED. El cátodo está conectado a tierra, que se conecta de nuevo a la Arduino. Cuando se hace debe ser algo como esto:

tablero POV

Eso es todo: nuestro circuito está hecho! Vamos a añadir un alojamiento de la batería y un interruptor a ella más tarde, pero esto es todo lo que necesitamos para probar si funciona.

Código

Ahora conectar el Arduino al ordenador y abrir el IDE de Arduino. Si usted es nuevo en el uso del Arduino y quieres una buena guía en conseguir ir, este enlace será útil.Primeros pasos con Arduino: una guía para principiantesPrimeros pasos con Arduino: una guía para principiantesArduino es una plataforma electrónica de prototipos de código abierto basado en flexible y fácil de usar hardware y software. Está pensado para artistas, diseñadores, aficionados y cualquier persona interesada en la creación de objetos interactivos o ambientes.Lee mas

Abrir un nuevo dibujo y copiar el código. El código se modificó a partir de este proyecto y se puede descargar en su totalidad en este Gist.

// el tiempo que cada LED permanece encendida duranteint tiempo de retardo = 1-// el tiempo entre cada int charBreak = 3-// el tiempo de espera después de que se terminó el mensaje antes de que se repiteint restablecer el tiempo = 20-int LED1 = 2-int LED2 = 3-int LED3 = 4-int LED4 = 5-int LED5 = 6-vacío preparar(){pinMode(LED1, SALIDA)-pinMode(LED2, SALIDA)-pinMode(LED3, SALIDA)-pinMode(LED4, SALIDA)-pinMode(LED5, SALIDA)-}int un[] = {1, 6, 26, 6, 1}-int segundo[] = {31, 21, 21, 10, 0}-int c2[] = {14, 17, 17, 10, 0}-int re[] = {31, 17, 17, 14, 0}-int mi[] = {31, 21, 21, 17, 0}-int F[] = {31, 20, 20, dieciséis, 0}-int gramo[] = {14, 17, 19, 10, 0}-int marido[] = {31, 4, 4, 4, 31}-int yo[] = {0, 17, 31, 17, 0}-int j[] = {0, 17, 30, dieciséis, 0}-int k[] = {31, 4, 10, 17, 0}-int l[] = {31, 1, 1, 1, 0}-int metro[] = {31, 12, 3, 12, 31}-int norte[] = {31, 12, 3, 31, 0}-int o[] = {14, 17, 17, 14, 0}-int pag[] = {31, 20, 20, 8, 0}-int q[] = {14, 17, 19, 14, 2}-int r[] = {31, 20, 22, 9, 0}-int s[] = {8, 21, 21, 2, 0}-int t[] = {dieciséis, dieciséis, 31, dieciséis, dieciséis}-int u[] = {30, 1, 1, 30, 0}-int v[] = {24, 6, 1, 6, 24}-int w[] = {28, 3, 12, 3, 28}-int x[] = {17, 10, 4, 10, 17}-int y[] = {17, 10, 4, 8, dieciséis}-int z[] = {19, 21, 21, 25, 0}-int eos[] = {0, 1, 0, 0, 0}-int excl[] = {0, 29, 0, 0, 0}-int ques[] = {8, 19, 20, 8, 0}-int espacio[] = {0, 0, 0, 0, 0}-vacío displayLine(int línea){int mi linea-mi linea = línea-Si (mi lineagt; =dieciséis) {digitalWrite(LED1, ALTO)- mi linea-=dieciséis-} más {digitalWrite(LED1, BAJO)-}Si (mi lineagt; =8) {digitalWrite(LED2, ALTO)- mi linea-=8-} más {digitalWrite(LED2, BAJO)-}Si (mi lineagt; =4) {digitalWrite(LED3, ALTO)- mi linea-=4-} más {digitalWrite(LED3, BAJO)-}Si (mi lineagt; =2) {digitalWrite(LED4, ALTO)- mi linea-=2-} más {digitalWrite(LED4, BAJO)-}Si (mi lineagt; =1) {digitalWrite(LED5, ALTO)- mi linea-=1-} más {digitalWrite(LED5, BAJO)-}}vacío displayChar(carbonizarse do){Si (do == `un`){para (int yo = 0- yo lt;5- yo++){displayLine(un[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `segundo`){para (int yo = 0- yo lt;5- yo++){displayLine(segundo[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `C2`){para (int yo = 0- yo lt;5- yo++){displayLine(c2[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `re`){para (int yo = 0- yo lt;5- yo++){displayLine(re[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `mi`){para (int yo = 0- yo lt;5- yo++){displayLine(mi[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `F`){para (int yo = 0- yo lt;5- yo++){displayLine(F[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `gramo`){para (int yo = 0- yo lt;5- yo++){displayLine(gramo[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `marido`){para (int yo = 0- yo lt;5- yo++){displayLine(marido[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `yo`){para (int eso = 0- eso lt;5- eso++){displayLine(yo[eso])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `J`){para (int yo = 0- yo lt;5- yo++){displayLine(j[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `K`){para (int yo = 0- yo lt;5- yo++){displayLine(k[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `L`){para (int yo = 0- yo lt;5- yo++){displayLine(l[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `metro`){para (int yo = 0- yo lt;5- yo++){displayLine(metro[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `norte`){para (int yo = 0- yo lt;5- yo++){displayLine(norte[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `O`){para (int yo = 0- yo lt;5- yo++){displayLine(o[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `pag`){para (int yo = 0- yo lt;5- yo++){displayLine(pag[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `Q`){para (int yo = 0- yo lt;5- yo++){displayLine(q[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `R`){para (int yo = 0- yo lt;5- yo++){displayLine(r[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `S`){para (int yo = 0- yo lt;5- yo++){displayLine(s[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `T`){para (int yo = 0- yo lt;5- yo++){displayLine(t[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `U`){para (int yo = 0- yo lt;5- yo++){displayLine(u[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `V`){para (int yo = 0- yo lt;5- yo++){displayLine(v[yo])-retrasar(tiempo de retardo)-}displayLine(0)-}Si (do == `W`){para (int yo = 0- yo lt;5- yo++){displayLine(w[yo])-retrasar(tiempo de retardo
Artículos Relacionados