Lehrer-Toolbox - Aktivitätsübersicht
-
Diese Erkundung führt die Schüler in die Programmierung sich wiederholender Verhaltensweisen ein, indem sie Wiederholungsschleifen oder Endlosschleifen verwenden.
-
Wenn die Schüler lernen, mit wiederholten und ewigen Schleifen zu programmieren, können sie Zeit sparen, wenn sie ein Projekt erstellen, das dieselben wiederholten Aktionen verwendet. Weitere Informationen zu den Anweisungen, die in einem Textprojekt verwendet werden, finden Sie in den Hilfeinformationen.
Der Clawbot V5 ist einsatzbereit!
Diese Erkundung gibt Ihnen die Werkzeuge an die Hand, um mit der Erstellung einiger cooler Projekte zu beginnen, die Loops verwenden.
-
VEXcode V5-Anweisungen, die bei dieser Erkundung verwendet werden:
-
Drivetrain.driveFor(vorwärts, 300, mm);
-
Drivetrain.turnFor(rechts, 90, Grad);
-
ClawMotor.spinFor(rückwärts, 70, Grad);
-
ArmMotor.spinFor(vorwärts, 360, Grad);
-
while (true) {}
-
wiederholen (4) {}
-
warten(5, Sekunden);
-
Um auf zusätzliche Informationen zuzugreifen, klicken Sie mit der rechten Maustaste auf einen Befehlsnamen in Ihrem Arbeitsbereich, um Hilfe zu diesem Befehl anzuzeigen.
Lehrertipps
Wenn der Schüler zum ersten Mal VEXcode V5 verwendet, kann er eine Vielzahl von Artikeln in der VEX-BIBLIOTHEK lesen.
Lehrertipps - Verwenden der automatischen Vervollständigung
Die automatische Vervollständigung ist eine Funktion in VEXcode V5, die den Rest des Befehls vorhersagt, den Sie eingeben. Wenn die Schüler in VEXcode V5 arbeiten, empfehlen Sie ihnen, die Autovervollständigungsfunktion zu verwenden, um bei der Syntax zu helfen.
Wählen Sie das Tutorial Autovervollständigung.
Stellen Sie sicher, dass Sie die erforderliche Hardware, Ihr technisches Notizbuch und VEXcode V5 heruntergeladen und bereit haben.
Menge | Benötigtes Material |
---|---|
1 |
VEX V5 Classroom Starter Kit (mit aktueller Firmware) |
1 |
VEXcode V5 (neueste Version, Windows, macOS) |
1 |
Technisches Notizbuch |
1 |
Clawbot-Vorlage (Antrieb 2-Motor, kein Kreisel) Beispielprojekt |
Schritt 1: Beginnen wir mit der Programmierung mit Schleifen
-
Bevor Sie mit Ihrem Projekt beginnen, wählen Sie das richtige Vorlagenprojekt aus. Das Beispielprojekt Clawbot Template (Drivetrain 2-motor, No Gyro) enthält die Motorkonfiguration des Clawbots. Wenn die Vorlage nicht verwendet wird, führt Ihr Roboter das Projekt nicht korrekt aus.
- Wählen Sie Datei und Öffnen Sie Beispiele.
-
Blättern Sie durch die verschiedenen Beispielprojekte. Diese Projekte zeigen eine Vielzahl von Aktionen, die Ihr Clawbot ausführen kann. Wählen Sie das Beispielprojekt Clawbot Template (Drivetrain 2-motor, No Gyro) aus und öffnen Sie es.
-
Benennen Sie das Projekt RepeatingActions.
-
Geben Sie den folgenden Code ein:
int main() { // Roboterkonfiguration wird initialisiert. NICHT ENTFERNEN! vexcodeInit(); //Vorwärtsfahren und Drehen um 90 Grad für 4 Iterationen wiederholen(4){ Drivetrain.driveFor(forward, 300, mm); Drivetrain.turnFor(right, 90, degrees); wait(5, seconds); } }
Sehen Sie sich das Projekt an und führen Sie dann die folgenden Schritte in Ihrem technischen Notizbuch durch.
-
Sagen Sie voraus, was der Clawbot für das Projekt tun wird. Erklären Sie mehr als die Tatsache, dass sich das Projekt wiederholt.
Was wiederholt sich? Was macht der Clawbot?
- Schreiben Sie Ihre Vorhersage, aber teilen Sie das kurze Projekt nicht in mehr als zwei Teile.
Lehrer-Toolbox - Antworten
-
Dieses Projekt wird den Roboter haben: 300 Millimeter vorwärts fahren, 90 Grad nach rechts drehen und dann 4 Mal 5 Sekunden warten, um ein Quadrat zu vervollständigen. Anstatt die gleichen 3 Anweisungen 4 Mal zu verwenden, reduziert die Wiederholungsanweisung die Menge auf nur ein Mal. Die Wiederholungsanweisung wiederholt die Aktionen des Vorwärtsfahrens und dann des Drehens.
-
Die Vorhersage könnte einfach lauten: "Der Clawbot bewegt sich in einem Quadrat." Dies wäre eine prägnante Möglichkeit, die wiederholten Bewegungen des Klauenbots einzufangen, ohne dass es an Kontext mangelt.
Die technischen Notizbücher der Schüler können einzeln oder im Team gepflegt und bewertetwerden. Die vorherigen Links bieten für jeden Ansatz eine andere Rubrik. Wann immer eine Rubrik in die Bildungsplanung aufgenommen wird, ist es empfehlenswert, die Rubrik zu erklären oder den Schülern zumindest Kopien zu geben, bevor die Aktivität beginnt.
-
Speichern, Herunterladen und Ausführen des Projekts Wiederholungsaktionen.
- Überprüfen Sie Ihre Erläuterungen zum Projekt in Ihrem technischen Notizbuch und fügen Sie Notizen hinzu, um sie bei Bedarf zu korrigieren.
Schritt 2: Führen Sie das Projekt aus und beobachten Sie den Roboter
Schauen Sie sich das Projekt Wiederholungsaktionen (rechts) noch einmal an. Dieses Projekt wiederholt das Vorwärts- und dann das Wendeverhalten viermal. Eine "Wiederholungs" -Schleifenstruktur wird verwendet, wenn Sie eine Reihe von Verhaltensweisen eine bestimmte Anzahl von Malen verwenden möchten.
Wenn die Wiederholungsstruktur durch eine "while" -Schleifenstruktur ersetzt wird, wiederholt der Roboter das Vorwärts- und dann das Wendeverhalten ", während" die Bedingung wahr ist. Sie können die Bedingung auch auf "true" setzen, damit die "while" -Schleife für immer fortgesetzt wird.
Im Projekt auf der linken Seite wird der Eingang eines Sensors verwendet, um zu bestimmen, wann mit dem Abbiegen begonnen werden soll. Das Projekt auf der rechten Seite verwendet einen festen Antriebsstrangabstand, um zu bestimmen, wann mit dem Abbiegen begonnen werden soll.
Um die Eingabe eines Sensors kontinuierlich zu überprüfen, wird eine „if/else“ -Anweisung zusammen mit einer „while“ -Schleife verwendet. Im Projekt links dreht der Roboter nach rechts, wenn der Sensor „BumperB“ gedrückt wird, ansonsten fährt der Roboter für immer vor, wenn der Sensor „BumperB“ nicht gedrückt wird. Um den Wert des BumperB-Sensors kontinuierlich zu überprüfen, befindet sich die "if" -Anweisung innerhalb einer "while true" -Schleife.
Das obige Projekt auf der linken Seite ist ein praktischer Anwendungsfall einer Struktur, die sich für immer wiederholt - unter Verwendung von while-Schleifen und if-Anweisungen zusammen. Stellen Sie sich eine selbstfahrende Kehrmaschine vor, die weiter vorwärts fährt, bis sie gegen eine Wand oder ein Objekt läuft, und sich dann dreht, bevor sie weiterfährt.
Erweitern Sie Ihr Lernen
Um weiter zu erforschen, wie Sie Schleifen mit Bedingungen verwenden, lassen Sie die Schüler ein Floor Sweeper-Projekt in VEXcode V5 erstellen.
- Beginnen Sie damit, dass die Schüler die Stoßstangenschalter montieren und verkabeln.
-
Bitten Sie die Schüler, das Beispielprojekt Clawbot Template (Drivetrain 2-motor, No Gyro) zu öffnen.
-
Lassen Sie die Schüler das Projekt Bodenkehrer nennen.
-
Bitten Sie die Schüler, das folgende Projekt zu erstellen.
// Include the V5 Library #include "vex.h" // Ermöglicht eine einfachere Verwendung der vex Library mit dem Namespace vex; // Die Funktion pickRandom gibt eine zufällige ganze Zahl zwischen den als Parameter übergebenen Min- und // Max-Werten zurück. int pickRandom(int min, int max) { return min + rand() / (RAND_MAX / (max - min + 1)); } int main() { // Roboterkonfiguration wird initialisiert. NICHT ENTFERNEN! vexcodeInit(); / /Initialisieren Sie den Zufallszahlengenerator. srand(randomSeed); while (true) { while (!BumperB.pressing()) { Drivetrain.drive(forward); wait(5, msec); } Drivetrain.stop(); Drivetrain.turnFor((90 + pickRandom(0, 90)), degrees); wait(5, msec); } }
Wenn die Schüler Hilfe bei einer der Anweisungen benötigen, verweisen Sie sie auf die Hilfeinformationen.
Bitten Sie die Schüler, das Projekt herunterzuladen und auszuführen , um zu beobachten, wie sich der Roboter bewegt. Beginnen Sie dann eine Unterrichtsdiskussion und bitten Sie die Schüler zu erklären, warum die Forever-Struktur anstelle einer Wiederholungsstruktur verwendet wurde.
Die Schüler sollten beachten, dass eine Forever-Struktur verwendet wird, da bei diesem Projekt kontinuierlich überprüft wird, ob der Stoßfängerschalter gedrückt wird.
Schritt 3: Die Squared Loops-Herausforderung!
- Lassen Sie Ihren Clawbot in einem Quadrat fahren.
- Vor jeder Umdrehung muss die Klaue geöffnet und geschlossen und der Arm angehoben und abgesenkt werden.
- Der Clawbot kann nicht mehr als einmal entlang einer Seite des Platzes fahren.
- Sie können das RepeatingActions-Projekt von oben als Ausgangspunkt verwenden, aber als SquaredLoops speichern , bevor Sie Änderungen vornehmen.
Planen Sie in Ihrem technischen Notizbuch Folgendes:
- Planen Sie Ihre Lösung und sagen Sie voraus, was der Clawbot für jede Anweisung in Ihrem Projekt tun wird.
- Laden Sie Ihr Projekt herunter und führen Sie es aus, um es zu testen, bevor Sie es einreichen.
- Nehmen Sie bei Bedarf Änderungen am Projekt vor und notieren Sie sich, was während des Tests geändert wurde.
Lehrer-Toolbox - Lösung
Das Folgende ist eine mögliche Lösung für die Squared Loops Challenge:
int main() {
// Roboterkonfiguration wird initialisiert. NICHT ENTFERNEN!
vexcodeInit();
repeat(4){
Drivetrain.driveFor(vorwärts, 300, mm);
ClawMotor.spinFor(rückwärts, 70, Grad);
ArmMotor.spinFor(vorwärts, 360, Grad);
ClawMotor.spinFor(vorwärts, 70, Grad);
ArmMotor.spinFor(rückwärts, 360, Grad);
Drivetrain.turnFor(rechts, 90, Grad);
wait(5, ms);
}
}
Sie können den Studierenden eine Programmierrubrik zur Bewertung ihrer Projekte zur Verfügung stellen. Die technischen Notizbücher der
Schüler können einzeln oder im Team gepflegt und bewertetwerden.