The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
Esempio: Un programma di esempio per un robot che percorre una distanza in linea retta
La seguente funzione consentirà al robot di avanzare pertotalEncencoder. Utilizza la configurazione V5 Clawbot.
Questa funzionespinToPositionnon restituirà alcun valore finché il movimento non sarà completato. Questa viene chiamata azione “sincronizzata” – determinata dall’ultimo parametrovero.
Senza utilizzare una funzione definita dall'utente:
int main() {
vexcodeInit();
LeftMotor.resetPosition ();
LeftMotor.setVelocity(100.0, percent);
LeftMotor.spinToPosition(500.0, deg, true);
Brain.Screen.printAt(5,30, "secs rev deg" );
Brain.Screen.printAt(5,60, "%.2f: %8.2f %8.2f",
Brain.Timer.value(),
LeftMotor.position(rev),
LeftMotor.position(deg));
wait(1000, msec);
LeftMotor.resetPosition ();
LeftMotor.setVelocity(-100.0, percent);
LeftMotor.spinToPosition(-1000.0, c, true);
Brain.Screen.printAt(5,100, "sec rev deg" );
Brain.Screen.printAt(5,130, "%%.2f: %8.2f %8.2f",
Brain.Timer.value(),
LeftMotor.position(rev),
LeftMotor.position(deg));
wait(1000, msec);
}
Il campione potrebbe dare il seguente risultato:
secondi grezzo giri gradi
2,06 5445 3,12 1089
Tieni presente che il tuo test varierà entro un margine molto piccolo nelle cifre decimali.
Con una funzione definita dall'utente:
L'esempio seguente mostra come acquisire un insieme di operazioni in un'unica chiamata di "funzione" riutilizzabile.
void reportMotionValues() {
Brain.Screen.printAt(5, 60, "%.2f: %8.2f %8.2f",
Brain.Timer.value(),
LeftMotor.position(rev),
LeftMotor.position(deg));
}
int main() {
vexcodeInit();
LeftMotor.resetPosition();
LeftMotor.setVelocity(50.0, percent);
LeftMotor.spinToPosition(500.0, deg, true);
reportMotionValues();
LeftMotor.resetPosition ();
LeftMotor.setVelocity(-50.0, percent);
LeftMotor.spinToPosition(-500.0, deg, true);
reportMotionValues();
}
Il video qui sotto mostra come si sviluppa la sequenza logica a partire dalla funzione chiamante main():