Table des matières:
- Fournitures
- Étape 1: Digispark et PlatformIO
- Étape 2: Schéma et câblage
- Étape 3: Micrologiciel
- Étape 4: boîtier et touche finale
Vidéo: Digispark & WS2812 Rainbow Wheel dans une boîte : 4 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Ce petit projet a été réalisé autour d'une boîte en bois joliment sculptée de 10x6x5cm que j'ai trouvée dans un magasin.
Sa meilleure caractéristique, qui n'a pas été correctement capturée par la caméra, est d'éclairer avec des couleurs vives et saturées les côtés du couvercle sculpté dans l'arbre de la boîte.
D'un autre côté, sachez que l'utilisation d'un effet arc-en-ciel sur une bande de LED RVB 5050 étroites entraînera toujours un éclairage blanchâtre à quelques centimètres des LED, car la couleur de chaque pixel se mélange rapidement à celle de ses voisins. Si vous voulez éviter cet effet, vous pouvez essayer d'utiliser un objectif de mise au point
La luminosité de la lampe est maintenue proportionnelle à la lumière ambiante grâce à un LDR: la lampe brillera à la lumière du jour et ne sera pas trop lumineuse lorsqu'elle est utilisée comme veilleuse, dans l'obscurité.
Fournitures
Nomenclature:
- une carte Attiny85 Digispark (clone), avec son bootloader Micronucleus
- une barre 8x WS2812
- un LDR, utilisé pour régler la luminosité de la lampe en fonction de l'environnement
- une résistance pull-up de 10KΩ pour le LDR
- un câble micro USB pour programmer le Digispark et alimenter la lampe une fois fait
- une boîte en bois creuse
- une source d'alimentation 5V⎓ (capable de fournir pas moins de 500mA)
Compétences et outils:
- PlatformIO (s'exécutant sur Visual Studio Code) en tant qu'IDE - n'importe quel IDE Arduino fera le travail, cependant
- un fer à souder, du fil à souder et des compétences de base en soudure
- du câblage, des ciseaux
- de la colle, des pincettes
- un peu de peinture opaque (pour couvrir Digispark LED et pour protéger le LDR d'être influencé par la lumière de la lampe)
Étape 1: Digispark et PlatformIO
Digispark (et chaque clone impliquant le même microcontrôleur 8 bits) est une carte de dérivation construite autour d'un AVR Attiny85, capable d'une communication USB simple grâce à un chargeur de démarrage Micronucleus. Veuillez trouver plus d'informations sur son wiki:
PlatformIO est l'écosystème que j'ai utilisé pour programmer le Digispark. Pour travailler avec, vous devez installer Visual Studio Code
Étape 2: Schéma et câblage
Soudure
- connectez trois fils à la barre WS2812 (masse, entrée d'alimentation et entrée de données)
- fil de terre et Vcc à 5V et broche GND du Digispark
- souder le fil restant à la broche P0 de Digispark
- souder une résistance de 10KΩ aux broches GND et P2 de la carte
- utiliser deux fils pour connecter le LDR aux broches 5V et P2 (j'ai utilisé des fils émaillés à peine visibles pour des raisons esthétiques)
Étape 3: Micrologiciel
Retrouvez le code de ce projet sur mon GitHub:
Bon à savoir:
- #include doit être utilisé lorsque vous travaillez avec PlatformIO
- les paramètres, comme l'affectation des broches, le nombre de LED WS2812, la vitesse de la roue arc-en-ciel et les seuils sombre/lumineux pour les LED et le LDR sont au début du code
- Adafruit Neopixel est la librairie utilisée pour contrôler les LED WS2812
- La bibliothèque RunningMedian est utilisée pour rendre les lectures LDR plus stables; en raison des limites définies, la cartographie des limites de luminosité des LED, ceci est particulièrement agréable dans des conditions de faible luminosité, où une petite fluctuation peut entraîner un scintillement gênant
- Vous ne trouverez aucune tentative de verrouillage de l'Attiny85, le projet restera donc éditable
Quelques astuces (apparaissant également dans le fichier README.md sur GitHub):
- Pour télécharger le code, assurez-vous d'avoir un câble USB avec chaque broche câblée: les câbles de charge bon marché n'ont souvent que +5 V et une mise à la terre
- Le téléchargement de PlatformIO vers DigiSpark nécessite que vous branchiez le DigiSpark après la compilation, même si la console n'avertit pas "il est maintenant temps de brancher votre DigiSpark", comme le fait Arduino IDE.
- Solution rapide au problème de téléchargement vers DigiSpark à partir de PlatformIO sur MacOS: problème PIO 111
- Les chargeurs USB bon marché peuvent fournir une sortie sale/bruyante, ce qui pourrait faire clignoter étrangement les LED, surtout à faible luminosité: assurez-vous d'avoir une source 5 VDC propre, ou filtrez en ajoutant un condensateur (ou un circuit plus approprié)
Étape 4: boîtier et touche finale
- Faites un trou dans la boîte de votre choix pour héberger le projet, pour brancher votre câble USB. Sachez que plus le trou autour du connecteur micro USB est grand, plus la lumière fuit de votre barre LED, à moins que vous ne fournissiez un joint opaque.
- Faites un trou pour le LDR; veillez à ne pas la faire pointer vers la zone qui sera éclairée par les leds, sinon l'auto-régulation tombera en boucle
- Gravez la surface intérieure pour faire de la place pour la barre LED, car vous ne devriez pas vouloir voir directement les LED tout en regardant votre lampe
- Sceller avec un support opaque le bas du LDR, pour éviter toute interférence dans la luminosité de l'environnement de détection causée par la barre WS2812
- Utilisez une goutte de peinture opaque pour masquer la led d'alimentation Digispark, évitant ainsi qu'elle brille à l'intérieur de la box
- Collez la carte Digispark, la barre LED, le LDR et tous les câbles pour éviter que l'intérieur de votre boîte creuse n'ait l'air désordonné
- Prévoir un câble USB avec interrupteur, pour allumer et éteindre facilement la lampe
Conseillé:
Une galaxie dans votre main ! Boîte à miroirs Infinity : 3 étapes (avec photos)
Une galaxie dans votre main ! Infinity Mirror Box : Ce tutoriel consiste à créer une petite forme qui crée beaucoup de reflets à l'intérieur. Avec des trous sur chaque angle pour la lumière et une petite fenêtre pour voir à travers, vous pouvez regarder ce processus infini dans votre main ! L'idée est venue de regarder l'infini mirr
Le premier aspirateur au monde dans une boîte Altoids : 18 étapes (avec photos)
Le premier aspirateur au monde dans une boîte Altoids : j'adore fabriquer de petits aspirateurs et j'en ai fabriqué beaucoup depuis que j'ai commencé il y a plus de 30 ans. Les premiers étaient dans des boîtes de film plastique noir avec des couvercles à clipser gris ou des étuis à boutons-pression. Tout a commencé quand j'ai vu ma mère se débattre avec
Neopixel Ws2812 Rainbow LED Glow avec M5stick-C - Exécution de Rainbow sur Neopixel Ws2812 à l'aide de M5stack M5stick C à l'aide d'Arduino IDE : 5 étapes
Neopixel Ws2812 Rainbow LED Glow avec M5stick-C | Exécution de Rainbow sur Neopixel Ws2812 en utilisant M5stack M5stick C en utilisant Arduino IDE un motif arc-en-ciel avec
GameBoy dans une boîte à lunch : 9 étapes (avec photos)
GameBoy in a Lunchbox : Avez-vous déjà voulu jouer à des jeux classiques en mangeant ? Peut-être pas, mais si vous l'avez fait, ce projet est fait pour vous ! L'émulateur GameBoy utilise RetroPie sur un Raspberry Pi Zero W. Il y a une batterie avec 2500mAh, qui pourrait sortir environ 20
Comment faire une arcade de bricolage à 2 joueurs avec des fentes pour pièces de monnaie personnalisées, à l'aide d'une boîte de Pandore: 17 étapes (avec photos)
Comment faire une salle d'arcade de bricolage à 2 joueurs avec des fentes pour pièces de chapiteau personnalisées, à l'aide d'une boîte de Pandore Les fentes pour pièces seront conçues de manière à n'accepter que des pièces de la taille d'un quart et plus. Cette arcade est alimentée