Movimiento#
Introducción#
Los motores controlan cómo se mueven las partes de un robot. Los motores se pueden usar para levantar un brazo, girar una garra, girar una rueda o mover otra parte de una construcción. Dos motores pueden trabajar juntos como un tren motriz para mover y girar todo el robot.
Cada motor está configurado en la ventana Dispositivos. Dependiendo de la construcción, los nombres de los motores y las direcciones pueden cambiar. Por ejemplo, la versión Competition Advanced 2.0 tiene un motor llamado ArmMotor, con direcciones arriba y abajo. Un robot personalizado puede usar diferentes nombres de motores o direcciones.
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.
Hay muchas maneras de codificar motores. A continuación se muestra una lista de todos los bloques de movimiento:
Acciones — Motores de parada y giro.
motor giratorio — Hace girar un motor hacia adelante o hacia atrás para siempre.
motor DE giro para — Hace girar un motor para una distancia específica.
girar el motor a la posición — gira un motor a una posición específica.
Stop motor — Detiene el giro de un motor.
Ajustes — Ajuste los ajustes del motor.
set motor position — Cambia la posición actual del motor a un nuevo valor.
establecer velocidad del motor — Le dice a un motor qué tan rápido debe girar.
configurar parada del motor — Establece cómo un motor dejará de moverse: frenando, deslizándose o sosteniendo.
set motor max torque — Establece la fuerza con la que se permite que un motor empuje mientras gira.
set motor timeout — Establece cuántos segundos intentará un motor terminar un movimiento.
Valores — Compruebe el estado del motor.
motor está listo — Informa si el motor ha terminado de moverse.
¿EL motor está girando? — Informa si el motor está girando.
posición del motor — Informa la posición actual del motor.
velocidad del motor — Informa qué tan rápido está girando el motor, como un porcentaje de -100% a 100%.
corriente del motor — Informa la cantidad de energía que el motor está utilizando de la batería, como un porcentaje de 0% a 100%.
Acciones#
motor de giro#
El bloque de apilamiento del * * motor giratorio * * hace girar un motor hacia adelante o hacia atrás para siempre. El motor continuará girando hasta que se le dé otra acción, como girar en una dirección diferente o detenerse.
girar [ArmMotor v] [arriba v]
Parámetros |
Descripción |
|---|---|
motor |
El motor para girar. Elija entre los motores configurados en la ventana Dispositivos. |
dirección |
La dirección en la que gira el motor. De forma predeterminada, las opciones son hacia adelante y hacia atrás. Las opciones de dirección pueden cambiar dependiendo de la configuración del motor. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Raise the ArmMotor, then stop.]
girar [ArmMotor v] [arriba v]
esperar [1] segundos
detener [ArmMotor v]
motor de giro para#
El motor giratorio para bloque de apilamiento hace girar un motor para una distancia específica. El giro es relativo a la posición actual del motor. El proyecto esperará hasta que el motor termine de girar antes de que se ejecute el siguiente bloque de la pila.
girar [ArmMotor v] [arriba v] por [90] [grados v] ▶
Parámetros |
Descripción |
|---|---|
motor |
El motor para girar. Elija entre los motores configurados en la ventana Dispositivos. |
dirección |
La dirección en la que gira el motor. De forma predeterminada, las opciones son hacia adelante y hacia atrás. Las opciones de dirección pueden cambiar dependiendo de la configuración del motor. |
distancia |
La distancia que gira el motor. Los grados usan enteros. Los giros pueden usar enteros o decimales. |
unidad |
La unidad de distancia: grados o giros. |
y no esperes |
Selecciona la flecha (▶) para expandir el bloque y decir y no esperes, para que el siguiente bloque de la pila se ejecute de inmediato. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Raise and lower the ArmMotor.]
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
esperar [1] segundos
girar [ArmMotor v] [abajo v] por [180] [grados v] ▶
girar el motor a la posición#
El bloque de pila girar el motor a la posición hace girar un motor a una posición específica.
La posición de un motor es la distancia a la que ha girado, medida en * * grados * * o giros. Un giro es igual a 360 grados. Al comienzo de un proyecto, la posición del motor se establece en 0 grados. La posición del motor también se puede configurar utilizando el bloque set motor position.
Los valores de posición son absolutos. Esto significa que la dirección del giro depende de la posición actual del motor.
girar [ArmMotor v] a la posición (90) [grados v] ▶
Parámetros |
Descripción |
|---|---|
motor |
El motor para girar. Elija entre los motores configurados en la ventana Dispositivos. |
cargo |
El valor de posición al que girará el motor. Los grados usan enteros. Los giros pueden usar enteros o decimales. |
unidad |
La unidad de posición: grados o giros. |
y no esperes |
Selecciona la flecha (▶) para expandir el bloque y decir y no esperes, para que el siguiente bloque de la pila se ejecute de inmediato. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Return ArmMotor to 0 degrees after raising.]
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
esperar [1] segundos
girar [ArmMotor v] a la posición [0] [grados v] ▶
motor de parada#
El bloque de apilamiento * * Stop motor * * detiene el giro de un motor.
detener [ArmMotor v]
Parámetros |
Descripción |
|---|---|
motor |
El motor para detenerse. Elija entre los motores configurados en la ventana Dispositivos. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Raise the ArmMotor.]
girar [ArmMotor v] [arriba v]
esperar [1] segundos
detener [ArmMotor v]
Ajustes#
ajustar la posición del motor#
La posición de un motor es la distancia a la que ha girado, medida en * * grados * * o giros. Un giro es igual a 360 grados. El bloque de apilamiento * * set motor position * * cambia la posición actual del motor a un nuevo valor.
Por ejemplo, si un motor ha girado a 180 grados, ajustar la posición a 0 grados restablecerá esa posición de 180 a 0 grados. Entonces el motor puede girar a posiciones basadas en ese nuevo valor.
establecer posición de [ArmMotor v] a (0) [grados v]
Parámetros |
Descripción |
|---|---|
motor |
El motor para ajustar la posición. Elija entre los motores configurados en la ventana Dispositivos. |
cargo |
El valor de posición a establecer para el motor. Los grados usan enteros. Los giros pueden usar enteros o decimales. |
unidad |
La unidad de posición: grados o giros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Return ArmMotor to 0 degrees after raising.]
establecer posición de [ArmMotor v] a [0] [grados v]
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
esperar [1] segundos
girar [ArmMotor v] a la posición [0] [grados v] ▶
establecer velocidad del motor#
El bloque de apilamiento establecer velocidad del motor le dice a un motor qué tan rápido debe girar. Un porcentaje más alto hace que el motor gire más rápido y un porcentaje más bajo hace que el motor gire más lento.
Cada proyecto comienza con cada motor girando al 50% de velocidad por defecto.
Nota: Una velocidad más alta hace que el motor gire más rápido, pero puede ser menos preciso. Una velocidad más baja hace que el motor gire más lento, pero puede ser más preciso.
establecer velocidad de [ArmMotor v] a [50] %
Parámetros |
Descripción |
|---|---|
motor |
El motor para ajustar la velocidad. Elija entre los motores configurados en la ventana Dispositivos. |
velocidad |
La velocidad para girar es de 0% a 100%. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor at different velocities.]
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
esperar [1] segundos
[Move slow.]
establecer velocidad de [ArmMotor v] a [20] %
girar [ArmMotor v] [abajo v] por [180] [grados v] ▶
esperar [1] segundos
[Move fast.]
establecer velocidad de [ArmMotor v] a [100] %
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
configurar parada del motor#
El bloque de apilamiento * * set motor Stoping * * establece cómo dejará de moverse un motor: frenando, desplazándose por inercia o sosteniendo.
establecer parada de [ArmMotor v] a [freno v]
Parámetros |
Descripción |
|---|---|
motor |
El motor para establecer el comportamiento de parada. Elija entre los motores configurados en la ventana Dispositivos. |
conducta de detención |
Cómo se detendrá el motor:
|
Por ejemplo, si se utiliza una compilación Competition Advanced 2.0 y ArmMotor está configurado para mantenerse, el motor mantendrá el brazo en su posición actual hasta que se produzca otro movimiento del brazo. Esto significa que el motor funcionará contra la gravedad para mantener el brazo en el aire si el motor se detuvo con el brazo levantado.
Si no se utiliza este bloque, el motor utilizará el freno al detenerse.
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor, then coast to a stop.]
establecer velocidad de [ArmMotor v] a [20] %
establecer parada de [ArmMotor v] a [deslizamiento v]
girar [ArmMotor v] [arriba v]
esperar [1] segundos
detener [ArmMotor v]
establecer el par máximo del motor#
El par es una fuerza de giro. Muestra la fuerza con la que un motor puede empujar o tirar cuando gira.
El bloque de apilamiento establecer el par máximo del motor establece el par máximo que se le permite usar a un motor.
Un porcentaje más alto permite que el motor empuje con más fuerza, como cuando se levanta un objeto pesado. Un porcentaje más bajo limita la fuerza con la que el motor puede empujar. Esto puede ayudar a proteger el robot si el motor se atasca o llega al final de lo lejos que puede moverse.
Cada proyecto comienza con el par de cada motor al 50% por defecto.
establecer torque máximo de [ArmMotor v] a (50) %
Parámetros |
Descripción |
|---|---|
motor |
El motor para establecer el par máximo. Elija entre los motores configurados en la ventana Dispositivos. |
torque |
El par máximo que puede utilizar el motor es del 0% al 100%. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor at different torques.]
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
esperar [1] segundos
[Move with less torque.]
establecer torque máximo de [ArmMotor v] a [20] %
girar [ArmMotor v] [abajo v] por [180] [grados v] ▶
esperar [1] segundos
[Move with maximum torque.]
establecer torque máximo de [ArmMotor v] a [100] %
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
configurar el tiempo de espera del motor#
El bloque set motor timeout de la pila establece cuántos segundos intentará un motor completar un movimiento. Si el motor no puede terminar en ese tiempo, dejará de intentarlo y pasará al siguiente bloque de la pila. Esto evita que el motor se quede atascado en un movimiento.
establecer tiempo de espera de [ArmMotor v] a (1) segundos
Parámetros |
Descripción |
|---|---|
motor |
El motor para establecer el tiempo de espera. Elija entre los motores configurados en la ventana Dispositivos. |
tiempo |
El número de segundos que el motor puede intentar terminar un movimiento. Esto puede ser un número entero o un decimal. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Move ArmMotor as far as possible for 1 second before resetting.]
establecer posición de [ArmMotor v] a [0] [grados v]
establecer tiempo de espera de [ArmMotor v] a [1] segundos
girar [ArmMotor v] [arriba v] por [180] [grados v] ▶
girar [ArmMotor v] a la posición [0] [grados v] ▶
Valores#
motor está hecho?#
El motor está listo El bloque booleano informa si el motor ha terminado de moverse. Esto se puede utilizar para controlar el tiempo de otros comportamientos basados en el movimiento del motor.
Verdadero — El motor ha terminado de moverse.
Falso — El motor todavía está en movimiento.
Este bloque funciona junto con los siguientes bloques de movimiento que tienen el parámetro y no espere: motor de giro para y motor de giro a la posición.
<¿[ArmMotor v] terminó?>
Parámetros |
Descripción |
|---|---|
motor |
El motor para informar si ha terminado de moverse. Elija entre los motores configurados en la ventana Dispositivos. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Turn the Eye Sensor's light on while ArmMotor is moving.]
girar [ArmMotor v] [arriba v] por [180] [grados v] ◀ y no esperar
esperar [0.1] segundos
por siempre
si <¿[ArmMotor v] terminó?> entonces
establecer luz del ojo [apagado v]
si no
establecer luz del ojo [encendido v]
el motor está girando?#
¿El motor está girando? El bloque booleano informa si el motor está girando. Esto se puede utilizar para controlar el tiempo de otros comportamientos basados en el movimiento del motor.
Verdadero — El motor está girando.
Falso — El motor no está girando.
Este bloque funciona junto con los siguientes bloques de movimiento que tienen el parámetro y no espere: motor de giro para y motor de giro a la posición.
<¿[ArmMotor v] está girando?>
Parámetros |
Descripción |
|---|---|
motor |
El motor para informar si está girando. Elija entre los motores configurados en la ventana Dispositivos. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Turn the Eye Sensor's light on while ArmMotor is moving.]
girar [ArmMotor v] [arriba v] por [180] [grados v] ◀ y no esperar
esperar [0.1] segundos
por siempre
si <¿[ArmMotor v] está girando?> entonces
establecer luz del ojo [encendido v]
si no
establecer luz del ojo [apagado v]
posición del motor#
La posición de un motor es la distancia a la que ha girado, medida en grados o giros. El bloque indicador * * posición del motor * * informa la posición actual del motor.
Al comienzo de un 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 la otra dirección, la posición será negativa.
(posición de [ArmMotor v] en [grados v] :: custom-motion)
Parámetros |
Descripción |
|---|---|
motor |
El motor para reportar la posición de. Elija entre los motores configurados en la ventana Dispositivos. |
unidad |
La unidad para informar la posición del motor en: grados o giros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Display how far the ArmMotor moves after one second.]
establecer posición de [ArmMotor v] a [0] [grados v]
imprimir [Start: ] ▶
imprimir (posición de [ArmMotor v] en [grados v] :: custom-motion) ▶
mover cursor a la siguiente fila
girar [ArmMotor v] [arriba v]
esperar [1] segundos
detener [ArmMotor v]
imprimir [After: ] ▶
imprimir (posición de [ArmMotor v] en [grados v] :: custom-motion) ▶
velocidad del motor#
El bloque indicador * * velocidad del motor * * informa qué tan rápido está girando el motor, como un porcentaje de -100% a 100%.
Un valor positivo significa que el motor está girando hacia adelante. Un valor negativo significa que el motor está girando en reversa.
(velocidad de [ArmMotor v] en %)
Parámetros |
Descripción |
|---|---|
motor |
El motor para informar la velocidad de. Elija entre los motores configurados en la ventana Dispositivos. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Display the ArmMotor's velocity when it moves.]
imprimir [Resting: ] ▶
imprimir (velocidad de [ArmMotor v] en %) ▶
mover cursor a la siguiente fila
girar [ArmMotor v] [arriba v]
esperar [1] segundos
imprimir [Moving: ] ▶
imprimir (velocidad de [ArmMotor v] en %) ▶
detener [ArmMotor v]
corriente del motor#
El bloque indicador * * corriente del motor * * informa la cantidad de energía que el motor está utilizando de la batería, como un porcentaje de 0% a 100%.
Un valor de corriente más alto significa que el motor está utilizando más potencia. Esto puede suceder cuando el motor está levantando algo pesado, empujando contra un objeto o tratando de moverse cuando está atascado.
(corriente de [ArmMotor v] en %)
Parámetros |
Descripción |
|---|---|
motor |
El motor para reportar la corriente de. Elija entre los motores configurados en la ventana Dispositivos. |
Ejemplo
cuando inicie :: hat events
[Build Used: Competition Advanced 2.0]
[Display the motor's current when it moves.]
imprimir [Resting: ] ▶
imprimir (corriente de [ArmMotor v] en %) ▶
mover cursor a la siguiente fila
girar [ArmMotor v] [arriba v]
esperar [1] segundos
imprimir [Moving: ] ▶
imprimir (corriente de [ArmMotor v] en %) ▶
detener [ArmMotor v]