Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Animations LED contrôlées par le Web avec Raspberry Pi et Arduino

Composants et fournitures

Raspberry Pi 3 Modèle B
× 1
Arduino UNO
Arduino Nano peut également être utilisé. Arduino Mega peut être nécessaire pour piloter plus de pixels LED.
× 1
Bande NeoPixel
Toute bande LED WS8212 peut être utilisée.
× 1

Applications et services en ligne

Arduino IDE

À propos de ce projet

Présentation du projet

Arduino Light Animation (ALA) est une bibliothèque Arduino pour contrôler les LED et exécuter des animations colorées avec un minimum d'effort. La bibliothèque propose plus de 30 animations prédéfinies et plusieurs palettes de couleurs. Pour plus d'informations sur la bibliothèque ALA, vous pouvez visiter mon blog.

Ce projet introduit une carte Raspberry Pi 3 qui fournira une page Web permettant de contrôler les animations, les couleurs et la vitesse à partir d'un smartphone ou d'un PC à l'aide du navigateur Web. Voici une courte vidéo d'AlaWeb en action.

Il y a peu de composants nécessaires pour ce projet.

  • WS8212 Ruban LED RVB :Cette bande contient plusieurs LED RVB qui peuvent être adressées individuellement à l'aide d'une interface à un fil, vous permettant un contrôle total sur la couleur de chaque LED RVB.
  • Arduino :La fameuse carte microcontrôleur exécutera ma bibliothèque ALA pour piloter la bande LED recevant les commandes du Raspberry PI via le port série USB. Vous pouvez utiliser les cartes Arduino Uno, Nano et Mega.
  • Framboise PI :Ce petit PC fournira la page Web pour contrôler les paramètres d'éclairage et d'animation.

Le projet est assez simple si vous connaissez les cartes Arduino et Rapberry PI. J'ai divisé le projet en deux étapes pour vous guider tout au long du processus d'installation.

Câblage

Les bandes LED WS8213 sont très faciles à connecter. Vous avez juste besoin de suffisamment de puissance pour piloter toutes ces LED. Pour les bandes très courtes (pas plus de 10 LED), vous pouvez même les alimenter directement depuis votre port USB mais pour les bandes plus longues, vous devez fournir une bonne source d'alimentation. Comme point de départ, je suggère d'utiliser la broche Arduino 5V pour alimenter la bande LED comme vous pouvez le voir dans la vidéo ci-dessus.

  • Broche Arduino GND vers WS2812 GND
  • Broche Arduino 5V vers WS2812 5V
  • Broche Arduino 6 à WS2812 Broche Ctrl/Din

Si vous voulez piloter plus de pixels, vous devez fournir plus de puissance. Le calcul est facile. Chaque LED RVB consomme 60 mA en blanc brillant. Par exemple, pour piloter une bande de 2 m de long avec 60 LED/mètre vous aurez besoin d'une alimentation 5V fournissant 2m * 60pixel/m * 60mA =7,2 A.

Connectez votre alimentation, la carte Arduino et la bande WS8212 comme ceci.

  • Alimentation GND vers Arduino GND et WS2812 GND
  • Alimentation 5V vers broche Arduino 5V et WS2812 5V
  • Broche Arduino 6 à broche CTRL WS2812

Notez qu'en alimentant la broche Arduino 5V, vous alimentez Arduino, vous n'avez donc pas besoin de le connecter à une deuxième source d'alimentation sur le connecteur cylindrique. Soyez très prudent lorsque vous utilisez ce schéma de connexion car la broche 5V contourne le régulateur de tension et les protections. Pour plus de détails, vous pouvez lire ce guide.

Pour plus de détails sur le schéma de câblage des bandes LED WS8212, lisez ce guide.

Configuration Arduino

Connectez votre carte Arduino au port USB de votre PC. Ouvrez l'IDE Arduino et lancez le gestionnaire de bibliothèque (Esquisse > Inclure la bibliothèque > Gérer les bibliothèques) pour installer la dernière bibliothèque ALA .

Ouvrez le RgbStripSerial exemple (Fichiers> Exemples> ALA> RgbStripSerial) et vérifiez que NUM_PIXELS la définition constante correspond au nombre de leds dans votre bande RVB. N'oubliez pas que si vous souhaitez piloter plus de 10 pixels, vous devez utiliser le schéma de connexion amélioré.

Vous pouvez maintenant télécharger le croquis sur votre tableau en appuyant sur Ctrl+U depuis l'IDE Arduino ou en sélectionnant Télécharger action dans le menu Esquisse. Si vous rencontrez des problèmes pour télécharger le croquis, vérifiez le type de carte et le port dans le menu Outils.

Ouvrez le moniteur série Arduino (Outils> Moniteur série) et vous verrez un message de bienvenue comme celui-ci.

Définissez la ligne « Newline » se terminant en bas à droite et assurez-vous que le débit en bauds est défini sur 9 600.

Essayez maintenant les commandes suivantes (en gras) sans espaces :

  • A=101 - allumer les leds
  • A=251 - lancer une animation « scanner larson »
  • P=2 - définit une palette arc-en-ciel
  • A=242 - une autre animation

C'est cool, non ?

Vous pouvez expérimenter les différentes commandes et combinaisons en suivant cette courte référence :

  • A=[code animation] - Définir l'animation. Les codes d'animation disponibles sont répertoriés dans le fichier d'en-tête AlaLed.h.
  • B=[luminosité] - Réglez la luminosité. Il doit être compris entre [0-100].
  • D=[durée] - Définir la durée en millisecondes du cycle d'animation. Les valeurs standard sont comprises entre 500 et 5 000.
  • C=[couleur] - Réglez la couleur. Il doit s'agir d'une représentation RVB hexadécimale comme E8A240.
  • P=[palette] - Réglez la palette. Il doit être compris entre [0-5].

Permet maintenant de contrôler les animations depuis votre smartphone.

Configuration du Raspberry PI

Dans cette partie du projet, nous allons configurer la carte Rapberry Pi pour exécuter un petit serveur Web afin de contrôler la bande LED à partir d'un navigateur Web. Notez que la même application peut fonctionner sur n'importe quel PC avec Python 3 installé.

La condition préalable est que votre Raspberry PI soit déjà configuré et exécute le dernier système d'exploitation Raspbian (je l'ai testé avec Stretch) et connecté à Internet.

Nous devons d'abord installer quelques bibliothèques pour Python 3 avec la commande suivante :

sudo pip3 installe un flacon pyserial 

Créez un répertoire personnel pour votre projet :

mkdir /home/pi/AlaWebcd /home/pi/AlaWeb 

Téléchargez le référentiel git AlaWeb dans le répertoire LightStrip et extrayez-le.

wget https://github.com/bportaluri/AlaWeb/archive/master.zipunzip master.zip 

Tout le logiciel est maintenant prêt et configuré. Connectez le port USB Arduino au Raspberry PI. L'application AlaWeb que vous venez de télécharger communiquera avec la carte Arduino via la connexion série USB.

cd AlaWeb-mastersudo python3 AlaWeb.py 

L'application AlaWeb listera tous les ports série USB et essaiera de détecter Arduino automatiquement. S'il continue de boucler, interrompez l'exécution et essayez de transmettre le nom du port comme suit (en remplaçant l'identifiant du port si nécessaire) :

 sudo python3 AlaWeb.py /dev/ttyACM0 

Si tout va bien, vous devriez voir quelque chose comme ça.

Ouvrez un navigateur Web et connectez-vous à l'URL affichée. Vous obtiendrez une page Web pleine de boutons permettant de contrôler la bande LED depuis un navigateur Web.

Profitez-en !

Code

AlaWeb
AlaWeb est le serveur Web Tini écrit en Python et Flask pour contrôler les animations à partir d'un navigateur Web.https://github.com/bportaluri/AlaWeb
ALA
Arduino Light Animation (ALA) est une bibliothèque de cartes Arduino pour simplifier le développement d'animations lumineuses à l'aide de LED et de bandes LED. Visitez cette page pour plus de détails :http://yaab-arduino.blogspot.it/p/ala.htmlhttps ://github.com/bportaluri/ALA

Schémas


Processus de fabrication

  1. Créez un détecteur d'incendie en quelques minutes avec Samsung SAMIIO, Arduino UNO et Raspberry Pi
  2. Aéroponie avec Raspberry Pi et capteur d'humidité
  3. Créer des robots avec Raspberry Pi et Python
  4. Créez votre robot de streaming vidéo contrôlé par Internet avec Arduino et Raspberry Pi
  5. Robot contrôlé par le Web Raspberry Pi avec vidéo
  6. Panneau LCD avec Arduino pour Flight Simulator
  7. Switch/Panneau LED avec Arduino pour FS2020
  8. Arduino avec Bluetooth pour contrôler une LED !
  9. Arduino quadrupède