Använda platssensorn i VEXcode VR

VR-roboten har en mängd sensorer, inklusive en platssensor.


Platssensor på VR-roboten

VEXcode VR Playground visar robotens X- och Y-koordinater från positionssensorn

VR-robot har en inbyggd positionssensor som rapporterar VR-robotens (X, Y) position. VR-robotens position bestäms av den centrala vändpunkten. Det här är också platsen för pennan på VR-roboten.

Positionssensor som visar VR-robotens X- och Y-koordinater på lekplatsen

Positionssensorn rapporterar även positionsvinkeln som varierar från 0 grader till 359,9 grader enligt en kompasskurs.

Positionssensor på framsidan av VEXcode VR-roboten

Varje lekplats varierar från -1000 mm till 1000 mm för X- och Y-positionerna. VR-robotens startplats beror på Lekplats som valts. För mer information om platsinformation på en lekplats och koordinatsystemet, se följande artiklar:

Platssensor markerad på VR-roboten i lekplatsen

Positionssensorns värden kan visas på instrumentpanelen i VEXcode VR. För att lära dig mer om instrumentpanelen, läs artikeln Instrumentpanel - Lekplatsfunktioner - VEXcode VR.

Platssensorknappen i VEXcode VR-verktygsfältet

Positionssensorns värden kan visas på monitorkonsolen i VEXcode VR.


Vanliga användningsområden för platssensorn

Platssensorn på VR-roboten kan användas på många sätt.

VEXcode VR-block Castle Crasher Lekplats
Platssensorn visar VR-robotens X- och Y-position på lekplatsens rutnät Positionssensorns position på VR-roboten som används för att mäta x- och y-koordinater
VEXcode VR Python
def main():
medan inte location.position(Y, MM) > -300:
drivetrain.drive(FRAMÅT)
wait(20, MSEC)
drivetrain.stop()

Positionssensorn kan användas för att navigera koordinaterna för vilken lekplats som helst. Varje lekplats varierar från -1000 mm till 1000 mm för X- och Y-positionerna.

Om du till exempel vill att VR-roboten ska stanna när den korsar ett visst värde på Y-axeln, kan du ställa in ett tröskelvärde på Y-axeln som är större än det värdet. Denna mittborg i Castle Crasher Playground har nära ett Y-värde på -250. Så exempelprojektet ställer in VR-roboten att sluta köra efter att den passerat ett Y-värde större än -300, och kommer inte att krascha in i slottet.

VEXcode VR-block Diskflyttarens lekplats
Platssensorn visar VR-robotens X- och Y-koordinater på lekplatsen. Platssensor som rapporterar VR-robotens X- och Y-koordinater i Playground-rutnätet
VEXcode VR Python
def main():
drivetrain.turn_for(HÖGER, 90, GRADER)
while not location.position(X, MM) > 800:
drivetrain.drive(FRAMÅT)
wait(20, MSEC)
drivetrain.turn_for(VÄNSTER, 90, GRADER)
while not location.position(Y, MM) > -100:
drivetrain.drive(FRAMÅT)
wait(20, MSEC)
drivetrain.stop()
magnet.energize(BOOST)

Platssensorn kan också användas för att flytta VR-roboten till en känd plats. I det här projektet verkar den första gröna skivan vara på platsen (800, -200). För att nå den punkten kan VR-roboten köra längs X-axeln tills den når 800 och sedan längs Y-axeln tills den når -200 för att plocka upp disken.

VEXcode VR-block Konstduk Lekplats
Platssensor som visar VR-robotens X- och Y-koordinater i Playground-rutnätet Platssensorknappen i Playground-verktygsfältet
VEXcode VR Python
def main():
pen.move(DOWN)
drivetrain.drive_for(FRAMÅT, 400, MM)
while location.position_angle(DEGREES) < 89:
drivetrain.turn(HÖGER)
wait(20, MSEC)
pen.set_pen_color(RED)
drivetrain.drive_for(FRAMÅT, 400, MM)

Positionssensorn kan också användas för att bestämma VR-robotens aktuella vinkel. I det här projektet kommer VR-roboten att köra framåt och sedan svänga höger. Den väntar tills VR-robotens vinkel är större än 89 grader och ändrar sedan pennans färg till röd och kör framåt ytterligare 400 mm.

Observera att positionsvinkeln i instrumentpanelen är 92 istället för exakt 90 eller till och med 89,1. Detta beror på att det tar tid för projektets flöde att fortskrida och bearbeta varje kommando allt eftersom de körs. Således är 92 grader inte ett misstag, det är avsett på grund av bearbetningstiden och VR-robotens hastighet.


Använda platssensorn i VEXcode VR-block

(Robotens position) block

Platssensor som visar VR-robotens X- och Y-koordinater i Playground-rutnätet

Blocket (Robotens position) rapporterar VR-robotens X- eller Y-koordinatposition.

Platssensorknappen i VEXcode VR-verktygsfältet

X- eller Y-koordinatpositionen kan väljas från rullgardinsmenyn på blocket.

Platssensorns position på VR-robotens främre stötfångare

Enheterna mm eller tum kan väljas från rullgardinsmenyn på blocket.

(Positioneringsvinkel i grader) block

VEXcode VR Playground visar robotens X-position, Y-position och kursvärden från positionssensorn

Blocket (Positionvinkel i grader) rapporterar VR-robotens vinkel i grader avrundat till närmaste tiondels decimal. Värdena varierar från 0,0 till 359,9 grader.


Använda platssensorn i VEXcode VR Python

Positionssensorns position på VR-roboten som används för att spåra X- och Y-koordinater

För att börja programmera platssensorn med Python måste du först öppna ett nytt textprojekt i VEXcode VR. För mer information, se den här artikeln.

Platssensorns X- och Y-koordinater för VR-roboten på Playground-rutnätet

Kommandot positionrapporterar VR-robotens X- eller Y-koordinatposition.

Kommandot positionsvinkel rapporterar VR-robotens vinkel i grader.

För att lägga till något av dessa kommandon i ditt projekt kan du dra kommandot in från verktygslådan eller skriva ut kommandot i arbetsytan med hjälp av funktionen Komplettera automatiskt. För att lära dig mer om Autocomplete i VEXcode VR med Python, se den här artikeln.

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

Last Updated: