Sadržaj:

Geek Spinner: 14 koraka (sa slikama)
Geek Spinner: 14 koraka (sa slikama)

Video: Geek Spinner: 14 koraka (sa slikama)

Video: Geek Spinner: 14 koraka (sa slikama)
Video: Красивая история о настоящей любви! Мелодрама НЕЛЮБОВЬ (Домашний). 2024, Novembar
Anonim
Image
Image
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner
Geek Spinner

Fidget spinneri su zabavni, a ovih dana ih možete pronaći na bilo kojem odjavnom pultu za samo nekoliko dolara, ali što ako biste mogli izgraditi vlastiti? I da li je imao LED diode? I mogli biste ga programirati da kaže ili pokaže šta god želite? Ako ovo zvuči šaljivo cool, OVO JE PROJEKT ZA VAS.

Uvijek sam bio zainteresiran za korištenje trepćućih LED dioda kako bih djecu zainteresirao za programiranje. Najjednostavniji projekt s Arduino mikrokontrolerom je treptanje LED -a za uključivanje i isključivanje. Zatim ih natjerate da vide koliko brzo LED može treptati prije nego što izgleda kao da je neprestano uključen (oko 12 milisekundnih intervala). Zatim protresete LED naprijed -natrag i ponovo ćete vidjeti kako treperi! Ova pojava se naziva "postojanost vizije" (POV) i tako funkcionira ovaj projekt. To može dovesti do rasprava o tome kako oko funkcionira i koliko su računari nevjerojatno brzi.

Ovaj projekt koristi programabilni 8-bitni mikrokontroler, osam LED dioda i ćeliju u obliku novčića. Okreće se pomoću standardnog ležaja za skateboard, a koristi Hall-ov senzor i magnet za određivanje rotacije. Napravljen je pomoću dijelova kroz rupe prilagođenih početnicima i može se programirati pomoću programskog okruženja Arduino. Dosta priče, krenimo…

Korak 1: Prikupite dijelove, alate i potrošni materijal

Image
Image
Prikupite dijelove, alate i potrošni materijal
Prikupite dijelove, alate i potrošni materijal

Uvijek je frustrirajuće proći pola puta kroz izgradnju i otkriti da vam nešto nedostaje. Ovo su dijelovi koje sam isprobao i za koje sam utvrdio da dobro funkcioniraju. Zamijenite na vlastitu odgovornost:

Bill of Materials =================

  • 1 ea, ljubičasta PCB, s ljubavlju proizvedena u SAD -u od strane OSH Parka
  • 1 ea, Attiny 84, Atmel ATTINY84A-PU,
  • 1 ea, taktilni prekidač, TE 1825910-6,
  • 1 ea, Klizni prekidač SPDT kroz rupu, C&K JS202011AQN,
  • 1 ea, Držač baterije, Linx BAT-HLD-001-THM,
  • 8 ea, 3 mm Crvena LED 160 Mcd, Wurth 151031SS04000,
  • 8 ea, 330 ohm 1/8W, stackpole CF18JT330R,
  • 1 ea, kapa 0,1 uF, KEMET C320C104M5R5TA,
  • 1 ea, Magnetski prekidač, Melexis MLX92231LUA-AAA-020-SP,
  • 1 ea, 608 Ležaj za skateboard,
  • 1 ea, mali magnet za rijetke zemlje 2 mm x 1 mm,
  • 2 ea, 3D štampane kape (u prilogu STL datoteka).
  • 1 ea, baterija CR2032, Panasonic BSP ili ekvivalent,

Alati i potrošni materijal: Za svoje radionice koristim SparkFunov početnički alat koji ima sve što vam treba osim pincete:

  • Lemilica.
  • SolderWire
  • Klešta za rezanje (obožavam Hakko CHP170 USD od 5 USD!)
  • Raspletanje pletenice
  • super ljepilo

Programiranje Attiny (Korak 4, nije potreban ako ovo kupujete kao komplet):

  • Arduino (izbjegavajte jeftine kineske klonove i podržite svoju američku proizvodnju otvorenog koda).

    • SparkFun Redboard
    • Adafruit Metro
    • Arduino UNO
  • AVR programski štit.
  • Pogo adapter (ako se programira sa instaliranim čipom).
  • Standardni USB A-B za Uno, USB Mini za Redboard ili USB Micro za Metro.

Komplet za ovaj projekt dostupan je na Tindie.com (minus baterija). Kupovinom kompleta uštedjet ćete vrijeme i troškove naručivanja od nekoliko različitih dobavljača i izbjeći ćete minimalnu premiju za naručivanje PCB -a. Također, programiranje Attiny nije trivijalno, a ako kupite komplet, već će biti unaprijed programiran. Takođe ćete mi pomoći u razvoju i dijeljenju drugih projekata na mojim radionicama!

Korak 2: Otpor je bitan

Otpor je bitan
Otpor je bitan
Otpor je bitan
Otpor je bitan
Otpor je bitan
Otpor je bitan

Pretpostavit ćemo da imate iskustva u izgradnji kompleta. Ako vam je potrebna pomoć oko lemljenja, prijeđite na www.sparkfun.com/tutorials/213 da biste očetkali ili gledali Geek Girl kako to objašnjava na https://www.youtube.com/embed/P5L4Gl6Q4Xo. Takođe imam komplet prikladan za početnike na

Volim početi s otpornikom jer a) su relativno otporni na toplinu dok ulazite u utor za lemljenje i glačalo se približava temperaturi, b) nemaju polaritet, pa orijentacija nije kritična, i c) oni su najniža komponenta na ploči pa sjednite čvrsto pri lemljenju. Postoji osam otpornika za ograničavanje struje od 330 ohma, po jedan za svaku od LED dioda. Možete raditi jednu po jednu ili svih osam odjednom.

  • Savijte vodiče do širine jastučića i umetnite otpornik.
  • Preokrenite ploču i lemite elektrode.
  • Odrežite elektrode u ravnini.
  • Ponovo ih udarite peglom ako želite da impresioniraju vaše prijatelje štrebere.

Korak 3: Kod?

Kod?
Kod?
Kod?
Kod?
Kod?
Kod?
Kod?
Kod?

Ako ste kupili moj komplet, čip je unaprijed programiran i može prijeći na sljedeći korak.

Da, ovom projektu je potreban neki kod. I, ako ste obraćali pažnju, u 1. koraku sam vam rekao da programiranje Attiny nije trivijalno. Koristim Arduino, njegovo programsko okruženje, svoj AVR programer i pogo pin jig.

Čip se može programirati prije lemljenja na mjestu (fotografija 2) ili nakon što je lemljen na mjestu pomoću ISP zaglavlja na dnu PCB -a (slika 3). U oba slučaja programiranje je sljedeće:

  • Preuzmite Arduino programsko okruženje.
  • Instalirajte podršku za Attiny 85 s jednog od:

    • https://highlowtech.org/?p=1695 (Arduino Tiny)
    • https://github.com/SpenceKonde/ATTinyCore (Attiny Core)
  • Prenesite "Arduino kao skicu ISP -a": [Datoteka] -> [Primjeri] -> [Arduino kao ISP].
  • Pričvrstite AVR štit za programiranje i umetnite vrpčani kabel u položaj Attiny84
  • Ako koristite Pogo adapter, postavite ga na zaglavlje ISP -a na ploči. Pozitivni i negativni jastučići su označeni tako da možete pravilno orijentirati zaglavlje.
  • Ako koristite čip, umetnite ga s iglom jedan prema USB priključku.
  • Odaberite ispravan čip:

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

      • Čip "Attiny 84"
      • 8 Mhz (interno)
      • Mapiranje pinova "U smjeru suprotnom od kazaljke na satu"
  • Odaberite programator, [Alati] -> [Programer] -> [Arduino kao ISP]
  • Podesite osigurače za programiranje, [Alati] -> [Snimanje pokretačkog programa]
  • Prenesite priloženu skicu, [Datoteka] -> [Otpremi pomoću programatora]

