Bloques específicos para robots#

Introducción#

El robot VR Rover incluye un sistema de transmisión, un sensor de distancia y acciones exclusivas del Rover Rescue Playground.

Todos los bloques VR VEXcode estándar están disponibles para su uso en el área de juegos Rover Rescue.

A continuación se muestra una lista de todos los bloques específicos para robots disponibles:

Sistema de transmisión: Mueve y gira el VR Rover.

Acciones: Interactúa con los recursos, los enemigos y los sistemas de IA integrados del vehículo explorador.

Detección: Detecta objetos cercanos con el sensor de distancia del rover.

Los ejemplos de esta página utilizan la posición de inicio predeterminada del Playground.

Tren de transmisión#

El sistema de transmisión controla cómo se desplaza y gira el VR Rover. Este sistema puede avanzar o retroceder, girar a la izquierda o a la derecha, orientarse y comunicar su rumbo.

Comportamiento#

conducir#

El bloque de accionamiento mueve el robot hacia adelante o hacia atrás indefinidamente. El robot seguirá moviéndose hasta que se le indique otra acción, como girar o detenerse.

unidad [adelante v]

Parámetros

Descripción

dirección

La dirección en la que se mueve el robot: hacia adelante o hacia atrás.

Ejemplo

cuando empezó
[Drive forward, then stop.]
unidad [adelante v]
esperar (2) segundos
deja de conducir

impulso para#

El bloque de la pila drive for mueve el robot hacia adelante o hacia atrás una distancia específica. El proyecto esperará a que el robot termine de moverse antes de ejecutar el siguiente bloque de la pila.

unidad [adelante v] para (200) [mm v] ▶

Parámetros

Descripción

dirección

La dirección en la que se mueve el robot: hacia adelante o hacia atrás.

distancia

La distancia que recorre el robot. Puede ser un número entero o decimal.

unidad

La unidad de distancia: mm (milímetros) o pulgadas.

y no esperes

Seleccione la flecha ( ▶ ) para expandir el bloque y decir y no espere, de modo que el siguiente bloque en la pila se ejecutará inmediatamente.

Ejemplo

cuando empezó
[Drive forward for 500 mm.]
unidad [adelante v] para (500) [mm v] ▶

doblar#

El bloque de pila girar hace girar al robot hacia la izquierda o hacia la derecha indefinidamente. El robot seguirá girando hasta que se le asigne otra acción, como conducir o detenerse.

turno [derecha v]

Parámetros

Descripción

dirección

La dirección en la que gira el robot: izquierda o derecha.

Ejemplo

cuando empezó
[Turn right, then stop.]
turno [derecha v]
esperar (2) segundos
deja de conducir

girar para#

El bloque turn for hace girar el robot hacia la izquierda o hacia la derecha un número específico de grados. El giro es relativo a la posición actual del robot. El programa esperará a que el robot termine de girar antes de ejecutar el siguiente bloque.

girar [derecha v] por (90) grado ▶

Parámetros

Descripción

dirección

La dirección en la que gira el robot: izquierda o derecha.

ángulo

El número de grados que gira el robot. Puede ser un número entero o decimal.

y no esperes

Seleccione la flecha ( ▶ ) para expandir el bloque y decir y no espere, de modo que el siguiente bloque en la pila se ejecutará inmediatamente.

Ejemplo

cuando empezó
[Turn left, then turn right.]
girar [izquierda v] por (90) grado ▶
girar [derecha v] por (180) grado ▶

girar hacia el encabezamiento#

El rumbo es la dirección hacia la que apunta el robot, medida en grados. El bloque girar a rumbo hace que el robot gire para apuntar a un rumbo específico, desde -359 hasta 359 grados. El robot girará en la dirección más corta para alcanzar el rumbo deseado.

El rumbo inicial es de 0 grados.

El proyecto esperará a que el robot termine de girar antes de ejecutar el siguiente bloque de la pila.

girar hacia el rumbo (90) grados ▶

Parámetros

Descripción

título

La dirección hacia la que debe apuntar el robot, desde -359 hasta 359 grados.

y no esperes

Seleccione la flecha ( ▶ ) para expandir el bloque y decir y no espere, de modo que el siguiente bloque en la pila se ejecutará inmediatamente.

Ejemplo

cuando empezó
[Turn to face east.]
girar hacia el rumbo (90) grados ▶

ir al objeto#

El bloque de pila ir a objeto gira y dirige el VR Rover hacia el objeto seleccionado.

go to [minerals v] ▶

Parámetros

Descripción

objeto

¿A qué objeto irá el VR Rover?:

  • minerales
  • enemigo
  • base

y no esperes

Seleccione la flecha ( ▶ ) para expandir el bloque y decir y no espere, de modo que el siguiente bloque en la pila se ejecutará inmediatamente.

Si el VR Rover detecta varios minerales o varios enemigos, se moverá a la opción más cercana.

Si no se detectan minerales o un enemigo dentro del alcance visual del rover cuando el bloque se ejecuta, el robot no avanzará. La base siempre puede ser atacada.

Ejemplo

cuando empezó
[Drive to the closest mineral.]
go to [minerals v] ▶

dejar de conducir#

El bloque de apilamiento detener conducción detiene el movimiento del robot.

deja de conducir

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
[Drive forward, then stop.]
unidad [adelante v]
wait (4) seconds
deja de conducir

Ajustes#

establecer la velocidad de accionamiento#

El bloque establecer velocidad de conducción indica al robot a qué velocidad debe conducir. Un porcentaje mayor hace que el robot conduzca más rápido y un porcentaje menor hace que conduzca más despacio.

Todos los proyectos comienzan con el robot conduciendo al 50% de su velocidad por defecto.

Nota: Una mayor velocidad hace que el robot se desplace más rápido, pero puede ser menos preciso. Una menor velocidad hace que el robot se desplace más despacio, pero puede ser más preciso.

Establezca la velocidad de la unidad en (50) [% v]

Parámetros

Descripción

velocidad

La velocidad de conducción varía del 0% al 100%.

unidad

Unidad de velocidad: %

Ejemplo

cuando empezó
[Move faster.]
Establezca la velocidad de la unidad en (100) [% v]
unidad [adelante v] para (100) [mm v] ▶

establecer la velocidad de giro#

El bloque de pila establecer velocidad de giro indica al robot la velocidad a la que debe girar. Un porcentaje mayor hace que el robot gire más rápido y un porcentaje menor hace que gire más lento.

Todos los proyectos comienzan con el robot girando al 50% de su velocidad por defecto.

Nota: Una mayor velocidad hace que el robot gire más rápido, pero puede ser menos preciso. Una menor velocidad hace que el robot gire más despacio, pero puede ser más preciso.

establecer la velocidad de giro a (50) [% v]

Parámetros

Descripción

velocidad

La velocidad de giro varía del 0% al 100%.

unidad

Unidad de velocidad: %

Ejemplo

cuando empezó
[Turn faster.]
establecer la velocidad de giro a (100) [% v]
girar [derecha v] por (90) grado ▶

establecer dirección de conducción#

El rumbo es la dirección hacia la que apunta el robot, medida en grados. El bloque de pila establecer rumbo de conducción cambia el rumbo actual del robot a un nuevo valor.

Por ejemplo, si el robot ha girado para mirar hacia la derecha, al establecer la orientación a 0 grados, esa posición mirando hacia la derecha se convierte en la nueva posición de 0 grados. Entonces, el robot puede girar a otras posiciones en función de esa nueva orientación.

establecer el rumbo de la unidad a (0) grados

Parámetros

Descripción

título

El valor de rumbo, en grados, que se debe establecer para el robot.

Ejemplo

cuando empezó
[Set the heading, then turn to 0 degrees.]
establecer el rumbo de la unidad a (90) grados
girar hacia el rumbo (0) grados ▶

establecer tiempo de espera de la unidad#

El bloque set drive timeout de la pila establece cuántos segundos intentará el robot completar un movimiento. Si el robot no puede terminar en ese tiempo, dejará de intentarlo y pasará al siguiente bloque de la pila. Esto evita que el robot se quede atascado en un movimiento.

Establezca el tiempo de espera de la unidad en (1) segundos

Parámetros

Descripción

tiempo

El número de segundos que el robot puede intentar para completar un movimiento. Puede ser un número entero o decimal.

Ejemplo

cuando empezó
[Drive for at most 1 second.]
Establezca el tiempo de espera de la unidad en (1) segundos
unidad [adelante v] para (25) [pulgadas v] ▶

Valores#

El viaje ha terminado.#

El bloque booleano drive is done indica si el robot ha terminado de moverse. Esto permite controlar la sincronización de otras acciones en función del movimiento del robot.

  • Verdadero - El robot ha terminado de moverse.

  • Falso - El robot sigue en movimiento.

Este bloque funciona junto con los bloques de transmisión que tienen el parámetro y no esperar.

<¿La unidad está lista?>

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
[Start turning when the drive is complete.]
unidad [adelante v] para (200) [mm v] ◀ y no esperes
esperar hasta <¿La unidad está lista?>
girar [derecha v] por (360) grado ▶

El impulso se está moviendo#

El bloque booleano drive is moving indica si el robot se está moviendo. Esto permite controlar la sincronización de otras acciones en función del movimiento del robot.

  • Verdadero - El robot se está moviendo.

  • Falso - El robot no se está moviendo.

Este bloque funciona junto con los bloques de transmisión que tienen el parámetro y no esperar.

<¿La unidad se está moviendo?>

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
[Print while the rover is moving.]
unidad [adelante v] para (200) [mm v] ◀ y no esperes
mientras <¿La unidad se está moviendo?>
imprimir [Still Moving...] ▶
esperar (0.1) segundos
borrar todas las filas
fin
imprimir [Done!] ▶

dirección de conducción#

El rumbo es la dirección hacia la que apunta el robot, medida en grados. El bloque de informe rumbo de conducción informa ese rumbo desde 0 hasta 359,99 grados.

La dirección inicial del robot es de 0 grados.

(rumbo de la unidad en grados)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
[Display the heading after turning.]
girar [derecha v] por (90) grado ▶
imprimir (rumbo de la unidad en grados) ▶
colocar el cursor en la siguiente fila

Comportamiento#

Comportamiento#

acción de los minerales#

minerals [pick up v]

Parámetros

Descripción

acción

Qué hacer con los minerales:

  • recoger - Coloca los minerales en el almacenamiento del VR Rover.
  • soltar - Suelta los minerales transportados.
  • usar - Consume los minerales del suelo para restaurar energía.

Al recoger minerales, estos se almacenan en el VR Rover hasta que se sueltan o se utilizan.

El uso de minerales repone parte de la energía del VR Rover. Los minerales solo se pueden usar si están en el suelo.

El VR Rover gana puntos de experiencia (XP) al usar minerales o al dejarlos caer en la base.

Ejemplo

cuando empezó
[Drive to the closest mineral and pick it up.]
go to [minerals v] ▶
minerals [pick up v]

absorber la radiación enemiga#

El bloque absorber radiación enemiga absorbe la radiación de un enemigo en el área de juegos Rover Rescue.

absorb radiation

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
[Drive to the closest enemy and absorb radiation.]
go to [enemy v] ▶
absorb radiation

apoyar#

El bloque en espera pone el VR Rover en modo de espera hasta que se alcance el umbral de batería especificado.

standby until [50] % battery

Parámetros

Descripción

por ciento

El umbral de batería que provoca que el VR Rover salga del modo de espera, de 0 a 100.

Mientras está en modo de espera, el VR Rover consume su batería más lentamente, pero el contador de Número de días superados aumenta a un ritmo mayor.

Cuando la batería alcanza el umbral seleccionado, el VR Rover sale del modo de espera y vuelve al uso normal de la batería y al transcurso del día.

Si el umbral seleccionado es igual o superior al nivel actual de la batería, el VR Rover no entrará en modo de espera.

Ejemplo

cuando empezó
[Wait in standby until battery reaches 35%.]
standby until [35] % battery
go to [minerals v] ▶

Valores#

El rover ve#

El bloque rover ve devuelve un valor booleano que indica si el VR Rover ve el objeto seleccionado utilizando su tecnología de IA integrada.

  • Verdadero: El objeto seleccionado se encuentra a menos de 1000 milímetros del VR Rover y dentro de su campo de visión.

  • Falso: El objeto seleccionado está a más de 1000 milímetros de distancia y/o fuera del campo de visión.

<sees [minerals v]?>

Parámetros

Descripción

objeto

¿Qué objeto comprobar?:

  • minerales
  • enemigo
  • base
  • obstáculos
  • peligros

El campo de visión del VR Rover es de 40 grados, que se muestra en el minimapa como un cono gris translúcido que se extiende desde la parte frontal del rover.

Ejemplo

cuando empezó
para siempre
if <sees [minerals v]?> then
go to [minerals v] ▶
fin
fin

El rover detecta#

El bloque el rover detecta devuelve un valor booleano que indica si el VR Rover detecta minerales o enemigos utilizando su tecnología de IA integrada.

  • Verdadero: El objeto seleccionado se encuentra dentro del radio de detección del rover.

  • Falso: El objeto seleccionado no se encuentra dentro del radio de detección del rover.

<detects [minerals v]?>

Parámetros

Descripción

objeto

¿Qué objeto detectar?:

  • minerales
  • enemigo

El radio de detección del VR Rover es de 800 milímetros, representado en el minimapa por un círculo amarillo alrededor del rover.

Ejemplo

cuando empezó
para siempre
if <detects [minerals v]?> then
go to [minerals v] ▶
fin
fin

minerales en almacenamiento#

El bloque minerales en almacenamiento devuelve la cantidad actual de minerales que el VR Rover tiene en su almacenamiento.

(minerals in storage)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
print (minerals in storage) ▶
colocar el cursor en la siguiente fila

capacidad de almacenamiento#

El bloque capacidad de almacenamiento devuelve la capacidad de almacenamiento del VR Rover.

(storage capacity)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
print (storage capacity) ▶
colocar el cursor en la siguiente fila

dirección del rover#

El bloque dirección del rover devuelve la dirección desde el VR Rover hasta el objeto seleccionado en grados.

([minerals v] direction in degrees)

Parámetros

Descripción

objeto

¿Qué objeto indica la dirección?:

  • minerales
  • enemigo
  • base

En el caso de minerales y enemigos, este bloque solo informa valores cuando el objeto seleccionado se encuentra a menos de 1000 milímetros y dentro del campo de visión de 40 grados del rover.

Si se selecciona base, se informa la dirección incluso cuando la base no está en el campo de visión. Para la base, este bloque informa un valor de -180 a 180 grados.

Ejemplo

cuando empezó
print ([minerals v] direction in degrees) ▶
colocar el cursor en la siguiente fila

distancia del rover#

El bloque distancia del rover devuelve la distancia desde el VR Rover hasta el objeto seleccionado.

([minerals v] distance in [mm v] :: custom-actions)

Parámetros

Descripción

objeto

¿A qué objeto se le debe informar la distancia?:

  • minerales
  • enemigo
  • obstáculos
  • peligros
  • base

unidad

La unidad utilizada para informar la distancia: mm o pulgadas

En el caso de minerales y enemigos, este bloque solo informa valores cuando el objeto seleccionado se encuentra a menos de 1000 milímetros y dentro del campo de visión de 40 grados del rover.

Si se selecciona base, la distancia se informa incluso cuando la base no está en el campo de visión.

Ejemplo

cuando empezó
print ([minerals v] distance in [mm v] :: custom-actions) ▶
colocar el cursor en la siguiente fila

ubicación del rover#

El bloque ubicación del rover devuelve la coordenada X o Y del objeto seleccionado utilizando la tecnología de IA integrada del rover.

([minerals v] location [X v] in [mm v])

Parámetros

Descripción

objeto

¿Qué objeto se debe reportar? Ubicación:

  • minerales
  • enemigo
  • obstáculos
  • peligros
  • base

eje

¿Qué coordenada devolver?:

  • X
  • Y

unidad

La unidad utilizada para informar la coordenada: mm o pulgadas

En el caso de minerales y enemigos, este bloque solo informa valores cuando el objeto seleccionado se encuentra a menos de 1000 milímetros y dentro del campo de visión de 40 grados del rover.

Si se selecciona base, se informará de la ubicación incluso cuando la base no esté en el campo de visión.

Ejemplo

cuando empezó
print ([base v] location [X v] in [mm v]) ▶
colocar el cursor en la siguiente fila
print ([base v] location [Y v] in [mm v]) ▶
colocar el cursor en la siguiente fila

bajo ataque#

El bloque bajo ataque devuelve un valor booleano que indica si el VR Rover está siendo atacado por un enemigo.

  • Cierto: el VR Rover está siendo atacado.

  • Falso: el VR Rover no está siendo atacado.

<under attack?>

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
para siempre
if <under attack?> then
drive [reverse v] for [500] [mm v] ▶
fin
fin

nivel de enemigo#

El bloque Nivel del enemigo devuelve el nivel del enemigo más cercano detectado por el VR Rover.

(enemy level)

Parámetros

Descripción

Este bloque no tiene parámetros.

When no enemies are detected in the VR Rover’s detect radius, this block returns 0.

Ejemplo

cuando empezó
para siempre
if <(enemy level) [math_equal v] [1]> then
go to [enemy v] ▶
demás
drive [reverse v] for [500] [mm v] ▶
fin
fin

radiación enemiga#

El bloque radiación enemiga devuelve la radiación del enemigo más cercano detectado por el VR Rover.

(enemy radiation)

Parámetros

Descripción

Este bloque no tiene parámetros.

When no enemies are detected in the VR Rover’s detect radius, this block returns 0.

Ejemplo

cuando empezó
print (enemy radiation) ▶
colocar el cursor en la siguiente fila

nivel de batería#

El bloque nivel de batería devuelve el nivel actual de batería del VR Rover como un porcentaje.

(battery level in % :: custom-actions)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
print (battery level in % :: custom-actions) ▶
colocar el cursor en la siguiente fila

nivel#

El bloque nivel devuelve el nivel actual del VR Rover.

(level)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
print (level) ▶
colocar el cursor en la siguiente fila

XP#

El bloque XP devuelve la cantidad actual de Puntos de Experiencia que tiene el VR Rover.

(XP)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando empezó
print (XP) ▶
colocar el cursor en la siguiente fila

cuando está bajo ataque#

El bloque cuando está bajo ataque ejecuta su pila adjunta cada vez que el VR Rover es atacado por un enemigo.

when under attack

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

when under attack
absorb radiation

cuando subas de nivel#

El bloque cuando sube de nivel ejecuta su pila adjunta cada vez que el VR Rover se mueve de un nivel al siguiente.

when level up

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

when level up
print [The VR Rover has leveled up!] ▶
colocar el cursor en la siguiente fila

Detección#

Distancia#

Distancia encontrada un objeto#

El bloque Distancia encontrada un objeto devuelve un valor booleano que indica si el sensor de distancia ha detectado un objeto a menos de 2000 mm.

  • Verdadero: el sensor de distancia ha detectado un objeto.

  • Falso: el sensor de distancia no ha detectado ningún objeto.

<[distance v] found an object?>

Parámetros

Descripción

sensor de distancia

Which Distance Sensor to use. In this Playground, the available sensor is distance.

Ejemplo

cuando empezó
[Turn until the Distance Sensor detects an object.]
turno [derecha v]
wait until <[distance v] found an object?>
deja de conducir

distancia del objeto#

El bloque distancia del objeto devuelve la distancia del objeto más cercano al sensor de distancia.

([distance v] in [mm v])

Parámetros

Descripción

sensor de distancia

Which Distance Sensor to use. In this Playground, the available sensor is distance.

unidad

Unidad de distancia: mm o pulgadas

Ejemplo

cuando empezó
[Wait until the Distance Sensor detects an object, then print the distance.]
turno [derecha v]
wait until <[distance v] found an object?>
deja de conducir
print ([distance v] in [mm v]) ▶