Table des matières:

Geek Spinner : 14 étapes (avec photos)
Geek Spinner : 14 étapes (avec photos)

Vidéo: Geek Spinner : 14 étapes (avec photos)

Vidéo: Geek Spinner : 14 étapes (avec photos)
Vidéo: Breaking and Entering... | Critical Role | Campaign 3, Episode 20 2024, Juillet
Anonim
Image
Image
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner

Les filateurs Fidget sont amusants, et vous pouvez en trouver un à n'importe quel comptoir de caisse pour quelques dollars ces jours-ci, mais et si vous pouviez construire le vôtre ? Et il y avait des LED ? Et vous pourriez le programmer pour dire ou montrer ce que vous vouliez ? Si cela semble geek cool, CECI EST LE PROJET POUR VOUS.

J'ai toujours été intéressé par l'utilisation de LED clignotantes pour intéresser les enfants à la programmation. Le projet le plus simple avec un microcontrôleur Arduino est d'allumer et d'éteindre une LED. Ensuite, vous leur demandez de voir à quelle vitesse une LED peut clignoter avant d'avoir l'air d'être allumée en continu (environ 12 millisecondes d'intervalle). Ensuite, vous secouez la LED d'avant en arrière et vous pouvez la voir clignoter à nouveau ! Ce phénomène est appelé « persistance de la vision » (POV) et c'est ainsi que fonctionne ce projet. Cela peut conduire à des discussions sur le fonctionnement de l'œil et sur la vitesse incroyable des ordinateurs.

Ce projet utilise un microcontrôleur 8 bits programmable, huit LED et une pile bouton. Il tourne à l'aide d'un roulement de skateboard standard et utilise un capteur à effet Hall et un aimant pour déterminer la rotation. Il est fabriqué à l'aide de pièces traversantes adaptées aux débutants et peut être programmé à l'aide de l'environnement de programmation Arduino. Assez parlé, allons-y…

Étape 1: Rassemblez les pièces, les outils et les fournitures

Image
Image
Rassemblez les pièces, les outils et les fournitures
Rassemblez les pièces, les outils et les fournitures

Il est toujours frustrant d'être à mi-chemin d'une construction et de découvrir qu'il vous manque quelque chose. Ce sont les pièces que j'ai essayées et que j'ai trouvées qui fonctionnent bien. Remplacez à vos risques et périls:

Nomenclature ==================

  • 1 ea, Purple PCB, fabriqué avec amour aux États-Unis par OSH Park
  • 1 pièce, Attiny 84, Atmel ATTINY84A-PU,
  • 1 unité, interrupteur tactile, TE 1825910-6,
  • 1 pièce, interrupteur à glissière SPDT traversant, C&K JS202011AQN,
  • 1 unité, support de batterie, Linx BAT-HLD-001-THM,
  • 8 unités, LED rouge 3 mm 160 Mcd, Wurth 151031SS04000,
  • 8 unités, 330 ohms 1/8W, Stackpole CF18JT330R,
  • 1 pièce, capuchon 0,1 uF, KEMET C320C104M5R5TA,
  • 1 unité, interrupteur magnétique, Melexis MLX92231LUA-AAA-020-SP,
  • 1 pièce, 608 roulements de planche à roulettes,
  • 1 pièce, petit aimant de terre rare 2 mm x 1 mm,
  • 2 pièces, capuchons imprimés en 3D (fichier STL joint).
  • 1 unité, pile CR2032, Panasonic BSP ou équivalent,

Outils et fournitures: pour mes ateliers, j'utilise le kit d'outils pour débutants de SparkFun qui contient tout ce dont vous avez besoin sauf la pince à épiler:

  • Fer à souder.
  • Fil de soudure
  • Pinces à ras (j'adore le Hakko CHP170 à 5 $ !)
  • Tresse à dessouder
  • super colle

Programmation de l'Attiny (étape 4, non requise si vous l'achetez en kit):

  • Arduino (veuillez éviter les clones chinois bon marché et soutenez vos fabricants open source américains).

    • Tableau rouge SparkFun
    • Métro Adafruit
    • Arduino UNO
  • Bouclier de programmation AVR.
  • Adaptateur Pogo (si programmation avec puce installée).
  • Un USB A-B standard pour Uno, un USB Mini pour Redboard ou un USB Micro pour Metro.

