Pochopení dat inerciálního senzoru z VEX EXP Brain

VEX EXP Brain má vestavěný inerciální senzor. Inerciální senzor hlásí data o směru, rotaci, orientaci a zrychlení na palubní desce senzoru a ve VEXcode EXP. V tomto článku se podíváme na to, jaká data jsou prezentována na přístrojové desce senzoru. Další informace o přístupu k řídicí desce senzoru naleznete v tomto článku. 

Brain je zobrazen s otevřeným panelem inerciálních senzorů z nabídky Zařízení. Zobrazují se následující informace o inerciálním senzoru: směr, rotace, klopení, stoupání, stáčení, kalibrace, zrychlení na osách x, y a z a rychlost rotace na osách x, y a z.


Nadpis

Schéma robota shora dolů s kruhem a vyznačenými stupni, což naznačuje, že směr mozku se může pohybovat od 0 do 359,99 stupňů.

Směr je směr, kterým míří mozek, a je hlášen ve stylu kompasu pomocí stupňů od 0 do 359,99.  Bod 0 lze nastavit pomocí příkazů ve VEXcode EXP nebo kalibrací VEX EXP Brain. Tyto informace lze také použít k otočení vašeho robota čelem k určitému místu, když používáte hnací ústrojí.

Zobrazí se obrazovka Brain s otevřeným panelem inerciálních senzorů a zvýrazněnou hodnotou směru. Hodnota nadpisu je 21,38.

Na panelu senzoru na obrazovce Brain je nadpis první uvedenou hodnotou. Pokud na této obrazovce pohnete mozkem, uvidíte, jak se hodnoty aktualizují v reálném čase.

Mozek je zobrazen s otevřeným panelem inerciálních senzorů.

Toto je nastaveno na 0 stupňů, když je Brain zapnutý a inerciální senzor se zkalibruje. Pokud chcete resetovat směr vašeho mozku, vyberte zaškrtávací tlačítko na mozku. Tím se změní směr a rotace na 0 stupňů a všechna data na přístrojové desce senzoru inerciálního senzoru budou založena na tomto novém výchozím místě.

VEXcode EXP bloky VEXcode EXP Python
VEXcode EXP Otočte na blok záhlaví s textem Otočte na záhlaví o 90 stupňů.
drivetrain.turn_to_heading(90, DEGREES)
VEXcode EXP C++
int main()
{
Drivetrain.turnToHeading(90, stupňů);
}

Ve VEXcode EXP lze použít blok [Otočit na nadpis], příkaz turn_to_headingPython a příkaz turnToHeading C++ k otočení robota na konkrétní nadpis.

VEXcode EXP bloky VEXcode EXP Python
VEXcode EXP Nastaví blok záhlaví disku, který čte Nastavit záhlaví disku na 0 stupňů.
drivetrain.set_heading(0, DEGREES)
VEXcode EXP C++
int main()
{
Hnací ústrojí.setHeading(0, stupně);
}

Podobně jako u možnosti calibrate na řídicím panelu senzoru lze záhlaví nastavit během běhu projektu pomocí bloku [Set drive header], set_heading příkazu Python nebo setHeading příkazu C++.


Otáčení

Zobrazí se obrazovka Brain s otevřeným panelem inerciálních senzorů a zvýrazněnou hodnotou rotace. Hodnota rotace je záporných 1418,62.

Rotace je hlášena, když se robot otáčí kolem středové osy mozku. Počet stupňů hlášený na přístrojové desce snímače udává směr zatáčky a hodnotu stupňů zatáček, které Brain dokončil od kalibrace. Na rozdíl od nadpisu nejsou číselné hodnoty omezeny na 0-359,99 stupňů. Robot se může otáčet proti směru hodinových ručiček pro zápornou hodnotu nebo ve směru hodinových ručiček pro kladnou hodnotu a bude pokračovat ve zvyšování hodnoty stupňů, aby odpovídal počtu otáček inerciálního senzoru v hlášeních Mozku. 

Zobrazí se obrazovka Brain s otevřeným panelem inerciálních senzorů a zvýrazněnou hodnotou rotace. Hodnota rotace je záporných 1418,62.

Na panelu senzoru na obrazovce Brain je rotace druhou uvedenou hodnotou. Pokud na této obrazovce otočíte Mozkem, uvidíte, jak se hodnoty aktualizují v reálném čase. 

Mozek je zobrazen s otevřeným panelem inerciálních senzorů.

Toto je nastaveno na 0 stupňů, když je Brain zapnutý a inerciální senzor se zkalibruje. Pokud chcete resetovat rotaci vašeho robota, vyberte zaškrtávací tlačítko na mozku. Tím se změní směr a rotace na 0 stupňů a všechna data na přístrojové desce senzoru inerciálního senzoru budou založena na tomto novém výchozím místě.

VEXcode EXP bloky VEXcode EXP Python
VEXcode EXP Blok Otočení pro otočení, který zní Otočení pro otočení o 90 stupňů.
drivetrain.turn_to_rotation(90, DEGREES)
VEXcode EXP C++
int main()
{
Drivetrain.turnToRotation(90, stupňů);
}

Ve VEXcode EXP lze blok [Turn to rotation], turn_to_rotation Python příkaz a turnToRotation C++ použít k otočení robota o určitý počet stupňů.

VEXcode EXP bloky VEXcode EXP Python
VEXcode EXP Nastaví blok rotace disku, který má hodnotu Nastavit rotaci disku na 0 stupňů.
drivetrain.set_rotation(0, DEGREES)
VEXcode EXP C++
int main()
{
Hnací ústrojí.setRotation(0, stupně);
}

Podobně jako u možnosti kalibrace na řídicím panelu senzoru lze hodnotu rotace nastavit během běhu projektu pomocí bloku [Set drive rotation], set_rotationPython příkazu nebo setRotation C++.


Pitch, Roll a Yaw

Schéma Clawbota se zakřivenou šipkou označující jeho výšku. Směr sklonu si lze představit jako robota, který se dívá nahoru nebo dolů.

Pitch, roll a yaw jsou úhel orientace mozku podél zadané osy. Pitch představuje osu y a úhel naklánění robota dopředu a dozadu. Hodnoty sklonu se pohybují od -90 stupňů do 90 stupňů. 

Schéma Clawbota se zakřivenou šipkou označující jeho Roll. Směr otáčení si lze představit jako převrácení robota na bok.

Roll představuje osu x a úhel naklánění robota doleva a doprava. Hodnoty pro náklon se pohybují od -180 stupňů do 180 stupňů. 

Schéma Clawbota se zakřivenou šipkou označující jeho směr otáčení. Směr stáčení si lze představit jako pohled robota doleva a doprava.

Yaw představuje osu z a úhlovou rotaci robota. Hodnoty vybočení se pohybují od -180 stupňů do 180 stupňů.

Zobrazí se obrazovka Brain s otevřeným panelem inerciálních senzorů a zvýrazněnými hodnotami klopení, stoupání a stáčení.

Naklonění, náklon a stáčení jsou zobrazeny na palubní desce snímače pod kurzem a rotací.


Zrychlení na osách x, y a z

Zobrazí se obrazovka Brain s otevřeným panelem inerciálních senzorů a zvýrazněnými hodnotami zrychlení na osách x, y a z. Tyto hodnoty jsou v Dashboardu označeny jako ax, ay a az.

Zrychlení sekce na přístrojové desce senzoru hlásí hodnotu zrychlení inerciálního senzoru podél zadané osy. Zrychlení podél os x, ya z je zobrazeno na přístrojové desce snímače vpravo pomocí zkratek „ax“, „ay“ a „az“. Každý z těchto údajů uvádí rozsah od -4,0 do 4,0 Gs.

Zatímco mozek spočívá na povrchu, uvidíte hodnotu zhruba -1,0 Gs. je to způsobeno gravitační silou působící na mozek v klidu.


Rychlost otáčení na osách x, yaz

Zobrazí se obrazovka Brain s otevřeným panelem inerciálních senzorů a zvýrazněnými hodnotami rychlosti otáčení na osách x, y a z. Tyto hodnoty jsou v Dashboardu označeny jako gx, gy a gz.

Rychlost gyroskopu sekce na přístrojové desce senzoru hlásí hodnotu rychlosti rotace inerciálního senzoru podél zadané osy. Rychlost otáčení podél os x, ya z je zobrazena na přístrojové desce snímače vpravo pomocí zkratek „gx“, „gy“ a „gz“. Každý z nich hlásí rozsah od -1000,0 do 1000,0 stupňů za sekundu.

VEXcode EXP bloky VEXcode EXP Python
Blok rychlosti gyroskopu VEXcode EXP, který čte rychlost gyroskopu BrainInertial v ose x.
brain_inertial.gyro_rate(AxisType.XAXIS, VelocityUnits.DPS)
VEXcode EXP C++
int main()
{
BrainInertial.gyroRate(xaxis, dps)
}

Ve VEXcode EXP lze blok (Gyro rate), gyro_ratePython příkaz a gyroRate C++ použít k hlášení rychlosti rotace konkrétní osy, když běží projekt.

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

Last Updated: