Skip to main content

Lehrer-Toolbox-Symbol Lehrer-Toolbox - Der Zweck dieser Aktivität

Die Programmierung mit Bedingten kann durch die Verwendung eines [If then] - oder [If then else] -Blocks innerhalb eines Projekts erfolgen. Diese Aktivität führt die Teilnehmer in die Verwendung eines [Wenn dann] -Blocks ein, damit der Roboter vorwärts fährt, es sei denn, der Bildschirm wird gedrückt. Der letzte Teil der Aktivität fordert sie auf, das Projekt zu verfeinern, indem sie einen [If then else] -Block anstelle des [If then] -Blocks verwenden.

Zwei VEXcode V5-Blöcke nebeneinander - der Wenn dann -Block auf der linken Seite und der Wenn dann sonst -Block auf der rechten Seite.

Weitere Informationen zu [If then] - und [If then else] -Blöcken oder anderen in dieser Aktivität verwendeten Blöcken finden Sie in den Hilfeinformationen in VEXcode V5. Weitere Informationen zu diesem integrierten Hilfetool finden Sie hier.

Im Folgenden finden Sie einen Überblick darüber, was Ihre Schüler in dieser Aktivität tun werden:

  • Sehen Sie sich das Tutorial-Video If Then Else Blocks an und verwenden Sie dann die Vorlage Clawbot (Drivetrain 2-motor, No Gyro), um das gezeigte Projekt Creating a Stop Button zu erstellen und vorherzusagen, was das Projekt tut.
  • Verfeinern Sie das Beispielprojekt " Erstellen einer Stoppschaltfläche", indem Sie einen [Wenn sonst] -Block verwenden, bei dem das "sonst" -Verhalten auf "Vorwärtsfahren" eingestellt ist.
  • Erweitern Sie Ihr Lernen: Fügen Sie dem Bildschirm des Gehirns eine Taste hinzu, die gedrückt wird, um das Fahren des Roboters zu stoppen.
Erforderliches Material:
Menge Benötigtes Material
1

VEX V5 Classroom Starter Kit (mit aktueller Firmware)

1

VEXcode V5 (neueste Version, Windows, macOS, Chromebook)

1

Technisches Notizbuch

1

Clawbot (Antrieb 2-Motor, kein Kreisel) Vorlage

Lehrer-Toolbox-Symbol Lehrer-Toolbox

Vorschläge zu Unterrichtsstrategien für diesen Abschnitt finden Sie in der Spalte Lieferung im Schrittmacherleitfaden To Do or Not to Do! (Google Doc / .docx / .pdf)

Der Clawbot ist bereit, Entscheidungen zu treffen!

Diese Aktivität gibt Ihnen die Werkzeuge an die Hand, um Ihren Roboter mit bedingten Verhaltensweisen zu programmieren.
Die Blöcke [If then] und [If then else] stehen im Mittelpunkt der Aktivität, aber auch Operatoren und Sensing-Blöcke werden verwendet.

Es werden vier VEXcode-Blöcke angezeigt. Im Uhrzeigersinn von oben links sind sie: Bildschirm gedrückt Sechskantblock; nicht Bedienerblock; Wenn dann C-Block; und Wenn sonst C-Block.

Sie können die Hilfeinformationen in VEXcode V5 verwenden, um mehr über die Blöcke zu erfahren. Eine Anleitung zur Verwendung der Hilfefunktion finden Sie im Tutorial Verwenden der Hilfe.

VEXcode V5-Symbolleiste mit dem Tutorials-Symbol, das mit einem roten Pfeil rechts neben dem Menü Datei aufgerufen wird.

 

Lehrer-Tipps-Symbol Lehrertipps

Wenn der Schüler VEXcode V5 zum ersten Mal verwendet, kann er auch die Tutorials in der Symbolleiste sehen, um andere grundlegende Fähigkeiten zu erlernen.

VEXcode V5-Symbolleiste mit Tutorials, die in einem roten Feld hervorgehoben sind. Die Symbolleiste zeigt von links nach rechts das V5-Logo, ein Globussymbol, Datei und Tutorials. Rechts neben Tutorials befinden sich zusätzliche Symbole und Funktionen.

Schritt 1: Beginnen wir mit dem Verständnis von bedingten Aussagen 

Bevor Sie mit der Programmierung mit Conditionals beginnen, sehen Sie sich zuerst das unten stehende If-Then-Else-Tutorial-Video an. Es kann auch als Tutorial-Video in VEXcode V5 gefunden werden.

 

Schritt 2: Beginnen wir mit der Programmierung mit bedingten Anweisungen 

Öffnen Sie das Beispielprojekt Clawbot (Drivetrain 2-motor, No Gyro).

Das Vorlagenprojektsymbol liest Clawbot (Antriebsstrang 2-Motor, kein Kreisel) unten mit einem grauen Roboterdiagramm oben.

Bauen Sie das Projekt unten auf.

Das VEXcode V5-Projekt beginnt mit einem Block beim Start, gefolgt von einer Endlosschleife. Innerhalb der Schleife gibt es einen Drive-Forward-Block, gefolgt von einem If-Dann-Block. Der wenn dann Block liest Wenn der Bildschirm gedrückt wird, dann stoppen Sie die Fahrt, warten Sie, bis der Bildschirm nicht gedrückt wird.

Gehen Sie in Ihrem technischen Notizbuch wie folgt vor:

  1. Erklären Sie, was der Clawbot für das Projekt tun soll. Sie müssen mehr erklären als die Tatsache, dass es eine Stopptaste erzeugt. Erkläre, welche Blöcke den Clawbot dazu bringen, was zu tun.
  2. Schreiben Sie eine Zusammenfassung mit einem Satz, die erfasst, was das Projekt leistet.

Das Dialogfeld Projektname in VEXcode V5 lautet Erstellen einer Stoppschaltfläche. Auf der linken Seite ist Steckplatz 1 ausgewählt, und auf der rechten Seite lautet die Symbolleiste Gespeichert.

  • Testen Sie, ob Ihre Vorhersage, was der Clawbot für das Projekt tun soll, korrekt ist.
  • Speichern und laden Sie das Projekt als Erstellen einer Stopp-Schaltfläche auf Slot 1 auf dem Clawbot herunter und führen Sie es dann aus.
  • Hilfe zum Herunterladen eines Projekts finden Sie im Tutorial in VEXcode V5, in dem das Herunterladen und Ausführen eines Projekts erläutert wird.
  • Überprüfen Sie Ihre Erläuterungen zum Projekt und fügen Sie Notizen hinzu, um sie bei Bedarf zu korrigieren.

Lehrer-Toolbox-Symbol Lehrer-Toolbox - Antworten

Das Erstellen eines Stopp-Schaltflächenprojekts wird mit Beschriftungen für die Funktionalität jedes Blocks im Stapel angezeigt. Der Forever-Block ist als "Forever Drives und Checks gekennzeichnet". Der Zweig If des Blocks If then ist mit gekennzeichnet "Checks if condition is True - der Bildschirm wird gedrückt." Der Stop-Driving-Block trägt die Bezeichnung "Runs this block if True - then stop driving because true. Das Warten, bis kein Bildschirm gedrückt wird, wird als Steuerung für die Verarbeitungsgeschwindigkeit bezeichnet.

  • Bei diesem Projekt fährt der Roboter kontinuierlich vorwärts, stoppt jedoch, wenn der Bildschirm gedrückt wird. Dies geschieht durch die Verwendung eines [Forever] -Blocks, um kontinuierlich zu fahren und zu überprüfen. Wenn der Bildschirm gedrückt wird (WAHR), stoppt der Clawbot die Fahrt. Von den

    Schülern wird nicht erwartet, dass sie verstehen, warum der Block [Warten bis] verwendet wird. Erklären Sie, dass der Block [Warten bis] aufgrund der Geschwindigkeit des Programmablaufs des Roboters erforderlich ist. Wenn es nicht da wäre, würden sich die Motoren des Clawbot so verhalten, als würde der Benutzer den Bildschirm immer wieder drücken, während er das Projekt durchläuft. Stattdessen stoppt der Block [Warten bis] den Programmablauf und lässt das Projekt die [Forever] -Schleife nicht erneut starten, bis der Benutzer aufhört, den Bildschirm zu drücken.
  • Die Zeile des Pseudocodes könnte so einfach sein wie: Fahren Sie vorwärts, bis der Bildschirm gedrückt wird.

Die Engineering-Notizbücher der Studierenden können einzeln (Google Doc / .docx / .pdf) oder im Team (Google Doc / .docx / .pdf) gepflegt und bewertet werden. 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.

Schritt 3: Verstehen der Wartezeit bis zum Block

Beachten Sie, dass, wenn der Bildschirm des Gehirns gedrückt wird, sich der Ablauf des Projekts so schnell bewegt, dass das Projekt zum nächsten Block wechselt, dem Block [Stop driving].

Daher benötigt das Projekt einen [Warten bis] -Block, der den Roboter anweist, angehalten zu bleiben, bis der Bildschirm des Gehirns freigegeben wird. Andernfalls würde der [Forever] -Block dazu führen, dass das Projekt erneut mit dem [Drive] -Block beginnt.

Warten Sie bis zum Block mit einer verschachtelten Bedingung. Der durch den Bildschirm gedrückte Block ist im NOT-Operator verschachtelt, sodass der gesamte Block liest, warten Sie, bis der Bildschirm nicht gedrückt wird.

Der Block [Warten bis] ist aufgrund der Geschwindigkeit des Projektflusses erforderlich. Wenn es nicht da wäre, würde das Projekt zum nächsten Block wechseln, bevor der Roboter jemals Zeit hatte, zu reagieren

 

Schritt 4: Ändern Sie das Projekt

Unser nächster Schritt ist die Änderung des [If then] -Blocks in einen [If then else] -Block.

Nebeneinander VEXcode-Blöcke - auf der linken Seite befindet sich die Schaltfläche Erstellen eines Stopps. Auf der rechten Seite befindet sich ein If then else-Block aus der Toolbox.

  • Speichern Sie zunächst Erstellen einer Stopp-Schaltfläche als neues Projekt, StopOrDrive.
  • Wenn Sie Hilfe beim Speichern eines Projekts benötigen, lesen Sie das Tutorial Benennen und Speichern Ihres Projekts in VEXcode V5.
  • Erstellen Sie dann  das unten gezeigte StopOrDrive-Projekt.

Das VEXcode V5-Projekt beginnt mit einem when started -Block, an den ein forever -Block angehängt ist. Innerhalb des forever-Blocks befindet sich ein if then else-Block. Wenn der Zweig liest, wenn der Bildschirm gedrückt wird, dann stoppen Sie die Fahrt, warten Sie, bis der Bildschirm nicht gedrückt wird. Der else-Zweig enthält einen Drive-Forward-Block.

  • Laden Sie StopOrDrive auf Slot 2 auf Ihren Clawbot herunter.
  • Hilfe zum Herunterladen eines Projekts finden Sie im Tutorial in VEXcode V5, in dem das Herunterladen und Ausführen eines Projekts erläutert wird.
  • Testen Sie das Erstellen einer Stopptaste (Steckplatz 1) und testen Sie dann StopOrDrive (Steckplatz 2) und vergleichen Sie sie, um festzustellen, ob es einen Unterschied im Verhalten des Roboters gibt. Notieren Sie alle Unterschiede in Ihrem technischen Notizbuch.

Lehrer-Tipps-Symbol Lehrertipps

In den Anweisungen werden die Teilnehmer zu Tutorial-Videos in VEXcode V5 weitergeleitet, die zum Speichern und Herunterladen von Projekten erforderlich sind. Weitere Unterstützung finden Sie in der vex Robotics Knowledge Base für zusätzliche Hilfeartikel.

Lehrer-Toolbox-Symbol Lehrer-Toolbox - Antwort

In Bezug auf das Verhalten des Roboters sollte es keinen Unterschied zwischen den Projekten Erstellen eines Stopp-Buttons und StopOrDrive geben.

Bei beiden Projekten verhält sich der Clawbot gleich. Der einzige Unterschied ist die Verwendung des Blocks [If then else]  im StopOrDrive-Projekt.

Mit dem Block [Wenn sonst] können Sie dem Bildschirm in anstehenden Aktivitäten zusätzliche Schaltflächen hinzufügen.

Erweitern Sie Ihr Lernsymbol Erweitern Sie Ihr Lernen

Im Laufe dieses STEM-Labors werden die Schüler Projekte entwickeln, die es dem Bildschirm des Clawbots ermöglichen, als Benutzeroberfläche zu fungieren. Fordern Sie die Schüler in Vorbereitung darauf auf, herauszufinden, wie sie ein farbiges Rechteck auf dem Bildschirm zeichnen können, das wie eine Schaltfläche funktioniert. Da das Drücken an einer beliebigen Stelle auf dem Bildschirm derzeit die Bedingung ist, sollte die Taste den gesamten Bildschirm einnehmen. Die Schüler sollten das Projekt ein Ereignis übertragen lassen, um die Schaltfläche beim Start zu zeichnen.
Bitten Sie die Schüler, die Hilfefunktion in VEXcode V5 zu verwenden, um Informationen über Ereignisse und Looks-Blöcke zu erhalten. Weisen Sie die Schüler an, zuerst zu lernen, wie der Bildschirm des Gehirns in einem Koordinatensystem in den Informationen des Blocks [Rechteck zeichnen] organisiert ist. Sie müssen dies verstehen, um Parameter innerhalb dieses Blocks festzulegen. Die verwendeten Koordinaten entsprechen der Anzahl der Pixel und nicht der Anzahl der Spalte oder Zeile. Hier ist das Layout des Bildschirms:

Das Pixelraster des V5-Gehirnbildschirms zeigt 12 nummerierte Zeilen auf der linken Seite, wobei die obere Zeile mit Zeile 1 und die untere Zeile mit Zeile 12 bezeichnet ist. Ganz oben befinden sich 48 nummerierte Spalten, wobei Spalte 1 ganz links und Spalte 48 ganz rechts beschriftet ist. Die gesamten Pixelmaße sind 480px breit und 240px hoch.

Die Schüler sollten diese Änderungen am Projekt planen, testen und verfeinern, während sie es in ihren technischen Notizbüchern dokumentieren. Klicken Sie für die einzelne Engineering-Notizbuch-Rubrik auf einen dieser Links (Google Doc / .docx / .pdf) oder klicken Sie für Team-Notizbücher (Google Doc / .docx / .pdf) auf einen der folgenden Links.

Hier ist eine beispielhafte Lösung:

VEXcode V5-Projekt zum Zeichnen auf dem Brain-Bildschirm. Es gibt zwei Stapel von Blöcken. Der Stapel auf der linken Seite beginnt mit einem When started -Block, gefolgt von einem Broadcast Draw Button -Block. Als nächstes folgt ein Forever-Block mit einem if then else-Block im Inneren, um den Roboter vorwärts zu fahren, bis der Bildschirm gedrückt wird. Auf der rechten Seite befindet sich ein Stapel, der mit einem Wenn ich einen Hutblock erhalte, mit zwei angehängten Blöcken beginnt, die die Füllfarbe auf Rot auf Brain setzen und das Rechteck 0, 0, 480, 240 auf Brain zeichnen.

Wie Sie sehen können, ist die Schaltfläche so gezeichnet, dass sie den gesamten Bildschirm ab dem (0, 0) -Ursprung einnimmt und alle 480 horizontalen (x-Achse) und 240 vertikalen (y-Achse) Pixel ausfüllt.