Grupo Motor#

Inicializando la clase MotorGroup#

Un objeto EXP MotorGroup se crea utilizando el siguiente constructor:

GrupoMotores(motor1, motor2, ...)

Puedes crear un MotorGroup con cualquier número de motores.

# Create 2 Motors, motor_1 and motor_2 in
# Ports 1 and 2 respectively. 
motor_1 = Motor(Ports.PORT1)
motor_2 = Motor(Ports.PORT2)
# Using the two previously created Motors, create a
# MotorGroup named motor_group_1.
motor_group_1 = MotorGroup(motor_1, motor_2)

Este objeto motor_group_1 se utilizará en todos los ejemplos posteriores en esta documentación de API cuando se haga referencia a los métodos de la clase MotorGroup.

Métodos de clase#

spin()#

El método spin(direction, velocity, units) se utiliza para girar todos los motores de un MotorGroup en la dirección especificada hasta que se utilice un comando de giro o detención, o se detenga el proyecto.

Esta es una función sin espera y permite que el siguiente comando se ejecute sin demora.

Parámetros

Descripción

dirección

Un DirectionType válido.

velocidad

Opcional. La velocidad a la que girarán los motores del grupo de motores. Se utilizará la velocidad predeterminada establecida por el método set_velocity().

unidades

Opcional. Una VelocityUnit o PERCENT válida. El valor predeterminado es RPM.

Devoluciones: Ninguna.

# Spin all Motors in motor_group_1 forward.
motor_group_1.spin(FORWARD)

spin_to_position()#

El método spin_to_position(rotation, units, velocity, units_v, wait) se utiliza para girar todos los motores de un MotorGroup a una posición absoluta utilizando los argumentos proporcionados.

Esta función puede ser un comando en espera o sin espera dependiendo de si el parámetro wait está configurado en True.

Parámetros

Descripción

rotación

La posición para hacer girar los motores en un MotorGroup.

unidades

Opcional. Una RotationUnit válida. El valor predeterminado es GRADOS.

velocidad

Opcional. La velocidad a la que girarán los motores de un grupo de motores. Se utilizará la velocidad predeterminada establecida por el método set_velocity().

unidades_v

Opcional. Una VelocityUnit o PERCENT válida. El valor predeterminado es RPM.

esperar

Opcional. 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.

# Spin the Motors in motor_group_1 to the position 90
# degrees at 100 RPM.
motor_group_1.spin_to_position(90, DEGREES, 100, RPM)

spin_for()#

El método spin_for(dirección, valor, unidades, velocidad, unidades_v, espera) se utiliza para girar todos los motores de un grupo de motores durante un tiempo específico, rotaciones o hasta que se alcance un valor específico del codificador. La posición es relativa a la posición actual de los motores en el grupo de motores.

Este puede ser un comando en espera o sin espera dependiendo de si se utiliza el parámetro wait.

Parámetros

Descripción

dirección

Un DirectionType válido.

valor

El valor de los motores en un MotorGroup para girar.

unidades

Opcional. Una RotationUnit válida. El valor predeterminado es GRADOS.

velocidad

Opcional. La velocidad a la que girarán los motores de un grupo de motores. Se utilizará la velocidad predeterminada establecida por el método set_velocity().

unidades_v

Opcional. Una VelocityUnit o PERCENT válida. El valor predeterminado es RPM.

esperar

Opcional. 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.

# Spin the Motors in motor_group_1 forward for 10 turns
# at 100% velocity.
motor_group_1.spin_for(FORWARD, 10, TURNS, 100, PERCENT)

stop()#

El método stop(mode) se utiliza para detener todos los motores de un MotorGroup, estableciéndolos en velocidad 0 y configurando el modo de detención actual.

Parámetros

Descripción

modo

Opcional. Un BrakeType válido. El valor predeterminado es COAST, a menos que se haya modificado previamente con el método set_stopping().

Devoluciones: Ninguna.

# Spin all Motors in motor_group_1 forward for 2.5 seconds.
motor_group_1.spin(FORWARD)

wait(2.5, SECONDS)

# Stop all Motos in motor_group_1 using the HOLD brake type.
motor_group_1.stop(HOLD)

count()#

El método count() devuelve el número de motores en el MotorGroup.

Devuelve: La cantidad de motores en el MotorGroup.

set_velocity()#

El método set_velocity(velocity, units) se utiliza para establecer la velocidad predeterminada de todos los motores de un grupo de motores. Esta configuración de velocidad se utilizará en llamadas posteriores a cualquier función de movimiento si no se proporciona una velocidad específica.

Parámetros

Descripción

velocidad

La nueva velocidad que se debe establecer para los motores de un grupo de motores.

unidades

Una VelocityUnit o PERCENT válida.

Devoluciones: Ninguna.

# Spin the Motors in motor_group_1 forward at 75% velocity.
motor_group_1.set_velocity(75, PERCENT)

