Python específico para robots#
Todos los comandos VR estándar de VEXcode están disponibles para su uso en el patio de juegos VIQRC Virtual Skills - Rapid Relay.
Movimiento#
motor.spin()#
El comando motor.spin(direction)
se utiliza para girar un motor indefinidamente.
Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.spin(direction)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
dirección |
La dirección en la que debe moverse el motor: “ADELANTE” o “ATRÁS”. |
Devoluciones: Ninguna.
# Spin the Intake Motor to bring a Ball onto the Catapult.
intake_motor.spin(FORWARD)
wait(2, SECONDS)
intake_motor.stop
motor.spin_for()#
El comando motor.spin_for(direction, distance, units, wait)
se utiliza para girar un motor una cantidad determinada de grados o vueltas.
Este puede ser un comando sin espera o en espera dependiendo de si se utiliza el parámetro wait
.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.spin_for(direction, distance, units, wait)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
dirección |
La dirección en la que debe moverse el motor: “ADELANTE” o “ATRÁS”. |
distancia |
La distancia que debe recorrer el motor, expresada en un número entero. |
unidades |
Las unidades que utilizará el motor: |
esperar |
Opcional. El parámetro wait determina si el comando bloqueará los comandos subsiguientes ( |
Devoluciones: Ninguna.
# Launch the Ball currently loaded on the Catapult.
catapult_group.spin_for(REVERSE, 5, DEGREES)
# Lower the Catapult to prepare to load another Ball.
catapult_group.spin_for(FORWARD, 1350, DEGREES)
motor.giro_a_posición()#
El comando motor.spin_to(angle, units, wait)
se utiliza para girar un motor a una posición determinada.
Este puede ser un comando sin espera o en espera dependiendo de si se utiliza el parámetro wait
.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.spin_for(angle, units, wait)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
ángulo |
El ángulo específico o número de vueltas que dará el motor. |
unidades |
Las unidades que utilizará el motor: |
esperar |
Opcional. El parámetro wait determina si el comando bloqueará los comandos subsiguientes ( |
Devoluciones: Ninguna.
# Launch the Ball currently loaded on the Catapult.
catapult_group.spin_to_position(-90, DEGREES)
# Lower the Catapult to prepare to load another Ball.
catapult_group.spin_to_position(1260, DEGREES)
motor.stop()#
El comando motor.stop()
se utiliza para detener un motor.
Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.stop()
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Devoluciones: Ninguna.
# Spin the Intake Motor to bring a Ball onto the Catapult.
intake_motor.spin(FORWARD)
wait(2, SECONDS)
intake_motor.stop
motor.set_position()#
El comando motor.set_position(position, units)
se utiliza para establecer la posición del codificador de un motor en el valor de posición dado.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.set_position(position, units)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
posición |
El entero específico que se debe configurar para el codificador del motor. |
unidades |
Las unidades que utilizará el motor: “GRADOS” o “VUELTAS”. |
Devoluciones: Ninguna.
# Launch the Ball currently loaded on the Catapult.
catapult_group.spin_for(REVERSE, 5, DEGREES)
# Lower the Catapult to prepare to load another Ball.
catapult_group.spin_to_position(1260, DEGREES)
# Set the new Catapult position to be 0 degrees.
catapult_group.set_position(0, DEGREES)
motor.set_velocity()#
El comando motor.set_velocity(velocity, units)
se utiliza para establecer la velocidad de un motor.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.set_velocity(velocity, units)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
velocidad |
La velocidad a la que girará el motor, que varía entre -100 y 100. |
unidades |
La unidad de velocidad del motor, “PORCENTAJE”. |
Devoluciones: Ninguna.
# Start spinning the Intake Motor to prepare
# for picking up a Ball.
intake_motor.set_velocity(100, PERCENT)
intake_motor.spin(FORWARD)
motor.set_timeout()#
El comando motor.set_timeout(value, units)
se utiliza para establecer un límite de tiempo para los comandos de movimiento de un motor.
Esto evita que los comandos de movimiento que no llegan a su posición prevista impidan la ejecución de los comandos posteriores.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.set_timeout(value, units)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
valor |
La cantidad de tiempo que el motor esperará antes de detenerse. |
unidades |
La unidad del temporizador del motor, “SEGUNDOS”. |
Devoluciones: Ninguna.
catapult_group.set_timeout(2, SECONDS)
# Lower the Catapult to prepare to load another Ball.
catapult_group.spin_for(6, TURNS)
Eventos#
objeto_óptico_de_entrada_detectado()#
intake_optical.object_detected(callback)
es el mismo comando que eye.object_detected(callback)
.
El comando solo utiliza el sensor óptico de Swish intake_optical
para reemplazar eye
en el comando estándar.
objeto_óptico_de_entrada_perdido()#
intake_optical.object_lost(callback)
es el mismo comando que eye.object_lost(callback)
.
El comando solo utiliza el sensor óptico de Swish intake_optical
para reemplazar eye
en el comando estándar.
Detección#
motor.is_done()#
El comando motor.is_done()
se utiliza para devolver un valor Verdadero o Falso si el motor seleccionado ha completado su movimiento.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.is_done()
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Devuelve: Esto devuelve un valor booleano.
motor.está_girando()#
El comando motor.is_spinning()
se utiliza para devolver un valor Verdadero o Falso si el motor seleccionado se está moviendo.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.is_spinning()
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Devuelve: Esto devuelve un valor booleano.
motor.posición()#
El comando motor.position(units)
se utiliza para devolver la posición rotacional actual del motor seleccionado.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.position(units)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
unidades |
La unidad del valor devuelto, |
Devuelve: Esto devuelve un valor numérico.
# Lower the Catapult to prepare to load another Ball.
while not catapult_group.position(DEGREES) == 1260:
catapult_group.spin(FORWARD)
motor.velocidad()#
El comando motor.velocity(units)
se utiliza para devolver la velocidad actual del motor seleccionado.
Para utilizar este comando, reemplace motor
con el motor o grupo de motores deseado, por ejemplo: intake_motor.velocity(units)
.
Objetos |
Descripción |
---|---|
|
Hace girar la toma de Swish para recoger bolas y colocarlas en su catapulta. |
|
Sube o baja la catapulta de Swish para lanzar bolas. |
Parámetros |
Descripción |
---|---|
unidades |
La unidad de velocidad del motor, “PORCENTAJE”. |
Devuelve: Esto devuelve un valor numérico.
brain.screen.print(catapult_group.velocity(PERCENT))
la entrada óptica está cerca del objeto#
El comando intake_optical.near_object()
se utiliza para informar un valor booleano si el sensor óptico está lo suficientemente cerca de una pelota para detectarla.
Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.
Devuelve: Esto informa un valor booleano.
# Launch a loaded Ball once the Intake Optical Sensor
# detects a Ball in the Intake.
if intake_optical.is_near_object():
catapult_group.spin_for(REVERSE, 5, DEGREES)
ingesta_óptica.color()#
El comando intake_optical.color()
se utiliza para devolver el color detectado por el sensor óptico de admisión.
Los siguientes colores se pueden utilizar como comparación con el color detectado:
ROJO
VERDE
AZUL
AMARILLO
NARANJA
PÚRPURA
CIAN
Devuelve: Esto devuelve el nombre del color detectado como una cadena.
# Launch a loaded Ball once the Intake Optical Sensor
# detects a Ball in the Intake.
if intake_optical.color() == YELLOW:
catapult_group.spin_for(REVERSE, 5, DEGREES)
ingesta_óptica.brillo()#
El comando intake_optical.brightness()
se utiliza para informar la cantidad de luz detectada por un sensor óptico dentro de un rango de 0 a 100 por ciento.
Devuelve: Esto devuelve un valor numérico.
# Launch a loaded Ball once the Intake Optical Sensor
# detects a Ball in the Intake.
if intake_optical.brightness() > 0:
catapult_group.spin_for(REVERSE, 5, DEGREES)
ingesta_óptica.hue()#
El comando intake_optical.brightness()
se utiliza para informar el tono del objeto detectado por un sensor óptico dentro de un rango de 0 a 359. Este número representa la ubicación del color detectado en una rueda de colores.
Devuelve: Esto devuelve un valor numérico.
# Launch a loaded Ball once the Intake Optical Sensor
# detects a Ball in the Intake.
if intake_optical.hue() > 100:
catapult_group.spin_for(REVERSE, 5, DEGREES)