Najveći izvor grešaka koje dobijam uključuje nepravilno poravnavanje pinova.

Korak 4: Usitnite ga

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

Sada kada vaš čip ima kôd, možete ga instalirati. Orijentacija DIP ("dual inline package") čipa obično je označena ili rupom pored igle jedan, ili preklopom na kraju čipa koji sadrži iglu jedan, kao što je ovdje slučaj.

  • Savijte elektrode za 90 stepeni pritiskom na ravnu površinu (fotografije 1 i 2).
  • Poravnajte čip sa simbolom na PCB -u i umetnite čip (slika 3).
  • Lemite jedan pin na suprotnim stranama i proverite da li je čip ravno prema PCB -u i da li je orijentacija ispravna. Nakon ovoga postaje zaista teško popraviti. Vjerujte mi na ovo.
  • Kad se uvjerite da je ispravno umetnut, zalemite preostale igle i izrežite ih u ravnini.

Korak 5: Prekidač i kondenzator

Prekidač i kondenzator
Prekidač i kondenzator
Prekidač i kondenzator
Prekidač i kondenzator

Taster se nalazi pored IC, a kondenzator sa druge strane.

  • Pritisnite dugme na njegovo mesto (uverite se da je u ispravnoj orijentaciji).
  • Lemite ga na mesto.
  • Odvojite elektrode sa stražnje strane.

Kondenzator nema orijentaciju, ali ako isključite stranu za pisanje, vaši štreberski prijatelji će znati koju ste vrijednost koristili.

Korak 6: Prekidač i držač baterije

Prekidač i držač baterije
Prekidač i držač baterije
Prekidač i držač baterije
Prekidač i držač baterije
Prekidač i držač baterije
Prekidač i držač baterije
Prekidač i držač baterije
Prekidač i držač baterije

Prekidač ide s nivoom prema van. Kao i ostale stavke, lemite dva igla, provjerite da li su ravno postavljeni, a zatim zalemite ostatak.

Držač baterije ima oznake koje pokazuju orijentaciju, ali to zaista nije važno. Trebat će, međutim, nešto više topline od običnih kabela, pa ćete se pobrinuti da sjedi ispravno kako bi bateriju držala u položaju (slika 4).

Korak 7: LED diode

LED diode
LED diode
LED diode
LED diode
LED diode
LED diode
LED diode
LED diode

Nema pristojnog projekta koji ne uključuje barem jednu LED diodu. Ovo ima OSAM!

Dugi vod je pozitivan (anoda). Na sitotisku je oznaka "+", a podloga je kvadratna. Ako radite svih osam odjednom, držite ih kako biste bili sigurni da ste sve orijentacije ispravne.

  • Lemiti po jedan provodnik na svaku LED diodu.
  • Provjerite orijentaciju i jesu li sjedili ravno (slika 3).

    Ako nisu, pritisnite kućište palcem i ponovo zagrijavajte elektrodu dok ne sjedne na mjesto (slika 4)

  • Lemiti ostatak.
  • Spojite elektrode.

Korak 8: Provjerite

Image
Image
Spin Time
Spin Time

U ovom trenutku još uvijek možemo provjeriti LED diode i isključiti se:

  • Umetnite bateriju s pozitivnom stranom prema van.
  • Uključite spinner, a zatim pritisnite dugme dok se sve (nadamo se) LED diode uključe (pogledajte video).
  • Okrećite spinner i pogledajte uzorak. Ako LED lampica ne svijetli, možda je instalirana unatrag ili je oštećena toplinom. Raspajkajte ga i umetnite novi.

