grupo motor#

Inicializando la clase motor_group#

Un objeto motor_group IQ (2.ª generación) se crea utilizando el siguiente constructor:

El constructor motor_group crea un objeto motor_group.

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

// Create 2 Motors, Motor1 and Motor2 in
// Ports 1 and 2 respectively. 
motor Motor1 = motor(PORT1);
motor Motor1 = motor(PORT2);
// Using the two previously created Motors, create a
// motor_group named MotorGroup1.
motor_group MotorGroup1 = motor_group(Motor1, Motor2);

Este objeto MotorGroup1 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#

girar()#

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

Este método se llama de las siguientes maneras:

El comando spin(dir) se utiliza para girar los motores en la dirección especificada para siempre a la velocidad predeterminada establecida por el comando setVelocity(), hasta que se utilice un comando de giro o detención, o se detenga el proyecto.

Parámetros

Descripción

director

Un directionType válido.

Devoluciones: Ninguna.

// Spin MotorGroup1 forward.
MotorGroup1.spin(forward);

El comando spin(dir, velocity, units) se utiliza para girar los motores en la dirección especificada para siempre a una velocidad especificada, hasta que se utilice un comando de giro o detención, o se detenga el proyecto.

Parámetros

Descripción

director

Un directionType válido.

velocidad

La velocidad a la que girarán los motores.

unidades

Una velocityUnit o porcentaje válido.

Devoluciones: Ninguna.

// Spin MotorGroup1 forward at 100 rpm.
MotorGroup1.spin(forward, 100, rpm);

El comando spin(dir, voltaje, unidades) se utiliza para girar los motores en la dirección especificada para siempre a un voltaje especificado hasta que se utilice un comando de giro o detención, o se detenga el proyecto.

Parámetros

Descripción

director

Un directionType válido.

Voltaje

El voltaje al que girarán los motores.

unidades

Una voltageUnit válida.

Devoluciones: Ninguna.

// Spin MotorGroup1 forward at 100 volts.
MotorGroup1.spin(forward, 100, volt);

girarAPosicion()#

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

Este método se llama de las siguientes maneras:

El comando spinToPosition(rotation, units, waitForCompletion) se utiliza para girar los motores a una rotación absoluta en las unidades especificadas.

Parámetros

Descripción

rotación

La posición para hacer girar los motores.

unidades

Una rotationUnit válida.

esperar a que se complete

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.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 to the absolute position 1080 degrees.
MotorGroup1.spinToPosition(1080, degrees);

El comando spinToPosition(rotation, units, velocity, units_v, waitForCompletion) se utiliza para girar los motores a una rotación absoluta en las unidades especificadas.

Parámetros

Descripción

rotación

La posición para hacer girar los motores.

unidades

Una rotationUnit válida.

velocidad

La velocidad con la que girarán los motores.

unidades_v

Una velocityUnit válida.

esperar a que se complete

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.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 to the absolute position 1080 degrees 
// at 100 percent velocity.
MotorGroup1.spinToPosition(1080, degrees, 100,::pct);

girarPara()#

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

Este método se llama de las siguientes maneras:

El comando spinFor(time, units) se utiliza para girar los motores durante una duración específica.

Parámetros

Descripción

tiempo

La cantidad de tiempo durante el cual se deben girar los motores.

unidades

Una unidad de tiempo válida.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 for 10 seconds
MotorGroup1.spinFor(10, seconds);

El comando spinFor(dir, time, units) se utiliza para girar los motores durante una duración específica en una dirección específica.

Parámetros

Descripción

director

Un directionType válido.

tiempo

La cantidad de tiempo durante el cual se deben girar los motores.

unidades

Una unidad de tiempo válida.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 forward for 10 seconds
MotorGroup1.spinFor(forward, 10, seconds);

El comando spinFor(time, units, velocity, units_v) se utiliza para girar los motores durante una duración específica a una velocidad específica.

Parámetros

Descripción

tiempo

La cantidad de tiempo durante el cual se deben girar los motores.

unidades

Una unidad de tiempo válida.

velocidad

La velocidad con la que girarán los motores.

unidades_v

Una velocityUnit válida.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 for 10 seconds at 100 rpm.
MotorGroup1.spinFor(10, seconds, 100, rpm);

El comando spinFor(dir, time, units, velocity, units_v) se utiliza para girar los motores durante una duración específica a una velocidad específica en una dirección específica.

Parámetros

Descripción

director

Un directionType válido.

tiempo

La cantidad de tiempo durante el cual se deben girar los motores.

unidades

Una unidad de tiempo válida.

velocidad

La velocidad con la que girarán los motores.

unidades_v

Una velocityUnit válida.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 forward for 10 seconds at 100 rpm.
MotorGroup1.spinFor(forward, 10, seconds, 100, rpm);

El comando spinFor(rotation, units, waitForCompletion) se utiliza para girar los motores según una rotación específica. La rotación es relativa a la rotación actual del motor.

Parámetros

Descripción

rotación

El valor de rotación para que giren los motores.

unidades

Una rotationUnit válida.

esperar a que se complete

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.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 for 1000 degrees.
MotorGroup1.spinFor(1000, degrees);

El comando spinFor(dir, rotación, unidades, waitForCompletion) se utiliza para girar los motores en una dirección específica. La rotación es relativa a la rotación actual del motor.

Parámetros

Descripción

director

Un directionType válido.

rotación

El valor de rotación para que giren los motores.

unidades

Una rotationUnit válida.

esperar a que se complete

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.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 forward for 1000 degrees.
MotorGroup1.spinFor(forward, 1000, degrees);

El comando spinFor(rotación, unidades, velocidad, unidades_v, waitForCompletion) se utiliza para girar los motores en una rotación específica. La rotación es relativa a la rotación actual del motor.

Parámetros

Descripción

rotación

El valor de rotación para que giren los motores.

unidades

Una rotationUnit válida.

velocidad

La velocidad con la que girarán los motores.

unidades_v

Una velocityUnit válida.

esperar a que se complete

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.

Devuelve: un valor booleano que indica cuándo los motores han alcanzado la rotación objetivo.

// Spin MotorGroup1 for 1000 degrees at 25 rpm.
MotorGroup1.spinFor(1000, degrees, 25, rpm);

El comando spinFor(dir, rotación, unidades, velocidad, unidades_v, waitForCompletion) se utiliza para girar los motores en una dirección específica. La rotación es relativa a la rotación actual del motor.

Parámetros

Descripción

director

Un directionType válido.

rotación

El valor de rotación para que giren los motores.

unidades

Una rotationUnit válida.

velocidad

La velocidad con la que girarán los motores.

unidades_v

Una velocityUnit válida.

esperar a que se complete

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.

Devuelve: Un valor booleano que indica cuándo el motor ha alcanzado la rotación objetivo.

// Spin MotorGroup1 forard for 1000 degrees at 25 rpm.
MotorGroup1.spinFor(forward, 1000, degrees, 25, rpm);

detener()#

Este es un comando sin espera y permite que el siguiente comando se ejecute sin demora.

Este método se llama de las siguientes maneras:

El comando stop() se utiliza para detener los motores, estableciéndolos a velocidad cero y configurando el modo de frenado actual. El tipo de freno predeterminado es coast, a menos que se haya modificado previamente con el comando setStopping().

Devoluciones: Ninguna.

// Spin MotorGroup1 for 2.5 seconds.
MotorGroup1.spin(forward);

wait(2.5 seconds);

// Stop MotorGroup1.
MotorGroup1.stop();

El comando stop(mode) se utiliza para detener los motores que utilizan un tipo de freno específico.

Parámetros

Descripción

modo

Un brakeType válido.

Devoluciones: Ninguna.

// Spin MotorGroup1 for 2.5 seconds.
MotorGroup1.spin(forward);

wait(2.5 seconds);

// Stop MotorGroup1 using the hold Brake Type.
MotorGroup1.stop(hold);

contar()#

El comando count() devuelve el número de motores en un grupo de motores.

Devuelve: El número de motores en el grupo de motores.

establecerVelocidad()#

El comando setVelocity(velocity, units) se utiliza para establecer la velocidad predeterminada de los motores. Esta configuración de velocidad se utilizará en llamadas posteriores a cualquier función de movimiento si no se especifica una velocidad específica.

Parámetros

Descripción

velocidad

La nueva velocidad a establecer para los motores.

unidades

Una velocityUnit o porcentaje válido.

Devoluciones: Ninguna.

establecerDetener()#

El comando setStopping(mode) se utiliza para establecer el modo de parada de los motores. Este será el modo de parada utilizado cuando se invoque el comando stop() sin especificar un tipo de freno.

Parámetros

Descripción

modo

Un brakeType válido.

Devoluciones: Ninguna.

restablecerPosición()#

El comando resetPosition() restablece el valor de todos los codificadores del motor a 0.

Devoluciones: Ninguna.

establecerPosición()#

El comando setPosition(value, units) se utiliza para establecer el valor de todos los codificadores del motor en un valor específico. La posición devuelta por el comando position() se actualizará a este nuevo valor.

Parámetros

Descripción

valor

El nuevo valor a establecer para todos los codificadores del motor.

unidades

Una rotationUnit válida.

Devoluciones: Ninguna.

establecerTiempo de espera()#

El comando setTimeout(value, units) se utiliza para establecer el tiempo de espera de los comandos del grupo de motores. Si un motor no alcanza su posición comandada antes de que se complete el tiempo de espera, se detendrá.

Parámetros

Descripción

valor

El nuevo tiempo de espera a establecer para los motores.

unidades

Una unidad de tiempo válida.

Devoluciones: Ninguna.

está girando()#

El comando isSpinning() devuelve si algún motor está girando actualmente hacia un objetivo específico.

Devuelve: true si algún motor está encendido y está girando hacia un objetivo. false si todos los motores terminaron de girar hacia un objetivo.

estáHecho()#

El comando isDone() regresa si todos los motores terminaron de girar hacia un objetivo específico.

Devuelve: true si todos los motores terminaron de girar hacia un objetivo. false si algún motor está encendido y girando hacia un objetivo.

establecerMáximoTorque()#

Este método se llama de las siguientes maneras:

El comando setMaxTorque(value, units) se utiliza para establecer el torque máximo para los motores en torqueUnits.

Parámetros

Descripción

valor

El nuevo par máximo para los motores.

unidades

Una torqueUnit válida.

Devoluciones: Ninguna.

// Set maximum torque to 2 Newton Meters.
MotorGroup1.set_max_torque(2, Nm);

El comando setMaxTorque(value, units) se utiliza para establecer el torque máximo para los motores en currentUnits.

Parámetros

Descripción

valor

El nuevo par máximo para los motores.

unidades

La única unidad válida es “amp”.

Devoluciones: Ninguna.

// Set maximum torque to ,05 amps.
MotorGroup1.set_max_torque(.05, amp);

El comando setMaxTorque(value, units) se utiliza para establecer el torque máximo de un motor como un porcentaje.

Parámetros

Descripción

valor

El nuevo par máximo para los motores.

unidades

La única unidad válida es el “porcentaje”.

Devoluciones: Ninguna.

// Set maximum torque to 75 percent.
MotorGroup1.set_max_torque(75, percent);

dirección()#

El comando direction() devuelve la dirección actual en la que está girando el primer motor del grupo como un tipo de dirección.

Devuelve: Un valor directionType que representa la dirección actual en la que está girando el primer motor del grupo.

posición()#

El comando position(units) devuelve la rotación actual del primer motor del grupo.

Parámetros

Descripción

unidades

Una rotationUnit válida.

Devuelve: Un doble que representa la rotación actual del primer motor del grupo en las unidades especificadas.

velocidad()#

El comando velocity(units) devuelve la velocidad actual del primer motor del grupo.

Parámetros

Descripción

unidades

Una velocityUnit o porcentaje válido.

Devuelve: Un doble que representa la velocidad actual del primer motor del grupo en las unidades especificadas.

actual()#

El comando current(units) devuelve la corriente utilizada por el primer motor del grupo.

Parámetros

Descripción

unidades

Las únicas unidades válidas para la corriente son “amperio” o “porcentaje”.

Devuelve: Un doble que representa la corriente consumida por el primer motor del grupo en las unidades especificadas.

Voltaje()#

El comando voltage(units) devuelve el voltaje utilizado por el primer motor del grupo.

Parámetros

Descripción

unidades

La única unidad válida para el voltaje es “voltio”.

Devuelve: Un doble que representa el voltaje eléctrico del primer motor del grupo.

fuerza()#

El comando power(units) devuelve la potencia consumida por el primer motor del grupo.

Parámetros

Descripción

unidades

La única unidad válida para potencia es el “vatio”.

Devuelve: Un doble que representa la potencia actual del primer motor del grupo en las unidades especificadas.

esfuerzo de torsión()#

El comando torque(units) devuelve el torque del primer motor del grupo.

Parámetros

Descripción

unidades

Una torqueUnit válida.

Devuelve: El torque del primer motor del grupo en las unidades especificadas.

eficiencia()#

El comando efficiency(units) devuelve la eficiencia del primer motor del grupo.

Parámetros

Descripción

unidades

La única unidad válida para la eficiencia es el “porcentaje”.

Devuelve: La eficiencia del primer motor del grupo como porcentaje.

temperatura()#

El comando temperature(units) devuelve la temperatura del primer motor del grupo.

Parámetros

Descripción

unidades

Una unidad de temperatura o porcentaje válido.

Devuelve: La temperatura del primer motor del grupo.