Table des matières:

WS2811 WebLights - Prenez le contrôle de vos lumières du Nouvel An ! : 8 étapes
WS2811 WebLights - Prenez le contrôle de vos lumières du Nouvel An ! : 8 étapes

Vidéo: WS2811 WebLights - Prenez le contrôle de vos lumières du Nouvel An ! : 8 étapes

Vidéo: WS2811 WebLights - Prenez le contrôle de vos lumières du Nouvel An ! : 8 étapes
Vidéo: WebLights project. Playing file: sample3.bmp. 2024, Décembre
Anonim
WS2811 WebLights - Prenez le contrôle de vos lumières du Nouvel An !
WS2811 WebLights - Prenez le contrôle de vos lumières du Nouvel An !

Comme toute pie qui se respecte, j'adore tous les trucs brillants et brillants.

Et définitivement, les guirlandes électriques à LED entrent dans cette catégorie.

Malheureusement, ces lumières viennent à mon attention alors que le Nouvel An vient de passer. Mais salut! J'espère que ce n'est pas notre dernière nouvelle année et que nous aurons suffisamment de temps pour mieux nous préparer à une nouvelle année !

Étape 1: De quoi s'agit-il ?

Ca parle de quoi?
Ca parle de quoi?

Il y a peu de temps, une guirlande lumineuse électrique ultime est apparue sur le marché.

Il s'agit d'une guirlande LED, où la couleur et la luminosité de chaque LED RVB peuvent être contrôlées individuellement avec la puce WS2811. Cette puce peut être implantée directement dans la LED. Ces LED peuvent être trouvées sous le nom APA106 sur www.aliexpress.com. Ils ressemblent à des LED RVB à 4 broches ordinaires avec une anode/catode commune, mais ils ne le sont pas ! Chaque LED APA106 contient une puce WS2811 intégrée, qui doit être programmée pour allumer la LED. Si vous achetez des LED APA106 sur Aliexpress, je vous conseille de les vérifier immédiatement - il n'est pas rare que le client ait une LED RVB habituelle à la place de l'APA106 !

De plus, ces puces WS2811 peuvent être emballées en tant que carte externe avec une LED RVB ordinaire qui y est attachée. Toutes ces lumières se présentent sous diverses formes et nombres.

La seule chose commune pour eux - ils ne s'allumeraient pas sans contrôleur.

Certaines modifications de la puce WS281x existent - elles jouent des couleurs aléatoires sans contrôleur, mais ce n'est pas intéressant pour nous car elles ne peuvent pas être programmées.

Étape 2: Pièces nécessaires

Pièces nécessaires
Pièces nécessaires

Les pièces pour le projet ont donc été commandées et sont finalement arrivées:

1) Bande WS2811 étanche à 2 x 50 LED. Ces bandes peuvent être connectées les unes aux autres pour augmenter le nombre de LED. Ils ne s'allumaient pas tout seuls, il fallait donc un contrôleur.

2) Une puce ESP8266 dans un facteur de forme très pratique: WeMos D1

J'aime cette planche - elle est très compacte et facile à manipuler.

3) Ce n'est pas nécessaire, mais ces pièces peuvent également être utiles:

- un récepteur IR TL1838

- petites cartes d'extension pour WeMos

- petit bouclier avec bouton pour WeMos

4) Ce serait une bonne idée d'avoir un puissant bloc d'alimentation 5v, car les bandes LED sont gourmandes en énergie - surtout si vous réglez tout sur blanc brillant.

Ce bloc d'alimentation peut bien faire: Alimentation 5v 8A. J'ai développé ce projet avec un bloc d'alimentation à partir d'un téléphone portable avec un courant de sortie de 1A. Cela fonctionne assez bien jusqu'à ce que vous augmentiez la luminosité. Au moins l'ESP8266, la bande LED et le bloc d'alimentation 5v 1A ont survécu à tous mes efforts.

Étape 3: Bla Bla Bla

Image
Image
L'idée
L'idée

Toutes les pièces sont enfin disponibles, mais qu'en faire ?

Programmer un ou plusieurs effets dans le contrôleur et c'est tout ? Trop simple.

Quelle est la différence avec toutes les guirlandes existantes ?

Comme vous pouvez le voir dans mon précédent projet public: PasswordKeeper - KISS pour les filles, nous ne cherchons pas la facilité !

L'idée des guirlandes doit donc être compliquée d'une manière ou d'une autre. J'espère pas jusqu'au point d'inutilisabilité;)

Il serait bon de permettre de contrôler le comportement de nos lumières d'une manière ou d'une autre.

Presque tout le monde avait maintenant une sorte de smartfone, qui peut se connecter à Internet.

ESP8266 est un module compatible WiFi. L'idée de contrôler les guirlandes avec une interface WEB vient donc assez naturellement de là.

Mais tout le monde n'est pas un geek informatique et serait capable de gérer la programmation et l'interface WEB. Quel dommage, Eh;) Donc, une télécommande infrarouge ordinaire peut être attachée pour commuter l'effet préprogrammé. Et si vous voulez être un simple mort - un bouton ferait l'affaire. Dans les deux derniers cas, vous auriez besoin d'un geek de toute façon pour programmer d'abord ces effets dans votre engin;)

Pour simplifier davantage la programmation des effets de lumière, j'ai ajouté le mode de lecture BMP.

Il suffit de jeter quelques lignes colorées sur une image dans n'importe quel éditeur graphique, d'enregistrer l'image au format BMP, de les charger sur le contrôleur et de sélectionner le mode de lecture BMP. Le contrôleur chargera le BMP dans la guirlande ligne par ligne avec un délai qui peut être programmé.

Sur cette page, vous voyez une image BMP avec 3 lignes de couleur et une vidéo, qui montrent à quoi ressemble cette image lorsqu'elle est lue par le contrôleur. Il montre comment vous pouvez créer votre propre modèle.

Et lorsque vous créez quelque chose d'agréable - soyez si gentil - partagez-le avec le reste de la communauté !

Étape 4: L'idée

La recherche rapide n'avait pas produit de projets similaires sur le net.

Évidemment, les peuples avaient plus important à faire que d'inventer un autre chindogu inutile.

Eh bien, corrigeons ce défaut.

L'idée est de créer un appareil capable de lire un script de texte pour produire divers effets sur les LED.

Ce script peut être facilement édité avec l'interface Web en ligne et un nouvel effet est immédiatement en place.

Bien sûr, cela peut être réalisé avec un langage de programmation ordinaire. Mais vous auriez besoin d'au moins un compilateur pour changer l'effet. Et si vous ne voulez pas allumer votre gros PC mais que vous vous ennuyez avec l'effet actuel ? Problème!

Mais cette complication peut être résolue si le contrôleur dispose d'un interpréteur de texte et que son entrée peut être modifiée en ligne.

J'ai donc créé une sorte de machine virtuelle et développé un langage d'oiseau que cette machine comprend. Ce logiciel, étant chargé dans ESP8266, permet de créer des algorithmes de commutation de LED assez compliqués.

Certains peuvent dire - "Utilisez LUA ou likes", mais je dis - "C'est trop facile!".

Ce projet a été inspiré par ma pie interne, donc le langage doit être celui de l'oiseau pour lui plaire !

Étape 5: Câblage

Câblage
Câblage

Je n'entrerai pas dans les détails sur l'installation et la configuration de l'IDE Arduino pour travailler avec ESP8266.

Il existe de nombreuses ressources sur le net où tous les processus sont expliqués dans les moindres détails.

Toutes les bibliothèques nécessaires sont mentionnées dans le document WebLights_En.rtf. Et fourni avec la source.

Le câblage est simple.

Le bouton et le récepteur IR ne sont pas nécessaires, mais pratiques.

Un appui long (6 secondes) sur le bouton réinitialise l'appareil à l'état par défaut et charge le script par défaut.

Les clics ordinaires basculent entre les effets (s'ils sont programmés dans le script) ou les fichiers BMP.

Si vous connectez un récepteur IR, vous pouvez affecter des effets aux boutons de la télécommande. Appuyez simplement sur le bouton IR, puis actualisez la page WebLights. Il existe une variable à 4 symboles sur la page Web, nommée code IR. Obtenez ce code et remplacez xxxx dans la commande (LLxxxxc:c) par celui-ci. Ensuite, chaque fois que ce code est trouvé sur le sous-programme IR, LL sera appelé.

Cette connexion est un peu barbare - il serait bon de mettre un levier de niveau 3v->5v entre l'ESP8266 et les lumières. Mais cela fonctionne aussi avec une connexion directe - si la ligne entre le contrôleur et la guirlande n'est pas trop longue.

Il y a un autre hack qui peut augmenter la stabilité - insérez n'importe quelle diode dans la ligne +5v qui alimente la première LED. Cela décalera un peu le niveau logique de l'une des premières LED.

Étape 6: Quelques mots sur le logiciel

Quelques mots sur le logiciel
Quelques mots sur le logiciel

La source complète de ce projet est fournie sur github.

Placez simplement le répertoire WebLights dans votre dossier de projets Arduino, ouvrez-le et sélectionnez Weblights.ino.

Copiez le contenu du dossier WebLights\libraries\ dans votre dossier de projets Arduino.

Construisez et chargez-le dans ESP8266.

Par défaut, l'appareil a démarré en mode AccessPoint.

Il crée des WebLights de réseau WiFi avec des Weblights de mot de passe. Entrez simplement n'importe quelle URL WEB et vous serez redirigé vers la page du contrôleur. Par exemple: wl.com.

Un script simple de dot running back et fors est également chargé sur l'appareil. J'ai fourni plusieurs scripts simples, que vous pouvez charger sur engin pour voir à quoi ils ressemblent. Vous pouvez les utiliser comme point de départ pour développer d'autres effets.

Étape 7: Tests de qualité

Tests de qualité
Tests de qualité

L'appareil a été impitoyablement testé sur de pauvres créatures sans défense et s'est avéré sûr.

Aucun animal n'a été blessé lors de ce test;)

Étape 8: Conclusion

Conclusion
Conclusion

Je serais ravi qu'une pie fasse des efforts (ou fasse des efforts) pour développer des scripts ou des images, qui produisent des effets visuels intéressants et les partagent avec la communauté dans ce fil.

Dessiner des images peut sembler facile, mais créer une image qui produit un effet lisse et intéressant peut ne pas être si simple.

Les pies ne sont pas des oiseaux de troupeau, mais pourquoi ne pas avoir un endroit où ils peuvent partager et échanger des trucs brillants (ou scripts/images) ? Je pense que ce fil peut faire parfaitement.

UPD:

Voici un site intéressant avec des patrons

Une vidéo de WebLights sur un arbre.

Conseillé: