Pyörimisanturi#
Johdanto#
Pyörintäanturi mittaa akselin pyörimistä. Sitä voidaan käyttää missä tahansa robotin osassa, jossa akseli pyörii, vaikka akseli ei olisikaan kytketty suoraan moottoriin.
Moottorissa on sisäänrakennettu enkooderi, joka voi seurata omaa pyörimistään. Pyörimisanturi toimii kuten ulkoinen enkooderi, joka voi seurata erillisen akselin pyörimistä.
Pyörimisanturi voi palauttaa akselin kulman, asennon ja nopeuden. Kulma on akselin absoluuttinen asento 0–359,99 astetta. Se ei nollaudu projektin käynnistyessä tai robotin sammuttamisen yhteydessä. Sijainti seuraa, kuinka monta astetta tai kierrosta akseli on pyörinyt eteen- tai taaksepäin projektin aikana, ja se voidaan nollata tarvittaessa.
Pyörimisanturi on yhteensopiva 1/8 tuuman ja 1/4 tuuman VEX-vakioakseleiden kanssa.

Tällä sivulla käytetään esimerkkinä pyörimisanturin nimeä rotation_sensor Korvaa se tarvittaessa omalla määritetyllä nimelläsi.
Alla on luettelo käytettävissä olevista menetelmistä:
set_position— Asettaa pyörimisanturin nykyisen sijainnin tiettyyn arvoon.angle— Palauttaa akselin nykyisen kulman 0–359,99 astetta.position— Palauttaa akselin kiertymisasteen asteina tai kierroksina.velocity— Palauttaa akselin pyörimisnopeuden.reset_position— Palauttaa pyörimisanturin nykyisen sijainnin arvoon 0.set_reversed— Määrittää, onko pyörimisanturin lähtö käänteinen.changed— Rekisteröi funktion suoritettavaksi aina, kun pyörimisanturin arvo muuttuu.
Konstructor — Alusta pyörimisanturi manuaalisesti.
Rotation— Luo kiertoanturin.
asetettu_sijainti#
set_position asettaa pyörimisanturin nykyisen sijainnin arvoon.
Sijainti ilmaisee, kuinka paljon akseli on kiertynyt projektin aikana. Sijainnin asettaminen muuttaa nykyistä sijaintiarvoa liikuttamatta akselia.
Usage:
rotation_sensor.set_position(position, units)
Parametrit |
Kuvaus |
|---|---|
|
Pyörimisanturille määritettävä sijaintiarvo. Tämä voi olla kokonaisluku tai desimaaliluku. |
|
Valinnainen. Sijaintiyksikkö: |
# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)
kulma#
angle palauttaa akselin nykyisen kulman liukulukuna.
Kulma ilmoittaa akselin absoluuttisen asennon yhden kierroksen aikana välillä 0 - 359,99 astetta. Se ei nollaudu projektin käynnistyessä tai robotin sammuttamisen yhteydessä.
Usage:
rotation_sensor.angle(units)
Parametrit |
Kuvaus |
|---|---|
|
Valinnainen. Kulman yksikkö: |
asema#
position palauttaa, kuinka paljon akseli on kiertynyt.
Toisin kuin kulma, sijainti voi nousta yli 359,99 asteen tai laskea alle 0 asteen. Sijainti seuraa, kuinka paljon akseli pyörii eteen- tai taaksepäin projektin aikana, ja sitä voidaan nollata tarvittaessa.
Usage:
rotation_sensor.position(units)
Parametrit |
Kuvaus |
|---|---|
|
Valinnainen. Sijaintiyksikkö: |
nopeus#
velocity palauttaa akselin pyörimisnopeuden.
Usage:
rotation_sensor.velocity(units)
Parametrit |
Kuvaus |
|---|---|
|
Nopeuden yksikkö: |
nollauspaikka#
reset_position palauttaa pyörimisanturin nykyisen sijainnin arvoon 0.
Usage:
rotation_sensor.reset_position()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
set_reversed#
set_reversed määrittää, onko pyörimisanturin lähtö käänteinen.
Käänteisesti positiivisista arvoista tulee negatiivisia ja negatiivisista arvoista positiivisia. Tämä menetelmä toimii samalla tavalla kuin Rotation -konstruktoria käytettäessä parametrin reverse arvoksi True.
Usage:
rotation_sensor.set_reversed(value)
Parametrit |
Kuvaus |
|---|---|
|
Käännetäänkö pyörimisanturin lähtö: |
muuttunut#
changed rekisteröi funktion kutsuttavaksi aina, kun pyörimisanturin arvo muuttuu.
Usage:
rotation_sensor.changed(callback, arg)
Parametrit |
Kuvaus |
|---|---|
|
Aiemmin määritelty function, joka suoritetaan, kun pyörimisanturin arvo muuttuu. |
|
Valinnainen. Tuple, joka sisältää argumentteja, jotka välitetään takaisinkutsufunktiolle. Lisätietoja on kohdassa Funktioiden käyttö parametrien kanssa. |
def my_function():
brain.screen.print("Rotated!")
# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)
Rakentaja#
Konstruktoreita käytetään Rotation -objektien luomiseen manuaalisesti, esimerkiksi konfiguroitaessa pyörimisanturia VEXcoden ulkopuolella.
Rotation#
Rotation luo Rotation Sensor -objektin.
Usage:
Rotation(smartport)
Parametri |
Kuvaus |
|---|---|
|
Älyportti, johon pyörimisanturi on kytketty, kirjoitetaan muodossa |
|
Valinnainen. Käännetäänkö pyörimisanturin lähtö: |
# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)