Publicité

Noël est de retour, et que ce soit votre fête préférée de l'année ou qu'il vous fasse transpirer, les décorations commencent à monter. Cette année, pourquoi ne pas intégrer une technologie DIY à vos décorations pour les faire ressortir?

Dans ce projet, nous allons construire une matrice LED 8 x 8 résistante aux intempéries et activée par le mouvement à partir de zéro… pour moins de 20 $. Il est conçu pour s'adapter au centre d'une couronne de porte de Noël standard, bien qu'il puisse être utilisé n'importe où dans la maison. Et comme il est alimenté par batterie, aussi loin de la maison!

Liste des pièces

Pour ce projet, vous aurez besoin de:

  • Arduino.
    • J'ai utilisé le Nano car il est de petite taille, mais vous pouvez utiliser presque Microcontrôleur compatible Arduino Guide d'achat Arduino: quelle carte devriez-vous acheter?Il existe tellement de types de cartes Arduino que vous seriez pardonné d'être confus. Que devez-vous acheter pour votre projet? Laissez-nous vous aider, avec ce guide d'achat Arduino! Lire la suite .
  • 64 x LED rouges.
  • 8 résistances de 220 Ohms.
  • Capteur de mouvement PIR.
    • Beaucoup Kits de démarrage Arduino Qu'est-ce qui est inclus dans un kit de démarrage Arduino? [MakeUseOf explique]J'ai déjà présenté le matériel open-source Arduino ici sur MakeUseOf, mais vous allez avoir besoin de plus que le véritable Arduino pour en construire quelque chose et pour commencer. Les "kits de démarrage" Arduino sont ... Lire la suite venez avec ceux-ci. J'ai acheté un multi-pack chez Amazon pour 10 $.
  • 1 morceau de carte de prototypage.
    • Celui utilisé ici était de 9 x 7 cm, mais vous pouvez utiliser n'importe quelle taille que vous souhaitez.
  • Batterie 7-12v.
    • Une simple batterie est utilisée ici pour des raisons de budget, mais chargeur de banque mobile Les meilleures banques d'alimentation Pokemon GoPokemon Go bat le diable de la batterie d'un téléphone. Pour extraire un peu plus de jus de Pokemon de votre téléphone, vous avez besoin d'une banque d'alimentation. Mais quelle est la meilleure batterie disponible? Lire la suite peut durer encore plus longtemps.
  • Assortiment de petits morceaux de fil.
  • Boîte Tupperware ou boîtier étanche similaire.
    • Assurez-vous qu'il sera suffisamment grand pour contenir tous vos composants à l'intérieur!
  • Guirlande de Noël.
    • N'importe qui fera l'affaire, assurez-vous simplement que la boîte de l'enceinte s'adaptera à l'intérieur.
  • Fer à souder et soudure.

Bien que n'étant pas strictement nécessaire car vous pouvez souder les composants directement sur le Nano, j'ai également trouvé une petite planche à pain très utile lors des tests. Un pistolet à colle chaude aide également à assembler toutes les pièces.

couronne de noël a mené des pièces de matrice

Ce projet nécessite beaucoup de soudure, et en tant que débutant, il peut sembler intimidant. Personnellement, je suis encore très débutant dans le domaine du soudage et je trouve que ce n'est pas aussi difficile ou trop long qu'il n'y paraît. Si vous êtes également nouveau dans la soudure, voici quelques-uns bons conseils pour vous aider Apprenez à souder avec ces conseils et projets simplesÊtes-vous un peu intimidé par la pensée d'un fer chaud et d'un métal en fusion? Si vous voulez commencer à travailler avec l'électronique, vous devrez apprendre à souder. Laissez-nous vous aider. Lire la suite .

Si vous n’aimez pas vraiment l’idée de la soudure, ce projet est également possible avec Rubans LED Projet de week-end: construire un écran géant à pixels LEDJ'adore les pixels LED: lumineux, faciles à contrôler, bon marché et tellement polyvalents. Aujourd'hui, nous allons les transformer en un grand écran pixel qui peut être accroché au mur. Lire la suite ou une matrice LED prête à l'emploi que vous pourriez avoir dans votre kit de démarrage. Certains ajustements de code seront nécessaires si vous décidez d'emprunter cette voie.

Configuration de l'Arduino

Nous allons commencer par le schéma de circuit de l'Arduino et les fils que nous allons attacher à notre capteur PIR et à notre matrice LED.

couronne fritzing

À l'intérieur de la matrice

Maintenant, faisons notre matrice LED 8 x 8. C'est une bonne idée de commencer par créer une ligne et une colonne de la matrice, pour vous assurer qu'elle est exactement là où vous la souhaitez sur la carte de prototypage.

tester où mettre les leds

Sur la photo ci-dessus, toutes les LED sont placées de manière à ce que les anodes (la jambe positive la plus longue) soient dirigées vers le haut du panneau de protection. Ceci est important, car nous allons créer des colonnes d'anodes communes en les joignant ensemble et des rangées de cathodes communes (la jambe négative la plus courte). Obtenir cela maintenant vous évitera des maux de tête plus tard!

Nous allons construire une matrice de cathode à rangée commune, ce diagramme montre comment tout est connecté.

doub diag

Cela peut sembler un peu intimidant au début, mais c'est une configuration assez simple. Dans chaque rangée, toutes les cathodes sont jointes de la droite vers la gauche, puis attachées à l'une de nos broches Arduino. Après cela, nous faisons de même pour chaque colonne d'anodes. De cette façon, en fonction de la colonne à laquelle nous appliquons l'alimentation et de la ligne à laquelle nous joignons la terre, nous pouvons allumer n'importe quelle LED individuelle de la baie.

Que la soudure commence

Commencez par placer votre première rangée de LED. Assurez-vous que toutes les anodes sont orientées vers le haut et retournez-les. J'ai trouvé que l'ajout d'une autre LED dans chaque coin et la fixation d'un autre morceau de protoboard sur le dessus à l'aide d'un cordon élastique ont aidé à tout maintenir en place.

proto élastique

Maintenant, pliez un à un la jambe (courte) de la cathode de chaque LED vers la gauche afin qu'elles se chevauchent toutes. Il est plus facile de commencer par le côté gauche et de travailler à droite. Si vous utilisez un plus grand morceau de protoboard, vous pouvez d'abord les souder à la carte et les connecter ensemble à l'aide des tampons. Faites attention de ne relier aucune des cathodes à d'autres lignes de la carte ou à l'une des anodes!

soudure pliée par cathode

Répétez ce processus pour les huit lignes, et lorsque vous avez terminé, vous devriez avoir quelque chose qui ressemble à ceci:

image des rangées terminées

Sauter des anodes!

Les colonnes d'anodes sont un peu plus compliquées. Dans le diagramme ci-dessus, les anodes se courbent à chaque fois qu'elles traversent une rangée de cathodes. En effet, ils ne peuvent pas du tout toucher les lignes. Nous devons plier les anodes sur les rangées de cathodes et les attacher les unes aux autres. Vous constaterez peut-être que l'utilisation d'un stylo pour plier les jambes aide beaucoup.

ben souder des anodes

Faites-le pour chaque rangée d'anodes et fixez une résistance à chaque anode supérieure. Vous trouverez probablement plus facile de mettre la résistance dans le trou suivant du panneau de proto et de joindre les plots à l'aide de soudure. Vous devriez maintenant avoir quelque chose comme ça:

soudure finie

Toutes nos félicitations! La matrice LED est terminée. Vérifiez soigneusement votre soudure à ce stade pour vous assurer qu'il n'y a pas de ruptures et qu'aucune des colonnes ne touche les rangées. Ne vous inquiétez pas si ce n'est pas joli, nous en avons juste besoin pour fonctionner! Vous pouvez vérifier chaque LED individuellement maintenant en connectant 5v à l'une des extrémités de la colonne et à la terre à l'une des extrémités de la ligne.

matrice de test

Si tout va bien, attachez des fils de raccordement à chaque colonne et à chaque rangée, et fixez-les à votre Arduino comme indiqué dans le diagramme ci-dessus.

Obtenons le codage

Ouvrez l'IDE Arduino et choisissez votre carte et votre port. Si vous êtes nouveau sur Arduino, consultez ceci Guide de Démarrage. Débuter avec Arduino: Guide du débutantArduino est une plate-forme de prototypage électronique open source basée sur du matériel et des logiciels flexibles et faciles à utiliser. Il est destiné aux artistes, designers, amateurs et à toute personne intéressée par la création d'objets ou d'environnements interactifs. Lire la suite

Entrez ce code dans l'éditeur. C'est un code assez dense si vous ne le connaissez pas, mais il est disponible ici entièrement annoté pour aider à comprendre comment cela fonctionne.

const int row [8] = {2,3,4,5,6,7,8,9}; const int col [8] = {10,11,12,14,15,16,17,18}; int pirPin = 19; int pirState = LOW; int val = 0; bool pirTrigger = false; const int pirLockTime = 12000; int pirCountdown = pirLockTime; pixels int [8] [8]; const int refreshSpeed ​​= 500; int countDown = refreshSpeed; int currentCharIndex = 0; typedef bool CHAR_MAP_NAME [8] [8]; const CHAR_MAP_NAME blanc = {{0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, }; const CHAR_MAP_NAME threedownthreein = {{0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, }; const int noOfFrames = 5; const CHAR_MAP_NAME * charMap [noOfFrames] = { & vide, & trois fois trois, & vide, & blanc, & trois fois. }; void setup () {for (int i = 0; i <8; i ++) {pinMode (row [i], OUTPUT); pinMode (col [i], SORTIE); // capteur de mouvement pinMode (pirPin, INPUT); digitalWrite (col [i], LOW); } } void screenSetup () {const CHAR_MAP_NAME * thisMap = charMap [currentCharIndex]; pour (int x = 0; x <8; x ++) {pour (int y = 0; y <8; y ++) {bool on = (* thisMap) [x] [y]; if (on) {pixels [x] [y] = HIGH; } else {pixels [x] [y] = FAIBLE; }}} currentCharIndex ++; if (currentCharIndex> = noOfFrames) {currentCharIndex = 0; }} void refreshScreen () {for (int currentRow = 0; currentRow <8; currentRow ++) {digitalWrite (ligne [currentRow], LOW); pour (int currentCol = 0; currentCol <8; currentCol ++) {int thisPixel = pixels [currentRow] [currentCol]; digitalWrite (col [currentCol], thisPixel); if (thisPixel == HIGH) {digitalWrite (col [currentCol], LOW); }} digitalWrite (ligne [currentRow], HIGH); }} boucle vide () {val = digitalRead (pirPin); if (val == HIGH) {pirTrigger = true; } else if (val == LOW && pirCountdown <= 0) {pirTrigger = false; pirCountdown = pirLockTime; } if (pirTrigger == true && pirCountdown> 0) {refreshScreen (); compte à rebours--; pirCountdown--; if (countDown <= 0) {countDown = refreshSpeed; screenSetup (); } } }

Les parties importantes à comprendre sont:

le refreshSpeed variable. Cette variable détermine le temps écoulé entre chaque rafraîchissement d'écran. Un nombre plus élevé signifie une attente plus longue.

Le const CHAR_MAP_NAMEs. C'est là que vous placez chaque carte de personnage (ou cadre s'il est plus facile de penser à eux de cette façon) que vous souhaitez afficher.

le noOfFrames variable. Cela détermine le nombre d'images affichées dans une lecture complète. Notez qu'il peut être différent du nombre de cartes de caractères. Par exemple, si vous vouliez afficher «A CAT», il vous suffirait de définir quatre cadres distincts: vide, un UNE, une C et un T.

Maintenant, lorsque le capteur de mouvement détecte un mouvement, l'écran LED doit faire clignoter la LED trois en bas et trois en haut à gauche. S'il ne s'affiche pas correctement, vérifiez à nouveau votre câblage pour vous assurer que tout est au bon endroit! Lorsque vous ajoutez votre propre image ou message, il peut être coupé tôt ou jouer trop longtemps. Essayez de changer le pirLockTime variable jusqu'à ce qu'il joue pendant le temps que vous voulez.

Le processus d'ajout de chaque cadre à l'écran LED peut être un peu fastidieux, nous avons donc créé cette feuille de calcul pour faciliter la création de texte et d'images pour votre matrice LED (faites une copie de la feuille de calcul Google afin de pouvoir la modifier).

À l'aide de la feuille de calcul, vous pouvez copier vos créations directement dans le code.

Faites braver les éléments

Maintenant que nous avons une matrice LED fonctionnelle, nous avons besoin d'un moyen pour lui de survivre à l'hiver. Bien que cette méthode ne résiste pas à une tempête tropicale ou soit immergée dans la piscine, elle devrait être suffisante pour protéger tous les appareils électroniques des éléments.

J'ai utilisé une boîte ronde Tupperware de 15 cm de diamètre et 6 cm de profondeur car elle s'adapte parfaitement à mes composants. Découpez une fenêtre dans le couvercle légèrement plus grande que votre matrice LED et fixez-y un film plastique transparent, en veillant à ne laisser aucun espace pour que le liquide puisse y pénétrer. Le plastique robuste de certains emballages fonctionnerait mieux, mais c'était tout ce que j'avais. Vous pouvez également fixer des supports pour le panneau de protection, bien que les deux travaux puissent facilement être effectués avec du ruban adhésif solide et étanche.

résistant aux intempéries

Ensuite, faites un petit trou sous la fenêtre, puis élargissez-le doucement et lentement jusqu'à ce que votre capteur PIR ne puisse que passer à travers. Vous voulez qu'il s'adapte aussi parfaitement que possible.

trou coupé

Fixez votre capteur PIR et remplissez les lacunes que vous pouvez voir avec du ruban adhésif ou de la colle chaude.

pir de colle

Nettoyez tout ruban ou colle qui pourrait empêcher la boîte de se fermer correctement et ajoutez tous vos composants à la boîte avec votre batterie. Ici, une simple batterie AA a été utilisée, branchée directement sur la broche VCC du Nano. Quelques petits morceaux de liège ont été ajoutés à l'extérieur de l'enceinte pour aider à accrocher la construction au centre de la couronne.

Et nous avons terminé

Une fois la boîte scellée, accrochez-la avec votre guirlande de Noël et attendez les réactions de vos visiteurs à votre accueil personnel de haute technologie à moins de 20 $! Vous pouvez même aller plus loin et créer des Décorations de bricolage Décorations de Noël imprimées en 3D pour de parfaites vacances geekPourquoi ne pas vous épargner de l'argent ce Noël et imprimer en 3D des parures festives pour votre maison? Lire la suite pour ailleurs dans la maison aussi!

guirlande de noël à matrice led fini diy

Dans ce projet, nous avons construit un système de matrice LED autonome à partir de zéro, qui est activé par le mouvement et peut survivre à l'extérieur par tous les temps sauf les plus inclinés. Cette construction sera utile longtemps après la fin des fêtes de fin d'année dans d'autres projets, et la même technique pourrait être utilisée pour créer des boîtiers bon marché à l'épreuve des intempéries pour d'autres projets également.

Avez-vous construit quelque chose pour donner à votre Noël une touche de bricolage? Envisagez-vous des cadeaux de Noël sur le thème du bricolage cette année? Faites-le nous savoir dans les commentaires ci-dessous!

Ian Buckley est un journaliste indépendant, musicien, interprète et producteur de vidéos vivant à Berlin, en Allemagne. Quand il n'écrit pas ou sur scène, il bricole de l'électronique ou du code DIY dans l'espoir de devenir un savant fou.