Snímač rotace#
Zavedení#
Snímač rotace měří rotaci hřídele. Lze jej použít kdekoli na robotu, kde se hřídel otáčí, i když tato hřídel není přímo připojena k motoru.
Motor má vestavěný enkodér, který dokáže sledovat svou vlastní rotaci. Snímač rotace funguje jako externí enkodér, který dokáže sledovat rotaci samostatné hřídele.
Snímač otáčení dokáže zobrazit úhel, polohu a rychlost hřídele. Úhel je absolutní poloha hřídele od 0 do 359,99 stupňů. Nevynuluje se při zahájení projektu ani při vypnutí robota. Poloha sleduje, o kolik stupňů nebo otáček se hřídel během projektu otočila dopředu nebo dozadu, a lze ji v případě potřeby vynulovat.
Snímač otáčení je kompatibilní se standardními hřídeli VEX o průměru 1/8 palce a 1/4 palce.

Tato stránka používá jako příklad názvu senzoru rotace rotation_sensor V případě potřeby jej nahraďte vlastním nakonfigurovaným názvem.
Níže je uveden seznam dostupných metod:
set_position— Nastaví aktuální polohu senzoru otáčení na specifickou hodnotu.angle— Vrátí aktuální úhel hřídele od 0 do 359,99 stupňů.position— Vrátí, o kolik se hřídel otočila ve stupních nebo otáčkách.velocity— Vrátí rychlost otáčení hřídele.reset_position— Obnoví aktuální polohu senzoru rotace na 0.set_reversed— Nastavuje, zda je výstup senzoru otáčení obrácený.changed— Registruje funkci, která se spustí při každé změně hodnoty senzoru rotace.
Konstruktor — Ruční inicializace senzoru rotace.
Rotation— Vytvoří senzor rotace.
set_position#
set_position nastaví aktuální polohu senzoru otáčení na hodnotu.
Poloha udává, o kolik se hřídel otočila během projektu. Nastavení polohy změní aktuální hodnotu polohy bez pohybu hřídele.
Usage:
rotation_sensor.set_position(position, units)
Parametry |
Popis |
|---|---|
|
Hodnota polohy, která se má přiřadit senzoru rotace. Může to být celé číslo nebo desetinné číslo. |
|
Volitelné. Jednotka polohy: |
# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)
úhel#
angle vrací aktuální úhel hřídele jako číslo s desetinnou čárkou.
Úhel udává absolutní polohu hřídele v rámci jedné otáčky, od 0 do 359,99 stupňů. Neresetuje se při zahájení projektu ani při vypnutí robota.
Usage:
rotation_sensor.angle(units)
Parametry |
Popis |
|---|---|
|
Volitelné. Jednotka úhlu: |
pozice#
position vrací, o kolik se hřídel otočila.
Na rozdíl od úhlu se poloha může zvětšit nad 359,99 stupňů nebo snížit pod 0 stupňů. Poloha sleduje, o kolik se hřídel během projektu otočí dopředu nebo dozadu, a lze ji v případě potřeby resetovat.
Usage:
rotation_sensor.position(units)
Parametry |
Popis |
|---|---|
|
Volitelné. Jednotka polohy: |
rychlost#
velocity vrací rychlost otáčení hřídele.
Usage:
rotation_sensor.velocity(units)
Parametry |
Popis |
|---|---|
|
Jednotka rychlosti: |
reset_position#
reset_position resetuje aktuální polohu senzoru rotace na 0.
Usage:
rotation_sensor.reset_position()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
set_reversed#
set_reversed nastavuje, zda je výstup senzoru otáčení obrácen.
Při obrácení se kladné hodnoty stanou zápornými a záporné hodnoty kladnými. Tato metoda funguje stejně jako nastavení parametru reverse na True při použití konstruktoru Rotation .
Usage:
rotation_sensor.set_reversed(value)
Parametry |
Popis |
|---|---|
|
Zda obrátit výstup senzoru otáčení: |
změněno#
changed registruje funkci, která se má volat při každé změně hodnoty senzoru rotace.
Usage:
rotation_sensor.changed(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se spustí při změně hodnoty senzoru rotace. |
|
Volitelné. N-tice obsahující argumenty, které se mají předat funkci zpětného volání. Další informace naleznete v části Použití funkcí s parametry. |
def my_function():
brain.screen.print("Rotated!")
# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)
Konstruktor#
Konstruktory se používají k ručnímu vytváření objektů Rotation , například při konfiguraci senzoru rotace mimo VEXcode.
Rotation#
Rotation vytvoří objekt Senzor rotace.
Usage:
Rotation(smartport)
Parametr |
Popis |
|---|---|
|
Inteligentní port, ke kterému je připojen snímač rotace, zapsaný jako |
|
Volitelné. Zda obrátit výstup senzoru otáčení: |
# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)