Robotspecifika block#

Introduktion#

VR-roverroboten har en drivlina, avståndssensor och åtgärder som är unika för Rover Rescue Playground.

Alla vanliga VEXcode VR-block finns tillgängliga för användning i Rover Rescue Playground.

Nedan finns en lista över alla tillgängliga robotspecifika block:

Drivinstruktioner - Flytta och vrid VR-rovern.

Åtgärder – Interagera med roverns resurser, fiender och inbyggda AI-system.

  • Åtgärder

  • Värden

    • rover ser – Returnerar om VR-rovern ser ett objekt inom sitt synområde.

    • rover upptäcker - Returnerar om VR-rovern upptäcker mineraler eller fiender inom sin detekteringsradie.

    • mineraler i förråd - Returnerar hur många mineraler VR-rovern bär.

    • lagringskapacitet – Returnerar VR-roverns nuvarande bärkapacitet.

    • roverriktning - Returnerar riktningen till ett objekt i grader.

    • roveravstånd – Returnerar avståndet till ett objekt i millimeter eller tum.

    • roverposition – Returnerar X- eller Y-koordinaten för ett objekt i millimeter eller tum.

    • under attack - Returnerar om VR-rovern för närvarande är under attack.

    • fiendenivå – Returnerar nivån för den närmaste upptäckta fienden.

    • fiendens strålning - Returnerar strålningen från den närmaste upptäckta fienden.

    • batterinivå – Returnerar VR-roverns aktuella batterinivå i %.

    • nivå – Returnerar VR-roverns aktuella nivå.

    • XP - Returnerar VR-roverns nuvarande erfarenhetspoäng.

    • vid attack - Kör bifogade block när VR-rovern attackeras.

    • när nivån går upp - Kör bifogade block när VR-rovern går upp i nivå.

Avkänning - Upptäck närliggande objekt med roverns avståndssensor.

Exemplen på den här sidan använder standardstartpositionen för Playground.

Drivlina#

Drivlinan styr hur VR-rovern kör och svänger. Drivlinan kan röra sig framåt eller bakåt, svänga vänster eller höger, svänga efter kurs och rapportera sin kurs.

Åtgärder#

köra#

Kör-blocket flyttar roboten framåt eller bakåt för alltid. Roboten fortsätter att röra sig tills den får en annan åtgärd, som att vända eller stanna.

kör [framåt v]

Parametrar

Beskrivning

riktning

Robotens riktning: framåt eller bakåt.

Exempel

när startad
[Drive forward, then stop.]
kör [framåt v]
vänta (2) sekunder
stoppa körning

köra för#

Blocket drive for i stapeln flyttar roboten framåt eller bakåt en viss sträcka. Projektet väntar tills roboten är klar innan nästa block i stapeln körs.

kör [framåt v] i (200) [mm v] ▶

Parametrar

Beskrivning

riktning

Robotens riktning: framåt eller bakåt.

avstånd

Den sträcka roboten kör. Detta kan vara ett heltal eller ett decimaltal.

enhet

Avståndsenheten: mm (millimeter) eller tum.

och vänta inte

Välj pilen ( ▶ ) för att expandera blocket till och vänta inte, så att nästa block i stapeln körs direkt.

Exempel

när startad
[Drive forward for 500 mm.]
kör [framåt v] i (500) [mm v] ▶

sväng#

Blocket sväng vrider roboten åt vänster eller höger för alltid. Roboten fortsätter att vrida tills den får en annan åtgärd, som att köra eller stanna.

sväng [höger v]

Parametrar

Beskrivning

riktning

Riktningen roboten svänger: vänster eller höger.

Exempel

när startad
[Turn right, then stop.]
sväng [höger v]
vänta (2) sekunder
stoppa körning

vänd dig för#

Blocket sväng för vrider roboten åt vänster eller höger ett visst antal grader. Svängen är relativ till robotens aktuella position. Projektet väntar tills roboten är klar med att vrida innan nästa block i stacken körs.

sväng [höger v] i (90) grader ▶

Parametrar

Beskrivning

riktning

Riktningen roboten svänger: vänster eller höger.

vinkel

Antalet grader som roboten roterar. Detta kan vara ett heltal eller ett decimaltal.

och vänta inte

Välj pilen ( ▶ ) för att expandera blocket till och vänta inte, så att nästa block i stapeln körs direkt.

Exempel

när startad
[Turn left, then turn right.]
sväng [vänster v] i (90) grader ▶
sväng [höger v] i (180) grader ▶

vänd dig till rubriken#

En kurs är den riktning roboten är vänd i, mätt i grader. Stackblocket vänd till kurs vänder roboten mot en specifik kurs från -359 till 359 grader. Roboten kommer att svänga den kortaste riktningen för att nå målkursen.

Startriktningen är 0 grader.

Projektet väntar tills roboten är klar med att snurra innan nästa block i stacken körs.

sväng till riktning (90) grader ▶

Parametrar

Beskrivning

rubrik

Robotens riktning ska vara mellan -359 och 359 grader.

och vänta inte

Välj pilen ( ▶ ) för att expandera blocket till och vänta inte, så att nästa block i stapeln körs direkt.

Exempel

när startad
[Turn to face east.]
sväng till riktning (90) grader ▶

gå till objektet#

Stackblocket gå till objekt roterar och kör VR-rovern till det valda objektet.

gå till [minerals v] ▶

Parametrar

Beskrivning

objekt

Vilket objekt VR-rovern kommer att gå till:

  • mineraler
  • fiende
  • bas

och vänta inte

Välj pilen ( ▶ ) för att expandera blocket till och vänta inte, så att nästa block i stapeln körs direkt.

Om VR-rovern upptäcker flera mineraler eller flera fiender, kommer den att gå till det närmare alternativet.

Om mineraler eller en fiende inte upptäcks inom roverns synfält när blocket kör, kommer roboten inte att köra. Basen kan alltid riktas in.

Exempel

när startad
[Drive to the closest mineral.]
gå till [minerals v] ▶

sluta köra#

Stackblocket stoppa körning stoppar robotens rörelse.

stoppa körning

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
[Drive forward, then stop.]
kör [framåt v]
vänta (4) sekunder
stoppa körning

Inställningar#

inställd drivhastighet#

Stackblocket inställd körhastighet anger hur snabbt roboten ska köra. En högre procentandel gör att roboten kör snabbare och en lägre procentandel gör att roboten kör långsammare.

Varje projekt börjar med att roboten kör med 50 % hastighet som standard.

Obs: En högre hastighet gör att roboten kör snabbare, men den kan vara mindre precis. En lägre hastighet gör att roboten kör långsammare, men den kan vara mer precis.

ställ in körhastighet till (50) [% v]

Parametrar

Beskrivning

hastighet

Hastigheten att köra med från 0 % till 100 %.

enhet

Hastighetsenheten: %

Exempel

när startad
[Move faster.]
ställ in körhastighet till (100) [% v]
kör [framåt v] i (100) [mm v] ▶

ställ in svänghastighet#

Stackblocket inställd svänghastighet anger hur snabbt roboten ska svänga. En högre procentandel gör att roboten svänger snabbare och en lägre procentandel gör att roboten svänger långsammare.

Varje projekt börjar med att roboten roterar med 50 % hastighet som standard.

Obs: En högre hastighet gör att roboten roterar snabbare, men den kan vara mindre exakt. En lägre hastighet gör att roboten roterar långsammare, men den kan vara mer exakt.

ställ in svänghastighet till (50) [% v]

Parametrar

Beskrivning

hastighet

Hastigheten att rotera med från 0 % till 100 %.

enhet

Hastighetsenheten: %

Exempel

när startad
[Turn faster.]
ställ in svänghastighet till (100) [% v]
sväng [höger v] i (90) grader ▶

ställ in körriktning#

En kurs är den riktning roboten är vänd i, mätt i grader. Stackblocket ställ in drivkurs ändrar robotens aktuella kurs till ett nytt kursvärde.

Om roboten till exempel har vänt sig åt höger och kursen ställs in på 0 grader, blir den högervända positionen den nya 0 grader. Roboten kan då vända sig till andra positioner baserat på den nya kursen.

ställ in körriktning till (0) grader

Parametrar