motor_group_1.spin(FORWARD)

set_stopping()#

El método set_stopping(mode) se utiliza para establecer el modo de detención para todos los motores en un MotorGroup.

Parámetros

Descripción

modo

Un BrakeType válido.

Devoluciones: Ninguna.

reset_position()#

El método reset_position() restablece la posición de todos los motores en un MotorGroup a 0. La posición que devuelve el método position() se actualizará a 0.

Devoluciones: Ninguna.

set_position()#

El método set_position(value, units) se utiliza para establecer la posición de todos los motores de un grupo de motores. La posición devuelta por el método position() se actualizará a este nuevo valor.

Parámetros

Descripción

valor

La nueva posición que se debe establecer para todos los motores de un grupo de motores.

unidades

Una RotationUnit válida.

Devoluciones: Ninguna.

set_timeout()#

El método set_timeout(value, units) se utiliza para establecer el tiempo de espera de todos los motores de un grupo de motores. La posición devuelta por el método get_timeout() se actualizará a este nuevo valor.

Parámetros

Descripción

valor

El nuevo tiempo de espera que se debe establecer para todos los motores en un MotorGroup.

unidades

Opcional. Una Unidad de tiempo válida. El valor predeterminado es MSEC.

Devoluciones: Ninguna.

is_spinning()#

El método is_spinning() devuelve el estado actual de los métodos spin_to_position() o spin_for(). Esta función se utiliza cuando se ha pasado False como parámetro wait en cualquiera de los comandos.

Devuelve: Verdadero si algún motor en el MotorGroup todavía está girando. Falso si los motores en el MotorGroup han completado el movimiento o se ha producido un tiempo de espera.

is_done()#

El método is_done() devuelve el estado actual del método spin_to_position() o spin_for(). Esta función se utiliza cuando se ha pasado False como parámetro wait en cualquiera de los comandos.

Devuelve: Verdadero si algún motor en el MotorGroup todavía está girando. Falso si los motores en el MotorGroup han completado el movimiento o se ha producido un tiempo de espera.

set_max_torque()#

El método set_max_torque(value, units) se utiliza para establecer el par máximo de todos los motores de un grupo de motores. El par puede configurarse en unidades de par, unidades de corriente o un porcentaje del par máximo.

Parámetros

Descripción

valor

El nuevo par máximo para todos los motores de un grupo de motores.

unidades

Una TorqueUnit, AMP o PERCENT válida.

Devoluciones: Ninguna.

direction()#

El método direction() devuelve la dirección actual en la que está girando el primer motor de un MotorGroup.

Devuelve: El DirectionType actual en el que está girando el primer motor de un MotorGroup.

position()#

El método position(units) devuelve la posición actual del primer motor en un MotorGroup.

Parámetros

Descripción

unidades

Opcional. Una RotationUnit válida. El valor predeterminado es GRADOS.

Devuelve: La posición actual del primer motor en un grupo de motores en las unidades especificadas.

velocity()#

El método velocity(units) devuelve la velocidad actual del primer motor en un MotorGroup.

Parámetros

Descripción

unidades

Opcional. Una VelocityUnit válida. El valor predeterminado es RPM.

Devuelve: La velocidad actual del primer motor en un grupo de motores en las unidades especificadas.

current()#

El método current(units) devuelve la corriente total utilizada por los motores en un MotorGroup.

Parámetros

Descripción

unidades

Opcional. Las únicas unidades válidas para la corriente son «AMP» o «PERCENT».

Devuelve: La corriente total consumida por los motores de un grupo de motores en las unidades especificadas.

power()#

El método power(units) devuelve la potencia que proporciona el primer motor de un MotorGroup.

Parámetros

Descripción

unidades

Opcional. Las únicas unidades válidas para potencia son «WATT» o «PERCENTAJE».

Devuelve: La potencia que proporciona el primer motor de un grupo de motores en las unidades especificadas.

torque()#

El método torque(units) devuelve el torque que proporciona el primer motor en un MotorGroup.

Parámetros

Descripción

unidades

Opcional. Una TorqueUnit válida. El valor predeterminado es NM.

Devuelve: El torque que proporciona el primer motor de un grupo de motores en las unidades especificadas.

efficiency()#

El método efficiency(units) devuelve la eficiencia del primer motor en un MotorGroup.

Parámetros

Descripción

unidades

Opcional. La única unidad válida para la eficiencia es “PORCENTAJE”.

Devuelve: La eficiencia del primer motor de un grupo de motores como porcentaje.

temperature()#

El método temperature(units) devuelve la temperatura del primer motor en un MotorGroup.

Parámetros

Descripción

unidades

Opcional. Una Unidad de Temperatura válida. El valor predeterminado es CELSIUS.

Devuelve: La temperatura del primer motor de un grupo de motores en las unidades especificadas.