GPS-Sensor#
Einführung#
Der V5 GPS-Sensor (Game Positioning System™) ermöglicht die präzise Positions- und Orientierungsbestimmung eines Roboters auf dem VEX-Spielfeld. Er nutzt den GPS-Feldcode entlang des Spielfeldrandes, um die X- und Y-Koordinaten sowie die Fahrtrichtung des Roboters in Echtzeit zu berechnen.
Der GPS-Sensor gibt die Position des Roboters anhand eines Referenzpunkts zurück, der automatisch aus den bei der Konfiguration des GPS-Sensors im Gerätefenster eingegebenen Offsets berechnet wird.
Weitere Informationen zum GPS-Sensor finden Sie unter Using the GPS Sensor with VEX V5 in der VEX-Bibliothek.
Der Referenzpunkt dient als die (0, 0)-Position des GPS-Sensors, auf die sich alle von GPS-Methoden zurückgegebenen Koordinaten, Kurse und Bewegungen beziehen.

Diese Seite verwendet gps_sensor als Beispielnamen für den GPS-Sensor. Ersetzen Sie diesen bei Bedarf durch Ihren eigenen Namen.
Nachfolgend finden Sie eine Liste der verfügbaren Methoden:
calibrate– Kalibriert den GPS-Sensor, um seine Richtung auf die aktuelle Antriebsrichtung einzustellen.set_origin– Legt die Position des Referenzpunkts am Roboter fest.set_location– Legt sowohl die Position als auch die Richtung des Referenzpunktes auf dem Feld fest.x_position– Gibt die x-Koordinate des Referenzpunkts auf dem Feld zurück.y_position– Gibt die y-Koordinate des Referenzpunkts auf dem Feld zurück.heading– Gibt die Richtung des Referenzpunkts basierend auf der Feldausrichtung zurück.acceleration– Gibt die Beschleunigung des Roboters auf einer ausgewählten Achse zurück.gyro_rate– Gibt die Rotationsgeschwindigkeit des Roboters um eine ausgewählte Achse zurück.orientation– Gibt die Roll-, Nick- oder Gierorientierung des Roboters in Grad zurück.quality– Gibt die Signalstärke des GPS-Sensors zurück.changed– Registriert eine Funktion, die aufgerufen wird, sobald der GPS-Sensor eine Kursänderung erkennt.
Konstruktor – Manuelle Initialisierung eines GPS-Sensors.
Gps– Erzeugt einen GPS-Sensor.
kalibrieren#
calibrate kalibriert den Referenzpunkt und legt dessen konfigurierte Richtung als aktuelle Antriebsrichtung fest. Währenddessen muss der Roboter absolut stillstehen, da Bewegungen während der Kalibrierung zu ungenauen Ergebnissen führen.
Usage:
gps_sensor.calibrate()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
set_origin#
Mit dem Befehl set_origin wird die Position des Referenzpunkts am Roboter manuell festgelegt. Dies ermöglicht die manuelle Einstellung der GPS-Sensorposition am Roboter, anstatt dies in den Konfigurationseinstellungen vorzunehmen.
Usage:
gps_sensor.set_origin(x, y, distance_units)
Parameter |
Beschreibung |
|---|---|
X |
Die x-Koordinate des Referenzpunktes am Roboter. |
y |
Die y-Koordinate des Referenzpunktes am Roboter. |
Distanzeinheiten |
Die Maßeinheit für die x- und y-Koordinaten:
|
# GPS Sensor is mounted 25mm forward
# from the reference point on a robot
gps.set_origin(0, 25, MM)
Standort festlegen#
Mit dem Befehl set_location werden Position und Richtung des Referenzpunkts auf dem Spielfeld manuell festgelegt. Dies kann dazu beitragen, Ungenauigkeiten zu reduzieren, falls sich der GPS-Sensor beim Start zu nah an den Spielfeldwänden befindet und daher nicht genügend Daten vom GPS-Spielfeldcode erfassen kann.

Usage:
gps_sensor.set_location(x, y, distance_units, heading, heading_units)
Parameter |
Beschreibung |
|---|---|
X |
Die x-Koordinate des Referenzpunktes auf dem Feld. |
y |
Die y-Koordinate des Referenzpunktes auf dem Feld. |
Distanzeinheiten |
Die Maßeinheit für die x- und y-Koordinaten:
|
Überschrift |
Die Richtung, in die der Bezugspunkt relativ zur absoluten Feldrichtung zeigt, beträgt 0 bis 359,9 Grad. |
Überschrifteneinheiten |
Die Maßeinheit für die Überschrift: |
x-Position#
x_position gibt die x-Koordinate des Referenzpunkts auf dem Feld zurück.
Usage:
gps_sensor.x_position(units)
Parameter |
Beschreibung |
|---|---|
Einheit |
Die Maßeinheit:
|
y-Position#
y_position gibt die y-Koordinate des Referenzpunkts auf dem Feld zurück.
Usage:
gps_sensor.y_position(units)
Parameter |
Beschreibung |
|---|---|
Einheit |
Die Maßeinheit:
|
Überschrift#
heading gibt die Richtung des Referenzpunktes basierend auf der Ausrichtung des Feldes von 0 bis 359,9 Grad zurück.
Die Angabe entspricht der absoluten Feldkursangabe, die im Uhrzeigersinn einen Bereich von 0° bis 359,9° umfasst. Der Nullpunkt liegt bei 12 Uhr.

Usage:
gps_sensor.heading()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
Beschleunigung#
acceleration gibt die Beschleunigung des Roboters auf einer bestimmten Achse von -4,0 bis 4,0 Gs zurück.
Usage:
gps_sensor.acceleration(axis)
Parameter |
Beschreibung |
|---|---|
Achse |
Welche Achse soll verwendet werden:
|
Kreiselrate#
gyro_rate gibt die Rotationsgeschwindigkeit des Roboters um eine ausgewählte Achse zurück.
Usage:
gps_sensor.gyro_rate(axis, units)
Parameter |
Beschreibung |
|---|---|
Achse |
Welche Achse soll verwendet werden:
|
Einheiten |
Die Maßeinheit:
|
Orientierung#
orientation gibt die Roll-, Nick- oder Gierorientierung des Roboters in Grad zurück.
Usage:
gps_sensor.orientation(axis, units)
Parameter |
Beschreibung |
|---|---|
Achse |
Welche Ausrichtung verwenden:
|
Einheiten |
Die Maßeinheit: |
Qualität#
quality gibt die Signalstärke des GPS-Sensors in Prozent zurück.
Mögliche Werte |
Beschreibung |
|---|---|
100 |
Alle vom GPS-Sensor gemeldeten Positions- und Kursdaten sind gültig. |
~90 |
Die Positionsdaten werden nicht mehr durch Erfassung von Informationen aus dem GPS-Feldcode berechnet, sondern durch alternative Methoden. |
0 - 80 |
Nur die vom GPS-Sensor angegebenen Kurswerte sind gültig. Da der GPS-Sensor jedoch mit der Zeit nicht mehr genügend GPS-Feldcode abtastet, um Positions- und Kursinformationen genau zu bestimmen, sinkt die gemeldete Signalqualität kontinuierlich bis auf 0, wodurch alle GPS-Sensordaten praktisch eingefroren und ungültig werden. |
Usage:
gps_sensor.quality()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
geändert#
changed registriert eine Funktion, die aufgerufen wird, sobald der GPS-Sensor eine Kursänderung erkennt.
Usage:
gps_sensor.changed(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn sich die Ausrichtung des GPS-Sensors ändert. |
|
Optional. Ein Tupel mit Argumenten, die an die Callback-Funktion übergeben werden sollen. Weitere Informationen finden Sie unter Verwendung von Funktionen mit Parametern. |
def my_function():
brain.screen.print("GPS heading changed")
# Call my_function whenever gps_sensor's heading changes
gps_sensor.changed(my_function)
Konstruktor#
Konstruktoren werden verwendet, um manuell Gps Objekte zu erstellen, die für die Konfiguration eines GPS-Sensors außerhalb von VEXcode erforderlich sind.
Gps#
Gps erstellt einen GPS-Sensor.
Usage:
Gps(smartport)
Parameter |
Beschreibung |
|---|---|
|
Der Smart Port, an den der GPS-Sensor angeschlossen ist, wird als |
# Create a GPS Sensor in Port 10
gps_sensor = Gps(Ports.PORT10)