INHOUDSOPGAWE:

Geek Spinner: 14 stappe (met foto's)
Geek Spinner: 14 stappe (met foto's)

Video: Geek Spinner: 14 stappe (met foto's)

Video: Geek Spinner: 14 stappe (met foto's)
Video: Wie is het, maar dan anders #BRAILLE #BILLEN #blindfluencer #blindfun #VoelJeGOED @roxannekwant3463 2024, Julie
Anonim
Image
Image
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner

Fidget-draaiers is lekker, en u kan deesdae byna by elke uitklokbank 'n paar dollar kry, maar wat as u u eie kan bou? En het dit LED's gehad? En u kan dit programmeer om te sê of te wys wat u wil? As dit snaaks klink, is dit die projek vir u.

Ek was nog altyd geïnteresseerd in die gebruik van knipperende LED's om kinders te laat belangstel in programmering. Die eenvoudigste projek met 'n Arduino -mikrobeheerder is om 'n LED aan en af te knip. Dan laat u hulle sien hoe vinnig 'n LED kan flikker voordat dit aanhoudend aanskakel (ongeveer 12 millisekonde tussenposes). Dan skud jy die LED heen en weer en jy kan sien dat dit weer knip! Hierdie verskynsels word 'persistence of vision' (POV) genoem en is hoe hierdie projek werk. Dit kan lei tot besprekings van beide hoe die oog werk en hoe ongelooflik vinnig rekenaars is.

Hierdie projek maak gebruik van 'n programmeerbare 8-bis mikrobeheerder, agt LED's en 'n muntsel. Dit draai met 'n standaard skaatsplanklager en gebruik 'n Hall-effek sensor en 'n magneet om rotasie te bepaal. Dit word gemaak met behulp van beginnersvriendelike deurgaande dele en kan geprogrammeer word met behulp van die Arduino-programmeeromgewing. Genoeg gesels, kom ons maak…

Stap 1: Versamel die onderdele, gereedskap en voorrade

Image
Image
Versamel die onderdele, gereedskap en voorrade
Versamel die onderdele, gereedskap en voorrade

Dit is altyd frustrerend om halfpad deur 'n gebou te kom en te vind dat u iets mis. Dit is die dele wat ek probeer het en gevind het dat hulle goed werk. Vervang op eie risiko:

Materiale -opgawe ====================

  • 1 stuk, pers PCB, liefdevol in die VSA vervaardig deur OSH Park
  • 1 ea, Attiny 84, Atmel ATTINY84A-PU,
  • 1 ea, tasbare skakelaar, TE 1825910-6,
  • 1 ea, Slide Switch SPDT Through Hole, C&K JS202011AQN,
  • 1 stuk, batteryhouer, Linx BAT-HLD-001-THM,
  • 8 stuks, 3 mm rooi LED 160 Mcd, Wurth 151031SS04000,
  • 8 ea, 330 ohm 1/8W, Stackpole CF18JT330R,
  • 1 stuk, 0,1 uF -dop, KEMET C320C104M5R5TA,
  • 1 stuk, magnetiese skakelaar, Melexis MLX92231LUA-AAA-020-SP,
  • 1 ea, 608 Skateboard Bearing,
  • 1 stuk, klein skaars aardmagneet 2 mm x 1 mm,
  • 2 e, 3D -gedrukte kappies (STL -lêer aangeheg).
  • 1 stuk, CR2032 -battery, Panasonic BSP of ekwivalent,

Gereedskap en toebehore: Vir my werkswinkels gebruik ek SparkFun's Beginner's ToolKit wat alles bevat wat u nodig het, behalwe die pincet:

  • Soldeerbout.
  • SolderWire
  • Spoelsnyers (ek hou van die $ 5 Hakko CHP170!)
  • Desolderende vlegsel
  • wondergom

Die Attiny programmeer (stap 4, nie nodig as u dit as 'n kit koop nie):

  • Arduino (vermy asseblief die goedkoop Chinese klone en ondersteun u Amerikaanse open source -vervaardiging).

    • SparkFun Redboard
    • Adafruit Metro
    • Arduino UNO
  • AVR -programmeerskild.
  • Pogo -adapter (indien geprogrammeer met geïnstalleerde chip).
  • 'N Standaard USB A-B vir Uno, USB Mini vir Redboard, of USB Micro vir Metro.

'N Kit vir hierdie projek is beskikbaar op Tindie.com (minus die battery). As u die kit koop, bespaar u tyd en koste om by verskillende verskaffers te bestel en vermy u die minimum PCB -bestelpremie. Die programmering van 'n Attiny is ook nie triviaal nie, en as u die kit koop, is dit reeds vooraf geprogrammeer. U sal my ook help om ander projekte in my werkswinkels te ontwikkel en te deel!

Stap 2: Weerstand is noodsaaklik

Weerstand is noodsaaklik
Weerstand is noodsaaklik
Weerstand is noodsaaklik
Weerstand is noodsaaklik
Weerstand is noodsaaklik
Weerstand is noodsaaklik

Ons neem aan dat u ervaring het met die bou van kitskas. As u hulp nodig het om te soldeer, gaan dan na www.sparkfun.com/tutorials/213 om te kyk of die Geek Girl dit verduidelik op https://www.youtube.com/embed/P5L4Gl6Q4Xo. Ek het ook 'n kit wat geskik is vir beginners op

Ek hou daarvan om met die weerstand te begin, want a) hulle is relatief hittebestand terwyl jy in jou soldeergroef kom en die yster styg, b) hulle het geen polariteit nie, dus is oriëntasie nie van kritieke belang nie, en c) dit is die laagste komponent op die bord, so sit styf tydens soldeer. Daar is agt 330-ohm stroombeperkende weerstande, een vir elk van die LED's. U kan een op 'n slag doen, of al agt tegelyk.

  • Buig die leidings tot die breedte van die pads en plaas die weerstand.
  • Draai die bord om en soldeer die drade.
  • Sny die leidings af met spoelsnitte.
  • Slaan hulle weer met die yster as u wil hê dat hulle u geekvriende moet beïndruk.

Stap 3: Kode?

Kode?
Kode?
Kode?
Kode?
Kode?
Kode?
Kode?
Kode?

As u my kit gekoop het, is die chip vooraf geprogrammeer en kan u na die volgende stap oorgaan.

Ja, hierdie projek benodig 'n paar kode. En as u aandag gee, het ek in stap 1 vir u gesê dat die programmering van 'n Attiny nie triviaal is nie. Ek gebruik die Arduino, die programmeeromgewing, my AVR -programmeerder en 'n pogo -pin.

Die chip kan geprogrammeer word voordat dit op sy plek gesoldeer word (foto 2), of nadat dit op sy plek gesoldeer is met behulp van die ISP -kop aan die onderkant van die PCB (foto 3). In beide gevalle is die programmering soos volg:

  • Laai die Arduino -programmeeromgewing af.
  • Installeer ondersteuning vir die Attiny 85 uit een van die volgende:

    • https://highlowtech.org/?p=1695 (Arduino Tiny)
    • https://github.com/SpenceKonde/ATTinyCore (Attiny Core)
  • Laai die "Arduino as ISP -skets" op: [File] -> [Voorbeelde] -> [Arduino as ISP].
  • Bevestig die AVR -programmeerskild en plaas die lintkabel in die Attiny84 -posisie
  • As u die Pogo -adapter gebruik, plaas dit dan op die ISP -kop op die bord. Die positiewe en negatiewe pads is gemerk sodat u die kop reg kan oriënteer.
  • As u die chip gebruik, steek dit met 'n pen een na die USB -aansluiting.
  • Kies die korrekte chip:

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

      • Skyfie "Attiny 84"
      • 8 Mhz (intern)
      • Speld kartering "teen die kloksgewys"
  • Kies die programmeerder, [Tools] -> [Programmer] -> [Arduino as ISP]
  • Stel die programmeringsversekerings in, [Tools] -> [Burn Bootloader]
  • Laai die aangehegte skets op, [File] -> [Laai op met programmeerder]

Die grootste bron van foute wat ek kry, behels dat die penne nie reg geplaas is nie.

Stap 4: Skyf dit

Skyf dit
Skyf dit
Skyf dit
Skyf dit
Skyf dit
Skyf dit
Skyf dit
Skyf dit

Noudat u chip kode bevat, kan u dit installeer. Die oriëntasie van 'n DIP -chip ('dual inline package') -skyfie word gewoonlik aangedui deur 'n gat langs pen een, óf 'n spleet aan die einde van die chip met pen 1, soos hier die geval is.

  • Buig die drade tot 90 grade deur dit teen 'n plat oppervlak te druk (foto's 1 en 2).
  • Rig die chip met die simbool op die PCB en plaas die chip (foto 3).
  • Soldeer een pen aan weerskante en kyk of die chip plat teen die printplaat is en dat die rigting korrek is. Hierna word dit baie moeilik om op te los. Vertrou my hieroor.
  • Sodra u seker is dat dit reg is, soldeer u die oorblywende penne en sny dit dan gelyk.

Stap 5: Skakelaar en kondensator

Skakelaar en kondensator
Skakelaar en kondensator
Skakelaar en kondensator
Skakelaar en kondensator

Die drukknop gaan langs die IC en die kapasitor aan die ander kant.

  • Druk die drukknop op sy plek (maak seker dat dit in die regte rigting is).
  • Soldeer dit op sy plek.
  • Knip die leidings van die agterkant af.

Die kondensator het nie 'n oriëntasie nie, maar as u die skryfkant na vore bring, sal u geekvriende weet watter waarde u gebruik het.

Stap 6: Skakelaar en batteryhouer

Skakelaar en batteryhouer
Skakelaar en batteryhouer
Skakelaar en batteryhouer
Skakelaar en batteryhouer
Skakelaar en batteryhouer
Skakelaar en batteryhouer
Skakelaar en batteryhouer
Skakelaar en batteryhouer

Die skakelaar gaan met die vlak wat na buite wys. Soos die ander items, soldeer twee penne in, kyk of dit plat sit en soldeer dan die res.

Die batteryhouer het 'n merk om die rigting aan te dui, maar dit maak nie saak nie. Dit verg egter 'n bietjie meer hitte as gewone kabels, en u wil seker maak dat dit plat sit om die battery in posisie te hou (prent 4).

Stap 7: LED's

LED's
LED's
LED's
LED's
LED's
LED's
LED's
LED's

Daar is nie 'n ordentlike projek wat nie ten minste een LED bevat nie. Dit het AGT!

Die lang voorpunt is positief (anode). Daar is 'n "+" -merk op die seeskerm en die kussing is vierkantig. As u al agt gelyktydig doen, hou hulle omhoog om seker te maak dat u al die rigtings korrek het.

  • Soldeer een lood op elke LED.
  • Verifieer die rigting en dat hulle plat sit (prent 3).

    As dit nie die geval is nie, druk u met die duim op die omhulsel en verhit die lood totdat dit in sy posisie klik (prent 4)

  • Soldeer die res.
  • Knip die leidrade vas.

Stap 8: Check dit uit

Image
Image
Draai tyd
Draai tyd

Op hierdie punt kan ons steeds die LED's nagaan en uitskakel:

  • Plaas 'n battery met die positiewe kant na buite.
  • Skakel die spinner aan en druk dan op die knoppie totdat alle (hopelik) die LED's aan is (sien die video).
  • Draai die draai en sien die patroon. As 'n LED nie brand nie, kan dit agteruit geïnstalleer word of kan dit hitte beskadig. Los dit af en plaas 'n nuwe een.

Probleemoplossing:

  • As daar geen LED's brand nie:

    • Maak seker dat u battery goed en in die regte rigting is.
    • Het u u chip geprogrammeer? Is dit in die regte rigting? Word dit warm?
    • Is die LED's korrek gerig? Gebruik die muntsel oor die geleide soldeerverbindings om dit te toets?
  • As die skakelaar nie die LED's laat knipper nie:

    • Gaan die soldeerverbindings op die LED na.
    • Gaan die soldeerverbindings op die Attiny na.
  • As dit alles misluk, neem en plaas hoë resolusie foto's van voor en agter en vra hulp in die kommentaar.

Stap 9: Draai tyd

Draai tyd
Draai tyd
Draai tyd
Draai tyd
Draai tyd
Draai tyd

Die laer word vasgehou deur die kas aan die groot stuk te soldeer. Dit verg geduld en baie hitte:

  • Gebruik iets soos muntstukke op 'n harde oppervlak om die laer te plaas.
  • Verhit die kussing en die laerskulp totdat u soldeer op die omhulsel sien vloei (dit neem 'n bietjie).
  • Herhaal aan die ander kant.
  • Verifieer dat die peiling korrek in lyn is deur die draai te draai.
  • Draai die bord om en soldeer twee punte aan die ander kant.

Stap 10: Is dit 'n revolusie?

Image
Image
Is dit 'n rewolusie?
Is dit 'n rewolusie?
Is dit 'n rewolusie?
Is dit 'n rewolusie?

Om boodskappe in plaas van net patrone te wys, moet ons die posisie van die draaier in verhouding tot die sirkel ken. Ons gebruik 'n Hall-effek sensor en 'n magneet. Dit is soortgelyk aan hoe verbrandingsmotors weet wanneer hulle die vonk moet afvuur om die meeste krag te kry. Die oriëntasie en belyning van beide die sensor en die magneet is van kritieke belang om dit te laat werk.

  • Die skrif op die voorkant van die toestel kyk na die laer wat by die syskerm pas (foto 1).
  • Rig die hoogte net bokant die laer uit (waar die magneet in die dop sal wees).
  • Soldeer een lood.
  • Verifieer die hoogte en spysvertering.
  • Soldeer die oorblywende leidrade.
  • Knip die leidrade vas.

As u 'n Omni-pool sensor gebruik, moet u die oriëntasie van die magneet bepaal. Die beste manier om dit te doen is om 'n ander modus as die patroon van die vorige stap in te stel en dan die kant van die magneet te vind waarmee die LED's begin knip (sien video). Plak die magneet vas met die kant wat na buite gewerk het. Gaan u werk weer na.

Stap 11: Wet op die balansering

Wet op die balansering
Wet op die balansering
Wet op die balansering
Wet op die balansering

As u die draaier horisontaal omhoog hou met die battery in, sien u dat dit na die batterykant na onder draai. Ondanks my beste poging om komponente te balanseer, is dit steeds buite balans. U kan 'n bietjie gewig by die kant van die battery voeg met 'n moer en bout, of 'n bietjie soldeer by die kussing voeg.

Stap 12: U is operasioneel

Image
Image
Maar wag, daar is meer.
Maar wag, daar is meer.

As u magneet en sensor op hul plek is, is u gereed om die volledige wonderlikheid van u Geek Spinner na te gaan. Die modus van die spinner word aangedui deur die LED wat brand by aanskakeling of na 'n druk op die knoppie (D0 - D7). Die modus word verander deur op die knoppie te druk (sien video).

int modes = 8; // aantal beskikbare modusse

// 0 -> teks "Hallo wêreld!" // 1 -> RPM // 2 -> tyd in sekondes // 3 -> spin telling // 4 -> spin telling (totaal) // 5 -> "lilly pad" patroon // 6 -> vorm 1 (hart) // 7 -> vorm 2 (glimlag)

Stap 13: Maar wag, daar is meer.

Maar wag, daar is meer.
Maar wag, daar is meer.
Maar wag, daar is meer.
Maar wag, daar is meer.
Maar wag, daar is meer.
Maar wag, daar is meer.

Die "hart" en "smiley" patrone is geskep deur 'n poolgrafiek te gebruik om aan te toon hoe die agt segmente elke 5 rotasie grade sou lyk.

Met die hand:

  • Laai die prent in volle resolusie af en druk dit af (prent 1).
  • Vul die blokkies in om u prentjie te maak (prent 2).
  • Bereken langs die radiaal, begin met 'n 0, die greep met behulp van swart = 1, wit = 0;

    Die eerste radiaal van die hart is 1, 0, 0, 0, 0, 0, 0, 0, 0, dus die byte = 0b100000000;

  • Gaan voort totdat u klaar is (wenk, as u beeld simmetries is, hoef u slegs die helfte te doen).
  • Plak u grepe in die skets -gedeelte "textAndShapes.h" onder "vorm_1 " of "vorm_2 ".

Gebruik Python:

  • Installeer Python.
  • Installeer Python's Image -biblioteek.
  • Laai die aangehegte "readGraph.py" -skrif af.
  • Laai beeld met volledige resolusie af (prent 1).
  • Maak die prent oop in u gunsteling redakteur (GIMP of MS Paint).
  • Gebruik die opdrag "Vul" met 'n swart kleur om die segmente wat u wil verlig, te vul (prent 2).
  • Stoor die prent in dieselfde gids as die "readGraph.py" -skrip en verander die lêernaam in die skrif sodat dit daarby pas:

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

Begin die script en plak die uitvoer in die "textAndShapes.h" gedeelte van die skets onder "shape_1 " of "shape_2"

Hoe dan ook, deel gerus u skepping (prentjie en kode) in die kommentaar!

Stap 14: Krediete en laaste gedagtes

Krediete en laaste gedagtes
Krediete en laaste gedagtes

Ek het beslis nie alleen hierop gekom nie. Nie op 'n afstand nie.

  • My eerste ervaring met POV was met 'n projek van Nick Sayer genaamd POV Twirlie: https://www.tindie.com/products/nsayer/pov-twirlie/. (Ek gebruik ook 'n pogo -adapter).
  • Die gedagte "LED + Fidget spinner = POV" het in my brein opgekom nadat ek Techydiy's Instructable gesien het
  • Elke keer as u 'n wonderlike idee het, het iemand dit reeds gedoen: https://www.instructables.com/id/POV-Arduino-Fidget-Spinner/. Soldeerwerk op die oppervlak is iets wat ek kan doen, maar nie regtig beginnersvriendelik nie. Sy kode was ook 'n bietjie oor my kop, maar ek het wel sy idees gebruik om RPM en tellings te vertoon.
  • Ek kon snitte van die Reger-mans POV-klokkode verstaan en gebruik om teks te vertoon:

Geen projek is ooit voltooi of perfek nie. Hier is 'n paar gedagtes wat ek vorentoe het:

  • Saldo: Gegewensblaaie bevat selde inligting oor die gewig van die komponente, so dit is moeilik om selfs 'n opgevoede raaiskoot oor die balans te maak sonder om dit net te bou. Die battery is natuurlik die swaarste komponent. Ek het gate aan elke kant bygevoeg sodat ek gewig kon byvoeg om dit te balanseer.
  • Kloksgewys? As u dit opgemerk het, word die teks slegs korrek vertoon as u in die rigting van die klok draai. Om die ander rigting te draai, skep 'n spieëlbeeld. Deur 'n tweede Hall -sensor of magneet by te voeg, kan u die rotasierigting aflei (Sean se projek het dit gedoen).
  • Kleur? Deur programmeerbare RGB -LED's te gebruik, kan u kleure doen. Hulle is egter gewoonlik op die oppervlak.

Aanbeveel: