Viivanseuranta#
Johdanto#
line luokkaa käytetään Line Trackerin kanssa. Line Tracker on analoginen anturi, joka käyttää infrapuna-LEDiä ja valoanturia edessään olevan pinnan heijastavuuden havaitsemiseen. Se on suunniteltu asennettavaksi robotin rungon alle, jotta robotti voi seurata ennalta merkittyä reittiä.
![]()
Luokan rakentaja#
line(
triport::port &port );
Luokan tuhoaja#
Tuhoaa line objektin ja vapauttaa siihen liittyvät resurssit.
virtual ~line();
Parametrit#
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
3-johtiminen portti, johon linjaseurantalaite on kytketty, kirjoitetaan muodossa |
Esimerkkejä#
// Create a line instance in Port A
line LineTrackerA = line(Brain.ThreeWirePort.A);
Jäsenten toiminnot#
line luokka sisältää seuraavat jäsenfunktiot:
reflectivity— Palauttaa arvonint32_t, joka edustaa pinnalta heijastuneen valon määrää prosentteina.
Ennen minkään line jäsenfunktion kutsumista on luotava line instanssi alla olevan mukaisesti:
/* This constructor is required when using VS Code.
Line Tracker configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a line instance in Port A
line LineTrackerA = line(Brain.ThreeWirePort.A);
reflectivity#
Palauttaa arvon int32_t , joka edustaa pinnalta heijastuneen valon määrää prosentteina. Tätä voidaan käyttää auttamaan robottia seuraamaan ennalta merkittyä reittiä.
Huomautus:
0 % heijastavuus tarkoittaa, että kohde on hyvin tumma.
100 % heijastavuus tarkoittaa, että kohde on erittäin kirkas.
int32_t reflectivity(
percentUnits units = percentUnits::pct );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Heijastavuutta kuvaava yksikkö: |
Palauttaa arvon int32_t joka edustaa viivanseurannan mittaamaa heijastavuutta prosentteina väliltä 0–100 %.
// Display the detected reflectivity
int32_t value = LineTrackerA.reflectivity();
Brain.Screen.print(value);