Czujnik GPS#
Wstęp#
Czujnik V5 GPS (Game Positioning System™) zapewnia precyzyjne śledzenie położenia i orientacji robota na polu VEX. Wykorzystuje on kod GPS wokół obwodu pola do obliczania współrzędnych X i Y oraz kierunku ruchu robota w czasie rzeczywistym.
Czujnik GPS zwraca położenie robota, korzystając z punktu odniesienia automatycznie obliczonego na podstawie przesunięć wprowadzonych podczas konfiguracji czujnika GPS w oknie Urządzenia.
Aby uzyskać więcej informacji na temat czujnika GPS, przeczytaj Korzystanie z czujnika GPS z VEX V5 w bibliotece VEX.
Punkt odniesienia działa jak własna pozycja czujnika GPS (0, 0), w której wszystkie współrzędne, kierunki i ruchy zwracane przez metody GPS są względne względem tego skonfigurowanego punktu.

Ta strona używa gps_sensor jako przykładowej nazwy czujnika GPS. W razie potrzeby zastąp ją własną, skonfigurowaną nazwą.
Poniżej znajduje się lista dostępnych metod:
calibrate– Kalibruje czujnik GPS, aby ustawić jego kierunek jako aktualny kierunek układu napędowego.set_origin– Ustawia położenie punktu odniesienia na robocie.set_location– Ustawia położenie punktu odniesienia i kierunek na polu.x_position– Zwraca współrzędną x punktu odniesienia na polu.y_position– Zwraca współrzędną y punktu odniesienia na polu.heading– Zwraca nagłówek punktu odniesienia na podstawie orientacji pola.acceleration– Zwraca przyspieszenie robota na wybranej osi.gyro_rate– Zwraca prędkość obrotową robota na wybranej osi.orientation– Zwraca orientację przechyłu, pochylenia lub odchylenia robota w stopniach.quality– Zwraca siłę sygnału czujnika GPS.changed– Rejestruje funkcję, która ma zostać wywołana za każdym razem, gdy czujnik GPS wykryje zmianę kierunku.
Konstruktor – Ręczna inicjalizacja czujnika GPS.
Gps– Tworzy czujnik GPS.
kalibrować#
calibrate kalibruje punkt odniesienia, ustawiając jego skonfigurowany kierunek jako aktualny kierunek układu napędowego. W tym czasie robot musi pozostać całkowicie nieruchomy, ponieważ ruch podczas kalibracji spowoduje uzyskanie niedokładnych wyników.
Usage:
gps_sensor.calibrate()
Parametry |
Opis |
|---|---|
Ta metoda nie ma żadnych parametrów. |
ustaw_pochodzenie#
set_origin ustawia ręcznie położenie punktu odniesienia na robocie. Można to zrobić, aby ręcznie ustawić lokalizację czujnika GPS na robocie, zamiast robić to w ustawieniach konfiguracji.
Usage:
gps_sensor.set_origin(x, y, distance_units)
Parametry |
Opis |
|---|---|
X |
Współrzędna x punktu odniesienia na robocie. |
y |
Współrzędna y punktu odniesienia na robocie. |
jednostki_odległości |
Jednostka miary dla współrzędnych x i y:
|
# GPS Sensor is mounted 25mm forward
# from the reference point on a robot
gps.set_origin(0, 25, MM)
ustaw_lokalizację#
set_location ręcznie ustawia pozycję i kierunek punktu odniesienia na Polu. Można to zrobić, aby zmniejszyć niedokładności, jeśli czujnik GPS znajduje się zbyt blisko ścian Polu podczas uruchamiania, aby uzyskać wystarczającą ilość kodu Polu GPS w swoim polu widzenia.

Usage:
gps_sensor.set_location(x, y, distance_units, heading, heading_units)
Parametry |
Opis |
|---|---|
X |
Współrzędna x punktu odniesienia na polu. |
y |
Współrzędna y punktu odniesienia na polu. |
jednostki_odległości |
Jednostka miary dla współrzędnych x i y:
|
nagłówek |
Kierunek, w którym zwrócony jest punkt odniesienia, względem absolutnego kierunku pola od 0 do 359,9 stopnia. |
jednostki nagłówkowe |
Jednostka miary dla nagłówka: |
x_position#
x_position zwraca współrzędną x punktu odniesienia na polu.
Usage:
gps_sensor.x_position(units)
Parametry |
Opis |
|---|---|
jednostka |
Jednostka miary:
|
pozycja y#
y_position zwraca współrzędną y punktu odniesienia w polu.
Usage:
gps_sensor.y_position(units)
Parametry |
Opis |
|---|---|
jednostka |
Jednostka miary:
|
nagłówek#
heading zwraca kierunek punktu odniesienia na podstawie orientacji pola od 0 do 359,9 stopnia.
Nagłówek odpowiada bezwzględnemu nagłówkowi pola, który mieści się w zakresie od 0° do 359,9° zgodnie z ruchem wskazówek zegara. 0° znajduje się na godzinie 12.

Usage:
gps_sensor.heading()
Parametry |
Opis |
|---|---|
Ta metoda nie ma żadnych parametrów. |
przyśpieszenie#
acceleration zwraca przyspieszenie robota na określonej osi od -4,0 do 4,0 Gs.
Usage:
gps_sensor.acceleration(axis)
Parametry |
Opis |
|---|---|
oś |
Której osi użyć:
|
prędkość_żyroskopu#
gyro_rate zwraca prędkość obrotową robota na wybranej osi.
Usage:
gps_sensor.gyro_rate(axis, units)
Parametry |
Opis |
|---|---|
oś |
Której osi użyć:
|
jednostki |
Jednostka miary:
|
orientacja#
orientation zwraca orientację przechyłu, pochylenia lub odchylenia robota w stopniach.
Usage:
gps_sensor.orientation(axis, units)
Parametry |
Opis |
|---|---|
oś |
Której orientacji użyć:
|
jednostki |
Jednostka miary: |
jakość#
quality zwraca siłę sygnału czujnika GPS jako wartość procentową.
Możliwe wartości |
Opis |
|---|---|
100 |
Wszystkie podane przez czujnik GPS dane dotyczące położenia i kierunku są prawidłowe. |
~90 |
Wszelkie dane dotyczące położenia nie są już obliczane poprzez przechwytywanie informacji z kodu GPS, lecz za pomocą alternatywnych metod. |
0 - 80 |
Ważne są tylko wartości kierunku czujnika GPS, ale im dłużej czujnik GPS nie skanuje wystarczającej ilości kodu pola GPS, aby dokładnie określić informacje o pozycji i kierunku, tym jakość zgłaszanego sygnału będzie się pogarszać, aż do 0, kiedy to wszelkie dane czujnika GPS zostaną w zasadzie zamrożone i przestaną być ważne. |
Usage:
gps_sensor.quality()
Parametry |
Opis |
|---|---|
Ta metoda nie ma żadnych parametrów. |
zmieniony#
changed rejestruje funkcję, która ma zostać wywołana za każdym razem, gdy czujnik GPS wykryje zmianę kierunku.
Usage:
gps_sensor.changed(callback, arg)
Parametry |
Opis |
|---|---|
|
Wcześniej zdefiniowana funkcja, która jest wykonywana, gdy zmienia się kierunek czujnika GPS. |
|
Opcjonalnie. Krotka zawierająca argumenty do przekazania do funkcji wywołania zwrotnego. Więcej informacji można znaleźć w Używanie funkcji z parametrami. |
def my_function():
brain.screen.print("GPS heading changed")
# Call my_function whenever gps_sensor's heading changes
gps_sensor.changed(my_function)
Konstruktor#
Konstruktory służą do ręcznego tworzenia obiektów Gps , które są niezbędne do konfiguracji czujnika GPS poza VEXcode.
Gps#
Gps tworzy czujnik GPS.
Usage:
Gps(smartport)
Parametr |
Opis |
|---|---|
|
Inteligentny port, do którego podłączony jest czujnik GPS, zapisany jako |
# Create a GPS Sensor in Port 10
gps_sensor = Gps(Ports.PORT10)