Table des matières:

Support de bouteille d'interaction musicale avec lumières réglables : 14 étapes
Support de bouteille d'interaction musicale avec lumières réglables : 14 étapes

Vidéo: Support de bouteille d'interaction musicale avec lumières réglables : 14 étapes

Vidéo: Support de bouteille d'interaction musicale avec lumières réglables : 14 étapes
Vidéo: Homme manger pars un crocodile 2024, Juillet
Anonim
Image
Image
Support de bouteille d'interaction musicale avec lumières réglables
Support de bouteille d'interaction musicale avec lumières réglables
Support de bouteille d'interaction musicale avec lumières réglables
Support de bouteille d'interaction musicale avec lumières réglables

Il y a quelque temps, un de mes amis a commandé un anneau LED 16 bits pour bricoler, et ce faisant, il a eu l'idée de placer une bouteille dessus. Quand je l'ai vu, j'ai été fasciné par le regard de la lumière illuminant le flacon et je me suis souvenu du projet génial "Mc Lighting" de l'utilisateur de Hackaday Tobias Blum:

hackaday.io/project/122568-mc-lighting

L'un des aspects de son projet consistait à contrôler les LED WS2812 via une interface Web auto-écrite sans l'utilisation d'un service externe. Inspiré par son approche sur le contrôle d'un anneau LED, j'ai décidé de combiner ces deux idées et de les amener au niveau supérieur. Dans mon esprit, j'avais un support de bouteille pouvant contenir jusqu'à trois bouteilles, contrôlable via une page Web locale, comportant modes, y compris ceux qui interagissent avec la musique ambiante. Afin de créer un appareil portable, il est alimenté par une cellule de batterie Li-Ion.

Dans ce instructable, je vais parcourir le processus de construction et vous expliquer sa fonction sous-jacente. Ensuite, vous devriez pouvoir créer votre propre version et avoir une idée de la façon d'ajouter un contrôle Web à un projet sans utiliser de service externe.

Étape 1: Options de construction

En ce qui concerne l'électronique de ce projet, vous pouvez soit utiliser une carte NodeMCU, facile à utiliser et assez bon marché, soit créer votre propre carte comme moi. Il n'y a aucun avantage particulier à le faire, j'avais juste une puce ESP8226-12E qui traînait et j'ai décidé de l'utiliser pour pouvoir garder la carte NodeMCU pour un prototypage rapide. Il n'y a qu'une seule différence majeure: vous avez besoin d'une carte USB vers série de 3,3 V pour programmer la carte contrôleur faite maison. Malgré cela, le type que vous choisissez ne fait aucune différence, gardez-le simplement à l'esprit en ce qui concerne les pièces requises.

Il existe cependant une option qui fait toute la différence: le mode musique. Si vous décidez de l'inclure, le support de bouteille peut être utilisé comme un VU-mètre et est en outre capable de changer la couleur des LED chaque fois que la basse de la musique atteint un seuil donné. Cela nécessite cependant du matériel supplémentaire. Vous devez construire un amplificateur qui amplifie la sortie d'une capsule de microphone à condensateur et un filtre passe-bas pour les fréquences basses. Bien que cela puisse sembler difficile, ce n'est vraiment pas le cas. Il ne nécessite aucune pièce spéciale et je recommande fortement d'inclure ce circuit car il améliore considérablement l'appareil.

Étape 2: Pièces et matériaux requis

Pièces et matériaux requis
Pièces et matériaux requis

L'affaire:

Peut-être que la partie la plus difficile de ce projet est le cas. Comme je voulais essayer quelque chose de nouveau, j'ai décidé d'utiliser des plaques MDF d'une épaisseur de 18 mm et de les peindre. Par rapport à d'autres types de bois/matériaux, le MDF a l'avantage que sa surface peut être poncée particulièrement lisse et donc la peinture dessus peut sembler extrêmement brillante. De plus, vous avez besoin de verre acrylique d'une épaisseur de 4 mm pour recouvrir les anneaux LED.

Le boîtier a une longueur de 33 cm et une largeur de 9 cm, je recommande donc une plaque aux dimensions suivantes:

