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

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Composants et fournitures

Composant Quantité
LED RGB programmable APA106, 8 mm 288
Arduino UNO 1
Fil de cuivre étamé 22 AWG 1
Anneaux métalliques 8 pouces (≈20 cm) de diamètre 12
Tiges acryliques 12 pouces (≈30 cm) 10

Outils et machines nécessaires

Applications et services en ligne

À propos de ce projet

L'inspiration vient des nombreuses courbes créées par l'intersection d'un cylindre et d'un plan ! Je voulais créer un spectacle lumineux LED, mais j'avais déjà construit plusieurs cubes LED récemment. Je cherchais quelque chose de différent, tant au niveau matériel que logiciel. Ce cylindre/tour offre un environnement de programmation tout aussi riche qu'un cube, mais distinctement différent !

J'ai choisi des LED APA106 programmables de 8 mm. Elles sont plus chères que des LED RGB classiques, mais beaucoup plus faciles à utiliser : pas de registres à décalage, tout est contrôlé par deux lignes de données. Pas de routine d'interruption (ISR) ni de multiplexage entre couches – ces LED restent allumées en permanence.

J'ai construit mon cylindre/tour comme un empilement de 12 anneaux. Chaque anneau fait 8" (≈20 cm) de diamètre et contient 24 LED espacées d'environ 1" (en réalité π × 8 / 24). Les anneaux sont espacés de 1", donc les LED sont à 1" dans les deux directions. Des tiges acryliques maintiennent les anneaux ensemble pour former la tour.

Les LED APA106 peuvent consommer 60 mA à luminosité maximale en blanc, soit 17 A au pire cas pour 288 LED ! Mais elles sont si lumineuses que je règle rarement la luminosité logicielle au-dessus de 10 %. Et la tour n'est jamais toute blanche. En pratique, l'alimentation USB suffit. Pour une alimentation externe, 2 A semblent suffisants.

Construction

J'ai trouvé des anneaux métalliques de 8" de diamètre sur Amazon, parfaits comme base. Bonne surprise : on peut souder dessus facilement ! « Facilement » est relatif : l'anneau est lourd et demande beaucoup de chaleur. Mon fer 40W était au maximum et il fallait 5-10 secondes avant que la soudure fonde. J'étamais d'abord l'anneau avant de souder une LED, et j'utilisais toujours des dissipateurs à pince sur les pattes des LED.

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Avant de souder, il faut former les pattes de 24 LED par anneau selon le schéma ci-dessous :

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Lors du formage, je fais une petite courbe à l'extrémité de la patte de masse (GND) pour l'identifier facilement et faciliter sa fixation sur l'anneau.

Autre préparation : marquer 24 positions régulières sur l'anneau pour placer les LED. J'ai aussi eu besoin de maintenir l'anneau verticalement pendant le soudage. J'ai utilisé le montage ci-dessous :

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Une fois quelques LED soudées, il faut relier les entrées data-in aux sorties data-out comme indiqué ci-dessous. Les dissipateurs à pince protègent toujours les LED.

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Une fois toutes les LED en place, on obtient une entrée data-in pour l'anneau complet, et une sortie data-out opposée prête pour l'anneau suivant. On relie ensuite toutes les alimentations +5V avec un fil de cuivre étamé 22 AWG redressé (26" ≈ 66 cm). On redresse le fil en bloquant une extrémité dans un étau et en tirant fort avec une pince sur l'autre. On le fixe ensuite aux LED comme montré :

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Une fois l'anneau fini, on le teste avec le sketch de test fourni. C'est crucial : bien plus facile de corriger une LED défectueuse ou une soudure froide maintenant qu'une fois la tour assemblée ! Le test se fait en reliant l'entrée data-in libre à la broche 6 de l'UNO. Le sketch de test inclus diffère légèrement de celui de la vidéo mais permet de vérifier le bon fonctionnement.

Il faut maintenant faire 11 autres anneaux. C'est beaucoup de travail, mais avec un peu de pratique, on descend à quelques heures par anneau.

Important : Les LED de chaque anneau doivent s'aligner avec leurs homologues sur les autres anneaux. Si l'espacement est parfait, pas de souci. Mais j'avais de légères variations, donc j'ai utilisé un anneau comme gabarit pour les autres, en plaçant toujours l'entrée data-in libre au même endroit. (Si vous regardez de près ma tour, les deux premiers anneaux ne s'alignent pas bien. Après, j'ai utilisé la méthode du gabarit avec un bien meilleur résultat.)

Une fois au moins 4 anneaux construits, on commence l'assemblage de la tour. L'assemblage initial des 4 anneaux inférieurs est la partie la plus critique : on ne veut pas créer une Tour de Pise ! Pour espacer les anneaux de 1" (22 mm), j'ai utilisé des entretoises imprimées en 3D (du bois de 1/4" ferait l'affaire). Du BlueTack maintient les entretoises en place.

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Six tiges acryliques de 12" maintiennent les anneaux entre eux. Il est crucial de tout positionner exactement avant de coller : une fois la colle chaude appliquée, impossible de modifier. On couche la tour sur le côté et on colle les tiges aux anneaux. La photo montre les 4 premiers anneaux avec les 3 premières tiges. 3 autres ont été ajoutées (6 total), placées entre les LED avec 4 LED entre chaque tige.

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Une fois toutes les tiges collées, on retire les entretoises (réutilisables pour les anneaux suivants). Quand les 12 anneaux sont en place, on relie les lignes de masse, +5V et data entre anneaux avec du fil 22 AWG. Les rails d'alimentation sont mis en parallèle sur les 12 anneaux.

Il y a deux lignes de données, chacune pour 144 LED : une pour les 6 anneaux du haut (vers broche 6 de l'UNO) et une pour les 6 du bas (vers broche 7). Chaque ligne part de l'anneau le plus bas et remonte vers le haut. J'avais prévu une seule ligne, mais à partir de l'anneau 8, des flashs parasites apparaissaient. J'ai cru à un problème d'alimentation, mais ajouter des condensateurs n'a pas aidé. Diviser en deux lignes de données a résolu le problème.

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan
Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Ci-dessus, la tour finie. L'Arduino UNO est installé à la base, suspendu par mes 4 tiges acryliques restantes collées à chaud. Une alternative serait de monter la tour sur un socle avec l'UNO à l'intérieur. 4 connexions vers l'UNO : masse et +5V (communs aux 12 anneaux) et les deux lignes de données vers broches 6 et 7.

Logiciel

Les LED programmables comme l'APA106 sont faciles grâce aux bibliothèques gérant le timing des impulsions de données. Pour mes projets précédents (cube RGB 5x5x5 et projet art triangle), j'utilisais la bibliothèque NeoPixel d'Adafruit. Pour cette tour, j'ai choisi FastLED : nombreuses fonctionnalités, fonctions mathématiques rapides, palette arc-en-ciel 256 étapes (au lieu de mes 43 étapes artisanales), centaines de fonctions, palettes prédéfinies, et gestion aisée des fondues (fades).

J'ai créé une fonction setColor(row, column, color) pour adresser facilement une LED : row = numéro d'anneau, column = position sur l'anneau. Cette routine gère la conversion vers la bonne ligne de données et la position dans la chaîne.

FastLED propose une classe objet pour toutes les couleurs web nommées : CRGB::HotPink. Mais les membres de classe sont fastidieux à taper et passer en paramètre. J'ai utilisé des #define pour créer une petite palette de noms de couleurs utilisables directement.

Une autre fonction définit la couleur d'une LED via une teinte de palette arc-en-ciel (0-255). Entre ces deux fonctions, je peux spécifier 10 couleurs nommées ou générer une palette arc-en-ciel fluide pour n'importe quelle LED.

Fonction de base : rotate(ring, direction) fait tourner le contenu d'un anneau d'un pas. Utilisable pour faire tourner toute la tour, ou des parties en sens opposés, créant de nombreux effets.

FastLED supporte nativement l'APA106 : la configuration est automatique en spécifiant simplement le type de LED. Avec NeoPixel, j'avais dû expérimenter pour trouver les bons paramètres.

L'un des effets les plus intéressants est l'intersection cylindre-plan. Au début, je voulais le calculer en temps réel par les maths. Mais l'UNO est-il assez rapide ? Faire des tables s'est avéré simple. Cette table allume l'intersection d'un plan avec la tour à 18 angles différents, avec hauteur variable. On la voit à plusieurs endroits dans le spectacle.

J'ai utilisé la même approche pour des intersections cylindre-sphère. Moins efficace que le plan, mais un effet du spectacle l'utilise. Les deux tables sont stockées en mémoire programme (PROGMEM) pour ne pas consommer de RAM.

Trois sketches pour l'UNO sont inclus :

  1. Test rapide pour un seul anneau.
  2. Aperçu de 45 secondes du spectacle.
  3. Spectacle complet de 8 minutes avec 16 effets/animations différents.

Tous sont montrés en vidéo dans cet article (le test d'anneau diffère légèrement de la vidéo).

Dernier point logiciel : à la fin de la boucle principale, j'ai ajouté un reset logiciel. Pas élégant, mais nécessaire : un bug quelque part fait planter le programme après plusieurs passages. Probablement quelque chose qui ne se dépile pas correctement de la RAM. Peut-être un problème dans FastLED. Je ne l'ai jamais trouvé, et le reset logiciel assure un fonctionnement fluide.

Code

No preview (download only).

Schémas

Tour LED Art : Cylindre RGB programmable inspiré des intersections cylindre-plan

Processus de fabrication

  1. Technologie des éoliennes : histoire, conception et impact futur
  2. Construisez votre propre LUMAZOID : Visualiseur musical DIY Arduino
  3. Jeu UFO Attack DIY avec Arduino UNO et Afficheur MAX7219
  4. Créer votre propre jeu de roulette à 37 LED avec Arduino Nano
  5. Projet Arduino : Mélodie "Coffin Dance" — Construire et jouer le tube viral
  6. Horloge 3D RGB Arduclock – Montre LED Bluetooth avec horloge temps réel
  7. Surveillance de la Qualité de l'Eau : Système Arduino MKR1000 pour Rivières et Lacs
  8. Construire un Iron Man animé avec Arduino : capteurs, sons et relais
  9. Jeu interactif joystick + LEDs avec Arduino