Neopixel : qu'est-ce que c'est, à quoi ça sert et comment l'intégrer à vos projets

néopixel

Vous avez sûrement vu des fabricants montrer des projets utilisant ces ensembles de LED RVB à plus d'une occasion. Les applications de ces bandes peuvent aller d'une simple décoration qui peut changer de couleur en fonction d'un événement extérieur, à être utilisées pour des courses de lumières, et bien plus encore. C'est pourquoi, dans cet article, nous vous présenterons toutes les informations les plus importantes que vous devriez connaître sur le néopixel et comment il peut être intégré et contrôle avec Arduino.

Qu'est-ce que le Néopixel ?

Anneau LED RVB

Neopixel n'est rien de plus qu'une marque déposée d'Adafruit Industries. Cependant, le terme générique pour ces composants est LED RVB adressables individuellement (ex : SK6812, WS2811, WS2812,…). En d'autres termes, c'est un circuit logique avec ces lumières colorées qui va agir à la suite d'un signal de commande, afficher des couleurs différentes, effectuer certaines séquences de mise sous tension, etc.

Il est important que vous sachiez que chacune des LED RVB qui composent la matrice utilise 4 broches ou connecteurs, donc votre brochage est la suivante:

  • 5V : alimentation haut niveau.
  • GND : niveau bas de puissance ou masse.
  • DIN : broche pour recevoir les informations de couleur.
  • FAIRE : épingler pour envoyer des informations sur les couleurs.

En plus de cela, il intègre un circuit électronique avec une mémoire capable de stocker 3 octets, un pour chaque couleur. Pour plus d'informations, vous pouvez lire la fiche technique ou la documentation du modèle spécifique que vous avez acheté, car il peut y avoir des variations.

Où acheter Neopixel

Si vous êtes acheter un neopixel ou des éléments similaires pour vos projets de bricolage, vous pouvez les trouver dans certains magasins d'électronique spécialisés ou également sur Amazon. Certaines recommandations à cet égard sont les suivantes :

Intégrez Neopixel avec Arduino UNO

Connexion Neopixel et Arduino UNO

Pour intégrer Neopixel, ou toute autre marque, à votre carte Arduino et commencez à créer du code dans l'IDE Arduino pour pouvoir contrôler les couleurs et l'éclairage, vous aurez besoin de :

  • Plaque Arduino UNO Rév3
  • Matrice LED de type néopixel
  • 470 résistance Ω
  • Condensateur électrolytique 1000 µF 6.3V.
  • Protoboard
  • Câbles de connexion
  • Alimentation et connecteur 5V à 1A

La connexion entre la matrice Neopixel et Arduino UNO C'est comme on le voit dans l'image précédente. Une fois connecté, la prochaine chose est de commencer par le Code IDE Arduino. Dans ce cas, vous devez utiliser une bibliothèque appelée Adafruit NeoPixel que vous pouvez télécharger ici, et commencez à tester et à modifier les exemples qui l'accompagnent. Par exemple, vous pouvez commencer par Simple, où vous obtiendrez quelque chose comme :

#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
  }
}


Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.