mercoledì 21 ottobre 2015

Garmin 12 XL e GPS Differenziale

A lavoro utilizzo un vecchio Garmin 12 XL, un modello piuttosto datato visto che risale circa al 1998 con un modesto ricevitore a 12 canali


Lo ho sempre usato come sistema di campagna speditivo ma ho scoperto che e' possibile ottenere i dati raw delle acquisizione (non quindi le semplici stringhe NMEA) mediante dei comandi non documentati.
Per fare cio' si puo' utilizzare il programma descritto a questo link e che puo' essere scarica da qui (il programma e' piuttosto vecchio, datato 2000, ma e' ancora funzionante su Linux ...ps il programmatore e' ancora contattabile per mail ma risponde che non mantiene piu' il programma quindi bisogna arrangiarsi da soli)

Il dispositivo deve essere collegato al PC mediante il cavo seriale con un connettore proprietario di Garmin (dato che l'altro lato ha un connettore DB9 attualmente e' necessario usare un cavo USB2Serial ma non sono stati riscontrati problemi)

Sul GPS deve essere impostato nel Menu Principale/ Menu Setup/Interfaccia in modalita' GRMN/GRMN.

Per iniziare l'acquisizione si collega il GPS al PC e si lancia il comando
./async_1_23 -a -r -rinex -t 1200 -p ttyUSB1

il parametro -t 1200 indica il tempo di acquisizione in secondi (20 minuti)
il parametro -p ttyUSB1 indica la porta seriale

viene quindi creato un file binario con estensione .g12
Per passare dal formato binario al formato RINEX si digita

,/gar2rnx_1_48 file.g12 -area FIRE -f

viene quindi creato un file con estensione .15O il cui nome inizia per la sigla FIRE (puo' essere modificata)
Il contenuto di questo file e' in formato RINEX
-----------------------------------------------------------------------
     2              OBSERVATION FILE    GPS NAVSTAR         RINEX VERSION / TYPE
GAR2RNX 1.48        Any GPS12 Owner     Wed Oct 21 10:20:44 PGM / RUN BY / DATE 
** gar2rnx (Garmin to Rinex) generates Rinex2 files         COMMENT             
** from a GPS12 (or XL) (Copyright Antonio Tabernero)       COMMENT             
** Generated from G12 data file: 286475.g12                 COMMENT             
** Options: -area FIRE -f                                 COMMENT             
Garmin                                                      MARKER NAME         
Number of Antenna marker                                    MARKER NUMBER       
Your name here      Your boss here                          OBSERVER / AGENCY   
096                 GPS 12XL SOFTWARE   4.58                REC # / TYPE / VERS 
0                   GPS12 Internal Antenna                  ANT # / TYPE        
** Position from first 3D fix of the receiver               COMMENT             
  4523901.4321   898264.7768  4390920.8765                  APPROX POSITION XYZ 
        0.0000        0.0000        0.0000                  ANTENNA: DELTA H/E/N
     1     0                                                WAVELENGTH FACT L1/2
     2    C1    L1                                          # / TYPES OF OBSERV 
  2015    10    21     7    35    0.002589      GPS         TIME OF FIRST OBS   
     1                                                      INTERVAL            
                                                            END OF HEADER       
 15 10 21 07 35  0.0025890  0  6G16G20G21G26G27G29                  
  22487277.418 7   3534097.662 7
  23082055.829 7   3802321.421 7
  21737892.870 8   3820190.731 8
  21215257.724 9   3725662.773 9
  24786222.492 7   3158539.883 7
  22957023.360 7   4097166.888 7
 15 10 21 07 35  1.0026085  0  6G16G20G21G26G27G29                  
  22493017.729 7   3564265.832 7
  23088238.244 7   3834813.615 7
  21744098.021 8   3852799.017 8
  21221310.975 9   3757472.446 9
..............................................
-----------------------------------------------------------------------

A questo punto si puo' utilizzare il file per inviarlo a qualche servizio gratuito di postprocessing per ottenere il DGPS. Ed a questo punto sorge un problema. Molti dei servizi (come OPUS e Trimble) richiedono che sia presenti nel file RINEX anche le informazioni di L2 mentre il ricevitore Garmin riporta solo quelle L1 (peraltro non ci sono nemmeno limiti minimi del tempo di acquisizione come su Trimble).
Per fortuna il servizio National Resource Canada non ha questa limitazione ed invia per mail il risultato dell'elaborazione (esiste il limite che e' disponibile solo il datum NAD83 che si ritrova anche sul Garmin 12XL)



Aumentando il tempo di acquisizione il valore del Sigma95% si riduce sensibilmente anche se la precisione e' ben lontana dal valore centimetrico (cio nonostante la precisione ottenuta e' nettamente migliore di quella derivante dall'analisi dei dati NMEA del medesimo ricevitore)