Rješavanje problema:

  • Ako LED diode ne svijetle:

    • Uverite se da je baterija dobra i da je ispravno orijentisana.
    • Jeste li programirali svoj čip? Da li je u pravoj orijentaciji? Postaje li vruće?
    • Jesu li LED diode pravilno usmjerene? Upotrijebiti novčanu ćeliju preko LED lemnih spojeva da ih testirate?
  • Ako prekidač ne čini da LED diode trepere:

    • Provjerite lemne spojeve na LED diodi.
    • Provjerite lemne spojeve na Attinyju.
  • Ako ništa drugo ne uspije, snimite i postavite fotografije prednje i stražnje strane u visokoj rezoluciji i zatražite pomoć u komentarima.

Korak 9: Vrijeme okretanja

Spin Time
Spin Time
Spin Time
Spin Time
Spin Time
Spin Time

Ležaj se drži na mjestu lemljenjem kućišta na veliki jastučić. Za ovo je potrebno strpljenje i mnogo topline:

  • Za postavljanje ležaja upotrijebite nešto poput novčića na tvrdu površinu.
  • Zagrijavajte i jastučić i kućište ležaja dok ne vidite kako lem teče na kućište (potrebno je malo).
  • Ponovite sa druge strane.
  • Okretanjem okretača provjerite je li ležaj ispravno poravnat.
  • Preokrenite ploču i lemite dvije tačke s druge strane.

Korak 10: Je li ovo revolucija?

Image
Image
Je li ovo revolucija?
Je li ovo revolucija?
Je li ovo revolucija?
Je li ovo revolucija?

Da bismo prikazali poruke umjesto samo uzoraka, moramo znati položaj spinnera u odnosu na krug. Koristit ćemo Hall-ov senzor i magnet. Ovo je slično načinu na koji motori sa sagorijevanjem znaju kada trebaju upaliti iskru kako bi dobili najveću snagu. Orijentacija i poravnavanje senzora i magneta od kritičnog su značaja za ovo.

  • Natpis na prednjoj strani uređaja okrenut je prema ležaju koji odgovara svilenom platnu (fotografija 1).
  • Poravnajte visinu malo iznad ležaja (gdje će biti magnet u poklopcu).
  • Lemiti jednu traku.
  • Proverite visinu i visinu.
  • Lemite preostale žice.
  • Spojite elektrode.

Ako koristite višepolni senzor, morat ćete odrediti orijentaciju magneta. Najbolji način da to učinite je postaviti drugi način rada, a ne obrazac iz prethodnog koraka, a zatim pronaći stranu magneta koja pokreće LED diode koje trepere (pogledajte video). Zalijepite magnet stranom koja je radila okrenuta prema van. Još jednom provjerite svoj rad.

Korak 11: Zakon o uravnoteženju

Zakon o balansiranju
Zakon o balansiranju
Zakon o balansiranju
Zakon o balansiranju

Ako okretač držite vodoravno prema gore s umetnutom baterijom, vidjet ćete da se okreće prema bateriji prema dolje. Uprkos mojim naporima u balansiranju komponenti, to je i dalje van ravnoteže. Možete dodati malo težine na stranu koja nije baterija pomoću matice i vijka ili dodati malo lema u podlogu.

Korak 12: Operativni ste

Image
Image
Ali čekaj, ima još.
Ali čekaj, ima još.

Sa magnetom i senzorom na mjestu, spremni ste za provjeru potpune izvrsnosti vašeg Geek Spinnera. Način rada centrifuge prikazan je LED diodom koja svijetli pri uključivanju ili nakon pritiska tipke (D0 - D7). Način se mijenja pritiskom na dugme (pogledajte video).

int modovi = 8; // broj dostupnih režima

// 0 -> tekst "Hello World!" // 1 -> RPM // 2 -> vrijeme u sekundama // 3 -> broj okretaja // 4 -> broj okretaja (ukupno) // 5 -> uzorak "lilly jastučića" // 6 -> oblik 1 (srce) // 7 -> oblik 2 (osmijeh)

