Turinys:
- 1 žingsnis: medžiagos ir įrankiai
- 2 žingsnis: sukonstruokite automobilį
- 3 žingsnis: litavimo grandinės
- 4 veiksmas: įdiekite priklausomybes įterptinėje sistemoje
- 5 veiksmas: nustatykite statinį IP adresą
- 6 veiksmas: įkelkite kodą į „Arduino“
- 7 veiksmas: pritvirtinkite grandinę ir kompiuterį prie automobilio
- 8 veiksmas: nustatykite VR aplinką
- 9 veiksmas: paleiskite viską kartu
Video: Virtualios realybės valdomas RC automobilis: 9 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
Ar kada nors norėjote susitraukti ir išbandyti tokį laivą kaip „Innerspace“ar „Fantastic Voyage“? Na, aš manau, kad tai yra taip arti, kaip jūs ketinate gauti per trumpą laiką!
Štai aikštelė:
„Real-Life“nuotolinio valdymo automobilis, valdomas iš „Virtual Reality“valdymo pulto. Tai reiškia, kad prisisegiate VR ausines, perjungiate RC automobilio jungiklį, tada galite išbandyti VR iš tiesioginio vaizdo įrašo tiesiai į veidą.
Yra jūsų įdiegtų dalykų, kuriuos galite valdyti „VR Car“.
- Ratai
- Ragas
- Šviesos
Visa tai turi tam tikrą mygtuką arba svirtį VR, kurią galite apversti arba perjungti, kad galėtumėte vairuoti automobilį.
Norėdami gauti visą repo ir daugiau informacijos, apsilankykite mano „Github“ir mano svetainėje!
1 žingsnis: medžiagos ir įrankiai
Mechaninis:
Keturių ratų pavaros važiuoklės komplektas
Elektros:
- Ratų kodavimo įrenginys
- 3S 1300mAh baterija
- Arduino Uno
- „Arduino“variklio skydas
- Pjezo elektrinis garsinis signalas
- Mažas šviesos diodas
- XT60 jungtys
- „Boost / Buck“keitiklis
Kompiuteris:
- Bet kokia įterpta kompiuterinė sistema: Raspberry Pi, Jetson Nano ir kt.
- USB kamera (pageidautina - 180 laipsnių kamera)
Įrankiai / papildoma:
- Lituoklis
- Kai kurios VR sąrankos - turiu „Oculus Rift“
- Multimetras
2 žingsnis: sukonstruokite automobilį
Automobilio važiuoklę labai lengva sukonstruoti. Jums tiesiog reikia pritvirtinti variklius prie pagrindinės plokštės per skirtukus, kuriuos jie jums suteikia. Kai pritvirtinsite ratus ir variklius, jums taip pat reikės kažko, kad pritvirtintumėte fotoaparatą prie automobilio priekio.
Jai pritvirtinti naudoju kartoninę dėžę, kurią atnešė fotoaparatas. Iškirpau didelę L formą ir išpjoviau skylę fotoaparatui, kad jis gerai įsmeigtų. Po to galite tiesiog prakišti fotoaparatą ir įdėti juostą į galą, kad ji liktų vietoje. Jei norite, dabar taip pat galite įkišti skyles priekiniams žibintams arba tai padaryti vėliau, kai išmatuosite laido ilgį.
Taip pat prie vieno iš ratų turėsite pritvirtinti ratų kodavimo įrenginį. Nesvarbu, kurį, padėjau ant galinio kairiojo rato. Magnetinį diską turite uždėti ant tikrojo rato veleno, o kodavimo įrenginys turėtų būti pritvirtintas prie automobilio šalia jo. Jis yra gana imlus, todėl jis neturi būti tiesiai ant jo, bet kuo arčiau. Užkodinau kodavimo priemonę juostele ir užtrauktuku. Koderis yra tai, ką mes naudosime savo automobilio greičiui matuoti.
3 žingsnis: litavimo grandinės
Ši dalis yra gana varginanti, bet ne sudėtinga. Jei sekate paveikslėlį ir prieš pjaustydami laidą viską išmatuokite, tai nėra labai blogai.
Kai tai darote, taip pat turėtumėte kalibruoti savo „Buck“keitiklį, kad išvestumėte teisingą įtampą. „Raspberry Pi“ir „Jetson Nano“įjungia 5 V įtampą, tačiau mūsų baterija yra 11,1 V. Taigi, turime įsitikinti, kad nekepame savo elektronikos. Norėdami tai padaryti, prijunkite akumuliatorių prie „Buck“keitiklio įvesties pusės. Kol akumuliatorius įjungtas, naudokite savo multimetrą, kad išmatuotumėte išvesties pusę. Naudokite mažą atsuktuvą plokščiu galvute, kad pasuktumėte keitiklio potientiometrą, kol išėjimo įtampa bus 5 V. Kai išvestis bus teisinga, jums nebereikės pasukti potientiometro.
4 veiksmas: įdiekite priklausomybes įterptinėje sistemoje
Čia nėra per daug ką nuveikti, bet vis tiek nepaprastai svarbu.
Pirmiausia įsitikinkite, kad prisijungiate prie maršrutizatoriaus, kurį naudosite, kad jis nuo šiol galėtų prisijungti automatiškai.
Tada atidarykite terminalą ir įveskite:
sudo apt atnaujinimas
sudo apt install openssh-server
sudo apt install python-pip pip install numpy pip install opencv-python pip install pyzmq
Įdiegę šiuos dalykus, turime įsitikinti, kad, nesvarbu, prie kurio prievado yra prijungtas arduino, jis visada bus atpažįstamas. Taigi, mes rašome vadinamąsias UDEV taisykles. Tai yra jūsų operacinės sistemos taisyklės, reglamentuojančios, kas nutinka, kai prijungiate daiktus. Mes norime atpažinti „arduino“, kai jis prijungtas, ir suteikti jam pavadinimą, kad galėtumėte jį pasiekti. Šis pavadinimas bus „arduino_0“. Norėdami tai padaryti, mes naudosime vidinį arduino serijos numerį, kad jį identifikuotume.
udevadm info -a -n /dev /ttyUSB1 | grep '{serijinis}' | galva -n1
Tai išskirs serijos numerio vertę, eikite į priekį ir nukopijuokite šią vertę.
Tada turime redaguoti (arba sukurti, jei jo nėra) failą, pavadintą „99-usb-serial.rules“. Šis failas yra tokiame failo kelyje „/etc/udev/rules.d/99-usb-serial.rules“. Kaip minėjau, jei to failo nėra, tiesiog sukurkite jį ir įklijuokite į šią eilutę su VALUE_FROM_ABOVE, pakeista jūsų verte iš anksčiau.
POSISTEMIS == "tty", ATTRS {serial} == "VALUE_FROM_ABOVE", SYMLINK+= "arduino_0"
Tai nurodo operacinei sistemai, kad kai ji pamato šį konkretų serijos numerį, vadinti jį arduino_0.
Paskutinis dalykas, kurį reikia padaryti, yra atsisiųsti „pushArucoVideoPullCommands.py“ir įdėti ją lengvai pasiekiamoje vietoje. Aš rekomenduočiau savo vartotojui namų katalogą, nes ten mes atsidursime vėliau, kai SSH prisijungsime prie įterptosios sistemos.
5 veiksmas: nustatykite statinį IP adresą
Dabar tai dalis, kuri patinka visiems, IP adresavimas. Kad šis projektas veiktų, kodas turi žinoti, kur siųsti vaizdus ir valdymo komandas, o tai reiškia, kad mūsų įrenginiams reikia statinio IP.
Yra daug būdų, kaip priskirti jūsų įrenginiui statinį IP, tačiau, kadangi turime maršrutizatorių, jungiantį mūsų antžeminę stotį ir įterptąją sistemą, galime jį naudoti, kad mums būtų labai lengva suteikti konkrečius IP adresus.
Eikite į savo maršrutizatoriaus administratoriaus skyrių, paprastai (daugumai maršrutizatorių) tai daroma atidarius žiniatinklio naršyklę ir einant į „192.168.1.1“. Jis paprašys jūsų prisijungti, o tipiškas standartinis vartotojo vardas ir slaptažodis daugumai maršrutizatorių yra „admin“.
Kai būsite ten, eikite į kažką, kuriame minimas „DHCP serveris“. Tai procesas, kuris veikia jūsų maršrutizatoriuje ir stebi, kokie įrenginiai yra prijungti prie jo pagal jų MAC adresą, kuris visada yra pastovus. Norime pasirinkti mums rūpimus įrenginius apie antžeminį stoties kompiuterį ir įterptąją sistemą ir pridėkite juos prie rezervuoto kliento skyriaus. Tai suteiks jiems statinį IP, kai jie bus prijungti prie šio maršrutizatoriaus.
Įsitikinkite, kad įterptosios sistemos IP nustatėte į 192.168.1.122. Antžeminės stoties IP gali būti nustatytas bet koks.
6 veiksmas: įkelkite kodą į „Arduino“
Norėdami įkelti arduino kodą, pirmiausia turime įdiegti biblioteką, kad galėtume dirbti su variklio skydu.
„Arduino IDE“eikite į Eskizas-> Įtraukti biblioteką-> Tvarkyti bibliotekas … Tada ieškokite „Adafruit Motor Shield Library“. Įdiekite šią biblioteką, tada įkelkite kodą į savo arduino, nieko daugiau nereikės.
7 veiksmas: pritvirtinkite grandinę ir kompiuterį prie automobilio
Dabar, kai grandinė pastatyta, atėjo laikas viską įdėti į automobilį. Aš nesiruošiu meluoti, daugelis šių dalykų yra tiesiog prilaikomi juosta, nes tai man buvo lengviausia greitai suplakti. Be to, jis turi montavimo angas, kaip parodyta aukščiau esančiame paveikslėlyje.
Daugelį dalykų yra gana paprasta tiesiog leisti sėdėti kažkur automobilio viršuje, todėl nesijaudinkite, jei nėra daug vietos.
8 veiksmas: nustatykite VR aplinką
Šis skyrius atrodys šiek tiek kitaip, atsižvelgiant į tai, kokia VR sąranka vyksta. Bet kokiu atveju aš naudoju „SteamVR“kurdamas šią programinę įrangą, todėl gali tekti ją įdiegti.
Kol naudojate „SteamVR“, valdikliai turėtų prisitaikyti prie skirtingų valdiklių. Valdiklius susiejau su „Veiksmais“, nebūtinai mygtukais, todėl teoriškai jis bus pritaikytas visiems.
Jums tereikia atsisiųsti ir išpakuoti failą naudojant „Unity“pasaulį ir būti pasirengusiam paleisti VR_Bot.exe.
9 veiksmas: paleiskite viską kartu
Taigi, dabar, kai turime automobilio sąranką, o antžeminė stotis yra prijungta ir paruošta eiti, kaip mes iš tikrųjų valdysime šį blogą berniuką? Na, iš „Ground Station“pusės, viskas, ką turite padaryti, paleiskite VR_Bot.exe failą, kurį matėme anksčiau.
Tuo pačiu metu turėsite prijungti akumuliatorių prie įterptosios sistemos, automatiškai paleisti ir prisijungti prie maršrutizatoriaus. Kai jis bus paleistas, į jį įveskite SSH. Norėdami tai pasiekti, jums reikės kažkokio terminalo antžeminėje stotyje, rekomenduoju „GitBash“.
SSH reiškia „Secure Shell“ir yra protokolas, leidžiantis saugiai pasiekti nuotolines sistemas. Mūsų atveju tai suteiks mums prieigą prie įterptosios sistemos iš antžeminės stoties. Norėdami sužinoti daugiau, spustelėkite čia.
Turite žinoti vartotojo vardą, kuriuo nustatėte įterptąją sistemą. Raspberry pi numatytasis vartotojo vardas yra „pi“, o slaptažodis - „avietė“.
Įdiegę atidarykite terminalą ir įveskite:
ssh {Įterptosios sistemos vartotojo vardas}@192.168.1.122
Tai atvers įterptosios sistemos terminalą.
Kai ten pateksite, jums tiesiog reikia įvykdyti „python“scenarijų, kurį nukopijavome anksčiau.
python /path/to/pushArucoVideoPullCommands.py
Kai tai padarysite, įterptinė sistema pradės siurbti vaizdus ir gauti komandas į antžeminę stotį ir iš jos.
Tuomet gerai pradėti vairuoti ir linksmintis!
Rekomenduojamas:
Atšokti ! Virtualios realybės žaidimas naudojant „Arduino & Acclerometer“: 9 žingsniai
Atšokti ! Virtualios realybės žaidimas naudojant „Arduino & Acclerometer“: Šioje pamokoje mes kursime virtualios realybės žaidimą naudodami „Arduino“ir „Acclerometer“
Virtualios realybės ausinės-„Google“kartonas: 4 žingsniai
Virtualios realybės laisvų rankų įranga-„Google“kartonas: Sveiki, vaikinai, čia yra paprasta pamoka, kaip pasigaminti „Google Cardboard“-namines virtualios realybės ausines. Bus labai malonu žiūrėti siaubo filmą šiose laisvų rankų įrangoje. Taip pat nepamirštama patirtis bus ir kalnelių „Ride“vaizdo įrašas. Įspėjimas
Virtualios realybės kostiumas naudojant „Arduino“: 7 žingsniai (su nuotraukomis)
Virtualios realybės kostiumas naudojant „Arduino“: sukūriau šį projektą, kad galėčiau žaisti įprastus kompiuterinius žaidimus visu VR. Šis projektas imituoja jūsų judesius paspaudus arba laikant klaviatūros klavišus. Pavyzdys- kai judate į priekį, paspaudžiamas klavišo „w“veiksmas. Turiu emu
Sukurkite savo virtualios realybės akinius: 4 žingsniai
Sukurkite savo virtualios realybės akinius: Medžiagos:- Kartoninė batų dėžutė- Žirklės / „X-Acto“peilis- 2 45 mm abipus išgaubti lęšiai- 4 juostelės „Velcro“- klijai
Virtualios ir mišrios realybės akiniai: 15 žingsnių (su nuotraukomis)
Virtualios ir mišrios realybės akiniai: Įvadas: Pagrindinio kurso „Technology for Concept Design“metu mūsų buvo paprašyta ištirti naują technologiją, kuri tinka mūsų pagrindiniam projektui, ir išbandyti šią technologiją sukuriant prototipą. Mūsų pasirinktos technologijos yra virtualios realybės