Un kit pour ce projet est disponible sur Tindie.com (moins la batterie). L'achat du kit vous permettra d'économiser le temps et les frais de commande auprès de plusieurs fournisseurs différents et d'éviter la prime minimale de commande de PCB. Aussi, programmer un Attiny n'est pas anodin, et si vous achetez le kit, il sera déjà pré-programmé. Vous m'aiderez également à développer et partager d'autres projets dans mes ateliers !

Étape 2: La résistance est essentielle

La résistance est essentielle
La résistance est essentielle
La résistance est essentielle
La résistance est essentielle
La résistance est essentielle
La résistance est essentielle

Nous allons supposer que vous avez une certaine expérience de la construction de kits. Si vous avez besoin d'aide pour souder, rendez-vous sur www.sparkfun.com/tutorials/213 pour vous rafraîchir ou regardez la Geek Girl l'expliquer sur https://www.youtube.com/embed/P5L4Gl6Q4Xo. J'ai également un kit adapté aux débutants sur

J'aime commencer par la résistance car a) elles sont relativement résistantes à la chaleur pendant que vous entrez dans votre rainure de soudure et que le fer monte en température, b) elles n'ont pas de polarité, donc l'orientation n'est pas critique, et c) elles sont les composant le plus bas de la carte, alors tenez-vous bien lors de la soudure. Il y a huit résistances de limitation de courant de 330 ohms, une pour chacune des LED. Vous pouvez en faire un à la fois, ou les huit à la fois.

  • Pliez les fils à la largeur des pastilles et insérez la résistance.
  • Retournez la carte et soudez les fils.
  • Coupez les fils avec des coupes à ras.
  • Frappez-les à nouveau avec le fer si vous voulez qu'ils impressionnent vos amis geeks.

Étape 3: Coder ?

Code?
Code?
Code?
Code?
Code?
Code?
Code?
Code?

Si vous avez acheté mon kit, la puce est préprogrammée et peut passer à l'étape suivante.

Oui, ce projet a besoin de code. Et, si vous faisiez attention, à l'étape 1 je vous ai dit que programmer un Attiny n'était pas anodin. J'utilise l'Arduino, son environnement de programmation, mon programmeur AVR et un gabarit de broche pogo.

