Kilpailu#

Johdanto#

competition -luokka auttaa sinua jäsentämään V5-projektin virallista kilpailuohjausta varten. Sen avulla voit rekisteröidä funktioita suoritettavaksi autonomisen ja kuljettajaohjauksen aikana, ja se tarjoaa yksinkertaisia ​​tilatarkistuksia, jotta koodisi voi reagoida ottelun tilaan (käytössä/poistettu, autonominen/kuljettaja, kenttäohjaus jne.).

Luokanrakentajat#

competition();

Luokan tuhoaja#

Tuhoaa competition objektin ja vapauttaa siihen liittyvät resurssit.

~competition();

Parametrit#

Tämä konstruktori ei hyväksy parametreja.

Esimerkkejä#

// Create the competition instance
competition Competition = competition();

Jäsenten toiminnot#

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

  • autonomous — Rekisteröi funktion kutsuttavaksi, kun autonominen jakso alkaa.

  • drivercontrol — Rekisteröi funktion kutsuttavaksi, kun ohjainohjausjakso alkaa.

  • isEnabled — Palauttaa robotin tilan kilpailun ohjauksessa.

  • isDriverControl — Palauttaa, onko robotin tila kuljettajan ohjaus.

  • isAutonomous — Palauttaa, onko robotin tila autonominen.

  • isCompetitionSwitch — Palauttaa, onko kilpailukytkin kytketty.

  • isFieldControl — Palauttaa, onko kenttäohjausobjekti yhdistetty.

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

// Create the competition instance
competition Competition = competition();

autonomous#

Rekisteröi funktion kutsuttavaksi, kun autonominen jakso alkaa.

Available Functions
void autonomous( void (* callback)(void) );

Parameters

Nimi

Tyyppi

Kuvaus

callback

void (*)(void)

Osoitin funktioon, joka ei ota vastaan ​​parametreja eikä palauta arvoa. Tämä funktio suoritetaan, kun autonominen jakso alkaa.

Return Values

Tämä funktio ei palauta arvoa.

Examples
void autonomousControl(void) {
  // Place automonous code here.
  Brain.Screen.clearScreen();
  Brain.Screen.print("autonomous");
}

int main(){
    // Create competition instance.
    competition Competition;

    // Set up callback for the autonomous control period.
    Competition.autonomous(autonomousControl);

    // Prevent main from exiting with an infinite loop.
    while (true) {
        wait(100, msec);
    }
}

drivercontrol#

Rekisteröi funktion kutsuttavaksi, kun ajurin ohjausjakso alkaa.

Available Functions
void drivercontrol( void (* callback)(void) );

Parameters

Parametri

Tyyppi

Kuvaus

callback

void (*)(void)

Osoitin funktioon, joka ei ota vastaan ​​parametreja eikä palauta arvoa. Tämä funktio suoritetaan, kun ajurin ohjausjakso alkaa.

Return Values

Tämä funktio ei palauta arvoa.

Examples
void userControl(void) {
  Brain.Screen.clearScreen();
  // place driver control in this while loop
  while (true) {
    wait(20, msec);
  }
}

int main(){
    // Create competition instance.
    competition Competition;

    // Set up callback for the driver control period.
    Competition.drivercontrol(userControl);

    // Prevent main from exiting with an infinite loop.
    while (true) {
        wait(100, msec);
    }
}

isEnabled#

Palauttaa robottisi tilan, kun se on kilpailun ohjauksessa.

Available Functions
bool isEnabled();

Parameters

Tämä funktio ei hyväksy parametreja.

Return Values

Palauttaa totuusarvon, joka ilmaisee, onko autonominen vai kuljettajan ohjausjakso aktiivinen:

  • true – Autonominen tai kuljettajan ohjausjakso on aktiivinen.

  • false – Kumpikaan ohjausjakso ei ole aktiivinen.

isDriverControl#

Palauttaa totuusarvon, joka ilmaisee, onko robotti kuljettajan ohjaustilassa.

Available Functions
bool isDriverControl();

Parameters

Tämä funktio ei hyväksy parametreja.

Return Values

Palauttaa totuusarvon, joka ilmaisee, onko robotti kuljettajan ohjaustilassa:

  • true – Robotti on kuljettajan ohjaustilassa.

  • false – Robotti ei ole kuljettajan ohjaustilassa.

isAutonomous#

Palauttaa totuusarvon, joka ilmaisee, onko robotti autonomisessa tilassa.

Available Functions
bool isAutonomous();

Parameters

Tämä funktio ei hyväksy parametreja.

Return Values

Palauttaa totuusarvon, joka ilmaisee, onko robotti autonomisessa tilassa:

  • true – Robotti on autonomisessa tilassa.

  • false – Robotti ei ole autonomisessa tilassa.

isCompetitionSwitch#

Palauttaa totuusarvon, joka ilmaisee, onko kilpailunohjauskytkin kytkettynä:

Available Functions
bool isCompetitionSwitch();

Parameters

Tämä funktio ei hyväksy parametreja.

Notes
  • Tämä toiminto tarkistaa, onko kilpailuohjauskytkin kytketty. Kilpailuohjauskytkintä käytetään ennen kuin V5-kenttäohjausjärjestelmä on käytössä.

Return Values

Palauttaa totuusarvon, joka ilmaisee, onko kilpailunohjauskytkin kytkettynä:

  • true – Kilpailunohjauskytkin on kytketty.

  • false – Kilpailunohjauskytkintä ei ole kytketty.

isFieldControl#

Palauttaa totuusarvon, joka ilmaisee, onko kenttäohjain yhdistetty.

Available Functions
bool isFieldControl();

Parameters

Tämä funktio ei hyväksy parametreja.

Return Values

Palauttaa totuusarvon, joka ilmaisee, onko kenttäohjain yhdistetty:

  • true – Kenttäohjain on kytketty.

  • false – Kenttäohjainta ei ole kytketty.