Rörelse#

Introduktion#

Motorer styr hur delar av en robot rör sig. Motorer kan användas för att lyfta en arm, vrida en klo, snurra ett hjul eller flytta en annan del av en byggnad. Två motorer kan arbeta tillsammans som en drivlina för att röra och vrida hela roboten.

Varje motor konfigureras i fönstret Enheter. Beroende på versionen kan namnen på motorerna och riktningarna ändras. Till exempel har Competition Advanced 2.0-versionen en motor som heter ArmMotor, med riktningarna upp och ner. En anpassad robot kan använda olika motornamn eller riktningar.

Som standard roterar framåt en motor moturs och bakåt roterar en motor medurs. Om en motor är inställd på bakåt i Enhetsfönstret kommer dessa riktningar att växlas.

En VEX GO-motor som visar framåtriktningen indikerad med ett plustecken och en pil som indikerar att den roterar åt vänster eller moturs. En VEX GO-motor som visar bakåtriktningen indikerad med ett minustecken och en pil som indikerar att den roterar åt höger eller medurs.

Det finns många sätt att koda motorer. Nedan följer en lista över alla rörelseblock:

Åtgärder — Stoppa och snurra motorer.

Inställningar — Justera motorinställningar.

Värden — Kontrollera motorstatus.

  • motorn är klar — Rapporterar om motorn är klar med att röra sig.

  • motorn snurrar? — Rapporterar om motorn snurrar.

  • motorposition — Rapporterar motorns aktuella position.

  • motorhastighet — Rapporterar hur snabbt motorn snurrar, i procent från -100 % till 100 %.

  • motorström — Rapporterar hur mycket ström motorn använder från batteriet, i procent från 0 % till 100 %.

Åtgärder#

snurrmotor#

Spinmotorn-stackblocket snurrar en motor framåt eller bakåt för alltid. Motorn fortsätter att snurra tills den får en annan åtgärd, som att snurra i en annan riktning eller stanna.

snurra [ArmMotor v] [upp v]

Parametrar

Beskrivning

motor

Motorn som ska snurra. Välj bland de motorer som är konfigurerade i fönstret Enheter.

riktning

Motorns rotationsriktning. Som standard är alternativen framåt och bakåt. ​​Riktningsalternativen kan ändras beroende på motorns konfiguration.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Raise the ArmMotor, then stop.]
snurra [ArmMotor v] [upp v]
vänta [1] sekunder
stoppa [ArmMotor v]

rotationsmotor för#

Blocket snurra motor för roterar en motor en specifik sträcka. Rotationen är relativ till motorns aktuella position. Projektet väntar tills motorn har snurrat klart innan nästa block i stacken körs.

snurra [ArmMotor v] [upp v] i [90] [grader v] ▶

Parametrar

Beskrivning

motor

Motorn som ska snurra. Välj bland de motorer som är konfigurerade i fönstret Enheter.

riktning

Motorns rotationsriktning. Som standard är alternativen framåt och bakåt. ​​Riktningsalternativen kan ändras beroende på motorns konfiguration.

avstånd

Avståndet som motorn roterar. Grader använder heltal. Varv kan använda heltal eller decimaler.

enhet

Avståndsenheten: grader eller varv.

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 :: hat events
[Build Used: Competition Advanced 2.0]
[Raise and lower the ArmMotor.]
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶
vänta [1] sekunder
snurra [ArmMotor v] [ner v] i [180] [grader v] ▶

snurra motorn till position#

Stackblocket snurra motorn till position snurrar en motor till en specifik position.

En motors position är hur långt den har snurrat, mätt i grader eller varv. Ett varv är lika med 360 grader. I början av ett projekt sätts motorpositionen till 0 grader. Motorpositionen kan också ställas in med hjälp av blocket set motor position.

Positionsvärdena är absoluta. Det betyder att rotationsriktningen beror på motorns aktuella position.

snurra [ArmMotor v] till position (90) [grader v] ▶

Parametrar

Beskrivning

motor

Motorn som ska snurra. Välj bland de motorer som är konfigurerade i fönstret Enheter.

placera

Positionsvärdet som motorn roterar till. Grader använder heltal. Varv kan använda heltal eller decimaler.

enhet

Positionsenheten: grader eller varv.

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 :: hat events
[Build Used: Competition Advanced 2.0]
[Return ArmMotor to 0 degrees after raising.]
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶
vänta [1] sekunder
snurra [ArmMotor v] till position [0] [grader v] ▶

stoppa motorn#

Stackblocket stoppmotor stoppar en motor från att snurra.

stoppa [ArmMotor v]

Parametrar

Beskrivning

motor

Motorn som ska stoppas. Välj bland de motorer som är konfigurerade i fönstret Enheter.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Raise the ArmMotor.]
snurra [ArmMotor v] [upp v]
vänta [1] sekunder
stoppa [ArmMotor v]

Inställningar#

ställ in motorposition#

En motors position är hur långt den har snurrat, mätt i grader eller varv. Ett varv är lika med 360 grader. Stackblocket set motor position ändrar motorns aktuella position till ett nytt värde.

Om till exempel en motor har snurrat 180 grader, kommer en position som ställs in på 0 grader att återställas från 180 grader till 0 grader. Motorn kan sedan snurra till positioner baserat på det nya värdet.

ställ in [ArmMotor v] position till (0) [grader v]

Parametrar

Beskrivning

motor

Motorn att ställa in positionen för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

placera

Positionsvärdet som ska ställas in för motorn. Grader använder heltal. Varv kan använda heltal eller decimaler.

enhet

Positionsenheten: grader eller varv.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Return ArmMotor to 0 degrees after raising.]
ställ in [ArmMotor v] position till [0] [grader v]
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶
vänta [1] sekunder
snurra [ArmMotor v] till position [0] [grader v] ▶

inställd motorhastighet#

Stackblocket inställd motorhastighet anger hur snabbt motorn ska snurra. En högre procentandel gör att motorn snurrar snabbare och en lägre procentandel gör att motorn snurrar långsammare.

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

Obs! En högre hastighet gör att motorn snurrar snabbare, men den kan vara mindre exakt. En lägre hastighet gör att motorn snurrar långsammare, men den kan vara mer exakt.

ställ in [ArmMotor v] hastighet till [50] %

Parametrar

Beskrivning

motor

Motorn att ställa in hastigheten för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

hastighet

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

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor at different velocities.]
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶
vänta [1] sekunder
[Move slow.]
ställ in [ArmMotor v] hastighet till [20] %
snurra [ArmMotor v] [ner v] i [180] [grader v] ▶
vänta [1] sekunder
[Move fast.]
ställ in [ArmMotor v] hastighet till [100] %
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶

ställ in motorstopp#

Stackblocket ställ in motorstopp anger hur en motor ska stanna: genom att bromsa, frihjula eller hålla.

ställ in [ArmMotor v] bromssätt till [broms v]

Parametrar

Beskrivning

motor

Motorn som stoppbeteendet ska ställas in för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

stoppbeteende

Hur motorn kommer att stanna:

  • broms — Stannar omedelbart.
  • utrullning — Saktar ner till stopp.
  • håll — Stannar omedelbart och håller motorns position.

Om till exempel en Competition Advanced 2.0-version används och ArmMotor är inställd på att hålla, kommer motorn att hålla armen i dess nuvarande position tills en annan armrörelse sker. Det betyder att motorn kommer att arbeta mot gravitationen för att hålla armen i luften om motorn stoppades med armen upplyft.

Om detta block inte används kommer motorn att bromsa vid stopp.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor, then coast to a stop.]
ställ in [ArmMotor v] hastighet till [20] %
ställ in [ArmMotor v] bromssätt till [frihjul v]
snurra [ArmMotor v] [upp v]
vänta [1] sekunder
stoppa [ArmMotor v]

ställ in motorns maximala vridmoment#

Vridmoment är en rotationskraft. Det visar hur hårt en motor kan trycka eller dra när den snurrar.

Stackblocket ställ in motorns maxmoment anger det högsta vridmoment som en motor får använda.

En högre procentandel låter motorn trycka hårdare, som när man lyfter ett tungt föremål. En lägre procentandel begränsar hur hårt motorn kan trycka. Detta kan hjälpa till att skydda roboten om motorn fastnar eller når slutet av hur långt den kan röra sig.

Varje projekt börjar med att varje motors vridmoment är 50 % som standard.

ställ in [ArmMotor v] maxmoment till (50) %

Parametrar

Beskrivning

motor

Motorn att ställa in maxmoment för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

vridmoment

Det maximala vridmomentet som motorn kan använda är från 0 % till 100 %.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor at different torques.]
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶
vänta [1] sekunder
[Move with less torque.]
ställ in [ArmMotor v] maxmoment till [20] %
snurra [ArmMotor v] [ner v] i [180] [grader v] ▶
vänta [1] sekunder
[Move with maximum torque.]
ställ in [ArmMotor v] maxmoment till [100] %
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶

ställ in motorns timeout#

Stackblocket ställ in motortimeout anger hur många sekunder en motor ska försöka slutföra en rörelse. Om motorn 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 motorn fastnar i en rörelse.

ställ in [ArmMotor v] timeout till (1) sekunder

Parametrar

Beskrivning

motor

Motorn som timeout-tiden ska ställas in för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

tid

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

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Move ArmMotor as far as possible for 1 second before resetting.]
ställ in [ArmMotor v] position till [0] [grader v]
ställ in [ArmMotor v] timeout till [1] sekunder
snurra [ArmMotor v] [upp v] i [180] [grader v] ▶
snurra [ArmMotor v] till position [0] [grader v] ▶

Värden#

är motorn klar?#

Det booleska blocket motorn är klar rapporterar om motorn är klar med att röra sig. Detta kan användas för att styra tidpunkten för andra beteenden baserat på motorns rörelse.

  • Sant — Motorn är klar med att röra sig.

  • Falskt — Motorn rör sig fortfarande.

Detta block fungerar tillsammans med följande rörelseblock som har parametern och vänta inte: snurra motorn för och snurra motorn till position.

<[ArmMotor v] klar?>

Parametrar

Beskrivning

motor

Motorn som ska rapportera om den är klar med rörelsen. Välj bland de motorer som är konfigurerade i fönstret Enheter.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Turn the Eye Sensor's light on while ArmMotor is moving.]
snurra [ArmMotor v] [upp v] i [180] [grader v] ◀ och vänta inte
vänta [0.1] sekunder
för alltid
om <[ArmMotor v] klar?> då
ställ in ögonjusljus [av v]
annars
ställ in ögonjusljus [på v]

snurrar motorn?#

Det booleska blocket motorn snurrar? rapporterar om motorn snurrar. Detta kan användas för att styra tidpunkten för andra beteenden baserat på motorns rörelse.

  • Sant — Motorn snurrar.

  • Falskt — Motorn snurrar inte.

Detta block fungerar tillsammans med följande rörelseblock som har parametern och vänta inte: snurra motorn för och snurra motorn till position.

<[ArmMotor v] snurrar?>

Parametrar

Beskrivning

motor

Motorn som ska rapportera om den snurrar. Välj bland de motorer som är konfigurerade i fönstret Enheter.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Turn the Eye Sensor's light on while ArmMotor is moving.]
snurra [ArmMotor v] [upp v] i [180] [grader v] ◀ och vänta inte
vänta [0.1] sekunder
för alltid
om <[ArmMotor v] snurrar?> då
ställ in ögonjusljus [på v]
annars
ställ in ögonjusljus [av v]

motorposition#

En motors position är hur långt den har snurrat, mätt i grader eller varv. Rapporteringsblocket motorposition rapporterar motorns aktuella position.

I början av ett projekt är motorpositionen inställd på 0 grader. Om motorn snurrar ett helt varv framåt blir positionen 360 grader eller 1 varv. Om motorn snurrar åt andra hållet blir positionen negativ.

([ArmMotor v] position i [grader v] :: custom-motion)

Parametrar

Beskrivning

motor

Motorn som positionen ska rapporteras för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

enhet

Enheten att rapportera motorpositionen i: grader eller varv.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Display how far the ArmMotor moves after one second.]
ställ in [ArmMotor v] position till [0] [grader v]
skriv ut [Start: ] ▶
skriv ut ([ArmMotor v] position i [grader v] :: custom-motion) ▶
flytta markör till nästa rad
snurra [ArmMotor v] [upp v]
vänta [1] sekunder
stoppa [ArmMotor v]
skriv ut [After: ] ▶
skriv ut ([ArmMotor v] position i [grader v] :: custom-motion) ▶

motorhastighet#

Blocket motorhastighet rapporterar hur snabbt motorn snurrar, som en procentandel från -100 % till 100 %.

Ett positivt värde betyder att motorn roterar framåt. Ett negativt värde betyder att motorn roterar bakåt.

([ArmMotor v] hastighet i %)

Parametrar

Beskrivning

motor

Motorn som hastigheten ska rapporteras för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Display the ArmMotor's velocity when it moves.]
skriv ut [Resting: ] ▶
skriv ut ([ArmMotor v] hastighet i %) ▶
flytta markör till nästa rad
snurra [ArmMotor v] [upp v]
vänta [1] sekunder
skriv ut [Moving: ] ▶
skriv ut ([ArmMotor v] hastighet i %) ▶
stoppa [ArmMotor v]

motorström#

Blocket motorström rapporterar hur mycket ström motorn använder från batteriet, i procent från 0 % till 100 %.

Ett högre strömvärde innebär att motorn använder mer ström. Detta kan hända när motorn lyfter något tungt, trycker mot ett föremål eller försöker röra sig när den har fastnat.

([ArmMotor v] ström i %)

Parametrar

Beskrivning

motor

Motorn som strömmen ska rapporteras för. Välj bland de motorer som är konfigurerade i fönstret Enheter.

Exempel

när startad :: hat events
[Build Used: Competition Advanced 2.0]
[Display the motor's current when it moves.]
skriv ut [Resting: ] ▶
skriv ut ([ArmMotor v] ström i %) ▶
flytta markör till nästa rad
snurra [ArmMotor v] [upp v]
vänta [1] sekunder
skriv ut [Moving: ] ▶
skriv ut ([ArmMotor v] ström i %) ▶
stoppa [ArmMotor v]