Bloques específicos del robot#
Introducción#
The VIQRC 25-26 Mix & Match Playground features blocks exclusive to the build designed for this Playground, including two motor options, IQ AI Vision Sensor, Optical Sensor, and Touch LED.
Todos los bloques VEXcode VR estándar están disponibles para su uso en el patio de juegos VIQRC 25-26 Mix & Match.
A continuación se muestra una lista de todos los bloques específicos de Playground disponibles:
Movimiento: mueve y rastrea los motores del robot.
Comportamiento
spin – Hace girar el motor o el grupo de motores seleccionado indefinidamente.
girar por – Hace girar un motor o grupo durante una distancia específica en grados o vueltas.
girar a posición – Gira un motor o un grupo de motores a una posición establecida.
detener motor – Detiene el giro de un motor o un grupo de motores específico.
Ajustes
establecer velocidad del motor – Establece la velocidad de un motor o grupo de motores como un porcentaje.
establecer tiempo de espera del motor – Limita el tiempo que un bloque de motor espera antes de darse por vencido si se bloquea el movimiento.
Posición
posición del motor – Devuelve la posición de rotación actual del motor en grados o vueltas.
establecer posición del motor – Establece el valor del codificador de un motor o grupo de motores.
Valores
¿El motor está listo? – Devuelve un valor booleano que indica si el motor ya no está girando.
¿El motor está girando? – Devuelve un valor booleano que indica si el motor está girando actualmente.
velocidad del motor – Devuelve la velocidad actual del motor en %.
AI Vision – Capture and analyze objects using the IQ AI Vision Sensor.
Comportamiento
get object data – Captures data for a specific object type, such as colors, pre-trained objects, or AprilTags.
Ajustes
set object item – Selects a specific object from the list.
Valores
object exists? – Returns whether any classification was detected.
object count – Returns how many objects were detected.
object property – Returns details such as:
AI Classification is – Returns if a specific classification is detected.
Detección: utilice los distintos sensores del robot.
Óptico
¿Objeto óptico encontrado? – Devuelve si se detectó un objeto.
¿Ópticamente detecta color? – Devuelve si se detecta un color específico.
Brillo óptico – Devuelve el porcentaje de brillo detectado por el sensor.
Tono óptico – Devuelve el valor de tono del color detectado.
cuando es óptico – Ejecuta la pila de bloques adjunta cuando el sensor óptico detecta o pierde un objeto.
LED táctil
Establecer color TouchLED – Establece el TouchLED en un color seleccionado.
Movimiento#
Actions#
girar#
El bloque spin hace girar un motor o un grupo de motores seleccionado en una dirección específica utilizando la velocidad actual del motor.
girar [ClawMotor v] [abierto v]
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores a girar:
|
dirección |
La dirección para girar:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
girar para#
El bloque girar para hace girar un motor o un grupo de motores seleccionado durante una cantidad específica de rotación usando la velocidad actual del motor, medida en grados o vueltas.
girar [ClawMotor v] [abierto v] por (90) [grados v] ▶
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores a girar:
|
dirección |
La dirección para girar:
|
distancia |
La cantidad de rotación, como número entero o decimal. |
unidad |
The unit of measurement representing the distance:
|
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el motor terminará de moverse antes de ejecutar el siguiente bloque. Para que el motor comience a moverse e inmediatamente ejecute el siguiente bloque, expanda el bloque para indicar y no espere. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
girar a la posición#
El bloque girar a posición hace girar un motor o un grupo de motores a una posición absoluta específica utilizando la velocidad del motor y la posición del motor actuales.
girar [ClawMotor v] a la posición (90) [grados v] ▶
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores a girar:
|
posición |
La posición de destino a la que se debe girar el motor o el grupo de motores. |
unidad |
The unit of measurement:
|
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el motor terminará de moverse antes de ejecutar el siguiente bloque. Para que el motor comience a moverse e inmediatamente ejecute el siguiente bloque, expanda el bloque para indicar y no espere. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] a la posición [-2] [giros v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
detener el motor#
El bloque detener motor detiene inmediatamente el motor o el grupo de motores seleccionado.
parada [ClawMotor v]
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores a detener:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v]
esperar [2] segundos
parada [LiftMotor v]
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
Settings#
establecer la velocidad del motor#
El bloque establecer velocidad del motor establece la velocidad de giro predeterminada de un motor o grupo de motores como un porcentaje para todos los bloques de motor posteriores en el proyecto.
Establezca la velocidad [ClawMotor v] en (50) [% v]
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para establecer la velocidad de:
|
velocidad |
Establece la velocidad de movimiento predeterminada de 0 a 100 como porcentaje. |
unidad |
La unidad que representa la velocidad:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
Establezca la velocidad [LiftMotor v] en [100] [% v]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
establecer el tiempo de espera del motor#
El bloque establecer tiempo de espera del motor establece un límite de tiempo que un bloque de motor esperará para alcanzar su objetivo. Si el robot no puede completar el movimiento dentro del tiempo establecido, se detendrá automáticamente y continuará con el siguiente bloque.
Nota: El límite de tiempo del motor se utiliza para evitar que los bloques del motor que no alcanzan su posición objetivo detengan la ejecución de otros bloques en la pila.
Establezca el tiempo de espera [ClawMotor v] en (1) segundo
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para configurar el tiempo de espera:
|
tiempo |
La cantidad máxima de segundos que un bloque de motor funcionará antes de detenerse y pasar al siguiente bloque. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
Establezca el tiempo de espera [LiftMotor v] en [2] segundo
girar [LiftMotor v] [arriba v] por [5] [giros v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
Position#
posición del motor#
El bloque posición del motor devuelve la distancia total que ha girado el motor o el grupo de motores seleccionado.
([ClawMotor v] posición en [grados v])
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para devolver la posición de:
|
unidad |
The unit of measurement:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v]
esperar hasta <[-600] [math_greater_than v] ([LiftMotor v] posición en [grados v])>
parada [LiftMotor v]
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
establecer la posición del motor#
El bloque establecer posición del motor establece un valor de posición específico para un motor o grupo de motores, que actualiza la lectura del codificador.
Establezca la posición [ClawMotor v] en (0) [grados v]
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para establecer la posición de:
|
posición |
El valor de posición del codificador a establecer. |
unidad |
The unit of measurement:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
Establezca la posición [LiftMotor v] a [100] grado
girar [LiftMotor v] a la posición [-500] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
Values#
El motor está listo#
El bloque ¿El motor está listo? devuelve un valor booleano que indica si el motor o el grupo de motores no está girando.
Verdadero – El motor no gira.
Falso – El motor está girando.
<[ClawMotor v] ¿está hecho?>
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para comprobar si ha terminado de girar:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ◀ y no esperes
esperar [0.1] segundos
repetir hasta <[LiftMotor v] ¿está hecho?>
establecer el color [TouchLED v] en [rojo v]
esperar [0.5] segundos
establecer el color [TouchLED v] en [rojo v]
esperar [0.5] segundos
fin
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
¿El motor está girando?#
El bloque ¿el motor está girando? devuelve un valor booleano que indica si el motor está girando.
Verdadero – El motor está girando.
Falso – El motor no gira.
<[ClawMotor v] esta girando?>
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para comprobar si está girando actualmente:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ◀ y no esperes
esperar [0.1] segundos
mientras <[LiftMotor v] esta girando?>
establecer el color [TouchLED v] en [rojo v]
esperar [0.5] segundos
establecer el color [TouchLED v] en [rojo v]
esperar [0.5] segundos
fin
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
velocidad del motor#
El bloque velocidad del motor devuelve la velocidad de rotación actual del motor o grupo de motores en un rango de -100% a 100%.
([ClawMotor v] velocidad en [% v] :: custom-motion)
Parámetros |
Descripción |
|---|---|
motor |
El motor o grupo de motores para devolver la velocidad de:
|
unidad |
La unidad que representa la velocidad:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
Establezca la velocidad [LiftMotor v] en [100] [% v]
girar [LiftMotor v] [arriba v] por [600] [grados v] ◀ y no esperes
esperar [0.5] segundos
imprimir ([LiftMotor v] velocidad en [% v] :: custom-motion) ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
AI Vision#
Actions#
get object data#
The get object data block filters data from the IQ AI Vision Sensor frame. The IQ AI Vision Sensor can detect Game Elements on the field.
The dataset stores objects ordered from largest to smallest by width, starting at index 0. Each object’s properties can be accessed using AI Vision object property block. An empty dataset is returned if no matching objects are detected.
obtener [AI Classifications v] datos de [AIVision v]
Parameter |
Descripción |
|---|---|
signature |
Filters the dataset to only include data of the given signature. The only available signature is:
|
Ejemplo
cuando empezó
[Place the Red Pin on the top left Blue Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
girar [izquierda v] por [38] grado ▶
repetir hasta <([AIVision v] objeto [amplitud v]) [math_greater_than v] [48]>
[Move forward until the robot is close to the Pin.]
obtener [AI Classifications v] datos de [AIVision v]
unidad [adelante v]
fin
unidad [adelante v] para [160] [mm v] ▶
girar [ClawMotor v] [abierto v]
Settings#
set object item#
The set object item block sets which item in the dataset to use.
Establecer el elemento de objeto [AIVision v] en [1]
Parámetros |
Descripción |
|---|---|
item |
The number of the item in the dataset to use. |
Ejemplo
cuando empezó
[Find the object index of the nearest Orange Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
establecer de [object_counter v] a [1]
obtener [AI Classifications v] datos de [AIVision v]
[Iterate through all detected objects.]
repetir ([AIVision v] recuento de objetos)
Establecer el elemento de objeto [AIVision v] en (object_counter)
si <[AIVision v] object is [Orange Pin v] ?> entonces
imprimir (unirse [Nearest Orange Pin is ] (object_counter)) ▶
demás
cambiar [object_counter v] por [1]
Values#
object exists?#
The object exists? block returns a Boolean indicating whether any object is detected in the dataset.
True – The dataset includes a detected object.
False – The dataset does not include any detected objects.
<¿Existe el objeto AI Vision?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Raise the Lift until a Pin or Beam is detected.]
repetir hasta <¿Existe [AIVision v] objeto?>
obtener [AI Classifications v] datos de [AIVision v]
girar [LiftMotor v] [arriba v]
fin
parada [LiftMotor v]
object count#
The object count block returns the number of detected objects in the dataset as an integer.
([AIVision v] recuento de objetos)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Find the object index of the nearest Orange Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
establecer de [object_counter v] a [1]
obtener [AI Classifications v] datos de [AIVision v]
[Iterate through all detected objects.]
repetir ([AIVision v] recuento de objetos)
Establecer el elemento de objeto [AIVision v] en (object_counter)
si <[AIVision v] object is [Orange Pin v] ?> entonces
imprimir (unirse [Nearest Orange Pin is ] (object_counter)) ▶
demás
cambiar [object_counter v] por [1]
object property#
There are six properties that are included with each object (shown below) stored after the get object data block is used.
([AIVision v] objeto [amplitud v])
Some property values are based off of the detected object’s position in the IQ AI Vision Sensor’s view at the time that the get object data block was used. The IQ AI Vision Sensor has a resolution of 320 by 240 pixels.
Parameter |
Descripción |
|---|---|
property |
Which property of the detected object to use: |
width#
width returns the width of the detected object in pixels as an integer from 1 to 320.
([AIVision v] objeto [amplitud v])
Ejemplo
cuando empezó
[Place the Red Pin on the top left Blue Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
girar [izquierda v] por [38] grado ▶
repetir hasta <([AIVision v] objeto [amplitud v]) [math_greater_than v] [48]>
[Move forward until the robot is close to the Pin.]
obtener [AI Classifications v] datos de [AIVision v]
unidad [adelante v]
fin
unidad [adelante v] para [160] [mm v] ▶
girar [ClawMotor v] [abierto v]
height#
height returns the height of the detected object in pixels as an integer from 1 to 240.
([AIVision v] objeto [altura v])
Ejemplo
cuando empezó
[Place the Red Pin on the top left Blue Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
girar [izquierda v] por [38] grado ▶
repetir hasta <([AIVision v] objeto [altura v]) [math_greater_than v] [68]>
[Move forward until the robot is close to the Pin.]
obtener [AI Classifications v] datos de [AIVision v]
unidad [adelante v]
fin
unidad [adelante v] para [160] [mm v] ▶
girar [ClawMotor v] [abierto v]
centerX#
centerX returns the x-coordinate of the center of the detected object in pixels as an integer from 0 to 320.
([AIVision v] objeto [centroX v])
Ejemplo
cuando empezó
[Place the Red Pin on the bottom left Blue Pin.]
unidad [adelante v] para [50] [mm v] ▶
girar [LiftMotor v] [arriba v] por [450] [grados v] ▶
establecer la velocidad de giro a [10] [% v]
obtener [AI Classifications v] datos de [AIVision v]
repetir hasta <([AIVision v] objeto [centroX v]) [math_less_than v] [190]>
[Turn until the robot is centered on the Blue Pin.]
obtener [AI Classifications v] datos de [AIVision v]
turno [derecha v]
fin
unidad [adelante v] para [350] [mm v] ▶
girar [ClawMotor v] [abierto v]
centerY#
centerY returns the y-coordinate of the center of the detected object in pixels as an integer from 0 to 240.
([AIVision v] objeto [centroY v])
Ejemplo
cuando empezó
[Place the Red Pin on the top left Blue Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
girar [izquierda v] por [38] grado ▶
repetir hasta <([AIVision v] objeto [centroY v]) [math_greater_than v] [210]>
[Move forward until the robot is close to the Pin.]
obtener [AI Classifications v] datos de [AIVision v]
unidad [adelante v]
fin
unidad [adelante v] para [160] [mm v] ▶
girar [ClawMotor v] [abierto v]
originX#
originX returns the x-coordinate of the top-left corner of the detected object’s bounding box in pixels as an integer from 0 to 320.
([AIVision v] objeto [origenX v])
Ejemplo
cuando empezó
[Place the Red Pin on the bottom left Blue Pin.]
unidad [adelante v] para [50] [mm v] ▶
girar [LiftMotor v] [arriba v] por [450] [grados v] ▶
establecer la velocidad de giro a [10] [% v]
obtener [AI Classifications v] datos de [AIVision v]
repetir hasta <([AIVision v] objeto [centroX v]) [math_less_than v] [160]>
[Turn until the robot is centered on the Blue Pin.]
obtener [AI Classifications v] datos de [AIVision v]
turno [derecha v]
fin
unidad [adelante v] para [350] [mm v] ▶
girar [ClawMotor v] [abierto v]
originY#
originY returns the y-coordinate of the top-left corner of the detected object’s bounding box in pixels as an integer from 0 to 240.
([AIVision v] objeto [origenY v])
Ejemplo
cuando empezó
[Place the Red Pin on the top left Blue Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
girar [izquierda v] por [38] grado ▶
repetir hasta <([AIVision v] objeto [origenY v]) [math_greater_than v] [180]>
[Move forward until the robot is close to the Pin.]
obtener [AI Classifications v] datos de [AIVision v]
unidad [adelante v]
fin
unidad [adelante v] para [160] [mm v] ▶
girar [ClawMotor v] [abierto v]
AI Classification is#
The AI Vision object is? block returns a Boolean indicating whether a detected object matches a specific classification.
True – The item in the dataset is the specific object.
False – The item in the dataset is not the specific object.
<[AIVision] object is [Beam v]?>
Parameter |
Descripción |
|---|---|
object |
Which object to compare the item to:
|
Ejemplo
cuando empezó
[Find the object index of the nearest Orange Pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
establecer de [object_counter v] a [1]
obtener [AI Classifications v] datos de [AIVision v]
[Iterate through all detected objects.]
repetir ([AIVision v] recuento de objetos)
Establecer el elemento de objeto [AIVision v] en (object_counter)
si <[AIVision v] object is [Orange Pin v] ?> entonces
imprimir (unirse [Nearest Orange Pin is ] (object_counter)) ▶
demás
cambiar [object_counter v] por [1]
Detección#
Optical#
¿Objeto óptico encontrado?#
El bloque ¿Objeto óptico encontrado? devuelve un valor booleano que indica si el sensor óptico ha detectado un objeto.
Verdadero: el sensor óptico ha detectado un objeto.
Falso: el sensor óptico no ha detectado un objeto.
<[Optical v] Encontraste un objeto?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
esperar hasta <no <[Optical v] Encontraste un objeto?>>
girar [LiftMotor v] a la posición [0] [grados v] ▶
¿La tecnología óptica detecta el color?#
El bloque ¿El sensor óptico detecta color? devuelve un valor booleano que indica si el sensor óptico ha detectado un color específico.
Verdadero: el sensor óptico ha detectado el color especificado.
Falso: el sensor óptico no ha detectado el color especificado.
<[Optical v] detecta [rojo v]?>
Parámetros |
Descripción |
|---|---|
color |
¿Qué color buscar?:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
esperar hasta <no <[Optical v] detecta [rojo v]?>>
girar [LiftMotor v] a la posición [0] [grados v] ▶
Brillo óptico#
El bloque Brillo óptico devuelve la cantidad de luz detectada por el sensor óptico en un rango de 0% a 100%.
([Optical v] brillo en %)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
esperar hasta <[30] [math_greater_than v] ([Optical v] brillo en %)>
girar [LiftMotor v] a la posición [0] [grados v] ▶
Tono óptico#
El bloque Tono óptico devuelve el valor de tono del color detectado por el sensor óptico.
Los valores de tono varían de 0 a 359 grados, correspondientes a las posiciones en la rueda de color que se muestran a continuación.

([Optical v] tono en grados)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
esperar hasta <([Optical v] tono en grados) [math_greater_than v] [0]>
girar [LiftMotor v] a la posición [0] [grados v] ▶
Cuando óptico#
El bloque cuando es óptico ejecuta su pila cuando el sensor óptico detecta o pierde un objeto. Puedes tener varios bloques cuando es óptico para ejecutar varias pilas de bloques a la vez.
cuando [Optical v] [detects v] un objeto
Parámetros |
Descripción |
|---|---|
acción |
¿Qué acción para activar el bloqueo del sombrero?:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
cuando [Optical v] [loses v] un objeto
[Lower the lift when the red pin is not in the claw.]
girar [LiftMotor v] a la posición [0] [grados v] ▶
Touch LED#
Establecer el color del TouchLED#
El bloque establecer color de TouchLED establece el color del LED táctil.
establecer el color [TouchLED v] en [none v]
Parámetros |
Descripción |
|---|---|
color |
Establece el color del LED en:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
establecer el color [TouchLED v] en [rojo v]
girar [LiftMotor v] [arriba v] por [600] [grados v] ▶
unidad [adelante v] para (140) [mm v] ▶
girar [ClawMotor v] [abierto v]
establecer el color [TouchLED v] en [none v]