Plaque MDF 400 x 250 x 18 mm

Les couvercles des anneaux LED ont un diamètre d'environ 70 mm, votre plaque de verre acrylique doit donc au moins avoir les dimensions suivantes:

Plaque acrylique 250 x 100 x 4 mm

Pour le peindre, je me suis procuré 125 ml de peinture acrylique blanche et 125 ml de vernis brillant. De plus, je vous recommande d'utiliser un rouleau en mousse car cela vous permet d'appliquer la peinture plus uniformément. Pour la partie ponçage j'ai utilisé une feuille de papier de verre avec un grain de 180, une de 320 et une de 600.

Électronique:

Pour l'électronique, vous avez besoin de trois anneaux LED WS2812 16 bits. Faites juste attention car j'ai trouvé deux types d'anneaux LED 16 bits, vous avez besoin de ceux avec le plus grand diamètre (environ 70 mm), et donc le plus grand écart entre les LED.

Pour l'alimentation, vous avez besoin d'une cellule de batterie Li-Ion, d'un chargeur correspondant et d'un interrupteur. De plus, vous avez besoin d'un régulateur de tension de 3,3 V avec une faible tension de chute (LDO) et de deux condensateurs pour alimenter le microcontrôleur. J'explique pourquoi vous avez besoin du régulateur LDO à l'étape 7.

Si vous décidez de construire l'amplificateur de musique et le circuit de filtrage en option, vous avez besoin d'un amplificateur opérationnel et de certains composants passifs. Et si vous choisissez de créer votre propre unité de contrôle, vous avez besoin de la puce ESP, d'une carte de dérivation, de quelques résistances, d'un bouton et de quelques broches.

Et je recommande fortement un morceau de perfboard pour tout souder dessus.

LED-anneau

Cellule Li-Ion 3,7 V (j'ai récupéré une du type TW18650 dans une batterie inutilisée)

Chargeur Li-Ion

Switch (Rien de spécial, j'en ai utilisé un ancien que j'ai récupéré d'un jeu d'enceintes cassé)

Régulateur de tension LDO (en plus des condensateurs mentionnés dans la fiche technique: 2 x condensateur céramique 1uF)

planche à découper

Circuit musical (facultatif):

D'après le schéma

Microcontrôleur:

NodeMCU

ESP8266 12E (plaque adaptatrice, bouton, résistances et broches selon schéma)

USB vers série (nécessaire pour programmer une carte contrôleur fabriquée par vous-même, si vous en avez déjà une, il n'est pas nécessaire d'en obtenir une autre)

Étape 3: fraisage du boîtier

Fraisage du boîtier
Fraisage du boîtier
Fraisage du boîtier
Fraisage du boîtier
Fraisage du boîtier
Fraisage du boîtier

Un de mes amis s'est construit une MP-CNC et a eu la gentillesse de me fraiser les deux pièces en MDF et les trois anneaux en acrylique. Les pièces en bois sont le haut et le bas d'une boîte en forme de pilule. Au sommet de la boîte, il y a trois emplacements pour les anneaux LED et leurs couvercles en acrylique. Comme ces approfondissements sont conçus pour n'être qu'une fraction plus grands que les PCB, ils s'adaptent et restent en place sans avoir besoin de colle ou de vis. Idem pour les couvertures acryliques. Comme ils ont un diamètre plus grand que les anneaux LED, ils sont placés sur un bord au-dessus des LED (voir photo).

Étape 4: Complétez le dossier

Compléter le cas
Compléter le cas
Compléter le cas
Compléter le cas
Compléter le cas
Compléter le cas
Compléter le cas
Compléter le cas

Vous avez peut-être remarqué qu'en ce moment, il manque plusieurs choses au boîtier fraisé. Des choses comme des trous pour les câbles de la bague, un trou pour la prise USB et une poche pour la batterie. De plus, si vous choisissez d'inclure le circuit musical, un trou pour le microphone est également nécessaire. De plus, je vous recommande de percer des trous sous les anneaux LED afin de pouvoir les pousser hors du boîtier. J'ai utilisé un outil de meulage rotatif pour ajouter les trous décrits ci-dessus.

Sur la troisième photo, vous pouvez voir le "maintenance" et les trous de câble pour la bague. Comme vous l'avez peut-être déjà remarqué, j'ai créé deux trous de câbles. Ce n'était pas exprès. C'était à un stade précoce où je pensais que les angles des anneaux seraient sans importance, mais ils ne le sont pas. Montez-les tous les trois avec leurs câbles du même côté. J'ai fini par les monter vers l'avant.

Important: portez toujours un masque anti-poussière lors du sciage, du perçage ou du fraisage dans le MDF. Idem pour le ponçage.

Étape 5: Terminer le boîtier

Finir l'affaire
Finir l'affaire
Finir l'affaire
Finir l'affaire
Finir l'affaire
Finir l'affaire

Maintenant, le boîtier est peint. Avant de faire cela, je vous recommande de regarder ou de lire un tutoriel à ce sujet, car cela s'est avéré plus difficile que je ne le pensais. Celui-ci couvre tout ce que vous devez savoir sur le sujet.

Tout d'abord, poncez soigneusement l'extérieur des pièces en MDF. J'ai utilisé du papier grain 160 pour cela. Après cela, de nombreux tutoriels recommandent de sceller la surface, en particulier sur les bords, avec un apprêt spécial MDF. J'ai sauté cette partie car l'apprêt est assez cher et, même si le résultat n'est pas aussi bon qu'il aurait pu l'être, je le referais.

Ensuite, vous pouvez commencer à peindre la surface dans la couleur de votre choix. J'ai décidé de peindre le mien en blanc clair. Attendez que la couleur sèche, puis poncez-la avec du papier de verre fin (j'ai utilisé le grain 320), dépoussiérez et appliquez la couche de couleur suivante. Répétez ce processus jusqu'à ce que vous soyez satisfait de l'opacité de la coloration. J'ai appliqué quatre couches de couleur.

