Czujnik obrotu#
Wstęp#
Czujnik obrotu mierzy obrót wału. Można go używać w dowolnym miejscu robota, w którym obraca się wał, nawet jeśli wał nie jest bezpośrednio podłączony do silnika.
Silnik ma wbudowany enkoder, który może śledzić jego własny obrót. Czujnik obrotu działa jak zewnętrzny enkoder, który może śledzić obrót oddzielnego wału.
Czujnik obrotu może zwracać kąt, położenie i prędkość wału. Kąt to bezwzględne położenie wału w zakresie od 0 do 359,99 stopnia. Nie resetuje się po uruchomieniu projektu ani po wyłączeniu robota. Pozycja śledzi, o ile stopni lub obrotów wał obrócił się do przodu lub do tyłu podczas projektu i można ją zresetować w razie potrzeby.
Czujnik obrotu jest kompatybilny ze standardowymi wałami VEX o średnicy 1/8 cala i 1/4 cala.

Ta strona używa rotation_sensor jako przykładowej nazwy czujnika obrotu. W razie potrzeby zastąp ją własną, skonfigurowaną nazwą.
Poniżej znajduje się lista dostępnych metod:
set_position— Ustawia aktualną pozycję czujnika obrotu na określoną wartość.kąt
angle— Zwraca aktualny kąt wału od 0 do 359,99 stopni.pozycja
position— Zwraca, o ile stopni lub obrotów obrócił się wał.velocity— Zwraca prędkość, z jaką obraca się wał.reset_position— Resetuje bieżącą pozycję czujnika obrotu do 0.set_reversed— Ustawia, czy wyjście czujnika obrotu jest odwrócone.changed— Rejestruje funkcję, która ma zostać uruchomiona za każdym razem, gdy zmieni się wartość czujnika obrotu.
Konstruktor — ręczna inicjalizacja czujnika obrotu.
Rotation— Tworzy czujnik obrotu.
ustaw_pozycję#
set_position ustawia aktualną pozycję czujnika obrotu na wartość.
Pozycja to odległość, o jaką obrócił się wał podczas projektu. Ustawienie pozycji zmienia bieżącą wartość pozycji bez poruszania wału.
Usage:
rotation_sensor.set_position(position, units)
Parametry |
Opis |
|---|---|
|
Wartość pozycji, którą należy przypisać czujnikowi obrotu. Może to być liczba całkowita lub dziesiętna. |
|
Opcjonalnie. Jednostka pozycji: |
# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)
kąt#
Kąt angle zwraca aktualny kąt wału jako wartość zmiennoprzecinkową.
Funkcja Angle podaje bezwzględną pozycję wału w jednym obrocie, od 0 do 359,99 stopnia. Nie resetuje się ona po uruchomieniu projektu ani wyłączeniu robota.
Usage:
rotation_sensor.angle(units)
Parametry |
Opis |
|---|---|
|
Opcjonalnie. Jednostka kąta: |
pozycja#
Pozycja position określa, jak daleko obrócił się wał.
W przeciwieństwie do kąta, położenie może wzrosnąć powyżej 359,99 stopnia lub zmniejszyć poniżej 0 stopni. Położenie śledzi, jak daleko wał obraca się do przodu lub do tyłu podczas projektu i może być resetowane w razie potrzeby.
Usage:
rotation_sensor.position(units)
Parametry |
Opis |
|---|---|
|
Opcjonalnie. Jednostka pozycji: |
prędkość#
velocity określa prędkość, z jaką obraca się wał.
Usage:
rotation_sensor.velocity(units)
Parametry |
Opis |
|---|---|
|
Jednostka prędkości: |
reset_pozycji#
reset_position resetuje bieżącą pozycję czujnika obrotu do 0.
Usage:
rotation_sensor.reset_position()
Parametry |
Opis |
|---|---|
Ta metoda nie ma żadnych parametrów. |
ustaw_odwrócony#
set_reversed ustawia, czy wyjście czujnika obrotu jest odwrócone.
Po odwróceniu wartości dodatnie stają się ujemne, a ujemne dodatnie. Ta metoda działa tak samo, jak ustawienie parametru reverse na True podczas korzystania z konstruktora Rotation .
Usage:
rotation_sensor.set_reversed(value)
Parametry |
Opis |
|---|---|
|
Czy odwrócić wyjście czujnika obrotu: |
zmieniony#
changed rejestruje funkcję, która ma zostać wywołana za każdym razem, gdy zmieni się wartość czujnika obrotu.
Usage:
rotation_sensor.changed(callback, arg)
Parametry |
Opis |
|---|---|
|
Wcześniej zdefiniowana funkcja, która jest uruchamiana, gdy zmienia się wartość czujnika obrotu. |
|
Opcjonalnie. Krotka zawierająca argumenty do przekazania do funkcji wywołania zwrotnego. Więcej informacji można znaleźć w Używanie funkcji z parametrami. |
def my_function():
brain.screen.print("Rotated!")
# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)
Konstruktor#
Konstruktory służą do ręcznego tworzenia obiektów o obrocie Rotation , na przykład podczas konfigurowania czujnika obrotu poza VEXcode.
Rotation#
Rotation tworzy obiekt czujnika obrotu.
Usage:
Rotation(smartport)
Parametr |
Opis |
|---|---|
|
Inteligentny port, do którego podłączony jest czujnik obrotu, zapisany jako |
|
Opcjonalnie. Czy odwrócić wyjście czujnika obrotu: |
# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)