Detección GPS#
To make GPS Sensor blocks appear in VEXcode V5, a GPS (Game Positioning System™) Sensor must be configured in the Devices window.
Para obtener más información, consulte estos artículos:
Calibración de GPS#
El bloque Calibrar GPS calibra el sensor GPS cuando este se ha configurado como parte de un tren motriz V5. Esto establecerá el rumbo configurado del GPS (según su desplazamiento angular) como el rumbo actual del tren motriz.
calibrar [GPS 15 v]
Elija qué sensor GPS utilizar.
En este ejemplo, se calibrará el sensor GPS y luego se utilizará el rumbo del sensor para girar el robot hacia el rumbo de 180 grados del campo.
cuando empezó :: hat events
[Turn to face the lower Field wall using data from the GPS Sensor.]
calibrar [DrivetrainGPS]
girar hacia el rumbo (180) grados ▶
Establecer ubicación GPS#
El bloque Establecer ubicación GPS se utiliza para establecer las coordenadas X, Y y el rumbo de un sensor GPS a un valor conocido al inicio de un proyecto. Esto permite reducir las imprecisiones de los datos GPS debido a la proximidad del sensor a las paredes del campo al inicio del proyecto.
Establezca la ubicación [GPS 15 v] en (0) (0) [mm v] y (0) grados
Cuando un sensor GPS está demasiado cerca de las paredes del campo para leer el código de campo (por ejemplo, cuando un robot está en la posición de inicio de un juego en un campo), a menudo pueden ocurrir comportamientos inesperados si el código se basa en los datos de coordenadas y rumbo del GPS.
Elija qué sensor GPS utilizar.
Introduzca las coordenadas X e Y del punto de referencia de su robot en el campo, en esta ubicación conocida. El punto de referencia de su robot es la misma ubicación que se utilizó para calcular los desplazamientos al configurar el sensor GPS.
Elija las unidades que se utilizarán para las coordenadas X e Y.
La última entrada es la orientación del punto de referencia del robot. En la imagen de ejemplo anterior, el sensor GPS está montado mirando hacia atrás del robot, mientras que el punto de referencia se encuentra en el extremo del brazo. Dado que el punto de referencia está orientado hacia la pared derecha (orientación de 90°), el valor de orientación que debe introducirse es 90°.
El ejemplo que se muestra aquí establece la ubicación X e Y del robot en la posición inicial al comienzo del proyecto.
cuando empezó :: hat events
[Wait so the GPS has time to initialize.]
esperar (0.5) segundos
[Set the starting to the bottom left corner of the Field facing the right wall.]
Establezca la ubicación [GPS 20 v] en (-1200) (-1200) [mm v] y (90) grados
Posición GPS#
El bloque Posición GPS se utiliza para informar la ubicación de las coordenadas X o Y de un sensor GPS en el campo.
([GPS 15 v] posición [X v] en [mm v])
De manera predeterminada, el bloque informador de posición GPS informa la ubicación de las coordenadas X o Y de un sensor GPS.
Si se agrega un desplazamiento al configurar el sensor GPS, la posición X o Y informada será la del punto de referencia en el robot.
Seleccione un sensor GPS para informar la posición.
Seleccione de qué eje desea informar la posición: X o Y.
Elija en qué unidades se informará la posición: milímetros (mm) o pulgadas.
En este ejemplo, el robot (que comienza en el lado derecho del campo) avanza hacia el centro hasta que la posición X se indica inferior a 0 mm. Entonces, el robot deja de avanzar.
cuando empezó :: hat events
[Drive slowly towards the center of the Field.]
set drive velocity to (20) [% v]
unidad [adelante v]
[Stop driving when the GPS reports an X position near the center of the Field.]
esperar hasta <([GPS 20 v] posición [X v] en [mm v]) [math_less_than v] (0)>
deja de conducir
Rumbo GPS#
El bloque Rumbo GPS se utiliza para informar el rumbo de un sensor GPS en un campo en función de las lecturas del sensor del código de campo GPS.
([GPS 15 v] rumbo en grados)
El bloque de reporte de rumbo GPS informa un rango de 0,00 a 359,99 grados.
El rumbo corresponde al rumbo de campo, que abarca un rango de 0° a 359,9° en sentido horario. El 0° se encuentra a las 12 en punto.
De manera predeterminada, el bloque de reporte rumbo GPS informa el rumbo de un sensor GPS.
Si se agrega un desplazamiento de ángulo al configurar el sensor GPS, el rumbo informado será el del punto de referencia en el robot.
Seleccione un sensor GPS para informar el rumbo.
En este ejemplo, el robot (que comienza mirando hacia las 12 en punto del campo) gira hacia la pared derecha del campo hasta que se informa que su rumbo es mayor de 90 grados. Entonces, el robot deja de moverse.
cuando empezó :: hat events
[Turn slowly to face the right wall.]
establecer la velocidad de giro a (20) [% v]
turno [derecha v]
[Stop turning when the GPS reports a heading greater than 90 degrees..]
esperar hasta <([GPS 20 v] rumbo en grados) [math_greater_than v] (90)>
deja de conducir
Aceleración GPS#
El bloque Aceleración GPS se utiliza para informar el valor de aceleración del eje especificado en un sensor GPS.
([GPS 15 v] aceleración de [X v] eje en g)
El bloque Aceleración GPS informa un rango de valores de -4,0 a 4,0 Gs.
Elija qué sensor GPS utilizar.
Seleccione de qué eje desea informar la aceleración:
X - informa la aceleración de las rotaciones hacia adelante y hacia atrás del sensor GPS.
Y - informa la aceleración de las rotaciones izquierda y derecha del sensor GPS.
Z - informa la aceleración de los movimientos hacia arriba y hacia abajo del sensor GPS.
En este ejemplo, el robot se moverá hacia adelante y después de 1 segundo informará su aceleración actual en los ejes X e Y.
cuando empezó :: hat events
[Drive forward for one second.]
unidad [adelante v]
esperar (1) segundos
[Print the X and Y accelerations as the Drivetrain moves.]
imprimir ([GPS 15 v] aceleración de [X v] eje en g) en [Brain v] ◀ y coloque el cursor en la siguiente fila
imprimir ([GPS 15 v] aceleración de [Y v] eje en g) en [Brain v] ◀ y coloque el cursor en la siguiente fila
Velocidad del giroscopio GPS#
El bloque Velocidad de giro GPS se utiliza para informar la velocidad de rotación del eje especificado en un sensor GPS.
([GPS 15 v] velocidad de giro de [X v] eje en [dps v])
El bloque GPS Gyro Rate informa un rango de -1000 a 1000 grados por segundo \(dps\), o -167 a 167 revoluciones por minuto (rpm).
Elija qué sensor GPS utilizar.
Seleccione de qué eje desea informar la aceleración:
X: informa la velocidad de rotación cuando un sensor GPS gira en el eje X.
Y: informa la velocidad de rotación cuando un sensor GPS gira en el eje Y.
Z: informa la velocidad de rotación cuando un sensor GPS gira en el eje Z.
Elige en qué unidad quieres informar la velocidad del giroscopio: dps o rpm.
En este ejemplo, el robot girará hacia la izquierda y después de 1 segundo informará su velocidad de giro actual del eje X.
cuando empezó :: hat events
[Turn towards the left for one second.]
turno [izquierda v]
esperar (1) segundos
[Print the gyro rate of the X axis as the Drivetrain turns.]
imprimir ([GPS 15 v] velocidad de giro de [X v] eje en [dps v]) en [Brain v] ◀ y coloque el cursor en la siguiente fila
Orientación GPS#
El bloque Orientación GPS se utiliza para informar la orientación del eje especificado en un sensor GPS.
([GPS 15 v] orientación de [rollo v] en grados)
Elija qué sensor GPS utilizar.
Seleccione de qué eje desea informar la orientación:
roll: informa un valor entre -180 y +180 grados, que representa el ángulo de un sensor GPS cuando se inclina hacia la izquierda o hacia la derecha.
pitch: informa un valor entre -90 y +90 grados, que representa el ángulo de un sensor GPS cuando se inclina hacia adelante o hacia atrás.
guiñada: informa un valor entre -180 y +180 grados, que representa el ángulo de un sensor GPS cuando se gira sobre el eje vertical.
En este ejemplo, el robot girará hacia la izquierda y después de 1 segundo informará su guiñada.
cuando empezó :: hat events
[Turn towards the left for one second.]
turno [izquierda v]
esperar (1) segundos
[Print the yaw as the Drivetrain turns.]
imprimir ([GPS 15 v] orientación de [guiñada v] en grados) en [Brain v] ◀ y coloque el cursor en la siguiente fila
Calidad de la señal GPS#
El bloque Calidad de señal GPS se utiliza para informar un valor porcentual numérico de 0 a 100 que representa la calidad de señal actual de un sensor GPS.
Valor reportado |
Descripción |
---|---|
100 |
Todos los datos de posición y rumbo informados por un sensor GPS son válidos. |
~90 |
Los datos de posición ya no se calculan capturando información del código de campo VEX, sino a través de medios alternativos. |
0 - 80 |
Solo los valores de rumbo del sensor GPS son válidos, pero a medida que pasa el tiempo en el que un sensor GPS no escanea lo suficiente del código de campo VEX para determinar con precisión la información de posición y rumbo, la calidad de la señal informada continuará cayendo hasta 0, donde todos los datos del sensor GPS quedan efectivamente congelados y ya no son válidos. |
([GPS 15 v] calidad de señal en %)
Elija qué sensor GPS utilizar.
En este fragmento de código, la calidad de la señal se comprobará constantemente gracias al bucle Forever. La rama TRUE solo se ejecutará si la calidad de la señal del sensor GPS reporta valores superiores a 90, para garantizar la validez de los datos del sensor GPS utilizados en el proyecto.
para siempre
si <([GPS 20 v] calidad de señal en %) [math_greater_than v] (90)> entonces
demás
fin