Nach mehrtaegigem Kampf mit meinem GPS-Modul, laeuft nun meine Station (259) auch. Mein Modul hat immer wieder nach kurzer Zeit die Position verloren - der Grund war letztendlich die schlechte Position der GPS-Antenne.
Bei der ganzen Fehlersuche bin ich ueber ein paar Fragen gestolpert, fuer die ich hier hoffe eine Antwort zu finden.
Die Baudraten-Einstellung kann an mehreren Stellen festgelegt werden: Jumper Auswerteplatine, im GPS Modul (Initialisierung) und im Tracker. In welchem Zusammenhang stehen die. Mir ist klar, das man im GPS-Modul eine Basis-Einstellung (z.B. 4800) hinterlegen kann und diese dann beim Initialisieren veraendern kann. Muss dann der Jumper auf der Platine der Basis-Baudrate (4800) oder der hoeheren Baudrate (Tracker) entsprechen? Im Sourcecode des Linux-Trackers habe ich gesehen, das immer auch mit höheren Baudraten intialisiert wird, auch wenn man den Tracker mit 4800 aufruft:
int br= 4800; for (int b=0; b<4; b++) { int f= open (serial_device, O_RDWR | O_NOCTTY ); if (f == -1) { perror ("open()"); exit (-1); } set_baudrate (f, br); sprintf (buf, "initialize GPS with %s, %d baud, using %d baud\n", gps_type, baudrate, br); write_log_messages (buf); br+= br; write (f, "55555\n55555\n55555\n", 18); // only for synchronization write (f, init_string, strlen(init_string)); close (f); }
Was ist der Sinn hinter dieser Initialisierung? Das man mit 4800 anfaengt verstehe ich (z.B. Akku im GPS Modul leer), aber wenn ich mit 4800 Baud arbeiten will, dann brauche ich doch keine hoeheren Initialisierungen?!
Deshalb habe ich bei mir den Code folgendermassen geaendert:
for (int br=4800; br<=baudrate; br+= br) {
int f= open (serial_device, O_RDWR | O_NOCTTY );
if (f == -1) {
perror ("open()");
exit (-1); }
set_baudrate (f, br);
sprintf (buf, "initialize GPS with %s, %d baud, using %d baud\n", gps_type, baudrate, br);
write_log_messages (buf);
write (f, "55555\n55555\n55555\n", 18); // only for synchronization
write (f, init_string, strlen(init_string));
close (f); }
Alles anzeigen
Nun wird nur noch max. bis zur gewuenschten Baudrate initialisiert.
Hat man eigentlich Nachteile, bzw. Bandbreiten-Einschraenkungen wenn man mit 4800 Baud arbeitet oder sollte man die eine hoehere Baudrate anstreben/einstellen?
Noch eine weitere Frage: Was ist eigentlich eine gute Ortungsquote? Aktuell habe ich Quoten zwischen 40 und 60% (1h).
So, ich denke das waren zunaechst mal meine wichtigsten Fragen - fuer Antworten bereits jetzt vielen Dank im voraus.
Gruss
Eberhard