Python específico para robots#
Todos los comandos VR estándar de VEXcode están disponibles para su uso en el patio de juegos V5RC Virtual Skills - Tipping Point.
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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: |
esperar |
Opcional. El parámetro wait determina si el comando bloqueará los comandos subsiguientes ( |
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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: |
esperar |
Opcional. El parámetro wait determina si el comando bloqueará los comandos subsiguientes ( |
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
Sube o baja el brazo de Byte. |
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.
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
Sube o baja el brazo de Byte. |
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.
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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.
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.
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.
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.
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
Sube o baja el brazo de Byte. |
Parámetros |
Descripción |
---|---|
unidades |
La unidad del valor devuelto, |
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 |
---|---|
|
Gira la entrada de Byte para recoger elementos del juego del campo. |
|
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.
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.
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:
Color.ROJO
Color.VERDE
Color.AZUL
Color.AMARILLO
Color.NARANJA
Color. PÚRPURA
Color.CIAN
Devuelve: Esto devuelve un valor booleano.
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 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 dentro de un rango de 0 a 359. Este número representa la ubicación del color detectado en una rueda de color.
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())
gps.x_position()#
El comando gps.x_position(units)
se utiliza para informar el desplazamiento posicional X de un sensor GPS o un punto de origen definido desde el centro de un campo.
Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.
Parámetros |
Descripción |
---|---|
unidades |
La unidad del valor de desplazamiento, |
Devuelve: Esto devuelve un valor numérico.
def main():
# Print the current X positional offset of the robot.
brain.screen.print(gps.x_position(MM))
gps.y_position()#
El comando gps.y_position(units)
se utiliza para informar el desplazamiento posicional Y de un sensor GPS o un punto de origen definido desde el centro de un campo.
Este es un comando sin espera y permite que cualquier comando posterior se ejecute sin demora.
Parámetros |
Descripción |
---|---|
unidades |
La unidad del valor de desplazamiento, |
Devuelve: Esto devuelve un valor numérico.
def main():
# Print the current Y positional offset of the robot.
brain.screen.print(gps.y_position(MM))
gps.heading()#
El comando gps.heading()
se utiliza para informar el rumbo que enfrenta actualmente un robot en función de las lecturas de un sensor GPS del código de campo GPS VEX.
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 current heading of the robot.
brain.screen.print(gps.heading())