Lektion 1: Was ist ein Algorithmus?
In dieser Lektion erfahren Sie, was ein Algorithmus ist und wie Sie mithilfe von Algorithmen in VEXcode VR Python Projekte mit vielfältigeren Verhaltensweisen erstellen können. Algorithmische Projekte weisen den VR-Roboter an, auf seine Umgebung zu reagieren, was notwendig sein wird, um die Dynamic Castle Crasher Challenge zu lösen.
Lernergebnisse
- Identifizieren Sie, dass Algorithmen aus Sequenz, Auswahl und Iteration (Schleifen) bestehen.
- Identifizieren Sie, dass Algorithmen präzise Sequenzen von Anweisungen sind, die mit Programmiersprachen für Prozesse implementiert werden, die von einem VR-Roboter ausgeführt werden sollen.
Algorithmen
Algorithmen sind präzise Sequenzen von Anweisungen, die mithilfe von Programmiersprachen wie VEXcode VR Python implementiert werden, damit Prozesse von einem VR-Roboter ausgeführt werden können.
Die Grundelemente eines Algorithmus sind Sequenz, Auswahl und Iteration.
- Sequenz - die Reihenfolge, in der Verhaltensweisen und Befehle in einem Projekt kombiniert werden, um ein gewünschtes Ergebnis zu erzielen.
- Auswahl - die Verwendung von bedingten Anweisungen in einem Projekt. Bedingte Aussagen, z. B. ob oder ob sich dies auf den Projektablauf eines Projekts auswirkt.
- Iteration - Algorithmen verwenden oft Wiederholungen, um Schritte eine bestimmte Anzahl von Malen auszuführen oder bis eine bestimmte Bedingung erfüllt ist. Dies wird auch als "Looping" bezeichnet. Iteration kann den Projektablauf ändern, indem ein Verhalten eine bestimmte Anzahl von Malen wiederholt wird oder bis eine Bedingung erfüllt ist.
Dieses Beispielprojekt aus der Unit 8 Challenge ist ein Beispiel für einen Algorithmus. Es enthält eine Kombination aus Schleifen, Sensordaten und Befehlen, die in einer Sequenz zusammengestellt werden, um die Disk Mover Challenge zu lösen.
def main():
für Wert im Bereich(3):
für Wert im Bereich(3):
# 1. Drive to disk using Down Eye Sensor
while not down_eye.near_object():
drivetrain.drive(FORWARD)
wait(5, MSEC
) drivetrain.stop ()
# 2. Nimm den Scheibenmagneten
auf. Errege (BOOST)
# 3. Fahren Sie mit Distance Sensor drivetrain.turn_to_heading
(180, DEGREES) zum Ziel ,
während front_distance.get_distance (MM) > 200
: drivetrain.drive (FORWARD)
wait(5, MSEC
) drivetrain.stop ()
# 4. Scheibe ins Tor fallen
lassenMagnet.Energieren (FALLEN
LASSEN) Antriebsstrang.antreiben_für (RÜCKWÄRTS, 100, MM)
# 5. Drehen Sie, um auf die nächste
Festplattenschaltung zu blicken.turn_to_heading (0, GRAD)
wait(5, MS)
# 6. Drehen und fahren Sie zum nächsten Ziel
Antriebsstrang.drehen_zum_Kopf(90, GRAD
) Antriebsstrang.antreiben_für (VORWÄRTS, 800, MM)
# 7. Drehen Sie auf
Disks Drivetrain.turn_to_heading (0, GRAD)
wait(5, MS)Reihenfolge
Die Art und Weise, wie Befehle sequenziert und kombiniert werden, bestimmt das Verhalten des VR-Roboters. In diesem Beispiel wird jeder Satz von Verhaltensweisen, die zum Bewegen einer Festplatte erforderlich sind, dreimal ausgeführt, dann bewegt sich der VR-Roboter zum nächsten Satz von Festplatten und wiederholt die Verhaltensweisen, bis alle Festplatten zu den Zielen zurückkehren. 
Auswahl
Dieses Projekt beinhaltet auch eine Auswahl, die die Teile des Projekts bestimmt, die basierend auf den Sensorbedingungen ausgeführt werden. Zuerst wird der Down Eye Sensor verwendet, um festzustellen, wann sich der VR-Roboter in der Nähe einer Festplatte befindet, damit die Festplatte aufgenommen werden kann. Dann wird der Abstandssensor verwendet, um festzustellen, wann der VR-Roboter über dem Ziel ist, sodass die Festplatte abgesetzt werden kann. 
In der ersten while-Schleife basiert die Auswahl der auszuführenden Befehle auf den vom Down Eye Sensor gemeldeten Sensorwerten.
- Während kein Objekt erkannt wird, fährt der VR-Roboter vorwärts.
- Während ein Objekt erkannt wird, stoppt der VR-Roboter.
In der zweiten while-Schleife basiert die Auswahl, welcher Befehl ausgeführt wird, auf den vom Abstandssensor gemeldeten Sensorwerten.
- Während der gemeldete Abstand größer als 200 Millimeter (mm) ist, fährt der VR-Roboter vorwärts.
- Während der gemeldete Abstand weniger als 50 Millimeter (mm) beträgt, stoppt der VR-Roboter die Fahrt und bewegt sich zum nächsten Teil des Projekts, um den Elektromagneten mit Strom zu versorgen.
Iteration
Das Projekt verwendet Iterationen oder "Schleifen", um Aktionen zu wiederholen und wiederholt gemeldete Sensorwerte zu überprüfen. Dieses Projekt enthält verschachtelte Schleifen – eine Schleife, so dass der VR-Roboter alle drei Festplatten einer Farbe sammeln kann; und eine zweite Schleife, um diesen Vorgang zu wiederholen, um alle Festplatten auf dem Spielplatz zu sammeln. 
Dieser Algorithmus wurde entwickelt, um drei Festplatten dreimal zu sammeln und zurückzugeben, um die Disk Mover Challenge abzuschließen. Die gleiche Logik, die zum wiederholten Sammeln und Verschieben von Festplatten mithilfe von Sequenz, Auswahl und Iteration angewendet wird, kann auch auf andere Herausforderungen wie die Dynamic Castle Crasher Challenge angewendet werden.
Fragen
Bitte wählen Sie unten einen Link aus, um auf das Lektionsquiz zuzugreifen.
Google Doc / .docx / .pdf