Beskrivning

rubrik

Kursvärdet, i grader, som ska ställas in för roboten.

Exempel

när startad
[Set the heading, then turn to 0 degrees.]
ställ in körriktning till (90) grader
sväng till riktning (0) grader ▶

ställ in timeout för drivning#

Stackblocket set drive timeout anger hur många sekunder roboten ska försöka slutföra en rörelse. Om roboten inte kan slutföra inom den tiden kommer den att sluta försöka och gå vidare till nästa block i stacken. Detta förhindrar att roboten fastnar i en rörelse.

ställ in körtimeout till (1) sekunder

Parametrar

Beskrivning

tid

Antalet sekunder roboten kan försöka slutföra en rörelse. Detta kan vara ett heltal eller ett decimaltal.

Exempel

när startad
[Drive for at most 1 second.]
ställ in körtimeout till (1) sekunder
kör [framåt v] i (25) [tum v] ▶

Värden#

körningen är klar#

Det booleska blocket körningen är klar rapporterar om roboten är klar med sin rörelse. Detta kan användas för att styra tidpunkten för andra beteenden baserat på robotens rörelse.

  • Sant - Roboten är klar med sin rörelse.

  • Falskt - Roboten rör sig fortfarande.

Det här blocket fungerar tillsammans med drivlineblock som har parametern och vänta inte.

<körning klar?>

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
[Start turning when the drive is complete.]
kör [framåt v] i (200) [mm v] ◀ och vänta inte
vänta tills <körning klar?>
sväng [höger v] i (360) grader ▶

drivningen rör sig#

Det booleska blocket drivenheten rör sig rapporterar om roboten rör sig. Detta kan användas för att styra tidpunkten för andra beteenden baserat på robotens rörelse.

  • Sant - Roboten rör sig.

  • Falskt - Roboten rör sig inte.

Det här blocket fungerar tillsammans med drivlineblock som har parametern och vänta inte.

<körning pågår?>

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
[Print while the rover is moving.]
kör [framåt v] i (200) [mm v] ◀ och vänta inte
medan <körning pågår?>
skriv ut [Still Moving...] ▶
vänta (0.1) sekunder
rensa alla rader
avsluta
skriv ut [Done!] ▶

körriktning#

En kurs är den riktning roboten är vänd i, mätt i grader. Rapporteringsblocket körkurs rapporterar den kursen från 0 till 359,99 grader.

Robotens startriktning är 0 grader.

(körriktning i grader)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
[Display the heading after turning.]
sväng [höger v] i (90) grader ▶
skriv ut (körriktning i grader) ▶
flytta markör till nästa rad

Åtgärder#

Åtgärder#

mineralernas verkan#

mineraler [upphämtning v]

Parametrar

Beskrivning

handling

Vad man ska göra med mineraler:

  • plocka upp - Placera mineraler i VR-roverns förråd.
  • släpp - Droppar som burit mineraler.
  • använda - Konsumerar mineraler på marken för att återställa energi.

När du plockar upp mineraler förvaras de i VR-rovern tills de tappas eller används.

Genom att använda mineraler fylls en del av VR-roverns energi på. Mineraler kan bara användas om de finns på marken.

VR-rovern får erfarenhetspoäng (XP) genom att använda mineraler eller släppa dem vid basen.

Exempel

när startad
[Drive to the closest mineral and pick it up.]
gå till [minerals v] ▶
mineraler [upphämtning v]

absorbera fiendens strålning#

Blocket absorbera fiendens strålning absorberar strålning från en fiende i Rover Rescue-lekplatsen.

absorbera strålning

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
[Drive to the closest enemy and absorb radiation.]
gå till [enemy v] ▶
absorbera strålning

standby#

Standby-blocket försätter VR Rover i standby-läge tills den angivna batteritröskeln har uppnåtts.

standby tills [50] % batteri

Parametrar

Beskrivning

procent

Batterigränsen som gör att VR Rover går ur standby-läge, från 0 till 100.

I standby-läge använder VR-rovern batteriet långsammare, men räknaren för antal överlevande dagar ökar i snabbare takt.

När batteriet når den valda tröskeln avslutar VR Rover standby-läget och återgår till normal batterianvändning och dagsförlopp.

Om det valda tröskelvärdet är lika med eller över den aktuella batterinivån, kommer VR Rover inte att gå in i standbyläge.

Exempel

när startad
[Wait in standby until battery reaches 35%.]
standby tills [35] % batteri
gå till [minerals v] ▶

Värden#

rover ser#

Blocket rover sees returnerar ett booleskt värde som anger om VR-rovern ser det valda objektet med sin inbyggda AI-teknik.

  • Sant – Det valda objektet ligger inom 1000 millimeter från VR-rovern och inom dess synfält.

  • Falskt - Det valda objektet är längre bort än 1000 millimeter och/eller utanför synfältet.

<ser [minerals v]?>

Parametrar

Beskrivning

objekt

Vilket föremål ska man kontrollera:

  • mineraler
  • fiende
  • bas
  • hinder
  • faror

VR-roverns synfält är 40 grader, vilket visas på minikartan som den grå genomskinliga konen som sträcker sig från roverns framsida.

Exempel

när startad
för alltid
om <ser [minerals v]?> då
gå till [minerals v] ▶
avsluta
avsluta

rover upptäcker#

Blocket rover detects returnerar ett booleskt värde som anger om VR-rovern detekterar mineraler eller fiender med sin inbyggda AI-teknik.

  • Sant – Det valda objektet ligger inom roverns detekteringsradie.

  • Falskt - Det valda objektet ligger inte inom roverns detekteringsradie.

<detekterar [minerals v]?>

Parametrar

Beskrivning

objekt

Vilket objekt att upptäcka:

  • mineraler
  • fiende

VR-roverns detekteringsradie är 800 millimeter, vilket visas på minikartan som den gula cirkeln runt rovern.

Exempel

när startad
för alltid
om <detekterar [minerals v]?> då
gå till [minerals v] ▶
avsluta
avsluta

mineraler i lagring#

Blocket mineraler i förråd returnerar den aktuella mängden mineraler som VR-rovern har i sitt förråd.

(mineraler i lager)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
skriv ut (mineraler i lager) ▶
flytta markör till nästa rad

lagringskapacitet#

Blocket lagringskapacitet returnerar bärkapaciteten för VR Rovers lagringsutrymme.

(lagringskapacitet)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
skriv ut (lagringskapacitet) ▶
flytta markör till nästa rad

roverriktning#

Blocket rover direction returnerar riktningen från VR-rovern till det valda objektet i grader.

([minerals v] riktning i grader)

Parametrar

Beskrivning

objekt

Vilket objekts riktning att rapportera:

  • mineraler
  • fiende
  • bas

För mineraler och fiender rapporterar detta block endast värden när det valda objektet är inom 1000 millimeter och inom roverns 40-graders synfält.

Om bas väljs rapporteras riktningen även när basen inte är inom synfältet. För basen rapporterar detta block ett värde från -180 till 180 grader.

Exempel

när startad
skriv ut ([minerals v] riktning i grader) ▶
flytta markör till nästa rad

roveravstånd#

Blocket rover distance returnerar avståndet från VR-rovern till det valda objektet.

([minerals v] avstånd i [mm v] :: custom-actions)

Parametrar

Beskrivning

objekt

Vilket objekts avstånd att rapportera:

  • mineraler
  • fiende
  • hinder
  • faror
  • bas

enhet

Enheten som används för att rapportera avståndet: mm eller tum

För mineraler och fiender rapporterar detta block endast värden när det valda objektet är inom 1000 millimeter och inom roverns 40-graders synfält.

Om bas väljs rapporteras avståndet även när basen inte är inom synfältet.

Exempel

när startad
skriv ut ([minerals v] avstånd i [mm v] :: custom-actions) ▶
flytta markör till nästa rad

roverplats#

Blocket rover location returnerar X- eller Y-koordinaten för det valda objektet med hjälp av roverns inbyggda AI-teknik.

([minerals v] plats [X v] av [mm v])

Parametrar

Beskrivning

objekt

Vilket objekts plats att rapportera:

  • mineraler
  • fiende
  • hinder
  • faror
  • bas

axel

Vilken koordinat som ska returneras:

  • X
  • Y

enhet

Enheten som används för att rapportera koordinaten: mm eller tum

För mineraler och fiender rapporterar detta block endast värden när det valda objektet är inom 1000 millimeter och inom roverns 40-graders synfält.

Om bas väljs rapporteras platsen även när basen inte är inom synfältet.

Exempel

när startad
skriv ut ([base v] plats [X v] av [mm v]) ▶
flytta markör till nästa rad
skriv ut ([base v] plats [Y v] av [mm v]) ▶
flytta markör till nästa rad

under attack#

Blocket under attack returnerar ett booleskt värde som indikerar om VR-rovern för närvarande är under attack från en fiende.

  • Sant - VR-rovern är under attack.

  • Falskt - VR-rovern är inte under attack.

<under attack?>

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
för alltid
om <under attack?> då
kör [bakåt v] i [500] [mm v] ▶
avsluta
avsluta

fiendenivå#

Blocket fiendenivå returnerar nivån på den närmaste fienden som upptäckts av VR-rovern.

(fiendenivå)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

När inga fiender detekteras inom VR-roverns detekteringsradie returnerar detta block 0.

Exempel

när startad
för alltid
om <(fiendenivå) [math_equal v] [1]> då
gå till [enemy v] ▶
annars
kör [bakåt v] i [500] [mm v] ▶
avsluta
avsluta

fiendens strålning#

Blocket fiendens strålning returnerar strålningen från den närmaste fienden som upptäckts av VR-rovern.

(fiendens strålning)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

När inga fiender detekteras inom VR-roverns detekteringsradie returnerar detta block 0.

Exempel

när startad
skriv ut (fiendens strålning) ▶
flytta markör till nästa rad

batterinivå#

Blocket batterinivå returnerar VR-roverns aktuella batterinivå som en procentandel.

(batterinivå i % :: custom-actions)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
skriv ut (batterinivå i % :: custom-actions) ▶
flytta markör till nästa rad

nivå#

Blocket nivå returnerar VR-roverns aktuella nivå.

(nivå)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
skriv ut (nivå) ▶
flytta markör till nästa rad

XP#

XP-blocket returnerar det aktuella antalet erfarenhetspoäng som VR-rovern har.

(XP)

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när startad
skriv ut (XP) ▶
flytta markör till nästa rad

när de är under attack#

Blocket när under attack kör sin bifogade stack varje gång VR-rovern attackeras av en fiende.

när den är under attack

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när den är under attack
absorbera strålning

när nivån stiger#

Blocket när nivån är upp kör sin bifogade stack varje gång VR-rovern rör sig från en nivå till nästa.

när nivån höjs

Parametrar

Beskrivning

Det här blocket har inga parametrar.

Exempel

när nivån höjs
skriv ut [The VR Rover has leveled up!] ▶
flytta markör till nästa rad

Avkänning#

Avstånd#

Avstånd hittat ett objekt#

Blocket Avstånd hittat till objekt returnerar ett booleskt värde som anger om avståndssensorn har detekterat ett objekt inom 2000 mm.

  • Sant - Avståndssensorn har detekterat ett objekt.

  • Falskt - Avståndssensorn har inte detekterat något objekt.

<[distance v] hittade ett objekt?>

Parametrar

Beskrivning

avståndssensor

Vilken avståndssensor att använda? I den här lekplatsen är den tillgängliga sensorn distance.

Exempel

när startad
[Turn until the Distance Sensor detects an object.]
sväng [höger v]
vänta tills <[distance v] hittade ett objekt?>
stoppa körning

objektavstånd#

Blocket objektavstånd returnerar avståndet till det närmaste objektet från avståndssensorn.

([distance v] in [mm v])

Parametrar

Beskrivning

avståndssensor

Vilken avståndssensor att använda? I den här lekplatsen är den tillgängliga sensorn distance.

enhet

Avståndsenheten: mm eller tum

Exempel

när startad
[Wait until the Distance Sensor detects an object, then print the distance.]
sväng [höger v]
vänta tills <[distance v] hittade ett objekt?>
stoppa körning
skriv ut ([distance v] in [mm v]) ▶