Transmisión#
Introducción#
El robot VEX IQ (segunda generación) utiliza un sistema de transmisión para desplazarse y girar. Este sistema se compone de motores y ruedas que trabajan conjuntamente para mover el robot.
Un sistema de transmisión configurado puede usar un sensor giroscópico conectado (Inertial.md), el sensor inercial integrado del sistema (Inertial.md) o ningún sensor. Cuando se usa un sensor, el sistema de transmisión lo utiliza para ayudar al robot a moverse y girar con precisión. Al inicio de cada proyecto, el sistema de transmisión calibra el sensor automáticamente. Mantenga el robot inmóvil durante aproximadamente 2 segundos durante la calibración para que pueda moverse y girar correctamente.
Existen muchas maneras de programar el sistema de transmisión. A continuación se muestra una lista de todos los bloques del sistema de transmisión:
Acciones: Mover y girar el robot.
drive — Mueve el robot hacia adelante o hacia atrás indefinidamente.
drive for — Mueve el robot hacia adelante o hacia atrás una distancia específica.
giro — Gira el robot hacia la izquierda o hacia la derecha indefinidamente.
girar para — Gira el robot hacia la izquierda o hacia la derecha un número específico de grados.
girar rumbo — Gira el robot para que mire hacia un rumbo específico de -359 a 359 grados. El robot girará en la dirección más corta para alcanzar el rumbo objetivo.
girar a rotación — Gira el robot a una rotación específica.
detener conducción — Detiene el movimiento del robot.
Ajustes: Ajuste la configuración de la transmisión.
establecer velocidad de conducción — Indica al robot a qué velocidad debe conducir.
establecer velocidad de giro — Indica al robot a qué velocidad debe girar.
set drive stopping — Indica cómo el robot dejará de moverse: frenando, dejándose llevar por inercia o manteniéndose en reposo.
set drive timeout — Establece cuántos segundos el robot intentará terminar un movimiento.
establecer rumbo de conducción — Cambia el rumbo actual del robot a un nuevo rumbo.
establecer rotación de accionamiento — Cambia la rotación actual del robot a una nueva rotación.
Valores: comprobar el estado del movimiento.
el movimiento ha terminado — Informa si el robot ha terminado de moverse.
el accionamiento se está moviendo — Informa si el robot se está moviendo.
dirección de conducción — Informa la dirección actual del robot de 0 a 359 grados.
rotación de accionamiento — Informa la rotación actual del robot.
velocidad de conducción — Indica la velocidad a la que se desplaza el robot.
corriente de accionamiento — Informa cuánta corriente eléctrica está utilizando el sistema de transmisión.
Comportamiento#
conducir#
El bloque de accionamiento mueve el robot hacia adelante o hacia atrás indefinidamente. El robot seguirá moviéndose hasta que se le indique otra acción, como girar o detenerse.
drive [forward v]
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que se mueve el robot: hacia adelante o hacia atrás. |
Ejemplo
when started
[Drive forward, then stop.]
drive [forward v]
wait (2) seconds
stop driving
conducir para#
El bloque de la pila drive for mueve el robot hacia adelante o hacia atrás una distancia específica. El proyecto esperará a que el robot termine de moverse antes de ejecutar el siguiente bloque de la pila.
drive [forward v] for (200) [mm v] ▶
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que se mueve el robot: hacia adelante o hacia atrás. |
distancia |
La distancia que recorre el robot. Puede ser un número entero o decimal. |
unidad |
La unidad de distancia: mm (milímetros) o pulgadas. |
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
[Drive backward 500 mm (millimeters).]
drive [reverse v] for (500) [mm v] ▶
doblar#
El bloque de pila girar hace girar al robot hacia la izquierda o hacia la derecha indefinidamente. El robot seguirá girando hasta que se le asigne otra acción, como conducir o detenerse.
turn [right v]
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que gira el robot: izquierda o derecha. |
Ejemplo
when started
[Turn right, then stop.]
turn [right v]
wait (2) seconds
stop driving
girar para#
El bloque turn for hace girar el robot hacia la izquierda o hacia la derecha un número específico de grados. El giro es relativo a la posición actual del robot. El programa esperará a que el robot termine de girar antes de ejecutar el siguiente bloque.
turn [right v] for (90) degrees ▶
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que gira el robot: izquierda o derecha. |
ángulo |
El número de grados que gira el robot. Puede ser un número entero o decimal. |
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
[Turn left, then turn around to the right.]
turn [left v] for (90) degrees ▶
turn [right v] for (180) degrees ▶
girar al rumbo#
El rumbo es la dirección hacia la que apunta el robot, medida en grados. El bloque girar a rumbo hace que el robot gire para apuntar a un rumbo específico, desde -359 hasta 359 grados. El robot girará en la dirección más corta para alcanzar el rumbo deseado.
La dirección inicial del robot es de 0 grados.
El proyecto esperará a que el robot termine de girar antes de ejecutar el siguiente bloque de la pila.
turn to heading (90) degrees ▶
Parámetros |
Descripción |
|---|---|
título |
La dirección hacia la que debe apuntar el robot, en grados. Puede ser un número entero o decimal entre -359 y 359. |
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
[Turn to face the cardinal directions.]
turn to heading (90) degrees ▶
wait (2) seconds
turn to heading (180) degrees ▶
wait (2) seconds
turn to heading (270) degrees ▶
wait (2) seconds
turn to heading (0) degrees ▶
wait (2) seconds
pasar a rotación#
El bloque apilable girar para rotar hace que el robot gire a una rotación específica.
La rotación indica cuánto ha girado el robot, medida en grados. Al inicio de un proyecto, el valor de rotación se establece en 0 grados. La rotación también se puede configurar mediante el bloque establecer rotación de accionamiento.
Los valores de rotación son absolutos. Esto significa que la dirección del giro depende de la rotación actual del robot. Girar a la derecha aumenta la rotación, y girar a la izquierda la disminuye.
Por ejemplo, si el robot comienza en 0 grados y se le da una rotación de 720 grados, girará dos veces a la derecha. Si luego se le da una rotación de 360 grados, girará una vez a la izquierda, ya que 360 es menor que 720.
turn to rotation (90) degrees ▶
Parámetros |
Descripción |
|---|---|
rotación |
El valor de rotación, en grados, que alcanzará el robot. Puede ser un número entero o decimal. |
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
[Turn left, then spin in a circle clockwise and face right.]
turn to rotation (-90) degrees ▶
wait (2) seconds
turn to rotation (450) degrees ▶
deja de conducir#
El bloque de apilamiento detener conducción detiene el movimiento del robot.
stop driving
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
when started
[Drive forward, then stop.]
drive [forward v]
wait [4] seconds
stop driving
Ajustes#
establecer la velocidad de conducción#
El bloque establecer velocidad de conducción indica al robot a qué velocidad debe conducir. Una velocidad mayor hace que el robot conduzca más rápido y una velocidad menor hace que conduzca más despacio.
Todos los proyectos comienzan con el robot conduciendo al 50% de su velocidad por defecto.
Nota: Una mayor velocidad hace que el robot se desplace más rápido, pero puede ser menos preciso. Una menor velocidad hace que el robot se desplace más despacio, pero puede ser más preciso.
set drive velocity to (50) [% v]
Parámetros |
Descripción |
|---|---|
velocidad |
La velocidad de conducción varía del 0% al 100% al usar %. rpm (revoluciones por minuto) utiliza valores de 0 a 120. |
unidad |
La unidad de medida: % o rpm (revoluciones por minuto). |
Ejemplo
when started
[Drive forward at the default velocity.]
drive [forward v] for (100) [mm v] ▶
wait (1) seconds
[Move slower.]
set drive velocity to (20) [% v]
drive [forward v] for (100) [mm v] ▶
wait (1) seconds
[Move faster.]
set drive velocity to (100) [% v]
drive [forward v] for (100) [mm v] ▶
wait (1) seconds
establecer la velocidad de giro#
El bloque de pila establecer velocidad de giro le indica al robot a qué velocidad debe girar. Una mayor velocidad hace que el robot gire más rápido y una menor velocidad hace que gire más lento.
Todos los proyectos comienzan con el robot girando al 50% de su velocidad por defecto.
Nota: Una mayor velocidad hace que el robot gire más rápido, pero puede ser menos preciso. Una menor velocidad hace que el robot gire más despacio, pero puede ser más preciso.
set turn velocity to (50) [% v]
Parámetros |
Descripción |
|---|---|
velocidad |
La velocidad de giro varía del 0% al 100% al usar %. rpm (revoluciones por minuto) utiliza valores de 0 a 120. |
unidad |
La unidad de medida: % o rpm (revoluciones por minuto). |
Ejemplo
when started
[Turn at default velocity.]
turn [right v] for (100) degrees ▶
wait (1) seconds
[Turn slower.]
set turn velocity to (20) [% v]
turn [right v] for (100) degrees ▶
wait (1) seconds
[Turn faster.]
set turn velocity to (100) [% v]
turn [right v] for (100) degrees ▶
wait (1) seconds
Establecer la parada de la unidad#
El bloque de configuración set drive stopping establece cómo se detendrá el robot: frenando, dejándose llevar por inercia o manteniéndose en posición.
set drive stopping to [brake v]
Parámetros |
Descripción |
|---|---|
comportamiento de detención |
Cómo se detendrá el robot:
|
Si no se utiliza este bloque, el robot utilizará el freno al detenerse.
Ejemplo
when started
[Drive forward and coast to a stop.]
set drive velocity to (100) [% v]
set drive stopping to [coast v]
drive [forward v]
wait (2) seconds
stop driving
establecer el tiempo de espera de la unidad#
El bloque de pila set drive timeout establece cuántos segundos intentará el robot completar un movimiento. Si el robot no puede terminar en ese tiempo, dejará de intentarlo y pasará al siguiente bloque de la pila. Esto evita que el robot se quede atascado en un movimiento.
set drive timeout to (1) seconds
Parámetros |
Descripción |
|---|---|
tiempo |
El número de segundos que el robot puede intentar para completar un movimiento. Puede ser un número entero o decimal. |
Ejemplo
when started
[Drive forward for 1 second, then turn.]
set drive timeout to (1) seconds
drive [forward v] for (25) [inches v] ▶
turn [right v] for (90) degrees ▶
establecer el rumbo de la unidad#
El rumbo es la dirección hacia la que apunta el robot, medida en grados. El bloque de pila establecer rumbo de conducción cambia el rumbo actual del robot a un nuevo valor.
Por ejemplo, si el robot ha girado para mirar hacia la derecha, al establecer la orientación a 0 grados, esa posición mirando hacia la derecha se convierte en la nueva posición de 0 grados. Entonces, el robot puede girar a otras posiciones en función de esa nueva orientación.
set drive heading to (0) degrees
Parámetros |
Descripción |
|---|---|
título |
El valor de rumbo, en grados, que se debe configurar para el robot. Puede ser un número entero o decimal entre 0 y 359. |
Ejemplo
when started
[Turn to the left.]
set drive heading to (90) degrees
turn to heading (0) degrees ▶
establecer la rotación de la unidad#
La rotación indica cuánto ha girado el robot, medida en grados. Al inicio de un proyecto, el valor de rotación se establece en 0 grados. El bloque establecer rotación de accionamiento modifica la rotación actual del robot a un nuevo valor.
Por ejemplo, si el robot ha dado dos vueltas completas a la derecha, su valor de rotación será de 720 grados. Si se establece la rotación en 0 grados, esta volverá a su valor original. A partir de ahí, el robot podrá girar según ese nuevo valor.
set drive rotation to (0) degrees
Parámetros |
Descripción |
|---|---|
rotación |
El valor de rotación, en grados, que se debe configurar para el robot. Puede ser un número entero o decimal. |
Ejemplo
when started
[Spin counterclockwise two times.]
set drive rotation to (720) degrees
turn to rotation (0) degrees ▶
Valores#
El viaje ha terminado.#
El bloque booleano drive is done indica si el robot ha terminado de moverse. Esto permite controlar la sincronización de otras acciones en función del movimiento del robot.
Verdadero — El robot ha terminado de moverse.
Falso — El robot sigue en movimiento.
Este bloque funciona junto con los siguientes bloques de tren motriz que tienen el parámetro y no esperar: conducir para, girar para, girar a rumbo y girar a rotación.
<drive is done?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
when started
[Start spinning when the drive is complete.]
drive [forward v] for (200) [mm v] ◀ and don't wait
forever
if <drive is done?> then
turn [right v] for (360) degrees ▶
break
else
set cursor to row (1) column (1) on screen
print [Still Moving...] on screen ▶
wait (0.1) seconds
clear screen
El impulso está en marcha#
El bloque booleano drive is moving indica si el robot se está moviendo. Esto permite controlar la sincronización de otras acciones en función del movimiento del robot.
Verdadero — El robot se está moviendo.
Falso — El robot no se está moviendo.
Este bloque funciona junto con los siguientes bloques de tren motriz que tienen el parámetro y no esperar: conducir para, girar para, girar a rumbo y girar a rotación.
<drive is moving?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
when started
[Print that the robot is moving while it is still driving.]
drive [forward v] for (200) [mm v] ◀ and don't wait
while <drive is moving?>
set cursor to row (1) column (1) on screen
print [Still Moving...] on screen ▶
wait (0.1) seconds
clear screen
fin
set cursor to row (1) column (1) on screen
print [Done!] on screen ▶
rumbo de la unidad#
El rumbo es la dirección hacia la que apunta el robot, medida en grados. El bloque de informe rumbo de conducción informa el rumbo actual del robot, que oscila entre 0 y 359 grados.
La dirección inicial del robot es de 0 grados.
(drive heading in degrees)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
when started
[Display the heading after turning.]
turn [right v] for (450) degrees ▶
print (drive heading in degrees) on screen ◀ and set cursor to next row
rotación de la unidad#
La rotación indica cuánto ha girado el robot, medida en grados. Al inicio de un proyecto, el valor de rotación se establece en 0 grados. El bloque de informe drive rotation informa sobre la rotación actual del robot.
Girar a la derecha aumenta la rotación, y girar a la izquierda la disminuye. Por ejemplo, al dar dos vueltas completas a la derecha se registrará una rotación de 720 grados.
(drive rotation in degrees)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
when started
[Display the rotation after turning.]
turn [right v] for (450) degrees ▶
print (drive rotation in degrees) on screen ◀ and set cursor to next row
velocidad de accionamiento#
El bloque de informe de velocidad de conducción indica la velocidad a la que se desplaza el robot.
Puede indicar la velocidad como un porcentaje de -100% a 100%, o en rpm (revoluciones por minuto) de -127 a 127. Un valor positivo indica que el robot avanza. Un valor negativo indica que retrocede.
(drive velocity in [% v])
Parámetros |
Descripción |
|---|---|
unidad |
La unidad para informar la velocidad de accionamiento en: % (de -100% a 100%) o rpm (revoluciones por minuto, de -127 a 127). |
Ejemplo
when started
[Display the velocity as the robot is moving.]
drive [forward v]
wait (1) seconds
print (drive velocity in [% v]) on screen ◀ and set cursor to next row
stop driving
corriente de accionamiento#
El bloque de informe de corriente de transmisión informa cuánta corriente eléctrica está utilizando el sistema de transmisión, medida en amperios (amperios) de 0,0 a 1,2 A. La corriente es la cantidad de electricidad que fluye a través del sistema de transmisión.
Un valor de corriente más alto significa que el sistema de transmisión está utilizando más corriente eléctrica. Esto puede ocurrir cuando el robot empuja contra un objeto o intenta moverse cuando está atascado.
Esto puede utilizarse para comprobar si el sistema de transmisión tiene dificultades durante el movimiento. Si la corriente se mantiene alta, el sistema de transmisión puede sobrecalentarse o consumir energía de forma menos eficiente.
(drive current in [amps v])
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
when started
[Display the current as the robot is moving.]
set print precision to [0.01 v] on screen
drive [forward v]
wait (1) seconds
print (drive current in [amps v]) on screen ◀ and set cursor to next row
stop driving