motor#

Inicializando la clase del motor#

Un motor EXP se puede instanciar de diferentes maneras utilizando uno de los siguientes constructores:

Este constructor motor crea un objeto motor con gears cuyo valor predeterminado es ratio18_1.

Parámetro

Descripción

índice

El Puerto en el cerebro EXP al que está conectado el motor.

revertir

Un valor booleano para invertir la dirección en la que el motor gira hacia adelante. El valor predeterminado es “falso”.

// Construct a Motor connected to Port 1 which runs 
// in reverse.
motor Motor1 = motor(PORT1, true);

Este constructor motor crea un objeto motor con reverse predeterminado a false.

Parámetro

Descripción

índice

El Puerto en el cerebro EXP al que está conectado el motor.

engranajes

El gearSetting insertado en el motor.

// Construct a Motor connected to Port 1 with a 6:1
// High Speed Motor Cartridge.
motor Motor1 = motor(PORT1, ratio6_1);

Este constructor “motor” crea un objeto motor sin valores de parámetros predeterminados.

Parámetro

Descripción

índice

El Puerto en el cerebro EXP al que está conectado el motor.

engranajes

El gearSetting insertado en el motor.

revertir

Un valor booleano para invertir la dirección en la que el motor gira hacia adelante.

// Construct an EXP Motor with a 36:1 Torque Gear Cartridge
// that runs in reverse.
motor Motor1 = motor(PORT1, ratio36_1, true);

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

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 un motor 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 Motor1 forward.
Motor1.spin(forward);

El comando spin(dir, velocity, units) se utiliza para girar un motor 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á el motor.

unidades

Una velocityUnit o porcentaje válido.

Devoluciones: Ninguna.

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

El comando spin(dir, voltaje, unidades) se utiliza para girar un motor 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á el motor.

unidades

Una voltageUnit válida.

Devoluciones: Ninguna.

// Spin Motor1 forward at 100 millivolts.
Motor1.spin(forward, 100, voltageUnits::mV);

girarAPosicion()#

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

Este método se llama de las siguientes maneras:

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

Parámetros

Descripción

rotación

La posición a la que debe girar el motor.

unidades

Una rotationUnit válida.

esperar a que se complete

Determina si el comando bloqueará los comandos subsiguientes (waitForCompletion=true) o permitirá su ejecución inmediata (waitForCompletion=false). Si no se especifica, el valor predeterminado para el parámetro waitForCompletion es waitForCompletion=true.

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

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

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

Parámetros

Descripción

rotación

La posición a la que debe girar el motor.

unidades

Una rotationUnit válida.

velocidad

La velocidad con la que girará el motor.

unidades_v

Una velocityUnit válida.

esperar a que se complete

Determina si el comando bloqueará los comandos subsiguientes (waitForCompletion=true) o permitirá su ejecución inmediata (waitForCompletion=false). Si no se especifica, el valor predeterminado para el parámetro waitForCompletion es waitForCompletion=true.

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

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

girarPara()#

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

Este método se llama de las siguientes maneras:

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

Parámetros

Descripción

tiempo

La cantidad de tiempo durante el cual debe girar el motor.

unidades

Una unidad de tiempo válida.

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

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

El comando spinFor(dir, time, units) se utiliza para girar el motor 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 debe girar el motor.

unidades

Una unidad de tiempo válida.

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

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

Parámetros

Descripción

tiempo

La cantidad de tiempo durante el cual debe girar el motor.

unidades

Una unidad de tiempo válida.

velocidad

La velocidad con la que girará el motor.

unidades_v

Una velocityUnit válida.

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

El comando spinFor(dir, time, units, velocity, units_v) se utiliza para girar el motor 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 debe girar el motor.

unidades

Una unidad de tiempo válida.

velocidad

La velocidad con la que girará el motor.

unidades_v

Una velocityUnit válida.

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

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

El comando spinFor(rotation, units, waitForCompletion) se utiliza para girar el motor una vez. Esta rotación es relativa a la rotación actual del motor.

Parámetros

Descripción

rotación

El valor de rotación que debe girar el motor.

unidades

Una rotationUnit válida.

esperar a que se complete

Determina si el comando bloqueará los comandos subsiguientes (waitForCompletion=true) o permitirá su ejecución inmediata (waitForCompletion=false). Si no se especifica, el valor predeterminado para el parámetro waitForCompletion es waitForCompletion=true.

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

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

El comando spinFor(dir, rotación, unidades, waitForCompletion) se utiliza para girar el motor 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 que debe girar el motor.

unidades

Una rotationUnit válida.

esperar a que se complete

Determina si el comando bloqueará los comandos subsiguientes (waitForCompletion=true) o permitirá su ejecución inmediata (waitForCompletion=false). Si no se especifica, el valor predeterminado para el parámetro waitForCompletion es waitForCompletion=true.

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

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

El comando spinFor(rotation, units, velocity, units_v, waitForCompletion) se utiliza para girar el motor una vez. Esta rotación es relativa a la rotación actual del motor.

Parámetros

Descripción

rotación

El valor de rotación para que gire el motor.

unidades

Una rotationUnit válida.

velocidad

La velocidad con la que girará el motor.

unidades_v

Una velocityUnit válida.

esperar a que se complete

