Motores y grupos de motores#

Introducción#

Los motores y grupos de motores controlan el movimiento de las partes de un robot. Un motor controla un Smart Motor configurado, mientras que un grupo de motores controla dos Smart Motors configurados para que se muevan en tándem. Los motores y grupos de motores se pueden usar para levantar un brazo, girar una garra, hacer girar una rueda o mover otra parte de la estructura. Dos motores pueden trabajar juntos como un…/drivetrain.mdde transmisión para mover y girar todo el robot.

Cada motor se configura en la ventana Dispositivos. Según la compilación, los nombres de los motores y las direcciones pueden variar. Un robot personalizado puede usar nombres o direcciones de motor diferentes.

Un motor VEX IQ (2.ª generación) que muestra la dirección de avance indicada por un signo más y una flecha que indica que está girando hacia la izquierda, o en sentido contrario a las agujas del reloj. Un motor VEX IQ (2.ª generación) que muestra la dirección inversa indicada por un signo menos y una flecha que indica que está girando hacia la derecha, o en el sentido de las agujas del reloj.

Por defecto, la dirección hacia adelante hace girar el motor en sentido contrario a las agujas del reloj, y la dirección hacia atrás lo hace girar en el sentido de las agujas del reloj. Si un motor está configurado para girar en sentido inverso en la ventana Dispositivos, se invertirán esas direcciones.

Existen muchas maneras de programar motores y grupos de motores. A continuación se muestra una lista de todos los bloques de Motores y Grupos de Motores:

Acciones: Detener y hacer girar motores y grupos de motores.

  • motor de giro — Hace girar un motor o grupo de motores hacia adelante o hacia atrás indefinidamente.

  • girar motor durante — Hace girar un motor o grupo de motores durante una distancia específica.

  • girar motor a posición — Gira un motor o grupo de motores a una posición específica.

  • detener motor — Detiene el giro de un motor o grupo de motores.

Ajustes: Ajuste la configuración del motor y del grupo de motores.

Valores: compruebe el estado del motor y del grupo de motores.

Comportamiento#

motor de giro#

El bloque motor giratorio hace girar un motor o grupo de motores hacia adelante o hacia atrás indefinidamente. El motor o grupo de motores seguirá girando hasta que se le indique otra acción, como girar en una dirección diferente o detenerse.

spin [Motor1 v] [forward v]

Parámetros

Descripción

motor

El motor o grupo de motores que se va a girar. Seleccione entre los motores configurados en la ventana Dispositivos.

dirección

La dirección de giro del motor o grupo de motores. Por defecto, las opciones son hacia adelante y hacia atrás. La dirección de giro puede variar según la configuración del motor.

Ejemplo

when started
[Spin the motor forward, then stop.]
spin [Motor1 v] [forward v]
wait (1) seconds
stop [Motor1 v]

motor de giro para#

El bloque spin motor for hace girar un motor o grupo de motores una distancia específica. El giro es relativo a la posición actual del motor o grupo de motores. El proyecto esperará a que el motor o grupo de motores termine de girar antes de ejecutar el siguiente bloque de la pila.

spin [Motor1 v] [forward v] for (90) [degrees v] ▶

Parámetros

Descripción

motor

El motor o grupo de motores que se va a girar. Seleccione entre los motores configurados en la ventana Dispositivos.

dirección

La dirección de giro del motor o grupo de motores. Por defecto, las opciones son hacia adelante y hacia atrás. La dirección de giro puede variar según la configuración del motor.

distancia

La distancia que gira el motor o grupo de motores. Los grados se expresan con números enteros. Las vueltas pueden expresarse con números enteros o decimales.

unidad

La unidad de distancia: grados o vueltas.

y no esperes

Seleccione la flecha ( ▶ ) para expandir el bloque y decir y no espere, de modo que el siguiente bloque en la pila se ejecutará inmediatamente.

Ejemplo

when started
[Spin the motor forward once, then reset.]
spin [Motor1 v] [forward v] for (90) [degrees v] ▶
spin [Motor1 v] [reverse v] for (90) [degrees v] ▶

motor de giro para posicionar#

El bloque de pila girar motor para posicionar hace girar un motor o un grupo de motores hasta una posición específica.

La posición de un motor o grupo de motores se mide en grados o vueltas. Una vuelta equivale a 360 grados. Al inicio del proyecto, la posición del motor se establece en 0 grados. También se puede configurar mediante el bloque establecer posición del motor.

Los valores de posición son absolutos. Esto significa que la dirección del giro depende de la posición actual del motor o grupo de motores.

spin [Motor1 v] to position (90) [degrees v] ▶

Parámetros

Descripción

motor

El motor o grupo de motores que se va a girar. Seleccione entre los motores configurados en la ventana Dispositivos.

posición

El valor de posición al que girará el motor o grupo de motores. Los grados se expresan con números enteros. Las vueltas pueden expresarse con números enteros o decimales.

unidad

La unidad de medida de la posición: grados o vueltas.

y no esperes

Seleccione la flecha ( ▶ ) para expandir el bloque y decir y no espere, de modo que el siguiente bloque en la pila se ejecutará inmediatamente.

Ejemplo

when started
[Spin the motor, then put the motor at half of a rotation.]
spin [Motor1 v] [forward v]
wait (2) seconds
spin [Motor1 v] to position (180) [degrees v] ▶

detener el motor#

El bloque parar motor detiene inmediatamente el motor o grupo de motores seleccionado.

stop [Motor1 v]

Parámetros

Descripción

motor

El motor o grupo de motores que se va a detener. Seleccione uno de los motores configurados en la ventana Dispositivos.

Ejemplo

when started
[Stop the motor after 1 second.]
spin [Motor1 v] [forward v]
wait (1) seconds
stop [Motor1 v]

Ajustes#

establecer la posición del motor#

La posición de un motor o grupo de motores se mide en grados o vueltas. Una vuelta equivale a 360 grados. El bloque establecer posición del motor cambia la posición actual del motor o grupo de motores a un nuevo valor.

Por ejemplo, si un motor ha girado 180 grados, al ajustar la posición a 0 grados, dicha posición volverá a su estado original. A partir de ahí, el motor podrá girar a posiciones que dependan de ese nuevo valor.

set [Motor1 v] position to (0) [degrees v]

Parámetros

Descripción

motor

El motor o grupo de motores cuya posición se desea configurar. Seleccione entre los motores configurados en la ventana Dispositivos.

posición

Valor de posición que se asignará al motor o grupo de motores. Los grados se pueden expresar con números enteros. Las vueltas pueden expresarse con números enteros o decimales.

unidad

La unidad de medida de la posición: grados o vueltas.

Ejemplo

when started
[Spin the motor to the new 0 position.]
set [Motor1 v] position to [180] [degrees v]
spin [Motor1 v] to position [0] [degrees v] ▶

establecer la velocidad del motor#

El bloque de pila establecer velocidad del motor indica a un motor o grupo de motores a qué velocidad debe girar. Un porcentaje mayor hace que el motor o grupo de motores gire más rápido, y un porcentaje menor hace que gire más lento.

Cada proyecto comienza con cada motor girando al 50% de su velocidad máxima por defecto.

Nota: Una mayor velocidad hace que el motor gire más rápido, pero puede ser menos preciso. Una menor velocidad hace que el motor gire más lento, pero puede ser más preciso.

set [Motor1 v] velocity to (50) [% v]

Parámetros

Descripción

motor

El motor o grupo de motores cuya velocidad se desea ajustar. Seleccione uno de los motores configurados en la ventana Dispositivos.

velocidad

La velocidad a la que girará el motor o grupo de motores. Porcentaje utiliza números enteros del 0% al 100%. RPM utiliza números enteros del 0% al 127.

unidad

La unidad de velocidad: % o rpm (revoluciones por minuto).

Ejemplo

when started
[Spin forward at the default velocity.]
spin [Motor1 v] [forward v] for (90) [turns v] ▶
[Spin slower.]
set [Motor1 v] velocity to (20) [% v]
spin [Motor1 v] [reverse v] for (90) [turns v] ▶
[Spin faster.]
set [Motor1 v] velocity to (100) [% v]
spin [Motor1 v] [forward v] for (90) [turns v] ▶

configurar la parada del motor#

El bloque de pila establecer parada del motor define cómo un motor o grupo de motores se detendrá: frenando, rodando por inercia o manteniéndose en posición de espera.

set [Motor1 v] stopping to [brake v]

Parámetros

Descripción

motor

El motor o grupo de motores cuyo comportamiento de parada se desea configurar. Seleccione uno de los motores configurados en la ventana Dispositivos.

comportamiento de detención

Cómo se detendrá el motor o grupo de motores:

  • freno — Se detiene inmediatamente.
  • desplazamiento por inercia — Disminuye la velocidad hasta detenerse.
  • mantener — Se detiene inmediatamente y mantiene la posición del motor.

Si no se utiliza este bloque, el motor utilizará el freno al detenerse.

establecer el par máximo del motor#

El par motor es una fuerza de giro. Indica la fuerza con la que un motor puede empujar o tirar al girar.

El bloque establecer par máximo del motor establece el par máximo que un motor o grupo de motores puede utilizar.

Un porcentaje mayor permite que el motor o grupo de motores empuje con más fuerza, como al levantar un objeto pesado. Un porcentaje menor limita la fuerza que puede ejercer el motor o grupo de motores. Esto puede ayudar a proteger al robot si el motor se atasca o alcanza el límite de su recorrido.

Cada proyecto comienza con el par motor de cada motor al 50% por defecto.

set [Motor1 v] max torque to [50] %

Parámetros

Descripción

motor

Motor o grupo de motores cuyo par máximo se desea configurar. Seleccione uno de los motores configurados en la ventana Dispositivos.

esfuerzo de torsión

El par máximo que puede utilizar el motor o grupo de motores varía del 0% al 100%.

Ejemplo

when started
[Spin the motor at the default torque.]
spin [Motor1 v] to position (200) [degrees v] ▶
wait (0.5) seconds
[Spin at a lower torque.]
set [Motor1 v] max torque to (20)%
spin [Motor1 v] to position (0) [degrees v] ▶
wait (0.5) seconds
[Spin at the maximum torque.]
set [Motor1 v] max torque to (100)%
spin [Motor1 v] to position (200) [degrees v] ▶

establecer el tiempo de espera del motor#

El bloque de pila set motor timeout establece cuántos segundos un motor o grupo de motores intentará completar un movimiento. Si el motor o grupo de motores no puede completarlo en ese tiempo, dejará de intentarlo y pasará al siguiente bloque de la pila. Esto evita que el motor o grupo de motores se quede atascado en un movimiento.

set [Motor1 v] timeout to (1) seconds

Parámetros

Descripción

motor

El motor o grupo de motores para el que se configurará el tiempo de espera. Seleccione uno de los motores configurados en la ventana Dispositivos.

tiempo

El número de segundos que el motor o grupo de motores puede intentar para completar un movimiento. Puede ser un número entero o decimal.

Ejemplo

when started
[Spin the motor forward for 1 second, then reset it.]
set [Motor1 v] timeout to (1) seconds
spin [Motor1 v] [forward v] for (5) [turns v] ▶
spin [Motor1 v] to position (0) [degrees v] ▶

Valores#

El motor está terminado#

El bloque booleano motor is done indica si el motor o el grupo de motores ha terminado de moverse. Esto permite controlar la sincronización de otras acciones en función del movimiento del motor o del grupo de motores.

  • Verdadero — El motor o grupo de motores ha terminado de moverse.

  • Falso — El motor o grupo motor sigue en movimiento.

Este bloque funciona junto con los siguientes bloques de movimiento que tienen el parámetro y no esperar: girar motor para y girar motor a posición.

<[Motor1 v] is done?>

Parámetros

Descripción

motor

El motor o grupo de motores que indicará si ha finalizado su movimiento. Seleccione uno de los motores configurados en la ventana Dispositivos.

Ejemplo

when started
[Drive forward until the motor is done spinning.]
spin [Motor1 v] [forward v] for (200) [degrees v] ◀ and don't wait
forever
if <[Motor1 v] is done?> then
stop driving
else
drive [forward v]

El motor está girando#

El bloque booleano el motor está girando indica si el motor o el grupo de motores está girando. Esto permite controlar la sincronización de otras acciones en función del movimiento del motor o del grupo de motores.

  • Verdadero — El motor o grupo motor está girando.

  • Falso — El motor o grupo de motores no está girando.

Este bloque funciona junto con los siguientes bloques de movimiento que tienen el parámetro y no esperar: girar motor para y girar motor a posición.

<[Motor1 v] is spinning?>

Parámetros

Descripción

motor

El motor o grupo de motores que indica si está girando. Seleccione uno de los motores configurados en la ventana Dispositivos.

Ejemplo

when started
[Move forward while the motor is spinning.]
spin [Motor1 v] [forward v] for (200) [degrees v] ◀ and don't wait
while <[Motor1 v] is spinning?>
drive [forward v]
fin
stop driving

posición del motor#

La posición de un motor o grupo de motores se mide en grados o vueltas. Una vuelta equivale a 360 grados. El bloque de informe de posición del motor informa la posición actual del motor o grupo de motores.

Al inicio del proyecto, la posición del motor se establece en 0 grados. Si el motor gira una vuelta completa hacia adelante, la posición será de 360 ​​grados o 1 vuelta. Si el motor gira en sentido contrario, la posición será negativa.

([Motor1 v] position in [degrees v])

Parámetros

Descripción

motor

El motor o grupo de motores cuya posición se desea informar. Seleccione entre los motores configurados en la ventana Dispositivos.

unidad

La unidad informa la posición del motor en: grados o vueltas.

Ejemplo

when started
[Display the motor's position after spinning.]
print ([Motor1 v] position in [degrees v]) on [Brain v] ◀ and set cursor to next row
spin [Motor1 v] [forward v]
wait (1) seconds
print ([Motor1 v] position in [degrees v]) on [Brain v] ▶
stop [Motor1 v]

velocidad del motor#

El bloque de informe de velocidad del motor informa qué tan rápido gira el motor o grupo de motores, como un porcentaje de -100% a 100% o como revoluciones por minuto (rpm) de -127 a 127.

([Motor1 v] velocity in [% v])

Parámetros

Descripción

motor

El motor o grupo de motores cuya velocidad se desea reportar. Seleccione uno de los motores configurados en la ventana Dispositivos.

unidad

La unidad para informar la velocidad del motor en: % o rpm (revoluciones por minuto).

Ejemplo

when started
[Display the motor's velocity from spinning.]
print ([Motor1 v] velocity in [rpm v]) on [Brain v] ◀ and set cursor to next row
spin [Motor1 v] [forward v]
wait (1) seconds
print ([Motor1 v] velocity in [rpm v]) on [Brain v] ▶
stop [Motor1 v]

corriente del motor#

El bloque de informe de corriente del motor indica cuánta corriente eléctrica consume el motor o grupo de motores seleccionado, medida en amperios de 0,0 a 1,2 A. La corriente es la cantidad de electricidad que fluye a través del motor o grupo de motores.

Un valor de corriente más alto significa que el motor o grupo de motores está consumiendo más corriente eléctrica. Esto puede ocurrir cuando el motor o grupo de motores levanta algo pesado, empuja contra un objeto o intenta moverse cuando está atascado.

Esto permite comprobar si el motor o el grupo de motores presenta dificultades durante el movimiento. Si la corriente se mantiene alta, el motor podría calentarse o consumir energía de forma menos eficiente.

([Motor1 v] current in [amps v])

Parámetros

Descripción

motor

El motor o grupo de motores del que se desea informar la corriente. Seleccione entre los motores configurados en la ventana Dispositivos.

unidad

La unidad para informar la corriente en: amperios.

Ejemplo

when started
[Display the motor's current from spinning.]
set print precision to [0.01 v] on [Brain v]
print ([Motor1 v] current in [amps v]) on [Brain v] ◀ and set cursor to next row
spin [Motor1 v] [forward v]
wait (1) seconds
print ([Motor1 v] current in [amps v]) on [Brain v] ▶
stop [Motor1 v]