Bloques específicos para robots#
Introducción#
El parque infantil VIQRC 25-26 Mix & Match incluye bloques exclusivos para este modelo, entre los que se incluyen dos opciones de motor, el sensor de visión IQ AI, el sensor óptico y el LED táctil.
Todos los bloques VEXcode VR estándar están disponibles para su uso en el parque infantil VIQRC 25-26 Mix & Match.
A continuación se muestra una lista de todos los bloques disponibles específicos para parques infantiles:
Movimiento: Mueve y rastrea los motores del robot.
Comportamiento
girar motor - Hace girar el motor seleccionado indefinidamente.
girar motor durante - Hace girar un motor durante una distancia específica en grados o vueltas.
girar motor a posición - Gira un motor a una posición establecida.
detener motor - Detiene el giro de un motor específico.
Ajustes
establecer velocidad del motor - Establece la velocidad de un motor como un porcentaje.
establecer tiempo de espera del motor - Limita cuánto tiempo espera un bloque de motor antes de rendirse si el movimiento está bloqueado.
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.
Valores
¿El motor se ha detenido? - 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 %.
Visión por IA: Captura y analiza objetos utilizando el sensor de visión por IA IQ.
Comportamiento
obtener datos del objeto - Captura datos para clasificaciones de IA detectadas.
Ajustes
establecer elemento de objeto - Selecciona un objeto específico de la lista.
Valores
¿Existe el objeto? - Devuelve si se detectó alguna clasificación.
contador de objetos - Devuelve cuántos objetos se detectaron.
propiedad del objeto - Devuelve ancho, alto, centroX, centroY, origenX u origenY.
Clasificación de IA es - Devuelve si se detecta una clasificación específica.
Detección: Utilice los diversos sensores del robot.
Óptico
¿El sensor óptico encontró un objeto? - Devuelve si se detectó un objeto.
¿Detección óptica de 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 óptico - Ejecuta la pila de bloques adjunta cuando el sensor óptico detecta o pierde un objeto.
LED táctil
establecer color del TouchLED - Establece el color del TouchLED seleccionado.
Los ejemplos de esta página utilizan la posición de inicio predeterminada del Playground.
Movimiento#
Comportamiento#
motor de giro#
El bloque motor de giro hace girar un motor seleccionado en una dirección específica utilizando la velocidad actual del motor.
spin [ClawMotor v] [open v]
Parámetros |
Descripción |
|---|---|
motor |
El motor a girar:
|
dirección |
Dirección de giro:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
drive [forward v] for (140) [mm v] ▶
spin [ClawMotor v] [open v]
motor de giro para#
El bloque motor de giro para hace girar un motor seleccionado durante una cantidad específica de rotación utilizando la velocidad actual del motor, medida en grados o vueltas.
spin [ClawMotor v] [open v] for (90) [degrees v] ▶
Parámetros |
Descripción |
|---|---|
motor |
El motor a girar:
|
dirección |
Dirección de giro:
|
distancia |
La cantidad de rotación, como un número entero o decimal. |
unidad |
La unidad de medida que representa la distancia:
|
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el motor terminará de moverse antes de ejecutar el siguiente bloque. Amplíe el bloque para que diga y no espere para que no sea de espera. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
drive [forward v] for (140) [mm v] ▶
spin [ClawMotor v] [open v]
motor de giro para posicionar#
El bloque girar motor a posición hace girar un motor a una posición absoluta específica utilizando la velocidad del motor y la posición del motor actuales.
spin [ClawMotor v] to position (90) [degrees v] ▶
Parámetros |
Descripción |
|---|---|
motor |
El motor a girar:
|
posición |
La posición objetivo a la que debe girar el motor. |
unidad |
Unidad de medida:
|
flecha expansiva |
Por defecto, este es un bloque de espera. Amplíe el bloque para que diga y no espere para que no sea de espera. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
spin [LiftMotor v] to position [-2] [turns v] ▶
drive [forward v] for (140) [mm v] ▶
spin [ClawMotor v] [open v]
motor de parada#
El bloque parar motor detiene inmediatamente el motor seleccionado.
stop [ClawMotor v]
Parámetros |
Descripción |
|---|---|
motor |
El motor a detener:
|
Ejemplo
cuando empezó
[Raise the lift for 2 seconds, then stop.]
spin [LiftMotor v] [up v]
esperar (2) segundos
stop [LiftMotor v]
Ajustes#
establecer la velocidad del motor#
El bloque establecer velocidad del motor establece la velocidad de giro predeterminada de un motor como un porcentaje para todos los bloques Motor subsiguientes en el proyecto.
set [ClawMotor v] velocity to (50) [% v]
Parámetros |
Descripción |
|---|---|
motor |
El motor para ajustar 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ó
[Raise the lift at full speed.]
set [LiftMotor v] velocity to [100] [% v]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
establecer tiempo de espera del motor#
El bloque set motor timeout establece un límite de tiempo para que un bloque Motor espere hasta 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.
set [ClawMotor v] timeout to (1) seconds
Parámetros |
Descripción |
|---|---|
motor |
Motor para configurar el tiempo de espera:
|
tiempo |
El número máximo de segundos que un bloque de motor funcionará antes de detenerse y pasar al siguiente bloque. |
Ejemplo
cuando empezó
set [LiftMotor v] timeout to [2] seconds
spin [LiftMotor v] [up v] for [5] [turns v] ▶
Posición#
posición del motor#
El bloque posición del motor devuelve la distancia total que ha girado el motor seleccionado.
([ClawMotor v] position in [degrees v])
Parámetros |
Descripción |
|---|---|
motor |
El motor para devolver la posición de:
|
unidad |
Unidad de medida:
|
Ejemplo
cuando empezó
[Raise the lift until it reaches 600 degrees.]
spin [LiftMotor v] [up v]
wait until <([LiftMotor v] position in [degrees v]) [math_less_than v] [-600]>
stop [LiftMotor v]
establecer la posición del motor#
El bloque establecer posición del motor asigna un valor de posición específico a un motor, lo que actualiza la lectura del codificador.
set [ClawMotor v] position to (0) [degrees v]
Parámetros |
Descripción |
|---|---|
motor |
El motor para establecer la posición de:
|
posición |
El valor de posición del codificador que se va a configurar. |
unidad |
Unidad de medida:
|
Ejemplo
cuando empezó
set [LiftMotor v] position to [100] [degrees v]
spin [LiftMotor v] to position [-500] [degrees v] ▶
Valores#
El motor está terminado#
El bloque ¿El motor está detenido? devuelve un valor booleano que indica si el motor no está girando.
Cierto: el motor no está girando.
Falso - El motor está girando.
<[ClawMotor v] is done?>
Parámetros |
Descripción |
|---|---|
motor |
El motor para comprobar si ha terminado de girar:
|
Ejemplo
cuando empezó
[Flash the Touch LED while the lift is moving.]
spin [LiftMotor v] [up v] for [600] [degrees v] ◀ and don't wait
esperar [0.1] segundos
repeat until <[LiftMotor v] is done?>
set [TouchLED v] color to [red v]
esperar [0.5] segundos
set [TouchLED v] color to [none v]
esperar [0.5] segundos
fin
¿El motor está girando?#
El bloque ¿El motor está girando? devuelve un valor booleano que indica si el motor está girando.
Cierto: el motor está girando.
Falso - El motor no está girando.
<[ClawMotor v] is spinning?>
Parámetros |
Descripción |
|---|---|
motor |
El motor para comprobar si está girando actualmente:
|
Ejemplo
cuando empezó
[Flash the Touch LED while the lift is spinning.]
spin [LiftMotor v] [up v] for [600] [degrees v] ◀ and don't wait
esperar [0.1] segundos
repeat until <not <[LiftMotor v] is spinning?>>
set [TouchLED v] color to [red v]
esperar [0.5] segundos
set [TouchLED v] color to [none v]
esperar [0.5] segundos
fin
velocidad del motor#
El bloque velocidad del motor devuelve la velocidad de rotación actual del motor en un rango de -100% a 100%.
([ClawMotor v] velocity in [% v] :: custom-motion)
Parámetros |
Descripción |
|---|---|
motor |
El motor para devolver la velocidad de:
|
unidad |
La unidad que representa la velocidad:
|
Ejemplo
cuando empezó
set [LiftMotor v] velocity to [100] [% v]
spin [LiftMotor v] [up v] for [600] [degrees v] ◀ and don't wait
esperar [0.5] segundos
print ([LiftMotor v] velocity in [% v] :: custom-motion) ▶
Visión por IA#
Comportamiento#
obtener datos del objeto#
El bloque obtener datos de objeto filtra los datos del marco del sensor de visión IQ AI. El sensor de visión IQ AI puede detectar elementos del juego en el terreno.
El conjunto de datos almacena objetos ordenados de mayor a menor ancho, comenzando en el índice 0. Se puede acceder a las propiedades de cada objeto mediante el bloque propiedad del objeto. Se devuelve un conjunto de datos vacío si no se detectan objetos coincidentes.
get [AI Classifications v] data from [AIVision v]
Parámetro |
Descripción |
|---|---|
firma |
Filtra el conjunto de datos para incluir solo datos de la firma dada. La única firma disponible es:
|
Ejemplo
cuando empezó
[Place the Red Pin on the top left Blue Pin.]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
turn [left v] for [38] degrees ▶
repeat until <([AIVision v] object [width v]) [math_greater_than v] [48]>
get [AI Classifications v] data from [AIVision v]
unidad [adelante v]
fin
drive [forward v] for [160] [mm v] ▶
spin [ClawMotor v] [open v]
Ajustes#
elemento de objeto de conjunto#
El bloque establecer elemento de objeto establece qué elemento del conjunto de datos se debe utilizar.
set [AIVision v] object item to [1]
Parámetros |
Descripción |
|---|---|
artículo |
El número del elemento del conjunto de datos que se va a utilizar. |
Ejemplo
cuando empezó
[Find the object index of the nearest Orange Pin.]
set [object_counter v] to [1]
get [AI Classifications v] data from [AIVision v]
repeat ([AIVision v] object count)
set [AIVision v] object item to (object_counter)
if <[AIVision v] object is [Orange Pin v]> then
print (join [Nearest Orange Pin is ] (object_counter)) ▶
demás
change [object_counter v] by [1]
fin
fin
Valores#
¿Existe el objeto?#
El bloque ¿Existe algún objeto? devuelve un valor booleano que indica si se ha detectado algún objeto en el conjunto de datos.
Verdadero: el conjunto de datos incluye un objeto detectado.
Falso: el conjunto de datos no incluye ningún objeto detectado.
<[AIVision v] object exists?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Raise the Lift until a Pin or Beam is detected.]
repeat until <[AIVision v] object exists?>
get [AI Classifications v] data from [AIVision v]
spin [LiftMotor v] [up v]
fin
stop [LiftMotor v]
recuento de objetos#
El bloque conteo de objetos devuelve el número de objetos detectados en el conjunto de datos como un número entero.
([AIVision v] object count)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
get [AI Classifications v] data from [AIVision v]
print ([AIVision v] object count) ▶
propiedad del objeto#
Hay seis propiedades que se incluyen con cada objeto almacenado después de que se utiliza el bloque obtener datos del objeto.
([AIVision v] object [width v])
Algunos valores de propiedad se basan en la posición del objeto detectado en la vista del sensor de visión IQ AI en el momento en que se utilizó el bloque obtener datos del objeto. El sensor de visión IQ AI tiene una resolución de 320 x 240 píxeles.
Parámetro |
Descripción |
|---|---|
propiedad |
¿Qué propiedad del objeto detectado utilizar?: |
ancho#
El parámetro width devuelve el ancho del objeto detectado en píxeles como un número entero entre 1 y 320.
([AIVision v] object [width v])
altura#
La función height devuelve la altura del objeto detectado en píxeles como un número entero entre 1 y 240.
([AIVision v] object [height v])
centroX#
centerX devuelve la coordenada x del centro del objeto detectado en píxeles como un número entero entre 0 y 320.
([AIVision v] object [centerX v])
centroY#
centerY devuelve la coordenada y del centro del objeto detectado en píxeles como un número entero entre 0 y 240.
([AIVision v] object [centerY v])
origenX#
originX devuelve la coordenada x de la esquina superior izquierda del cuadro delimitador del objeto detectado en píxeles como un número entero de 0 a 320.
([AIVision v] object [originX v])
origenY#
originY devuelve la coordenada y de la esquina superior izquierda del cuadro delimitador del objeto detectado en píxeles como un número entero de 0 a 240.
([AIVision v] object [originY v])
La clasificación de IA es#
El bloque ¿El objeto de AI Vision es? devuelve un valor booleano que indica si un objeto detectado coincide con una clasificación específica.
Verdadero: el elemento en el conjunto de datos es el objeto específico.
Falso: el elemento en el conjunto de datos no es el objeto específico.
<[AIVision v] object is [Beam v]?>
Parámetro |
Descripción |
|---|---|
objeto |
¿Con qué objeto comparar el artículo?:
|
Ejemplo
cuando empezó
[Find the object index of the nearest Orange Pin.]
set [object_counter v] to [1]
get [AI Classifications v] data from [AIVision v]
repeat ([AIVision v] object count)
set [AIVision v] object item to (object_counter)
if <[AIVision v] object is [Orange Pin v]> then
print (join [Nearest Orange Pin is ] (object_counter)) ▶
demás
change [object_counter v] by [1]
fin
fin
Detección#
Óptico#
¿El sistema óptico detectó algún objeto?#
El bloque ¿El sensor óptico ha detectado un objeto? 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 ningún objeto.
<[Optical v] found an object?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Place a pin atop another pin.]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
drive [forward v] for (140) [mm v] ▶
spin [ClawMotor v] [open v]
wait until <not <[Optical v] found an object?>>
spin [LiftMotor v] to position [0] [degrees v] ▶
El sensor óptico detecta el color.#
El bloque ¿Detecta el color el sensor óptico? 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] detects [red v]?>
Parámetros |
Descripción |
|---|---|
color |
¿Qué color comprobar?:
|
Ejemplo
cuando empezó
[Place a pin atop another pin.]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
drive [forward v] for (140) [mm v] ▶
spin [ClawMotor v] [open v]
wait until <[Optical v] detects [red v]?>
spin [LiftMotor v] to position [0] [degrees v] ▶
Brillo óptico#
El bloque Brillo óptico devuelve la cantidad de luz detectada por el sensor óptico en un rango del 0% al 100%.
([Optical v] brightness in %)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Tonalidad óptica#
El bloque Tono óptico devuelve el valor de tono del color detectado por el sensor óptico.
Los valores de tono van de 0 a 359 grados, lo que corresponde a las posiciones en la rueda de colores que se muestra a continuación.

([Optical v] hue in degrees)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
cuando óptico#
El bloque when Optical ejecuta su pila cuando el sensor óptico detecta o pierde un objeto. Puedes tener varios bloques when Optical para ejecutar varias pilas de bloques a la vez.
when [Optical v] [detects v] an object
Parámetros |
Descripción |
|---|---|
acción |
¿Qué acción activa el bloqueo del sombrero?:
|
Ejemplo
when [Optical v] [loses v] an object
[Lower the lift when the object is no longer in the claw.]
spin [LiftMotor v] to position [0] [degrees v] ▶
LED táctil#
configurar el color del TouchLED#
El bloque establecer color del LED táctil establece el color del LED táctil.
set [TouchLED v] color to [none v]
Parámetros |
Descripción |
|---|---|
color |
Configura el color del LED a:
|
Ejemplo
cuando empezó
[Light the Touch LED while placing a pin.]
set [TouchLED v] color to [red v]
spin [LiftMotor v] [up v] for [600] [degrees v] ▶
drive [forward v] for (140) [mm v] ▶
spin [ClawMotor v] [open v]
set [TouchLED v] color to [none v]