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 Functionsvoid autonomous( void (* callback)(void) );
Nimi |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Osoitin funktioon, joka ei ota vastaan parametreja eikä palauta arvoa. Tämä funktio suoritetaan, kun autonominen jakso alkaa. |
Tämä funktio ei palauta arvoa.
Examplesvoid 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 Functionsvoid drivercontrol( void (* callback)(void) );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Osoitin funktioon, joka ei ota vastaan parametreja eikä palauta arvoa. Tämä funktio suoritetaan, kun ajurin ohjausjakso alkaa. |
Tämä funktio ei palauta arvoa.
Examplesvoid 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 Functionsbool isEnabled();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa 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 Functionsbool isDriverControl();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa 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 Functionsbool isAutonomous();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa 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 Functionsbool isCompetitionSwitch();
Tämä funktio ei hyväksy parametreja.
NotesTämä toiminto tarkistaa, onko kilpailuohjauskytkin kytketty. Kilpailuohjauskytkintä käytetään ennen kuin V5-kenttäohjausjärjestelmä on käytössä.
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 Functionsbool isFieldControl();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa totuusarvon, joka ilmaisee, onko kenttäohjain yhdistetty:
true– Kenttäohjain on kytketty.false– Kenttäohjainta ei ole kytketty.