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.
Voorbeeld: Een voorbeeldprogramma voor een robot om een rechte afstand af te leggen
Met de volgende functie kan de robot vooruit rennen voor totalEnc
-encoder. Het maakt gebruik van de V5 Clawbot-configuratie.
Deze spinToPosition
functie keert niet terug totdat de beweging is voltooid. Dit wordt 'gesynchroniseerde' actie genoemd – bepaald door de laatste parameter true
.
Zonder een door de gebruiker gedefinieerde functie te gebruiken:
int main() { vexcodeInit(); LeftMotor.resetPosition (); LeftMotor.setVelocity(100,0, procent); 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, procent); LeftMotor.spinToPosition(-1000.0, c, true); Brain.Screen.printAt(5.100, "secs rev deg" ); Brain.Screen.printAt(5.130, "%%.2f: %8.2f %8.2f", Brain.Timer.value(), LinksMotor .position(rev), LeftMotor.position(deg)); wait(1000, msec);
}
Het monster kan het volgende resultaat opleveren:
sec onbewerkte rev deg 2.06 5445 3.12 1089
Houd er rekening mee dat uw test binnen een zeer kleine marge in de decimalen zal variëren.
Met een door de gebruiker gedefinieerde functie:
In het volgende voorbeeld ziet u hoe u een reeks bewerkingen kunt vastleggen in één herbruikbare 'functie'-aanroep.
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, procent); LeftMotor.spinToPosition(500.0, deg, true); reportMotionValues(); LeftMotor.resetPosition (); LeftMotor.setVelocity(-50.0, procent); LeftMotor.spinToPosition(-500.0, deg, true); reportMotionValues(); }
Hier ziet u de volgorde van de logische stroom van de aanroepfunctie main():