Codierung des V5-Abstandssensors mithilfe mathematischer Ungleichungen

Durch die Verwendung des V5-Abstandssensors an Ihrem Roboter während eines VEX Robotics Competition (VRC)-Spiels kann Ihr Roboter durch autonome Bewegungen mehr Punkte erzielen.

Das für diesen Artikel als Beispiel verwendete Spiel ist das VRC-Spiel Tipping Point 2021–2022. Weitere Informationen zum Spiel und zur Spielweise finden Sie auf Seite. Die in diesem Artikel verwendeten Spieldefinitionen, eine Übersicht über die Spielregeln und die Wertung Sie im Spielhandbuch für Tipping Point.


Der V5-Abstandssensor

Schräge Ansicht des V5-Distanzsensors.

Der V5 Distance Sensor ist einer der leistungsstarken V5-Sensoren, die für die vollständige Integration in die V5-Robotikplattform konzipiert sind.

  • Dieser Sensor verwendet einen klassenzimmersicheren Laserlichtimpuls, um den Abstand von der Vorderseite des Sensors zu einem Objekt zu messen.
  • Der V5-Abstandssensor kann zur Erkennung eines Objekts und zur Bestimmung der relativen Größe des Objekts verwendet werden. Die ungefähre Größe eines Objekts wird als klein, mittel oder groß angegeben.
  • Der Sensor kann auch zur Berechnung der Annäherungsgeschwindigkeit eines Roboters verwendet werden. Die Annäherungsgeschwindigkeit misst die Geschwindigkeit des Roboters/Sensors, während er sich auf das Objekt zubewegt.

Für detailliertere Informationen zum V5-Distanzsensor, seiner Funktionsweise und seiner Verwendung mit VEXcode V5, vlesen Sie bitte diesen Artikel aus der VEX Library.


Beispiel für einen V5-Abstandssensor

Das Ziel dieses Projekts besteht darin, dass der Roboter mithilfe des V5-Abstandssensors ein mobiles Ziel aufnimmt und bewegt, um zu erkennen, wie weit das Ziel entfernt ist.

Ein VEXcode V5 Blocks-Projekt, das vorwärts fährt, bis es ein mobiles Ziel erkennt, es aufnimmt und dann bewegt. Das Projekt lautet: Nach dem Start fahren Sie vorwärts, warten Sie, bis der Abstand zwischen DistanceCenter und Objekt in mm weniger als 139 beträgt, und stoppen Sie dann die Fahrt. Als nächstes die ForkMotors um 600 Grad drehen und dann um 90 Grad nach links lenken. Als nächstes 600 mm vorwärts fahren, die Gabelmotoren um 600 Grad nach unten drehen und dann 300 mm rückwärts fahren.

Dies ist das Codebeispiel, das in diesem Artikel behandelt wird.

Es wird eine Aufschlüsselung der Verhaltensweisen im Beispiel und wie man die Parameter erhält, die zum Codieren des V5-Abstandssensors verwendet werden, behandelt.

Sie können das Projekt in VEXcode V5 erstellen, während Sie dem Artikel folgen, oder Sie können den Artikel einfach zur Inspiration als Beispiel lesen, wie Sie den V5-Distanzsensor in die Codierung Ihres eigenen benutzerdefinierten Roboters einbinden können.

Dieses Video zeigt, wie der obige Code ausgeführt wird und wie der Roboter ein mobiles Ziel aufnimmt und bewegt.

In diesem Beispiel wird das Menü „VEXcode V5 Geräte“ geöffnet, um die Gerätekonfiguration anzuzeigen. Im Menü wird zunächst ein Distanzsensor mit der Bezeichnung DistanceCenter an Port 19 aufgeführt. Als Nächstes folgt ein Antriebsstrang mit Motoren an den Anschlüssen 1 und 10 sowie einem Trägheitssensor an Anschluss 3. Zu guter Letzt gibt es noch eine Motorengruppe namens ForkMotors an den Anschlüssen 2 und 9.

Hier ist die Roboterkonfiguration, die in VEXcode V5 verwendet wird, um den Roboter und den Abstandssensor zur Konfiguration für dieses Beispiel hinzuzufügen, falls Sie das Beispiel selbst ausprobieren möchten.

Für dieses Beispiel verwendeter Roboter

Ansicht des Moby Hero Bot von oben, wobei ein zusätzlicher V5-Distanzsensor hervorgehoben ist. Der Abstandssensor befindet sich hinter und unterhalb der Gabel des Roboters und ist nach vorne gerichtet.

Der in diesem Beispiel verwendete Roboter ist der VRC Hero Bot 2021-2022, Moby. Mobys Design verfügt über keine Sensoren, für dieses Beispiel wurde Moby der V5-Abstandssensor hinzugefügt.

In diesem Beispiel ist der V5-Abstandssensor nahe der Mitte von Mobys Gabeln montiert.

Weitere Informationen zu finden Sie in diesem Artikel aus der VEX Library.

Sie müssen Moby nicht verwenden, um den V5-Abstandssensor zu programmieren oder am diesjährigen Wettbewerb teilzunehmen. Sie können den Sensor an Ihrem individuellen Roboter montieren, wo immer Sie es für richtig halten.

Hinweis: Stellen Sie sicher, dass sich keine Struktur am Roboter vor dem kleinen Laserfenster auf der Vorderseite des Sensors befindet. Zwischen dem Tor und dem Sensor muss vor dem Sensor ein freier Weg vorhanden sein.

Aufschlüsselung der zu bewertenden Verhaltensweisen

Um ein mobiles Ziel aufzunehmen und mithilfe des Feedbacks des V5-Abstandssensors zu bewegen, müssen Sie zunächst aufschlüsseln, wie sich der Roboter bewegen soll.

Der Moby-Roboter wird auf einem Spielfeld platziert, wobei sich einige Meter davor ein mobiles Tor befindet.

Zunächst sollte der Roboter so platziert werden, dass er dem mobilen Ziel gegenübersteht.

Der Roboter Moby ist zu sehen, nachdem er vorwärts gefahren ist, um das mobile Ziel zu erfassen. Das mobile Ziel befindet sich nun innerhalb der Gabelarme des Roboters.

Dann sollte der Roboter vorwärts fahren, bis der Abstandssensor erkennt, dass sich das mobile Tor innerhalb der Gabeln und in der Nähe des Sensors befindet.

Der Roboter Moby ist zu sehen, nachdem er das mobile Ziel erkannt und seine Arme zum Aufheben ausgehoben hat.

Sobald der Sensor erkennt, dass sich das mobile Tor innerhalb der Gabeln oder in der Nähe des Sensors befindet, stoppt der Roboter die Fahrt und hebt die Gabeln an, um das mobile Tor aufzunehmen.

Der Moby-Roboter, der das Mobile Goal trägt, hat sich um 90 Grad nach links gedreht.

Sobald das mobile Tor aufgenommen wurde, dreht sich der Roboter um 90 Grad nach links und fährt 600 Millimeter (mm) vorwärts.

Der Moby-Roboter senkte seine Gabel ab, um das mobile Ziel abzusetzen, und fuhr dann rückwärts.

Anschließend senkt der Roboter die Gabeln ab, um das mobile Tor abzustellen, und fährt rückwärts vom mobilen Tor weg, damit er es bei der nächsten Bewegung nicht versehentlich umstößt.


Parameter verstehen

Um die oben genannten Verhaltensweisen auszuführen, ist es wichtig zu verstehen, wie weit das mobile Ziel vom V5-Distanzsensor entfernt ist.

Parameter zum Aufnehmen des mobilen Tors mithilfe des V5-Distanzsensors

Ein Moby-Roboter steht auf einem Spielfeld, zwischen dessen Gabeln ein mobiles Ziel platziert ist, um die ideale Distanz zu ermitteln.

Damit der Roboter vorwärts fahren kann, bis der Abstandssensor erkennt, dass sich das mobile Tor innerhalb der Gabeln und in der Nähe des Sensors befindet, müssen die Werte des Sensors vom V5 Brain aufgezeichnet werden.

Platzieren Sie das mobile Tor zwischen den Gabeln des Roboters.

Der Bildschirm „V5 Brain“ wird im Startmenü angezeigt, wobei die Option „Geräte“ hervorgehoben ist.Der Brain-Bildschirm wird im Menü „Geräteinfo“ angezeigt, das eine Liste aller Smart Ports des Brain und der angeschlossenen Geräte enthält. Das Symbol für den Abstandssensor im Menü „Geräteinfo“ ist hervorgehoben, um anzuzeigen, dass Elemente ausgewählt werden können, um ihre Informationsmenüs zu öffnen.

Wählen Sie dann auf dem Brain-Bildschirm „Geräte“ und dann das Symbol für den Abstandssensor aus.

Im Menü „Distanzsensor“ wird der Bildschirm „Gehirn“ angezeigt, in dem die Daten des Sensors aufgelistet sind. Das Menü zeigt Daten zu Größe, Geschwindigkeit und Entfernung eines Objekts an. Das Menü enthält außerdem ein Diagramm, das die Entfernung und ihre Veränderung im Laufe der Zeit veranschaulicht. Auf diesem Screenshot ist das Objekt klein, seine Geschwindigkeit beträgt 0 Meter pro Sekunde und seine Entfernung beträgt 139 mm.

Der Abstand des mobilen Tors vom Sensor in Millimetern (mm) wird auf dem Brain-Bildschirm angezeigt.

Das gleiche VEXcode V5 Blocks-Projekt wie zuvor, das vorwärts fährt, bis es ein mobiles Ziel erkennt, es aufnimmt und dann bewegt. Der Wert, mit dem die Objektentfernung des Distanzsensors im Projekt verglichen wird, lautet 139 und ist hervorgehoben.

