INHOUDSOPGAWE:

DIY 3D -kontroleerder: 8 stappe (met foto's)
DIY 3D -kontroleerder: 8 stappe (met foto's)

Video: DIY 3D -kontroleerder: 8 stappe (met foto's)

Video: DIY 3D -kontroleerder: 8 stappe (met foto's)
Video: Kleuters op familiefeest 😂 2024, November
Anonim
DIY 3D -kontroleerder
DIY 3D -kontroleerder

Maak 'n 3D -koppelvlak met ses weerstande, aluminiumfoelie en 'n Arduino. Neem dit, Wii. Update: 'n baie meer deeglike verduideliking van hierdie projek is beskikbaar by Make Magazine. Dit is miskien makliker om hul instruksies te volg, en ek dink dat hul kode meer op datum is. Die basiese doel hier was om 'n 3D-handposisie-waarnemingsisteem te maak wat die meeste mense kan bou, terwyl dit steeds 'n paar funksies behou. Kyk na die demo -video om 'n idee te kry van moontlike toepassings. As u dink dat u een eenvoudiger en ewe akkuraat of effens meer kompleks en akkurater kan bou, deel dan die kommentaar! DIY 3D -koppelvlak: Tic Tac Toe van Kyle McDonald op Vimeo.

Stap 1: materiaal

Materiaal
Materiaal
Materiaal
Materiaal

Gereedskap

  • Arduino
  • Verwerking
  • Draadknipper
  • Soldeerbout
  • Boksnyer

Materiaal

  • (3) 270k weerstande
  • (3) 10k weerstande
  • Soldeer
  • Draad
  • Tinfoelie
  • Karton

Opsioneel:

  • Band (byvoorbeeld: scotch)
  • Afskermde draad (byvoorbeeld: koaksiale kabel, ~ 3 ')
  • (3) krokodilleknipsels
  • 3-pen kop
  • Zip-tie
  • Krimpfolie of warm gom

Stap 2: Maak die borde

Maak die borde
Maak die borde
Maak die borde
Maak die borde

Hierdie sensor werk met behulp van eenvoudige RC -stroombane, met elke stroombaan -afstand in een dimensie. Ek het gevind dat die maklikste manier om drie kapasitiewe plate vir hierdie doel te rangskik, in die hoek van 'n kubus is. Ek sny die hoek van 'n kartondoos in 'n 8,5 -blokkie en sny dan aluminiumfoelie sodat dit effens kleiner vierkante kan pas. Tape op die hoeke hou dit op hul plek. Moenie die hele omtrek plak nie, ons benodig dit later vir die bevestiging van die krokodilleklemme.

Stap 3: Maak die verbindings

Maak die verbindings
Maak die verbindings
Maak die verbindings
Maak die verbindings
Maak die verbindings
Maak die verbindings

Om die Arduino aan die plate te koppel, benodig ons 'n bietjie afgedekte draad. As die draad nie afgeskerm is nie, tree die drade self duideliker op as deel van die kondensator. Ek het ook agtergekom dat krokodilleklemme dit baie maklik maak om dinge aan aluminium te koppel - maar daar is waarskynlik ook baie ander maniere.

  • Sny drie gelyke lengtes afgeskermde kabel. Ek het ongeveer 12 "gekies. Hoe korter hoe beter. Koaksiale kabel werk, maar hoe ligter/buigbaarder, hoe beter.
  • Strooi die laaste half duim of so om die afskerming te openbaar, en die laaste kwart duim om die draad te onthul.
  • Draai die krokodilleklemme aan die drade op die drade en soldeer dit saam.
  • Voeg 'n bietjie krimpbuis of warm gom by om dinge bymekaar te hou.

Stap 4: Maak die kring

Maak die kringloop
Maak die kringloop
Maak die kringloop
Maak die kringloop
Maak die kringloop
Maak die kringloop
Maak die kringloop
Maak die kringloop

Die "kring" is slegs twee weerstande per stuk aluminium. Om te verstaan waarom hulle daar is, help dit om te weet wat ons met die Arduino doen. Wat ons opeenvolgend met elke pen sal doen, is:

  • Stel die pen in die uitvoermodus.
  • Skryf 'n digitale "laag" op die pen. Dit beteken dat beide kante van die kondensator geaard is en dit sal ontlaai.
  • Stel die pen in die invoermodus.
  • Tel hoeveel tyd dit neem om die kondensator op te laai deur te wag totdat die pen "hoog" raak. Dit hang af van die waardes vir die kapasitor en die twee weerstande. Aangesien die weerstande vas is, is 'n verandering in kapasitansie meetbaar. Die afstand van die grond (jou hand) is die primêre veranderlike wat bydra tot die kapasitansie.

Die 270k weerstande verskaf die spanning om die kapasitors te laai. Hoe kleiner die waarde, hoe vinniger laai hulle. Die 10k weerstande beïnvloed ook die tydsberekening, maar ek verstaan nie die rol daarvan nie; ons maak hierdie stroombaan aan die voet van elke draad.

  • Soldeer die 10k weerstand aan die einde van die draad oorkant die krokodilklem
  • Soldeer die 270k -weerstand tussen die skild en die draad (bord). Ons beskerm die draad met dieselfde 5 V wat ons gebruik om die kapasitors te laai

Stap 5: Voltooi en koppel die aansluiting

Maak klaar en bevestig die aansluiting
Maak klaar en bevestig die aansluiting
Maak klaar en bevestig die aansluiting
Maak klaar en bevestig die aansluiting
Maak klaar en bevestig die aansluiting
Maak klaar en bevestig die aansluiting

Sodra die drie verbindings klaar is, kan u 'n krimpbuis of warm gom byvoeg om dit van mekaar te isoleer, omdat u die afskerming/5 V -punte aanmekaar soldeer.

Vir my was dit die maklikste om die twee buitenste verbindings aanmekaar te soldeer en dan die derde by te voeg. Nadat u die drie verbindings gesoldeer het, voeg 'n vierde draad by om die skild/5 V.

Stap 6: Koppel en laai kode op

Koppel en laai kode op
Koppel en laai kode op
Koppel en laai kode op
Koppel en laai kode op
  • Steek die aansluiting in die Arduino (penne 8, 9 en 10)
  • Bevestig die krokodilleklemme op die plate (8: x: links, 9: y: onder, 10: z: regs)
  • Verskaf krag deur die vierde draad (my rooi draad) in die Arduino se 5 V te koppel
  • Sluit die Arduino aan, begin die Arduino -omgewing
  • Laai die kode op die bord op (let op: as u buite Noord -Amerika is, moet u waarskynlik #define hoofstroom na 50 in plaas van 60 verander).

Die Arduino -kode is aangeheg as Interface3D.ino en die verwerkingskode is aangeheg as TicTacToe3D.zip

Stap 7: Doen iets cool

As u na die seriële venster in die Arduino -omgewing kyk, sal u sien dat dit rou 3D -koördinate op 115200 baud uitspoeg, by ongeveer 10 Hz = 60Hz / (2 volledige siklusse * 3 sensors). Die kode neem soveel keer as moontlik metings op elke sensor gedurende die tydperk van twee siklusse van die netfrekwensie (wat verbasend stabiel is) om enige koppeling uit te skakel. Die eerste ding wat ek hiermee gedoen het, was om 'n eenvoudige 3D Tic te maak Tac Toe -koppelvlak. As u met 'n werkende demo wil begin, is die kode hier beskikbaar, net die gids "TicTacToe3D" in u gids Processing sketches. Drie nuttige dinge wat die Tic Tac Toe -kode toon:

  • Lineariseer die rou data. Die laai tyd volg eintlik 'n kragwet ten opsigte van afstand, dus moet u die vierkantswortel van een oor die tyd neem (dws afstand ~ = sqrt (1/tyd))
  • Normaliseer die data. As u die skets begin, hou die linkermuisknop ingedruk terwyl u u hand rondbeweeg om die grense van die ruimte waarmee u wil werk, te definieer.
  • Om 'momentum' by die data te voeg om onstuimigheid uit te skakel.

In die praktyk kan ek met hierdie opstelling met aluminiumfoelie 'n reeks van die grootste foelie -afmetings kry (die grootste stuk wat ek getoets het, is 1,5 vierkante voet).

Stap 8: Variasies en notas

Variasies

  • Bou massiewe sensors
  • Optimaliseer die weerstande en kode vir dinge wat vinnig vibreer, en gebruik dit as 'n bakkie/mikrofoon
  • Daar is waarskynlik ander truuks om die stelsel te ontkoppel van wisselstroom ('n groot kondensator tussen die plate en die grond?)
  • Ek het geëksperimenteer met die afskerming van die plate aan die onderkant, maar dit lyk net of dit probleme veroorsaak
  • Maak 'n RGB- of HSB -kleurkieser
  • Beheer video- of musiekparameters; volg 'n maat of melodie
  • Groot, effens geboë oppervlak met veelvuldige plate + 'n projektor = koppelvlak "minderheidsverslag"

Notas

Die Arduino -speelgrond bevat twee artikels oor kapasitiewe aanraakwaarneming (CapSense en CapacitiveSensor). Uiteindelik het ek 'n omkering van 'n ontwerp wat ek teëgekom het in 'n kopie van 'n vriend van 'Physical Computing' (Sullivan/Igoe) beskryf waarin ek beskryf hoe ek RCtime moet gebruik (die kring het die kondensator en een weerstand reggemaak en die waarde van 'n Die mikrosekonde -tydsberekening is bereik met 'n effens geoptimaliseerde kode van die Arduino -forum. Weer: net vanaf 'n groot aantal skemas wat ek nie heeltemal verstaan nie, weet ek dat daar beter maniere is om kapasitiewe afstandswaarneming te doen, maar ek wou iets so eenvoudig as moontlik maak wat nog steeds funksioneel is. As u 'n ewe eenvoudige en funksionele ontwerp het, plaas dit dan in die kommentaar! Danksy Dane Kouttron wat al my basiese elektroniese vrae verdra het en my help verstaan het hoe 'n eenvoudige heterodiene thereminkring werk (oorspronklik sou ek dit gebruik - en, as dit reg ingestel is, sou dit waarskynlik meer akkuraat wees).

Eerste prys in die The Instructables -boekwedstryd

Aanbeveel: