Sisukord:

Virtuaalse reaalsusega juhitav RC -auto: 9 sammu
Virtuaalse reaalsusega juhitav RC -auto: 9 sammu

Video: Virtuaalse reaalsusega juhitav RC -auto: 9 sammu

Video: Virtuaalse reaalsusega juhitav RC -auto: 9 sammu
Video: EESTI LINNADES TALLINN 2024, Juuli
Anonim
Image
Image

Kas olete kunagi tahtnud end kokku tõmmata ja katsetada sellist käsitööd nagu Innerspace või Fantastic Voyage? Ma arvan, et see on nii lähedal, kui lühikese etteteatamisega saate!

Siin on pigi:

Real-Life kaugjuhtimispult, mida piloteeritakse virtuaalse reaalsuse käsukonsoolilt. See tähendab, et panete rihma VR -peakomplekti külge, keerate RC -auto lüliti sisse ja saate seejärel VR -i abil otsepilti otse näole suunates pilootida.

Olen rakendanud teie asju, mida saate VR -autol juhtida.

  1. Rattad
  2. Sarv
  3. Valgus

Kõigil neil on VR -is mingi nupp või hoob, mida saate auto juhtimiseks ümber pöörata või ümber lülitada.

Täieliku repo ja lisateabe saamiseks vaadake minu Githubi ja minu veebisaiti!

Samm: materjalid ja tööriistad

Materjalid ja tööriistad
Materjalid ja tööriistad
Materjalid ja tööriistad
Materjalid ja tööriistad

Mehaaniline:

4 -rattalise veermiku komplekt

Elektriline:

  • Ratta kodeerija
  • 3S 1300mAh aku
  • Arduino Uno
  • Arduino mootorikilp
  • Piezo elektriline helisignaal
  • Väike LED
  • XT60 pistikud
  • Boost / Buck Converter

Arvuti:

  • Mis tahes sisseehitatud arvutisüsteem: Raspberry Pi, Jetson Nano jne.
  • USB -kaamera (eelistatud - 180 kraadi kaamera)

Tööriistad / ekstra:

  • Jootekolb
  • Mõned VR seadistused - mul on Oculus Rift
  • Multimeeter

Samm: ehitage auto

Ehitage auto
Ehitage auto
Ehitage auto
Ehitage auto
Ehitage auto
Ehitage auto

Auto šassii on väga lihtne ehitada. Peate lihtsalt mootorid emaplaadi külge kinnitama nende teile antud sakkide kaudu. Pärast rataste ja mootorite kinnitamist vajate ka midagi kaamera esiosa kinnitamiseks.

Paigaldamiseks kasutasin pappkasti, millega kaamera tuli. Lõikasin välja suure L -tähe ja lõikasin kaamerale augu, et põhjalikult torkida. Pärast seda saate kaamera lihtsalt läbi lüüa ja asetada tagaküljele lint, et see paigal püsiks. Kui soovite, võite ka nüüd esitulede jaoks auke teha või teha seda hiljem traadi pikkuse mõõtmisel.

Samuti peate ratta kodeerija kinnitama ühe ratta külge. Pole tähtis, milline, panin selle tagumisele vasakule rattale. Peate panema magnetketta ratta tegelikule võllile ja kodeerija tuleks selle kõrval oleva auto külge kinnitada. See on üsna vastuvõtlik, nii et see ei pea olema otse peal, vaid võimalikult lähedal. Kinnitasin oma kodeerija teibiga ja tõmblukuga. Kooder on see, mida kasutame oma auto kiiruse mõõtmiseks.

3. samm: jooteahelad

Jooteahelad
Jooteahelad
Jooteahelad
Jooteahelad

See osa on üsna tüütu, kuid mitte keeruline. Kui järgite pilti ja mõõdate enne traadi lõikamist kõik ära, pole see väga halb.

Seda tehes peaksite kalibreerima ka oma buck -muunduri õige pinge väljastamiseks. Raspberry Pi ja Jetson Nano võtavad mõlemad 5 V sisse, kuid meie aku on 11,1 V. Seega peame veenduma, et me oma elektroonikat ei praadiks. Selleks ühendage aku buck -muunduri sisendküljega. Kui aku on ühendatud, kasutage oma multimeetrit, et mõõta buck -muunduri väljundpooli. Kasutage väikese lamepeaga kruvikeerajat, et keerata buck-muunduri potientiomeetrit, kuni väljundpinge on 5 V. Kui väljund on õige, ei pea te enam potentsiomeetrit keerama.

Samm: installige sõltuvused manussüsteemi

Installige sõltuvused manussüsteemile
Installige sõltuvused manussüsteemile

Siin pole liiga palju teha, kuid siiski uskumatult oluline.

Esiteks veenduge, et ühendate kasutatava ruuteriga, et see saaks nüüdsest automaatselt ühenduse luua.

Seejärel avage terminal ja tippige järgmine tekst:

sudo apt värskendus

sudo apt install openssh-server

sudo apt install python-pip pip install numpy pip install opencv-python pip install pyzmq

Kui need asjad on installitud, peame veenduma, et olenemata sellest, millisesse porti arduino on ühendatud, tuntakse see alati ära. Niisiis, me kirjutame nn UDEV reeglid. Need on teie operatsioonisüsteemi reeglid, mis reguleerivad seda, mis juhtub, kui ühendate asju. Tahame tuvastada arduino, kui see on ühendatud, ja anda sellele juurdepääsuks nimi. Selle nimeks saab "arduino_0". Selleks kasutame selle tuvastamiseks arduino sisemist seerianumbrit.

udevadm info -a -n /dev /ttyUSB1 | grep '{seeria}' | pea -n1

See sülitab välja seerianumbri väärtuse, jätkake ja kopeerige see väärtus.

Seejärel peame redigeerima (või looma, kui seda pole) faili nimega "99-usb-serial.rules". See fail asub järgmises failitees "/etc/udev/rules.d/99-usb-serial.rules". Nagu ma mainisin, looge see fail ja kleepige see järgmisele reale, kus VALUE_FROM_ABOVE on asendatud teie väärtusega.

ALASÜSTEEM == "tty", ATTRS {serial} == "VALUE_FROM_ABOVE", SYMLINK+= "arduino_0"

See ütleb operatsioonisüsteemile, et kui ta seda konkreetset seerianumbrit näeb, helistage sellele arduino_0.

Viimane asi, mida siin teha, on alla laadida pushArucoVideoPullCommands.py ja panna see kuhugi kergesti ligipääsetavasse kohta. Ma soovitaksin teie kasutajale kodukataloogi, sest sinna jõuame hiljem, kui sisestame sisseehitatud süsteemi SSH -i.

Samm: seadistage staatiline IP -aadress

Seadistage staatiline IP -aadress
Seadistage staatiline IP -aadress

Nüüd on see osa, mis kõigile meeldib, IP -aadress. Selle projekti toimimiseks peab kood teadma, kuhu pilte ja juhtimiskäske saata, ja see tähendab, et meie seadmed vajavad staatilist IP -d.

Seadmele staatilise IP määramiseks on palju viise, kuid kuna meil on ruuter, mis ühendab meie maapealset jaama ja manussüsteemi, saame seda kasutada, et anda meile väga hõlpsalt konkreetseid IP -aadresse.

Liikuge ruuteri administraatori sektsiooni, tavaliselt (enamiku ruuterite puhul) tehakse seda veebibrauseri avamisega ja valikuga „192.168.1.1”. See palub teil sisse logida ning enamiku ruuterite tüüpiline standardne kasutajanimi ja parool on "admin".

Kui olete seal, navigeerige midagi, mis mainib "DHCP -serverit". See on protsess, mis töötab teie ruuteril ja jälgib, millised seadmed on sellega ühendatud nende MAC -aadressi abil, mis on alati konstant. Tahame valida meile olulised seadmed umbes, maapealse jaama arvuti ja manussüsteem ning lisage need reserveeritud kliendi sektsiooni. See annab neile staatilise ip iga kord, kui nad on selle ruuteriga ühendatud.

Veenduge, et olete seadnud manussüsteemi IP -aadressiks 192.168.1.122. Maapealse jaama IP -aadressi saab seada mis tahes jaoks.

Samm: laadige kood Arduinole üles

Laadige kood Arduinole üles
Laadige kood Arduinole üles

Arduino koodi üleslaadimiseks peame esmalt installima raamatukogu, mis töötab mootorikilbiga.

Minge oma Arduino IDE-s valikule Sketch-> Include Library-> Manage Libraries … Seejärel otsige üles Adafruit Motor Shield Library. Installige see raamatukogu ja laadige seejärel kood üles oma arduino seadmesse, midagi muud pole vaja nõuda.

Samm: ühendage ahel ja arvuti autosse

Ühendage ahel ja arvuti autosse
Ühendage ahel ja arvuti autosse

Nüüd, kui vooluring on üles ehitatud, on aeg see kõik auto peale panna. Ma ei hakka valetama, palju seda kraami hoitakse lihtsalt lindiga kinni, sest nii oli mul kõige lihtsam kiirelt kokku lüüa. Nagu öeldud, on sellel paigaldatud kinnitusavad, nagu ülaltoodud pildil näha.

Enamikku asju on üsna lihtne lihtsalt kusagil auto peal istuda lasta, nii et ärge muretsege, kui ruumi pole palju.

8. samm: seadistage VR -keskkond

Seadistage VR -keskkond
Seadistage VR -keskkond

See jaotis näeb pisut erinev välja, olenevalt sellest, millist VR -i seadistust teete. Igal juhul kasutasin selle tarkvara arendamiseks SteamVR -i, seega peate võib -olla selle installima.

Kuni kasutate SteamVR -i, peaksid juhtelemendid kohanema erinevate kontrolleritega. Olen kaardistanud juhtnupud toiminguteks, mitte tingimata nuppudeks, seega sobib see teoreetiliselt kõigile.

Peate lihtsalt faili Unity maailmaga alla laadima ja lahti pakkima ning olema valmis VR_Bot.exe käivitamiseks.

9. samm: käivitage kõik koos

Käivitage see kõik koos
Käivitage see kõik koos
Käivitage see kõik koos
Käivitage see kõik koos

Niisiis, nüüd, kui oleme auto seadistanud ja maapealne jaam on ühendatud ja valmis minema, kuidas me seda halba poissi tegelikult juhime? Maapealse jaama seisukohast on kõik, mida selleks vaja on, käivitada fail VR_Bot.exe, mida nägime varem.

Samal ajal peate aku ühendama manussüsteemiga ning laskma selle automaatselt käivitada ja ruuteriga ühenduse luua. Kui see on käivitatud, sisestage sinna SSH. Sellele juurdepääsuks vajate maapealses jaamas mingit terminali, soovitan GitBashi.

SSH tähistab Secure Shelli ja see on protokoll kaugsüsteemidele turvaliseks juurdepääsuks. Meie puhul annab see maapealsest jaamast juurdepääsu manussüsteemile. Lisateabe saamiseks klõpsake siin.

Peate teadma kasutajanime, millega oma manussüsteemi seadistate. Raspberry pi puhul on vaikimisi kasutajanimi 'pi' ja parool 'vaarikas'.

Pärast installimist avage terminal ja tippige järgmine tekst:

ssh {manussüsteemi kasutajanimi}@192.168.1.122

See avab sisseehitatud süsteemi terminali.

Kui olete sinna jõudnud, peate lihtsalt käivitama pythoni skripti, mille me varem kopeerisime.

python /path/to/pushArucoVideoPullCommands.py

Pärast seda hakkab sisseehitatud süsteem pilte välja pumpama ja käske vastu võtma maapealsesse jaama.

Siis on sul hea hakata sõitma ja lõbutsema!

Soovitan: