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 - Full Volume.

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_group.spin(direction).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Parámetros

Descripción

dirección

La dirección en la que debe moverse el motor: “ADELANTE” o “ATRÁS”.

Devoluciones: Ninguna.

def main():
    # Spin the intake motor forward.
    intake_motor_group.spin(FORWARD)
    # Wait half a second.
    wait(0.5, SECONDS)
    # Stop spinning the intake motor group.
    intake_motor_group.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_group.spin_for(direction, distance, units, wait).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

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: GRADOS o VUELTAS.

esperar

Opcional. El parámetro wait determina si el comando bloqueará los comandos subsiguientes (wait=True) o permitirá su ejecución inmediata (wait=False). Si no se especifica, el valor predeterminado para el parámetro wait es wait=True.

Devoluciones: Ninguna.

def main():
    # Spin the intake motor forward for 1 turn.
    intake_motor_group.spin_for(FORWARD, 1, TURNS)

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_group.spin_for(angle, units, wait).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

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: GRADOS o VUELTAS.

esperar

Opcional. El parámetro wait determina si el comando bloqueará los comandos subsiguientes (wait=True) o permitirá su ejecución inmediata (wait=False). Si no se especifica, el valor predeterminado para el parámetro wait es wait=True.

Devoluciones: Ninguna.

def main():
    # Spin the intake motor to 55 degrees.
    intake_motor_group.spin_to_position(55, 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_group.stop().

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Devoluciones: Ninguna.

def main():
    # Spin the intake motor forward.
    intake_motor_group.spin(FORWARD)
    # Wait half a second.
    wait(0.5, SECONDS)
    # Stop spinning the intake motor group.
    intake_motor_group.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.

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_group.set_position(position, units).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Parámetros

Descripción

posición

El entero específico en el que se configurará el codificador del motor IQ.

unidades

Las unidades que utilizará el motor: “GRADOS” o “VUELTAS”.

Devoluciones: Ninguna.

def main():
    # Set the current motor position to 90 degrees.
    intake_motor_group.set_position(90, DEGREES)
    # Spin the intake motor back to 0 degrees.
    intake_motor_group.spin_to_position(0, DEGREES)

motor.set_velocity()#

El comando motor.set_velocity(velocity, units) se utiliza para establecer la velocidad de 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_group.set_velocity(velocity, units).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Parámetros

Descripción

velocidad

La velocidad a la que girará el motor IQ, que varía entre -100 y 100.

unidades

La unidad de velocidad del motor, “PORCENTAJE”.

Devoluciones: Ninguna.

def main():
    # Set the intake motor velocity to 75 percent.
    intake_motor_group.set_velocity(75, PERCENT)
    # Spin the intake motor to 180 degrees.
    intake_motor_group.spin_to_position(180, DEGREES)

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.

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_group.set_timeout(value, units).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

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.

def main():
    # Set the intake motor's timeout to 2 seconds.
    intake_motor_group.set_timeout(2, SECONDS)
    # Spin the intake motor to 270 degrees.
    intake_motor_group.spin_to_position(270, DEGREES)

Eventos#

parachoques_de_entrada.presionado()#

intake_bumper.pressed(callback) es el mismo comando que bumper.pressed(callback).

El comando solo utiliza el sensor de parachoques específico de Byte, intake_bumper, para reemplazar bumper en el comando estándar.

Para obtener información sobre cómo utilizar el comando bumper.pressed(callback), vaya a su documentación API aquí.

parachoques_de_entrada.liberado()#

intake_bumper.released(callback) es el mismo comando que bumper.released(callback).

El comando solo utiliza el sensor de parachoques específico de Byte, intake_bumper, para reemplazar bumper en el comando estándar.

Para obtener información sobre cómo utilizar el comando bumper.released(callback), vaya a su documentación API aquí.

objeto óptico frontal detectado()#

front_optical.object_detected(callback) es el mismo comando que eye.object_detected(callback).

El comando solo utiliza el sensor óptico de Byte front_optical para reemplazar eye en el comando estándar.

Para obtener información sobre cómo utilizar el comando eye.object_detected(callback), vaya a su documentación API aquí.

objeto óptico frontal perdido()#

front_optical.object_lost(callback) es el mismo comando que eye.object_lost(callback).

El comando solo utiliza el sensor óptico de Byte front_optical para reemplazar eye en el comando estándar.

Para obtener información sobre cómo utilizar el comando eye.object_lost(callback), vaya a su documentación API aquí.

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_group.is_done().

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Devuelve: Esto devuelve un valor booleano.

def main():
    # Move the Arm so it doesn't block the Front Distance Sensor.
    arm_motor_group.spin_to_position(1000, DEGREES)
    # Wait until the arm_motor_group has finished moving.
    if arm_motor_group.is_done():
        # Print the distance from the Front Distance Sensor to the closest
        # object in front of it.
        brain.screen.print(front_distance.object_distance(MM))

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_group.is_spinning().

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Devuelve: Esto devuelve un valor booleano.

# Example coming soon.

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_group.position(units).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Parámetros

Descripción

unidades

La unidad del valor devuelto, GRADOS o VUELTAS.

Devuelve: Esto devuelve un valor numérico.

def main():
    # Print the current position of the intake_motor_group in degrees.
    brain.screen.print(intake_motor_group.position(DEGREES))

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_group.velocity(units).

Objetos

Descripción

grupo de motores de admisión

Gira la entrada de Byte para recoger elementos del juego del campo.

grupo motor del brazo

Sube o baja el brazo de Byte.

Parámetros

Descripción

unidades

La unidad de velocidad del motor, “PORCENTAJE”.

Devuelve: Esto devuelve un valor numérico.

def main():
    # Print the current velocity of the arm_motor_group.
    brain.screen.print(arm_motor_group.velocity(PERCENT))

parachoques_de_entrada.presionando()#

intake_bumper.pressing() es el mismo comando que bumper.pressing().

El comando solo utiliza el sensor de parachoques especializado de Byte, intake_bumper, para reemplazar bumper en el comando estándar.

Para obtener información sobre cómo utilizar el comando bumper.pressing(), vaya a su documentación API aquí.

front_optical.is_near_object()#

El comando front_optical.near_object() se utiliza para informar un valor booleano si el sensor óptico está lo suficientemente cerca de un objeto para detectar un color.

Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.

Devuelve: Esto informa un valor booleano.

def main():
    # Print if the Front Optical Sensor is detecting a color.
    brain.print(front_optical.near_object())

color_óptico_frontal()#

El comando front_optical.color() se utiliza para devolver el color detectado por un sensor óptico VEX IQ.

Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.

Los siguientes colores se pueden utilizar como comparación con el color detectado por un sensor óptico IQ:

  • ROJO

  • VERDE

  • AZUL

  • AMARILLO

  • NARANJA

  • PÚRPURA

  • CIAN

Devuelve: Esto devuelve el nombre del color detectado como una cadena.

def main():
    # Print the color of the object that the Front Optical Sensor sees.
    brain.print(front_optical.color())

frontal_óptico.brillo()#

El comando front_optical.brightness() se utiliza para informar la cantidad de luz detectada por un sensor óptico VEX IQ dentro de un rango de 0 a 100 por ciento.

Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.

Devuelve: Esto devuelve un valor numérico.

def main():
    # Print the brightness of the object in front of Byte.
    brain.print(front_optical.brightness())

frontal_óptico.hue()#

El comando front_optical.brightness() se utiliza para informar el tono del objeto detectado por un sensor óptico VEX IQ dentro de un rango de 0 a 359. Este número representa la ubicación del color detectado en una rueda de colores.

Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.

Devuelve: Esto devuelve un valor numérico.

def main():
    # Print the hue of the object in front of Byte.
    brain.screen.print("Hue: ", optical.hue())