Lektion 3: Mehrfacher Sensoreingang
In der vorherigen Lektion wurde der Abstandssensor verwendet, um festzustellen, ob der VR-Roboter ein Objekt erkannt hat oder nicht, und wenn ja, fuhr er vorwärts auf das Objekt zu. Es wurden jedoch keine Sensorwerte verwendet, um festzustellen, ob sich der VR-Roboter in der Nähe des Randes des Spielplatzes befand, um ihn zu stoppen. Das Anhalten des VR-Roboters, wenn er sich in der Nähe des Randes des Spielplatzes befand, würde verhindern, dass er von der Seite wegfährt.

So wie es ist, wiederholt das Projekt die Verhaltensweisen des Vorwärtsfahrens und Wendens für immer. Es gibt jedoch keine Bedingung, um nach dem roten Rand um den Spielplatz zu suchen. So kann der VR-Roboter beim Vorwärtsfahren vom Spielplatz fallen.

Ein weiterer Sensor wird benötigt, damit der VR-Roboter feststellen kann, ob er sich in der Nähe des Spielplatzrandes befindet oder nicht. Das Verhalten, vorwärts zu fahren und zu drehen, muss nur so lange wiederholt werden, bis die rote Grenze erkannt wird. Somit kann der [Forever] -Block durch den [Repeat until] -Block ersetzt werden, um die Verhaltensweisen des Vorwärtsfahrens und Drehens zu wiederholen, bis die Bedingung der Erkennung der roten Grenze erfüllt ist. Der Down Eye Sensor kann verwendet werden, um festzustellen, ob sich der VR-Roboter in der Nähe des Randes des Spielplatzes befindet, indem der rote Rand um den Spielplatz erkannt wird.

- Laden Sie das Unit9Lesson2-Projekt aus der vorherigen Lektion.

- Benennen Sie das Projekt Unit9Lesson3 um.

- Ein Block ist erforderlich, um den Down Eye Sensor kontinuierlich zu überprüfen. Der VR-Roboter muss diese Verhaltensweisen wiederholen, bis der Down Eye Sensor die Farbe Rot erkennt. Entfernen Sie zuerst den [Forever] -Block.

- Fügen Sie einen [Wiederholen bis] -Block hinzu.

- Fügen Sie einen <Color sensing> Block innerhalb des Blocks [Wiederholen bis] hinzu und stellen Sie die Parameter auf ‘DownEye’ erkennt ‘rot’.

In diesem Projekt wird ein Block [Wiederholen bis] anstelle eines Blocks [Warten bis] verwendet. Dies liegt daran, dass ein [Warten bis] -Block ein wartender Block ist, der den Projektfluss pausiert, bis die Bedingung erfüllt ist. Wenn ein [Wait until] -Block verwendet wird, wird der [If then else] -Block erst ausgeführt, wenn die Bedingung des [Wait until] erfüllt ist und der [If then else] -Block nur einmal ausgeführt wird.

Durch die Verwendung eines [Repeat until] -Blocks wird die Bedingung [If then else] ständig überprüft und ausgeführt.

- Fügen Sie einen Kommentar hinzu, um den Zweck der Verwendung des Blocks [Wiederholen bis] zu vermerken.

- Öffne den Dynamic Castle Crasher Playground und führe das Projekt aus.
-
Wenn dieses Projekt ausgeführt wird, fährt der VR-Roboter auf ein erkanntes Objekt zu und biegt andernfalls nach rechts ab. Obwohl der Down Eye Sensor nach der roten Grenze sucht, wird dem VR-Roboter nicht gesagt, was er tun soll, sobald er Rot erkennt, also fährt er weiter und fällt schließlich vom Spielplatz.

Sobald die Bedingung des Blocks [Wiederholen bis] erfüllt ist, wird der Projektablauf aus dem Block [Wiederholen bis] ausgeführt.
Wählen Sie die Schaltfläche Weiter um mit dem Rest dieser Lektion fortzufahren.