Après la dernière couche de couleur, poncez-la avec un papier abrasif encore plus fin qu'avant (dans mon cas le grain 600) et enlevez toute la poussière restant en surface. Après cela, vous pouvez appliquer la première couche de vernis brillant. Comme pour la couleur, appliquez autant de couches que nécessaire pour vous satisfaire. J'en ai utilisé trois pour le haut et les côtés, et deux pour le bas. Vous pouvez voir le résultat sur l'une des photos. Bien que la surface puisse être plus lisse (plus de ponçage et d'apprêt MDF), je suis satisfait de l'effet brillant obtenu.

Étape 6: Préparation des anneaux

Préparation des anneaux
Préparation des anneaux
Préparation des anneaux
Préparation des anneaux

Parallèlement au processus de séchage de la première couche de couleur, vous pouvez poncer les anneaux en verre acrylique. Après cela, ces anneaux diffusent la lumière émise par les LED-Rings. En parlant de cela, j'ai constaté que les PCB de ces bagues avaient des bords indésirables du processus de production, vous devrez donc peut-être les ébavurer. Sinon, ils ne rentreront pas dans le boîtier.

Ensuite, certains fils doivent être soudés aux anneaux. Je vous recommande d'utiliser du fil flexible. J'en ai utilisé un rigide et j'ai eu le problème qu'ils écartaient les deux parties du boîtier, ce qui nécessitait une flexion laide. De plus, le fil rigide est plus susceptible de se casser, ce qui entraîne un processus de soudure désagréable, car vous devez retirer la bague correspondante et la carte contrôleur du boîtier.

Étape 7: Alimentation

Source de courant
Source de courant

Une seule cellule de batterie Li-Ion est utilisée comme source d'alimentation. Il est chargé via le circuit du chargeur. Ce circuit dispose d'une protection contre les décharges et les surintensités. Pour éteindre l'appareil, un interrupteur qui interrompt la sortie positive de la carte du chargeur est intégré.

Comme la tension maximale de la cellule de batterie est de 4,2 V, l'ESP8266 ne peut pas être alimenté directement. La tension est trop élevée pour le microcontrôleur 3,3 V car il ne survit qu'à des tensions comprises entre 3,0 V et 3,6 V. Un régulateur de tension à faible chute (LDO) est un régulateur de tension qui fonctionne même lorsque la tension d'entrée est proche de la tension de sortie spécifiée. Ainsi, une tension de chute de 200 mV pour un LDO de 3,3 V signifie qu'il produit 3,3 V tant que la tension d'entrée est supérieure à 3,5 V. Lorsqu'elle dépasse cette valeur, la tension de sortie commence à diminuer. Comme l'ESP8266 fonctionne avec des tensions jusqu'à 3,0 V, il fonctionne donc jusqu'à ce que la tension d'entrée du LDO tombe à environ 3,3 V (la descente n'est pas linéaire). Cela nous permet d'alimenter le contrôleur via la cellule de batterie jusqu'à ce qu'il soit complètement déchargé.

Étape 8: Carte microcontrôleur

Carte de microcontrôleur
Carte de microcontrôleur

Si vous utilisez une carte NodeMCU, cette étape est assez simple. Connectez simplement la sortie 3.3V et la masse de l'alimentation à l'une des broches 3V et G de la carte. De plus, je recommande de souder la carte sur un morceau de panneau perforé, car cela permet de tout connecter plus facilement.

Si vous décidez de construire votre propre carte contrôleur, la première étape consiste à souder la puce ESP à la plaque adaptatrice. Après cela, ajoutez tous les composants et connexions comme indiqué dans le schéma. Les deux boutons sont nécessaires pour réinitialiser et flasher le contrôleur. Vous remarquerez peut-être sur les images suivantes que je n'utilise qu'un seul bouton. La raison en est que je viens d'en trouver un qui traîne, donc au lieu du bouton pour GPIO0, j'utilise deux broches et un cavalier.

Vous pouvez voir mon circuit terminé à l'étape suivante.

Étape 9: Circuit musical (facultatif)

Circuit musical (facultatif)
Circuit musical (facultatif)
Circuit musical (facultatif)
Circuit musical (facultatif)
Circuit musical (facultatif)
Circuit musical (facultatif)

Comme entrée pour la musique, une simple capsule de microphone à condensateur est utilisée. Il est alimenté via une résistance de limitation de courant connectée au rail d'alimentation 3,3V. En un mot, la capsule fonctionne comme un condensateur, donc lorsque les ondes sonores frappent son diaphragme, sa capacité et, de manière analogue, sa tension, changent. Cette tension est si faible que nous pouvons à peine la mesurer avec le convertisseur analogique-numérique (ADC) de l'ESP. Afin de changer cela, nous amplifions le signal avec un Op-Amp. La tension de sortie amplifiée est ensuite filtrée par un filtre passe-bas passif du premier ordre avec une fréquence de coupure d'environ 70Hz.

Si vous décidez d'utiliser une carte NodeMCU, vous pouvez connecter la sortie du circuit décrit ci-dessus à la broche A0 de la carte. Si vous souhaitez construire votre propre carte contrôleur, vous devez ajouter un diviseur de tension au circuit. La raison en est les ESP intégrés ADC qui ont une tension d'entrée maximale de 1V. Le NodeMCU a déjà ce diviseur de tension intégré, donc pour que le code et l'amplificateur fonctionnent sur les deux cartes, celui que l'on a fabriqué en a aussi besoin.

Étape 10: Terminer et monter l'électronique

Terminer et monter l'électronique
Terminer et monter l'électronique
Terminer et monter l'électronique
Terminer et monter l'électronique
Terminer et monter l'électronique
Terminer et monter l'électronique

Tout d'abord, insérez les anneaux LED dans les profondeurs désignées sur le dessus du boîtier. Après cela, connectez l'alimentation, le microcontrôleur, les anneaux et, si vous l'avez construit, le circuit amplificateur selon le schéma.

Avertissement: Avant de le faire, vérifiez si vous avez coupé l'alimentation à l'aide de l'interrupteur. J'ai oublié de le faire et j'ai fait frire un régulateur LDO pendant la soudure. Après cela, vous êtes prêt à monter l'électronique à l'intérieur du boîtier.

J'ai commencé par fixer la cellule de la batterie au boîtier avec de la colle chaude. Après cela, j'ai positionné le circuit du chargeur et vérifié si je pouvais ou non brancher un câble USB. Comme je ne faisais pas confiance à la colle chaude pour résister à la force de pousser le câble plusieurs fois, j'ai soigneusement martelé des clous minces à travers les plots de soudure du chargeur pour la tension d'entrée. Après le chargeur, j'ai collé la capsule du microphone en place.

Ensuite, j'ai utilisé des broches métalliques pliées pour fixer le microcontrôleur. Cette méthode me permet de sortir le contrôleur du boîtier pour des réparations chaque fois que j'en ai besoin sans avoir besoin de couper à travers de la colle chaude et de ruiner le MDF.

Maintenant, j'ai utilisé des attaches de câble et des goupilles de fil pliées pour monter les fils. La dernière chose à faire est d'insérer les anneaux de couverture en acrylique. Soyez prudent en le faisant, afin de ne pas endommager la peinture car c'est un ajustement assez serré. Vous pourriez même avoir réduit le diamètre intérieur et/ou extérieur des anneaux acryliques car le panneau MDF a absorbé un peu de peinture et les approfondissements sont donc devenus un peu plus petits.

Étape 11: Flasher le microcontrôleur

Flasher le microcontrôleur
Flasher le microcontrôleur

Après avoir terminé la construction du matériel, il ne reste plus qu'à flasher le logiciel. J'ai utilisé l'IDE Arduino pour cela. Mais avant de pouvoir programmer le contrôleur, vous devez ajouter quelques bibliothèques et sélectionner la bonne carte.

Bibliothèques

Vous pouvez soit utiliser le gestionnaire de bibliothèque IDE (Sketch -> Inclure les bibliothèques -> Gérer les bibliothèques) pour les ajouter, soit les télécharger et les déplacer vers le dossier de votre bibliothèque IDE. Je recommande le gestionnaire car il est plus pratique et vous pouvez y trouver toutes les bibliothèques nécessaires.

DNSServer par Kristijan Novoselic (nécessaire pour WiFiManager)

WiFiManager par tzapu et tablatronix (ouvre un point d'accès où vous pouvez entrer les informations d'identification de votre WiFi local)

WebSockets de Markus Sattler (nécessaire pour la communication entre l'appareil utilisateur et le porte-bouteille)

Adafruit NeoPixel par Adafruit (nécessaire pour contrôler les anneaux LED)

Planche

Quel que soit le type de carte contrôleur que vous choisissez d'utiliser, sous Outils -> Carte, sélectionnez NodeMCU 1.0 (module ESP-12E). Assurez-vous que la taille du flash est définie sur 4M (1M SPIFFS) et la vitesse de téléchargement sur 115200.

Clignotant

Pour flasher la carte NodeMCU, connectez-la simplement à votre ordinateur, sélectionnez le bon port et téléchargez le programme. Flasher la carte contrôleur faite maison est un peu plus compliqué. Connectez votre convertisseur USB vers série aux trois broches de la carte. Connectez GND et GND, RX et TX, et TX et RX. Pour entrer dans le mode flash du contrôleur, redémarrez-le avec le bouton RST et maintenez le bouton GPIO0 enfoncé. Après cela, assurez-vous que votre carte de conversion est réglée sur 3,3 V. Terminez le processus en téléchargeant le programme.

Important: allumez votre appareil avant de clignoter.

Étape 12: Télécharger la page Web

Télécharger la page Web
Télécharger la page Web
Télécharger la page Web
Télécharger la page Web
Télécharger la page Web
Télécharger la page Web

Les fichiers nécessaires à la page Web sont stockés dans la mémoire flash des microcontrôleurs. Avant la première utilisation, vous devez les télécharger manuellement. Pour ce faire, alimentez l'appareil (vous devrez peut-être d'abord le charger). Les LED doivent briller en rouge (à cause de mon appareil photo, cela ressemble à de l'orange sur la photo), ce qui signifie que le support de bouteille n'est pas connecté à un réseau. Peu de temps après, un point d'accès WiFi nommé "bottleStandAP" devrait s'ouvrir. Le mot de passe par défaut est "12345678", vous pouvez le modifier dans le fichier ino. Connectez-y votre smartphone/tablette/ordinateur portable. Une notification devrait apparaître et vous rediriger vers une page Web. Si rien de tel ne se produit, ouvrez simplement votre navigateur et tapez 192.168.4.1. Sur cette page, cliquez sur Configurer le WiFi et entrez vos identifiants réseaux. Après cela, le point d'accès doit se fermer et les LED changent de couleur en bleu clair. Cela signifie que l'appareil s'est connecté avec succès à votre réseau.

Vous devez maintenant déterminer l'adresse IP de l'appareil. Pour ce faire, vous pouvez le connecter à votre ordinateur, ouvrir le moniteur série de l'IDE Arduino (le débit en bauds est de 115 200) et redémarrer l'appareil. Vous pouvez également ouvrir la page Web de votre routeur WiFi. Une fois que vous connaissez l'adresse IP de l'appareil, ouvrez votre navigateur et tapez xxx.xxx.xxx.xxx/upload (où le xs représente l'adresse IP du porte-bouteille). Extrayez les fichiers du.rar et téléchargez-les tous. Après cela, tapez simplement l'adresse IP de votre appareil et la page de contrôle devrait s'ouvrir. Et par là, vous avez fini de construire votre propre porte-bouteilles. Toutes nos félicitations!

Étape 13: La page Web

La page Web
La page Web
La page Web
La page Web

La page Web vous permet de contrôler votre porte-bouteilles. Lorsque vous ouvrez la page principale, vous pouvez voir trois cercles bleus en haut au milieu. Ceux-ci vous permettent de sélectionner les paramètres de sonnerie que vous souhaitez modifier. La roue chromatique change la couleur des anneaux sélectionnés lorsque vous cliquez dessus. Le champ ci-dessous vous montre la couleur que vous avez sélectionnée. En appuyant sur le bouton aléatoire, les anneaux sélectionnés sont réglés en mode de couleur aléatoire. Cela signifie que la couleur change chaque fois qu'un cycle du mode respiration est terminé.

Sur la deuxième page, vous pouvez sélectionner les différents modes. La couleur fixe et la luminosité fixe font exactement ce que leur nom implique. Le mode respiration crée un effet « souffle », ce qui signifie que la luminosité des anneaux augmente au cours d'un temps personnalisé jusqu'à son maximum, puis diminue jusqu'à son minimum. Le mode cycle allume une seule LED pendant un temps donné, puis allume la suivante, puis la suivante et ainsi de suite. Le mode de seuil musical change de couleur chaque fois que le microphone détecte un signal supérieur à un seuil personnalisé. Non seulement la musique peut déclencher cela, mais les applaudissements, par exemple, le peuvent aussi. En mode VU-mètre, le nombre de LED qui s'allument dépend du volume des basses de la musique.

Remarque: Vous pouvez utiliser les règles sans activer les modes correspondants. Par exemple: si vous utilisez le mode cycle et modifiez la luminosité via la règle de luminosité fixe, les anneaux resteront en mode cycle mais changeront leur luminosité en fonction de ce que vous avez défini.

Étape 14: Comment tout cela fonctionne-t-il ?

Le principe de fonctionnement est assez simple à appréhender. Chaque fois que vous ouvrez la page Web, l'ESP8266 envoie les fichiers Web à votre appareil. Ensuite, lorsque vous modifiez quelque chose sur la page, un caractère spécial, généralement suivi d'une valeur entière, est envoyé au microcontrôleur via une connexion Websocket. Le contrôleur traite ensuite ces données et modifie les lumières en conséquence.

La partie web est écrite en html, css et javascript. Pour faciliter cette tâche, je nous ai fait du framework CSS Materialise et de jQuery. Si vous souhaitez changer l'apparence du site Web, consultez la documentation du framework. Alternativement, vous pouvez simplement écrire votre propre page et la télécharger. Vous devez juste établir la connexion Websocket et envoyer les mêmes données.

Conseillé: