[Gfoss] gps in grass ?

Massimo Di Stefano massimodisasha at yahoo.it
Sat Mar 17 00:36:20 CET 2007


Ciao,

sto lavorando a un sistema per importare in  grass
i dati lettii da un ricevitore gps bluethout (in tempo reale)
per ora ottengo il dato ripulito in un file ascii
ma sarebbe bello creare uno script per grass
che legga il file ascii prodotto
per passare i punti letti direttamente in un monitor di grass...

tipo:

v.in.ascii > d.mon > d.vect -o

in modo da poter creare una sorta di "navigatore"

vi spiego :

il dato grezzo che arriva dalla mia antenna è tipo :

########################################################

$GPRMC,211922,V,4051.1755,N,01415.5063,E,,,160307,002.0,E*6C
$GPGGA,211922,4051.1755,N,01415.5063,E,0,00,,,M,,M,,*51
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,01,00,264,00,06,00,255,00,07,00,270,00,11,00,069,00*70
$GPGSV,3,2,12,18,03,328,00,25,00,099,00,26,60,319,00,27,11,075,00*71
$GPGSV,3,3,12,28,60,066,00,29,72,326,00,30,00,225,00,31,00,215,00*7D
$GPRMC,211923,V,4051.1755,N,01415.5063,E,,,160307,002.0,E*6D
$GPGGA,211923,4051.1755,N,01415.5063,E,0,00,,,M,,M,,*50
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,01,00,264,00,06,00,255,00,07,00,270,00,11,00,069,00*70
$GPGSV,3,2,12,18,03,328,00,25,00,099,00,26,60,319,00,27,11,075,00*71
$GPGSV,3,3,12,28,60,066,00,29,72,326,00,30,00,225,00,31,00,215,00*7D
$GPRMC,211924,V,4051.1755,N,01415.5063,E,,,160307,002.0,E*6A
$GPGGA,211924,4051.1755,N,01415.5063,E,0,00,,,M,,M,,*57
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,01,00,264,00,06,00,255,00,07,00,270,00,11,00,069,00*70
$GPGSV,3,2,12,18,03,328,00,25,00,099,00,26,60,319,00,27,11,075,00*71
$GPGSV,3,3,12,28,60,066,00,29,72,326,00,30,00,225,00,31,00,215,00*7D
$GPRMC,211925,V,4051.1755,N,01415.5063,E,,,160307,002.0,E*6B
$GPGGA,211925,4051.1755,N,01415.5063,E,0,00,,,M,,M,,*56
$GPGSA,A,1,,,,,,,,,,,,,,,*1E

###########################################################

l'antenna e collegata  sulla porta seriale di nome :

GarminGPS10-Gps10-1


script  per il parse del dato :

###################

#!/usr/bin/gawk -f
BEGIN {
     FS=","
     OFS="|"
     ORS="\n"
}

/^\$GPRMC/ {
     print $6, $4, $2
}

###################

da riga di comando in bash :

cat /dev/tty.GarminGPS10-Gps10-1 | ./gpk > gps.ascii


file ascii risultante :  X Y 'secondi'

##########################

01415.5063|4051.1755|230223
01415.5063|4051.1755|230224
01415.5063|4051.1755|230225
01415.5063|4051.1755|230226
01415.5063|4051.1755|230227
01415.5063|4051.1755|230228
01415.5063|4051.1755|230229
01415.5063|4051.1755|230230
01415.5063|4051.1755|230231
01415.5063|4051.1755|230232
01415.5063|4051.1755|230233
01415.5063|4051.1755|230234
01415.5063|4051.1755|230235
01415.5063|4051.1755|230236


###############################

si dovrebbe trovare un metodo per leggere i punti  dal file con una  
sequenza temporale
cioè tipo ... ogni tot di secondi
legge > importa > visualizza
...magari svuotando il file dai punti gia letti ... e cosi via

se avete idee a riguardo
sarei molto felice :-)
in più si è ..... e meglio è



grazie a  :
CoalKoRn
Doktoreas
Frankie
Kappu
Ominoverde
#gfoss
#bash
#awk





More information about the Gfoss mailing list