Comprensione dei dati del sensore inerziale dal cervello VEX IQ (2a generazione).

Il cervello VEX IQ (2a generazione) ha un sensore inerziale integrato. Il sensore inerziale riporta i dati su rotta, rotazione, orientamento e accelerazione nella dashboard del sensore e nel VEXcode IQ. Questo articolo esaminerà quali dati vengono presentati nella dashboard del sensore.

Per ulteriori informazioni sull'accesso al dashboard del sensore, vedere questo articolo. 

inertial_sensor_dashboard_blank.png


Intestazione

inertial_sensor_heading.png

La direzione è la direzione in cui è rivolto il cervello e viene riportata in stile bussola utilizzando i gradi da 0 a 359,99.  Il punto 0 può essere impostato utilizzando i comandi in VEXcode IQ o calibrando VEX IQ Brain (2a generazione). Queste informazioni possono essere utilizzate anche per far girare il robot in modo che sia rivolto verso una posizione specifica quando si utilizza una trasmissione.

dashboard_with_heading_callout.png

Nella dashboard del sensore sullo schermo di Brain, la direzione è il primo valore elencato. Se muovi il Cervello mentre sei su questa schermata, vedrai i valori aggiornarsi in tempo reale.

Screen_Shot_2021-11-04_at_12.15.49_PM.png

Questo è impostato su 0 gradi quando il cervello è acceso e il sensore inerziale si calibra. Se vuoi reimpostare la direzione del tuo Cervello, seleziona il pulsante di spunta sul Cervello. Ciò ripristinerà la direzione e la rotazione a 0 gradi e tutti i dati sul pannello del sensore del sensore inerziale saranno basati su questa nuova posizione di partenza.

Blocchi IQ VEXcode VEXcode IQ Python
intestazione blocchi.png
drivetrain.turn_to_heading(90, GRADI)
VEXcode IQ C++
int main()
{
Drivetrain.turnToHeading(90, gradi);
}

In VEXcode IQ, il blocco [Gira alla direzione], il comando turn_to_headingPython e il comando turnToHeading C++ possono essere utilizzati per girare il robot verso una direzione specifica.

Blocchi IQ VEXcode VEXcode IQ Python
blocchi di intestazione 2.png
drivetrain.set_heading(0, GRADI)
VEXcode IQ C++
int main()
{
Drivetrain.setHeading(0, gradi);
}

Analogamente all'opzione di calibrazione nel dashboard del sensore, l'intestazione può essere impostata mentre il progetto viene eseguito utilizzando il blocco [Imposta intestazione unità], il comando set_heading Python o il comando setHeading C++.


Rotazione

intestazione_270__rotazione_-90.png

La rotazione viene segnalata quando il robot gira attorno all'asse centrale del cervello. La quantità di gradi riportata sul pannello del sensore indica la direzione della svolta e il valore in gradi delle svolte che Brain ha completato dalla calibrazione. A differenza della direzione, i valori numerici non sono limitati a 0-359,99 gradi. Il robot può ruotare in senso antiorario per un valore negativo o in senso orario per un valore positivo e continuerà ad aumentare il valore in gradi per corrispondere al numero di rotazioni segnalate dal sensore inerziale all'interno del cervello. 

rotazione_callout.png

Nella dashboard del sensore sullo schermo di Brain, la rotazione è il secondo valore elencato. Se ruoti il ​​Cervello mentre sei su questa schermata, vedrai i valori aggiornarsi in tempo reale. 

Screen_Shot_2021-11-04_at_12.15.49_PM.png

Questo è impostato su 0 gradi quando il cervello è acceso e il sensore inerziale si calibra. Se vuoi reimpostare la rotazione del tuo robot, seleziona il pulsante di spunta sul cervello. Ciò ripristinerà la direzione e la rotazione a 0 gradi e tutti i dati sul pannello del sensore del sensore inerziale saranno basati su questa nuova posizione di partenza.

Blocchi IQ VEXcode VEXcode IQ Python
blocchi rotazione1.png
drivetrain.turn_to_rotation(90, GRADI)
VEXcode IQ C++
int main()
{
Drivetrain.turnToRotation(90, gradi);
}

In VEXcode IQ, il blocco [Turn torotation], il comando turn_to_rotation Python e il comando turnToRotation C++ possono essere utilizzati per ruotare il robot per un numero specifico di gradi.

Blocchi IQ VEXcode VEXcode IQ Python
blocchi di rotazione2.png
drivetrain.set_rotation(0, GRADI)
VEXcode IQ C++
int main()
{
Drivetrain.setRotation(0, gradi);
}

Analogamente all'opzione di calibrazione nel dashboard del sensore, il valore di rotazione può essere impostato mentre il progetto viene eseguito utilizzando il blocco [Imposta rotazione unità], il comando set_rotationPython o il comando setRotation C++.


Beccheggio, rollio e imbardata

IQ_Gen2_Basebot_Pitch_copy.png

Beccheggio, rollio e imbardata sono l'angolo di orientamento del cervello lungo un asse specificato. Il passo rappresenta l'asse x e l'angolo del robot che si inclina in avanti e all'indietro. I valori per l'inclinazione vanno da -90 gradi a 90 gradi. 

IQ_Gen2_Basebot_Roll_copy.png

Il rotolo rappresenta l'asse y e l'angolo del robot che si inclina a destra e a sinistra. I valori per il rollio vanno da -180 gradi a 180 gradi. 

IQ_Gen2_Basebot_Yaw_copy.png

Yaw rappresenta l'asse z e la rotazione angolare del robot. I valori per l'imbardata vanno da -180 gradi a 180 gradi.

roll_pitch_yaw_callout.png

Beccheggio, rollio e imbardata vengono visualizzati sul pannello dei sensori sotto direzione e rotazione.

Screen_Shot_2021-11-04_at_2.31.36_PM.png

Il progetto di esempio Pitch, Roll, Yaw in VEXcode IQ può essere utilizzato per mostrare come rilevare l'angolo di orientamento del cervello lungo gli assi x, y e z. Il Touch LED sarà impostato su colori diversi a seconda di come cambia l'angolo di orientamento del Brain per indicare beccheggio, rollio e imbardata.

Per informazioni su come aprire un progetto di esempio in VEXcode IQ, vedere uno dei seguenti articoli.


Accelerazione sugli assi x, y e z

accel_x__y__z.png

L'accelerazione della sezione sul dashboard del sensore riporta il valore di accelerazione del sensore inerziale lungo un asse specificato. L'accelerazione lungo gli assi x, y e z viene mostrata sul pannello del sensore a destra utilizzando le abbreviazioni "ax", "ay" e "az". Ciascuno di questi riporta un intervallo compreso tra -4,0 e 4,0 G.

Mentre il cervello è appoggiato su una superficie, vedrai un valore di circa -1,0 G. ciò è dovuto alla forza di gravità sul cervello mentre è a riposo.

Screen_Shot_2021-11-04_at_2.51.22_PM.png

Il progetto di esempio Detecting Acceleration in VEXcode IQ può essere utilizzato per mostrare come rilevare l'accelerazione del cervello lungo gli assi x, y e z. Il Touch LED mostrerà colori diversi a seconda dell'asse in cui è inclinato il cervello.

Per informazioni su come aprire un progetto di esempio in VEXcode IQ, vedere uno dei seguenti articoli.


Velocità di rotazione sugli assi x, y e z

rotazione_x__y__z.png

La velocità giroscopica della sezione sul dashboard del sensore riporta il valore della velocità di rotazione del sensore inerziale lungo un asse specificato. La velocità di rotazione lungo gli assi x, y e z è mostrata sul pannello del sensore a destra utilizzando le abbreviazioni "gx", "gy" e "gz". Ciascuno di questi riporta un intervallo compreso tra -1000,0 e 1000,0 gradi al secondo.

Blocchi IQ VEXcode VEXcode IQ Python
cervello giroscopico.png
brain_inertial.gyro_rate(AxisType.XAXIS, VelocityUnits.DPS)
VEXcode IQ C++
int main()
{
BrainInertial.gyroRate(xaxis, dps)
}

In VEXcode IQ, il blocco (Gyro rate), il comando gyro_ratePython e il comando gyroRate C++ possono essere utilizzati per segnalare la velocità di rotazione di un asse specifico mentre un progetto è in esecuzione.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: