| |||||||
Das Thema "GPS - Genauigkeit erhöhen" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Erfahrener Benutzer Modell: HTC Desire HD Registriert seit: 19.05.2010
Beiträge: 263
Abgegebene Danke: 32
Erhielt 22 Danke für 17 Beiträge
| ich schreibe gerade eine App, in der man GPS-Koordinaten nutzt. Der Wert der Genauigkeit (also getAccuracy()) spiel hierbei eine tragende Rolle. Standardmäßig habe ich eingestellt, dass die App ihre Positionsdaten alle 2 Sekunden bzw. nach 2 Metern aktualisiert. Bei einem "Boost" sind diese Werte auf 0,0 gesetzt, so werden also permanent neue Daten angefordert. Mein Problem ist nun, das die Genauigkeit manchmal 7 Meter, im nächsten Moment 15 Meter, dann 28 Meter und auch mal 50 Meter beträgt. Kann man es irgendwie erreichen, dass die Genauigkeit nur bis 3 Meter Abweichung beträgt? Ich habe mir überlegt, das man das vielleicht erreichen könnte, indem man mehrere Satelliten gleichzeitig anspricht. Ist sowas denn überhaupt möglich? Wenn jemand eine Idee oder Tipps hat wäre ich wirklich dankbar. Viele Grüße |
| | |
| | #2 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 07.12.2011
Beiträge: 128
Abgegebene Danke: 15
Erhielt 14 Danke für 14 Beiträge
| Ich weiß nicht wie du das meinst aber der GPS-Empfänger rechnet sich doch immer aus den Signalen mehrer Sateliten die Position zusammen. Mit nur einem Sateliten kann der GPS-Empfänger seine Position nicht ermitteln. Um so mehr Signale (unterschiedliche Satelitten) der GPS-Empfänger empfängt um so genauer kann er die Position errechen.
|
| | |
| | #3 (permalink) |
| Erfahrener Benutzer Modell: HTC Desire HD Registriert seit: 19.05.2010
Beiträge: 263
Abgegebene Danke: 32
Erhielt 22 Danke für 17 Beiträge
|
Ja genau, und wie kann man denn die Anzahl der Satelliten erhöhen, die er zur Bestimmung der Koordinaten verwendet?
|
| | |
| | #4 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 07.12.2011
Beiträge: 128
Abgegebene Danke: 15
Erhielt 14 Danke für 14 Beiträge
|
Der GPS Empfänger versucht automatisch immer so viele wie möglich Sateliten für die Berechnung zu verwenden. Da kannst und brauchst du nichts einstellen. Schau dir mal folgendes App an: https://market.android.com/details?i...HNzdGF0dXMyIl0. Geändert von snowman2 (29.01.2012 um 23:09 Uhr) |
| | |
| | #5 (permalink) |
| Erfahrener Benutzer Modell: HTC Desire HD Registriert seit: 19.05.2010
Beiträge: 263
Abgegebene Danke: 32
Erhielt 22 Danke für 17 Beiträge
|
Danke für die Info. Was mir vorhin aufgefallen ist: Ich habe in den Permissions bisher nur den eigenen GPS-Standort freigegeben. Da es sich bei Android aber ja um AGPS handelt, werden ja auch Informationen aus dem Internet zur Positionsbestimmung herangezogen. Mal schauen, ob ich da einen Unterschied merke, wenn ich das Internet noch mit freigebe bzw. ich kann die Funktion ja noch einbauen, das die AGPS-Daten aus dem Internet aktualisiert werden. Aus AndroidPit bekam ich noch den Hinweis, dass man Werte mit zu hoher Ungenauigkeit ignorieren könnte. Das werde ich auch mal versuchen. Die App habe ich schon auf meinem Androiden installiert. Mit der kann ich die Daten ja mal vergleichen. |
| | |
| | #6 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 07.12.2011
Beiträge: 128
Abgegebene Danke: 15
Erhielt 14 Danke für 14 Beiträge
|
Die Daten aus dem Internet machen die Positionsbestimmung aber nicht genauer sondern nur schneller. Normal muss der GPS-Empfänger die Position der Sateliten erst ermitteln und das dauert. Bei AGPS holt er sich die Positionen der Sateliten aus dem Internet.
|
| | |
| | #8 (permalink) |
| Erfahrener Benutzer Modell: HTC Desire HD Registriert seit: 19.05.2010
Beiträge: 263
Abgegebene Danke: 32
Erhielt 22 Danke für 17 Beiträge
|
Hallo, ich hatte jetzt mal die Werte, deren Genauigkeit 6m überschreiten, ignoriert. Aber das ist auch nicht das Wahre. Da soll lieber der Benutzer entscheiden, welche er verwendet. Ich habe den LocationProvider nun mal anders initialisiert (jetzt mal abgesehen von der Tatsache, das GPS sowieso nur jede Sekunde aktualisiert und unter Mißachtung des Akkuverbrauchs): Vorher nutzte ich: Code: locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locListener); Code:
Criteria c = new Criteria();
c.setAccuracy(Criteria.ACCURACY_FINE);
c.setAltitudeRequired(false);
c.setBearingRequired(false);
c.setSpeedRequired(false);
c.setCostAllowed(true);
c.setPowerRequirement(Criteria.POWER_HIGH);
LocationProvider high= locManager.getProvider(locManager.getBestProvider(c, true));
locManager.requestLocationUpdates(high.getName(), 0, 0, locListener); Viele Grüße |
| | |
| | #9 (permalink) | |
| Android-Hilfe.de Mitglied Registriert seit: 07.12.2011
Beiträge: 128
Abgegebene Danke: 15
Erhielt 14 Danke für 14 Beiträge
| Zitat:
Schau mal hier rein: Das NMEA-0183 Datenformat GPGSA - PDOP | |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| GPS - Genauigkeit verbessern | Androidfreaak | Samsung Galaxy S (I9000) Forum | 1 | 09.11.2011 19:57 |
| GPS Genauigkeit bestimmen? | Lunarus | Karten und Navigation | 4 | 19.04.2011 21:35 |
| GPS Genauigkeit | Gizzmo | HTC Desire Forum | 11 | 25.02.2011 13:47 |