Sisällysluettelo:

Geek Spinner: 14 vaihetta (kuvilla)
Geek Spinner: 14 vaihetta (kuvilla)

Video: Geek Spinner: 14 vaihetta (kuvilla)

Video: Geek Spinner: 14 vaihetta (kuvilla)
Video: Curious Beginnings | Critical Role: THE MIGHTY NEIN | Episode 1 2024, Marraskuu
Anonim
Image
Image
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner

Fidget-kiekot ovat hauskoja, ja voit löytää sellaisen melkein mistä tahansa uloskirjautumistiskistä vain muutamalla dollarilla näinä päivinä, mutta entä jos voisit rakentaa oman? Ja oliko siinä ledit? Ja voitko ohjelmoida sen sanomaan tai näyttämään mitä haluat? Jos tämä kuulostaa viileältä, TÄMÄ ON PROJEKTI SINULLE.

Olen aina ollut kiinnostunut käyttämään vilkkuvia LED -valoja saadakseni lapset kiinnostumaan ohjelmoinnista. Yksinkertaisin projekti Arduino -mikrokontrollerilla on LED -valon vilkkuminen päälle ja pois. Sitten saat heidät näkemään, kuinka nopeasti LED voi vilkkua ennen kuin näyttää siltä, että se palaa jatkuvasti (noin 12 millisekunnin välein). Sitten ravistat LEDiä edestakaisin ja näet sen vilkkuvan uudelleen! Tätä ilmiötä kutsutaan "vision pysyvyydeksi" (POV) ja näin tämä projekti toimii. Se voi johtaa keskusteluihin sekä siitä, miten silmä toimii että kuinka uskomattoman nopeita tietokoneet ovat.

Tämä projekti käyttää ohjelmoitavaa 8-bittistä mikro-ohjainta, kahdeksaa LEDiä ja nappiparistoa. Se pyörii tavallisella rullalautalaakerilla ja käyttää Hall-efektianturia ja magneettia pyörimisen määrittämiseen. Se on tehty aloittelijaystävällisistä reikäosista ja se voidaan ohjelmoida Arduino-ohjelmointiympäristön avulla. Puhuminen riittää, aloitetaan…

Vaihe 1: Kerää osat, työkalut ja tarvikkeet

Image
Image
Kerää osat, työkalut ja tarvikkeet
Kerää osat, työkalut ja tarvikkeet

On aina turhauttavaa päästä rakennuksen puolivälissä ja huomata, että jotain puuttuu. Nämä ovat osia, joita olen kokeillut ja todennut toimivan hyvin. Vaihda omalla vastuullasi:

Materiaaliluettelo ==================

  • 1 ea, violetti PCB, OSH Parkin rakkaasti valmistettu Yhdysvalloissa
  • 1 ea, Attiny 84, Atmel ATTINY84A-PU,
  • 1 ea, kosketuskytkin, TE 1825910-6,
  • 1 ea, liukukytkin SPDT Through Hole, C&K JS202011AQN,
  • 1 kpl, paristopidike, Linx BAT-HLD-001-THM,
  • 8 ea, 3 mm punainen LED 160 Mcd, Wurth 151031SS04000,
  • 8 ea, 330 ohmia 1/8W, Stackpole CF18JT330R,
  • 1 ea, 0,1 uF -korkki, KEMET C320C104M5R5TA,
  • 1 ea, magneettikytkin, Melexis MLX92231LUA-AAA-020-SP,
  • 1 ea, 608 Skeittilaakeri,
  • 1 ea, pieni harvinaisten maametallien magneetti 2 mm x 1 mm,
  • 2 ea, 3D -tulostetut korkit (STL -tiedosto liitteenä).
  • 1 ea, CR2032 -akku, Panasonic BSP tai vastaava,

Työkalut ja tarvikkeet: Käytän työpajoissani SparkFun's Beginner's ToolKitiä, jossa on kaikki tarvitsemasi paitsi pinsetit:

  • Juotin.
  • SolderWire
  • Tasohiotut plyers (rakastan $ 5 Hakko CHP170!)
  • Juotosporaus
  • pikaliima

Attinyn ohjelmointi (vaihe 4, ei vaadita, jos ostat tämän pakkauksena):

  • Arduino (vältä halpoja kiinalaisia klooneja ja tue Yhdysvaltain avoimen lähdekoodin valmistajia).

    • SparkFun Redboard
    • Adafruutin metro
    • Arduino UNO
  • AVR -ohjelmointisuojus.
  • Pogo -sovitin (jos ohjelmoidaan sirulla asennettuna).
  • Vakio USB A-B Unolle, USB Mini Redboardille tai USB Micro Metroille.

Tämän projektin pakkaus on saatavana Tindie.com -sivustolta (miinus akku). Paketin ostaminen säästää aikaa ja kuluja tilaamalla useilta eri toimittajilta ja välttää PCB -tilausten vähimmäismaksun. Myös Attinyn ohjelmointi ei ole vähäpätöistä, ja jos ostat sarjan, se on jo esiohjelmoitu. Autat myös minua kehittämään ja jakamaan muita projekteja työpajoissani!

Vaihe 2: Vastus on välttämätöntä

Vastus on välttämätöntä
Vastus on välttämätöntä
Vastus on välttämätöntä
Vastus on välttämätöntä
Vastus on välttämätöntä
Vastus on välttämätöntä

Oletamme, että sinulla on kokemusta sarjan rakentamisesta. Jos tarvitset apua juottamisessa, siirry osoitteeseen www.sparkfun.com/tutorials/213 harjaamaan tai katso Geek Girlin selittävän sen osoitteessa https://www.youtube.com/embed/P5L4Gl6Q4Xo. Minulla on myös aloittelijoille sopiva paketti osoitteessa

Tykkään aloittaa vastuksesta, koska a) ne ovat suhteellisen kuumuutta kestäviä, kun joudut juotosuraasi ja rauta nousee lämpötilaan, b) niillä ei ole napaisuutta, joten suunta ei ole kriittinen ja c) ne ovat levyn alin komponentti, joten istu tiukasti juotettaessa. Virtaa rajoittavia vastuksia on kahdeksan 330 ohmia, yksi kullekin LEDille. Voit tehdä yhden kerrallaan tai kaikki kahdeksan kerralla.

  • Taivuta johdot tyynyjen leveydelle ja aseta vastus paikalleen.
  • Käännä levy ympäri ja juota johdot.
  • Leikkaa johdot tasaisilla leikkauksilla.
  • Lyö heitä uudelleen raudalla, jos haluat heidän tekevän vaikutuksen geek -kavereihisi.

Vaihe 3: Koodi?

Koodi?
Koodi?
Koodi?
Koodi?
Koodi?
Koodi?
Koodi?
Koodi?

Jos ostit paketin, siru on esiohjelmoitu ja voi siirtyä seuraavaan vaiheeseen.

Kyllä, tämä projekti tarvitsee koodin. Ja jos kiinnitit huomiota, kerroin vaiheessa 1, että Attinyn ohjelmointi ei ollut vähäpätöistä. Käytän Arduinoa, se on ohjelmointiympäristö, AVR -ohjelmoijani ja pogo -nasta.

Siru voidaan ohjelmoida ennen juottamista paikalleen (kuva 2) tai sen jälkeen, kun se on juotettu paikalleen käyttämällä piirilevyn pohjassa olevaa ISP -otsikkoa (kuva 3). Kummassakin tapauksessa ohjelmointi on seuraava:

  • Lataa Arduinon ohjelmointiympäristö.
  • Asenna tuki Attiny 85: lle jommankummasta:

    • https://highlowtech.org/?p=1695 (Arduino Tiny)
    • https://github.com/SpenceKonde/ATTinyCore (Attiny Core)
  • Lataa "Arduino Internet -palvelun luonnoksena": [File] -> [Examples] -> [Arduino as ISP].
  • Kiinnitti AVR -ohjelmointisuojuksen ja työnnä nauhakaapeli Attiny84 -asentoon
  • Jos käytät Pogo -sovitinta, aseta se taulun Internet -palveluntarjoajan otsikkoon. Positiiviset ja negatiiviset tyynyt on merkitty, jotta voit suunnata otsikon oikein.
  • Jos käytät sirua, työnnä se nasta yksi kohti USB -liitäntää.
  • Valitse oikea siru:

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

      • Siru "Attiny 84"
      • 8 Mhz (sisäinen)
      • Nastakartoitus "Vastapäivään"
  • Valitse ohjelmoija, [Työkalut] -> [Ohjelmoija] -> [Arduino Internet -palveluntarjoajana]
  • Aseta ohjelmointisulakkeet, [Työkalut] -> [Polta käynnistyslatain]
  • Lataa liitteenä oleva luonnos, [Tiedosto] -> [Lataa ohjelmoijalla]

Suurin virheiden lähde on se, että nastat eivät ole kohdakkain oikein.

Vaihe 4: Chip It

Chip It
Chip It
Chip It
Chip It
Chip It
Chip It
Chip It
Chip It

Nyt kun sirullasi on koodi, voit asentaa sen. DIP -sirun suuntaus ("dual inline package") on yleensä osoitettu joko reiän vieressä olevalla reiällä tai sirulla, joka sisältää tapin 1, kuten tässä tapauksessa.

  • Taivuta johtimia 90 astetta painamalla niitä litteää pintaa vasten (kuvat 1 ja 2).
  • Kohdista siru piirilevyn symboliin ja aseta siru paikalleen (kuva 3).
  • Juotos yksi tappi vastakkaisille puolille ja tarkista, että siru on tasainen piirilevyä vasten ja että suunta on oikea. Sen korjaaminen on todella vaikeaa tämän jälkeen. Luota minuun tässä.
  • Kun olet varma, että se on oikein, juota loput nastat ja leikkaa ne sitten tasaisiksi.

Vaihe 5: Vaihda ja kondensaattori

Kytkin ja kondensaattori
Kytkin ja kondensaattori
Kytkin ja kondensaattori
Kytkin ja kondensaattori

Painike menee IC: n viereen ja kondensaattori toiselle puolelle.

  • Työnnä painike paikalleen (varmista, että se on oikeassa asennossa).
  • Juota se paikalleen.
  • Leikkaa johdot pois takaa.

Kondensaattorilla ei ole suuntausta, mutta jos laitat kirjoituspuolen ulos, nörttiystävät tietävät, mitä arvoa käytit.

Vaihe 6: Kytkin ja akun pidike

Kytkin ja akun pidike
Kytkin ja akun pidike
Kytkin ja akun pidike
Kytkin ja akun pidike
Kytkin ja akun pidike
Kytkin ja akun pidike
Kytkin ja akun pidike
Kytkin ja akun pidike

Kytkin menee niin, että taso osoittaa ulospäin. Muiden esineiden tapaan juota kaksi nastaa sisään, tarkista, että se on paikallaan ja juota loput.

Akkupidikkeessä on merkintä suunnan osoittamiseksi, mutta sillä ei todellakaan ole väliä. Se vaatii kuitenkin hieman enemmän lämpöä kuin tavalliset johdot, ja sinun on varmistettava, että se istuu tasaisesti, jotta akku pysyy paikallaan (kuva 4).

Vaihe 7: LEDit

LEDit
LEDit
LEDit
LEDit
LEDit
LEDit
LEDit
LEDit

Ei ole kunnollista projektia, joka ei sisällä vähintään yhtä LEDiä. Tässä on KAHDEKSAN!

Pitkä johto on positiivinen (anodi). Silkkipainossa on "+" -merkki ja tyyny on neliömäinen. Jos teet kaikki kahdeksan kerralla, pidä niitä painettuna ja varmista, että kaikki suunnat ovat oikein.

  • Juotetaan yksi johto jokaiseen LED -valoon.
  • Tarkista suunta ja että ne ovat tasaisesti paikallaan (kuva 3).

    Jos ne eivät ole, paina koteloa peukalolla ja lämmitä johtoa uudelleen, kunnes se napsahtaa paikalleen (kuva 4)

  • Loput juotetaan.
  • Leikkaa johdot.

Vaihe 8: Tarkista se

Image
Image
Pyöritysaika
Pyöritysaika

Tässä vaiheessa voimme vielä tarkistaa LEDit ja sammuttaa:

  • Aseta paristo paikalleen positiivinen puoli ulospäin.
  • Kytke kehruu päälle ja paina sitten painiketta, kunnes kaikki (toivottavasti) LEDit palavat (katso video).
  • Pyöritä kiekkoa ja katso kuvio. Jos LED ei syty, se voidaan asentaa taaksepäin tai se on vaurioitunut. Poista juotos ja laita uusi sisään.

Ongelmien karttoittaminen:

  • Jos mikään LED ei syty:

    • Varmista, että akku on hyvä ja oikeassa asennossa.
    • Ohjelmoitko sirusi? Onko se oikeassa suunnassa? Tuleeko kuuma?
    • Ovatko LEDit suunnattu oikein? Käytä kolikkokennoa led -juotosliitosten poikki niiden testaamiseen?
  • Jos kytkin ei saa merkkivaloja vilkkumaan:

    • Tarkista LED -juotosliitokset.
    • Tarkista Attinyn juotosliitokset.
  • Jos kaikki muu epäonnistuu, ota ja lähetä korkean resoluution kuvia edestä ja takaa ja pyydä apua kommenteissa.

Vaihe 9: Pyöritysaika

Pyöritysaika
Pyöritysaika
Pyöritysaika
Pyöritysaika
Pyöritysaika
Pyöritysaika

Laakeri pidetään paikallaan juottamalla kotelo suurelle tyynylle. Tämä vaatii kärsivällisyyttä ja paljon lämpöä:

  • Käytä jotain kolikoita kovalla pinnalla laakerin sijoittamiseen.
  • Kuumenna sekä tyynyä että laakerikuorta, kunnes näet juotteen virtaavan koteloon (se kestää vähän).
  • Toista toisella puolella.
  • Varmista, että laakeri on kohdistettu oikein, pyörittämällä kiekkoa.
  • Käännä lauta ympäri ja juota kaksi pistettä toisella puolella.

Vaihe 10: Onko tämä vallankumous?

Image
Image
Onko tämä vallankumous?
Onko tämä vallankumous?
Onko tämä vallankumous?
Onko tämä vallankumous?

Voidaksemme näyttää viestejä pelkkien kuvioiden sijasta, meidän on tiedettävä kehruun sijainti suhteessa ympyrään. Käytämme Hall-efektianturia ja magneettia. Tämä on samanlainen kuin polttomoottorit tietävät milloin kipinä sytyttää saadakseen eniten tehoa. Sekä anturin että magneetin suunta ja kohdistus ovat kriittisiä tämän toimimiseksi.

  • Laitteen etupuolella oleva kirjoitus osoittaa silkkipainoa vastaavan laakerin kohdalle (kuva 1).
  • Kohdista korkeus laakerin yläpuolelle (korkin magneetin kohdalle).
  • Juotos yksi johto.
  • Tarkista korkeus ja ruoka.
  • Juotos loput johdot.
  • Leikkaa johdot.

Jos käytät Omni-pole-anturia, sinun on selvitettävä magneetin suunta. Paras tapa tehdä tämä on asettaa jokin muu tila kuin edellisen vaiheen kuvio ja löytää sitten magneetin puoli, josta LED -valot alkavat vilkkua (katso video). Liimaa magneetti ulospäin työntynyt puoli. Tarkista työsi uudelleen.

Vaihe 11: Tasapainotuslaki

Tasapainolaki
Tasapainolaki
Tasapainolaki
Tasapainolaki

Jos pidät kiekkoa vaakasuorassa akun ollessa paikallaan, näet sen kääntyvän akun puoli alaspäin. Huolimatta parhaani pyrkimyksestäni tasapainottaa komponentteja, se on edelleen epätasapainossa. Voit lisätä painoa ei-akun puolelle mutterilla ja pultilla tai lisätä juotetta tyynyyn.

Vaihe 12: Olet toiminnassa

Image
Image
Mutta odota, on enemmän.
Mutta odota, on enemmän.

Kun magneetti ja anturi ovat paikallaan, olet valmis tutustumaan Geek Spinnerin täydelliseen upeuteen. Spinnerin toimintatila näkyy LED -merkkivalossa, joka syttyy käynnistyksen yhteydessä tai painikkeen painamisen jälkeen (D0 - D7). Tila vaihdetaan painamalla painiketta (katso video).

int -tilat = 8; // käytettävissä olevien tilojen määrä

// 0 -> teksti "Hei maailma!" // 1 -> RPM // 2 -> aika sekunneissa // 3 -> linkousluku // 4 -> linkousluku (yhteensä) // 5 -> "lilly pad" -kuvio // 6 -> muoto 1 (sydän) // 7 -> muoto 2 (hymy)

Vaihe 13: Mutta odota, on enemmän.

Mutta odota, on enemmän.
Mutta odota, on enemmän.
Mutta odota, on enemmän.
Mutta odota, on enemmän.
Mutta odota, on enemmän.
Mutta odota, on enemmän.

"Sydän" ja "hymiö" -kuviot luotiin käyttämällä polaarista kaaviota osoittamaan, miltä kahdeksan segmenttiä näyttäisivät jokaisen 5 asteen kierto.

Käsin:

  • Lataa ja tulosta täystarkkuuskuva (kuva 1).
  • Tee kuvista täyttämällä lohkot (kuva 2).
  • Laske radia pitkin 0: sta alkaen tavu käyttämällä mustaa = 1, valkoinen = 0;

    Sydämen ensimmäinen säteittäinen on 1, 0, 0, 0, 0, 0, 0, 0, joten tavu = 0b100000000;

  • Jatka, kunnes olet valmis (vihje, jos kuvasi on symmetrinen, sinun tarvitsee vain tehdä puolet).
  • Liitä tavut luonnoksen "textAndShapes.h" -osioon "shape_1 " tai "shape_2 ".

Pythonin käyttö:

  • Asenna Python.
  • Asenna Pythonin kuvakirjasto.
  • Lataa liitteenä oleva readGraph.py -skripti.
  • Lataa täystarkkuuskuva (kuva 1).
  • Avaa kuva suosikkieditorissasi (GIMP tai MS Paint).
  • Käytä "Täytä" -komentoa, jossa musta väri on valittu, täyttääksesi haluamasi segmentit (kuva 2).
  • Tallenna kuva samaan hakemistoon kuin "readGraph.py" -skripti ja muuta tiedoston nimi skriptissä vastaamaan sitä:

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

Suorita komentosarja ja liitä tulos luonnoksen "textAndShapes.h" -osaan "shape_1 " tai "shape_2 " -kohtaan

Joka tapauksessa voit jakaa luomuksesi (kuva ja koodi) kommentteihin!

Vaihe 14: Laajuus ja lopulliset ajatukset

Lainat ja lopulliset ajatukset
Lainat ja lopulliset ajatukset

En todellakaan keksinyt tätä kaikkea yksin. Kaikkea muuta kuin.

  • Ensimmäinen käytännön kokemukseni POV: sta oli Nick Sayerin projektissa nimeltä POV Twirlie: https://www.tindie.com/products/nsayer/pov-twirlie/. (Käytän myös pogo -sovitinta).
  • Ajatus "LED + Fidget spinner = POV" tuli päähäni nähdessäni Techydiyn Instructable
  • Aina kun sinulla on mahtava idea, joku on jo tehnyt sen: https://www.instructables.com/id/POV-Arduino-Fidget-Spinner/. Pinta -asennettava juotos on jotain, mitä voin tehdä, mutta ei todellakaan aloittelijaystävällinen. Hänen koodinsa oli myös hieman pääni yläpuolella, mutta käytin hänen ajatuksiaan RPM: n ja laskujen näyttämisestä.
  • Pystyin ymmärtämään ja käytin Reger-miesten POV-kellokoodin katkelmia tekstin näyttämiseen:

Mikään projekti ei ole koskaan valmis tai täydellinen. Tässä muutamia ajatuksia, joita minulla on eteenpäin:

  • Tasapaino: Tietolomakkeilla on harvoin tietoa komponenttien painosta, joten on vaikea tehdä edes perusteltua arvausta vaa'asta rakentamatta sitä. Akku on selvästi raskain komponentti. Lisäsin reikiä kumpaankin päähän, jotta voisin lisätä painoa tarpeen mukaan tasapainottamaan sitä.
  • Myötäpäivään? Jos huomasit, teksti näkyy oikein vain, jos pyörität myötäpäivään. Pyörittämällä toiseen suuntaan luodaan peilikuva. Toisen Hall -anturin tai magneetin lisääminen mahdollistaa pyörimissuunnan johtamisen (Seanin projekti teki tämän).
  • Väri? Ohjelmoitavien RGB -merkkivalojen avulla voit tehdä värejä. Ne ovat kuitenkin yleensä pinta -asennettavia.

Suositeltava: