Table des matières:

Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels): 6 étapes (avec images)
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels): 6 étapes (avec images)

Vidéo: Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels): 6 étapes (avec images)

Vidéo: Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels): 6 étapes (avec images)
Vidéo: Horloge RVB design pour moins de 10€ 2024, Novembre
Anonim
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels)
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels)
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels)
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels)
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels)
Meilleures LED RVB pour tout projet (WS2812, Aka NeoPixels)

Lorsque nous travaillons avec des LED, nous aimons souvent contrôler leur état (marche/arrêt), leur luminosité et leur couleur. Il existe de nombreuses façons de procéder, mais aucune n'est une solution aussi compacte que la LED RVB WS2812. Dans son petit boîtier de 5 mm x 5 mm, le WS2812 comprend 3 LED super lumineuses (rouge, verte et bleue) et un circuit pilote compact (WS2811) qui ne nécessite qu'une seule entrée de données pour contrôler l'état, la luminosité et la couleur des 3 LED. Au détriment d'une seule ligne de données pour contrôler 3 LED, il y a une demande pour une synchronisation très précise dans la communication avec le WS2811. Pour cette raison, un microcontrôleur en temps réel (par exemple, AVR, Arduino, PIC) est requis. Malheureusement, un micro-ordinateur basé sur Linux ou un microcontrôleur interprété tel que Netduino ou Basic Stamp ne peut pas fournir la précision de synchronisation suffisante nécessaire. Et donc, dans ce Instructable, je parcoure le processus de configuration et de contrôle de l'une de ces LED avec un Arduino Uno. Ensuite, je montre à quel point il est facile de connecter plusieurs d'entre eux ensemble pour un affichage lumineux impressionnant !

Étape 1: Liste des matériaux

Liste des matériaux
Liste des matériaux

Cette merveilleuse LED RVB est livrée dans un emballage 5050 (5 mm x 5 mm) avec 6 pastilles assez faciles à souder sur une carte de dérivation. Comme le seul composant supplémentaire nécessaire est un condensateur de découplage, le WS2812 offre honnêtement la meilleure solution pour contrôler la couleur et la luminosité d'une LED RVB. Le pilote de LED à courant constant intégré (WS2811) est remarquablement utile pour deux raisons: - Un courant constant de ~18mA pilotera chaque LED même si la tension varie. - Il n'est pas nécessaire d'ajouter des résistances de limitation de courant (ou résistances d'arrêt) entre l'alimentation et les LED. Tout ce dont nous avons besoin, c'est d'une conception très simple pour fournir l'alimentation, la terre et 1 entrée de contrôle afin de créer un affichage d'éclairage impressionnant composé non pas d'une, mais de toute une gamme de LED RVB. C'est exact! En connectant la broche Data Out d'une de ces LED, à la broche Data In d'une autre, nous pouvons les piloter toutes les deux indépendamment avec la même entrée de contrôle ! Si ce n'est pas évident comment faire cela, ne vous inquiétez pas, à la fin de ce Instructable, vous serez sur la bonne voie pour ajouter WS2812 à n'importe quel projet que vous voulez ! Pour ce Instructable, voici ce que nous allons utiliser:Matériaux: 3 x LED WS2812 RVB (pré-soudées sur une minuscule carte de dérivation) 1 x fil de base solide sans soudure (couleurs assorties; 28 AWG) 1 x Arduino Uno R3 1 x Connecteur à broche sécable, pas de 0,1", 8 broches mâle (angle droit) 1 x connecteur à broche, pas de 0,1", 8 broches femelle (angle droit) 1 x connecteur à broche sécable, pas de 0,1", 8 broches MaleTools: PC USB A/B Cable Wire Stripper Fer à souderRemarques: Selon votre projet, les LED WS2812 RGB sont également disponibles sans carte de dérivation pour environ 0,40 $ chacune, mais la commodité de l'option pré-soudée est attrayante pour les applications simples.

Étape 2: connexion des en-têtes de broche

Connexion des en-têtes de broche
Connexion des en-têtes de broche
Connexion des en-têtes de broche
Connexion des en-têtes de broche
Connexion des en-têtes de broche
Connexion des en-têtes de broche

