Yarışma#

giriiş#

competition sınıfı, resmi yarışma kontrolü için bir V5 projesini yapılandırmanıza yardımcı olur. Otonom ve Sürücü Kontrolü sırasında çalıştırılacak fonksiyonları kaydetmenizi sağlar ve kodunuzun eşleşme durumuna (etkin/devre dışı, otonom/sürücü, saha kontrolü vb.) yanıt verebilmesi için basit durum kontrolleri sunar.

Sınıf Oluşturucuları#

competition();

Sınıf Yıkıcısı#

competition nesnesini yok eder ve ilgili kaynakları serbest bırakır.

~competition();

Parametreler#

Bu yapıcı fonksiyon herhangi bir parametre kabul etmez.

Örnekler#

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

Üye Fonksiyonları#

competition sınıfı aşağıdaki üye işlevlerini içermektedir:

  • autonomous — Özerk dönem başladığında çağrılacak bir fonksiyonu kaydeder.

  • drivercontrol — Sürücü Kontrol dönemi başladığında çağrılacak bir fonksiyonu kaydeder.

  • isEnabled — Robotunuzun yarışma kontrolü altındaykenki durumunu döndürür.

  • isDriverControl — Robotun durumunun sürücü kontrolünde olup olmadığını döndürür.

  • isAutonomous — Robotun durumunun otonom olup olmadığını döndürür.

  • isCompetitionSwitch — Rekabet anahtarının bağlı olup olmadığını döndürür.

  • isFieldControl — Alan kontrolünün bağlı olup olmadığını döndürür.

Herhangi bir competition üye fonksiyonunu çağırmadan önce, aşağıda gösterildiği gibi bir competition örneği oluşturulmalıdır:

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

autonomous#

Özerk dönem başladığında çağrılacak bir fonksiyonu kaydeder.

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

Parameters

İsim

Tip

Tanım

callback

void (*)(void)

Parametre almayan ve değer döndürmeyen bir fonksiyona işaretçi. Bu fonksiyon, özerk dönem başladığında çalışacaktır.

Return Values

Bu fonksiyon bir değer döndürmez.

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#

Sürücü Kontrol dönemi başladığında çağrılacak bir fonksiyonu kaydeder.

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

Parameters

Parametre

Tip

Tanım

callback

void (*)(void)

Parametre almayan ve değer döndürmeyen bir fonksiyona işaretçi. Bu fonksiyon, Sürücü Kontrol dönemi başladığında çalışacaktır.

Return Values

Bu fonksiyon bir değer döndürmez.

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#

Robotunuzun yarışma kontrolü altındaykenki durumunu döndürür.

Available Functions
bool isEnabled();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Otonom veya sürücü kontrol döneminin aktif olup olmadığını belirten bir Boolean değer döndürür:

  • true – Otonom veya sürücü kontrol dönemi aktif.

  • false – Kontrol dönemlerinin hiçbiri aktif değil.

isDriverControl#

Robotun sürücü kontrol modunda olup olmadığını gösteren bir Boolean değeri döndürür.

Available Functions
bool isDriverControl();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Robotun sürücü kontrol modunda olup olmadığını gösteren bir Boolean değeri döndürür:

  • true – Robot sürücü kontrol modunda.

  • false – Robot sürücü kontrol modunda değil.

isAutonomous#

Robotun otonom modda olup olmadığını gösteren bir Boolean değeri döndürür.

Available Functions
bool isAutonomous();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Robotun otonom modda olup olmadığını gösteren bir Boolean değeri döndürür:

  • true – Robot otonom modda.

  • false – Robot otonom modda değil.

isCompetitionSwitch#

Rekabet Kontrol Anahtarının bağlı olup olmadığını gösteren bir Boolean değeri döndürür:

Available Functions
bool isCompetitionSwitch();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Notes
  • Bu fonksiyon, Yarışma Kontrol Anahtarının bağlı olup olmadığını kontrol eder. Yarışma Kontrol Anahtarı, V5 Saha Kontrol Sistemi kurulmadan önce kullanılır.

Return Values

Rekabet Kontrol Anahtarının bağlı olup olmadığını gösteren bir Boolean değeri döndürür:

  • true – Rekabet Kontrol Anahtarı bağlı.

  • false – Rekabet Kontrol Anahtarı bağlı değil.

isFieldControl#

Alan denetleyicisinin bağlı olup olmadığını gösteren bir Boolean değeri döndürür.

Available Functions
bool isFieldControl();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Alan denetleyicisinin bağlı olup olmadığını gösteren bir Boolean değeri döndürür:

  • true – Saha Kontrol Cihazı bağlı.

  • false – Saha Kontrol Cihazı bağlı değil.