Tren de transmisión#
Introducción#
El tren motriz incluye ruedas y motores que controlan la forma en que el robot conduce y gira. Las transmisiones se pueden encontrar en compilaciones como Code Base 2.0, Super Car o un robot personalizado.
Las transmisiones utilizan el Sensor de inercia en el cerebro para detectar accidentes y ayudar al robot a moverse y girar con precisión. Al inicio de cada proyecto, la transmisión calibra el sensor de inercia automáticamente. Mantenga el robot quieto durante unos 2 segundos durante la calibración, para que el robot pueda moverse y girar correctamente.
Hay muchas maneras de codificar la transmisión. A continuación se muestra una lista de todos los bloques de transmisión:
Acciones: mueve y gira el robot.
Drive — Mueve el robot hacia adelante o hacia atrás para siempre.
drive for — Mueve el robot hacia adelante o hacia atrás una distancia específica.
conducir hasta — Mueve el robot hacia adelante o hacia atrás hasta que el sensor ocular detecta un objeto o el robot detecta un choque.
giro — Gira el robot hacia la izquierda o hacia la derecha indefinidamente.
turn for — Gira el robot a la izquierda o a la derecha un número específico de grados.
turn to heading — Gira el robot para enfrentar 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.
Stop Driving — Detiene el movimiento del robot.
Ajustes: ajusta los ajustes del tren motriz.
establecer velocidad DE conducción — Le dice al robot qué tan rápido conducir.
establecer velocidad DE giro — Le dice al robot qué tan rápido debe girar.
set drive stop — Indica cómo dejará de moverse el robot: frenando, desplazándose por inercia o sosteniéndose.
set drive timeout — Establece cuántos segundos intentará el robot terminar un movimiento.
set drive heading — Cambia el rumbo actual del robot a un nuevo rumbo.
set drive rotation — Cambia la rotación actual del robot a una nueva rotación.
Valores — Compruebe el estado del movimiento.
Drive is done — Informa si el robot ha terminado de moverse.
drive heading — Informa del rumbo actual del robot de 0 a 359 grados.
impulsar rotación — Informa la rotación actual del robot.
velocidad DE conducción: informa de la velocidad a la que conduce el robot, como un porcentaje del -100% al 100%.
Acciones#
unidad#
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.
conducir [adelante v]
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que se mueve el robot: hacia adelante o hacia atrás. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
conducir [adelante v]
esperar (2) segundos
detener conducción
unidad para#
El bloque de pila * * drive for * * mueve el robot hacia adelante o hacia atrás una distancia específica. El proyecto esperará hasta que el robot termine de moverse antes de que se ejecute el siguiente bloque de la pila.
conducir [adelante v] por [100] [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. Esto puede ser un número entero o un decimal. |
unidad |
La unidad de distancia: mm (milímetros) o pulgadas. |
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: Code Base 2.0]
[Drive back and forth.]
conducir [adelante v] por [100] [mm v] ▶
conducir [reversa v] por [4] [pulgadas v] ▶
conducir hasta#
El bloque de apilamiento drive until mueve el robot hacia adelante o hacia atrás hasta que el sensor ocular detecta un objeto o el robot detecta una colisión.
conducir [adelante v] hasta [objeto v] ▶
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que se mueve el robot: hacia adelante o hacia atrás. |
condición |
La condición que detiene el robot: objeto o bloqueo. |
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: Code Base 2.0]
[Turn right after a crash.]
conducir [adelante v] hasta [choque v] ▶
girar [derecha v] por (90) grados ▶
giro#
El bloque de apilamiento * * Turn * * gira el robot a la izquierda o a la derecha para siempre. El robot continuará girando hasta que se le dé otra acción, como conducir hasta detenerse.
girar [derecha v]
Parámetros |
Descripción |
|---|---|
dirección |
La dirección en la que gira el robot: * * izquierda * * o derecha. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Turn right and left, then stop.]
girar [derecha v]
esperar [2] segundos
girar [izquierda v]
esperar [2] segundos
detener conducción
girar para#
El bloque de apilamiento * * turn for * * gira 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 proyecto esperará hasta que el robot termine de girar antes de que se ejecute el siguiente bloque de la pila.
girar [derecha v] por (90) grados ▶
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. Esto puede ser un número entero o un decimal. |
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: Code Base 2.0]
[Turn right then left.]
girar [derecha v] por (90) grados ▶
girar [izquierda v] por (90) grados ▶
pasar al encabezado#
Un rumbo es la dirección hacia la que mira el cerebro del robot, medida en grados. El bloque de apilamiento * * girar a rumbo * * hace que el robot se enfrente a un rumbo específico de -359 a 359 grados. El robot girará en la dirección más corta para alcanzar el rumbo objetivo.
El rumbo inicial es 0 grados.

El proyecto esperará hasta que el robot termine de girar antes de que se ejecute el siguiente bloque de la pila.
girar al rumbo [90] grados ▶
Parámetros |
Descripción |
|---|---|
encabezado |
La dirección a la que debe mirar el robot como un número entero, de -359 a 359 grados. |
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: Code Base 2.0]
[Turn to face the cardinal directions.]
girar al rumbo [90] grados ▶
esperar [1] segundos
girar al rumbo [180] grados ▶
esperar [1] segundos
girar al rumbo [270] grados ▶
esperar [1] segundos
girar al rumbo [0] grados ▶
girar a rotación#
El bloque de apilamiento * * girar a rotación * * gira el robot a una rotación específica.
La rotación es cuánto ha girado el robot, medida en grados. Al comienzo de un proyecto, el valor de rotación se establece en 0 grados. La rotación también se puede configurar utilizando el bloque set drive rotation.
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 disminuye la rotación.
Por ejemplo, si el robot comienza a 0 grados y gira a una rotación de 720 grados, girará a la derecha dos veces. Si luego giras a una rotación de 360 grados, girará a la izquierda una vez, porque 360 es menos de 720.

El proyecto esperará hasta que el robot termine de girar antes de que se ejecute el siguiente bloque de la pila.
girar a la rotación (90) grados ▶
Parámetros |
Descripción |
|---|---|
rotación |
El valor de rotación, en grados, al que girará el robot. Esto puede ser un número entero. |
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: Code Base 2.0]
[Make one full turn to the right.]
girar a la rotación [360] grados ▶
[Make another full turn to the right.]
girar a la rotación [720] grados ▶
[Make one full turn to the left, returning to 360 degrees.]
girar a la rotación [360] grados ▶
dejar de conducir#
El bloque de apilamiento detener conducción detiene el movimiento del robot.
detener conducción
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
conducir [adelante v]
esperar (2) segundos
detener conducción
Ajustes#
establecer velocidad de accionamiento#
El bloque de apilamiento * * establecer velocidad de accionamiento * * le dice al robot qué tan rápido conducir. Un porcentaje más alto hace que el robot conduzca más rápido y un porcentaje más bajo hace que el robot conduzca más lento.
Cada proyecto comienza con el robot conduciendo al 50% de la velocidad por defecto.
Nota: Una velocidad más alta hace que el robot conduzca más rápido, pero puede ser menos preciso. Una velocidad más baja hace que el robot conduzca más lento, pero sea más preciso.
establecer velocidad de conducción a (50) %
Parámetros |
Descripción |
|---|---|
velocidad |
La velocidad para conducir va del 0% al 100%. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Drive at different velocities.]
conducir [adelante v] por [100] [mm v] ▶
esperar [1] segundos
[Drive slow.]
establecer velocidad de conducción a (20) %
conducir [adelante v] por [100] [mm v] ▶
esperar [1] segundos
[Drive fast.]
establecer velocidad de conducción a (100) %
conducir [adelante v] por [100] [mm v] ▶
establecer velocidad de giro#
El bloque de apilamiento * * establecer velocidad de giro * * le dice al robot qué tan rápido girar. Un porcentaje más alto hace que el robot gire más rápido y un porcentaje más bajo hace que el robot gire más lento.
Cada proyecto comienza con el robot girando a una velocidad del 50% por defecto.
Nota: Una velocidad más alta hace que el robot gire más rápido, pero puede ser menos preciso. Una velocidad más baja hace que el robot gire más lento, pero sea más preciso.
establecer velocidad de giro a [50]%
Parámetros |
Descripción |
|---|---|
velocidad |
La velocidad para girar es de 0% a 100%. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Turn at different velocities.]
girar [derecha v] por [180] grados ▶
esperar [1] segundos
[Turn fast.]
establecer velocidad de giro a [100]%
girar [derecha v] por [180] grados ▶
configurar parada de accionamiento#
El bloque de apilamiento * * set Drive Stoping * * establece cómo dejará de moverse el robot: frenando, desplazándose por inercia o sosteniéndose.
establecer parada de conducción a [freno v]
Parámetros |
Descripción |
|---|---|
conducta de detención |
Cómo se detendrá el robot:
|
Si no se utiliza este bloque, el robot utilizará el freno al detenerse.
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Drive, then coast to a stop.]
establecer velocidad de conducción a (100) %
establecer parada de conducción a [deslizamiento v]
conducir [adelante v]
esperar [2] segundos
detener conducción
establecer tiempo de espera de la unidad#
El bloque set drive timeout de la pila 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.
establecer tiempo de espera de conducción a [1] segundos
Parámetros |
Descripción |
|---|---|
tiempo |
El número de segundos que el robot puede intentar terminar un movimiento. Esto puede ser un número entero o un decimal. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Drive as far as possible for 1 second before turning right.]
establecer tiempo de espera de conducción a [1] segundos
conducir [adelante v] por [25] [pulgadas v] ▶
girar [derecha v] por [90] grados ▶
establecer encabezado de unidad#
Un rumbo es la dirección hacia la que mira el cerebro del robot, medida en grados. El bloque de pila * * establecer encabezado de unidad * * cambia el encabezado actual del robot a un nuevo valor de encabezado.
Por ejemplo, si el robot ha girado hacia la derecha, establecer el rumbo en 0 grados hace que esa posición orientada hacia la derecha sea la nueva de 0 grados. Luego, el robot puede pasar a otras posiciones en función de ese nuevo encabezado.
establecer rumbo de conducción a [0] grados
Parámetros |
Descripción |
|---|---|
encabezado |
El valor de rumbo, en grados, a establecer para el robot. Este puede ser un número entero del 0 al 359. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Face the new 0 degree heading.]
establecer rumbo de conducción a [90] grados
girar al rumbo [0] grados ▶
establecer rotación de accionamiento#
La rotación es cuánto ha girado el robot, medida en grados. Al comienzo de un proyecto, el valor de rotación se establece en 0 grados. El bloque de apilamiento * * set drive rotation * * cambia la rotación actual del robot a un nuevo valor.
Por ejemplo, si el robot ha realizado dos giros completos a la derecha, su valor de rotación será de 720 grados. Ajustar la rotación a 0 grados restablecerá esa rotación de 720 a 0 grados. Luego, el robot puede pasar a las rotaciones en función de ese nuevo valor.
establecer rotación de conducción a (0) grados
Parámetros |
Descripción |
|---|---|
rotación |
El valor de rotación, en grados, a establecer para el robot. Esto puede ser un número entero. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Spin counterclockwise two times.]
establecer rotación de conducción a [720] grados
girar a la rotación [0] grados ▶
Valores#
la unidad está lista#
La unidad está lista El bloque booleano informa si el robot ha terminado de moverse. Esto se puede utilizar para controlar el tiempo de otros comportamientos basados en el movimiento del robot.
Verdadero: el robot ha terminado de moverse.
Falso: el robot todavía se está moviendo.
Este bloque funciona junto con los siguientes bloques de transmisión que tienen el parámetro y no esperes: drive for, drive until, turn for, turn to heading y turn to rotation.
<¿conducción terminada?>
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Turn when the drivetrain is done moving forward.]
conducir [adelante v] por [100] [mm v] ◀ y no esperar
esperar [0.25] segundos
por siempre
si <¿conducción terminada?> entonces
girar [derecha v] por [180] grados ▶
interrumpir
si no
imprimir [Still moving...] ▶
esperar [0.1] segundos
limpiar todas las filas
rumbo de la unidad#
Un rumbo es la dirección hacia la que mira el cerebro del robot, medida en grados. El bloque del reportero de * * rumbo de la unidad * * informa que el rumbo va de 0 a 359 grados.
El rumbo inicial del robot es de 0 grados.

(rumbo de conducción en grados)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Display the heading while turning.]
girar [derecha v] por [450] grados ◀ y no esperar
por siempre
limpiar todas las filas
imprimir (rumbo de conducción en grados) ▶
esperar [0.1] segundos
rotación de la unidad#
La rotación es cuánto ha girado el robot, medida en grados. Al comienzo de un proyecto, el valor de rotación se establece en 0 grados. El bloque indicador * * Drive ROTATION * * informa de la rotación actual del robot.
Girar a la derecha aumenta la rotación y girar a la izquierda disminuye la rotación. Por ejemplo, hacer dos giros completos a la derecha informará una rotación de 720 grados.

(rotación de conducción en grados)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Display the rotation while turning.]
girar [derecha v] por [450] grados ◀ y no esperar
por siempre
limpiar todas las filas
imprimir (rotación de conducción en grados) ▶
esperar [0.1] segundos
velocidad de accionamiento#
El bloque indicador de * * velocidad de conducción * * informa de la velocidad a la que conduce el robot, como porcentaje del -100% al 100%.
Un valor positivo significa que el robot está avanzando. Un valor negativo significa que el robot está conduciendo en reversa.
(velocidad de conducción en %)
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Build Used: Code Base 2.0]
[Display the velocity of the robot before and while moving.]
imprimir [Start: ] ▶
imprimir (velocidad de conducción en %) ▶
mover cursor a la siguiente fila
conducir [adelante v]
esperar [0.5] segundos
imprimir [Moving: ] ▶
imprimir (velocidad de conducción en %) ▶
detener conducción