Robot Specific Blocks#
All standard VEXcode VR Blocks are available for use in the VIQRC Virtual Skills - Rapid Relay Playground.
Motion#
This Playground’s Blocks will have access to the Intake Motor and Catapult Group parameters for all Motion blocks.
When selecting a direction for Motion blocks, intake will spin the Intake Motor forward and outtake spins the Intake Motor in reverse.
For the Catapult Group, lower will spin the Catapult Group forward and release spins the Catapult Group in reverse.
Spin#
The Spin block is used to spin a motor indefinitely.
This is a non-waiting block and allows any subsequent blocks to execute without delay.
Select which motor to use.
Select which direction for the motor to move in.
The Intake Motor can spin in the intake or outtake directions.
The Catapult Group can spin in the lower or release directions.
In this example, the Catapult will launch the preloaded Ball before lowering the Catapult to get ready for a new Ball.
Spin for#
The Spin for block is used to spin a motor for a given distance.
This is can be a non-waiting or waiting block depending on if the and don’t wait option is used.
Select which motor to use.
Select which direction for the motor to move in.
The Intake Motor can spin in the intake or outtake directions.
The Catapult Group can spin in the lower or release directions.
Set how far the motor will spin by entering a value, and choosing the unit of measurement (degrees or turns).
By default, the Spin for block will block any subsequent blocks from executing until it’s finished. By expanding the Spin for block to show and don’t wait, blocks will continue to execute while the motor is moving.
In this example, the Catapult will launch the preloaded Ball before lowering the Catapult to get ready for a new Ball.
Spin to position#
The Spin to position block is used to spin a motor to a set position.
This is can be a non-waiting or waiting block depending on if the and don’t wait option is used.
Select which motor to use.
Set how far the motor will spin by entering a value, and choosing the unit of measurement (degrees or turns).
By default, the Spin to position block will block any subsequent blocks from executing until it’s finished. By expanding the Spin to position block to show and don’t wait, blocks will continue to execute while the motor is moving.
In this example, the Catapult will launch the preloaded Ball before lowering the Catapult to get ready for a new Ball.
Stop Motor#
The Stop Motor block is used to stop the motor from moving.
This is a non-waiting block and allows any subsequent blocks to execute without delay.
Select which motor to use.
In this example, the Intake Motor will spin for 1 second to pick up a Ball before stopping.
Set Motor position#
The Set Motor position block is used to set a motor’s encoder position(s) to the entered value.
This is a non-waiting block and allows any subsequent blocks to execute without delay.
Select which motor to use.
Set the unit of measurement to use, degrees or turns.
In this example, the lowered Catapult Arm is set as the new 0 degrees position.
Set Motor velocity#
The Set Motor velocity block is used to set the speed of a motor.
This is a non-waiting block and allows any subsequent blocks to execute without delay.
Select which motor to use.
The Set Motor velocity block will accept a range of -100% to 100%.
In this example, the Intake Motor’s velocity is set to 100% before the Intake Motor starts spinning to pick up Balls.
Set Motor timeout#
The Set Motor timeout block is used to set a time limit for Motor movement blocks.
This prevents motion blocks that do not reach their intended position from preventing subsequent blocks from running.
This is a non-waiting command and allows any subsequent commands to execute without delay.
Select which motor to use.
In this example, the Catapult Group’s timeout is set to 2 seconds before it starts lowering the Catapult Arm.
Sensing#
Swish has access to the standard Timer, Drivetrain, and Distance Sensing Blocks.
Eye Sensing has been renamed to Optical Sensing to match the Rear Optical Sensor.
Swish has access to Motor Sensing Blocks:
Motor is done#
The Motor is done block is used to report if the selected Motor or Motor Group has completed its movement.
Select which Motor or Motor Group to use.
The Motor is done block reports True
when the selected Motor or Motor Group has completed its movement.
The Motor is done block reports False
when the selected Motor or Motor Group has not completed its movement.
The Motor is done block is used in blocks with hexagonal (six-sided) spaces.
Motor is spinning#
The Motor is spinning block is used to report if the selected Motor or Motor Group is moving.
Select which Motor or Motor Group to use.
The Motor is spinning block reports True
when the selected Motor or Motor Group is moving.
The Motor is spinning block reports False
when the selected Motor or Motor Group is not moving.
The Motor is spinning block is used in blocks with hexagonal (six-sided) spaces.
Position of motor#
The Position of motor block is used to report the position of a Motor or the first motor in a Motor Group.
Select which Motor or Motor Group to use.
Select when unit to use, degrees or turns.
The Position of motor block is used in blocks with circular spaces.
In this example, the Catapult Arm will lower until its motor position is greater than 1260 degrees.
Velocity of motor#
The Velocity of motor block is used to report the current velocity of a Motor or the first motor in a Motor Group.
Select which Motor or Motor Group to use.
The Velocity of motor block is used in blocks with circular spaces.