Archivo de la etiqueta: leds

mural

Creación de murales de luz para aulas multisensoriales

Neopíxels, leds direccionables.
En estos dos enlaces puedes ver un vídeo corto del prototipo creado.
http://sacosta.org/arduino/VID_22780402_130452_786.mp4
http://sacosta.org/arduino/VID_20200523_133401.mp4

mural

Este matrix de neopíxels se ha construido con cartón pluma, una tira de leds neopíxels, un arduino nano y poca cosa más.
El proceso lo tenéis en las ilustraciones. El código puede ser cualquiera de los ejemplos que llevan las librerias de Adafruit o Fastled que encontraréis gestionando Bibliotecas en Arduino; solo tendréis que modificar el número de leds y el dispositivo controlador.

pas 1
pas2
paso 3
paso 5

Hay diferentes tipos de neopixels. Nosotros elegimos estos por tener una distancia entre led y led que nos permitía separarlos lo necesario y evitar tener que soldarlos.
El precio de las tiras es razonable.

leds

Se ha utilizado cartón pluma por su resistencia y ligerreza pero se puede utilizar cualquier otro material. La cola para el cartón ha sido una silicona escolar de lo más normal, la plancha que tapa ligeramente los leds son hojas de papel vegetal, los agujeros se hicieron con un soldador que quemaba el porxpán del cartón pluma,…

Código Arduino//asigna un color al azar (función set color)  a un led al azar (función np) en cada uno de los tramos #include <Adafruit_NeoPixel.h> #define PIN 7   // pin X de arduino  #define NUMPIXELS      50 // numero de pixels Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);int numtramos=5;int delayval = 2000; // tiempo de regeneración de color int redColor = 0;int greenColor = 0;int blueColor = 0;int np1=0;int np2=0;int np3=0;int np4=0;int np5=0;/*int np6=0;int np7=0;int np8=0;int np9=0;int np10=0;int np11=0;int np12=0;int np13=0;int np14=0;int np15=0;*/ void setup() {  // Initialize the NeoPixel library.  pixels.begin(); } void loop() {   setColor();  np();    // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255  pixels.setPixelColor(np1, pixels.Color(redColor, greenColor, blueColor));  setColor();  pixels.setPixelColor(np2, pixels.Color(redColor, greenColor, blueColor));  setColor();  pixels.setPixelColor(np3, pixels.Color(redColor, greenColor, blueColor));  setColor();  pixels.setPixelColor(np4, pixels.Color(redColor, greenColor, blueColor));  setColor();  pixels.setPixelColor(np5, pixels.Color(redColor, greenColor, blueColor));  setColor();      pixels.show();     setColor();  delay(delayval);  }void np(){  np1 =random (0,NUMPIXELS/numtramos);  np2 =random (NUMPIXELS/numtramos,2*NUMPIXELS/numtramos);  np3 =random (2*NUMPIXELS/numtramos,3*NUMPIXELS/numtramos);  np4 =random (3*NUMPIXELS/numtramos,4*NUMPIXELS/numtramos);  np5 =random (4*NUMPIXELS/numtramos,5*NUMPIXELS/numtramos); }// setColor()// picks random values to set for RGBvoid setColor(){  redColor = random(0, 255);  greenColor = random(0,255);  blueColor = random(0, 255);}

Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0