
Come costruire un altimetro basato sul GPS. Lanciare dei modelli di razzo è di sicuro una esperienza piacevole, ma molto spesso è difficile stabilire quanto alto sia volato il razzo e quale sia stata la sua velocità, fattori entrambi essenziali quando bisogna tirare le somme e fare le considerazioni sull’ultimo volo.
Tra le varie proposte online, c’è quella di Chris, che ha di recente costruito un altimetro basato sul GPS per la USC Rocket Propulsion Lab, in modo che essa possa tracciare le prestazioni del loro ultimo progetto. Il circuito si basa su un Picaxe 18x ed utilizza un modulo GPS per ottenere i dati NMEA sull’altitudine. Una volta che i dati sono stati acquisiti, vengono memorizzati su di una memoria EEPROM esterna, per essere poi controllati dopo che il razzo è stato recuperato.
Come costruire un altimetro basato sul GPS
Sfortunatamente Chirs non ha fornito alcuna immagine relativa alla scheda che ha costruito, ma ha realizzato questo diagramma del circuito e ha reso disponibile il codice sorgente: carne al fuoco dunque ce ne è. Chris ha anche fatto sapere che il logger del GPS ha funzionato in modo perfetto a parte per un piccolo lasso di tempo in cui il modulo GPS ha perso temporaneamente il contatto con il satellite. Ecco una schema completo del lavoro:
Come funziona un altimetro basato sul GPS
Questo dispositivo è stato creato, a detta di Chris, in modo piuttosto frettoloso (per questo non è presente l’immagine della scheda) per l’USC Rocket Propulsion Lab, un dipartimento universitario di ricerca sui satelliti di alta quota. Quindi, come abbiamo accennato, è stato utilizzato un microcontrollore Picaxe 18x e il dispositivo accetta il flusso di dati GPS NMEA a 4800 baud (su questo l’autore del progetto non ha la certezza al 100%). Esso inoltre registra l’altitudine e la trasmette ad una memoria esterna EEPROM 24LC512 e poi la rilegge una volta che la sessione si è conclusa. Nella dimostrazione di Chris, è possibile vedere dove il modulo GPS ha perso il contatto con il lock del satellite durante il ritorno a terra. Il razzo ha raggiunto una altitudine massima di oltre 6000 metri (18000 piedi).
Come creare un altimetro basato sul GPS: il codice sorgente
Come annunciato in precedenza, ecco il codice sorgente fornito dall’autore del progetto.
' sertxd("online",13,10) i2cslave %10100000, i2cfast, i2cword high 5 w1=0 if input0=0 then readback main: 'if b7 = 'V' then no signal, if 'A' then signal serin 2, N4800,("$GPRMC,"),b0,b0,b0,b4,b5,b6,b0,b7 if b7 = "V" then goto nosig 'altitude 'serin 2,N4800,("$GPGGA,"),b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0, b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b9,b0,b0,b0, b0,b0,b0,b0,b0,b1,b2,b3,b4,b5,b6,b7,b8 'serin 2, N4800, ("$GPGGA,"), b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0, b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0, b0,b0,b0,b0,b1,b2,b0,b4 'Sertxd(13,10,"Ele=",b1,b2,".",b4) 'show it on LCD 'pause 100 '48 characters to skip first serin 2,N4800,("$GPGGA,"),b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0, b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0, b0,b0,b0,b0,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13 'sertxd(13,10,"KPH=",b1,b2,".",b3) 'show it on LCD if b7="," then case1 if b8="," then case2 if b9="," then case3 if b10="," then case4 if b11="," then case5 if b12="," then case6 sendalt: if b5="," then lockbuterror low 5 pause 100 high 5 sertxd(13,10,"Alt=",b5,b6,b7,b8,b9,b10,b11,b12,13,10,"w1:",#w1) 'show it on LCD writei2c w1,(b5,b6,b7,b8,b9,b10,b11,b12) pause 200 'readi2c address,(b5,b6,b7,b8,b9,b10,b11,b12) 'sertxd(13,10,"Alt2=",b5,b6,b7,b8,b9,b10,b11,b12) 'show it on LCD w1=w1+8 goto main nosig: sertxd("No signal!",13,10) low 5 pause 50 high 5 pause 50 low 5 pause 50 high 5 goto main case1: b7=0 case2: b8=0 case3: b9=0 case4: b10=0 case5: b11=0 case6: b12=0 goto sendalt readback: readi2c w1,(b5,b6,b7,b8,b9,b10,b11,b12) if b5=0 then done sertxd(b5,b6,b7,b8,b9,b10,b11,b12) w1=w1+8 low 5 pause 200 high 5 pause 50 low 5 pause 50 high 5 goto readback done: low 5 end lockbuterror: low 5 goto main

Bè, direi che per i progetti fatti in casa va più che bene..
Al liceo avevo costruito un razzo ad acqua..probabilmente sarebbe stato utile questo circuitino al tempo..avrebbe sicuramente dato qualche punto in più al mio fantastico progetto 😉
mi chiedo se questo dispositivo era montato sul razzo, anche se penso di si, mi chiedo se il razzo fosse esploso per qualche avaria al propulsore, sarebbe andato il fumo, tutto, sia il razzo che il GPS.
Era montato sul razzo e con la’varia al razzo non si sarebbe potuto verificare alcun ndato, visto che questa operazione veniva compiuta dopo il recupero del razzo
Grazie della conferma, in pratica era un ricevitore satellitare che registrava le coordinate satellitari e queste quando il razzo cadeva venivano analizzate, stavo pensando se la perdita della posizione a 4000 metri sia stata dovuta a qualche zona d’ombra rispetto ai satelliti oppure sia dovuta ad altre cause, poiché risulta importante sapere se per esempio la velocità del razzo dia dei problemi per l’aggancio dei satelliti.
Per cosa riguarda il sistema GPS avendolo provato personalmente arriva fino 800 km/ ora senza problemi,
per chi volesse sapere dove ho trovato quella velocità il mio ultimo viaggio in aereo Milano a Parigi ,
Chiaramente a questa velocità non riesce più il mio navigatore a fornirmi cartine in tempo reale .
Comunque le prestazioni rimangono abbastanza buone fino a velocità in cerca 250 km/ ora dove riesce ancora a stabilire un percorso e mostrare l’apposizione sulla cartina senza grosse difficoltà , a partire da 300 km / ora ha grossi problemi per determinare un percorso .
Per il sistema GPS è necessario fare una considerazione esistono due categorie di prestazioni quei civili e quelle militari che usano due tipi di segnali diversi L1 e L2 , per cosa riguarda il segnale L2 non ci sono sul problema di aggancio visto che si usa tranquillamente come sistema secondario sui aerei di linea per determinare l’apposizione approssimativa di dove si trova , ma per la sua natura militare di questo sistema Ancora nessun aereo affidamento puro su questo sistema ,
Per cosa riguarda l’altitudine non ci sono problemi visto che omicida agganciavano anche 12.000 m di altitudine senza problemi visto che la quota massima degli aerei commerciali .
Per cosa riguarda l’articolo in sé lo trovo interessante come progetto e alcune specifiche le trovo note e molto interessante come scelte tecniche ,
prima di tutto la scelta del GPS come soluzione per calcolare l’altitudine è molto più interessante e qualunque altro metodo tradizionale che si basa sulla pressione atmosferica visto che tale pressione non è stabile in questi veicoli e potrebbe dare problemi di affettività durante la lettura , a differenza del GPS essendo un sistema basato su rilevamenti temporali non soffra di questi problemi .
Una cosa notevole è la semplicità di realizzazione di un’idea mia più semplice meno ci sono problemi che possono sovvenire qui è stato proprio spinto all’estremo il modulo di rilevamento, la memoria e il sistema di conto più la batteria .
Un’altra scelta tecnica che m’interessa particolarmente è stata scelta del linguaggio di programmazione Della microcontrollori , è stato usato il linguaggio Basic o almeno lo deduco dal sintassi delle righe d’istruzione una scelta particolarmente azzeccata visto che i migliori compilatori che esistono sul mercato per il PIC della microchip lavora con il linguaggio Basic .
quindi intimidazioni da tutte le punti di vista .