Compreendendo os dados do sensor inercial do cérebro VEX EXP

O VEX EXP Brain possui um sensor inercial integrado. O Sensor Inercial relata dados sobre rumo, rotação, orientação e aceleração no painel do sensor e no VEXcode EXP. Este artigo revisará quais dados são apresentados no painel do sensor. Para mais informações sobre como aceder ao painel do sensor, consulte este artigo. 

O cérebro é mostrado com o Painel de Controlo do Sensor Inercial aberto no menu Dispositivos. São apresentadas as seguintes informações do sensor inercial: Direção, Rotação, Inclinação, Arfagem, Guinada, Calibração, Aceleração nos eixos x, y e z e Taxa de rotação nos eixos x, y e z.


Cabeçalho

Diagrama de cima para baixo de um robô com um círculo e unidades de grau marcadas à volta, indicando que a direção do cérebro pode variar de 0 a 359,99 graus.

O rumo é a direção para a qual o Cérebro está voltado e é relatado no estilo de uma bússola usando graus de 0 a 359,99.  O ponto 0 pode ser definido usando comandos no VEXcode EXP ou calibrando o VEX EXP Brain. Essas informações também podem ser usadas para virar seu robô para um local específico ao usar um trem de força.

O ecrã do cérebro é apresentado com o Painel do Sensor Inercial aberto e com o valor de Direção destacado. O valor do cabeçalho é 21,38.

No painel do sensor na tela do Cérebro, título é o primeiro valor listado. Se você mover o Cérebro nesta tela, verá os valores atualizados em tempo real.

O cérebro é mostrado com o painel do sensor inercial aberto.

Isso é definido como 0 graus quando o Cérebro é ligado e o Sensor Inercial é calibrado. Se você deseja redefinir o rumo do seu Cérebro, selecione o botão de verificação no Cérebro. Isso redefinirá o rumo e a rotação para 0 graus, e todos os dados no painel do sensor do Sensor Inercial serão baseados neste novo local inicial.

Blocos EXP VEXcode VEXcódigo EXP Python
VEXcode EXP Bloco de direção que diz Virar para o rumo 90 graus.
drivetrain.turn_to_heading(90, GRAUS)
Código VEX EXP C++
int main()
{
Drivetrain.turnToHeading(90, graus);
}

No VEXcode EXP, o bloco [Turn to header], o comando turn_to_headingPython e o comando turnToHeading C++ podem ser usados ​​para virar o robô para um rumo específico.

Blocos EXP VEXcode VEXcódigo EXP Python
VEXcode EXP Define o bloco de direção da unidade que lê "Definir direção da unidade para 0 graus".
drivetrain.set_heading(0, GRAUS)
Código VEX EXP C++
int main()
{
Drivetrain.setHeading(0, graus);
}

Semelhante à opção de calibração no painel do sensor, o rumo pode ser definido enquanto o projeto está sendo executado usando o bloco [Definir título da unidade], o comando set_heading Python ou o comando setHeading C++.


Rotação

O ecrã do cérebro é apresentado com o Painel do Sensor Inercial aberto e o valor de Rotação destacado. O valor de rotação é negativo, 1418,62.

A rotação é relatada quando o robô gira em torno do eixo central do Cérebro. A quantidade de graus informada no painel do sensor indica a direção da curva e o valor dos graus das voltas que o Brain completou desde a calibração. Ao contrário do rumo, os valores numéricos não estão limitados a 0-359,99 graus. O robô pode girar no sentido anti-horário para um valor negativo ou no sentido horário para um valor positivo e continuará a aumentar o valor do grau para corresponder ao número de rotações que o Sensor Inercial dentro do Cérebro relata. 

O ecrã do cérebro é apresentado com o Painel do Sensor Inercial aberto e o valor de Rotação destacado. O valor de rotação é negativo, 1418,62.

No painel do sensor na tela do Cérebro, a rotação é o segundo valor listado. Se você girar o cérebro nesta tela, verá os valores atualizados em tempo real. 

O cérebro é mostrado com o painel do sensor inercial aberto.

Isso é definido como 0 graus quando o Cérebro é ligado e o Sensor Inercial é calibrado. Se você deseja redefinir a rotação do seu robô, selecione o botão de verificação no Cérebro. Isso redefinirá o rumo e a rotação para 0 graus, e todos os dados no painel do sensor do Sensor Inercial serão baseados neste novo local inicial.

Blocos EXP VEXcode VEXcódigo EXP Python
Bloco de rotação VEXcode EXP que diz "Rodar para rotação 90 graus".
drivetrain.turn_to_rotation(90, GRAUS)
Código VEX EXP C++
int main()
{
Drivetrain.turnToRotation(90, graus);
}

No VEXcode EXP, o bloco [Turn to rotation], o comando turn_to_rotation Python e o comando turnToRotation C++ podem ser usados ​​para girar o robô em um número específico de graus.

Blocos EXP VEXcode VEXcódigo EXP Python
VEXcode EXP Define o bloco de rotação da unidade que lê "Definir rotação da unidade para 0 graus".
drivetrain.set_rotation(0, GRAUS)
Código VEX EXP C++
int main()
{
Drivetrain.setRotation(0, graus);
}

Semelhante à opção de calibração no painel do sensor, o valor de rotação pode ser definido enquanto o projeto está sendo executado usando o bloco [Definir rotação da unidade], o comando set_rotationPython ou o comando setRotation C++.


Arremesso, rolamento e guinada

Esquema de um Clawbot com uma seta curva indicando a sua inclinação. A direção de inclinação pode ser imaginada como o robô a olhar para cima ou para baixo.

Inclinação, rotação e guinada são os ângulos de orientação do Cérebro ao longo de um eixo especificado. O passo representa o eixo y e o ângulo de inclinação do robô para frente e para trás. Os valores de inclinação variam de -90 graus a 90 graus. 

Esquema de um Clawbot com uma seta curva indicando o seu movimento de rolamento. A direção de rotação pode ser imaginada como o robô a rolar de lado.

O rolamento representa o eixo x e o ângulo de inclinação do robô para a esquerda e para a direita. Os valores para rotação variam de -180 graus a 180 graus. 

Esquema de um Clawbot com uma seta curva indicando o seu ângulo de guinada. A direção de guinada pode ser imaginada como o robô a olhar para a esquerda e para a direita.

Yaw representa o eixo z e a rotação angular do robô. Os valores de guinada variam de -180 graus a 180 graus.

O ecrã do sistema operativo é apresentado com o Painel de Controlo do Sensor Inercial aberto e com os valores de Rotação (Roll), Inclinação (Pitch) e Guinada (Yaw) destacados.

Inclinação, rotação e guinada são mostradas no painel do sensor abaixo da direção e rotação.


Aceleração nos eixos x, y e z

O ecrã do cérebro é apresentado com o Painel do Sensor Inercial aberto e com os valores de aceleração nos eixos x, y e z destacados. Estes valores são identificados como ax, ay e az no painel de controlo.

A seção de aceleração no painel do sensor informa o valor de aceleração do sensor inercial ao longo de um eixo especificado. A aceleração ao longo dos eixos x, y e z é mostrada no painel do sensor à direita usando as abreviações "ax", "ay" e "az". Cada um desses relatórios varia de -4,0 a 4,0 Gs.

Enquanto o cérebro estiver apoiado em uma superfície, você verá um valor de aproximadamente -1,0 Gs. isso se deve à força da gravidade no cérebro em repouso.


Taxa de rotação nos eixos x, y e z

O ecrã do cérebro é apresentado com o Painel do Sensor Inercial aberto e com os valores da taxa de rotação nos eixos x, y e z destacados. Estes valores são identificados como gx, gy e gz no painel de controlo.

A taxa de giroscópio da seção no painel do sensor informa o valor da taxa de rotação do sensor inercial ao longo de um eixo especificado. A taxa de rotação ao longo dos eixos x, y e z é mostrada no painel do sensor à direita usando as abreviações "gx", "gy" e "gz". Cada um desses relatórios varia de -1.000,0 a 1.000,0 graus por segundo.

Blocos EXP VEXcode VEXcódigo EXP Python
Bloco VEXcode EXP Gyro rate que lê a taxa de giroscópio BrainInertial do eixo x.
brain_inertial.gyro_rate(AxisType.XAXIS, VelocityUnits.DPS)
Código VEX EXP C++
int main()
{
BrainInertial.gyroRate(xaxis, dps)
}

No VEXcode EXP, o bloco (Gyro rate), o comando gyro_ratePython e o comando gyroRate C++ podem ser usados ​​para relatar a taxa de rotação de um eixo específico enquanto um projeto está em execução.

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

Last Updated: