Table des matières:

Fireflies Arduino : 11 étapes (avec photos)
Fireflies Arduino : 11 étapes (avec photos)

Vidéo: Fireflies Arduino : 11 étapes (avec photos)

Vidéo: Fireflies Arduino : 11 étapes (avec photos)
Vidéo: Simulation of dht11 temperature and humidity sensor with arduino in proteus 2024, Juillet
Anonim
Image
Image
Ce dont vous aurez besoin
Ce dont vous aurez besoin

L'une des choses que j'attends avec impatience avec les étés en Pennsylvanie, ce sont les lucioles dans mon jardin. J'ai récemment appris moi-même la programmation Adruino dans le but de réaliser ce projet simple. C'est un excellent programme pour commencer et il est assez facile pour tout programmeur, débutant à expert, de construire, de modifier et de s'amuser en quelques minutes seulement. Commençons.

Étape 1: ce dont vous aurez besoin

Ce dont vous aurez besoin
Ce dont vous aurez besoin

Pour faire clignoter vos bogues, vous aurez besoin de ces composants:

  • Arduino. J'ai commencé avec le Nano, mais n'importe quel micro-contrôleur compatible Arduino fera l'affaire.
  • LED jaunes, 5 mm. Vous pouvez en utiliser jusqu'à 6.
  • Résistances. Vous aurez besoin d'une résistance par LED pour limiter le courant. J'ai utilisé 470 ohms, mais tout ce qui dépasse 150 ohms devrait convenir pour protéger votre micro-contrôleur.
  • Planche à pain.
  • Cavalier.

Pour réaliser le projet de votre cour arrière, vous aurez besoin de:

  • Boîte de projet résistante aux intempéries.
  • Pile 9 volts avec connecteur. (Veuillez consulter les notes au bas de cette section.)
  • Changer. (J'ai choisi ces interrupteurs étanches. Si vous ne l'utilisez pas à l'extérieur, n'importe quel interrupteur fera l'affaire.)
  • Quelques mètres de fil pour placer les LED dans le jardin. J'ai utilisé environ 10 pieds de fil Ethernet Cat5 par LED.
  • Une petite planche à pain ou une planche de perf.
  • Un presse-étoupe résistant aux intempéries à travers lequel passent les fils LED. (Vous pouvez l'omettre si vous ne l'utilisez pas non plus à l'extérieur.)
  • Gaine thermorétractable pour protéger vos mégots d'insectes LED.
  • Bandes vertes auto-agrippantes (c'est-à-dire velcro) pour fixer les lucioles LED aux plantes et aux poteaux de votre jardin.
  • Embases mâles pour brancher des composants sur votre petite maquette.

Outils:

  • Forets pour la boîte de projet. (Profitez de cette opportunité pour vous faire une belle étape. Vous serez heureux de l'avoir fait).
  • Pistolet à colle chaude.
  • Fer à souder.
  • Outil rotatif (c'est-à-dire Dremel) pour creuser de l'espace dans la boîte de projet si vous en avez besoin.

Quelques notes ici:

1. Le choix de la batterie était pour un démarrage rapide et facile. Utiliser une batterie de 9 volts en permanence est un peu un gaspillage. Il est préférable d'utiliser un support de 4 piles AA pour une durée de vie plus longue (cependant, vous aurez besoin d'une boîte de projet plus grande pour l'installer).

2. Si vous choisissez de déconstruire un câble Ethernet Cat 5 pour les fils, assurez-vous qu'ils sont à âme en cuivre et enroulez-les soigneusement autour de PVC pour les garder organisés pendant que vous travaillez. Encore une fois, j'ai utilisé environ 10 pieds de fil par LED. Si vous voulez étendre les lumières au loin, utilisez absolument des fils plus longs !

3. Enfin, tous les liens que j'ai fournis sont de simples suggestions. Veuillez lire l'intégralité de cet Instructable avant de construire ou d'acheter quoi que ce soit, car vous comprendrez mieux comment vous souhaitez procéder personnellement.

Étape 2: Construisez le circuit

Construisez le circuit
Construisez le circuit
Construisez le circuit
Construisez le circuit
Construisez le circuit
Construisez le circuit

Ce projet utilise les broches de modulation de largeur d'impulsion sur votre Arduino. Le microcontrôleur possède 6 de ces broches et vous pouvez en utiliser autant que vous le souhaitez. Le circuit est assez simple. Câblez toute l'alimentation des broches D3, D5, D6, D9, D10 et D11 de modulation de largeur d'impulsion (PWM) aux extrémités positives de vos LED. Câblez les extrémités négatives aux résistances, puis à une masse commune. (Les résistances peuvent passer devant ou derrière la LED. Cela ne fait aucune différence à moins que vous ne vouliez vous protéger contre les courts-circuits dans des courants plus élevés.) J'ai inclus quelques schémas pour vous aider avec le câblage. (Les diagrammes ont été créés à l'aide du logiciel de conception Fritzing.)

Étape 3: Le code

Image
Image

Si vous êtes un programmeur chevronné, vous trouverez ce code simpliste. C'est un excellent code pour commencer à apprendre car il vous initie à l'utilisation de variables, de pinmodes, de fonctions et même d'un générateur aléatoire. Le code n'est pas aussi compact qu'il peut l'être, car je suis sûr que le même effet peut être obtenu avec des tableaux, etc.

Les commentaires du code présentent la logique de chaque section. Le code entier est intégré ici et vous pouvez télécharger le croquis ci-dessous.

/*

Ce script fait clignoter 6 LED (jaunes, bien sûr) dans un ordre aléatoire à des intervalles aléatoires en utilisant PWM. Chaque LED est contrôlée par sa propre fonction. */ int led1 = 3; // LED connectée à la broche PWM 3, etc. J'ai utilisé les 6 broches PWM. int led2 = 5; int led3 = 6; int led4 = 9; int led5 = 10; int led6 = 11; randnum long; // randnum contrôle l'intervalle de temps entre les flashs et le randbug long; //randbug contrôle quel bogue s'allume. void setup() { pinMode(led1, OUTPUT); //Définition de toutes les broches PWM comme sorties. pinMode(led2, SORTIE); pinMode(led3, SORTIE); pinMode(led4, SORTIE); pinMode(led5, SORTIE); pinMode(led6, SORTIE); } boucle vide(){ randbug = random(3, 12); //randbug choisit au hasard une fonction à exécuter, //choisit donc au hasard un bogue à allumer. if (randbug == 3) { bug1(); } if (randbug == 5) { bug2(); } if (randbug == 6) { bug3(); } if (randbug == 9) { bug4(); } if (randbug == 10) { bug5(); } if (randbug == 11) { bug6(); } } /* * Chacune de ces fonctions fonctionne de la même manière. 'for loops' augmente puis diminue * la sortie de cette broche pour contrôler la luminosité de la LED. * 'randnum' est un intervalle de temps aléatoire entre 10 et 3000 ms * et choisit un intervalle de temps entre les flashs de bogues. * 'delay 10' est juste pour l'effet de fondu. */ void bug1(){ randnum = random(10, 3000); for(int fadeValue = 0; fadeValue = 0; fadeValue -=5) { analogWrite(led1, fadeValue); retard(10); } délai (randnum); } void bug2() { randnum = random(10, 3000); for(int fadeValue = 0; fadeValue = 0; fadeValue -=5) { analogWrite(led2, fadeValue); retard(10); } délai (randnum); } void bug3() { randnum = random (10, 3000); for(int fadeValue = 0; fadeValue = 0; fadeValue -=5) { analogWrite(led3, fadeValue); retard(10); } délai (randnum); } void bug4(){ randnum = random(10, 3000); for(int fadeValue = 0; fadeValue = 0; fadeValue -=5) { analogWrite(led4, fadeValue); retard(10); } délai (randnum); } void bug5() { randnum = random (10, 3000); for(int fadeValue = 0; fadeValue = 0; fadeValue -=5) { analogWrite(led5, fadeValue); retard(10); } délai (randnum); } void bug6() { randnum = random (10, 3000); for(int fadeValue = 0; fadeValue = 0; fadeValue -=5) { analogWrite(led6, fadeValue); retard(10); } délai (randnum); }

Étape 4: Construisez la boîte

Construire des mégots d'insectes !
Construire des mégots d'insectes !

Une fois que vous avez flashé votre Arduino avec le code et que vos lucioles fonctionnent comme vous le souhaitez, vous voudrez peut-être les mettre dans le jardin; cela signifie une boîte de projet et un thermorétractable pour garder l'Arduino et les LED au sec. Faisons!

Étape 5: Construire des mégots d'insectes

Construire des mégots d'insectes !
Construire des mégots d'insectes !
Construire des mégots d'insectes !
Construire des mégots d'insectes !
Construire des mégots d'insectes !
Construire des mégots d'insectes !
  • Coupez les fils LED à environ 5 mm.
  • Dénudez et étamez les extrémités des fils que vous utilisez, également d'environ 5 mm.
  • Faites glisser un tube thermorétractable de 1 mm sur chaque extrémité de fil.
  • Soudez la LED au fil. (À ce stade, vous devez choisir quel fil de votre paire sera votre positif et lequel sera négatif. J'ai choisi le fil solide comme positif et le fil blanc comme négatif. Maintenez cette stratégie tout au long du projet pour éviter les maux de tête plus tard !)
  • Faites glisser le thermorétractable jusqu'au bout du fil nu et des fils LED. Exécutez une flamme rapide sur eux pour les rétrécir aux fils.
  • Faites glisser un autre morceau de thermorétractable sur la LED et les fils avec la lentille LED dépassant de l'extrémité et faites-la fondre en place.
  • Faites glisser quelques morceaux de thermorétractable sur le fil sur toute sa longueur et faites-le fondre tous les quelques pieds pour garder le fil bien rangé.

Étape 6: Préparez la boîte de projet

Préparez la boîte à projets
Préparez la boîte à projets
Préparez la boîte à projets
Préparez la boîte à projets
  • Utilisez un outil rotatif avec un tambour de ponçage pour nettoyer tout plastique inutile dans votre boîte de projet. (Veillez à ne pas couper les vis dont vous pourriez avoir besoin pour remonter votre boîte.)
  • Décidez où vous voulez que votre interrupteur soit et que les fils LED sortent. Je suggère les côtés, mais utilisez ce qui fonctionne toujours avec vos besoins.
  • Utilisez le foret de taille appropriée pour percer des trous pour votre presse-étoupe et votre interrupteur.

Remarque: Sur la photo ci-dessus, vous verrez que j'ai fabriqué un « câble factice ». Il s'agit d'un paquet de 6 paires de fils que j'ai utilisés pour les LED avec thermorétractable pour les regrouper. Je l'ai utilisé pour m'assurer que le presse-étoupe s'adapterait bien au faisceau de câbles réel et également pour tester la résistance à l'eau de la boîte une fois l'interrupteur, le presse-étoupe et le couvercle allumés. (Après avoir été immergé pendant 24 heures dans 6 pouces d'eau, il y avait très peu d'humidité à l'intérieur. Je serais heureux d'appeler cette boîte « résistante aux intempéries ».)

Étape 7: Apportez le pouvoir

Apportez le pouvoir!
Apportez le pouvoir!
Apportez le pouvoir!
Apportez le pouvoir!
  • Déterminez la quantité de batterie et de fil de commutation dont vous aurez besoin pour atteindre votre Arduino en plaçant approximativement les trois composants dans la boîte du projet. Coupez les fils de l'interrupteur et du connecteur de la batterie 9V. Dénudez et étamez les extrémités. Faites glisser un peu de thermorétractable en place pour l'étape suivante.
  • Coupez deux broches mâles d'en-tête de votre bande (mais gardez-les collées ensemble).
  • Soudez le fil rouge du connecteur de la batterie 9V à une extrémité du commutateur. Soudez l'autre extrémité du commutateur à une broche d'en-tête mâle. Soudez le fil noir de la batterie à l'autre broche mâle de l'en-tête.
  • Comme le montre le schéma ci-dessus, les broches d'en-tête iront dans la planche à pain pour alimenter le Nano au niveau du VIN (positif) et du GND (négatif). La broche VIN peut gérer 7 à 12 volts. Si vous prévoyez d'alimenter votre Arduino autrement qu'avec une batterie 9V, utilisez une broche d'alimentation différente.

Étape 8: Modifiez le Nano si nécessaire

Modifiez le Nano si nécessaire
Modifiez le Nano si nécessaire

Comme ma boîte de projet était assez peu profonde, j'ai dû retirer les broches d'en-tête ICSP pour les adapter. Ces broches sont une interface secondaire avec votre Arduino. Les supprimer n'endommagera pas votre Nano car vous pouvez toujours charger des scripts via le port USB.

Remarque: si votre Nano a besoin de broches d'en-tête à souder, omettez simplement ces broches lors de l'assemblage de votre Arduino.

Étape 9: Câblez l'intérieur

Image
Image
Câblez l'intérieur
Câblez l'intérieur
Câblez l'intérieur
Câblez l'intérieur
  • Fixez le port presse-étoupe à la boîte de projet dans le trou que vous avez percé pour cela. Si vous ne savez pas comment utiliser un presse-étoupe, cette vidéo que j'ai trouvée sur YouTube en montre un en cours d'assemblage. (avance rapide jusqu'à 0:57.) Le vôtre pourrait avoir une rondelle en caoutchouc. Celui-ci se situe entre le boîtier du projet et l'écrou extérieur du presse-étoupe.
  • Rassemblez les extrémités libres des fils LED. Prenez ce temps pour les couper à une longueur égale, dénudez et étamez les extrémités. Passez les extrémités à travers le capuchon du presse-étoupe et utilisez un morceau de thermorétractable pour regrouper les extrémités, en laissant suffisamment de longueur pour atteindre la planche à pain à l'intérieur de la boîte.
  • Faites passer le faisceau de fils à travers le port du presse-étoupe dans le boîtier du projet et tournez le capuchon du presse-étoupe pour verrouiller les fils en place, de préférence autour du thermorétractable que vous avez utilisé pour les regrouper.
  • Séparez les fils de terre des fils positifs (en vous souvenant de ceux que vous avez choisis plus tôt). Soudez ensemble tous les fils de terre en une seule terre commune. Attachez un fil court à partir de ce groupe et terminez-le avec 1 en-tête mâle. Utilisez du thermorétractable pour protéger vos joints de soudure nus.
  • Soudez les embases mâles aux extrémités de chaque fil positif. Encore une fois, utilisez du thermorétractable.
  • Insérez les en-têtes mâles à extrémité positive dans la maquette pour vous connecter aux broches PWM de l'Arduino.
  • Insérez la masse commune dans la planche à pain afin qu'elle passe à travers une résistance de limitation de courant, puis à GND sur l'Arduino.
  • Placez-le dans la batterie et insérez l'interrupteur dans le trou de la boîte que vous avez percé plus tôt. Installez la rondelle en caoutchouc entre la boîte de projet et le bouchon à vis. Branchez les fils d'alimentation dans la planche à pain.
  • Enclenchez ou vissez le couvercle sur la boîte. Vous avez terminé!

Remarque: dans les schémas et dans les étapes de développement, j'ai utilisé une résistance de limitation de courant par LED. En règle générale, chaque LED doit avoir sa propre résistance car généralement, plus d'une LED est allumée à la fois. Le code ne permet pas d'allumer plus d'une LED à la fois, donc utiliser une seule résistance est bien pour protéger l'Arduino. Cela permet également d'économiser de l'espace sur la petite planche à pain ou du temps à souder chaque LED avec une résistance en ligne. Cela dit… ATTENTION !!! Si vous prévoyez de modifier le code de sorte que plus d'une LED soit allumée à la fois, vous aurez besoin de résistances séparées pour chaque LED.

Étape 10: Utilisez-le

Utilise le
Utilise le

Utilisez des bandes Velcro ou des gouttes de colle chaude pour fixer les LED sur les plantes, les clôtures, les flamants roses ou toute autre chose dans votre jardin. Utilisez-les à l'intérieur en les glissant dans des casiers à vin, derrière des rideaux ou même suspendez les fils au plafond pour un effet flottant en 3D dans l'obscurité ! Ce serait une excellente touche pour les fêtes, les mariages, les films et la photographie.

Étape 11: Aller plus loin…

Comme indiqué précédemment, il s'agit d'une première version de ce projet, mais il est plein de potentiel ! Exécutez plus de LED en connectant un registre à décalage (voir cette instructable par JColvin91 pour savoir comment.) Ajoutez un capteur de lumière, un chargeur solaire et une minuterie pour une fonction « le régler et l'oublier » ! Jouez avec le code pour ajouter votre propre flare aux bogues. Partagez ce que vous faites et appréciez !!

MISE À JOUR: Au cours des deux dernières semaines depuis la publication de cet Instructable, de nombreux contributeurs ont suggéré de brillantes améliorations sur le code, le matériel et l'exécution de ce projet. Je conseille fortement si vous envisagez de construire ceci, vous lisez les commentaires et les réponses pour des idées sur la façon de créer ces bugs de foudre d'une manière que je n'avais pas prévue. C'est dans l'esprit de la création open source que j'accueille toutes les idées qui aident à faire évoluer ce projet vers plus que je ne le pensais possible… et je remercie tous ceux qui ont rendu cela possible.

Aller. Faire!!!

Conseillé: