Sensor GPS#
Introdução#
O sensor V5 GPS (Game Positioning System™) proporciona um seguimento preciso da posição e orientação de um robô no campo VEX. Utiliza o código GPS do campo em redor do perímetro para calcular as coordenadas X e Y e a direção do robô em tempo real.
O sensor GPS devolve a posição do robô utilizando um ponto de referência calculado automaticamente a partir dos deslocamentos introduzidos ao configurar o sensor GPS na janela Dispositivos.
Para obter mais informações sobre o sensor GPS, leia Utilizar o sensor GPS com VEX V5 na biblioteca VEX.
O ponto de referência atua como a própria posição (0, 0) do sensor GPS, onde todas as coordenadas, direções e movimentos devolvidos pelos métodos GPS são relativos a este ponto configurado.

Esta página utiliza gps_sensor como exemplo do nome do sensor GPS. Substitua-o pelo nome que configurou, se necessário.
Segue-se uma lista dos métodos disponíveis:
calibrate– Calibra o sensor GPS para definir a sua direção como a direção atual da transmissão.set_origin– Define a posição do ponto de referência no robô.set_location– Define a posição e a direção do ponto de referência no Campo.x_position– Devolve a coordenada x do ponto de referência no Campo.y_position– Devolve a coordenada y do ponto de referência no Campo.heading– Retorna o rumo do ponto de referência com base na orientação do campo.acceleration– Devolve a aceleração do robô num eixo selecionado.gyro_rate– Devolve a velocidade de rotação do robô num eixo selecionado.orientation– Devolve a orientação de rotação, inclinação ou guinada do robô em graus.quality– Devolve a intensidade do sinal do sensor GPS.changed– Regista uma função a ser chamada sempre que o sensor GPS detete uma mudança de direção.
Construtor – Inicializa manualmente um sensor GPS.
Gps– Cria um sensor GPS.
calibrar#
O comando calibrate pois qualquer movimento durante a calibração produzirá resultados imprecisos.
Usage:
gps_sensor.calibrate()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
definir_origem#
O comando set_origin define manualmente a posição do ponto de referência no robô. Isto permite definir manualmente a localização de um sensor GPS no robô, em vez de o fazer nas definições.
Usage:
gps_sensor.set_origin(x, y, distance_units)
Parâmetros |
Descrição |
|---|---|
x |
A coordenada x do ponto de referência no robô. |
y |
A coordenada y do ponto de referência no robô. |
unidades_de_distância |
As unidades de medida para as coordenadas x e y são:
|
# GPS Sensor is mounted 25mm forward
# from the reference point on a robot
gps.set_origin(0, 25, MM)
definir_local#
O comando set_location define manualmente a posição e a direcção do ponto de referência no campo. Isto pode ser feito para ajudar a reduzir as imprecisões no caso de o sensor GPS estar demasiado próximo das paredes do campo no arranque, impedindo-o de obter uma quantidade suficiente do código GPS do campo no seu campo de visão.

Usage:
gps_sensor.set_location(x, y, distance_units, heading, heading_units)
Parâmetros |
Descrição |
|---|---|
x |
A coordenada x do ponto de referência no campo. |
y |
A coordenada y do ponto de referência no campo. |
unidades_de_distância |
As unidades de medida para as coordenadas x e y são:
|
cabeçalho |
A direção para a qual o ponto de referência está virado em relação à direção absoluta do campo, variando de 0 a 359,9 graus. |
unidades_de_cabeçalho |
A unidade de medida para o título é: |
posição x#
x_position devolve a coordenada x do ponto de referência no campo.
Usage:
gps_sensor.x_position(units)
Parâmetros |
Descrição |
|---|---|
unidade |
Unidade de medida:
|
posição_y#
y_position devolve a coordenada y do ponto de referência no campo.
Usage:
gps_sensor.y_position(units)
Parâmetros |
Descrição |
|---|---|
unidade |
Unidade de medida:
|
cabeçalho#
heading devolve a direcção do ponto de referência com base na orientação do campo, de 0 a 359,9 graus.
O rumo corresponde ao rumo absoluto do campo, que varia de 0º a 359,9º no sentido dos ponteiros do relógio. O 0º está na posição das 12 horas.

Usage:
gps_sensor.heading()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
aceleração#
A aceleração acceleration variando de -4,0 a 4,0 Gs.
Usage:
gps_sensor.acceleration(axis)
Parâmetros |
Descrição |
|---|---|
eixo |
Que veio utilizar:
|
taxa_giro#
gyro_rate devolve a velocidade de rotação do robô num eixo selecionado.
Usage:
gps_sensor.gyro_rate(axis, units)
Parâmetros |
Descrição |
|---|---|
eixo |
Que veio utilizar:
|
unidades |
Unidade de medida:
|
orientação#
A orientação orientation rotação, inclinação ou guinada do robô em graus.
Usage:
gps_sensor.orientation(axis, units)
Parâmetros |
Descrição |
|---|---|
eixo |
Que orientação utilizar:
|
unidades |
A unidade de medida: |
qualidade#
quality returns the signal strength of the GPS Sensor as a percent.
Valores possíveis |
Descrição |
|---|---|
100 |
Todos os dados de posição e direção reportados pelo sensor GPS são válidos. |
~90 |
Os dados de posicionamento já não são calculados através da captura de informações do código de campo do GPS, mas sim por meios alternativos. |
0 - 80 |
Apenas os valores de direção do sensor GPS são válidos, mas com o passar do tempo, enquanto o sensor GPS não estiver a digitalizar campos suficientes do código GPS para determinar com precisão a posição e a direção, a qualidade do sinal reportado continuará a cair até chegar a 0, altura em que todos os dados do sensor GPS ficam efetivamente congelados e deixam de ser válidos. |
Usage:
gps_sensor.quality()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
mudado#
changed regista uma função a ser chamada sempre que o sensor GPS detete uma mudança de direção.
Usage:
gps_sensor.changed(callback, arg)
Parâmetros |
Descrição |
|---|---|
|
Uma função previamente definida que é executada quando a direção do sensor GPS muda. |
|
Opcional. Uma tupla contendo argumentos para passar para a função de callback. Consulte Utilizar funções com parâmetros para obter mais informações. |
def my_function():
brain.screen.print("GPS heading changed")
# Call my_function whenever gps_sensor's heading changes
gps_sensor.changed(my_function)
Construtor#
Os construtores são utilizados para criar manualmente objetos Gps , que são necessários para configurar um sensor GPS fora do VEXcode.
Gps#
Gps cria um sensor GPS.
Usage:
Gps(smartport)
Parâmetro |
Descrição |
|---|---|
|
A porta inteligente à qual o sensor GPS está ligado é representada por |
# Create a GPS Sensor in Port 10
gps_sensor = Gps(Ports.PORT10)