Korak 13: Ali čekajte, ima još toga.

Ali čekaj, ima još.
Ali čekaj, ima još.
Ali čekaj, ima još.
Ali čekaj, ima još.
Ali čekaj, ima još.
Ali čekaj, ima još.

Uzorci "srca" i "smajlija" stvoreni su korištenjem polarnog grafikona za prikaz kako bi osam segmenata izgledalo na svakih 5 stepeni rotacije.

Ručno:

  • Preuzmite i odštampajte sliku pune rezolucije (slika 1).
  • Popunite blokove da napravite svoju sliku (slika 2).
  • Uz radijal, počevši od 0, izračunajte bajt koristeći crno = 1, bijelo = 0;

    Prvi radijal srca je 1, 0, 0, 0, 0, 0, 0, 0, pa je bajt = 0b100000000;

  • Nastavite dok ne završite (nagovještaj, ako je vaša slika simetrična, trebate napraviti samo pola).
  • Zalijepite svoje bajtove u odjeljak skice "textAndShapes.h" pod "shape_1 " ili "shape_2 ".

Koristeći Python:

  • Instalirajte Python.
  • Instalirajte Python -ovu biblioteku slika.
  • Preuzmite priloženu skriptu "readGraph.py".
  • Preuzmite sliku pune rezolucije (slika 1).
  • Otvorite sliku u svom omiljenom uređivaču (GIMP ili MS Paint).
  • Pomoću naredbe "Fill" s odabranom crnom bojom popunite segmente koje želite osvijetliti (slika 2).
  • Spremite sliku u isti direktorij kao i skripta "readGraph.py" i promijenite naziv datoteke u skripti tako da joj odgovara:

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

Pokrenite skriptu i zalijepite izlaz u odjeljak skice "textAndShapes.h" pod "shape_1 " ili "shape_2"

U svakom slučaju, slobodno podijelite svoju kreaciju (sliku i kod) u komentarima!

Korak 14: Zasluge i završne misli

Zasluge i završne misli
Zasluge i završne misli

Ovo sigurno nisam smislio sam. Ne iz daleka.

  • Moje praktično iskustvo s POV-om bilo je s projektom Nicka Sayera pod nazivom POV Twirlie: https://www.tindie.com/products/nsayer/pov-twirlie/. (Koristim i pogo adapter).
  • Misao "LED + Fidget spinner = POV" pojavila mi se u mozgu nakon što sam vidio Techydiyev Instructable
  • Kad god imate sjajnu ideju, netko je to već učinio: https://www.instructables.com/id/POV-Arduino-Fidget-Spinner/. Lemljenje na površinskoj montaži je nešto što mogu učiniti, ali nije baš za početnike. Njegov kod mi je također bio malo iznad glave, ali koristio sam njegove ideje o prikazivanju RPM -a i brojača.
  • Uspio sam razumjeti i koristiti isječke Reger-men POV koda sata za prikaz teksta:

Nijedan projekat nikada nije potpun ili savršen. Evo nekih mojih razmišljanja za dalje:

  • Vaga: Tehnički listovi rijetko sadrže podatke o težini komponenti, pa je teško čak i obrazovano pretpostaviti o vagi bez da je samo izgradite. Baterija je očito najteža komponenta. Dodao sam rupe na svakom kraju kako bih mogao dodati težinu po potrebi kako bih je uravnotežio.
  • U smjeru kazaljke na satu? Ako ste primijetili, tekst će se ispravno prikazati samo ako se okrećete u smjeru kazaljke na satu. Okretanje u drugom smjeru stvara zrcalnu sliku. Dodavanje drugog Hall senzora ili magneta omogućilo bi vam da odredite smjer rotacije (Seanov projekt je to učinio).
  • Boja? Korištenje programabilnih RGB LED dioda omogućilo bi vam boje. Ipak, obično se postavljaju na površinu.

Preporučuje se: