Table des matières:

Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino : 7 étapes (avec photos)
Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino : 7 étapes (avec photos)

Vidéo: Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino : 7 étapes (avec photos)

Vidéo: Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino : 7 étapes (avec photos)
Vidéo: Arduino Compatible Led Cube RGB 8x8x8 Palta Style 2024, Juillet
Anonim
Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino
Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino
Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino
Comment construire un cube LED 8x8x8 et le contrôler avec un Arduino

Modification de janvier 2020:

Je laisse cela de côté au cas où quelqu'un voudrait l'utiliser pour générer des idées, mais il ne sert plus à rien de construire un cube basé sur ces instructions. Les circuits intégrés de pilote de LED ne sont plus fabriqués et les deux croquis ont été écrits dans d'anciennes versions d'Arduino et de Processing et ne s'exécutent plus. Je ne sais pas ce qu'il faut changer pour qu'ils fonctionnent. De plus, ma méthode de construction a donné lieu à un gâchis déséquilibré et bancal. Ma suggestion est de suivre les instructions sur un autre instructable ou d'acheter un kit. Ce cube coûtait environ 50 $ en 2011, vous pouvez acheter un kit sur ebay pour environ 20 $ maintenant.

Présentation originale:

Il y a beaucoup de cubes LED sur Instructables, alors pourquoi en faire un autre ? La plupart sont pour des petits cubes constitués de 27 ou 64 LED, rarement plus gros car limités au nombre de sorties disponibles sur le microcontrôleur. Ce cube sera composé de 512 LED et n'aura besoin que de 11 fils de sortie de l'Arduino. Comment est-ce possible? En utilisant le pilote de LED Allegro Microsystems A6276EA.

Je vais vous montrer comment j'ai fait le cube lui-même, la carte contrôleur et enfin le code pour le faire briller.

Étape 1: Matériaux

Matériaux
Matériaux

Toutes les pièces dont vous aurez besoin pour construire le cube: 1 Arduino/Freeduino avec puce Atmega168 ou supérieure 512 LED, la taille et la couleur dépendent de vous, j'ai utilisé des puces de pilote de LED 4 A6276EA rouges de 3 mm d'Allegro 8 transistors NPN pour contrôler le flux de tension, j'ai utilisé le transistor Darlington BDX53B 4 résistances 1000 ohms, 1/4 watt ou plus 12 résistances 560 ohms, 1/4 watt ou plus 1 condensateur électrolytique 330uF 4 socket IC 24 broches 9 sockets IC 16 broches 4 "x4" (ou plus) morceau de panneau perforé pour contenir toutes les pièces, Un vieux ventilateur d'ordinateur Un vieux câble de contrôleur de disquette Une vieille alimentation d'ordinateur Beaucoup de fil de raccordement, de soudure, de fer à souder, de flux, tout ce qui vous facilitera la vie tout en faisant cela. 7 "x7" (ou plus) morceau de bois utilisé pour fabriquer le gabarit de soudure LED Un joli boîtier pour afficher votre cube fini Mon Arduino/Freeduino de choix est le Bare Bones Board (BBB) de www.moderndevice.com. Les LED ont été achetées sur eBay et ont coûté 23 $ pour 1000 LED expédiées de Chine. Les appareils électroniques restants ont été achetés auprès de Newark Electronics (www.newark.com) et ne devraient coûter qu'environ 25 $. Si vous devez tout acheter, ce projet ne devrait coûter qu'environ 100 $. J'ai beaucoup de vieux matériel informatique, donc ces pièces sont sorties de la ferraille.

Étape 2: Assembler les couches

Assembler les couches
Assembler les couches
Assembler les couches
Assembler les couches
Assembler les couches
Assembler les couches
Assembler les couches
Assembler les couches

Comment faire 1 couche (64 LED) de ce cube de 512 LED: Les LED que j'ai achetées faisaient 3 mm de diamètre. J'ai décidé d'utiliser de petites LED pour réduire les coûts et rendre la taille finale du cube suffisamment petite pour s'asseoir sur mon bureau ou mon étagère sans prendre complètement le dessus sur le bureau ou l'étagère. J'ai dessiné une grille de 8x8 avec environ 0,6 pouce entre les lignes. Cela m'a donné une taille de cube d'environ 4,25 pouces de côté. Percez des trous de 3 mm à l'endroit où les lignes se rencontrent pour créer un gabarit qui maintiendra les LED pendant que vous soudez chaque couche. L'A6276EA est un dispositif de puits de courant. Cela signifie qu'il fournit un chemin vers la terre plutôt qu'un chemin vers la tension source. Vous devrez construire le cube dans une configuration d'anode commune. La plupart des cubes sont construits comme une cathode commune. Le côté long de la LED est généralement l'anode, vérifiez la vôtre pour vous en assurer. La première chose que j'ai faite a été de tester chaque LED. Oui, c'est un processus long et ennuyeux et vous pouvez le sauter si vous le souhaitez. Je préfère passer du temps à tester les LED plutôt que de trouver un point mort dans mon cube après son assemblage. J'ai trouvé 1 LED morte sur les 1000. Pas mal. Coupez 11 morceaux de fil de raccordement solide et non isolé à 5 pouces. Placez 1 LED à chaque extrémité d'une rangée de votre gabarit, puis soudez le fil à chaque anode. Placez maintenant les 6 LED restantes dans la rangée et soudez ces anodes au fil. Cela peut être vertical ou horizontal, cela n'a pas d'importance tant que vous faites tous les calques de la même manière. Au fur et à mesure que vous terminez chaque rangée, coupez l'excès de plomb des anodes. J'ai laissé environ 1/8 . Répétez jusqu'à ce que vous ayez terminé les 8 rangées. Maintenant, soudez 3 morceaux de fil de raccordement sur les rangées que vous venez de faire pour les connecter tous en une seule pièce. J'ai ensuite testé la couche en attachant 5 volts pour brancher le treillis de fils à travers une résistance et toucher le fil de terre à chaque cathode. Remplacez toutes les LED qui ne s'allument pas. Retirez soigneusement la couche du gabarit et mettez-la de côté. Si vous pliez les fils, ne vous inquiétez pas, il suffit de redressez-les du mieux que vous pouvez. C'est très facile à plier. Comme vous pouvez le voir sur mes photos, j'avais beaucoup de fils pliés. les couches ensemble (étape 3) plus facilement, tandis que chaque couche suivante est toujours dans le gabarit, pliez le quart de pouce supérieur de la cathode vers l'avant de 45 à 90 degrés. Cela permettra au fil d'atteindre autour de la LED à laquelle il se connecte et rendra la soudure beaucoup plus Ne faites pas cela à votre première couche, nous déclarerons que l'une est la couche inférieure et les pistes doivent être s droite.

Étape 3: Assembler le cube

Assembler le cube
Assembler le cube
Assembler le cube
Assembler le cube

Comment souder toutes les couches ensemble pour faire un cube: La partie difficile est presque terminée. Maintenant, replacez soigneusement une couche dans le gabarit, mais n'utilisez pas trop de pression, nous voulons pouvoir la retirer sans la plier. Cette première couche est la face supérieure du cube. Placez une autre couche sur la première, alignez les fils et commencez à souder. J'ai trouvé plus facile de faire d'abord les coins, puis le bord extérieur, puis les rangées intérieures. Continuez à ajouter des couches jusqu'à ce que vous ayez terminé. Si vous pré-pliez les fils, assurez-vous de conserver la couche avec des fils droits pour la fin. C'est le fond. J'avais un peu trop d'espace entre chaque couche donc je n'ai pas tout à fait obtenu une forme de cube. Pas grave, je peux vivre avec.

Étape 4: Construire la carte contrôleur

Construire la carte contrôleur
Construire la carte contrôleur
Construire la carte contrôleur
Construire la carte contrôleur
Construire la carte contrôleur
Construire la carte contrôleur

Comment construire la carte contrôleur et la fixer à votre Arduino: Suivez le schéma et construisez la carte comme vous le souhaitez. J'ai placé les puces du contrôleur au centre de la carte et j'ai utilisé le côté gauche pour contenir les transistors qui contrôlent le courant vers chaque couche du cube, et j'ai utilisé le côté droit pour tenir les connecteurs qui vont des puces du contrôleur aux cathodes de les colonnes LED. J'ai trouvé un vieux ventilateur d'ordinateur de 40 mm avec un connecteur molex femelle pour le brancher sur une alimentation d'ordinateur. C'était parfait. Une petite quantité de flux d'air à travers la puce est utile et j'ai maintenant un moyen simple de fournir 5 volts aux puces du contrôleur et à l'Arduino lui-même. Sur le schéma, RC est la résistance de limitation de courant pour toutes les LED connectées à chaque A6276EA. J'ai utilisé 1000 ohms car il fournit 5 milliampères à la LED, assez pour l'allumer. J'utilise des LED à haute luminosité, pas des LED Super Brite, donc la consommation de courant est plus faible. Si les 8 LED d'une colonne sont allumées en même temps, ce n'est que 40 milliampères. Chaque sortie de l'A6276EA peut gérer 90 milliampères, donc je suis bien à portée. RL est la résistance connectée aux fils logiques ou de signal. La valeur réelle n'est pas très importante tant qu'elle existe et n'est pas trop grande. J'utilise 560 ohms parce que j'en avais un tas disponible. J'ai utilisé un transistor de puissance capable de gérer jusqu'à 6 ampères pour contrôler le courant allant à chaque couche du cube. C'est exagéré pour ce projet, car chaque couche du cube ne consommera que 320 milliampères avec toutes les LED allumées. Je voulais de l'espace pour grandir et je pourrais utiliser la carte contrôleur pour quelque chose de plus grand plus tard. Utilisez n'importe quel transistor de taille adaptée à vos besoins. Le condensateur de 330 uF à travers la source de tension est là pour aider à atténuer les fluctuations de tension mineures. Comme j'utilise une vieille alimentation d'ordinateur, ce n'est pas nécessaire, mais je l'ai laissé au cas où quelqu'un voudrait utiliser un adaptateur mural 5 volts pour alimenter son cube. Chaque puce de contrôleur A6276EA a 16 sorties. Je n'avais pas d'autre connecteur approprié, j'ai donc soudé des fils à des prises IC à 16 broches et je les utiliserai pour connecter la carte contrôleur au cube. J'ai également coupé une prise IC en deux et l'ai utilisée pour connecter les 8 fils qui relient les transistors aux couches du cube. J'ai coupé environ 5 pouces de l'extrémité d'un vieux câble de disquette à utiliser comme connecteur pour l'Arduino. Le câble de la disquette est composé de 2 rangées de 20 broches, le Bare Bones Board a 18 broches. C'est un moyen très bon marché (gratuit) de connecter l'Arduino à la carte. J'ai séparé le câble plat en groupes de 2 fils, j'ai dénudé les extrémités et je les ai soudées ensemble. Cela vous permet de brancher l'Arduino dans l'une ou l'autre rangée du connecteur. Suivez le schéma et soudez le connecteur en place. N'oubliez pas de souder les fils de 5 volts et de masse pour que le connecteur alimente l'Arduino. J'ai l'intention d'utiliser cette carte contrôleur pour d'autres projets afin que la conception modulaire fonctionne bien pour moi. Si vous voulez câbler les connexions, c'est très bien.

Étape 5: Construisez la vitrine

Construire la vitrine
Construire la vitrine
Construire la vitrine
Construire la vitrine
Construire la vitrine
Construire la vitrine
Construire la vitrine
Construire la vitrine

Rendez votre produit final beau: j'ai trouvé ce coffre en bois chez Hobby Lobby pour 4 $ et j'ai pensé qu'il serait parfait car il a de l'espace à l'intérieur pour contenir tout le fil et il est joli. J'ai taché celui-ci en rouge, la même tache que j'ai utilisée sur mon bureau d'ordinateur pour qu'ils correspondent. Dessinez une grille sur le dessus de la même taille que la grille utilisée pour le gabarit de soudure (0,6 pouce entre les lignes). Percez des trous pour permettre aux fils de passer par le haut et percez un autre trou derrière la grille pour les fils de couche/plan (à partir des transistors de l'étape 4). J'ai appris à mes dépens qu'essayer d'aligner 64 pistes pour passer par de petits trous est très difficile. J'ai finalement décidé de re-percer tous les trous un peu plus gros pour accélérer le processus. J'ai fini par utiliser environ un foret de.2. Maintenant que le cube est assis sur l'écran, pliez les fils d'angle pour que le cube reste en place pendant que vous attachez les fils. Assurez-vous d'attacher tous les fils dans le bon ordre. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64Et connectez les fils entre les couches (étiquetées « plans » sur le schéma) et les transistors. Le transistor sur la broche 6 de l'Arduino est la couche supérieure du cube. Si vous vous trompez sur les fils, c'est quelque peu corrigible dans le code, mais cela peut nécessiter beaucoup de travail, alors essayez de les mettre dans le bon ordre. D'accord, tout est construit et prêt à fonctionner, obtenons du code et essayons-le.

Étape 6: Coder

Code
Code

Le code de ce cube est fait différemment de la plupart, je vais vous expliquer comment m'adapter. La plupart des codes de cube utilisent des écritures directes dans les colonnes. Le code dit que la colonne X doit être allumée, alors donnez-lui du jus et nous avons terminé. Cela ne fonctionne pas lorsque vous utilisez des puces de contrôleur. Les puces de contrôleur utilisent 4 fils pour parler à l'Arduino: SPI-in, Clock, Latch et Enable. J'ai mis à la terre la broche d'activation (broche 21) via une résistance (RL) afin que la sortie soit toujours activée. Je n'ai jamais utilisé l'Enable donc je l'ai retiré du code. SPI-in est les données de l'Arduino, Clock est un signal de synchronisation entre les deux pendant qu'ils parlent, et Latch indique au contrôleur qu'il est temps d'accepter de nouvelles données. Chaque sortie de chaque puce est contrôlée par un nombre binaire de 16 bits. Par exemple; l'envoi de 1010101010101010 au contrôleur provoquerait l'allumage de toutes les autres LED du contrôleur. Votre code doit parcourir tout ce qui est nécessaire pour un affichage et construire ce nombre binaire, puis l'envoyer à la puce. C'est plus facile qu'il n'y paraît. Techniquement, c'est un tas d'additions au niveau du bit, mais je suis nul en maths au niveau du bit donc je fais tout en décimal. Les décimales pour les 16 premiers bits sont les suivantes: 1 << 0 == 1 1 << 1 == 2 1 << 2 == 4 1 << 3 == 8 1 << 4 == 16 1 << 5 == 32 1 << 6 == 64 1 << 7 == 128 1 << 8 == 256 1 << 9 == 512 1 << 10 == 1024 1 << 11 == 2048 1 << 12 == 4096 1 << 13 == 8192 1 << 14 == 16384 1 << 15 == 32768Cela signifie si vous voulez allumez les sorties 2 et 10, vous additionnez les décimales (2 et 512) pour obtenir 514. Envoyez 514 au contrôleur et les sorties 2 et 10 s'allumeront. Mais nous avons plus de 16 LED, donc cela devient un peu plus difficile. Nous devons créer des informations d'affichage pour 4 puces. Ce qui est aussi simple que de le construire pour 1, il suffit de le faire 3 fois de plus. J'utilise un tableau de variables globales pour contenir les codes de contrôle. C'est juste plus facile de cette façon. Une fois que les 4 codes d'affichage sont prêts à être envoyés, relâchez le loquet (réglez-le sur BAS) et commencez à envoyer les codes. Vous devez d'abord envoyer le dernier. Envoyez les codes pour la puce 4, puis 3, puis 2, puis 1, puis réglez à nouveau le verrou sur HIGH. Étant donné que la broche Activer est toujours connectée à la terre, l'affichage est modifié immédiatement. La plupart des codes de cube que j'ai vus sur Instructables, et sur le Web en général, consistent en un bloc géant de code défini pour effectuer une animation prédéfinie. Cela fonctionne bien pour les cubes plus petits, mais avoir besoin de stocker, lire et envoyer 512 bits de binaire chaque fois que vous souhaitez modifier l'affichage prend beaucoup de mémoire. L'Arduino ne pouvait pas gérer plus de quelques images. J'ai donc écrit quelques fonctions simples pour montrer le cube en action qui reposent sur le calcul plutôt que sur des animations prédéfinies. J'ai inclus une petite animation pour montrer comment c'est fait, mais je vous laisse le soin de créer vos propres display.cube8x8x8.pde est le code Arduino. Je prévois de continuer à ajouter des fonctions au code et je mettrai à jour le programme périodiquement.matrix8x8.pde est un programme en traitement pour créer vos propres affichages. Le premier numéro donné va dans pattern1, le second dans pattern2, etc.

Étape 7: affichez votre ouvrage

Affichez votre ouvrage
Affichez votre ouvrage

Vous avez terminé, il est maintenant temps de profiter de votre cube. Comme vous pouvez le voir, mon cube est sorti un peu tordu. Je ne suis pas très enthousiaste à l'idée d'en construire un autre, donc je vivrai avec une torsion. J'ai quelques points morts que je dois examiner. Il peut s'agir d'une mauvaise connexion ou j'ai peut-être besoin d'une nouvelle puce de contrôleur. J'espère que ce Instructable vous inspirera pour construire votre propre cube ou un autre projet LED utilisant le A6276AE. Postez un lien dans les commentaires si vous en créez un. J'ai essayé de décider où aller à partir d'ici. La carte contrôleur contrôlera également un cube RVB 4x4x4, c'est donc une possibilité. Je pense que ce serait bien de faire une sphère et la façon dont j'ai écrit le code, ce ne serait pas trop difficile à faire.

Conseillé: