Enkooderi#

Johdanto#

encoder luokkaa käytetään optisen akselienkooderin kanssa, joka mittaa akselin pyörimisasennon ja -nopeuden. Se käyttää sisäisiä optisia antureita akselin pyörimisnopeuden ja -pituuden havaitsemiseen, mikä tekee siitä hyödyllisen pyörän pyörimisen, varren asennon tai muiden mekanismien seurannassa.

VEX-optinen akselienkooderi.

Luokan rakentaja#

encoder(
  triport::port &port );

Luokan tuhoaja#

Tuhoaa encoder -objektin ja vapauttaa siihen liittyvät resurssit.

virtual ~encoder();

Parametrit#

Parametri

Tyyppi

Kuvaus

port

triport::port &

Optisen akselikooderin käyttämän kaksiporttisen ryhmän ensimmäinen kolmijohtiminen portti. Enkooderi käyttää kahta vierekkäistä porttia (A–B, C–D, E–F tai G–H) joko aivoissa tai kolmijohtimisessa laajentimessa. Määritä parin ensimmäinen portti (A, C, E tai G) ja kirjoita se muodossa Brain.ThreeWirePort.X tai ExpanderName.X , jossa X on portin kirjain (esimerkiksi Brain.ThreeWirePort.A tai Expander1.C).

Esimerkkejä#

// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);

Jäsenten toiminnot#

encoder -luokka sisältää seuraavat jäsenfunktiot:

  • setPosition — Asettaa kooderin nykyisen sijainnin määritettyyn arvoon.

  • position — Palauttaa enkooderin pyörimismatkan.

  • velocity — Palauttaa kooderin nykyisen pyörimisnopeuden.

Ennen minkään encoder -jäsenfunktion kutsumista on luotava encoder -instanssi alla olevan mukaisesti:

/* This constructor is required when using VS Code.
Encoder configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);

setPosition#

Asettaa enkooderin nykyisen sijainnin määritettyyn arvoon. Tätä voidaan käyttää seurattavan sijainnin manuaaliseen asettamiseen ilman moottorin tai muun mekanismin pyörittämistä.

Available Functions
void setPosition(
  double        value,
  rotationUnits units);

Parameters

Parametrit

Tyyppi

Kuvaus

value

double

Asetettava pyörimisasento.

units

rotationUnits

The unit that represents the position:

  • deg / degrees — degrees
  • turns / rev — revolutions

Return Values

Tämä funktio ei palauta arvoa.

position#

Palauttaa, kuinka paljon enkooderiin kytketty akseli on kiertynyt.

Available Functions
double position(
  rotationUnits units );

Parameters

Parametrit

Tyyppi

Kuvaus

units

rotationUnits

The unit that represents the position:

  • deg / degrees — degrees
  • turns / rev — revolutions

Return Values

Palauttaa arvon double joka edustaa kiertoa määritetyissä yksiköissä.

velocity#

Palauttaa kooderin pyörimisnopeuden.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Parametrit

Tyyppi

Kuvaus

units

velocityUnits

Nopeuden esittämiseen käytetty yksikkö:

  • percent / pct — prosenttia
  • rpm — kierrosta minuutissa
  • dps — astetta sekunnissa

Return Values

Palauttaa luvun double joka edustaa nopeutta määritetyissä yksiköissä.