Neopixel: qué es, para qué sirve, y cómo puedes integrarlo en tus proyectos

neopixel

Seguramente que has visto en más de una ocasión a los makers mostrar proyectos usando estos conjuntos de LEDs RGB. Las aplicaciones de estas tiras pueden ir desde una simple decoración que puede cambiar de color según algún evento externo, hasta usarse para carreras de luces, y un largo etc. Por eso en este artículo introduciremos toda la información más importante que debes conocer sobre el Neopixel y cómo se puede integrar y controlar con Arduino.

¿Qué es Neopixel?

Aro LED RGB

Neopixel no es más que una marca registrada por Adafruit Industries. Sin embargo, el término genérico para denominar a estos componentes es LEDs RGB direccionables individualmente (p.e.: SK6812, WS2811, WS2812,…). Es decir, se trata de un circuito lógico con estas luces de colores que actuarán en consecuencia a una señal de control, mostrando diferentes colores, realizando ciertas secuencias de encendido, etc.

Es importante que sepas que cada uno de los LEDs RGB que componen la matriz usa 4 pines o conectores, por lo que su pinout es:

  • 5V: alimentación de nivel alto.
  • GND: alimentación a bajo nivel o tierra.
  • DIN: pin para recibir información del color.
  • DO: pin para enviar la información del color.

Además de eso, integra un circuito electrónico con una memoria capaz de almacenar 3 bytes, uno por cada color. Para más información, puedes leer el datasheet o documentación para el modelo específico que hayas comprado, ya que puede haber variaciones.

Dónde comprar Neopixel

Si buscas comprar un Neopixel o elementos similares para tus proyectos DIY, puedes encontrarlos en algunas tiendas especializadas de electrónica o también en Amazon. Algunas recomendaciones al respecto son:

Integrar Neopixel con Arduino UNO

conexión Neopixel y Arduino UNO

Para integrar Neopixel, o cualquier otra marca, con tu placa Arduino y comenzar a crear código en Arduino IDE para poder controlar los colores e iluminación, vas a necesitar:

  • Placa Arduino UNO Rev3
  • Matriz de LEDs tipo Neopixel
  • Resistencia de 470 Ω
  • Condensador electrolítico de 1000 µF de 6.3V.
  • Protoboard
  • Cables de conexión
  • Alimentación de 5V a 1A y conector

La conexión entre la matriz Neopixel y Arduino UNO es como se aprecia en la imagen anterior. Una vez conectado, lo siguiente es comenzar con el código de Arduino IDE. En este caso tienes que usar una biblioteca llamada Adafruit NeoPixel que puedes descargar desde aquí, y comenzar a probar y modificar los ejemplos que vienen incluidos en ella. Por ejemplo, puedes comenzar con Simple, en el que obtendrías algo como:


#include <Adafruit_NeoPixel.h>    //Incluir la biblioteca

#define PIN 6   //Pin en el que has conectado el Neopixel

// Número de píxeles encadenados (en este caso 21, pero puedes modificarlo según necesites)
#define NUMPIXELS 21 

// Inicializamos el objeto "pixeles"
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
// Argumento 1 = Número de pixeles encadenados
// Argumento 2 = Número del pin de Arduino utilizado con pin de datos
// Argumento 3 = Banderas de tipo de pixel:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
//   NEO_RGBW    Pixels are wired for RGBW bitstream (NeoPixel RGBW products)

#define DELAYVAL 500 //timpo de espera en ms 

void setup() {
  pixels.begin(); // Inicializamos el objeto "pixeles"
}

void loop() {
  pixels.clear(); // Apagamos todos los LEDs

  // El primer pixel de una cadena es el #0, el segundo es el #1, y así sucesivamente hasta el n-1
  for(int i=0; i<NUMPIXELS; i++) { 
    
    // Modificamos el LED #i, encendiendolo con un color verde moderadamente brillante
    pixels.setPixelColor(i, pixels.Color(0, 150, 0));

    pixels.show();   // Mandamos todos los colores con la actualización hecha

    delay(DELAYVAL); // Pausa antes de modificar el color del siguiente LED
  }
}


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.