Sadržaj:

Virtualni grafiti: 8 koraka
Virtualni grafiti: 8 koraka

Video: Virtualni grafiti: 8 koraka

Video: Virtualni grafiti: 8 koraka
Video: Видео для vr очков Прогулка по крышам 2024, Juli
Anonim
Virtualni grafiti
Virtualni grafiti

Vidio sam nekoliko virtualnih sistema za grafite na webu, ali nisam mogao pronaći objavljene informacije o tome kako ih napraviti (iako pogledajte stranicu s konačnim vezama). Mislio sam da bi to bilo sjajno za moje radionice grafita, pa sam ga sam napravio i objavio ovdje sve što vam je potrebno da ga napravite! Karakteristike * sav open source i hardver, * cijena <100 £ bez projektora i računara, * otkriva mlaznicu konzerve pritisak i udaljenost od ekrana, * modeli kapljaju boje ako se krećete presporo! Napomene * ovo uputstvo je na prilično visokom nivou, ali molimo vas da me obavijestite ako sam propustio nešto važno, * postavljanje računara je za Linux. Ako radite na drugim sistemima, objavite svoje upute! Vještine koje će vam trebati * obrada drveta za izradu drvenog stražnjeg projekcijskog ekrana, * elektronička kola i programiranje mikrokontrolera Atmel AVR (ili arduino), * moći ćete instalirati neke biblioteke na vašem računaru kako biste omogućili obradu za razgovor sa wiimoteom.

Korak 1: Kako to funkcionira

Kako radi
Kako radi

* Kanta za raspršivanje ima infracrvenu LED lampicu koja sija kroz ekran projektora i vidi je Wiimoteova kamera. * Wiimote šalje X i Y koordinate limenke računaru putem Bluetooth radio veze. * Računar pokreće jednostavan program za slikanje koji koristi projektor za "bojanje" linija dok crtate limenkom. Takođe se brine o mapiranju wiimote kamere na ekran pomoću sistema za kalibraciju u 4 tačke. * Sprej također može otkriti njegovu udaljenost od ekrana i pritisak mlaznice: što ste dalje udaljeni, veća je iscrtana tačka, što jače pritiskate mlaznicu, tačka boje postaje sve neprozirnija.

Korak 2: Komponente

Komponente
Komponente

Evo svih dijelova koji su vam potrebni za okupljanje:

* računar - mora imati brzinu od 1,4 GHz, bluetooth i USB port, * okruženje za obradu, * softver virtualGraffiti, preuzeti iz koraka "postavljanje računara", * nintendo wiimote - kupiti polovno sa ebaya, * projektor - trebat će budite svijetli ako planirate koristiti danju ili unutra sa upaljenim svjetlima, * stražnji projekcijski ekran - napravite se, * virtualna kanta za raspršivanje - napravite se, * prijemnik virtualne kante za prskanje - napravite sami. Troškovi * arduino za prijemnik limenki (ugrađen USB-> serijski) 21 £ * radio rx/tx par £ 9 * komponente za građevinsku kantu za prskanje 18 £ plus opcionalno kućište 12 £ * opcionalno kućište za prijemnik 8 £ * nintendo wiimote - kupite rabljeno na ebayu 20 £

Korak 3: Ekran za stražnju projekciju

Ekran za stražnju projekciju
Ekran za stražnju projekciju

Zaslon mora imati pravu vidljivost! Ako nije dovoljno prozirna, slika se neće vidjeti, a infracrvena LED dioda neće biti vidljiva kameri Wiimote -a. Ako je previše proziran, projektor će zaslijepiti i slika će se isprati. (Iako na posljednjoj stranici možete pronaći načine za ublažavanje toga).

Koristio sam lycra, koja je rastezljiva pa je mogu rastegnuti kako bi bila transparentnija. Trenutno ga držim držačima palca, ali prelazim na čičak kada dobijem pristup šivaćoj mašini. Napravio sam drveni okvir uz pomoć radionice i stolara (hvala Lou!) Trebalo mi je da se sruši kako bih ga mogao prevesti na biciklu. Ako ga pravite za fiksno mjesto, bit će lakše napraviti. Samo ga postavite u omjeru 4: 3 i dovoljno krut da ostane uspravan. Otkrio sam da ljudi imaju tendenciju pošteno gurnuti materijal na ekranu pa mora biti malo grub.

Korak 4: Kanta za prskanje

Kanta za prskanje
Kanta za prskanje
Kanta za prskanje
Kanta za prskanje

Ovo je najkompliciraniji dio projekta i trebalo je najduže vrijeme da se to uradi. Dobra vijest je da vam sve ove stvari nisu potrebne da bi zabavni sistem funkcionirao. Najjednostavnije je samo nabaviti sklop sa prekidačem, infracrvenom LED diodom i otpornikom. Kada pritisnete prekidač, LED lampica zasvijetli i wiimotova kamera ju vidi i prati.

Ova verzija je naprednija jer mjeri i udaljenost od ekrana i pritisak mlaznica. Obje ove stvari su važne kada zapravo slikate sprejom. Želeo sam da napravim sistem obuke, pa je bilo važno da sistem učinim što je moguće stvarnijim (u mojim granicama troškova). Krug je prilično jednostavan. Pogledajte priloženi dijagram kola da biste se uvjerili. Potrebne su vam osnovne vještine lemljenja i da biste mogli staviti krug na veroboard. Također, trebali biste biti zadovoljni programiranjem mikrokontrolera. Izgradnja kola od nule u odnosu na upotrebu arduino ploče, opcija 1: ako želite koristiti arduino ploču u kanti za prskanje. Koristite arduino kakav jest i prepolovite brzinu prijenosa radija tx u spraycan kodu. opcija 2: želite uštedjeti novac, ali nemate programator osigurača. Napravite ploču i koristite 16MHz vanjski kristal. Prepolovite brzinu prijenosa kao u opciji 1. Opcija 3: želite uštedjeti još više novca i imate programator osigurača. Napravite ploču, ali izostavite vanjski kristal. Pomoću programatora osigurača postavite atmel da koristi svoj unutarnji sat. Vjerujem da će vam ovaj DIY paralelni programator omogućiti programiranje osigurača. Koristim olimex programator. Pregled kruga Mikrokontroler mjeri izlaz oštrog senzora udaljenosti 2d120x (odlične informacije o ovom senzoru ovdje) i linearnog potenciometra. Također mjeri izlaz LED PWM potenciometra. Ovo se koristi za podešavanje izlazne svjetlosti LED diode. IR LED koji koristim je 100mA, a maksimalna talasna dužina je 950nm (idealno za wiimote). Mikrokontroler koristi PWM za vrlo brzo bljeskanje LED diode. Koristimo višenaponsku jedinicu IRF720 kako mikro ne bi pregorio izlaz. Takođe sam želeo da u budućnosti dodam kapacitet za svetliju LED diodu. Postoji statusna LED lampica koja treperi svaki put kada se paket podataka emituje na radiju. Ako sve radi dobro, ovo svjetlo bi trebalo treperiti na oko 15Hz. Konačno, modul radio predajnika je priključen na pin 3 (digitalni pin 1 za arduino) mikrokontrolera tako da možemo poslati podatke koje mjerimo na računar. Potrebna vam je i antena pričvršćena na ploču prijemnika. Koristio sam žicu dužine 12 cm. Ovo je polovina onoga što se preporučuje na ovoj izvrsnoj stranici sa informacijama. Programiranje mikrokontrolera Nakon što ste izgradili krug, morat ćete učitati program (u prilogu). Koristim arduino programsko okruženje/biblioteke. Ovo možete kompajlirati s arduino IDE -om, a zatim ga programirati kako god to obično radite. Moje kolo je pojednostavljeno pomoću internog takta od 8 MHz mikro. Ako koristite ovo, morat ćete postaviti postavke osigurača za korištenje internog kalibriranog RM -a od 8 MHz: 1111 0010 = 0xf2 To znači da ćete morati imati programera koji može pisati osigurače../avrdude -C./avrdude.conf -V -p ATmega168 -P/dev/ttyACM0 -c stk500v2 -U lfuse: w: 0xf2: m Ako nemate ovu vrstu programera (recimo da imate samo arduino ploču), samo koristite kristal od 16 MHz između pinova 9 i 10 i sve bi trebalo raditi (neprovjereno - možda će vam trebati kondenzator). Također ćete morati izmijeniti programski kôd tako da se predajnik prepolovi. Testiranje Nakon što ste sve sakupili i učitali program, morate prilagoditi svjetlinu IC LED diode. Samo sam htio maksimizirati izlaz svjetlosti bez nazdravljanja LED -i pa sam razneo nekoliko i na kraju dobio prosjek od 120 ma. Ako imate multimetar, možete to vrlo lako prilagoditi, u suprotnom samo podesite potenciometar da bude prilično visok, ali ne do kraja! Također možete provjeriti analogne ulaze na pinovima 26, 27 i 28 potenciometra za podešavanje PWM -a, senzora udaljenosti i potenciometra mlaznice. Ako imate opseg, možete provjeriti impulsni niz koji izlazi iz pina 3 u radio TX modul. Provjerite pwm izlaz LED na pinu 11. Možete koristiti kameru mobilnog telefona (ili većinu CCD kamera) da vidite kako se IC LED uključuje kada pritisnete tipku mlaznice.

Korak 5: Prijemnik spreja

Prijemnik spreja
Prijemnik spreja
Prijemnik spreja
Prijemnik spreja

Ako idete jednostavnom rutom za raspršivanje, ovaj dio vam nije potreban.

Inače, samo koristim arduino ploču, s radio prijemnikom priključenim na pin 2. To olakšava unos podataka u računalo putem USB -> serijskog čipa na arduino ploči. Da sam namjeravao napraviti prilagođeno kolo vjerovatno bih koristio FTDI USB -> serijsku UART evaluacionu ploču. Potrebna vam je i antena pričvršćena na ploču prijemnika. Koristio sam žicu dužine 12 cm. Ovo je pola preporučenog na ovoj izvrsnoj stranici sa informacijama. Umetnite skicu graffitiCanReader2.pde u arduino. Kad je limenka uključena, trebali biste vidjeti statusne LED diode na ploči i ploču prijemnika kako brzo trepere. Svaki put kada LED lampica može da treperi, šalje se paket podataka. Svaki put kada LED dioda prijemnika zatreperi, prima se važeći paket podataka. Ako ovo ne vidite, nešto se događa s radio vezom. Pokušajte spojiti TX limenke na RX prijemnik komadom žice. Ako ovo ne uspije, vjerojatno imate neusklađenost u brzini prijenosa virtualne žice (pogledajte kôd). Pod pretpostavkom da se na ploči prijemnika događa mnogo treperenja, trebali biste to moći pratiti na svom USB serijskom portu. Ako nadzirete serijski port (obično /dev /ttyUSB0) na 57600, trebali biste vidjeti podatke koji izviru poput Got: FF 02 Got: FF 03… Prvi broj je pritisak, a drugi udaljenost. Sada možete pokrenuti obradu i koristiti ove informacije za stvaranje lijepih slika! Učitajte priloženu skicu obrade (canRadioReader.pde). Pokrenite program i provjerite izlaz programa. Trebali biste primati frekvenciju (koja vam govori koliko ažuriranja u sekundi prima prijemnik - definitivno želite da ovo bude najmanje 10Hz). Takođe ćete dobiti mjerenje udaljenosti i mlaznice. Testirajte limenku pomicanjem potenciometra mlaznice i pomicanjem dijela kartice ispred senzora udaljenosti. Ako sve radi, prijeđite na sljedeći korak - pripremite računar za razgovor sa wiimoteom!

Korak 6: Computer Setup: Obrada i Wiimote

Computer Setup: Obrada i Wiimote
Computer Setup: Obrada i Wiimote

Naš glavni cilj ovdje je obrada razgovora sa wiimoteom. Ove upute su specifične za Linux, ali bi sve trebale funkcionirati na Mac -u i Windowsima s nekim istraživanjem o tome kako ubaciti podatke wiimotea u obradu. Nakon instaliranja obrade, na forumu sam pronašao neka uputstva, ali sam i dalje imao problema. Evo šta sam morao učiniti:

  1. instalirajte obradu
  2. instalirajte bluez biblioteke: sudo apt-get install bluez-utils libbluetooth-dev
  3. kreirati./processing/libraries/Loc i./processing/libraries/wrj4P5
  4. preuzmite bluecove-2.1.0.jar i bluecove-gpl-2.1.0.jar i stavite u./processing/libraries/wrj4P5/library/
  5. preuzmite wiiremoteJ v1.6 i stavite.jar u./processing/libraries/wrj4P5/library/
  6. preuzmite wrj4P5.jar (koristio sam alfa-11) i stavite u./processing/libraries/wrj4P5/library/
  7. preuzmite wrj4P5.zip i raspakirajte u./processing/libraries/wrj4P5/lll/
  8. preuzmite Loc.jar (koristio sam beta-5) i stavite u./processing/libraries/Loc/library/
  9. preuzmite Loc.zip i raspakirajte u./processing/libraries/Loc/lll/

Zatim sam upotrijebio kôd inspiriran Classiclll -om kako bih tipke i senzorska traka radili. Priloženi kod/skica samo iscrtava krug u kojem wiimote nalazi prvi infracrveni izvor.

Da provjerite svoj bluetooth, pritisnite tipke jedan i dva na wiimoteu, a zatim pokušajte skenirati $ hcitool na terminalu. Trebali biste vidjeti da je nintendo wiimote otkriven. Ako to ne učinite, morat ćete dodatno pogledati postavke Bluetootha. Ako je sve u redu, učitajte program wiimote_sensor.pde (u prilogu) i pokrenite ga. U donjem dijelu ekrana sa statusom trebali biste vidjeti: BlueCove verzija 2.1.0 na bluezu pokušava pronaći wii Pritisnite tipke 1 i 2 na wiimotu. Nakon što ga otkrijete, mašite infracrvenim izvorom (sprejom) ispred njega. Trebali biste vidjeti crveni krug koji prati vaše kretanje! Prije nego nastavite, provjerite radi li ovo. Ako ne možete uspjeti, pretražite forum za obradu.

Korak 7: Postavljanje svega

Postavljanje svega
Postavljanje svega

U nastavku preuzmite softver virtualGraffiti. Izvucite ga u direktorij svoje skice i slijedite ove korake!

* napunite kantu za prskanje, proverite status LED lampica treperi. * uključite računar, priključite prijemnik kante za prskanje, * ekran za podešavanje i projektor, * proverite da li LED lampica statusa prijemnika spreja treperi, * pokrenite obradu i učitajte program virtualGraffiti, * proverite da li dobijate i RX i TX serijski indikator LED diode trepere na arduino ploči, * pritisnite oba tastera na wiimote -u, * izvršite kalibraciju u 4 tačke kada se to od vas zatraži (stavite redom sprej za svaku metu, a zatim pritisnite mlaznicu sve dok ispis ne postane crven). * zabavi se!

Korak 8: Resursi, veze, hvala, ideje

Linkovi Evo veza koje su bile neprocjenjive za uspjeh ovog projekta: RF info: https://narobo.com/articles/rfmodules.html Arduino: www.arduino.cc Obrada: www.processing.org Korištenje wii -a za obradu: https://processing.org/discourse/yabb2/YaBB.pl? num = 1186928645/15 Linux: www.ubuntu.org Wiimote: https://www.wiili.org/index.php/Wiimote, https:// wiki.wiimoteproject.com/IR_Sensor#Kalibracija talasnih dužina u 4 tačke: https://www.zaunert.de/jochenz/wii/Hvala! Bez velikog broja ljudi koji bi objavili svoje radove, ovaj bi projekt bio mnogo teži i skuplji. Ogromno hvala cijeloj posadi otvorenog koda, ljudima koji su hakirali wiimote, Classiclll za olakšavanje upotrebe wiimotea pri obradi, Jochen Zaunert za kod za kalibraciju, posadu za obradu, posadu arduina, Lou za pomoć u stolarstvu i sve one koji istražuju, prave a zatim objaviti svoja otkrića na mreži! Sistemi drugih ljudi * Tek sam pronašao https://friispray.co.uk/, sa softverom otvorenog koda i kako * ovaj sistem dozvoljava upotrebu šablona: cool! https://www.wiispray.com/, bez koda ili kako * yrwall -ov virtualni sistem grafita, bez koda ili howto. Ideje za istraživanje * koristite 2 wiimotea za 3D praćenje volumena i uklanjanje senzora udaljenosti u limenci: https://www.cl.cam.ac.uk/~sjeh3/wii/. To bi bilo dobro jer je senzor udaljenosti trenutno najslabiji dio sistema. To bi također značilo da bismo mogli koristiti odgovarajući ekran za stražnju projekciju za živopisnije slike. * upotrijebite wiimote u limenci za otkrivanje kuta spreja. Ovo bi dodalo realizam modelu boje u spreju.

Preporučuje se: