Inercial#
Introducción#
El cerebro posee un sensor inercial incorporado. Este sensor puede medir cómo se mueve o gira el cerebro.
El sensor inercial utiliza dos componentes para lograr esto. El giroscopio mide los giros, como la dirección hacia la que apunta el cerebro y la amplitud de su giro. El acelerómetro mide los cambios en el movimiento, como acelerar, desacelerar o detenerse bruscamente durante un choque.
Los métodos inerciales pueden utilizarse para rastrear giros, restablecer valores de rumbo o rotación, medir el balanceo, la inclinación y la guiñada, e informar sobre la aceleración.
Existen muchas maneras de programar el sensor inercial. A continuación se muestra una lista de todos los métodos inerciales:
Orientación: Regrese y configure la orientación, el giro o la inclinación del cerebro.
get_heading— Devuelve la dirección hacia la que apunta el Cerebro, de 0 a 359 grados.get_rotation— Devuelve cuánto ha girado el Cerebro.get_yaw— Devuelve cuánto ha girado el Cerebro hacia la izquierda o hacia la derecha desde su posición inicial.get_roll— Devuelve cuánto se inclina el Cerebro hacia la izquierda o hacia la derecha.get_pitch— Devuelve cuánto se inclina el cerebro hacia adelante o hacia atrás.calibrate— Calibra el sensor inercial del cerebro.reset_heading— Restablece el rumbo actual del Cerebro a 0 grados.reset_rotation— Restablece la rotación actual del cerebro a 0 grados.set_heading— Establece el encabezado actual del Cerebro a un nuevo valor de encabezado.set_rotation— Establece la rotación actual del Cerebro a un nuevo valor de rotación.
Movimiento: Devuelve cómo se mueve el cerebro.
get_acceleration— Devuelve la rapidez con la que el Cerebro acelera o desacelera en el eje seleccionado.
Orientación#
get_heading#
Un rumbo es la dirección hacia la que apunta el Cerebro, medida en grados de 0 a 359. get_heading devuelve el rumbo actual del Cerebro.
El rumbo inicial es de 0 grados. Si el cerebro gira más allá de los 359 grados, el rumbo vuelve a 0 grados.
Uso:
inertial.get_heading()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
get_rotation#
La rotación indica cuánto ha girado el Cerebro, medida en grados. A diferencia de la dirección, la rotación puede superar los 359 grados o disminuir por debajo de 0 grados. Al inicio de un proyecto, el valor de rotación se establece en 0 grados. El comando get_rotation devuelve la rotación actual del Cerebro.
Girar a la derecha aumenta la rotación, y girar a la izquierda la disminuye. Por ejemplo, dos giros completos a la derecha producen una rotación de 720 grados. Un giro completo a la izquierda desde 0 grados produce una rotación de -360 grados.
Uso:
inertial.get_rotation()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
get_yaw#
El guiñada indica cuánto ha girado el Cerebro hacia la izquierda o hacia la derecha desde su posición inicial, medido en grados. get_yaw devuelve el valor actual de guiñada del Cerebro.
Girar a la derecha aumenta el valor de guiñada, y girar a la izquierda lo disminuye. La guiñada es útil para comprobar los giros a izquierda y derecha sin utilizar el valor de rumbo envuelto.
Uso:
inertial.get_yaw()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
get_roll#
El balanceo indica cuánto se inclina el cerebro hacia la izquierda o hacia la derecha, medido en grados. get_roll devuelve el valor de balanceo actual del cerebro.
Con el cerebro mirando hacia adelante, inclinarlo hacia la izquierda aumenta el valor de balanceo, e inclinarlo hacia la derecha lo disminuye.
Uso:
inertial.get_roll()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
get_pitch#
El pitch es cuánto se inclina el Brain hacia adelante o hacia atrás, medido en grados. get_pitch devuelve el valor de pitch actual del Brain.
Con el cerebro orientado hacia adelante, inclinarlo hacia adelante aumenta el valor del tono, e inclinarlo hacia atrás lo disminuye.
Uso:
inertial.get_pitch()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
calibrate#
calibrate calibra el sensor inercial del cerebro.
La calibración ayuda al sensor inercial a medir los giros correctamente. Mantenga el dispositivo inmóvil durante aproximadamente 2 segundos durante la calibración. Si el dispositivo se mueve durante la calibración, es posible que los valores de rumbo, rotación, guiñada, alabeo y cabeceo no se midan correctamente.
El proyecto esperará a que finalice la calibración antes de ejecutar la siguiente línea de código.
Uso:
inertial.calibrate()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
reset_heading#
Un rumbo es la dirección hacia la que apunta el Cerebro, medida en grados. reset_heading restablece el rumbo actual del Cerebro a 0 grados.
Una vez utilizado este método, la dirección actual del cerebro se convierte en la nueva dirección de 0 grados.
Uso:
inertial.reset_heading()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
reset_rotation#
La rotación es cuánto ha girado el Cerebro, medido en grados. reset_rotation restablece la rotación actual del Cerebro a 0 grados.
Una vez utilizado este método, el cerebro realiza un seguimiento de los giros futuros a partir del nuevo valor de rotación de 0 grados.
Uso:
inertial.reset_rotation()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
set_heading#
Un rumbo es la dirección hacia la que apunta el Cerebro, medida en grados de 0 a 359. set_heading cambia el rumbo actual del Cerebro a un nuevo valor de rumbo.
Por ejemplo, si el cerebro 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 dirección de 0 grados. Entonces, el cerebro puede seguir otras orientaciones basándose en esa nueva dirección.
Uso:
inertial.set_heading(heading)
Parámetros |
Descripción |
|---|---|
|
El valor del encabezado, en grados, que se establecerá para el Cerebro. Puede ser un número entero entre 0 y 359. |
set_rotation#
La rotación indica cuánto ha girado el Cerebro, medida en grados. A diferencia de la dirección, la rotación puede superar los 359 grados o disminuir por debajo de 0 grados. Al inicio de un proyecto, el valor de rotación se establece en 0 grados. El comando set_rotation cambia la rotación actual del Cerebro a un nuevo valor.
Por ejemplo, si el cerebro 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 cerebro podrá realizar el seguimiento de las rotaciones basándose en ese nuevo valor.
Usage:
inertial.set_rotation(rotation)
Parámetros |
Descripción |
|---|---|
|
El valor de rotación, en grados, que se configurará para el Cerebro. Puede ser un número entero. |
Movimiento#
get_acceleration#
La aceleración es la rapidez con la que el cerebro acelera o desacelera. get_acceleration devuelve la aceleración del cerebro en el eje seleccionado, de -4,0 G a 4,0 G.
G es una unidad que se utiliza para medir la aceleración. 1 G es aproximadamente la aceleración que sientes debido a la gravedad cuando estás sentado en reposo.
El valor puede ser positivo o negativo dependiendo de la dirección de la aceleración en el eje seleccionado. Las opciones de eje son X, Yy Z.
Uso:
inertial.get_acceleration(axis)
Parámetros |
Descripción |
|---|---|
|
El eje para medir la aceleración es: |
# Build Used: Super Code Base 2.0
def main():
# Display the acceleration after moving.
drivetrain.set_drive_velocity(100)
console.print("Resting: ")
console.print(inertial.get_acceleration(X), precision=2)
console.new_line()
wait(1, SECONDS)
drivetrain.drive_for(FORWARD, 500, MM, wait=False)
wait(0.20, SECONDS)
console.print("Startup: ")
console.print(inertial.get_acceleration(X), precision=2)
# Start threads — Do not delete
start_thread(main)