La puce peut être programmée avant la soudure en place (photo 2), ou après avoir été soudée en place à l'aide de l'en-tête ISP au bas du PCB (photo 3). Dans les deux cas, la programmation est la suivante:

  • Téléchargez l'environnement de programmation Arduino.
  • Installez le support pour Attiny 85 à partir de:

    • https://highlowtech.org/?p=1695 (Arduino minuscule)
    • https://github.com/SpenceKonde/ATTinyCore (Attiny Core)
  • Téléchargez le "Arduino en tant qu'esquisse ISP": [Fichier] -> [Exemples] -> [Arduino en tant que FAI].
  • Attachez le bouclier de programmation AVR et insérez le câble plat à la position Attiny84
  • Si vous utilisez l'adaptateur Pogo, placez-le sur l'en-tête ISP de la carte. Les pastilles positives et négatives sont marquées afin que vous puissiez orienter correctement l'en-tête.
  • Si vous utilisez la puce, insérez-la avec la broche 1 vers le connecteur USB.
  • Sélectionnez la bonne puce:

    • Arduino Tiny: "Attiny 84 @ 8 Mhz"
    • Attiny Noyau: "Attiny 24/44/84"

      • Puce "Attiny 84"
      • 8 MHz (interne)
      • Mappage des broches "dans le sens inverse des aiguilles d'une montre"
  • Sélectionnez le programmeur, [Outils] -> [Programmeur] -> [Arduino en tant que FAI]
  • Réglez les fusibles de programmation, [Outils] -> [Burn Bootloader]
  • Téléchargez le croquis ci-joint, [Fichier] -> [Télécharger à l'aide du programmeur]

La plus grande source d'erreurs que je reçois consiste à ne pas aligner correctement les broches.

Étape 4: Chip It

Puce-le
Puce-le
Puce-le
Puce-le
Puce-le
Puce-le
Puce-le
Puce-le

Maintenant que votre puce contient du code, vous pouvez l'installer. L'orientation d'une puce DIP (« dual inline package ») est généralement indiquée soit par un trou adjacent à la broche un, soit par un divot à l'extrémité de la puce contenant la broche un, comme c'est le cas ici.

  • Pliez les fils à 90 degrés en les appuyant contre une surface plane (photos 1 et 2).
  • Alignez la puce avec le symbole sur le PCB et insérez la puce (photo 3).
  • Soudez une broche sur les côtés opposés et vérifiez que la puce est à plat contre le PCB et que l'orientation est correcte. Cela devient vraiment difficile à réparer après cela. Faites-moi confiance à ce sujet.
  • Une fois que vous êtes assuré qu'il est correctement inséré, soudez les broches restantes, puis coupez-les à ras.

Étape 5: Commutateur et condensateur

Commutateur et condensateur
Commutateur et condensateur
Commutateur et condensateur
Commutateur et condensateur

Le bouton poussoir va à côté du CI et le condensateur de l'autre côté.

  • Poussez le bouton-poussoir en place (assurez-vous qu'il est dans le bon sens).
  • Soudez-le en place.
  • Coupez les fils à l'arrière.

Le condensateur n'a pas d'orientation, mais si vous mettez le côté écriture à l'extérieur, vos amis geeks sauront quelle valeur vous avez utilisée.

Étape 6: Interrupteur et support de batterie

Interrupteur et support de batterie
Interrupteur et support de batterie
Interrupteur et support de batterie
Interrupteur et support de batterie
Interrupteur et support de batterie
Interrupteur et support de batterie
Interrupteur et support de batterie
Interrupteur et support de batterie

L'interrupteur va avec le niveau pointant vers l'extérieur. Comme pour les autres éléments, soudez deux broches, vérifiez qu'elle est bien à plat, puis soudez le reste.

Le support de batterie a un marquage pour montrer l'orientation, mais cela n'a vraiment pas d'importance. Cependant, il nécessitera un peu plus de chaleur que les câbles ordinaires et vous voudrez vous assurer qu'il est bien à plat pour maintenir la batterie en place (image 4).

Étape 7: LED

LED
LED
LED
LED
LED
LED
LED
LED

Il n'y a pas de projet décent qui n'inclue pas au moins une LED. Cela a HUIT !

Le fil long est positif (anode). Il y a une marque "+" sur la sérigraphie, et le tampon est carré. Si vous faites les huit en même temps, maintenez-les pour vous assurer que toutes les orientations sont correctes.

  • Soudez un fil sur chaque LED.
  • Vérifiez l'orientation et qu'ils sont bien à plat (photo 3).

    Si ce n'est pas le cas, appuyez sur l'étui avec votre pouce et réchauffez la laisse jusqu'à ce qu'elle s'enclenche (photo 4)

  • Soudez le reste.
  • Coupez les fils.

Étape 8: Vérifiez-le

Image
Image
Temps d'essorage
Temps d'essorage

À ce stade, nous pouvons toujours vérifier les LED et éteindre:

  • Insérez une pile avec le côté positif vers l'extérieur.
  • Allumez le spinner puis appuyez sur le bouton jusqu'à ce que toutes (espérons-le) les LED soient allumées (voir la vidéo).
  • Faites tourner la centrifugeuse et voyez le motif. Si une LED ne s'allume pas, elle peut être installée à l'envers ou avoir été endommagée par la chaleur. Dessoudez-le et mettez-en un nouveau.

Dépannage:

  • Si aucune LED ne s'allume:

    • Assurez-vous que votre batterie est bonne et dans le bon sens.
    • As-tu programmé ta puce ? Est-il dans la bonne orientation ? Il fait chaud ?
    • Les LED sont-elles correctement orientées ? Utiliser la pile bouton à travers les joints de soudure LED pour les tester ?
  • Si le commutateur ne fait pas clignoter les LED:

    • Vérifiez les joints de soudure sur la LED.
    • Vérifiez les joints de soudure sur l'Attiny.
  • Si tout le reste échoue, prenez et publiez des photos haute résolution du recto et du verso et demandez de l'aide dans les commentaires.

Étape 9: Temps d'essorage

Temps d'essorage
Temps d'essorage
Temps d'essorage
Temps d'essorage
Temps d'essorage
Temps d'essorage

Le roulement est maintenu en place en soudant le boîtier au grand patin. Cela demande de la patience et beaucoup de chaleur:

  • Utilisez quelque chose comme des pièces de monnaie sur une surface dure pour positionner le roulement.
  • Chauffez à la fois le coussinet et la coquille de roulement jusqu'à ce que vous voyiez de la soudure couler sur le boîtier (cela prend un peu).
  • Répétez de l'autre côté.
  • Vérifiez que le roulement est correctement aligné en faisant tourner le cône.
  • Retournez la carte et soudez deux points de l'autre côté.

Étape 10: Est-ce une révolution ?

Image
Image
Est-ce une révolution ?
Est-ce une révolution ?
Est-ce une révolution ?
Est-ce une révolution ?

Afin d'afficher des messages au lieu de simplement des motifs, nous devons connaître la position de la roulette par rapport au cercle. Nous utiliserons un capteur à effet Hall et un aimant. Ceci est similaire à la façon dont les moteurs à combustion savent quand tirer l'étincelle pour obtenir le plus de puissance. L'orientation et l'alignement du capteur et de l'aimant sont essentiels pour que cela fonctionne.

  • L'écriture sur la face de l'appareil fait face au roulement assorti à la sérigraphie (photo 1).
  • Alignez la hauteur juste au-dessus du roulement (là où l'aimant dans le capuchon sera).
  • Soudez un fil.
  • Vérifiez la hauteur et l'aliment.
  • Soudez les fils restants.
  • Coupez les fils.

Si vous utilisez un capteur Omni-pole, vous devrez déterminer l'orientation de l'aimant. La meilleure façon de le faire est de définir un mode autre que le modèle de l'étape précédente, puis de trouver le côté de l'aimant qui fait clignoter les LED (voir vidéo). Collez l'aimant avec le côté qui a fonctionné vers l'extérieur. Vérifiez votre travail.

Étape 11: Équilibrer

L'équilibre
L'équilibre
L'équilibre
L'équilibre

Si vous maintenez le spinner horizontalement avec la batterie, vous le verrez pivoter du côté de la batterie vers le bas. Malgré mes meilleurs efforts pour équilibrer les composants, il est toujours déséquilibré. Vous pouvez ajouter du poids du côté sans batterie à l'aide d'un écrou et d'un boulon, ou ajouter de la soudure au tampon.

Étape 12: Vous êtes opérationnel

Image
Image
Mais attendez, il y a plus.
Mais attendez, il y a plus.

Avec votre aimant et votre capteur en place, vous êtes prêt à découvrir toute la puissance de votre Geek Spinner. Le mode du spinner est indiqué par la LED qui s'allume à la mise sous tension ou après un appui sur un bouton (D0 - D7). Le mode est changé en appuyant sur le bouton (voir vidéo).

modes entiers = 8; // nombre de modes disponibles

// 0 -> texte "Hello World!" // 1 -> RPM // 2 -> temps en secondes // 3 -> nombre de rotations // 4 -> nombre de rotations (total) // 5 -> motif "lilly pad" // 6 -> forme 1 (coeur) // 7 -> forme 2 (sourire)

Étape 13: Mais attendez, il y en a plus.

Mais attendez, il y a plus.
Mais attendez, il y a plus.
Mais attendez, il y a plus.
Mais attendez, il y a plus.
Mais attendez, il y a plus.
Mais attendez, il y a plus.

Les motifs "coeur" et "smiley" ont été créés en utilisant un graphique polaire pour montrer à quoi ressembleraient les huit segments tous les 5 degrés de rotation.

Par la main:

  • Téléchargez et imprimez l'image en pleine résolution (photo 1).
  • Remplissez les blocs pour faire votre image (image 2).
  • Le long de la radiale, en commençant par 0, calculez l'octet en utilisant noir = 1, blanc = 0;

    La première radiale du cœur est 1, 0, 0, 0, 0, 0, 0, 0, donc l'octet = 0b100000000;

  • Continuez jusqu'à ce que vous ayez terminé (indice, si votre image est symétrique, vous n'avez qu'à faire la moitié).
  • Collez vos octets dans la section "textAndShapes.h" du sketch sous "shape_1" ou "shape_2".

Utilisation de Python:

  • Installez Python.
  • Installez la bibliothèque d'images de Python.
  • Téléchargez le script "readGraph.py" ci-joint.
  • Téléchargez l'image en pleine résolution (photo 1).
  • Ouvrez l'image dans votre éditeur préféré (GIMP ou MS Paint).
  • Utilisez la commande "Remplir" avec la couleur noire sélectionnée pour remplir les segments que vous souhaitez éclairer (image 2).
  • Enregistrez l'image dans le même répertoire que le script "readGraph.py" et modifiez le nom du fichier dans le script pour qu'il corresponde:

im = Image.open('coeur.png')

Exécutez le script et collez la sortie dans la section "textAndShapes.h" de l'esquisse sous "shape_1" ou "shape_2"

Dans tous les cas, n'hésitez pas à partager votre création (image et code) dans les commentaires !

Étape 14: Crédits et réflexions finales

Crédits et réflexions finales
Crédits et réflexions finales

Je n'ai certainement pas inventé tout cela tout seul. Pas de loin.

  • Ma première expérience pratique avec POV était avec un projet de Nick Sayer appelé le POV Twirlie: https://www.tindie.com/products/nsayer/pov-twirlie/. (J'utilise aussi l'adaptateur pogo).
  • La pensée "LED + Fidget spinner = POV" est apparue dans mon cerveau après avoir vu Instructable de Techydiy
  • Chaque fois que vous avez une idée géniale, quelqu'un l'a déjà fait: https://www.instructables.com/id/POV-Arduino-Fidget-Spinner/. Le soudage en surface est quelque chose que je peux faire, mais pas vraiment adapté aux débutants. Son code était également un peu au-dessus de ma tête, mais j'ai utilisé ses idées sur l'affichage des RPM et des comptes.
  • J'ai pu comprendre et utiliser des extraits du code d'horloge POV de Reger-men pour afficher du texte:

Aucun projet n'est jamais complet ou parfait. Voici quelques réflexions que j'ai pour l'avenir:

  • Balance: les fiches techniques contiennent rarement des informations sur le poids des composants, il est donc difficile de faire une estimation éclairée de la balance sans simplement la construire. La batterie est évidemment le composant le plus lourd. J'ai ajouté des trous à chaque extrémité pour pouvoir ajouter du poids au besoin pour l'équilibrer.
  • Dans le sens des aiguilles d'une montre ? Si vous l'avez remarqué, le texte ne s'affiche correctement que si vous tournez dans le sens des aiguilles d'une montre. Tourner dans l'autre sens crée une image miroir. L'ajout d'un deuxième capteur Hall ou d'un aimant vous permettrait de dériver le sens de rotation (le projet de Sean l'a fait).
  • Couleur? L'utilisation de LED RVB programmables vous permettrait de faire des couleurs. Ils sont généralement montés en surface cependant.

Conseillé: