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.

conducir [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 inicie
[Drive forward, then stop.]
conducir [adelante v]
esperar (2) segundos
detener conducción

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.

conducir [adelante v] por (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 inicie
[Drive forward for 500 mm.]
conducir [adelante v] por (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.

girar [derecha v]

Parámetros

Descripción

dirección

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

Ejemplo

cuando inicie
[Turn right, then stop.]
girar [derecha v]
esperar (2) segundos
detener conducción

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) grados ▶

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 inicie
[Turn left, then turn right.]
girar [izquierda v] por (90) grados ▶
girar [derecha v] por (180) grados ▶

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 al 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 inicie
[Turn to face east.]
girar al rumbo (90) grados ▶

ir al objeto#

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

ir a [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 inicie
[Drive to the closest mineral.]
ir a [minerals v] ▶

dejar de conducir#

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

detener conducción

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
[Drive forward, then stop.]
conducir [adelante v]
esperar (4) segundos
detener conducción

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.

establecer velocidad de conducción a (50) [% v]

Parámetros

Descripción

velocidad

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

unidad

Unidad de velocidad: %

Ejemplo

cuando inicie
[Move faster.]
establecer velocidad de conducción a (100) [% v]
conducir [adelante v] por (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 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 inicie
[Turn faster.]
establecer velocidad de giro a (100) [% v]
girar [derecha v] por (90) grados ▶

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 rumbo de conducción a (0) grados

Parámetros

Descripción

título

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

Ejemplo

cuando inicie
[Set the heading, then turn to 0 degrees.]
establecer rumbo de conducción a (90) grados
girar al 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.

establecer tiempo límite de conducción a (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 inicie
[Drive for at most 1 second.]
establecer tiempo límite de conducción a (1) segundos
conducir [adelante v] por (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.

<¿conducción terminada?>

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
[Start turning when the drive is complete.]
conducir [adelante v] por (200) [mm v] ◀ y no esperar
esperar hasta <¿conducción terminada?>
girar [derecha v] por (360) grados ▶

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.

<¿conducción en movimiento?>

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
[Print while the rover is moving.]
conducir [adelante v] por (200) [mm v] ◀ y no esperar
mientras <¿conducción en movimiento?>
imprimir [Still Moving...] ▶
esperar (0.1) segundos
limpiar 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 conducción en grados)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
[Display the heading after turning.]
girar [derecha v] por (90) grados ▶
imprimir (rumbo de conducción en grados) ▶
mover cursor a la siguiente fila

Comportamiento#

Comportamiento#

acción de los minerales#

minerales [levantar 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 inicie
[Drive to the closest mineral and pick it up.]
ir a [minerals v] ▶
minerales [levantar 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.

absorber la radiación

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
[Drive to the closest enemy and absorb radiation.]
ir a [enemy v] ▶
absorber la radiación

apoyar#

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

en espera hasta [50] % de batería

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 inicie
[Wait in standby until battery reaches 35%.]
en espera hasta [35] % de batería
ir a [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.

<ve [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 inicie
por siempre
si <ve [minerals v]?> entonces
ir a [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.

<detecta [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 inicie
por siempre
si <detecta [minerals v]?> entonces
ir a [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.

(minerales almacenados)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
imprimir (minerales almacenados) ▶
mover cursor a la siguiente fila

capacidad de almacenamiento#

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

(capacidad de almacenamiento)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
imprimir (capacidad de almacenamiento) ▶
mover cursor a 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] dirección en grados)

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 inicie
imprimir ([minerals v] dirección en grados) ▶
mover cursor a la siguiente fila

distancia del rover#

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

(distancia de [minerals v] en [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 inicie
imprimir (distancia de [minerals v] en [mm v] :: custom-actions) ▶
mover cursor a 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] ubicación [X v] de cada [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 inicie
imprimir ([base v] ubicación [X v] de cada [mm v]) ▶
mover cursor a la siguiente fila
imprimir ([base v] ubicación [Y v] de cada [mm v]) ▶
mover cursor a 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.

<¿bajo ataque?>

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
por siempre
si <¿bajo ataque?> entonces
conducir [marcha atrás v] por [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.

(nivel enemigo)

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 inicie
por siempre
si <(nivel enemigo) [math_equal v] [1]> entonces
ir a [enemy v] ▶
si no
conducir [marcha atrás v] por [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.

(radiación enemiga)

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 inicie
imprimir (radiación enemiga) ▶
mover cursor a 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.

(nivel de batería en % :: custom-actions)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
imprimir (nivel de batería en % :: custom-actions) ▶
mover cursor a la siguiente fila

nivel#

El bloque nivel devuelve el nivel actual del VR Rover.

(nivel)

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
imprimir (nivel) ▶
mover cursor a 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 inicie
imprimir (XP) ▶
mover cursor a 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.

Cuando está bajo ataque

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

Cuando está bajo ataque
absorber la radiación

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.

al subir de nivel

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

al subir de nivel
imprimir [The VR Rover has leveled up!] ▶
mover cursor a 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] encontró un objeto?>

Parámetros

Descripción

sensor de distancia

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

Ejemplo

cuando inicie
[Turn until the Distance Sensor detects an object.]
girar [derecha v]
esperar hasta <¿[distance v] encontró un objeto?>
detener conducción

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 inicie
[Wait until the Distance Sensor detects an object, then print the distance.]
girar [derecha v]
esperar hasta <¿[distance v] encontró un objeto?>
detener conducción
imprimir ([distance v] in [mm v]) ▶