¿Analizador de espectro de frambuesa Pi con tira de LED RGB y Python (1 / 3 paso)

Paso 1: Conectar la tira de LED y configuración software de LED RGB

Algo que tratar con las tiras de LED independientes para cada columna, sólo coloca una sola 152 LED tira hacia adelante y hacia atrás, fijándolo con ataduras de cremallera para la puerta de un bebé. Esto desperdicia algunos LEDs como no estoy viendo nada en las vueltas, pero se podría evitar el desperdicio de LED cortando la tira y soldar los cables entre las columnas.

Un buen diagrama para conectar la tira del RGB LED para el RasPi puede encontrarse en el sitio de adafruit.

Soldar los 5V, tierra, líneas de reloj y datos hasta el final de la entrada de la tira LED y conectar con el Pi como se muestra en el enlace o en mis fotos. Asegúrese de conectar la tierra de la fuente de 5V a la tierra de la Pi.

Agarra el software y siga las instrucciones para obtener el Pi capaz para la salida SPI. Es importante que use el hardware SPI porque cualquier enfoque golpeando poco no ser lo suficientemente rápido.

sudo raspi-config

para habilitar el hardware SPI (siga las instrucciones en la página de git).

He añadido el directorio de instalación a mi PYTHONPATH en bashrc así podría llamar a las funciones desde cualquier lugar.
interior bashrc:

Export PYTHONPATH = $PYTHONPATH: / home/pi/RPi-LPD8806-master

probar que la tira funciona ejecutando el código de ejemplo:

Python example.py

El código ligero de Navidad que vamos a descargar más tarde quiere ejecutar como root, y al ejecutar cosas con un sudo delante, las variables de entorno, específicamente, PYTHONPATH no transferido.

Tuve que editar/etc/sudoers escribiendo

sudo visudo

y luego en la parte inferior

Por defecto env_keep = SYNCHRONIZED_LIGHTS_HOME
Por defecto env_keep += PYTHONPATH

la primera línea es algo que necesitará para que el paquete de luz de Navidad a ser instalado después. Estos Asegúrese de que las variables de entorno quedarse al ejecutar cosas como sudo.

Para probar que usted tiene derecho de instalación, cerca de la terminal y vuelva a abrir, escriba

sudo python
de importación bootstrap *
LED.Fill(color(50,50,50),0,10)
LED.Update()

debe encender los 10 LEDs.

Un paso final es hacer algunas modificaciones en la velocidad de escritura a la franja.

Dentro de ledstrip.py, hacer que use_py_spi = True en la línea de def __init__

def __init__ (self, leds, use_py_spi = verdadera, dev="/dev/spidev0.0", driver = "LPD8806"):

Ahora dentro de LPD8806.py, vamos a cambiar la velocidad SPI a 16MHz

Si self.use_py_spi:

importación spidev
Self.SPI = spidev. SpiDev()
self.spi.open(0,0)
self.spi.max_speed_hz = 16000000
imprimir ' py-spidev MHz: %d ' % (self.spi.max_speed_hz / 1000000.0)

Que instrucción print está allí sólo para asegurarse de que todo se establece correctamente.

Un cambio final en el LPD8806.py archivo está en la función update(). Por alguna razón, me di cuenta led.update() estaba tomando mucho tiempo, upwords de 25ms. Para obtener un buen efecto visual, quería mi todo análisis y presentación el lazo a 20Hz o 50ms por lazo y quema la mitad que tiempo de espera para la tira de LED no funcionaría. Y extrañamente, a 16MHz, debe haber tomado menos de un ms. 3 bytes por led, 152 LED, (3 * 152 * 8 bits / 16M) =.2ms! (no 25 ms) Cuando le pongo un alcance hasta el puerto SPI, cada octeto fue saliendo a 16 MHz, pero hubo una pausa 160uS después de cada llamada a self.spi.xfer2(). Mi solución fue recoger toda la cadena de bytes en un buffer y sólo llamar a self.spi.xfer2() una vez:

actualización de DEF (sí, tampón):

temp_buffer =]
Si self.use_py_spi:
para x en range(self.leds):
temp_buffer = temp_buffer + [i i en tampón [x]]
#self.spi.xfer2 ([i i en buffer[x]])
Self.SPI.xfer2 (temp_buffer)
Self.SPI.xfer2([0x00,0x00,0x00]) #zero llenar el último para evitar que los colores al final
Self.SPI.xfer2([0x00]) #once más con sentimiento - esto ayuda :) time2 = time.time()

Escribir a 152 LEDs en 16 que MHz no debería tomarse ningún tiempo, debería ver el último cambio de LED a la vez que el primero de ellos hace

Algunas otras personas tienen luchado con esto y consiguió alrededor, compruebe el increíble efecto de video POV con una sola tira de LED vertical (envío de datos a 8 MHz a 20 pies de gato 5!):

Artículos Relacionados

Elegante teléfono controlado árbol de Navidad con tira de LED RGB

Elegante teléfono controlado árbol de Navidad con tira de LED RGB

Navidad ya está aquí, hemos decorado este árbol de Navidad con tira de LED RGB para nuestra fiesta de Navidad y lo hizo un árbol de teléfono inteligente controlado. XD. es que presentará una magia de "última hora" para el espectáculo de Navidad.
Hexágonos de la pipa PEX con tira de LED RGB

Hexágonos de la pipa PEX con tira de LED RGB

Construido para un telón de fondo de etapa este proyecto cuenta con algunas formas hexagonales de 3/4" la pipa de PEX, similar a un aro del LED hula, algunos 12 voltios RGB LED tira y un NLED 30 canal alto LED controlador de corriente. Los hexágonos
Con un solo LED RGB o una tira de LED para mostrar información: reloj, termómetro y un comunicador raro

Con un solo LED RGB o una tira de LED para mostrar información: reloj, termómetro y un comunicador raro

Uno de los primeros proyectos que hice con un Arduino era una guirnalda de luces de Navidad. De hecho, fue hecho de una tira de LED RGB sencilla cortar en dos, como Arduino tiene sólo 6 salidas PWM de hardware. No quería triviales arcoiris y colores
Circuito de tira de LED RGB con Arduino

Circuito de tira de LED RGB con Arduino

Este Instructable cubre el montaje de un circuito capaz de ing de PWM (modulación de anchura de pulso) una tira de LED RGB 12v 9 y programación un Arduino para desplazarse a través de una gama de colores. Discutir cómo montar un transistor a un disip
Nube con tira de LEDs Neopixel y Freescale libertad Junta – KL25

Nube con tira de LEDs Neopixel y Freescale libertad Junta – KL25

Primero queremos agradecer a Hacedores Makerspace por la invitación a participar en la "Construcción de HACEDORES de noche" donde con las tarjetas de Freescale Semiconductor se hizo esta nube con una tira de leds neopixel.La tira de led neopixel
WiFi controló tira de LED RGB

WiFi controló tira de LED RGB

Los utiliza para controlar tiras de LED RGB control remoto IR a veces puede llegar a ser irritante debido a su gama limitada y buscando el control remoto cuando no las encuentra. Este proyecto simple, pero eficaz puede resolver un problema mediante e
Controladora de tira de LED RGB

Controladora de tira de LED RGB

Se trata de una control remoto multicolor LED tira caja regulador que hice para un amigo. Tenemos previsto instalar iluminación sutil dentro de su coche para los que tenemos una caja pequeña del regulador + mando a distancia con las tiras de LED mult
Tiras de LED RGB

Tiras de LED RGB

en este instructable, quería mostrarle mis tiras de LED RGB (rojas, verdes, azul). Cada tira tiene 36 LED ' s rojos, 36 LED verde y 36 LEDs azules. En general las tiras son 47 pulgadas de largo excepto el uno en el extremo izquierdo, es un poco más c
Controladora de tira de LED RGB de Arduino

Controladora de tira de LED RGB de Arduino

Tenía curiosidad sobre el uso de tira de LED RGB, así que compré uno y decidí hacer un pequeño controlador para ver lo que puedo hacer con ello... así que aquí está.Si tienes alguna duda, comentario, crítica constructiva... no dudes en escribirnos :)
Cómo controlar una tira de LED RGB - Tutorial de Arduino

Cómo controlar una tira de LED RGB - Tutorial de Arduino

En este tutorial vamos a utilizar una tira con 8 LED ' s RGB con la placa de Arduino uno. Usaremos la biblioteca de NeoPixel de Adafruit para cambiar el color de cada led.Vamos a empezar!Paso 1: Lo que se necesitaPara este proyecto necesitarás:Arduin
DIY Lámpara con tiras de LED y sanitarios

DIY Lámpara con tiras de LED y sanitarios

Este proyecto debe tomar no más de una o dos horas después de recibir las piezas juntos dependiendo de tu nivel de experiencia. Las partes deben ser bastante comunes en cualquier barrio o Ferreterias grandes a excepción de las tiras LED. Pueden encon
Solución de iluminación de escalera con tiras de LED

Solución de iluminación de escalera con tiras de LED

Como mucha gente, he comprado una casa con un sótano terminado, donde muchas cosas no se hicieron lo que les habría hecho, y una vez hay yeso encima, su duro arreglo eléctrico y comings cortos de iluminación.En los últimos dos años, un problema parti
Cambio caja estantes con tiras de LED y Arduino de color

Cambio caja estantes con tiras de LED y Arduino de color

Nota: este instructivo es parte de un concurso hasta el 7 de julio. Si realmente te gusta, puedes votar en la esquina superior derecha.Esto comenzó como necesitaba un almacenamiento extra a continuación y encima de un escritorio, pero quería darle al
Las infinitas posibilidades de tiras de LED RGB!!

Las infinitas posibilidades de tiras de LED RGB!!

Este es mi primer Inscrutable, y es sobre cómo añadir unas tiras de luz RGB (rojo verde azul) y un controlador a su coche, ni nada. Mina pongo bajo mi guión, sin embargo usted puede poner dondequiera usted tiene gusto, que es la belleza de ella!* ¡ C