Sijaintisensorin käyttö VEXcode VR:ssä

VR-robotissa on useita antureita, mukaan lukien sijaintisensori.


Sijaintisensori VR-robotissa

VR-robottikynän huomioteksti

VR Robot ssä on sisäänrakennettu sijaintianturi, joka ilmoittaa VR-robotin (X, Y) sijainnin. VR-robotin sijainti määräytyy keskikääntöpisteen mukaan. Tämä on myös kynän sijainti VR Robotissa.

VR ylhäältä alas

Sijaintisensori ilmoittaa myös sijaintikulman, joka vaihtelee 0 astetta 359,9 asteeseen kompassisuuntatyylin mukaan.

Grip_Map_with_axis__1_.jpg

Jokainen leikkikenttä vaihtelee -1000 mm:stä 1000 mm:iin X- ja Y-asennoissa. VR-robotin aloituspaikka riippuu valitusta Playground stä. Lisätietoja leikkikentän sijaintitiedoista ja koordinaattijärjestelmästä on seuraavissa artikkeleissa:

Dashboard_location.png

Sijaintisensorin arvot voidaan näyttää VEXcode VR:n Dashboardissa. Lisätietoja Dashboardista on artikkelissa Dashboard - Playground Features - VEXcode VR.

Screen_Shot_2022-04-19_at_2.05.06_PM.png

Sijaintisensorin arvot voidaan näyttää monitorikonsolissa VEXcode VR:ssä.


Sijaintianturin yleiset käyttötavat

VR-robotin sijaintianturia voidaan käyttää monella tavalla.

VEXcode VR Blocks Castle Crasherin leikkikenttä
Threshgold_greater_than_-300.png castle_crasher_monitor.png
VEXcode VR Python
def main():
, mutta ei sijainti.sijainti(Y, MM) > -300:
voimansiirto.drive(FORWARD)
odota(20, MSEC)
voimansiirto.pysäytys()

Sijaintisensorilla voidaan navigoida minkä tahansa leikkikentän koordinaateissa. Jokainen leikkikenttä vaihtelee -1000 mm:stä 1000 mm:iin X- ja Y-asennoissa.

Jos esimerkiksi haluat VR-robotin pysähtyvän, kun se ylittää tietyn arvon Y-akselilla, voit asettaa Y-akselin kynnyksen tätä arvoa suuremmiksi. Tämä keskustassa sijaitseva linna Castle Crasher Playground :ssä on lähellä Y-arvoa -250. Joten esimerkkiprojekti asettaa VR-robotin lopettamaan ajamisen, kun se ylittää Y-arvon, joka on suurempi kuin -300, eikä törmää linnaan.

VEXcode VR Blocks Disk Mover -leikkikenttä
Threshhold_capture_disk.png Screen_Shot_2021-12-13_at_11.26.26_AM.png
VEXcode VR Python
def main():
voimansiirto.käännös (OIKEA, 90, ASTEET)
mutta ei sijainti.sijainti(X, MM) > 800:
voimansiirto.drive(FORWARD)
odota(20, MSEC)
voimansiirto.käännös (vasemmalle) , 90, ASTEET)
muttei sijaintia.asento(Y, MM) > -100:
voimansiirto.ajo(ETEENPÄIN)
odota(20, MSEC)
voimansiirto.pysäytys()
magnet.energize(BOOST)

Sijaintisensorilla voidaan myös siirtää VR-robotti tunnettuun paikkaan. Tässä projektissa ensimmäinen vihreä levy näyttää olevan paikassa (800, -200). Tämän pisteen saavuttamiseksi VR-robotti voi ajaa X-akselia pitkin, kunnes se saavuttaa 800:n ja sitten Y-akselia pitkin, kunnes se saavuttaa -200 poimiakseen levyn.

VEXcode VR Blocks Art Canvas -leikkikenttä
Screen_Shot_2021-12-13_at_11.45.30_AM.png Screen_Shot_2021-12-13_at_11.43.44_AM.png
VEXcode VR Python
def main():
kynä.siirrä(ALAS)
voimansiirto.ajo_for(ETEENPÄIN, 400, MM)
while location.position_angle(DEGRES) < 89:
voimansiirto.käänny(OIKEA)
odota(20, MSEC)
kynä .set_pen_color(RED)
drivetrain.drive_for(FORWARD, 400, MM)

Paikkaanturia voidaan käyttää myös VR-robotin kulman määrittämiseen. Tässä projektissa VR-robotti ajaa eteenpäin ja kääntyy sitten oikealle. Se odottaa, kunnes VR-robotin kulma on suurempi kuin 89 astetta, ja muuttaa sitten kynän värin punaiseksi ja ajaa eteenpäin vielä 400 mm.

Huomaa, että sijaintikulma Dashboardissa on 92 astetta täsmälleen 90 tai jopa 89,1 asteen sijaan. Tämä johtuu siitä, että kestää jonkin aikaa, ennen kuin projektin eteneminen ja kunkin komennon käsitteleminen niitä suoritetaan. 92 astetta ei siis ole virhe, se on tarkoitettu käsittelyajan ja VR-robotin nopeuden vuoksi.


Sijaintisensorin käyttö VEXcode VR -lohkoissa

(Robotin sijainti) -lohko

Robottilohkon sijainti

(Robotin sijainti) -lohko ilmoittaa VR-robotin X- tai Y-koordinaattipaikan.

Robotin x lohkon sijainti

X- tai Y-koordinaattipaikka voidaan valita lauseen pudotusvalikosta.

Robottilohkon sijainti

Yksiköt mm tai tuuma voidaan valita lohkon pudotusvalikosta.

(Sijaintikulma asteina) -lohko

Sijoituskulma asteina

(Sijaintikulma asteina) -lohko ilmoittaa VR-robotin kulman asteina lähimpään kymmenesosaan. Arvot vaihtelevat välillä 0,0 - 359,9 astetta.


Sijaintisensorin käyttö VEXcode VR Pythonissa

Screen_Shot_2021-11-11_at_9.49.14_AM.png

Aloittaaksesi sijaintisensorin ohjelmoinnin Pythonilla, sinun on ensin avattava uusi tekstiprojekti VEXcode VR:ssä. Katso lisätietoja tästä artikkelista.

Screen_Shot_2021-12-13_at_11.55.20_AM.png

position-komento ilmoittaa VR-robotin X- tai Y-koordinaattisijainnin.

-asentokulma -komento ilmoittaa VR-robotin kulman asteina.

Voit lisätä jommankumman näistä komennoista projektiisi vetämällä komennon sisään Toolboxista tai kirjoittamalla komennon työtilaan automaattisen täydennyksen avulla. Lisätietoja automaattisesta täydennyksestä VEXcode VR:ssä Pythonilla on tässä artikkelissa.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: