Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Obtener la orientación mediante GPS + Gyro #33

Open
ManuLG opened this issue Mar 4, 2017 · 5 comments
Open

Obtener la orientación mediante GPS + Gyro #33

ManuLG opened this issue Mar 4, 2017 · 5 comments

Comments

@ManuLG
Copy link
Collaborator

ManuLG commented Mar 4, 2017

No description provided.

@ManuLG ManuLG added this to the Posicionamiento milestone Mar 4, 2017
@ManuLG
Copy link
Collaborator Author

ManuLG commented Mar 4, 2017

Estamos pendientes de entender la orientación del GPS, ya que tenemos que probarlo en un coche.

@ManuLG
Copy link
Collaborator Author

ManuLG commented Mar 4, 2017

La librería que usamos para manejar el GPS (Tinny GPS) tiene una función que nos permite obtener la orientación de un punto respecto a otro, dando ese ángulo respecto al Norte.

@ManuLG
Copy link
Collaborator Author

ManuLG commented Mar 4, 2017

He realizado una prueba para comprobar lo fiable que son los métodos de la librería del GPS. Para ello, he tomado como referencia los dos puntos que se ven en el mapa (alineando la línea lo más paralelo al fondo de la pantalla que pude). Los resultados que deberíamos obtener son:

  • Orientación (respecto al norte): 270º
  • Distancia entre ambos puntos: 1.09 km

image

El código es el siguiente:

#include <TinyGPS.h>

TinyGPS gps;

const float lat_ini = 42.282712; // Punto de la derecha
const float lon_ini = -8.721530;

const float lat_1 = 42.282720; // Punto de la izquierda
const float lon_1 = -8.734759;

float orientacion;
unsigned long distancia;

void setup() {
  Serial.begin(115200); // Para ver la info
}

void loop() {
  orientacion = gps.course_to(lat_ini, lon_ini, lat_1, lon_1);
  distancia = (unsigned long)gps.distance_between(lat_ini, lon_ini, lat_1, lon_1);
  
  Serial.print("Orientacion (respecto al norte): ");
  Serial.print(orientacion, 6);
  Serial.println((char)176); // Símbolo º

  Serial.print("Distancia entre ambos puntos (m): ");
  Serial.println(distancia);
  delay(2000);
}

Los resultados obtenidos son:

image

Por tanto, podemos afirmar que las fórmulas tienen una precisión adecuada.

@ManuLG ManuLG added this to En Progreso in Posicionamiento Mar 7, 2017
@ManuLG
Copy link
Collaborator Author

ManuLG commented Mar 20, 2017

Los ejes del giroscopio son los mismos sea cual sea la colocación inicial del giroscopio, por tanto la colocación del mismo será relevante para nuestro sistema.

@ManuLG
Copy link
Collaborator Author

ManuLG commented Mar 28, 2017

Lo dejamos en standby, salvo que desde industriales nos digan la colocación exacta del equipo en su vehículo

@ManuLG ManuLG moved this from En Progreso to Por Hacer in Posicionamiento Mar 28, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

1 participant