Dies ist der Wert, der im Projekt verwendet wird, wenn das mobile Tor mithilfe des Distanzsensors aufgenommen wird.

Parameter zum Anheben und Absenken der Gabeln

Ein Moby-Roboter auf einem Spielfeld mit einem mobilen Ziel zwischen seinen Gabeln.

Platzieren Sie das mobile Tor erneut in den Gabeln.

Der Brain-Bildschirm wird im Menü „Geräteinfo“ angezeigt, das eine Liste aller Smart Ports des Brain und der angeschlossenen Geräte enthält. Ein Motorsymbol im Menü „Geräteinfo“ ist hervorgehoben, um anzuzeigen, dass Elemente ausgewählt werden können, um ihre Informationsmenüs zu öffnen.

Wählen Sie dann auf dem Brain-Bildschirm „Geräte“ und dann das Symbol für Motor 2 aus. Motor 2 steuert die linke Gabel.

Ein Moby-Roboter steht auf einem Spielfeld, zwischen dessen angehobenen Gabeln sich ein mobiles Ziel befindet, das er aufnehmen soll.

Heben Sie die Gabeln manuell an, bis der untere Teil des mobilen Tors die Sicht des Distanzsensors nicht blockiert.

Stellen Sie beim manuellen Anheben der Gabeln sicher, dass jede Gabel auf der linken und rechten Seite von Moby gleichzeitig angehoben wird, da jede von ihrem eigenen Motor gesteuert wird.

Hinweis: Vermeiden Sie Quetschstellen beim manuellen Anheben der Gabeln.

Im Smart Motor-Menü, das die Gerätedaten auflistet, wird der Brain-Screen angezeigt. Das Menü enthält Messwerte und Diagramme, die die Daten des Geräts darstellen. In diesem Screenshot ist der Wert „Grad“ des Motors hervorgehoben und lautet 604.

Die Anzahl der Grad, um die die Gabeln angehoben wurden, wird auf dem Bildschirm des Gehirns angezeigt.

Das gleiche VEXcode V5 Blocks-Projekt wie zuvor, das vorwärts fährt, bis es ein mobiles Ziel erkennt, es aufnimmt und dann bewegt. Die Anzahl der Grad, um die sich die Gabelmotorgruppe im Projekt dreht, beträgt 600 und ist hervorgehoben.

Dies ist der Wert, der im Projekt verwendet wird, wenn die Gabeln angehoben und abgesenkt werden, um das mobile Tor aufzunehmen und zu platzieren.

Verwendung von Operatorblöcken

Der VEXcode V5 Kleiner-als-Operatorblock wird angezeigt. Dieser Block dient dazu, zwei Werte zu vergleichen und zu melden, ob der erste Wert kleiner als der zweite ist.

In diesem Projekt wird der <Less than> Operatorblock zur Codierung des Distanzsensors verwendet.

Im Menü „Distanzsensor“ wird der Bildschirm „Gehirn“ angezeigt, in dem die Daten des Sensors aufgelistet sind. Das Menü zeigt Daten zu Größe, Geschwindigkeit und Entfernung eines Objekts an. Das Menü enthält außerdem ein Diagramm, das die Entfernung und ihre Veränderung im Laufe der Zeit veranschaulicht. Auf diesem Screenshot ist das Objekt klein, seine Geschwindigkeit beträgt 0 Meter pro Sekunde und seine Entfernung beträgt 139 mm.

Dies liegt daran, dass der Abstand (in Millimetern) zwischen dem Sensor und diesem Objekt abnimmt, je näher der Abstandssensor einem Objekt kommt.

Das gleiche VEXcode V5 Blocks-Projekt wie zuvor, das vorwärts fährt, bis es ein mobiles Ziel erkennt, es aufnimmt und dann bewegt. Der Wert, mit dem die Objektentfernung des Distanzsensors im Projekt verglichen wird, lautet 139 und ist hervorgehoben.

Es können Schwellenwerte ausgewählt werden, um Verhaltensweisen des Roboters auszulösen, sobald der Abstand einen vorgegebenen Wert unterschreitet.

Wenn der Roboter beispielsweise auf das mobile Ziel zufährt, verwenden Sie den <Less than> Operatorblock, um das Verhalten des Roboters auszulösen und anzuhalten, sobald der Abstand kleiner als ist, etwa 139 Millimeter (mm).

Moby-Roboter auf einem Spielfeld mit einem Mobile Goal in seinen Gabeln. Die Entfernung vom Distanzsensor zum mobilen Ziel wird durch einen roten Pfeil hervorgehoben.

Wenn sich dieser Wert beispielsweise auf 10 Millimeter (mm) ändert, würde der Roboter tatsächlich in das mobile Tor rennen und sich möglicherweise selbst beschädigen, da 10 Millimeter (mm) vom Sensor nicht weit genug sind, um zu verhindern, dass sich die Gabeln des Roboters berühren das mobile Ziel.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: