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.
Amostra: Um exemplo de programa para um robô percorrer uma distância reta
A função a seguir permitirá que o robô avance para o codificadortotalEnc
. Ele usa a configuração V5 Clawbot.
Esta funçãospinToPosition
não retornará até que o movimento seja concluído. Isso é chamado de ação “sincronizada” – determinada pelo último parâmetrotrue
.
Sem usar uma função definida pelo usuário:
int main() { vexcodeInit(); LeftMotor.resetPosition(); LeftMotor.setVelocity(100,0, por cento); LeftMotor.spinToPosition(500,0, graus, verdadeiro); Brain.Screen.printAt(5,30, "segundos rev deg" ); Brain.Screen.printAt(5,60, "%.2f: %8.2f %8.2f", Brain.Timer.value(), LeftMotor.position(rev), LeftMotor.position(deg)); espera(1000, ms); LeftMotor.resetPosition(); LeftMotor.setVelocity(-100,0, porcentagem); LeftMotor.spinToPosition(-1000.0, c, verdadeiro); Brain.Screen.printAt(5.100, "segundos rev deg" ); Brain.Screen.printAt(5.130, "%%.2f: %8.2f %8.2f", Brain.Timer.value(), LeftMotor.position(rev), LeftMotor.position(deg)); wait(1000, ms);
}
A amostra pode dar o seguinte resultado:
segundos bruto rev deg 2,06 5445 3,12 1089
Observe que seu teste irá variar dentro de uma margem muito pequena nas casas decimais.
Com uma função definida pelo usuário:
O exemplo a seguir mostra como capturar um conjunto de operações em uma única chamada de “função” reutilizável.
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, por cento); LeftMotor.spinToPosition(500,0, graus, verdadeiro); reportMotionValues(); LeftMotor.resetPosition(); LeftMotor.setVelocity(-50,0, por cento); LeftMotor.spinToPosition(-500,0, graus, verdadeiro); reportMotionValues(); }
Aqui mostra a sequência do fluxo lógico da função chamadora main():