Determina si el comando bloqueará los comandos subsiguientes (waitForCompletion=true) o permitirá su ejecución inmediata (waitForCompletion=false). Si no se especifica, el valor predeterminado para el parámetro waitForCompletion es waitForCompletion=true.

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

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

El comando spinFor(dir, rotación, unidades, velocidad, unidades_v, waitForCompletion) se utiliza para girar el motor 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 que debe girar el motor.

unidades

Una rotationUnit válida.

velocidad

La velocidad con la que girará el motor.

unidades_v

Una velocityUnit válida.

esperar a que se complete

Determina si el comando bloqueará los comandos subsiguientes (waitForCompletion=true) o permitirá su ejecución inmediata (waitForCompletion=false). Si no se especifica, el valor predeterminado para el parámetro waitForCompletion es waitForCompletion=true.

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

// Spin Motor1 forard for 1000 degrees at 25 rpm.
Motor1.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 un motor, estableciéndolo a velocidad 0 y configurando el modo de parada actual. El tipo de freno predeterminado es coast, a menos que se haya modificado previamente con el comando setStopping().

Devoluciones: Ninguna.

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

wait(2.5 seconds);

// Stop Motor1.
Motor1.stop();

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

Parámetros

Descripción

modo

Un brakeType válido.

Devoluciones: Ninguna.

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

wait(2.5 seconds);

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

establecerVelocidad()#

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

unidades

Una velocityUnit o porcentaje válido.

Devoluciones: Ninguna.

setReversed()#

El comando setReversed(value) establece la dirección del motor que se invertirá. Construir un motor con el parámetro reverse establecido en true tiene el mismo resultado que Motor1.setReversed(true).

Parámetros

Descripción

valor

Un valor booleano para establecer si la dirección del motor se invierte o no.

Devoluciones: Ninguna.

establecerDetener()#

El comando setStopping(mode) se utiliza para establecer el modo de parada de un motor. Este será el modo de parada utilizado al ejecutar el comando stop().

Parámetros

Descripción

modo

Un brakeType válido.

Devoluciones: Ninguna.

restablecerPosición()#

El comando resetPosition() restablece el valor del codificador del motor a 0.

Devoluciones: Ninguna.

establecerPosición()#

El comando setPosition(value, units) se utiliza para establecer el valor del encoder de un 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

La nueva posición que debe establecerse para el codificador 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 motor. Si un motor no alcanza la posición indicada antes de que se complete el tiempo de espera, se detendrá.

Parámetros

Descripción

valor

El nuevo tiempo de espera que se debe establecer para el motor.

unidades

Una unidad de tiempo válida.

Devoluciones: Ninguna.

está girando()#

El comando isSpinning() regresa si el motor está girando actualmente hacia un objetivo específico.

Devuelve: true si el motor está encendido y está girando hacia un objetivo. false si terminó de girar hacia un objetivo.

estáHecho()#

El comando isDone() regresa si el motor terminó de girar hacia un objetivo específico.

Devuelve: true si el motor terminó de girar hacia un objetivo. false si 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 de un motor.

Parámetros

Descripción

valor

El nuevo par máximo para un motor.

unidades

Una torqueUnit válida.

Devoluciones: Ninguna.

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

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

Parámetros

Descripción

valor

El nuevo par máximo para un motor.

unidades

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

Devoluciones: Ninguna.

// Set maximum torque to ,05 amps.
Motor1.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 un motor.

unidades

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

Devoluciones: Ninguna.

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

convertirVelocidad()#

El comando convertVelocity(velocity, units, unitsout) convierte la velocidad en las unidades dadas a las unidades de salida dadas en función del engranaje del motor.

Parámetros

Descripción

velocidad

La velocidad a convertir.

unidades

Una velocityUnit válida para la velocidad de entrada.

unidades fuera

Una velocityUnit válida para la velocidad de salida.

Devuelve: Un doble que representa la velocidad convertida a las unidades de salida especificadas.

obtenerCartuchoDeMotor()#

El comando getMotorCartridge() devuelve la configuración del cartucho de engranaje para el motor.

Devoluciones: La configuración del cartucho de engranaje del motor.

dirección()#

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

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

posición()#

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

Parámetros

Descripción

unidades

Una rotationUnit válida.

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

velocidad()#

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

Parámetros

Descripción

unidades

Una velocityUnit o porcentaje válido.

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

actual()#

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

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 motor en las unidades especificadas.

Voltaje()#

El comando voltage(units) devuelve el voltaje eléctrico del motor.

Parámetros

Descripción

unidades

Una voltageUnit válida. El valor predeterminado es volt.

Devuelve: Un doble que representa el voltaje eléctrico del motor en las unidades especificadas.

fuerza()#

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

Parámetros

Descripción

unidades

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

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

esfuerzo de torsión()#

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

Parámetros

Descripción

unidades

Una torqueUnit válida.

Devuelve: El torque del motor en las unidades especificadas.

eficiencia()#

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

Parámetros

Descripción

unidades

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

Devuelve: La eficiencia del motor como porcentaje.

temperatura()#

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

Parámetros

Descripción

unidades

Una unidad de temperatura o porcentaje válido.

Devuelve: La temperatura actual del motor en las unidades especificadas.

instalado()#

El comando installed() regresa si el motor está conectado al cerebro EXP.

Devuelve: true si el motor está conectado al cerebro EXP. false si no lo está.