Avec tous les matériaux énumérés à l'étape précédente, il est assez simple d'allumer une LED RVB WS2812. Tout d'abord, nous voulons préparer les Breakout Boards WS2812 pour les placer sur la maquette sans soudure. Pour ce faire, nous utilisons un coupe-fil (la plupart des outils de coupe courants fonctionneront tout aussi bien) pour séparer chaque bande de 8 broches en 2 pièces de 3 broches. Gardez à l'esprit que faire la coupe est un peu délicat; Souvent, j'ai essayé d'utiliser la rainure entre deux en-têtes mâles comme guide pour la coupe, et j'ai fini par cisailler trop de plastique d'un en-tête que je voulais garder. En "sacrifiant" la goupille là où nous voulons faire la coupe, nous évitons complètement le problème. À l'aide d'une pince, nous retirons la goupille où nous voulons couper (dans ce cas, la 4e et la 8e broche). Une fois les broches retirées, nous pouvons facilement couper le milieu des en-têtes maintenant vides. Cette technique fonctionne aussi bien avec l'en-tête femelle. Après avoir fait levier et coupé, nous devrions avoir 6 connecteurs à 3 broches, c'est-à-dire 2 x standard et 4 x à angle droit (2 x mâle, 2 x femelle). À l'aide d'un fer à souder, nous pouvons maintenant connecter les broches à chacune des trois cartes de dérivation de la manière suivante. Une carte doit avoir les 2 en-têtes standard, tandis que les deux autres cartes doivent avoir chacune 1 x en-tête à angle droit. Sur la carte qui aura les en-têtes de broches standard, nous plaçons les broches sur la surface inférieure de la carte (le côté opposé à l'endroit où se trouve la LED). Sur les deux autres, les en-têtes à angle droit (un de chaque genre) peuvent être placés sur la surface supérieure ou inférieure. A noter qu'il est important d'être cohérent, d'une planche à l'autre, sur le placement des en-têtes mâle et femelle. Il est utile d'utiliser le condensateur de montage en surface pour orienter les cartes; en utilisant ceci comme référence, l'embase mâle doit être soudée à l'extrémité la plus proche du condensateur. Une fois les broches soudées, nous sommes prêts à connecter l'une d'entre elles à l'Arduino !

Étape 3: connexion de la carte de dérivation WS2812 à un Arduino

Connexion de la carte de dérivation WS2812 à un Arduino
Connexion de la carte de dérivation WS2812 à un Arduino
Connexion de la carte de dérivation WS2812 à un Arduino
Connexion de la carte de dérivation WS2812 à un Arduino
Connexion de la carte de dérivation WS2812 à un Arduino
Connexion de la carte de dérivation WS2812 à un Arduino

Dans cette étape, nous allons établir les connexions nécessaires entre un Arduino et l'une de nos cartes de dérivation WS2812. À cette fin, nous utiliserons la planche à pain sans soudure et 3 câbles de démarrage. Si vous utilisez une bobine de fil, il est maintenant temps de couper 3 morceaux, chacun d'environ 4 de long. Nous pouvons maintenant placer le panneau de dérivation WS2812 (celui avec les en-têtes standard) à travers le diviseur de notre planche à pain. que l'Arduino est déconnecté à la fois d'une source d'alimentation et de l'USB, nous allons procéder au câblage des connexions. Sur la face inférieure de la carte de dérivation WS2812, nous pouvons trouver le nom de chaque broche: VCC, DI (DO), GND. Ceci comme guide, nous procédons à la connexion des broches 5V et GND de l'Arduino aux broches VCC et GND de la carte WS2812, respectivement, puis nous connectons la broche 8 du côté numérique de l'Arduino à la broche DI de la carte WS2812, qui est la broche centrale du côté le plus proche du condensateur. Maintenant, nous sommes prêts à charger notre programme sur l'Arduino et à faire clignoter le WS2812 !

Étape 4: le faire clignoter avec l'IDE Arduino

Le faire clignoter avec l'IDE Arduino
Le faire clignoter avec l'IDE Arduino
Le faire clignoter avec l'IDE Arduino
Le faire clignoter avec l'IDE Arduino

Je suppose que vous avez déjà installé l'IDE Arduino sur votre ordinateur --- de nombreux guides sur le Web expliquent assez bien le processus. Le programme que nous devrons charger sur notre Arduino peut être téléchargé ici. Après, nous pouvons simplement double-cliquer sur le fichier primer.ino dans le micrologiciel> exemples> dossier primer pour le charger sur l'IDE Arduino (écrit pour la version 1.0.5). Le package comprend les bibliothèques nécessaires à la compilation du code, il ne devrait donc pas y avoir d'erreurs, veuillez poster un commentaire si vous rencontrez des problèmes de compilation. Après avoir sélectionné le type de carte Arduino et le port USB à l'aide de l'option de menu Outils, téléchargez le code et le WS2812 devrait commencer à clignoter en alternant entre rouge, vert et bleu. La caractéristique la plus intéressante de ces LED RVB WS2812 est qu'elles peuvent être « connectées en guirlande » assez facilement pour créer de longues bandes et des matrices contenant bon nombre de ces LED. Dans l'étape suivante, nous faisons précisément cela avec les 3 planches que nous avons préparées.

Étape 5: Faire une bande de LED RVB

Faire une bande de LED RVB
Faire une bande de LED RVB
Faire une bande de LED RVB
Faire une bande de LED RVB

Le circuit de commande de LED intégré (WS2811) permet de « chaîner en guirlande » une LED à la suivante en utilisant seulement 1 ligne de données (!). En connectant la sortie de données d'un WS2812 à l'entrée de données d'un autre, nous pouvons contrôler la luminosité et la couleur d'un ensemble complet de LED jusqu'à 500 sur un Arduino ! Bien sûr, pour piloter de nombreuses LED, certaines considérations s'imposent: - Chaque pixel consomme jusqu'à 60 mA (le blanc à pleine luminosité nécessite que toutes les LED soient allumées, chaque consommation ~20 mA). - Un Arduino maximisera sa RAM en pilotant 500 LED à un taux de rafraîchissement de 30 Hz. - Pour connecter deux cartes ensemble, la séparation maximale recommandée est de 6" pour éviter les chutes de puissance et la corruption des données. Avec ces considérations à l'esprit, nous pouvons piloter toutes les LED en utilisant une résolution de couleur de 24 bits, à des niveaux de luminosité cohérents, et assez résistant aux changements sur les (petits) changements de puissance de la batterie. en-têtes d'angle. Ensuite, avec notre carte Arduino déconnectée de l'alimentation et de l'USB, nous plaçons l'extrémité mâle de la chaîne à deux cartes sur la planche à pain sans soudure. Nous nous assurons que les broches s'alignent avec celles de la carte de dérivation WS2812 qui était connectée à la planche à pain. déjà. Un tel alignement aura les broches VCC et GND de la carte d'en-tête droite et de la chaîne sur la même rangée de la planche à pain. Nous plaçons la chaîne à deux cartes près de la fin de la troisième carte de dérivation qui est opposée au condensateur. UNE près que tout soit connecté, nous pouvons lancer l'IDE Arduino et utiliser l'éditeur de texte pour changer la définition "#define NUM_LEDS 1" en "#define NUM_LEDS 3". Après avoir reconnecté la carte à l'alimentation et/ou à l'USB, nous pouvons télécharger le nouveau programme… et… BAM ! Les trois LED devraient clignoter comme ça !

Étape 6: Dans les ténèbres, que la lumière soit

Dans les ténèbres, que la lumière soit !
Dans les ténèbres, que la lumière soit !
Dans les ténèbres, que la lumière soit !
Dans les ténèbres, que la lumière soit !

Ce Instructable vous a rapidement montré comment utiliser la LED WS2812 RVB pré-soudée sur de minuscules cartes de dérivation. Nous avons utilisé un Arduino pour contrôler la luminosité et la couleur des LED. Une chose qui était légèrement décevante, c'est que le code que nous avons utilisé faisait clignoter toutes les LED en même temps, avec la même intensité et la même couleur. Ce mode de fonctionnement ne présente pas tout le potentiel du pilote de LED « intelligent » (WS2811) intégré dans ce package. Et donc, essayons les modifications suivantes au code d'origine. Comme précédemment, vous allez télécharger et décompresser le fichier, puis ouvrir le firmware à charger sur l'Arduino (firmware > effects > effects.ino). Tous les fichiers nécessaires à cette démo sont inclus, il n'est donc pas nécessaire d'ajouter des bibliothèques tierces; le code devrait compiler sans aucune modification --- il est déjà configuré pour gérer les 3 LED. Maintenant, c'est à votre imagination de concevoir le prochain projet où ces LED RVB très utiles et compactes peuvent briller de leurs lumières. N'hésitez pas à poster certaines de vos propres créations en utilisant le WS2812 dans la section commentaires !

Conseillé: