Home

Tese 2,9 MB

image

Contents

1. 82 84 Anexo B Formato NMEA u s sus assis nnmnnn nnmnnn nnmnnn na 87 Anexo Formato propriet rio 89 Anexo D Instruction Manual qasassiceasisso cuecas sitracasstendos si cvecadweteecaste teeeedeeretoastd 93 vi Lista de Tabelas Tabela 2 1 Caracter sticas das portadoras L1 L2 araras 7 Tabela 2 2 ngulo de eleva o 2 e Ganho dBi da antena de GPS 16 Tabela 3 1 Sem foro para sincroniza o da estrutura de mem ria partilhada 23 Tabela 3 2 Campos da mensagem de inicializa o na 31 Tabela 1 Primeira palavra do cabe alho RTCM 84 Tabela 2 Segunda palavra do cabe alho RTCM ra 84 vii Lista de Figuras Figura 2 1 rbita dos sat lites da constela o de GPS 5 Figura 2 2 Segmentos do sistema GPS atracar 5 Figura 2 3 Ideia b sica do sistema GPS ear aaa naenananaa 6 Figura 2 4 Receptor GPS da esta o do IT rrenan 13 Figura 2 5 Antena de GPS da esta o do IT ereta 15 Figura 2 6 Diagrama de radia o da antena de GPS a
2. 9 2 1 5 National Marine Electronics Association NMEA 10 2 1 6 Receiver Independent Exchange Format RINEX 11 2 2 Equipamento utilizado no projecto rena 12 2 21 Receptor GPS Logus ue 12 Dido AMON a ete te eee 15 2 2 3 Computador Gen daa i CDS ee ae le 16 2 2 4 Interliga o dos componentes 17 2 3 Estado da ANE heres Meee and ep Mee ees 17 3 Descricao dO 5 1 Andee aes aie 19 3 1 a 19 3 2 Arquitectura do Sistema 19 3 3 5010 20 3 4 SONS 25 3 4 1 Programa Criar Inicializar 27 3 4 2 gt Programa ANNA secas anien aa 28 3 4 3 Envio de mensagens para os receptores de 29 3 4 4 Programa Interface com OS receptores errar 32 3 4 5 Programas Dados de navega o Dados de observa o e Ficheiros Rinex 35 3 4 6 Programas Posi o dos sat lites e Azimute e 40 3 4 7 P
3. mensagens Azimute e para os Eleva o receptores Dados dos gls Posi o dos Sat lites receptores sat lites Pa Dados de Dados de dos saf les Observa o Navega o Ficheiros Rinex Gerar correc es diferenciais Figura 3 5 Arquitectura do m dulo Interface S rie Todos os programas que constituem o m dulo Interface S rie est o representados na Figura 3 5 Os c rculos Criar e Inicializar e Antena n o t m liga es para os restantes dado que t m uma fun o em particular estando presentes em muitos dos programas apresentados na Figura 3 5 O c rculo com contorno a preto constitu do por m ltiplos processos cada um com a fun o de informar ao processo principal Interface com os receptores o envio de determinada mensagem para os receptores de GPS Num resumo breve da Figura 3 5 muitos dos processos interagem com o processo principal Interface com os receptores com esta comunica o que se faz a aquisi o de dados de GPS A partir do momento em que os dados est o dispon veis noutros processos estes podem aplicar determinados algoritmos para gerar certos resultados Ap s esse processamento outros processos podem adquirir esses dados e realizar um outro tipo de processamento ainda mais complexo sobre dados j processados Este tipo de organiza o permite distribuir as fun es por v rios blocos simplificando o sistema global Neste subcap tulo ser feita uma des
4. O pr ximo campo na mensagem constitu do por cinco caracteres sendo os primeiros dois os identificadores do tipo de sistema Neste caso dado que o sistema o GPS os dois primeiros caracteres s o sempre GP Os restantes tr s representam o identificador da mensagem que permite identificar o tipo e o formato dos dados Ap s estes primeiros campos est o os dados propriamente ditos e que s o separados pelo caracter A mensagem termina quando for encontrado o caracter que seguido de dois d gitos hexadecimais usados na valida o da mensagem 7 Das mensagens NMEA dispon veis nos receptores de GPS usados no projecto foram utilizadas as mensagens com identificador ALM GGA GSA e GSV De seguida est uma descri o do conte do principal de cada mensagem e ALM A mensagem com identificador ALM cont m o n mero da semana na escala de tempo GPS referenciado no ponto 2 1 2 informa o sobre a sa de dos sat lites e os dados completos do almanac para um determinado sat lite M ltiplas mensagens s o transmitidas sendo transmitida uma mensagem por sat lite presente na constela o e GGA A mensagem com identificador GGA cont m informa o relacionada com o tempo UTC a posi o do utilizador definida em termos de latitude longitude e altitude a vari vel HDOP referenciado no ponto 2 1 2 e outros par metros e GSA A mensagem com identificador GSA cont m i
5. representam a posi o do sat lite no plano orbital e s o obtidas a partir de processamento anterior A vari vel Q representa a correc o da longitude dada em radianos A correc o da inclina o dada pela vari vel que calculada tamb m em radianos x x cosQ cosi sin x sinQ y cosi cos 3 4 z sini As equa es apresentadas no relat rio s o as mais relevantes do algoritmo Mais detalhes sobre todo o algoritmo podem ser consultados em 16 Quando uma posi o calculada actualizado o segmento de mem ria que guarda as posi es dos sat lites e o ficheiro com essa informa o O ciclo do programa termina com o comando Ctrl c O programa ao receber este sinal antes de sair fecha os segmentos de mem ria sem foros e ficheiros e Azimute e Eleva o O programa Azimute e Eleva o calcula o azimute e a eleva o dos sat lites de GPS Na directoria de trabalho a identifica o do programa realizada a partir do nome Azimuth and Elevation Tal como nos restantes programas existe a op o de seleccionar um dos receptores ou os dois para o c lculo do azimute e eleva o O azimute e eleva o calculados neste programa s o os valores vistos pela antena em causa em rela o aos sat lites Para o seu c lculo necess rio a posi o da antena e a posi o dos sat lites Para obter a posi o da antena o programa reco
6. meteorol gicos O ficheiro de observa o est dividido em duas partes A primeira um cabe alho que cont m o nome da esta o informa es sobre a antena GPS as coordenadas da esta o o n mero e tipo de observa es realizadas entre outros O cabe alho termina com a sequ ncia de caracteres END OF HEADER A segunda parte est dividida em pocas que come am sempre com um identificador do tempo na escala GPS e o n mero de sat lites para os quais existem observa es dentro da poca em causa Para cada sat lite s o escritas as observa es recolhidas como pseudo range fase da portadora SNR entre outros O ficheiro de navega o est dividido tamb m em duas partes um cabe alho e uma sec o de dados O cabe alho significativamente mais pequeno quando comparado com o ficheiro de observa o e entre outras coisas cont m informa o da data em que o ficheiro foi criado Na sec o de dados s o escritos os par metros presentes na mensagem de navega o efem rides que permitem calcular a posi o e corrigir o rel gio dos sat lites Estes ficheiros t m alguns aspectos caracter sticos Todos os campos presentes no cabe alho e na sec o de dados t m um formato muito espec fico e a sua escrita deve ser feita entre determinadas colunas do ficheiro bem definido em 9 O nome dos ficheiros deve adoptar o formato ssssdddf yyt onde ssss representa o nome da esta o dd
7. o mas n o uma interac o directa devido ao facto de no presente projecto essa interac o estar feita Para al m da interac o indirecta com o receptor o projecto tem tamb m dados importantes guardados em segmentos de mem ria partilhada e que s o teis para produzir no futuro determinadas aplica es Uma outra vantagem importante deste m dulo relaciona se com o facto de os dados serem guardados em segmentos de mem ria partilhada Como foi descrito no ponto 3 3 ao longo do m dulo Interface S rie o esquema necess rio para a interac o com os segmentos de mem ria tem alguma complexidade Essa complexidade ser maior para os utilizadores externos ao desenvolvimento do software Assim para al m de permitir o acesso aos dados esta interface foi desenvolvida de modo a facilitar a interac o de utilizadores externos com o programa Todos os dados que podem ser obtidos com a Interface user friendly s o adquiridos a partir da Interface S rie como pode ser observado na Figura 3 1 referida no ponto 3 2 A interface criada est dividida em v rios programas Cada um desses programas tem como objectivo a aquisi o de dados com determinada particularidade Para que um utilizador possa trabalhar com os dados tem que conhecer a estrutura de cada um dos segmentos de mem ria utilizados A estrutura de alguns dos segmentos foi referida no m dulo Interface S rie outras correspondem estrutura das mensagens envia
8. o da vari vel da responsabilidade do utilizador tendo o seu tipo que ser igual ao da estrutura do segmento de mem ria em quest o Para o utilizador saber o tipo da vari vel pode consultar o ficheiro structs h inclu do na mesma directoria onde est o ficheiro xxx h No ponto 3 7 Manual de Instru es podem ser encontradas as directorias de todos os programas desenvolvidos nesta interface A fun o invocada coloca na vari vel definida pelo utilizador os par metros correspondentes sem ser necess rio implementar mais c digo para a aquisi o dos dados A fun o principal com o nome xxx respons vel por criar um ficheiro onde s o escritos todos os erros que possam surgir dentro do conjunto de fun es associado ao ficheiro xxx h Para al m disso a fun o invocada pelo utilizador retorna o valor 1 se existir algum erro Os programas criados no m dulo Interface user friendly s o e Efem rides o utilizador com este programa pode obter as efem rides que s o guardadas com o programa Dados de navega o Na directoria de trabalho o programa identificado pelo nome Ephemeris e Pseudo range usando a biblioteca de fun es associado a este programa o utilizador externo tem acesso ao segmento de mem ria partilhada criado no programa Dados de observa o O programa na respectiva directoria de trabalho tem o nome Pseudo Range e Posi o dos sat lites o utiliz
9. o do receptor Assim poss vel tratar os dois receptores independentemente sendo poss vel alterar par metros ou receber informa o apenas de um dos receptores de GPS da esta o O envio da mensagem propriamente dito realizado n o por nenhum destes processos mas pelo programa Interface com os receptores Para cada uma das mensagens est definido um sem foro e para algumas das mensagens est o definidos tamb m segmentos de mem ria partilhada Os segmentos de mem ria existem nas mensagens que t m alguns par metros definidos pelo utilizador como campos da mensagem Assim no programa Interface com os receptores esta informa o est dispon vel por uma das forma de IPC Os sem foros s o utilizados como vari veis de estado e indicam ao programa respons vel pelo envio das mensagens se existe alguma que deve ser enviada para um dos dois receptores Se um sem foro para uma dada mensagem estiver a verde o programa Interface com os receptores envia para um dos receptores o sem foro tem a informa o de qual dos dois receptores foi escolhido pelo utilizador a mensagem em causa 3 4 4 Programa Interface com os receptores A interface com os dois receptores de GPS da esta o do IT realizada apenas por um programa Na directoria de trabalho o programa est identificado a partir do nome 72 Interface Na linha de comandos o administrador tem a op o de iniciar o programa para um dos
10. 50 bytes no total Mensagem SNV Formato da mensagem PASHR SNV lt Ephemeris data string checksum gt 2 bytes 4 bytes GPS week number seconds of GPS week 91 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 8 bytes 8 bytes 8 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 8 bytes 8 bytes 8 bytes 4 bytes 4 bytes 2 bytes 2 bytes 2 bytes 1 byte 1 byte 2 bytes group delay seconds clock data issue clock data reference time in seconds clock correction sec sec2 clock correction sec sec clock correction sec orbit data issue mean anomaly correction semicircles sec mean anomaly at reference time semicircles eccentricity square root of semi major axis reference time for orbit sec cic harmonic correction term radians crc harmonic correction term radians cis harmonic correction term radians crs harmonic correction term radians cuc harmonic correction term radians cus harmonic correction term radians longitude of ascending node semicircles argumento of perigee semicircles inclination angle semicircles rate of right ascension semicircles sec rate of inclination semicircles sec user range accuracy satellite health curve fit interval satellite PRN number minus 1 reserved character checksum to validate the message 145 bytes no total 92 Anexo D Instruction Manual This manual gives to the future users of th
11. e guardar os dados mais relevantes numa base dados ficando assim dispon veis no futuro e melhoramento das correc es diferenciais calculadas no presente trabalho e disponibiliz las a determinados utilizadores do sistema GPS e compara o do pseudo range calculado pelos dois receptores e estudo da influ ncia dos erros inerentes ao GPS Na altura da escrita deste relat rio estavam j quatro alunos ainda numa fase inicial com o objectivo de cumprir algumas das aplica es descritas anteriormente Existe assim uma forte possibilidade do projecto desenvolvido ser usado em trabalhos futuros deixando se aqui algumas propostas para esse trabalho 81 Refer ncias Bibliogr ficas 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Kaplan Elliott D e Hegarty Christopher J Understanding GPS Principles and Applications Artech House London England 2005 El Rabbany A Introduction to GPS the global positioning system Artech house publishers 2002 Soares Manuel G Malheiro Benedita e Restivo Francisco F An Internet DGPS Service for Precise Outdoor Navigation Proceedings Emerging Technologies and Factory Automation IEEE Conference 2003 RTCM The Radio Technical Commission For Maritime Services http www rtem org Online Cita o 19 de Fevereiro de 2010 RTCM Standard 10403 1 Differential GNSS Global Navigation Satellite Systems Services Versi
12. receptor permaneceu desligado A porta s rie que permite uma comunica o bidireccional designa se por porta A A comunica o com a porta feita com o protocolo s rie RS 232 Recommended Standard 232 Os par metros principais da liga o s o ritmo bin rio 1200 4800 9600 19200 57600 e 115200 bps bits de dados 8 bits de paragem 1 VV V Y paridade nenhuma As mensagens enviadas pelo receptor AC12 podem ser de dois tipos Ou t m o formato NMEA como referido no ponto 2 1 5 ou resultam de uma combina o entre o formato NMEA e um determinado formato da marca Magellan Este ltimo formato designado como formato propriet rio do receptor tem algumas semelhan as com o formato NMEA entre elas o in cio de cada mensagem feito com o caracter os dados est o separados pelo caracter a mensagem termina com dois d gitos que s o usados para a sua valida o 13 Algumas das mensagens utilizadas no trabalho est o descritas no ponto 2 1 5 As restantes mensagens enviadas pelo receptor com formato propriet rio e utilizadas no projecto t m o identificador PAR RID UKO PBN MCA SNV e NAK ACK De seguida feita uma descri o dos pontos essenciais de cada uma das mensagens e O receptor envia a mensagem com identificador ACK se um determinado comando enviado para o receptor for aceite por este Sempre que uma mensagem estiver com um formato incorrecto e for e
13. o de sinais SBAS Se a recep o estiver desactiva os 12 canais do receptor s o usados para sat lites GPS O receptor responde com NAK ACK ponto 2 2 1 para as mensagens descritas atr s O segundo tipo cont m mensagens que permitem a utilizadores autorizados receber informa o do estado de algumas caracter sticas importantes dos receptores Ao envio das mensagens deste segundo tipo o receptor responde com as mensagens referidas no ponto 2 2 1 com identificador RID e PAR e no ponto 2 1 5 com identificador GSA As mensagens definidas anteriormente tanto do primeiro como do segundo tipo t m cada uma um formato espec fico mas com alguns pontos semelhantes como por exemplo o formato geral da mensagem Como exemplo refere se no relat rio o formato da mensagem que permite inicializar o receptor Mais detalhes desta e das restantes mensagens podem ser encontrados em 8 O formato da mensagem de inicializa o PASHS INI d1 d2 d3 d4 d5 c1 lt Enter gt 30 Na Tabela 3 2 est descrito o significado de cada um dos campos presentes na mensagem de inicializa o Tabela 3 2 Campos da mensagem de inicializa o Par metro Descri o baudrate da porta A 2 1200 4 4800 gt valor por omiss o 5 9600 6 19200 8 57600 9 115200 baudrate da porta mesmos valores do parametro 1 reservado virgulas seguidas reservado virgulas seguidas c digo de inicializa
14. o e azimute e visualiza o da posi o dos sat lites atrav s da ferramenta Matlab constru da uma figura com a posi o dos sat lites em linha de vista com a antena em causa Esta figura actualizada com um per odo de 4 minutos estando dispon vel na interface web e ficheiros Rinex obten o dos ficheiros de navega o e observa o no formato Rinex dispon veis para download na interface web e correc es diferencias os resultados obtidos numa situa o aut noma ou seja n o introduzindo correc es diferencias foram os esperados permitindo assim validar a aplica o de todo o algoritmo usado Os resultados obtidos com o processamento de correc es diferenciais n o permitiram melhorar os valores conseguidos numa situa o aut noma Contudo representam um bom ponto de partida para futuros desenvolvimentos nesta rea e interface para futuros utilizadores a disponibiliza o de programas espec ficos para que futuros utilizadores da esta o possam adquirir determinados dados de uma forma simples e sem ser necess rio o conhecimento em detalhe do software implementado Do projecto desenvolvido resulta uma plataforma que para al m de produzir diversos resultados tem uma interface simples para futuros utilizadores A localiza o das duas antenas de GPS da esta o traz vantagens em futuros desenvolvimentos Devido ao facto de estarem localizadas no topo da Torre Norte do IST poss vel diminuir a
15. o no eixo z de acordo com o valor da vari vel p cos sinf 0 Rot bB sin 8 O 3 14 0 0 1 Com a matriz Rot fB corrigida a posi o dos sat lites previamente calculada Para isso a matriz multiplicada pelo vector que tem as tr s coordenadas do sat lite em causa Na equa o 3 15 o vector coluna com as vari veis x 2 corresponde s tr s componentes da posi o do sat lite sem a correc o O vector sat tem tamb m 3 componentes segundo os eixos x Z mas agora com a posi o do sat lite corrigida devido ao movimento de rota o da terra x sat Rot B x 3 15 Zs Todo este processo iterativo concluindo se quando for obtida uma determinada precis o entre a estimativa da posi o do sat lite anterior e a actual 1mm O pr ximo passo corresponde ao c lculo de uma estimativa para a influ ncia da troposfera na medi o do pseudo range por parte do receptor Para o seu c lculo necess rio obter a eleva o entre a antena em causa e cada um dos sat lites e cujo algoritmo est referenciado no ponto 3 4 6 Com a eleva o para cada um dos sat lites e os valore m dios para a press o atmosf rica temperatura e press o parcial do vapor de gua calculada uma estimativa para o erro provocado pela troposfera excep o da eleva o todos os restantes par metros foram obtidos tendo em conta a latitude do local e valores de refer ncia O algoritmo para o c l
16. o ter um per odo de 1 segundo como referido no ponto 3 4 4 Assim como este programa tem um ciclo de 1 segundo necess rio primeiro verificar se as efem rides guardadas s o novas ou n o Depois preciso validar as pr prias efem rides recebidas Estas t m dois par metros que permitem verificar a sua integridade IODC Issue of Data Clock e IODE Issue of Data Ephemeris O par metro IODC composto por 16 bits e o par metro IODE por 8 bits Para as efem rides de um dado sat lite serem v lidas os 8 bits menos significativos do IODC t m que corresponder ao valor do IODE Se as condi es se verificarem realizada a leitura da 37 mensagem SNV que cont m as efem rides de um determinado sat lite e feita a escrita das mesmas no segmento de mem ria partilhada criado neste programa Este programa tamb m respons vel pela escrita das efem rides num ficheiro segundo o formato RINEX 9 Antes da escrita propriamente dita das efem rides necess rio escrever um pequeno cabe alho que entre outras coisas cont m o instante de tempo a que dizem respeito as efem rides em causa No formato RINEX esse instante de tempo tem que ser na escala GPS ao mesmo tempo seguindo o formato normal de m s ano dia hora minutos e segundos Como referido no ponto 2 1 2 a escala de tempo GPS cont m apenas dois par metros o n mero da semana e os segundos da semana Assim foi necess rio implementar um algoritmo que a par
17. permite validar a palavra em causa gt Modified Z Count tempo de refer ncia para os par metros da mensagem O seu valor est entre 0 e 3599 4 segundos e tem um escala de 0 6 segundos 84 gt Numero de sequ ncia tem o seu valor compreendido entre 0 7 Ajuda sincroniza o entre mensagens e o seu valor incrementado sempre que uma nova mensagem for gerada gt Comprimento da mensagem o seu valor est compreendido entre 2 33 Representa o n mero de palavras que a mensagem em causa possui gt Sa de da esta o tem oito estados poss veis sendo o seu valor definido na esta o de refer ncia Permite ao utilizador do servi o RTCM saber se a esta o de refer ncia est a funcionar correctamente Na mensagem do tipo 1 a nica considerada no projecto o n mero total de palavras depende da quantidade de sat lites considerados na esta o de refer ncia Cada uma das palavras tem 30 bits terminando com os 6 bits de paridade Os campos descritos de seguida correspondem aos dados para um sat lite A repeti o dos dados depende da quantidade de sat lites considerados pela esta o de refer ncia e Factor de escala tem 1 bit e informa o utilizador qual o factor de escala usado em alguns dos par metros da mensagem e UDRE User Differential Range Error tem 2 bits e quatro estados poss veis Este campo d ao utilizador a informa o de qual a precis o que pode ser obti
18. tamb m referenciado o modo como os ficheiros est o guardados informando assim o utilizador das v rias pastas que ter que seleccionar para chegar aos dados Sobre a directoria dos ficheiros mais detalhes podem ser consultados no ponto 3 4 5 Os ficheiros RINEX est o guardados na directoria usr local apache2 htdocs Rinex yy GPS MONITOR G STATION Home Receiver Satellite Data Logout Interval data recorder Directory of files Access to data Figura 3 17 Pagina para acesso aos ficheiros no formato RINEX 65 O utilizador quando selecciona o acesso aos dados encontra primeiro a op o dos dois receptores depois o ano m s e dia Na Figura 3 18 est apresentada a p gina que um utilizador encontra quando tenta aceder aos ficheiros de um determinado dia 4 Py Ala GPS MONITOR NG STATION Home Receiver Satellite Data Logout Index of Rinex Receiver1 2010 March 15 Parent Directory 1T12074i 10N 1T12074m 100 1T12074p 10N 1712074 100 1712074 103 1712074 10 1712074 100 1712074 100 1712074 100 17120746 103 712074k 10N 712074r 10N 7120749 100 7120749 100 1712074100 7120741 10N 712074d 10N 712074100 17120740100 1712074 10N 1712074 103 17120749103 1712074 100 1712074 100 712074e 100 712074n 10N 1712074 100 712074h 10N Figura 3 18 P gina com os ficheiros RINEX referentes a um determinado
19. 8 Figura 2 6 Diagrama radia o da antena de GPS Na Tabela 2 2 est o os valores correspondentes entre o ngulo de eleva o em graus visto da antena e o ganho em dBi referentes ao diagrama de radia o 11 Tabela 2 2 ngulo de eleva o 2 e Ganho dBi da antena de GPS Angulo de eleva o Ganho dBi 0 90 6 8 20 lt 0 lt 90 0 7 6 8 5 lt 0 lt 20 4 5 1 0 0 lt 0 lt 5 7 0 2 0 0 7 0 2 0 2 2 3 Computador A fun o do computador neste projecto permitir a comunica o com os dois receptores de GPS Serve tamb m como servidor de uma interface Web de acesso restrito que permite acesso remoto a algumas funcionalidades da esta o O computador utilizado n o necessita de especifica es particulares bastando ter duas portas s rie e uma liga o Internet A comunica o com os receptores realizada usando duas portas DB 9 Data Bus com 9 pinos que permitem a implementa o do protocolo RS 232 Algumas das caracter sticas do computador utilizado s o e Processador IntelPentium IV a 3 20 GHz e mem ria DDR SDRAM 1x512 MB e disco r gido 160 GB e placa gr fica Tungsten Graphics Mesa DRI R200 e sistemas operativos o openSUSE 11 1 o Microsoft Windows XP 2 2 4 Interliga o dos componentes A liga o entre os componentes descritos anteriormente muito simples As duas antenas GPS j instaladas s o liga
20. G09 23837239 623 120184325 923 3528 141 46 000 8 000 22229209 059 93558972 294 2625 488 51 000 6 000 G21 24600813 635 123186084 350 1345 149 44 000 5 000 G15 21481748 676 101836095 663 1692 262 55 000 4 000 G27 22760148 927 118023450 776 2352 778 50 000 3 000 G24 23748240 985 117953169 948 357 616 46 000 2 000 GOS 20531736 629 87505882 086 1374 965 56 000 1 000 gt 2010 03 09 18 21 0000000 10 G28 22197496 906 108662331 522 347 008 54 000 11 000 G10 21761152 614 91256164 673 2746 889 55 000 10 000 G02 24968214 250 146440015 119 3333 646 40 000 9 000 cos 23830524 258 120149056 208 3527 266 46 000 8 000 22234208 661 93585241 758 2626 944 51 000 6 000 G21 24598252 797 123172662 059 1340 817 44 000 5 000 Gis 21476530 494 101819185 043 1691 314 55 000 4 000 G27 22755672 537 117999941 515 2350 564 50 000 3 000 G24 23747564 761 117949625 146 352 819 46 000 2 000 cos 20534359 012 87519662 803 1379 703 56 000 1 000 Figura 4 2 Exemplo de uma parte do ficheiro RINEX de observa o O ficheiro de observa o tem um cabe alho muito mais complexo que o ficheiro de navega o Entre outros par metros cont m o n mero total de sat lites para os quais existem observa es no ficheiro o n mero de observa es para cada sat lite em particular a data para a primeira e 70 ltima observa o registada o intervalo entre cada observa o Na Figura 4 2 est o apenas duas pocas com um intervalo de 10 se
21. Se um processo tentar aceder a um segmento de mem ria partilhada e o sem foro associado estiver com o valor 1 o processo tem que esperar que o valor seja O e a coloca o outra vez a 1 para reservar o seu uso da mem ria partilhada e Estrutura dos segmentos de mem ria partilhada Alguns dos segmentos de mem ria partilhada criados no projecto para guardar dados de GPS t m uma forma particular Como descrito anteriormente para um processo aceder a um segmento de mem ria partilhada tem primeiro que verificar o sem foro associado Se o segmento estiver a ser usado processo tem que esperar at estar livre Isto traduz se em tempo perdido dado que durante esse tempo o processo est em pausa De modo a passar 21 por cima do problema a aumentar a efici ncia na comunica o entre os processos foi criado o sistema representado na Figura 3 3 Segmento de Segmento de Escrita gt memoria memoria Leitura partilhada partilhada Figura 3 3 Estrutura usada com os segmentos de mem ria partilhada No esquema apresentado na Figura 3 3 os dois segmentos de mem ria s o estruturas iguais com determinados campos Esses campos representam dados provenientes das mensagens enviadas pelos receptores de GPS O esquema apresentado referente a uma mensagem sendo aplicado a v rias mensagens A escrita dos dados realizada apenas por um processo sendo a leitura efectuada por v rios processos Um dos segmentos serve para
22. X Pos data Y Pos data Z Pos sleep 1 printf nNext cycle td n n i Figura 3 12 Exemplo de uma fun o para aceder aos dados da mensagem PBN O exemplo de c digo apresentado na Figura 3 12 engloba os pontos descritos anteriormente O ficheiro que o utilizador tem de incluir neste caso designa se por PBN read h onde est o todas as fun es necess rias para aceder ao segmento de mem ria da mensagem Na fun o criada pelo utilizador tem que invocar a fun o PBN read que neste caso usa os dados do receptor ligado porta s rie O Os dados s o guardados na vari vel local data que uma estrutura com os campos id nticos estrutura do segmento de mem ria partilhada com os dados da mensagem PBN 3 6 Interface Web O terceiro m dulo do sistema e o Ultimo permite disponibilizar alguns dos resultados funcionalidades desenvolvidas no m dulo Interface S rie importante tamb m que os resultados estejam acess veis em qualquer m quina independentemente do sistema operativo Assim foi desenvolvida uma interface web que tem a vantagem de possibilitar um acesso universal e tamb m a disponibiliza o dos resultados conseguida com uma melhor apresenta o a n vel gr fico 58 Alguns dos aspectos relevantes no desenvolvimento da interface est o referidos no ponto 3 8 No direct rio usr local apache2 conf existe um ficheiro com o nome httpd conf onde podem ser definidos par
23. a dist ncia entre o receptor em causa e cada um dos sat lites sem incluir o erro do rel gio que dependente do receptor Tem se assim dois conjuntos de dados um por receptor importante agora verificar qual a diferen a entre os dois dados obtidos com recurso aos dois receptores de esperar que exista alguma diferen a dado que as duas antenas n o est o localizadas na mesma posi o e por isso a dist ncia para um mesmo sat lite ter de ser diferente Na Figura 4 5 est apresentada a evolu o dessa diferen a em metros realizada para um conjunto de 50 observa es 74 Diferen a entre o pseudo range 10 Diferen a metros 0 5 10 15 20 25 30 35 40 45 50 Numero de observa es Figura 4 5 Diferen a entre o pseudo range calculado com recurso aos dois receptores Os dados da Figura 4 5 s o referentes a um determinado sat lite verificando se um comportamento semelhante com os restantes sat lites Pela observa o da Figura 4 5 verifica se que a diferen a entre os dados dos dois receptores referentes ao pseudo range sofre algumas oscila es tomando em alguns casos valores maiores ao que seria de esperar Das 50 observa es realizadas a m dia obtida foi de 4 2 metros sendo um valor razo vel tendo em conta a dist ncia que separa as duas antenas Com os resultados da Figura 4 5 pode se admitir que a efici ncia das correc es diferenciais poderia ser influenciada pelo melhoramento destes resulta
24. a precis o todo o algoritmo um bom ponto de partida em futuros desenvolvimentos na rea de DGPS O ficheiro RTCM obtido no programa Gerar correc es diferenciais n o foi testado em nenhum receptor n o podendo ser por isso validado 4 3 Interface user friendly Os m ltiplos programas desenvolvidos com este m dulo s o teis para os utilizadores da esta o obterem dados de GPS Cada programa permite a aquisi o de dados com uma caracter stica em particular Estes programas t m que ser usados a partir da linha de comandos e requerem um conhecimento por parte do utilizador da estrutura utilizada nos segmentos de mem ria partilhada Um dos resultados importantes conseguido com os programas a facilidade de os utilizadores interagirem com grande parte do m dulo Interface S rie apenas no sentido de obter dados Os dados adquiridos com os programas s o guardados numa vari vel ficando escolha do utilizador o que fazer a seguir Todos os programas foram testados e a aquisi o dos dados realizada em ciclos de 1 segundo Foi testado tamb m o mesmo programa a correr em dois processos distintos um por cada receptor de GPS da esta o obtendo se os resultados esperados 4 4 Interface Web O ltimo m dulo da esta o permite a utilizadores autorizados terem sua disposi o numa interface web alguns dos resultados produzidos com o m dulo Interface S rie Est o definidos dois tipos de utilizador
25. as mensagens para este tipo de correc o Na vers o 2 1 do formato RTCM existem v rios tipos de mensagens pass veis de serem enviadas para os utilizadores No projecto foi definida apenas a mensagem do tipo 1 que incorpora as correc es diferencias para o pseudo range dos sat lites que s o vis veis para a esta o de refer ncia No Anexo A est esquematizado o formato da mensagem do tipo 1 6 2 1 5 National Marine Electronics Association NMEA A norma NMEA foi desenvolvida para permitir uma comunica o satisfat ria entre instrumentos mar timos equipamentos de navega o de comunica o O objectivo da norma servir interesse p blico facilitando a troca de informa o entre equipamento de marcas diferentes S o definidos na norma especifica es do sinal especifica es do protocolo de transmiss o de dados e um formato de mensagens especifico 7 Os receptores de GPS enviam mensagens num formato pr prio variando de receptor para receptor Muitos deles possuem mensagens na norma NMEA o que facilita a generaliza o da interface com outros receptores que possuam tamb m mensagens nessa norma dado que este formato NMEA independente do receptor Os receptores GPS usados no projecto disp em de algumas mensagens no formato NMEA e algumas delas foram usadas no desenvolvimento da esta o de monitoriza o de GPS Todas as mensagens NMEA est o bem definidas e come am sempre com o caracter
26. conceito torna o GPS um sistema passivo para os utilizadores dado que apenas recebem sinais dos sat lites O sinal inclui dados entre outros que permitem ao utilizador calcular a posi o do sat lite num determinado instante conhecidos como efem rides O segmento de controlo consiste num conjunto de esta es localizadas em diferentes locais onde a esta o principal designada por MCS Master Control Station est situada no Colorado Estados Unidos da Am rica 2 O segmento respons vel por monitorizar comandar e controlar a constela o de sat lites As principais tarefas s o determinar e prever a posi o dos sat lites actualizar o rel gio dos sat lites efem rides e almanac A actualiza o dos v rios par metros realizada pelo menos uma vez por dia sendo enviados para cada um dos sat lites para depois serem transmitidas aos utilizadores O ultimo segmento inclui todos os utilizadores do sistema Com um receptor de GPS ligado a uma antena o utilizador pode receber os sinais provenientes dos sat lites e assim determinar a sua posi o em qualquer lugar do globo e Ideia b sica do sistema A ideia por tr s do sistema GPS simples e est representada na Figura 2 3 Se a dist ncia de um ponto do globo a tr s dos sat lites presentes na constela o for conhecida ent o a intersec o de tr s esferas cujos raios representam a dist ncia do utilizador a cada um dos sat lites define a posi o
27. das mensagens RID GSA e PAR s o disponibilizados na Interface Web O ficheiro com os dados da mensagem NAK til apenas para o administrador da esta o Assim se uma dada mensagem enviada para um dos dois receptores estiver mal formatada o administrador da esta o advertido para esse facto devido exist ncia do ficheiro Ap s o processamento dos dados enviados pelo receptor o programa verifica se existe alguma mensagem para ser enviada para o receptor Os sem foros descritos no ponto 3 4 3 s o verificados pelo programa e se algum deles estiver com um valor diferente de 0 significa que a mensagem associada ao sem foro em causa deve ser enviada para o receptor no ciclo seguinte O valor do sem foro 1 ou 2 representando o n mero 1 o receptor ligado porta s rie O e o n mero 2 o receptor ligado porta 1 Para algumas mensagens o programa recorre aos segmentos de mem ria referidos no ponto 3 4 3 para criar a mensagem com os campos certos e com os valores definidos pelo utilizador autorizado que os escolheu A mensagem em causa enviada no pr ximo ciclo atrav s da porta A do receptor O ciclo do programa infinito terminando com o envio do sinal SIGINT O programa ao receber este sinal antes de sair fecha os segmentos de mem ria sem foros e ficheiros 33 3 4 5 Programas Dados de navega o Dados de observa o e Ficheiros Rinex e Dados de navega o O programa Dad
28. do utilizador Figura 2 3 Ideia b sica do sistema GPS Um das maneiras de determinar a dist ncia aos sat lites usando os c digos provenientes do sinal enviado por estes Normalmente estes c digos s o designados por PRN Pseudo Random Noise devido ao facto de parecerem muito complicados contudo t m uma sequ ncia l gica Cada sat lite transmite um c digo diferente existindo por isso uma baixa correla o entre eles O receptor GPS gera uma r plica do c digo e feita uma correla o com o c digo enviado pelos sat lites de modo a determinar o tempo que sinal demorou a chegar utilizador Tanto os sat lites como os receptores GPS possuem rel gios e com o rel gio do receptor que esse tempo determinado Se os rel gios de ambos estivessem completamente sincronizados e a propaga o do sinal fosse feita no v cuo a dist ncia a cada um dos sat lites estaria medida correctamente O problema que os rel gios n o est o s ncronos e assim surge na equa o total uma nova inc gnita o offset do rel gio do receptor Assim existem 4 inc gnitas no sistema a posi o no eixo x do utilizador a posi o a posi o z e offset do rel gio dos receptores de GPS Para resolver esta situa o a solu o encontrada foi adicionar a medi o da dist ncia de mais um sat lite sendo ent o necess rios quatro sat lites no total para um receptor de GPS calcular a sua posi o e Caracter sticas do
29. fam lia e aos meus amigos que estiveram sempre presentes desde o inicio at conclus o desta disserta o Fica aqui expresso o meu sincero agradecimento a todos Resumo O sistema de posicionamento global est hoje inserido em diversas reas e aplica es possibilitando a gera o de diversos resultados Pretende se com este trabalho a implementa o e desenvolvimento de uma esta o de monitoriza o de GPS utilizando para isso duas antenas e dois receptores de GPS e um computador Numa primeira fase s o descritos os conceitos de GPS essenciais para a compreens o do presente trabalho De seguida realizada a caracteriza o do equipamento presente na esta o sendo referidas as suas caracter sticas mais importantes A comunica o entre o computador e os dois receptores de GPS conseguida recorrendo ao desenvolvimento de software sendo realizado tamb m o processamento dos dados adquiridos Com o intuito do trabalho ser usado em projectos futuros foi desenvolvida uma interface simples e objectiva que permite a utilizadores futuros da esta o a aquisi o dos dados j adquiridos e processados O passo final na implementa o da esta o consiste no desenvolvimento de uma interface web O acesso atrav s da Internet universal e intuitivo estando este restrito a utilizadores autorizados A configura o de par metros importantes dos receptores a visualiza o de determinados dados e a possibil
30. fazer a escrita dos dados o outro onde os processos fazem a leitura Quando a escrita de dados fica completa esse segmento agora aquele que possui a informa o mais recente e por isso interessa que os processos efectuem a leitura sempre do segmento de mem ria com os dados mais actualizados Assim quando a escrita completada os indices dos segmentos trocam sendo agora a leitura de dados realizada no segmento que acabou de ser escrito com dados novos A escrita agora realizada no segmento de mem ria onde era efectuada a leitura A estrutura apresentada permite assim que enquanto um processo faz a escrita dos dados na mem ria outros processos possam aceder ao segmento de mem ria e fazer a aquisi o de dados sem terem que esperar que a escrita esteja completa permitindo assim diminuir o tempo de espera para leitura e escrita dos v rios processos e Estrutura dos sem foros Para que a estrutura apresentada anteriormente fique completa necess rio que exista uma sincroniza o entre os v rios processos conseguida com recurso a sem foros cada uma das estruturas apresentadas na Figura 3 3 est associado um sem foro e este por sua vez est dividido em quatro membros podendo ser visto cada membro como um sem foro que tem uma determinada fun o O segundo e terceiro membros do sem foro s o contadores invertidos Isto significa que s o inicializados com um n mero superior a zero Representam um contador com o n
31. metros caracter sticos do servidor Algumas das op es dispon veis no ficheiro permitem alterar a pasta raiz do servidor bem como o ficheiro inicial com que iniciado No direct rio usr local apache2 logs esta um ficheiro error log onde o servidor escreve automaticamente erros que possam existir na execu o dos ficheiros que comp em o m dulo Interface Web A pasta onde s o armazenados todos os ficheiros que constituem a interface designa se por htdocs e est na directoria usr local apache2 Esta pasta tamb m conhecida como pasta raiz do servidor A linguagem PHP tem tamb m um ficheiro especifico onde podem ser configurados alguns par metros espec ficos Est localizado na directoria usr local lib com o nome php ini Com o objectivo de ser o mais universal poss vel a interface apresentada em l ngua inglesa Na Figura 3 13 apresentada a p gina principal da esta o de monitoriza o de GPS do IT rf GPS MONITOR G STATION Receiver Satellite Data Rinex Login T allows authorized users to view and download some important data related with the Global Positioning rents in all sections is which of the receivers the user wants to use Only the Location Instituto Superior North Towe Figura 3 13 Pagina principal da esta o de monitoriza o de GPS do IT 59 De uma forma geral os conte dos que a interface disp e s o alguns dos referenciados m dul
32. no ponto 3 8 O programa corre num ciclo de 1 segundo e em cada ciclo faz a aquisi o dos dados a partir do segmento de mem ria e escreve os num ficheiro A este ficheiro est associado um sem foro com tr s membros id ntico ao sem foro usado para guardar as efem rides num segmento de mem ria no programa Dados de navega o O uso de um sem foro para sincroniza o entre leitura e escrita deve se ao facto de ser usado no programa que ir ser descrito a seguir Um exemplo de um ficheiro gerado com o programa e 2010 03 04 13 44 34 Numero de sat lites visiveis 11 17 28 217 50 11 3 144 36 13 83 66 56 23 51 47 55 08 3 175 36 07 26 151 48 02 22 313 46 04 68 303 56 32 2 82 39 10 16 279 47 20 29 79 47 Na primeira linha do ficheiro esta tempo de refer ncia para qual os dados foram guardados no ficheiro A segunda linha indica numero total de sat lites em linha de vista com a antena ao mesmo tempo o numero de sat lites presentes no ficheiro As restantes linhas sao os dados propriamente ditos onde na primeira coluna esta PRN do sat lite na segunda e terceira colunas a eleva o e azimute em graus respectivamente e na ltima coluna o SNR em dB Hz Neste caso n o escrito no ficheiro nenhuma refer ncia que permita saber de qual dos dois receptores foi feita a aquisi o dos dados Essa distin o feita dentro do programa a partir do nome do ficheiro O ciclo do programa termina c
33. o do sat lite A segunda linha informa qual das duas antenas da esta o foi usada para o c lculo em quest o Para obter essa informa o o programa recorre aos ficheiros referenciados no ponto 3 4 2 Na terceira linha o primeiro par metro G13 indica o PRN do sat lite neste caso o sat lite 13 Os restantes par metros indicam a posi o X Y e Z respectivamente do sat lite 13 no sistema WGS 84 Os dados representados no ficheiro repetem se para cada um dos sat lites dispon veis O algoritmo para o c lculo da posi o dos sat lites no sistema ECEF est descrito em 16 Os par metros necess rios para o c lculo s o as efem rides e um instante de tempo em segundos na escala de tempo GPS As efem rides como foi referenciado antes s o obtidas a partir do segmento criado no programa Dados de navega o O instante de tempo actual obtido recorrendo a um dos campos presentes na mensagem com identificador PBN Para obter este valor o programa recorre ao segmento de mem ria partilhada preenchido no programa Interface com os receptores referente mensagem PBN Os passos para leitura dos dados deste segmento seguem o que foi descrito no ponto 3 3 O programa corre num ciclo de 30 segundos e come a por obter o instante de tempo em segundos actual na escala de tempo GPS O algoritmo usado para o c lculo da posi o dos sat lites come a por considerar duas constantes Na equa o 3 1 est a consta
34. of the antenna position in meters Y coordinate of the antenna position in meters Z coordinate of the antenna position in meters receiver clock offset error in meters the antenna x velocity in meters per second the antenna y velocity in meters per second the antenna z velocity in meters per second receiver clock drift in meters per second PDOP multiplied by 100 checksum to validate the message 69 bytes no total Mensagem MCA Formato da mensagem PASHR lt Magellan type 3 data string checksum gt PASHR MCA 2 bytes 1 byte 1 byte header of message message identifier sequence ID number in units of 50 ms modulo 30 minutes number of remaining MCA messages to be sent for current epoch The AC 12 outputs a separate MCA message for each satellite satellite PRN number 90 1 byte 1 byte 1 byte 1 byte 1 byte 1 byte 1 byte 1 byte 8 bytes 8 bytes 4 bytes 4 bytes 1 byte elevation angle in degrees of the satellite referenced in PRN azimuth angle in degrees of the satellite referenced in PRN channel assigned to the satellite referenced in PRN flag 0 and or carrier phase have been measured for the satellite referenced in PRN 1 code and or carrier phase have been measured and the navigation message was obtained for the satellite referenced in PRN but these data were not used in the position computation 2 code and or carrier phase have been measured the navigation message was ob
35. receptores ou para os dois bastando para isso introduzir o argumento dev ttySO e Idev ttyS1 para proceder a interface com o receptor ligado porta s rie 0 1 respectivamente No trabalho s o usados os dois receptores estando por isso a correr os dois processos com os dois argumentos Antes de iniciar a interface com os receptores necess rio definir determinadas caracter sticas para a comunica o a partir das duas portas DB 9 do computador seguindo o protocolo RS 232 No ponto 2 2 1 est o referidos alguns dos pontos essenciais para efectuar a comunica o e ritmo bin rio e bits de dados e bits de paragem e paridade A defini o destes par metros no programa Interface com os receptores tem que estar de acordo com as op es dispon veis nos receptores usados no trabalho Se por exemplo o ritmo bin rio escolhido para os receptores n o for igual ao definido no programa para a comunica o 32 com os mesmos o n mero de bytes lidos das portas s rie seria zero n o existindo por isso qualquer tipo de interface com os receptores Para al m destes par metros existe tamb m a necessidade de definir outros sendo estes os comuns entre os receptores e o computador Os receptores usados no trabalho disp em da op o de pr definir mensagens para serem enviadas automaticamente por estes sem ser necess rio o administrador da esta o requisitar o envio de determinada mensagem Por exempl
36. rio HTML para o envio da mensagem de inicializa o 62 Figura 3 15 Exemplo da resposta ao envio da mensagem PAR no m dulo Interface Web 63 Figura 3 16 P gina que permite aceder aos dados dos sat lites vis veis 64 Figura 3 17 P gina para acesso aos ficheiros no formato 65 Figura 3 18 P gina com os ficheiros RINEX referentes a um determinado dia 66 Figura 4 1 Exemplo de uma parte do ficheiro RINEX de navega o 69 Figura 4 2 Exemplo de uma parte do ficheiro RINEX de observa o 70 Figura 4 3 Azimute e eleva o em graus dos sat lites vis veis a uma das antenas 72 Figura 4 4 Dist ncia entre um dado sat lite calculado com recurso aos dois receptores 74 Figura 4 5 Diferen a entre o pseudo range calculado com recurso aos dois receptores 75 Figura 4 6 Diferen a entre as correc es diferenciais com recurso aos dois receptores 76 viii Lista de Siglas ASCII DB DGPS DOD DOP ECEF ESA EU FIFO GPS HTML HTTP IODC IODE IPC IST LS MCS American Standard Code for Information Interchange Data Bus Differential Global Positioning System Department of Defense Dilution of Precision Earth Centered Earth Fixed European Space Age
37. sinal Os sat lites transmitem permanentemente duas ondas portadoras na banda L S o designadas por L1 e L2 com uma frequ ncia de 1575 42 MHz 1227 60 MHz respectivamente As escolha das frequ ncias justifica se pois a interfer ncia do sinal chuva neve e outras condi es meteorol gicas deve ser m nima O comprimento de onda para a frequ ncia L1 de aproximadamente 19 cm e para a portadora L2 de 24 4 cm A exist ncia de duas portadoras permite conhecer um dos erros do GPS conhecido como atraso proveniente da ionosfera Todos os sat lites transmitem nas mesmas frequ ncias contudo a modula o do c digo diferente para cada um dos sat lites Os dois c digos existentes s o designados por C A Coarse acquisition e P Precision Cada c digo consiste num conjunto de d gitos bin rios conhecidos como chips Normalmente o c digo C A modulado na portadora L1 enquanto que o c digo P modulado em ambas as portadoras A portadora L1 para al m de transportar os dois c digos inclui tamb m os dados de navega o enquanto que a portadora L2 modula apenas o c digo P O uso da portadora L2 est normalmente associado a receptores constru dos para posicionamento preciso como utilizadores militares A portadora L1 est ligada a uso civil Na Tabela 2 1 est um resumo das principais caracter sticas das duas portadoras 2 Tabela 2 1 Caracter sticas das portadoras L1 e L2 1575 42 MHz Receptores civis 1
38. situa o o processo de monitoriza o envia o sinal de ao Matlab voltando a correr o programa em linguagem no ponto a seguir execu o do Matlab Na Figura 4 3 est representado um exemplo do resultado obtido com o programa e que disponibilizado no m dulo Interface Web PRN 10 PRN 7 PRN 29 PRN 5 PRN 13 PRN 15 PRN 8 PRN 4 PRN 2 PRN 28 BSHE 180 270 Figura 4 3 Azimute e eleva o em graus dos sat lites vis veis a uma das antenas e Correccoes diferenciais Relativamente ao programa Gerar correc es diferenciais algumas conclus es importantes podem se retirar a partir do processamento realizado No algoritmo aplicado no c lculo da posi o da antena numa situa o aut noma ou seja sem introduzir correc es diferenciais resultado obtido teve um erro m dio de 3 3 metros e um desvio padr o de 1 6 metros Este erro diz respeito a 12000 observa es realizadas e representa a dist ncia entre a posi o obtida com o algoritmo descrito no ponto 3 4 8 sem aplicar correc es diferenciais e a posi o exacta da antena em quest o Esta posi o exacta obtida recorrendo aos ficheiros descritos no ponto 3 4 2 O valor obtido o esperado dado que n o foi introduzida a correc o da ionosfera devido ao facto de o receptor n o possuir as caracter sticas necess rias para 72 seu c lculo Fica assim validado to
39. software desenvolvido um bom ponto de partida para futuros trabalhos na rea de DGPS De modo a tentar ultrapassar o problema e tornar os resultados mais eficientes foram realizados v rios testes n o tendo os seus resultados conseguido uma melhoria significativa nas correc es diferenciais e no respectivo erro associado O teste realizado consistiu em transformar os dois receptores de GPS da esta o como receptores de refer ncia ou seja ambos os receptores geram correc es diferenciais Assim comparando os diversos valores durante o processamento estes t m de ser significativamente pr ximos O primeiro dado recolhido foi o erro provocado pela troposfera na influ ncia da propaga o do sinal do sat lite at ao receptor Comparando os dados de um receptor e de outro estes s o muito pr ximos verificando se uma precis o superior a tr s casas decimais Com esta conclus o exclui se algum problema no c lculo do erro associado troposfera Outra compara o realizada foi a posi o dos sat lites calculada pelos dois receptores Sendo este um par metro importante na gera o das correc es diferenciais era fundamental comparar os dois resultados obtidos Os valores foram guardados num ficheiro tendo sido calculada a dist ncia entre as posi es dos sat lites obtidas com o receptor ligado porta s rie 0 e o receptor ligado porta s rie 1 O valor da dist ncia tem que ser significativamente pequeno dado que a
40. tem as dimens es em metros e representa a influ ncia da troposfera para uma eleva o de 90 graus 6 x Nah N h 3 20 necess rio agora incluir a eleva o referida anteriormente do sat lite em causa em rela o antena Na equa o 3 21 est o resultado final de todo o algoritmo estando a vari vel tropo a representar o atraso em metros provocado pela troposfera na propaga o do sinal A vari vel foi calculada previamente e cujo algoritmo est referenciado no ponto 3 4 6 Uma conclus o que se tira a partir da equa o 3 21 a rela o entre o valor da eleva o e o valor do atraso provocado pela troposfera Quanto menor a eleva o maior ser o atraso provocado 52 pela troposfera devido ao facto de o sinal atravessar durante mais tempo a troposfera mesmo racioc nio dever ser feito para o caso oposto 1 001 0 002001 sin 4 tropo 3 21 Mais detalhes sobre algoritmo utilizado podem ser consultados em 17 Com o c lculo da posi o dos sat lites referido anteriormente uma das vari veis que se obt m o erro do rel gio em segundos associado ao sat lite em quest o Esse valor multiplicado pela velocidade da luz de modo a converter as suas unidades para metros Clk ar Possuindo neste ponto do algoritmo global o erro do rel gio dos sat lites e o atraso no sinal provocado pela troposfera poss vel corrigir o valor med
41. usr local apache2 htdocs includes loginfo 99
42. 2 algumas das antenas e receptores existentes no mercado incluem aquisi o de sinais a partir das frequ ncias L1 e L2 Com os dados adquiridos a partir das duas frequ ncias pode se por exemplo calcular o erro provocado pela ionosfera e DGPS o receptor utilizado no trabalho tem a op o de receber correc es diferenciais permitindo um aumento de precis o funcionado assim em modo remoto Receptores mais evolu dos para al m de possu rem tamb m este modo t m a op o do modo base Este modo traduz se no c lculo autom tico das correc es diferenciais por parte do receptor e GLONASS o sistema russo de navega o por sat lite Com o equipamento necess rio poss vel adquirir simultaneamente dados de sat lites pertencentes ao sistema GPS e GLONASS Receptores com um n mero elevado de canais por exemplo 75 podem simultaneamente estar ligados a sat lites pertencentes a dois tipos de sistemas de navega o por sat lite gt Sistema Galileo Galileo um sistema de navega o global por sat lite que actualmente se encontra a ser desenvolvido pela EU European Union e ESA European Space Agency Come ou a ser pensado no ano de 1998 com o intuito de ser independente do GPS bem como permitir o uso global do sistema n o sendo feita uma distin o entre de uma forma geral utilizadores civis e militares como aconteceu com o GPS 1 Um dos objectivos prim rios deste sistema possuir uma interoperabilidad
43. 227 60 MHz Receptores militares e Erros que afectam o sistema Os erros que afectam a precis o do sistema GPS t m diferentes origens As efem rides s o um conjunto de dados que permitem ao receptor calcular a posi o dos sat lites e que s o enviadas na mensagem de navega o No entanto existem alguns factores que introduzem alguns erros nesses dados que afecta a precis o no c lculo da posi o dos sat lites Uma outra fonte de erro prov m dos rel gios Apesar do rel gio dos sat lites ser muito preciso um erro de um nanosegundo equivale a 30 cm de erro no c lculo da dist ncia aos sat lites Tamb m o rel gio do receptor sendo menos preciso introduz erro como j foi referido atr s O multi percurso e o ru do do receptor t m tamb m influ ncia negativa na precis o A viagem do sinal at ao receptor outra das fontes de erro No seu percurso o sinal atravessa a ionosfera e a troposfera fazendo com que a velocidade n o seja exactamente a velocidade da luz no vazio Por ltimo a pr pria geometria com que os sat lites est o dispostos no espa o afecta sistema Quanto mais afastados os sat lites estiverem melhor a sua geometria ou seja a precis o no c lculo da posi o de um utilizador maior 2 Existe uma vari vel que permite medir o efeito da geometria dos sat lites designada por DOP Dilution of Precision e quanto menor o seu valor melhor a geometria dos sat lites Existem mais tr s verte
44. 28170D 05 128735649632D 01 897981226444D 05 515369769859D 04 216000000000D 06 150874257088D 06 418347069720D 00 894069671631D 07 927301418969D 00 1851250000000 03 983234481057D 00 810855205202D 08 378230030629D 09 157400000000D 04 2828427124750 01 000000000000D 01 419095158577D 08 630000000000 02 999900000000D 09 400000000000D 01 G04 2010 03 09 18 00 00 327755697072D 04 886757334229D 11 000000000000 01 670000000000D 02 1440625000000 02 533486499421D 08 243811338807D 01 510364770889D 06 911357533187D 02 651367008686D 05 515364491463D 04 237600000000D 06 102445483208D 06 750393009018D 00 208616256714D 06 939390258609D 00 242125000000D 03 599345460687D 00 830748891900D 08 108933105591 09 157400000000 04 200000000000 01 000000000000D 01 605359673500D 08 670000000000D 02 999900000000D 09 400000000000D 01 Figura 4 1 Exemplo de uma parte do ficheiro RINEX de navega o 69 Algumas conclus es se podem retirar por observa o dos ficheiros de navega o Uma primeira conclus o o n mero total de sat lites que fazem parte da actual constela o GPS que cerca de 30 sat lites Uma outra conclus o o valor do PRN dos sat lites que est o activos Todos os sat lites s o identificados pelo seu PRN que varia de 1 a 32 Na constela o actual de sat lites os nicos que n o se encontram activos s o os sat lites com PRN 1 e 25 Estas conclus es foram obtidas ap s algu
45. GINT pid It must be send to all programs to stop the entire GPS monitoring station User friendly Interface This section describes the commands to the directories where the future user can find the programs developed in the module User friendly Interface The user is responsible for developing the programs to interact with the data The error files are stored in the directory corresponding to the program in question In all the directories there is a model program The user can use this program like an example for future development 1 Ephemeris acquisition of ephemeris storage in a shared memory segment To change directory cd Desktop it Eph download 2 Pseudo Range access to data storage in program Observation Data The user can make the acquisition of satellites pseudo range To change directory cd Desktop it Raw_download 97 3 Satellite Position access to shared memory segment with satellite positions To change directory cd Desktop it SatPos download 4 ALM message access to data of message with ID ALM To change directory cd Desktop it GPALM download 5 GGA message access to shared memory segment with data of message with ID GGA To change directory cd Desktop it GPGGA download 6 GSV message access to data of message with ID GSV To change directory cd Desktop it GPGSV download 7 UKO message access to shared memory segment with data of message with ID UKO To change directory cd Desktop
46. HTML onde ter o que ser escolhidos os par metros que permitem definir a mensagem Um dos par metros comuns a todos as mensagens a qual dos dois receptores se quer enviar a mensagem em causa Na Figura 3 14 est o exemplo do formul rio que o administrador teria que preencher para enviar a mensagem de inicializa o 61 T cnica de Lisboa Ef GPS MONITOR STATION Home Satellite Data Rinex Logout Select Receiver port A B baud rate and memory reset code J 4 Receiver connected to port O E aud rate 115200 Select baud rate 115200 14 clear ephemeris but almanac position or time Send Figura 3 14 Formul rio HTML para o envio da mensagem de inicializa o Quando o utilizador selecciona o envio da mensagem o portal remetido para o ficheiro initialization php associado mensagem em causa Nesse ficheiro recorrendo as funcionalidades da linguagem PHP executado o programa referente mensagem com os par metros seleccionados enviados como argumentos Os programas localizados na directoria usr local apache2Z htdocs est o referidos no ponto 3 4 3 e correspondem a execut veis constru dos no m dulo Interface S rie Por raz es de seguran a os ficheiros e programas no m dulo Interface Web t m algumas restri es Para que seja poss vel a execu o dos programas desenvolvidos no m dul
47. PS um sistema que est operacional 24 horas por dia poss vel implementar uma esta o de monitoriza o permanente que fa a uso dos dados enviados pelos receptores de GPS e que de uma forma simples disponibilize esses dados para os utilizadores da esta o ou de uma maneira mais complexa sejam aplicados diversos algoritmos aos dados e ap s esse processamento feita a sua disponibiliza o A esta o de monitoriza o de GPS do IT Instituto de Telecomunica es est situada no Laborat rio de Sat lites no 12 piso da Torre Norte do IST Instituto Superior T cnico e permite que diversos tipos de dados estejam dispon veis para al m de possibilitar uma cont nua interface com dois receptores de GPS 1 2 Objectivos O objectivo do projecto descrito neste relat rio ter como ponto inicial a interliga o de v rios componentes e de seguida o desenvolvimento de software de raiz para implementar uma esta o de monitoriza o de GPS A esta o ter que estar operacional 24 horas por dia sendo utilizados dois receptores de GPS iguais ligados a duas antenas situadas em pontos diferentes e localizadas no topo da Torre Norte do IST A utiliza o de dois receptores permite validar alguns dos resultados obtidos comparando os dados de um e de outro e tem tamb m o objectivo de ser til em trabalhos futuros A implementa o da esta o ter que estar dividida em dois grandes m dulos O primeiro um pr
48. a diminuir 85 FILL pode ter 0 8 16 bits Corresponde a um n mero bin rio com bits 1 e O alternados O seu uso adv m do facto das palavras terem que ter 30 bits Assim se os dados dos sat lites terminarem antes desses 30 bits este campo usado Paridade permite validar a palavra em causa 86 Anexo Formato NMEA Mensagem ALM Formato da mensagem GPALM d1 d2 d3 d4 h1 h2 h3 h4 h5 h6 h7 h8 h9 h10 ht1 cc GPALM Mensagem GGA header of message total number of messages number of this message satellite PRN number GPS week satellite health in ASCII hexadecimal eccentricity in ASCII hexadecimal almanac reference time in ASCII hexadecimal inclination angle semicircles in ASCII hexadecimal rate of ascension semicircles sec in ASCII hexadecimal root of semi major axis in ASCII hexadecimal argument of perigee in ASCII hexadecimal longitude of ascension mode semicircle in ASCII hexadecimal mean anomaly semicircle in ASCII hexadecimal clock parameter seconds in ASCII hexadecimal clock parameter seconds seconds in ASCII hexadecimal checksum to validate the message Formato da mensagem GPGGA m1 m2 c1 m3 c2 d1 d2 f1 f2 M f3 M f4 d3 cc GPGGA m1 m2 ci m3 c2 d1 header of message current UTC time in hours minutes and seconds hhmmss ss latitude in degrees and decimal minutes ddmm mmmmm direction of latitude longitude in degrees and decimal minute
49. a o SNR Na directoria usr local apache2 htdocs site SatelliteData est o os ficheiros e as figuras obtidas com os dados dos dois receptores de GPS Quando o utilizador selecciona a op o para ver os dados necess rio verificar se naquele preciso momento estes n o est o a ser actualizados pelo m dulo Interface S rie Recorrendo as funcionalidades da linguagem PHP antes de disponibilizar os dados na p gina executado um programa em C que espera que o sem foro referido no ponto 3 4 7 fique verde e posteriormente coloca o a vermelho Depois de os dados serem disponibilizados executado outro programa que coloca agora o sem foro a verde Esta abordagem permite evitar erros que apesar de improv veis iriam gerar na p gina resultados inesperados Em todos os acessos ao conte do da p gina e nos per odos de teste nunca foi notado nenhum tempo de espera sendo o acesso aos dados praticamente instant neo 64 3 6 4 Ficheiros no formato Rinex Uma outra p gina dispon vel na interface web tem os ficheiros no formato RINEX gerados a partir de alguns dos programas descritos no m dulo Interface S rie O acesso a este conte do permitido para utilizadores do tipo administrador e geral O acesso aos ficheiros realizado a partir da p gina com o nome Rinex Figura 3 17 Na p gina s o apresentados algumas caracter sticas importantes dos receptores e que interferem nos dados guardados no ficheiro
50. ade e s o usados para verificar a validade de cada uma das palavras A gera o destes bits est descrita em 16 Cada uma das palavras est dividida em determinados campos com um determinado n mero de bits Como foi descrito no ponto 2 1 4 existem v rios tipos de mensagens mas todas elas s o iniciadas com um cabe alho comum de 2 palavras Este cabe alho cont m informa o pertinente para todas as mensagens como o identificador da esta o de refer ncia tempo de refer ncia e a informa o necess ria para existir sincroniza o no utilizador Na Tabela A 1 e na Tabela A 2 est o representadas respectivamente a primeira e segunda palavra do cabe alho Tabela A 1 Primeira palavra do cabe alho RTCM Tipo da Identificador da mensagem esta o Preamble Paridade 8 bits 6 bits 10 bits 6 bits Tabela A 2 Segunda palavra do cabe alho RTCM Modified Z N mero de Comprimento Sa de da Count sequ ncia da mensagem esta o Paridade 13 bits 3 bits 5 bits 3 bits 6bits 30 bits gt Preamble tem um valor fixo e o in cio de cada mensagem O receptor que recebe a mensagem RTCM deve procurar o preamble para se sincronizar gt Tipo da mensagem n mero entre 1 64 que corresponde ao identificador da mensagem em causa gt Identificador da esta o n mero arbitr rio entre O e 1023 definido pela esta o de refer ncia gt Paridade
51. ador correndo a fun o associada a este programa consegue obter a posi o dos sat lites calculada no programa Posi o dos sat lites Este programa identificado na directoria de trabalho por Satellite Position e ALM dados da mensagem com identificador ALM O nome do programa na directoria de trabalho ALM message e dados da mensagem com identificar GGA O programa identificado pelo nome GGA message e GSV dados da mensagem com identificador GSV Na directoria de trabalho programa toma o nome de GSV message e UKO dados da mensagem com identificador UKO O programa identificado pelo nome UKO message e MCA dados da mensagem com identificador MCA O nome do programa na directoria de trabalho MCA message e PBN dados da mensagem com identificador PBN O programa identificado pelo nome PBN message e SNV dados da mensagem com identificador SNV Na directoria de trabalho o programa identificado pelo nome SNV message 57 que o entendimento desta interface seja facilitado apresentado na Figura 3 12 um exemplo da fun o que o utilizador externo teria que construir para ter acesso aos dados da mensagem com identificador PBN include PBN read h include lt unistd h gt int main int status i PBN data for i 1 i lt 20 i status PBN read 0 amp data if status 1 printf error in PBN read gi e print 3sf 3f 3f n data
52. ados com GPS bem como uma descri o de formatos universais tais como NMEA RTCM e RINEX Foi realizada a caracteriza o do equipamento que constitui a esta o de monitoriza o e que consiste em dois receptores e duas antenas de GPS e um computador atrav s do computador que feita a interac o com os dois receptores tendo sido desenvolvido para tal software de raiz O trabalho foi dividido em dois grandes m dulos O primeiro m dulo desenvolvido em linguagem C realiza a aquisi o dos dados bem como o seu processamento e disponibiliza o O segundo m dulo permite a interac o com os dois receptores e a visualiza o de determinados resultados de uma forma simples e universal Relativamente ao primeiro m dulo este foi desenvolvido recorrendo a segmentos de mem ria partilhada sincronizados com recurso a sem foros devido ao facto do m dulo estar dividido em m ltiplos programas Com esta forma de IPC poss vel disponibilizar resultados constru dos num determinado programa num outro dividindo assim as fun es do trabalho global em v rios programas O primeiro m dulo foi considerado em duas partes distintas A primeira representa a base da esta o de monitoriza o do IT onde foi feita a interac o directa com os dois receptores descodifica o dos dados e a aplica o de diversos algoritmos A segunda parte resulta de objectivos futuros sendo til para futuros utilizadores da esta o adquirirem dado
53. al Positioning System a visualiza o de uma figura com a representa o do azimute e eleva o dos sat lites em linha de vista com as duas antenas num determinado instante O primeiro m dulo pode ser dividido numa segunda parte que traduz o objectivo de os dados adquiridos serem usados em trabalhos futuros Ser ent o necess rio criar uma interface que seja acess vel para que qualquer utilizador do programa possa facilmente realizar a aquisi o dos dados enviados pelo receptor Esta interface consiste em m ltiplos processos desenvolvidos tamb m em linguagem de programa o C e permitem obter os dados ainda numa forma primitiva ou seja recorrendo aos segmentos de mem ria partilhada referidos anteriormente Relativamente p gina na Internet esta ter de ser de uso restrito definindo se dois tipos de utilizadores administrador e geral tendo o administrador acesso a todos os conte dos disponibilizados na p gina As v rias funcionalidades dispon veis dizem respeito aos pontos descritos anteriormente agora num formato muito mais acess vel e com a possibilidade de acesso em qualquer ponto do globo terrestre bastando para isso ter uma liga o Internet 1 3 Organiza o Esta disserta o est dividida em cinco cap tulos Ap s o capitulo 1 que cont m umas breves notas introdut rias apresenta se no capitulo 2 os conceitos gerais do sistema GPS necess rios para entender alguns dos aspectos desenvolvidos
54. alguma mensagem criada significa que foi dada uma ordem pelo administrador ou por algum utilizador autorizado para o envio de uma mensagem em particular Ap s a verifica o feita a leitura de todos os dados enviados pelo receptor atrav s da porta A Estes dados s o guardados num vector de caracteres A comunica o com os receptores n o s ncrona e assim no momento da leitura pode acontecer que a ltima mensagem guardada no vector de caracteres n o esteja completa sendo a leitura da restante mensagem feita no ciclo seguinte Assim necess rio verificar se 33 no ciclo anterior existiu dessincroniza o Se ocorreu necess rio realizar a descodifica o da mensagem em causa e o respectivo processamento de dados Inicio do ciclo com 0 5 segundos Leitura dos dados enviados pelo receptor Verifica se existe dessincroniza o Descodifica o da Descodifica o das mensagem mensagens enviadas dessincronizada pelo receptor Processamento dos Processamento dos dados da dados das mensagem mensagens Verifica se existe algum requisito para envio da Cria mensagem em causa Verifica se existe alguma mensagem criada Envio da mensagem para o receptor seleccionado Figura 3 9 Ciclo do programa Interface com os receptores descodifica o das mensagens feita come ando por procurar o car cter Depois necess rio identificar o cabe alho e a identifica
55. as consequ ncias resultantes Em termos globais a implementa o da esta o de monitoriza o de GPS do IT permite a obten o dos dados relacionados com o sistema GPS A esta o desenvolvida t m disposi o de futuros utilizadores programas para aquisi o dos par metros mais importantes desenvolvidos no trabalho O desenvolvimento de uma interface web d uma maior universalidade ao projecto desenvolvido integrando o trabalho implementado numa forma de acesso simples e universal Este capitulo est dividido nos tr s m dulos descritos no capitulo 3 Em cada um ser o apresentados os resultados mais relevantes bem como os testes efectuados 4 2 Interface S rie e Comunica o entre processos O bloco principal da esta o o m dulo Interface S rie O primeiro resultado importante a considerar a divis o das v rias fun es do programa global em v rios processos cada um com um objectivo final diferente Isto permite diminuir significativamente a complexidade global S o usados dois receptores de GPS para a aquisi o de dados podendo o administrador da esta o fazer uso dos dois receptores ou apenas de um O software desenvolvido foi testado durante mais de dois meses dependendo o tempo total de opera o da mem ria do computador onde o programa est a correr A estrutura descrita no ponto 3 3 que permite a comunica o entre os v rios processos tem alguma complexidade Os testes realizados dura
56. ato e 2010 03 02 14 53 59 C lculo usando o receptor ligado a porta dev ttyS1 G02 45 97 303 71 G04 71 42 207 42 905 15 30 292 48 G07 49 72 129 02 G08 27 40 167 27 G10 36 01 299 28 G13 54 48 40 27 917 5 35 201 30 G20 9 72 99 24 G23 25 21 50 05 Na primeira linha do ficheiro escrito o tempo de refer ncia o qual os dados foram guardados no ficheiro A segunda linha d a informa o de qual o receptor usado para o c lculo O restante conte do do ficheiro s o os dados propriamente ditos Na primeira coluna est o PRN do sat lite em causa na segunda coluna a eleva o em graus e na terceira coluna o azimute tamb m em graus O ciclo do programa termina com o comando Ctrl c O programa ao receber este sinal antes de sair fecha os segmentos de memoria sem foros e ficheiros 3 47 Programas Dados dos sat lites e Figura com a posi o dos sat lites e Dados dos sat lites Este programa tem como objectivo a obten o do azimute eleva o e SNR de cada um dos sat lites em linha de vista com as antenas da esta o Na directoria de trabalho identificado por Satellite Data No trabalho foram usados os dois receptores para a aquisi o dos dados 45 A mensagem com identificador GSV cont m todos os dados referidos anteriormente Assim este programa utiliza o segmento de mem ria partilhada referente a essa mensagem Os passos para efectuar a leitura de dados do segmento est o descritos
57. av s deste sistema de coordenadas locais com origem na antena em causa que calculado o azimute e eleva o Para determinar o sistema local preciso transformar as coordenadas cartesianas da antena X Y e Z em coordenadas geogr ficas latitude longitude e altitude 1 O referencial local obt m se realizando uma rota o segundo X do vector que une o sat lite antena no sistema WGS 84 de 90 graus menos a latitude da antena Segundo Z feita uma rota o de 90 graus mais Longitude sendo que a longitude das antenas devido sua localiza o segundo W deve aparecer negativa Na equa o 3 6 est o c lculo dos ngulos a representado respectivamente a correc o a latitude e longitude Estes valores s o convertidos para radianos 90 latitude x 7 180 oe 90 longitude x 5 180 Com os ngulos referidos anteriormente s o constru das as duas matrizes para efectuar as duas rota es Na equa o 3 7 apresentada a matriz de rota o segundo o eixo x sendo constru da com o ngulo e a matriz de rota o segundo o eixo z constru da com o ngulo 43 1 0 0 Rot amp 0 cosa sina O sina cosa 3 7 cosy siny 0 Rot y siny cosy 0 0 0 1 Multiplicando o vector representado na equa o 3 5 constitu do pelas 3 coordenadas x z pelas duas matrizes apresentadas na equa o 3 7 obt m se o vector que une a antena ao sat lite num sist
58. bter as efem rides estas t m que estar todas as que j foram recebidas dispon veis Assim o segmento de mem ria criado tem 32 estruturas cada uma com todos os campos das efem rides Em cada uma das 32 estruturas s o guardadas as efem rides de um sat lite cujo ndice da estrutura o PRN 1 do sat lite em causa O sem foro associado ao segmento com as 32 estruturas tem tr s membros sendo a ideia geral j referida no ponto 3 3 O primeiro membro o verdadeiro verde e vermelho para a sincroniza o entre a escrita e leitura de dados o segundo membro um contador invertido do n mero de processos a usar o sem foro e o terceiro membro usado apenas no momento da cria o e fecho por raz es j referidas O programa Dados de navega o corre num ciclo de 1 segundo Na Figura 3 10 est o representados os pontos mais relevantes do programa Os objectivos deste programa s o guardar num segmento de mem ria partilhada as efem rides de todos os sat lites que j foram recebidas bem como a escrita das efem rides num ficheiro segundo o formato RINEX Os ficheiros RINEX com os dados de navega o gerados no trabalho s o ficheiros hor rios e o formato para o nome dos ficheiros est referenciado no ponto 2 1 6 O nome do ficheiro depende do tempo a que corresponde a escrita dos dados O primeiro passo representado na Figura 3 10 corresponde obten o do nome do ficheiro tendo em conta o instant
59. ceptor PMD 4 FIX 0 PEM 05 PDP 06 HDP 04 DTM W84 LTZ 000 00 SAV Y ANT Y WAAS N USE YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY CDS AUTO DIF_RTCM_MODE OFF PRT AUT Y MAX 0015 LAT 0000 000000 N LON 00000 000000 E ALT 00000 00 NMEA ZDA GGA GLL GSA GSV MSG POS RMC SAT VTG ALM RRE UKO CRT XMG UTM MCA PBN PRTA 001 001 001 001 001 001 PRTB NMEA SNV PRTA 001 PRTB __ PER 001 SPD PORT A 9 PORT B 9 A explica o do significado de cada um dos campos pode ser encontrada em 8 Mensagem RID Formato da mensagem PASHR RID s1 s2 cc PASHR header of message RID message identifier 51 receiver ID s2 firmware version checksum to validate the message 89 Mensagem UKO Formato da mensagem GPUKO d1 f1 d2 f2 d2 d3 d4 d5 d6 d7 f3 cc GPUKO Mensagem PBN header of message GPS week number time of week seconds number of SVs used in solution scale factor PRN number Post fit residuals line of sight latitude sensitivity line of sight longitude sensitivity line of sight altitude sensitivity weight of SV checksum to validate the message Formato da mensagem PASHR PBN lt Raw position data checksum gt PASHR PBN 4 bytes 4 bytes 8 bytes 8 bytes 8 bytes 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes 2 bytes 2 bytes header of message message identifier time at wich the signal was received in miliseconds of the week referenced to GPS system time station name X coordinate
60. cri o com os pontos mais relevantes dos blocos representados na Figura 3 5 26 3 4 1 Programa Criar e Inicializar O primeiro programa a iniciar no m dulo Interface S rie Criar e Inicializar Este programa na directoria de trabalho est identificado a partir do nome Create and Initialize Como pr prio nome indica este programa respons vel pela cria o e inicializa o de alguns par metros necess rios aos restantes programas Um aspecto importante no desenvolvimento do m dulo Interface S rie o registo de poss veis erros que podem ocorrer nos v rios programas Assim o programa Criar e Inicializar respons vel pela cria o de dois ficheiros um por receptor onde s o escritos todos os eventuais erros que possam surgir em todos os programas do m dulo Interface S rie Em cada um dos erros existe a identifica o do programa e a fun o correspondente onde foi verificado Com esta informa o torna se mais f cil para o administrador da esta o detectar e resolver eventuais problemas no m dulo Interface S rie O programa inicia se sempre com um de tr s argumentos poss veis A exist ncia de tr s argumentos permite iniciar o m dulo Interface S rie ajustando o de acordo com as necessidades do administrador da esta o Para o presente trabalho s o aplicados os tr s argumentos que s o e devitySO e dev ttyS1 e Antenna O terceiro argumento Antenna est r
61. crita de dados e Matlab Outra das op es no projecto foi o uso da ferramenta Matlab para gerar uma figura com a representa o do azimute e eleva o dos sat lites O Matlab tem sua disposi o um grande conjunto de bibliotecas de entre as quais uma biblioteca gr fica Esta tem incorporada as fun es necess rias para cumprir os objectivos referentes gera o da figura referida O Matlab pode tamb m ser iniciado atrav s de um ficheiro em linguagem de programa o C o que facilita a integra o com o trabalho descrito anteriormente 24 e Linguagem HTML e servidor HTTP Para o desenvolvimento da Interface Web foram desenvolvidas v rias p ginas em formato HTML HyperText Markup Language Para que a esta o tenha uma p gina na Internet a correr permanentemente foi necess rio instalar um servidor HTTP HyperText Transfer Protocol no computador utilizado no projecto Para tal escolheu se o servidor mais utilizado na Internet o Apache HTTP Server PHP Para o desenvolvimento de algumas funcionalidades da Interface Web como por exemplo a interac o com alguns processos presentes na Interface S rie o formato HTML n o disp e dos requisitos necess rios sendo indispens vel o recurso linguagem PHP Personal Home Page 15 Esta linguagem interpretada e permite facilmente integrar c digo HTML junto com c digo PHP As solu es descritas neste subcap tulo s o algumas das mais relevantes no proj
62. culo desses par metros pode ser consultado em 1 O valor obtido para estes par metros est apresentado na equa o 3 16 A vari vel e representa o valor m dio para a press o parcial do vapor de gua em milibar a vari vel p a press o atmosf rica m dia tamb m em milibar e a vari vel T o valor para a temperatura m dia em Kelvin e 16 39 mb 1016 45 mb 3 16 T 293 15 K Existem muitos modelos para obter o erro devido a propaga o do sinal na troposfera No projecto optou se pelo modelo de Hopfield por possuir alguma simplicidade quando 51 comparado com outros modelos e por produzir os resultados esperados Este modelo usa tr s constantes apresentadas na equa o 3 17 al 77 624 Kmb a2 12 96 Kmb 3 17 a3 371900 Com os valores apresentados nas equa es 3 16 3 17 s o calculadas duas componentes Na e Ny designadas por dry e wet respectivamente O c lculo apresentado na equa o 3 18 N alx 3 18 N 2 3 Com as vari veis e Ny s o obtidas duas novas vari veis ha hy calculadas segundo a equa o 3 19 _ 0 011385xp o N x10 3 19 0 00113851 0 0 05 A partir das vari veis obtidas nas equa es 3 18 e 3 19 agora poss vel calcular a influ ncia da troposfera na propaga o do sinal do sat lite at ao receptor se a eleva o fosse 90 graus Na equa o 3 20 a vari vel tropogg
63. d representa dia do ano em que foi feita a primeira recolha dos dados o caracter f representa uma sequ ncia podendo valer O se os ficheiros foram di rios ou ser um caracter entre a e x quando os ficheiros forem gerados de hora a hora Por ltimo os caracteres yy s o os ltimos dois d gitos do ano corrente e igual a O se for um ficheiro de observa o ou igual a N se for um ficheiro de navega o Mais detalhes sobre o formato dos ficheiros RINEX vers o 3 00 podem ser encontrados em 9 2 2 Equipamento utilizado no projecto Para estabelecer a esta o de monitoriza o de GPS do Instituto de Telecomunica es foram usados dois receptores de GPS iguais ligados a duas antenas e um computador Neste subcap tulo feita uma descri o das caracter sticas mais importantes de cada um dos componentes usados no projecto S o tamb m referenciadas algumas mensagens enviadas pelos receptores e que foram utilizadas no trabalho Este subcap tulo termina com o esquema da interliga o entre os dispositivos da esta o de monitoriza o de GPS 2 2 1 Receptor GPS Os dois receptores GPS utilizados na esta o s o da empresa Magellan modelo AC12 A fun o dos receptores no trabalho permitir a recolha dos dados necess rios atrav s do envio de mensagens para o completo funcionamento da esta o O receptor AC12 processa sinais da constela o de sat lites GPS com o c
64. da com as correc es diferencias presentes na mensagem e Identificador do sat lite tem 5 bits e representa a identifica o do sat lite correspondendo ao seu PRN e PRC Pseudo Range Correction tem 16 bits e corresponde correc o diferencial que o utilizador dever aplicar no pseudo range do sat lite em quest o A unidade metros e um campo afectado pelo factor de escala definido anteriormente e RRC Range Rate Correction tem 8 bits e serve para o utilizador aplicar ao PRC juntamente com o campo modified Z count A necessidade deste campo deve se ao facto de a transmiss o das correc es diferenciais da esta o de refer ncia para os utilizadores n o ser instant nea O utilizador deve aplicar este par metro para ter em conta a diferen a de tempo entre a gera o das correc es diferencias e a sua aplica o A unidade metros segundo e tamb m afectado pelo factor de escala definido anteriormente e IODE Issue of Data Ephemeris tem 8 bits e um campo que est presente na mensagem de navega o enviada pelos receptores GPS Este par metro a garantia para o utilizador do servi o RTCM que as correc es diferenciais s o baseadas no mesmo conjunto de elementos orbitais e par metros do rel gio para os quais foram geradas na esta o de refer ncia Assim o utilizador apenas aplica as correc es diferencias se o IODE for igual Caso contr rio a precis o em vez de aumentar poderi
65. das aos dois receptores Estes por sua vez atrav s do protocolo RS 232 s o ligados ao computador Na Figura 2 7 est o representadas as liga es entre os dispositivos da esta o 2 Antenas 2 Receptores GPS GPS Computador Figura 2 7 Interliga o dos componentes A liga o entre os receptores GPS e o computador bidireccional A linha a vermelho corresponde ao envio de mensagens por parte do receptor e a linha azul representa o envio para o receptor de determinados comandos que permitem configurar ou receber informa o de alguns par metros caracter sticos do receptor em causa 2 3 Estado da Arte Neste subcap tulo feita uma apresenta o geral do estado da arte sendo abordado o equipamento actual o sistema Galileo a actualidade no sentido de aplica o do sistema GPS e a refer ncia a alguns trabalhos similares com o trabalho descrito no presente relat rio gt Equipamento actual Actualmente alguns dos receptores e antenas de GPS dispon veis no mercado s o mais evolu dos quando comparados com o equipamento utilizado no projecto De entre as caracter sticas mais relevantes destacam se e maior precis o os receptores mais evolu dos permitem atingir uma precis o maior significando isso que o erro na determina o da posi o menor e mais canais existem no mercado receptores com muitos canais por exemplo 75 permitindo a liga o a um n mero muito maior de sat lites e 11 1
66. das pelos receptores de GPS e cujos detalhes podem ser consultados nos Anexo e Anexo Para o utilizador fazer uso de algum dos programas precisa de criar uma fun o em linguagem de programa o C incluindo um ficheiro xxx h constitu do por diversas fun es O conjunto de caracteres xxx representa o nome associado ao ficheiro e que est associado ao conjunto de dados que se quer obter Como foi referido no ponto 3 3 e ao longo do m dulo Interface S rie a leitura de dados de segmentos de mem ria partilhada implica o uso de sem foros As fun es constru das permitem que o utilizador externo n o necessite de realizar nenhum interac o com os segmentos de mem ria e sem foros dado que essa interac o feita automaticamente por essas fun es Para al m do utilizador necessitar de incluir o ficheiro xxx h na fun o criada ter que ser invocada uma determinada fun o que tem dois argumentos Esta fun o est inclu da no ficheiro xxx n e tem o nome representado no conjunto de caracteres xxx O primeiro argumento da fun o permite seleccionar um dos dois receptores da esta o para o qual se quer obter os dados Com o valor O seleccionado o receptor ligado porta s rie O e com o valor 1 o receptor ligado porta s rie 1 O segundo argumento uma vari vel que ter que ter a estrutura do segmento de mem ria correspondente e onde ser o guardados os dados A 56 declara
67. dia Para al m de serem apresentados os ficheiros escrito na p gina o tempo referente sua cria o bem como o tamanho em bytes O utilizador ao seleccionar um ficheiro tem a op o de o abrir ou efectuar o respectivo download 66 3 7 Manual de instru es Para uma completa compreens o do trabalho desenvolvido fundamental acompanhar este relat rio com um manual de instru es O manual cont m os nomes e as respectivas directorias dos programas referidos ao longo do capitulo 3 Est escrito na forma de administrador dado que relaciona se com o software base desenvolvido contendo tamb m directorias onde est o localizados ficheiros importantes por exemplo o ficheiro de configura o do servidor web O manual de instru es encontra se no Anexo D permitindo a futuros utilizadores tirarem partido das funcionalidades e aplica es desenvolvidas Est dividido nos tr s m dulos descritos no presente capitulo de modo a facilitar a sua compreens o S o referenciados os comandos necess rios para introduzir na linha de comandos de modo a iniciar o respectivo programa bem como as respectivas directorias Com o intuito do trabalho ser o mais universal poss vel o manual de instru es est redigido em l ngua inglesa 67 4 Resultados e Testes 4 1 Introdu o Neste capitulo v o ser abordados os principais resultados obtidos com o projecto Ser o tamb m referidos alguns testes efectuados e algumas d
68. digo C A na frequ ncia L1 1575 42 MHz e sat lites SBAS Satellite Based Augmentation System Possui doze canais e a capacidade para serem configurados de modo a usar apenas sat lites da constela o GPS Tem duas portas s rie uma de input e output onde feita a comunica o principal com o receptor e outra porta que permite enviar mensagens no formato RTCM que permitem precis es de 1 5 metros na componente horizontal e 2 25 metros na componente vertical Numa situa o aut noma sem correc es as precis es s o de aproximadamente 5 metros na componente horizontal e 7 5 metros na vertical 8 Na Figura 2 4 est representado um dos receptores de GPS da esta o Figura 2 4 Receptor GPS da esta o do IT Existem dois modos poss veis de opera o O primeiro modo 3D por defini o o modo padr o Requer pelo menos a liga o a quatro sat lites para o c lculo de uma posi o inicial Latitude longitude altitude e tempo s o calculados O segundo modo 2D para o c lculo de uma posi o inicial precisa de pelo menos tr s sat lites Latitude longitude e tempo s o os par metros calculados neste modo A altitude uma vari vel constante Se o receptor for desligado os dados guardados na mem ria v o deixando de ser v lidos a medida que o tempo passa Num novo arranque o tempo necess rio para o c lculo de uma posi o inicial varia entre 10 segundos a 2 minutos dependendo do tempo total em que o
69. disso necess rio o instante actual na escala de tempo GPS recorrendo se por isso s mensagens PBN e UKO Para a leitura dos dados dos segmentos de mem ria das mensagens MCA PBN UKO o esquema o apresentado no ponto 3 3 Alguns dos dados adquiridos ser o necess rios noutros programas tais como o pseudo range e os segundos da semana na escala de tempo GPS que servem como tempo de refer ncia o pseudo range S o ent o guardados num segmento de mem ria partilhada n o esquema apresentado no ponto 3 3 mas com a estrutura usada tamb m para guardar as efem rides e referenciado no programa Dados de navega o Os sem foros para a 38 respectiva sincroniza o t m a mesma estrutura que foi usada para os sem foros associados aos segmentos de mem ria que guardam as efem rides O programa corre num ciclo de 1 segundo A estrutura do programa segue tamb m os passos representados na Figura 3 10 mas agora as mensagens usadas e os dados guardados s o os que foram referidos anteriormente No ficheiro RINEX de observa o os dados s o escrito num intervalo de 10 segundos Em cada poca necess rio como no ficheiro de navega o escrever um cabe alho com o tempo de refer ncia na escala de tempo GPS mas com o formato convencional de m s ano dia hora minutos e segundos Foi aplicado tamb m um algoritmo semelhante ao descrito no programa Dados de navega o O ciclo do pro
70. do o processamento realizado para calcular a posi o da antena Ao mesmo tempo que o c lculo da posi o da antena realizado verifica se que as correc es introduzidas no valor do pseudo range medido pelo receptor t m grande influ ncia no resultado obtido A correc es feitas dizem respeito ao erro do rel gio dos sat lites e ao atraso provocado pela propaga o do sinal na troposfera Se o erro do rel gio dos sat lites n o for aplicado o processo que iterativo nunca chega a atingir a precis o requerida de 1 mm Aplicando o erro do rel gio dos sat lites mas n o aplicando o erro provocado pela troposfera o resultado final ou seja a dist ncia entre a posi o calculada da antena e a posi o exacta tem um erro compreendido entre 30 a 35 metros Verifica se assim que essencial introduzir no algoritmo correc es que permitam anular alguns dos erros inerentes ao sistema GPS Relativamente s correc es diferenciais obtidas com o programa Gerar correc es diferenciais os resultados conseguidos n o permitiram melhorar o erro de 3 3 metros correspondente situa o aut noma Devido ao facto de as antenas estarem localizadas numa posi o pr xima os erros inerentes ao sistema GPS s o partida semelhantes entre uma antena e outra sendo expect vel que as correc es diferenciais melhorassem a precis o no c lculo da posi o da antena Apesar de n o serem os resultados mais eficientes o
71. dor da posi o da antena e obtido assim o tempo que o sinal demorou a chegar ao receptor e identificado pela vari vel t considerando que o sinal viaja velocidade da luz Com as vari veis t t poss vel encontrar uma primeira aproxima o para o instante de transmiss o do sinal t Na equa o 3 12 encontra se o c lculo descrito t_ t t 3 12 Com este novo instante necess rio refazer outra vez o c lculo da posi o do sat lite de modo a aproxim lo o mais poss vel do instante de transmiss o do sinal Ao mesmo tempo necess rio introduzir na posi o obtida uma correc o devido ao movimento da terra durante a transmiss o do sinal Esta correc o influenciada pelo tempo que o sinal demorou at chegar ao receptor e identificado pela vari vel t Para o c lculo da correc o necess rio o valor da constante 9 que representa a taxa de rota o da terra sistema WGS 84 apresentado na equa o 3 2 Com esta constante a vari vel t calculado o ngulo que representa ngulo em radianos que a terra rodou durante o tempo que o sinal viajou do sat lite at ao receptor O c lculo descrito est representado na equa o 3 13 A partir do ngulo 8 constru da um matriz para corrigir a posi o dos sat lites devido ao movimento de rota o da terra 9 xt 3 13 50 A matriz obtida est representada na equa o 3 14 e corresponde a efectuar uma rota
72. dos Uma solu o poss vel que podia melhorar os resultados da Figura 4 5 era a utiliza o de um filtro de Kalman Este filtro resulta de uma t cnica matem tica para combinar e suavizar uma sequ ncia de solu es de navega o com o objectivo de obter uma melhor estimativa real do valor considerado Esta solu o n o foi testada no algoritmo usado contudo deixa se aqui como uma poss vel solu o Os testes realizados concluiram se a an lise do resultado final obtido com processamento dos dois receptores Este resultado traduz as correc es diferenciais calculadas considerando o receptor ligado porta s rie O como refer ncia e o receptor ligado porta s rie 1 tamb m como refer ncia Para que as correc es diferenciais geradas fossem ideais a compara o dos dois conjuntos de dados teria de ter uma diferen a de zero metros Assim no programa Gerar correc es diferenciais o erro obtido no valor de UDRE seria zero Esta diferen a de zero metros apenas um valor ideal verificando se que na pr tica nunca 75 atingida esta precis o A efic cia das correc es diferenciais traduzida pela diferen a dos dois conjuntos de dados e quanto menor for essa diferen a melhor os resultados obtidos Foi assim realizada a aquisi o das correc es diferenciais obtidas com recurso aos dois receptores Foram consideradas 50 observa es verificando se um comportamento semelhante para as restantes
73. e melhorar e evoluir surgiu um subsistema do GPS designado por DGPS Por defini o este m todo usa uma posi o de refer ncia cuja localiza o bem conhecida Para o sistema DGPS estar operacional necess rio ter uma esta o com pelo menos um receptor GPS capaz de gerar correc es diferencias e essa esta o tem de estar numa posi o fixa O conceito te rico muito simples Dado que a esta o fixa a sua posi o conhecida pode ser calculada com grande precis o a dist ncia que separa cada um dos sat lites vis veis e a esta o de refer ncia O receptor de GPS calcula tamb m essa dist ncia segundo o que foi dito no ponto 2 1 2 designando se por pseudo range O nome deriva do facto dessa dist ncia n o ser a exacta por incluir erros pr prios do GPS Assim realizando uma subtrac o entre a dist ncia exacta e o pseudo range para cada um dos sat lites vis veis o resultado representa o erro do receptor na medi o da dist ncia a cada um dos sat lites Muitos desses erros s o comuns entre receptores diferentes desde que estejam a uma dist ncia n o muito elevada da esta o de refer ncia A esta o pode agora transmitir os erros para utilizadores que estejam localizados relativamente perto da esta o de refer ncia Esses erros s o aplicados nos receptores de GPS o que permite aumentar significativamente a precis o eliminando grande parte dos erros como por exemplo o erro das efem rides e ta
74. e 16 Figura 2 7 Interliga o dos 17 Figura 3 1 Arquitectura do sistema desenvolvido erre 19 Figura 3 2 Exemplo de partilha de dados atrav s de mem ria partilhada 21 Figura 3 3 Estrutura usada com os segmentos de memoria partilhada 22 Figura 3 4 Fluxograma com o uso dos sem foros na leitura e escrita de dados 24 Figura 3 5 Arquitectura do m dulo Interface S rie 26 Figura 3 6 Estrutura para a mensagem PBN 28 Figura 3 7 Ficheiro com a correspond ncia entre as antenas e a porta s rie 28 Figura 3 8 Ficheiro com a posi o exacta das duas antenas de 29 Figura 3 9 Ciclo do programa Interface com os receptores nsen nt 34 Figura 3 10 Ciclo do programa Dados de 37 Figura 3 11 Ciclo do programa Gerar correc es diferenciais nnee 49 Figura 3 12 Exemplo de uma fun o para aceder aos dados da mensagem PBN 58 Figura 3 13 Pagina principal da esta o de monitoriza o de GPS do 59 Figura 3 14 Formul
75. e GPS monitoring station a brief introduction to the work done With this manual the future users can easily interact with the features developed and adapt them according to their objectives It is essential that users also read the main points described in this thesis which addition to the manual provides the necessary information to take advantage of the features already developed The manual is divided into the three modules described in this thesis Serial Interface This section describes the commands needed to run from terminal the programs developed in the module Serial Interface All the files and functions developed are stored in the corresponding folder If the future user changes any function in a program it is essential run in terminal the command make to compile all data 1 Create and Initialize program responsible for creating and initializing some important parameters for the other programs such as semaphores shared memory segments and error files run Desktop it ac12 Create_Initialize start argv a argv dev ttySO i dev ttyS1 iii Antenna 2 Antenna the program s objective is to allow the administrator of the station to change some parameters related with GPS antennas To run Desktop it ac 12 Antenna user config 3 Channel Data send to receiver the message with ID GSA To run Desktop it ac 12 Channel_Data Channel argv a argv i 1 receiver connected to serial por
76. e com os sistemas GPS e GLONASS O sistema tera como objectivos ter em rbita 30 sat lites e em 2014 disponibilizar aos utilizadores do sistema tr s dos cinco servi os finais 12 gt Actualidade Durante todos os anos de desenvolvimento do GPS in meras aplica es foram desenvolvidas sendo hoje uma tecnologia de refer ncia em muitos mercados O GPS est hoje inserido em muitos dos itens que diariamente s o usados pela popula o mundial Pode ser encontrado em telefones pessoais nos autom veis em sistemas militares na agricultura e em muitas outras aplica es usado tamb m na monitoriza o do movimento migrat rio de alguns animais gt Trabalhos similares Existem actualmente na Internet diversas p ginas que permitem o acesso por exemplo a ficheiros no formato RINEX uma das funcionalidades desenvolvidas no projecto Algumas das esta es possuem equipamento mais avan ado possibilitando a aquisi o de dados na frequ ncia L2 e tamb m dados de sat lites pertencentes ao sistema de navega o russo GLONASS 3 Descri o do Sistema 3 1 Introdu o Neste cap tulo feita uma descri o detalhada do software desenvolvido para a implementa o da esta o de monitoriza o de GPS do IT bem como a justifica o das op es tomadas O software desenvolvido pode ser considerado em tr s m dulos distintos O primeiro m dulo Interface S rie permite a comunica o com os receptores de GPS be
77. e considerado O nome do ficheiro bem como outros dados relacionados com o tempo s o guardados num segmento de mem ria partilhada criado para a escrita de ficheiros RINEX e que ser usado num outro programa guardada numa vari vel a informa o se a poca mudou e entenda se poca como um per odo de tempo de 1 hora e que come a na hora certa por exemplo come a s 17 00 horas e ir at s 17 59 horas 36 Inicio do ciclo com 1 segundo Obten o do nome do ficheiro Rinex Verifica se a poca mudou Leitura dos dados do Inicio do programa segmento de mem ria da respons vel pela escrita mensagem SNV do ficheiro Rinex Guardar os dados nos segmentos criados para as efem rides Escrita das efem rides num ficheiro no formato Rinex Figura 3 10 Ciclo do programa Dados de navega o O pr ximo passo a verifica o se estamos numa nova poca ou n o Se tal acontecer iniciado um processo que respons vel pela escrita do ficheiro RINEX de navega o para a poca em causa Este processo ser referido no final deste ponto Independentemente da poca ter mudado ou n o o passo seguinte realizar a leitura das efem rides que est o no segmento de mem ria partilhada gerado no processo Interface com os receptores Antes da leitura e respectiva escrita necess rio verificar algumas condi es A primeira tem a ver com o facto de o envio da mensagem SNV por parte do receptor n
78. e desenvolvido nesta interface foi a disponibiliza o da Figura 4 3 juntamente com uma tabela onde os dados se encontram mais detalhados poss vel para utilizador autorizado visualizar a posi o dos sat lites em linha de vista com cada uma das duas antenas da esta o do IT Os dados s o actualizados de 4 em 4 minutos Poderia ter se diminu do este tempo mas tal n o se verificou essencial dado que a varia o da posi o dos sat lites num intervalo de 4 minutos n o significativa em termos de visualiza o A disponibilza o de dados importantes num formato padr o conhecido como RINEX possibilita o download de determinados par metros obtidos com os receptores sem ser necess rio aos utilizadores conhecerem o formato especifico usado nos receptores A organiza o dos ficheiros segundo v rias directorias d a oportunidade ao utilizador de facilmente adquirir dados num determinado m s em particular ou mais especificamente num determinado dia 78 5 Conclus es e Desenvolvimentos Futuros 5 1 Conclus es O GPS hoje um sistema em pleno funcionamento e com m ltiplas aplica es O objectivo do presente trabalho traduziu se na implementa o e desenvolvimento de uma esta o de monitoriza o de GPS incidindo fundamentalmente na interac o com dois receptores de GPS processamento de dados e disponibiliza o dos mesmos Inicialmente feita uma caracteriza o de conceitos essenciais relacion
79. ecto sendo as restantes referidas ao longo do relat rio De seguida feita uma descri o individual e detalhada dos tr s m dulos referidos nos pontos 3 1 e 3 2 e que constituem a totalidade do software desenvolvido para implementar a esta o de monitoriza o de GPS 3 4 Interface S rie O m dulo Interface S rie corresponde ao m dulo principal da esta o a partir deste m dulo que efectuada toda a comunica o com os receptores de GPS processamento dos dados e disponibiliza o dos mesmos sobre determinados formatos Como foi referido no ponto 3 3 a maneira mais correcta de implementar grandes quantidades de c digo que implicam v rias fun es com v rios objectivos fazer uma divis o em m ltiplos processos cada um com a sua fun o A esta o de monitoriza o de GPS do IT usa dois receptores de GPS Um dos argumentos de inicia o dos processos que comp e o m dulo Interface S rie qual dos receptores se quer usar Isto permite diferenciar os dois receptores por completo sendo executados processos independentes para cada um dos receptores presentes na esta o Na Figura 3 5 est representada a arquitectura do m dulo Interface S rie constitu da por m ltiplos programas minimizando assim a complexidade do programa global No ponto 3 7 Manual de Instru es podem ser encontradas as directorias de todos os programas desenvolvidos nesta interface 25
80. elacionado com o programa Antena Permite criar e inicializar dois sem foros para sincronizar a leitura e escrita em dois ficheiros Mais detalhes ser o referidos no ponto 3 4 2 Os dois primeiros argumentos dev tySO dev ttyS1 permitem criar e inicializar sem foros e segmentos de mem ria partilhada o receptor de GPS ligado porta O e ligado porta 1 respectivamente Como exemplo para serem criados e inicializados os sem foros e segmentos de mem ria do receptor ligado a porta 0 teria de ser introduzido na linha de comandos e Desktop it ac12 Create_Initialize start dev ttySO Os sem foros e os segmentos de mem ria criados est o associados a algumas das mensagens referidas nos pontos 2 1 5 e 2 2 1 e cujo identificador e GGA GSV UKO ALM PBN SNV e MCA Para cada uma das mensagens existe uma estrutura de mem ria partilhada e sem foros como a descrita no ponto 3 3 Os segmentos de mem ria bem como os sem foros associados s o diferentes para cada um dos receptores existindo por isso para cada mensagem com os 27 identificadores descritos atr s duas estruturas que foi apresentada no ponto 3 3 cada um dos segmentos de mem ria est associada uma estrutura que est dividida em v rios campos correspondentes aos dados da mensagem em causa Na Figura 3 6 como exemplo est a estrutura para a mensagem com identificador PBN O primeiro campo da estrutura vari vel ndex c
81. em foros associados aos ficheiros apresentados semelhante referida no ponto 3 3 excep o do terceiro membro do sem foro que para este caso n o necess rio Assim o sem foro tem tr s membros no total sendo o terceiro membro usado quando o sem foro criado e fechado o segundo membro o numero de processos que est o a usar o sem foro e o primeiro membro o verdadeiro vermelho e verde para sincronizar a leitura e escrita de dados nos ficheiros O funcionamento global dos tr s membros tem como base o que foi j referido no ponto 3 4 3 Envio de mensagens para os receptores de GPS O objectivo prim rio do trabalho era desenvolver uma esta o que fizesse o processamento de dados de GPS e a sua respectiva disponibiliza o Verificou se que seria importante permitir a configura o e informa o de alguns par metros caracter sticos dos receptores O c rculo com contorno a preto na Figura 3 5 representa m ltiplos processos que permitem enviar mensagens para os receptores de GPS da esta o e que s o descritos neste ponto No manual do receptor de GPS 8 existem muitas mensagens poss veis de serem enviadas Para o trabalho foram definidas algumas dessas mensagens As mensagens usadas no trabalho podem ser divididas em dois tipos O primeiro tipo cont m mensagens que possibilitam a modifica o de alguns par metros pr prios dos receptores tais como 29 seleccionar sist
82. em ria partilhada da mensagem SNV Contudo este segmento de mem ria cont m apenas a ltima mensagem recebida ou seja existiria apenas a informa o de um sat lite sendo assim poss vel calcular a posi o apenas para um sat lite num dado instante de tempo Como foi descrito no programa Dados de navega o este guarda todas as efem rides recebidas num segmento de mem ria partilhada Assim o programa Posi o dos sat lites usa o segmento de mem ria que cont m todas as efem rides de todos os sat lites j recebidos Devido ao facto de a posi o dos sat lites ser necess ria para o programa Azimute e eleva o esta posi o guardada num segmento de mem ria partilhada O esquema criado para estes segmentos bem como a sincroniza o com sem foros segue o que foi descrito no ponto 3 3 Como foi referido no ponto 3 3 cada segmento tem duas estruturas iguais uma para escrever dados a outra para leitura dos dados No segmento de mem ria partilhada que guarda 40 a posi o dos sat lites cada uma dessas estruturas cont m os campos necess rios para guardar no m ximo a informa o de 32 sat lites A posi o calculada tamb m escrita num ficheiro segundo o formato e 201003 02 14 51 30 Posi o do sat lite determinada usando Antena Sul 913 13750107 608 5597890 060 21890911 144 Na primeira linha est tempo de refer ncia o qual foi realizada a escrita no ficheiro da posi
83. ema de coordenadas esta mensagem permite alterar o sistema de coordenadas usado pelo receptor no c lculo da posi o O sistema por omiss o WGS 84 estando dispon veis muitos outros sistemas de coordenadas inicializa o a mensagem inicializa o tem como par metros o ritmo bin rio da porta A e B do receptor e tamb m tr s op es para o reset da mem ria interna Uma das op es dispon veis reiniciar por completo a mem ria do receptor apagando as efem rides e o almanac modo de navega o como referido no ponto 2 2 1 o receptor AC12 tem dois modos poss veis de navega o Esta mensagem permite seleccionar qual dos modos 2D ou 3D a usar O modo por omiss o 3D reiniciar receptor esta mensagem tem como objectivo colocar todos os par metros e caracter sticas do receptor nos valores por omiss o salvar par metros se um determinado par metro for alterado e se o administrador da esta o quiser que essa informa o fique guardada na mem ria necess rio enviar mensagem para guardar o novo valor m scara de eleva o a mensagem permite alterar o ngulo para a m scara de eleva o Os sat lites que tenham uma eleva o inferior m scara de eleva o definida n o s o usados pelo receptor para o c lculo da posi o O seu valor tem que estar definido entre O e 90 graus estando o valor por omiss o situado em 5 graus recep o SBAS com esta mensagem poss vel activar ou desactivar a recep
84. ema de refer ncia local com origem na antena considerada SatUser respectivo c lculo apresentado na equa o 3 8 A vari vel SatUser corresponde a um vector coluna com tr s elementos x SatUser Rot Rot 3 8 lt A vari vel SatUser constitu da pelas componentes 2 representando o vector que une a antena ao sat lite num sistema de coordenadas local agora necess rio calcular o vector unit rio Este tem tr s componentes segundo tr s direc es east north e zenith representadas na equa o 3 9 x east Vt Yt z north 3 9 Z Z zenith 2 2 2 Xt Vt z Com as tr s componentes obtidas na equa o 3 9 agora simples calcular o azimute e eleva o para o sat lite correspondente O ngulo do vector unit rio em rela o direc o zenith somado com a eleva o que se quer obter igual a 90 graus Assim a partir da equa o 3 10 obtida a eleva o da antena em graus em rela o ao sat lite em causa zenith x 180 0 90 3 10 el T 44 Com as componentes east e north obtido o valor do azimute tamb m em graus A equa o 3 11 representa esse processamento east north x 180 3 11 Mais detalhes sobre o algoritmo usado podem ser consultados em 17 Os resultados obtidos com o programa s o guardados num ficheiro de acordo com o form
85. es autorizados administrador e geral restringindo o acesso aos dados principalmente a interac o com os receptores de GPS da esta o Uma das mais valias conseguidas com esta interface a possibilidade do administrador em qualquer parte do globo interagir com os dois receptores da esta o enviando para este determinadas mensagens Foi enviado para os dois receptores cada uma das mensagens pertencentes ao primeiro tipo tendo se obtido os resultados esperados Para confirmar os resultados foi utilizada a mensagem com identificador PAR que permitiu verificar se os par metros definidos pelo administrador na mensagem do primeiro tipo tinham sido alterados Nas mensagens do segundo tipo que implicam uma resposta por parte do receptor verificou se a exist ncia de um problema na situa o da mensagem com identificador PAR Como referido no ponto 2 2 1 o formato da mensagem completamente diferente das restantes n o 77 possuindo qualquer cabe alho de inicio terminador Nas situa es em que se verifica uma dessincroniza o no envio de mensagens por parte do receptor se esta mensagem for a ltima acontece que ficar partida ao meio Dado que n o existe nenhuma refer ncia para inicio nem fim da mensagem os dados ficam incompletos sendo visualizada na interface web uma mensagem que indica a falta de dados Nesta situa o o administrador ter de reenviar a mensagem novamente Um outro aspecto important
86. fi INSTITUTO SUPERIOR T CNICO GPS MONITORING STATION Implementa o e Desenvolvimento da Esta o de Monitoriza o de GPS do Instituto de Telecomunica es Pedro Miguel Valente da Silva Gon alves Disserta o para obten o do Grau de Mestre em Engenharia Electrot cnica e de Computadores J ri Presidente Professor Jos Manuel Bioucas Dias Orientador Professor Jos Eduardo Charters Ribeiro da Cunha Sanguino Co orientador Professor Ant nio Jos Castelo Branco Rodrigues Vogal Professor Francisco Ant nio Bucho Cercas Julho de 2010 Agradecimentos Utilizo este espa o para agradecer a todas as pessoas que de uma forma directa ou indirecta me ajudaram a chegar at aqui e que me possibilitaram ultrapassar os desafios durante o desenvolvimento deste projecto tanto a n vel pessoal como a n vel acad mico Come o por agradecer aos orientadores Professor Jos Sanguino e Professor Ant nio Rodrigues pela oportunidade de desenvolver este projecto com uma elevada componente pr tica O seu conhecimento disponibilidade e o grande profissionalismo foram essenciais para a realiza o do trabalho Funda o para a Ci ncia e Tecnologia por financiar o projecto atrav s de uma Bolsa de inicia o Investiga o Cientifica Ao Instituto de Telecomunica es pela disponibiliza o do espa o e das condi es para o desenvolvimento do trabalho Por ltimo um agradecimento especial minha
87. grama infinito terminando com o envio do sinal SIGINT O programa ao receber este sinal antes de sair fecha os segmentos de mem ria sem foros e ficheiros e Ficheiros Rinex Um dos objectivos importantes do trabalho disponibilizar ficheiros no formato RINEX Os dois programas referidos anteriormente come am por escrever os dados num ficheiro segundo o formato RINEX e cujos detalhes podem ser consultados em 9 O programa Ficheiros Rinex n o iniciado como os restantes programas Este programa iniciado nos programas descritos atr s quando a poca muda Se por exemplo um ficheiro RINEX for criado s 17 00 horas significa que cont m dados que foram adquiridos entre as 16 00 horas e as 16 59 horas Em ambos os programas referenciados atr s criado um segmento de mem ria partilhada que cont m dados necess rios relacionados com a poca em causa para a escrita do cabe alho dos ficheiros RINEX bem como a informa o do nome do respectivo ficheiro que depende do instante de tempo em que foi escrito o primeiro conjunto de dados no ficheiro O programa Ficheiros Rinex tem dois argumentos de entrada O primeiro permite identificar a qual dos dois receptores correspondem os dados escritos no ficheiro e o segundo par metro um identificador do tipo de ficheiro RINEX que vai ser criado ou o ficheiro de observa o ou de navega o Um dos campos no cabe alho do ficheiro RINEX de observa o a
88. gundos Em cada poca s o registados os dados referidos anteriormente para cada um dos sat lites e Posi o dos sat lites azimute e eleva o Com o programa Posi o dos sat lites descrito no ponto 3 4 6 os utilizadores da esta o t m acesso posi o dos sat lites da constela o de GPS na forma de coordenadas cartesianas Os dados est o dispon veis num ficheiro e tamb m num segmento de mem ria partilhada Nos resultados do programa obt m se tamb m a posi o de sat lites que n o est o em linha de vista com as antenas de GPS da esta o Este facto devido s efem rides terem um determinado tempo de validade superior a uma hora e por estarem guardadas em segmentos de mem ria est o dispon veis no programa para o c lculo da posi o do respectivo sat lite No programa Azimute e eleva o calculado para cada sat lite considerado no programa anterior o azimute e eleva o com casas decimais conseguindo se uma maior precis o relativamente aos dados enviados pelo receptor Os resultados obtidos permitem validar alguns algoritmos e p s processamento A mensagem enviada pelo receptor com identificador GSV inclui o azimute e eleva o dos sat lites em linha de vista com a antena de GPS Comparando os valores calculados com aqueles que s o enviados pelo receptor verificou se eram bastante pr ximos cent metros Esta conclus o permite validar a descodifica o das efem rides enviadas pe
89. idade de efectuar o download de ficheiros com informa o especifica est assim dispon vel em qualquer lugar do globo O trabalho resultante serve como um ponto de partida no desenvolvimento de uma esta o de monitoriza o de GPS tendo sido desenvolvidas algumas funcionalidades Palavras chave GPS Esta o de monitoriza o Receptor Interface Abstract The global positioning system is now inserted in various areas and applications enabling the generation of various results The aim of this work is the implementation and development of a GPS monitoring station using for it two antennas and two GPS receivers and a computer Initially it is described the essentials concepts of GPS to the understanding of this work Then it is done the characterization of the equipment present in station and also referred their most important features The communication between the computer and the two GPS receivers is achieved using software development and also performed the processing of acquired data To future projects it was developed an objective and simple interface that allows future users of the station to acquire the data already processed The final step in the implementation of the station is to develop a web interface Access through the Internet is universal and intuitive which is restricted to authorized users The setting of parameters of the receivers the viewing of certain data and the possibility to download file
90. ido e enviado pelo receptor dos pseudo range Prange dos v rios sat lites obtido assim o valor do pseudo range corrigido representado pela vari vel Prange equa o 3 22 Esta correc o permite assim anular alguns dos erros descritos no ponto 2 1 2 Prange Prange Clk tropo 3 22 Com o estimador da posi o da antena a posi o dos sat lites e o pseudo range corrigido aplicado o m todo matem tico LS Least Squares que permite gerar uma nova estimativa para a posi o da antena em coordenadas cartesianas e uma quarta vari vel que corresponde ao erro no rel gio do receptor O m todo matem tico LS come a por considerar uma matriz que tem em conta a posi o do sat lite no instante de transmiss o vari vel sat referida na equa o 3 15 a estimativa para a posi o da antena identificada pela vari vel e a dist ncia que separa estes dois pontos vari vel range Na equa o 3 23 est representada a matriz resultante identificada pela vari vel A matriz tem um n mero de linhas igual ao n mero de sat lites considerado no inicio do algoritmo Em cada uma das linhas da matriz s o usadas as coordenadas x y e z do sat lite em causa bem como as coordenadas da estimativa para a posi o da antena sat USC yx sat USET sm Sat USEF otz 1 A range range range 3 23 Com as vari veis range e Prange obtida a matriz L Esta matriz representa um vector co
91. igura 2 1 As rbitas t m uma forma el ptica com um per odo orbital de 12 horas e uma inclina o em rela o ao equador de 55 Com esta geometria garante se que pelo menos 4 sat lites s o vis veis em qualquer ponto do globo sendo este o n mero de sat lites m nimo necess rio para fornecer uma solu o de posi o Se o ngulo de eleva o for de 10 numero m ximo de sat lites vis veis 10 2 Figura 2 1 rbita dos sat lites da constela o de GPS O movimento dos sat lites provoca o que se designa por efeito de Doppler Representa um desvio na frequ ncia de 5 kHz o que obriga o receptor de GPS a fazer uma varrimento de frequ ncias Para minimizar o varrimento o receptor usa a informa o dispon vel no almanac O almanac fornece informa o sobre as rbitas de todos os sat lites activos e pode ser usado para prever qual o desvio de frequ ncia provocado pelo efeito de Doppler e Segmentos do sistema O sistema GPS est dividido em tr s segmentos segmento espacial segmento de controlo e o segmento dos utilizadores A sua representa o est esquematizada na Figura 2 2 Segmento ey espacial Segmento do Segmento de utilizador controlo hg Figura 2 2 Segmentos do sistema GPS O segmento espacial composto pela constela o de sat lites Cada um dos sat lites transmite um sinal a partir do qual os utilizadores realizam medi es de dist ncia Este
92. interfer ncia multi percurso e o n mero de sat lites em linha de vista com as duas antenas ser maior quando comparado com uma localiza o das antenas a uma altura inferior 5 2 Perspectivas de trabalho futuro Para al m dos resultados conseguidos com o projecto a plataforma destina se tamb m a futuros desenvolvimentos que poder o complementar e acrescentar funcionalidades esta o de monitoriza o Ao n vel da interface web poder o ser aproveitados alguns dos dados j constru dos e ap s algum tipo de processamento disponibiliz los no portal O desenvolvimento 80 dos programas para possibilitar a futuros utilizadores a recolha de dados enquadra se inteiramente nas perspectivas de trabalhos futuros O utilizador apenas tem de possuir conhecimentos b sicos em linguagem de programa o C e a partir da tem sua disposi o diversos dados Com estes dados poderiam ser desenvolvidos diversos resultados tais como e aplica o de algoritmos relacionados com GPS com dados reais e estudo da varia o da posi o da antena calculada pelo receptor e poss veis rela es com alguns par metros tais como o erro do rel gio dos receptores e representa o gr fica com a evolu o ao longo do tempo das vari veis ligadas ao efeito da geometria dos sat lites DOP na precis o obtida e constru o de uma mapa mundo com a posi o de todos os sat lites da constela o de GPS actualizado periodicamente
93. ispon veis 49 e C lculo da posi o da antena O c lculo da posi o da antena em causa implica um algoritmo complexo obtendo se o resultado final por itera es usualmente tr s Na primeira itera o necess rio usar uma estimativa para a posi o da antena e dado que a primeira itera o a estimativa utilizada o centro da Terra Com este estimador calculada a posi o de cada um dos sat lites no instante em que foi transmitido por este o sinal para o receptor necess rio utilizar as posi es dos sat lites no instante de transmiss o visto que o pseudo range referido anteriormente medido pelo receptor como a dist ncia entre este e o sat lite no instante em que foi transmitido o sinal A vari vel t referida na equa o 3 12 representa os segundo da semana na escala de tempo GPS em que o sinal com os pseudo range chegou ao receptor Sendo um valor medido pelo receptor incorpora por isso o erro do rel gio associado O algoritmo para o c lculo da posi o dos sat lites tamb m iterativo terminando quando for atingida uma determinada precis o nos resultados neste caso 1 mm O processo come a por usar instante de tempo identificado pela vari vel t Uma primeira aproxima o da posi o dos sat lites calculada recorrendo ao algoritmo descrito no ponto 3 4 6 no programa Posi o dos sat lites Com esta primeira aproxima o calculada a dist ncia entre o sat lite e o estima
94. it GPUKO download 8 MCA message access to data of message with ID MCA To change directory cd Desktop it MCA download 9 PBN message access to shared memory segment with data of message with ID PBN To change directory cd Desktop it PBN download 10 SNV message acesso to data of message with ID SNV To change directory cd Desktop it SNV download Web Interface In this section is described the commands and directories related with the web interface 1 Adress of web page hitp www satlab it pt then the users need to choose the link for GPS 2 Start HTTP server the administrator can run or stop the server from terminal with a to run type usrlocal apacheZ bin apachecil k start to stop type usr local apache2 bin apachectl k stop 3 Root directory usr local apache2 htdocs 4 Configuration file usr ocal apache2 cont httpd conf 98 Change permissions is essential that the administrator changes the permissions of the programs developed in the module Serial Interface that lets the web page run executables developed in c language Form terminal type yhe commands a change the owner chown root root program name b change the permissions chmod a rwx program name Files required to receivers usr local apache2 htdocs site upload File Rinex files usr local apache2 htdocs Rinex File with data about authorized users usr local apache2 htdocs includes File with informations about login logout
95. itos Assim para a sincroniza o entre este programa e o m dulo Interface Web foi criado um sem foro com tr s membros cujo funcionamento no 47 programa semelhante ao sem foro utilizado para sincronizar o ficheiro criado no programa Dados dos sat lites Ap s o Matlab terminar a sua ac o necess rio disponibilizar na Interface Web a figura gerada bem como o ficheiro com os dados detalhados Antes desta disponibiliza o verificado o valor do sem foro referido anteriormente Se o sem foro estiver verde colocado a vermelho e os dados ficam dispon veis na Interface Web No final colocado novamente a verde Durante este per odo de tempo se um utilizador tentar aceder aos dados na Interface Web ter de esperar que o sem foro volte a estar verde Este per odo de tempo muito pequeno n o notando o utilizador do p gina web que existe algum tipo de sincroniza o O ciclo do programa termina com o comando Ctrl c O programa ao receber este sinal antes de sair fecha os sem foros e ficheiros 3 4 8 Programa Gerar correc es diferenciais O objectivo deste programa a obten o de correc es diferencias como ponto de partida para a implementa o de uma plataforma na esta o de monitoriza o de GPS do IT que disponibilize essas correc es para outros receptores de GPS na rea circundante ao IST melhorando assim a sua precis o Este programa corre a
96. llite positions To run MATHWORKS_R2009B bin PlotMatlab argv a argv dev ttySO ii dev ttyS1 Monitoring Matlab program used to control the operation of Matlab 96 To run Desktop it ac 12 Monitoring Matlab monitoring 21 DGPS the program s objective is to compute differential corrections To run Desktop it ac12 User_Position compute dev ttySO Some of the programs described above can be launched from an executable in C language that puts the processes running in background The programs running in background are related with the operation of Web Interface 1 Run programs the executable is located in directory home it Desktop it ac12 The function has the name Daemon c To run the program type Run When the administrator type this command several processes begin running in background The programs running in background are e AC12 Interface with two arguments dev ttySO and dev ttyS1 e Navigation Data with two arguments dev ttySO and dev ttyS1 e Observation Data with two arguments dev ttySO and dev ttyS1 e Satellite Data with two arguments dev ttySO and dev ttyS1 2 Stop programs to stop all the programs described above is necessary send to respective program the SIGINT signal First the user needs to obtain the process identifier To make this the user must type ps e grep executable name This command return the process identifier With that the user must type the command kill s SI
97. lo receptor o algoritmo usado no c lculo da posi o dos sat lites e o algoritmo utilizado na estimativa da eleva o e azimute dos sat lites e Figura com a posi o dos sat lites O programa Figura com a posi o dos sat lites permite aos utilizadores da esta o visualizar a posi o dos sat lites vis veis s duas antena de GPS actualizada de 4 em 4 minutos Esta posi o traduzida em termos de azimute e eleva o em graus O programa foi testado durante v rios dias sem nenhuma interrup o Ao fim de cinco dias ocorreu um erro no Matlab a partir do qual n o se verificou qualquer anomalia na programa o efectuada Devido ao facto da suspeita recair num erro dentro do pr prio Matlab foi necess rio desenvolver um processo que monitorize o funcionamento deste programa No processo implementado foi utilizado um sem foro para sincronizar a leitura e escrita num segmento de mem ria partilhada Este segmento apenas uma vari vel em que o seu valor indica ao processo de monitoriza o se o Matlab est a correr ou n o Se esta vari vel indicar que o Matlab est em funcionamento o processo de monitoriza o espera um determinado tempo que dependente do tempo m dio que demora a obten o da figura Ao fim desse tempo o processo que monitoriza o Matlab l o valor que est no segmento de mem ria partilhada Se esse valor for o mesmo significa que ocorreu alguma anomalia dentro do Matlab Nessa 71
98. lor atrav s da velocidade da luz no v cuo convertido para segundos e aplicado vari vel t referida na equa o 3 12 sempre que uma nova itera o iniciada Assim tem se em conta tamb m o erro do rel gio do receptor no algoritmo utilizado Com a nova estimativa para a posi o da antena todo o processo aplicado desde o inicio come ando no c lculo da posi o dos sat lites mas agora com uma nova estimativa para a posi o da antena O processo termina quando a dist ncia entre a estimativa da posi o da antena anterior e a actual atinge uma determinada precis o igual a 1 mm Nesta altura tem se uma estimativa final para a posi o da antena em causa e o erro no rel gio do receptor e C lculo das correc es diferenciais Recorrendo aos ficheiros descritos no ponto 3 4 2 obt m se a posi o exacta da antena utilizada pelo receptor ligado porta s rie 0 Neste ponto todos os dados necess rios obten o das correc es diferenciais est o calculados ent o calculada a dist ncia entre cada um dos sat lites e a antena recorrendo posi o exacta Esta dist ncia aquela que corresponde ao valor mais correcto poss vel sendo subtra da ao pseudo range enviado pelo receptor e que cont m erros A diferen a entre as duas dist ncias representa o erro introduzido 54 na medi o do pseudo range que foram referidos no ponto 2 1 2 necess rio nesta altura ter em co
99. luna com o mesmo n mero de linhas que a matriz A Cada um dos elementos da matriz representa a diferen a entre o resto da divis o entre a vari vel range e a velocidade da luz no v cuo e a vari vel 53 Nesta altura todos os par metros necess rios aplica o do m todo matem tico LS est o calculados Na equa o 3 24 est representado o c lculo realizado para obter a vari vel dR 3 24 A vari vel dR representa uma matriz coluna com quatro elementos O primeiro dR representa a correc o em metros para a componente x da estimativa para a posi o da antena user sex O segundo e terceiro elemento dR e dR representam respectivamente correc o da componente z da vari vel user s Com estes tr s novos elementos obtida uma nova estimativa para a posi o da antena O c lculo realizado est apresentado na equa o 3 25 user user dR USET AR 3 25 user USET y dR A vari vel representa uma nova estimativa da posi o para a antena nas tr s coordenadas x y e z Todas as tr s componentes t m as suas unidades calculadas em metros Esta nova posi o utilizada no inicio da pr xima itera o visto ser a ultima estimativa e portanto mais correcta para a posi o da antena O quarto elemento da vari vel dR O valor para a estimativa do erro do rel gio do receptor em metros Este va
100. m nico processo a complexidade do programa seria extrema e a resolu o de eventuais problemas no c digo seria muito mais complicada A maneira mais f cil e correcta ao mesmo tempo de desenvolver um software com complexidade elevada e com grandes quantidades de c digo construir v rios processos cada um com uma fun o espec fica e bem delineada Esta foi a solu o implementada no desenvolvimento da esta o de monitoriza o de GPS Quando no sistema operativo existem m ltiplos processos que querem comunicar entre si necess rio ter em conta certos detalhes Existem algumas maneiras de realizar aquilo que se designa por IPC que em portugu s se traduz para Comunica o entre Processos Algumas das formas de IPC s o pipes FIFOs First In First Out e message queues Um dos problemas destas formas que se dois processos estiverem a trocar informa o a informa o tem que passar pelo sistema operativo sendo necess rio um maior n mero de c pias entre os dados requerendo um maior tempo de processamento 14 A forma de IPC usada no projecto e que permite passar ao lado do problema descrito antes com recurso a mem ria partilhada Basicamente esta forma resume se a partilhar entre os v rios processos um segmento de mem ria onde est o alocados alguns conjuntos de dados 20 Na Figura 3 2 est representado um exemplo de partilha de dados com recurso a um segmento de mem ria partilhada O pr
101. m como o processamento dos dados adquiridos O segundo m dulo Interface user friendly tem o objectivo de ser til em trabalhos futuros permitindo a utilizadores da esta o o acesso a dados GPS mas sem ser necess rio uma interface directa com os receptores O terceiro m dulo Interface Web resulta da transforma o dos resultados obtidos com o primeiro m dulo num formato intuitivo e global conseguido atrav s de uma interface web 3 2 Arquitectura do Sistema Os tr s m dulos descritos no ponto 3 1 foram desenvolvidos no computador referenciado no subcap tulo 2 2 3 Na Figura 3 1 est representada a arquitectura do sistema desenvolvido necess rio para cumprir os objectivos do projecto Interface Interface user friendly S rio Interface Web Figura 3 1 Arquitectura do sistema desenvolvido Os dois quadrados e o c rculo representados na Figura 3 1 representam o conjunto de software desenvolvido no projecto A comunica o entre o m dulo Interface S rie e Interface user friendly efectuada apenas num sentido A liga o a preto caracteriza a transfer ncia de dados gerados no m dulo Interface S rie para o m dulo Interface user friendly Isto permite a utilizadores da esta o a aquisi o de dados GPS sem ser necess rio uma comunica o directa com os receptores GPS O quadrado a verde representa a Interface Web que comunica com o m dulo Interface S rie A comunica o entre os d
102. mas horas de processamento Na Figura 4 2 est apresentado uma parte do ficheiro RINEX de observa o 3 00 o RINEX VERSION GPS COMMENT ITRINEXO ISTIT 20100309 190000 UTC PGM RUN BY DATE 12 MARKER LEZ MARKER NUMBER ISTIT OBSERVER AGENCY 111050 12 SENSOR REC f TYPE VERS 531L1 NovAtel ANT TYPE 4918533 3200 791212 S720 3969758 4510 APPROX POSITION XYZ 0 0000 0 0000 0 0000 ANTENNA DELTA H E N G 5 cic Lic DIC sic xo SYS OBS TYPES C Pseudorange L Phase D Doppler S S N X Receiver Channel COMMENT 1 11 C C code based COMMENT C meters L full cycles D Hz COMMENT DBHZ SIGNAL STRENGTH UNIT S N given in dbHz COMMENT 10 000 INTERVAL 2010 os os 18 oo 11 0000000 GPS TIME OF FIRST OBS 2010 os 18 59 53 0000000 GPS TIME OF LAST OBS 11 OF SATELLITES G02 23 13 23 23 13 PRN OF OBS cos 336 336 336 336 336 PRN f OF OBS cos 353 353 353 353 353 PRN OF OBS cos 357 357 357 357 357 5 G10 359 359 359 359 359 PRN OF OBS G15 347 347 347 347 347 PRN OF OBS G18 256 256 256 256 256 PRN OF OBS G21 350 350 350 350 350 PRN OF OBS G24 341 341 341 341 341 PRN OF OBS G27 344 344 344 344 344 PRN OF OBS G28 359 359 359 359 359 PRN OF OBS END OF HEADER gt 2010 03 09 18 00 11 0000000 10 G28 22198159 468 108665818 059 351 786 54 000 11 000 G10 21755926 625 91228702 876 2744 002 55 000 10 000 G02 24961868 257 146406658 903 3336 088 40 000 9 000
103. mb m o erro no rel gio dos sat lites Existem dois tipos de correc es diferenciais em tempo real O primeiro baseado nas correc es do pseudo range conseguindo se uma precis o entre 1 a 3 metros O segundo tipo de correc o usa medi es da fase da portadora sendo designado por correc o RTK Real Time Kinematic conseguindo uma precis o de cent metros 3 2 1 4 Radio Technical Commission For Maritime Services RTCM RTCM uma organiza o cient fica com fins n o lucrativos localizada nos Estados Unidos da Am rica focalizada em aspectos relacionados com comunica o mar tima via r dio navega o via r dio Fundada em 1947 agora uma organiza o de membros independentes 4 Como foi descrito no ponto 2 1 3 o DGPS corresponde ao envio de correc es provenientes de uma esta o de refer ncia para determinados utilizadores De modo a que esse servi o seja global o formato em que s o enviadas as correc es n o pode depender do receptor Assim o formato das mensagens DGPS est definido pela organiza o RTCM A vers o mais recente do formato RTCM a vers o 3 1 5 Esta vers o apenas baseada em correc es RTK ao qual se faz refer ncia no ponto 2 1 3 Nesta disserta o as correc es diferencias geradas s o baseadas no pseudo range da a justifica o para o que o formato das mensagens constru das no presente projecto correspondam ao formato RTCM na vers o 2 1 que incluem
104. mero de processos que se encontram em opera o com uma determinada especificidade Sempre que se quer contabilizar um processo o valor do membro respectivo decrementado em uma unidade dado ser um contador invertido Quando o respectivo processo acaba a sua fun o o valor do contador incrementado no mesmo n mero de unidades 22 a estrutura da Figura 3 3 est associado um sem foro quatro membros apresentados na Tabela 3 1 Tabela 3 1 Sem foro para sincroniza o da estrutura de mem ria partilhada Membros do sem foro Fun o Sincroniza o na leitura e escrita de dados no segmento Primeiro ns de mem ria Segundo N mero de processos que usam o sem foro N mero de processos a ler dados do segmento de Terceiro mem ria Quarto Sincroniza o no momento de criar e fechar o sem foro A estrutura apresentada na Figura 3 3 completada com a estrutura na Tabela 3 1 para uma mensagem existindo por isso no projecto m ltiplas estruturas com o esquema anterior Os v rios membros apresentados na Tabela 3 1 permitem um completo funcionamento do sistema evitando algumas situa es que apesar de muito improv veis podem acontecer O quarto membro do sem foro usado apenas quando este criado e fechado Funciona como um verde e vermelho e quando o sem foro criado ou fechado este membro colocado a vermelho para evitar que entre a sua cria o o
105. ncy European Union First In First Out Global Positioning System HyperText Markup Language HyperText Transfer Protocol Identification Issue of Data Clock Issue of Data Ephemeris Inter Process Communication Instituto Superior T cnico Instituto de Telecomunica es Least Squares Master Control Station NAVSTAR NMEA PHP PRC PRN RF RINEX RRC RS RTCM RTK SBAS SNR SV UDRE UTC WGS 84 Navigation Satellite with Time and Ranging National Marine Electronics Association Personal Home Page Pseudo Range Correction Pseudo Random Noise Radio Frequency Receiver Independent Exchange Format Range Rate Correction Recommended Standard Radio Technical Commission For Maritime Services Real Time Kinematic Satellite Based Augmentation System Signal to Noise Ratio Space Vehicle User Differential Range Error Coordinated Universal Time World Geodetic System 1984 1 Introdu o 1 1 Motiva o O GPS Global Positioning System hoje um sistema inserido em diversas reas e usado em m ltiplas aplica es Um receptor de GPS permite a um utilizador em qualquer ponto do globo terrestre e a qualquer hora do dia conhecer a sua posi o num determinado sistema de coordenadas global Para al m desta informa o existe um vasto conjunto de dados poss veis de serem adquiridos com um receptor de GPS e que podem ser usados para fins de estudo e investiga o cient fica Sendo o G
106. neste trabalho S o tamb m referidos alguns formatos padr o relacionados com o GPS O capitulo 2 termina com uma apresenta o dos componentes que permitem a implementa o da esta o de monitoriza o de GPS e com uma breve descri o do estado da arte No capitulo 3 s o descritas as solu es adoptadas para o desenvolvimento do projecto bem como uma detalhada descri o de todo o software desenvolvido Este capitulo est dividido segundo os dois m dulos referidos no ponto 1 2 e que podem ser considerados em tr s partes distintas No capitulo 4 s o abordados os principais resultados obtidos bem como o desempenho e as potencialidades da esta o Referem se tamb m os principais testes realizados e as respectivas consequ ncias As principais conclus es e perspectivas para trabalhos futuros encontram se no capitulo 5 2 Enquadramento Tecnol gico 2 1 Global Positioning System GPS Neste subcap tulo feita uma descri o geral do sistema GPS onde se refere a sua hist ria e alguns dos seus conceitos essenciais entre os quais DGPS S o tamb m descritos alguns formatos relacionados com GPS usados no projecto e essenciais na troca de informa o entre receptores de fabricantes diferentes 2 1 1 Hist ria No in cio dos anos 60 algumas organiza es governamentais dos Estados Unidos da Am rica entre as quais o DOD Department of Defense estavam interessadas em desenvolver um sistema de sat lites q
107. nforma o de quais os sat lites presentes em cada um dos canais do receptor GPS bem como as vari veis PDOP HDOP e VDOP referenciadas no ponto 2 1 2 e GSV A mensagem com identificador GSV cont m informa o de quantos sat lites est o em linha de vista com o receptor a sua identifica o eleva o azimute e SNR Signal to Noise Ratio para cada um dos sat lites No Anexo B est detalhado o formato de cada uma das mensagens identificadas em cima 8 2 1 6 Receiver Independent Exchange Format RINEX Em 1989 existiu uma grande campanha de recolha de dados GPS em que estavam envolvidos mais de sessenta receptores de 4 marcas diferentes De modo a facilitar a troca dos dados recolhidos foi definido uma norma padr o que permite guardar os dados num formato especifico 9 Este formato conhecido como RINEX est definido em ficheiros do tipo ASCII American Standard Code for Information Interchange Embora um ficheiro no formato ASCII necessite de um maior espa o de armazenamento que um ficheiro em formato bin rio permite uma maior flexibilidade 2 Desde 1989 surgiram v rias vers es do formato RINEX sendo a mais recente a vers o 3 00 e a que foi utilizada no projecto Nesta vers o existem tr s tipos de ficheiros ASCII ficheiro de observa o ficheiro de navega o e ficheiro com dados meteorol gicos No projecto foram gerados apenas os dois primeiros ficheiros dado que n o estavam dispon veis os dados
108. nta erros que n o s o comuns entre os receptores tais como o erro no rel gio do receptor e o erro provocado pela troposfera Assim a cada um dos pseudo range necess rio subtrair o erro no rel gio do receptor e o atraso provocado pela troposfera na propaga o do sinal O resultado final de todo o algoritmo descrito s o as correc es diferenciais para os sat lites considerados logo no inicio do ciclo e Valida o das correc es diferenciais O receptor ligado porta s rie 1 usado para validar as correc es diferenciais obtidas Primeiro s o obtidos os sat lites dos quais existe informa o das suas efem rides e pseudo range tal como no receptor ligado porta s rie 0 Destes sat lites s o considerados apenas aqueles para os quais foram geradas correc es diferenciais Se o n mero de sat lites dispon veis for inferior a 4 o algoritmo termina n o sendo poss vel validar as correc es diferenciais Se for superior a 4 existem sat lites suficientes para uma estimativa da posi o da antena ligado ao receptor conectado porta s rie 1 O algoritmo usado para estimativa da posi o foi descrito anteriormente existindo apenas uma diferen a O valor do pseudo range agora corrigido com as correc es diferenciais obtidas para al m do erro da troposfera que dependente de cada receptor Para validar todo o processamento realizado em especial a influ ncia das correc es diferenciais recorre se aos fichei
109. nte a fase inicial de desenvolvimento tiveram sempre os resultados esperados No programa final verifica se que n o existe nenhuma dessincroniza o entre os v rios processos conseguindo com a estrutura implementada que v rios processos efectuem a leitura dos dados enquanto estes s o escritos nos segmentos de mem ria partilhada Esta estrutura apesar de possuir alguma complexidade permite aumentar a efici ncia do programa A estrutura dos sem foros permite monitorizar o acesso a um recurso comum entre processos diferentes Sejam segmentos de mem ria partilhada sejam ficheiros a estrutura implementada cumpriu sempre com os objectivos propostos A estrutura desenvolvida permite tamb m que independentemente do processo que criou o sem foro ser finalizado 68 outros processos continuem a ter sua disposi o o sem foro e o respectivo segmento de mem ria se existir pois estes s o removidos pelo ultimo programa que os utiliza e Programa Antena Um dos programas desenvolvidos destaca se n o pela sua complexidade mas pelo seu objectivo final O programa Antena descrito no ponto 3 4 2 possibilita que as duas antenas de GPS da esta o do IT sejam no futuro colocadas numa outra posi o sem ser necess rio alterar os programas que fazem uso dessa informa o Para que os resultados gerados continuem a ser os esperados o administrador tem apenas de iniciar o programa Antena e na caixa de di logo reali
110. nte u que representa a constante gravitacional da terra no sistema WGS 84 e na equa o 3 2 est valor da constante 9 que representa taxa de rota o da terra sistema WGS 84 3 986005 10 meters sec 3 1 7 2921151467 x10 rad sec 3 2 Ao instante de tempo actual t na escala de tempo GPS necess rio subtrair o valor de referencia para as efem rides identificado pela vari vel t e Esta vari vel enviada mensagem de navega o e um dos campos da mensagem enviada pelo receptor com identificador SNV O resultado da subtrac o identificado pela vari vel t sendo necess rio verificar se os segundos actuais est o dentro da mesma semana considerada na vari vel toe 41 Essa conclus o leva que se realizem correc es ao tempo resultante se tal for necess rio O algoritmo est representado na equa o 3 3 O valor 604800 representa o n mero de segundos total de uma semana t Lo t t 604800 se t gt 302400 3 3 t t 604800 se t lt 302400 Juntamente com as efem rides e o instante de tempo aplicado o algoritmo global para calcular a posi o de cada um dos sat lites dos quais existe informa o das suas efem rides A posi o final dos sat lites obtida a partir da equa o 3 4 A posi o do sat lite em causa dada pelas vari veis x lt Z estando representada no sistema WGS 84 nas unidades de metros As vari veis x
111. ntes desta vari vel PDOP Position Dilution of Precision HDOP Horizontal Dilution of Precision e VDOP Vertical Dilution of Precision O PDOP usado para saber o efeito da geometria dos sat lites no c lculo da posi o em tr s dimens es O HDOP e o VDOP s o as componentes horizontal e vertical respectivamente do PDOP Estas vari veis podem ser obtidas a partir dos receptores de GPS que informam os utilizadores da precis o da posi o e Escalas de tempo Existem duas escalas de tempo importantes para os utilizadores do sistema GPS UTC Coordinated Universal Time uma escala de tempo at mica que periodicamente sofre um ajustamento no tempo sendo os seus segundos incrementados em mais uma unidade A outra escala de tempo designada por tempo GPS e a escala de refer ncia para os sinais GPS Esta escala de tempo iniciou se no dia 6 de Janeiro de 1980 onde se igualou ao tempo UTC e uma escala de tempo cont nua n o sofrendo por isso ajustamentos peri dicos como acontece com o tempo UTC 1 Na mensagem de navega o s o enviados dois par metros para caracterizar o tempo GPS o n mero da semana desde o seu inicio 6 de Janeiro de 1980 e os segundos da semana em quest o 2 1 3 Differential Global Positioning System DGPS Existem in meras aplica es onde a precis o requerida ao sistema GPS ultrapassa o poss vel devido exist ncia dos erros descritos no ponto 2 1 2 Devido permanente necessidade d
112. nviada para o receptor GPS este envia uma mensagem com o identificador NAK para informar o utilizador do sistema que a mensagem previamente enviada n o est formatada correctamente e PAR A mensagem com identificador PAR retorna o estado geral de alguns par metros do receptor O formato da mensagem completamente diferente das restantes n o tendo qualquer identificador para inicio de mensagem nem terminador e RID A mensagem com identificador RID Util para utilizadores da estagao que queiram saber qual modelo do receptor a versao do firmware e UKO A mensagem com identificador UKO permite entre outras coisas receber os dois parametros necessarios para definir a escala de tempo GPS o numero da semana e os segundos desde o inicio da semana e PBN A mensagem PBN retorna na escala de tempo GPS os segundos da semana que devem ser usados como refer ncia em todas as medi es de tempo e posi o Inclui tamb m a posi o X Y e Z da antena em causa e entre outros a vari vel PDOP e MCA A mensagem com identificador MCA cont m a informa o necess ria para gerar o ficheiro RINEX de observa o Inclui entre outros o PRN do sat lite a rela o sinal ru do fase da portadora medi o do efeito Doppler pseudo range e o canal do receptor usado para o sat lite em causa e SNV A mensagem SNV inclui as efem rides Permite gerar o ficheiro RINEX de navega o No Anexo est detalhado o forma
113. o se o administrador quisesse que a mensagem com identificador GSV fosse enviada pelo receptor periodicamente de 1 em 1 segundo e fosse recebida na porta A o formato da mensagem a enviar para o receptor seria e PASHS NME GSV A ON 1 13 10 A mensagem definida em cima teria que ser enviada apenas uma vez dado que o receptor guarda essa informa o A periodicidade da mensagem definida pelo administrador da esta o e o seu valor tem que estar definido entre 1 e 999 segundos 8 Para o presente trabalho foram definidas sete mensagens com um envio peri dico de 1 segundo As mensagens usadas est o definidas no ponto 3 4 1 e t m o identificador e GGA GSV UKO ALM PBN SNV e MCA A mensagem com identificador SNV n o enviada periodicamente com 1 segundo pois tem dados particulares Por conter as efem rides dos sat lites e devido ao facto de a actualiza o dos seus valores ser feita com um per odo muito superior a 1 segundo o receptor envia a mensagem com um per odo tamb m superior a 1 segundo As restantes mensagens s o enviadas com um per odo de 1 segundo O programa Interface com os receptores corre num ciclo de 0 5 segundos Na Figura 3 9 est o esquematizados os pontos mais relevantes do ciclo e do funcionamento do programa Interface com os receptores A primeira verifica o feita pelo programa se existe alguma mensagem criada Estas mensagens est o descritas no ponto 3 4 3 e se existir
114. o Interface S rie As principais funcionalidades desenvolvidas foram e acesso restrito aos conte dos da p gina e interac o com os receptores de GPS da esta o e visualiza o de determinados dados e possibilidade de efectuar download de alguns ficheiros O principal objectivo desta interface permitir a outros utilizadores da esta o o acesso aos dados produzidos bem como a interac o de uma forma simples com os dois receptores de GPS Sem esta interface esse objectivo s poderia ser cumprido ou atrav s do acesso ao computador onde foi desenvolvido o trabalho ou ent o desenvolvendo sockets em outras m quinas A interface web possibilita passar por cima dessas solu es facilitando o acesso aos dados em qualquer lugar do mundo 3 6 1 Autentica o excep o da p gina principal todos os conte dos da interface web s o de acesso restrito Para que um utilizador tenha acesso aos conte dos da p gina da esta o ter que introduzir a sua identifica o composta por username e password O PHP disp e das funcionalidades necess rias para implementar o acesso restrito aos conte dos da p gina Recorre se assim a sess es e vari veis de sess o onde s o guardados os dados dos utilizadores que acedem p gina A p gina Login est armazenada no ficheiro login php e consiste num formul rio em HTML onde o utilizador tem de introduzir a sua identifica o A identifica o guardada em duas va
115. o Interface S rie a partir do m dulo Interface Web necess rio ap s a compila o dos programas mudar as permiss es dos mesmos Assim fundamental que na linha de comandos sejam introduzidos os comandos e chown root root nome do programa que permite definir o propriet rio do programa como o administrador e chmod a rwx nome do programa para definir que todos os utilizadores podem executar o programa como se fossem o propriet rio As mensagens do tipo 1 n o retornam nenhuma resposta por parte do receptor Ap s o envio da mensagem escrito no portal a informa o referente ao receptor escolhido Se ocorrer algum erro nos programas desenvolvidos no m dulo Interface S rie esses s o escritos tamb m no portal permitindo assim ao administrador detectar e resolver alguma situa o an mala 62 Nas mensagens do tipo 2 retornada a informa o pedida No formul rio HTML o nico par metro que o administrador tem de escolher o receptor Ap s o envio da mensagem o portal colocado num momento de pausa de aproximadamente 3 segundos Este tempo de espera deve se ao facto de no m dulo Interface Web a mensagem ter de ser enviada para receptor escolhido o receptor tem de responder e a respectiva resposta tem de ser escrita num ficheiro segundo um determinado formato Os ficheiros gerados s o colocados na directoria usr local apacheZ htdocs site upload File Na Figura 3 15 est representado o exemplo da respo
116. o da mem ria inicializa o 1 inicializa o da mem ria 5 apagar efem rides mas n o almanac posi o e tempo ci reservado caracteres CR e LF que na lt Enter gt tabela ascii correspondem aos valores decimais 13 e 10 O envio das mensagens descritas pode ser feito de dois modos O primeiro atrav s de processos pertencentes ao m dulo Interface S rie correndo os na linha de comandos como simples execut veis Para cada uma das mensagens est definido um processo independente dos outros e o administrador tem apenas que correr o processo correspondente mensagem a enviar com argumentos de entrada pr prios da mensagem em causa Um exemplo o envio da mensagem com identificador PAR O administrador da esta o teria que introduzir na linha de comandos dentro da respectiva directoria os argumentos e Receiver 1 Com o comando em cima o administrador envia para o receptor ligado porta s rie dev ttySO uma mensagem a pedir o envio da informa o contida na mensagem identificador PAR O segundo modo e mais pr tico atrav s do m dulo Interface Web onde s o escolhidos pelo utilizador os par metros necess rios defini o de cada uma das mensagens Este segundo 31 modo corresponde a iniciar os processos na linha de comandos como execut veis mas partir de uma Interface Web Um dos argumentos comuns nos v rios processos a identifica
117. o da mensagem guardando os dados num vector Algumas das mensagens terminam com o car cter outras t m definido um n mero de bytes total Antes de se realizar o processamento dos dados necess rio verificar se as mensagens recebidas s o v lidas Todas a mensagens t m no fim um checksum que permite 34 verificar a integridade da mensagem recebida Durante o projecto nunca foi recebida uma mensagem que n o fosse v lida ainda assim optou se por verificar sempre a validade Depois de garantido que a mensagem recebida v lida feito o processamento dos dados Os dados das mensagens com identificadores GGA GSV UKO ALM PBN SNV e MCA s o guardados na estrutura apresentada no ponto 3 3 ficando assim dispon veis noutros processos Para cada uma das mensagens existe uma estrutura pr pria nos segmentos de mem ria com os campos correspondentes mensagem Todo o processo de leitura incluindo o uso dos sem foros para a sua sincroniza o est tamb m referido no ponto 3 3 As mensagens com identificador RID NAK GSA e PAR s o guardadas em ficheiros com um determinado formato No ficheiro da mensagem RID s o guardados apenas os dados enquanto que nos ficheiros das mensagens NAK GSA e PAR para al m do conte do da respectiva mensagem definido um cabe alho com o tempo de refer ncia Todos os dados s o formatados nos ficheiros segundo os v rios campos da respectiva mensagem e descrito em 8 Os ficheiros
118. observa es Para cada sat lite considerado no algoritmo existe duas correc es diferenciais uma por cada receptor Na Figura 4 6 est apresentada a diferen a entre as correc es diferenciais obtidas com os dois receptores para um determinado sat lite Para os restantes sat lites o comportamento an logo Diferen a entre as correc es diferenciais 2 Diferen a metros 0 5 10 15 20 25 30 35 40 45 50 Numero de observa es Figura 4 6 Diferen a entre as correc es diferenciais com recurso aos dois receptores Pela observa o da Figura 4 6 verifica se a exist ncia de oscila es com uma elevada amplitude O valor m dio das 50 observa es realizadas em m dulo cerca de 2 3 metros O valor m dio resultante razo vel contudo as grandes oscila es traduzem no UDRE um valor m dio superior O resultado ideal seria uma varia o mais pequena com um valor m dio pr ximo dos zero metros obtendo se assim uma boa efic cia com o uso das correc es diferenciais O valor da vari vel UDRE obtida com o programa Gerar correc es diferenciais para um n mero de observa es de 12000 teve um valor m dio de 4 3 metros e um desvio padr o de 2 3 metros 76 Com todos os testes realizados e com os respectivos resultados uma solu o poss vel de melhorar os resultados seria a utiliza o de um filtro de Kalman Apesar das correc es diferenciais calculadas n o terem permitido melhorar
119. ocesso A coloca dados do ficheiro de entrada na mem ria partilhada e o processo B adquire os dados guardados no segmento de mem ria e gera um determinado ficheiro de sa da Segmento de Processo A mem ria Processo B partilhada Ficheiro de Ficheiro de entrada sa da Figura 3 2 Exemplo de partilha de dados atrav s de mem ria partilhada O exemplo anterior permite compreender o problema associado ao uso de segmentos de mem ria Se o processo estiver a escrever dados no segmento o processo n o pode nesse instante ir ler os dados da mem ria partilhada tendo que esperar que o processo A acabe a escrita dos dados Este problema comum sempre que se trabalha com segmentos de mem ria partilhada existindo por isso a necessidade de uma forma de IPC que regule acesso mem ria e sincronize os v rios processos A solu o para o problema o recurso a sem foros que s o tamb m uma forma de IPC Os sem foros s o uma forma de sincroniza o primitiva e n o s o usados para troca de grandes quantidades de dados O objectivo do seu uso sincronizar as opera es que envolvem a comunica o entre m ltiplos processos De uma forma simples um sem foro pode ser considerado como uma vari vel global entre processos Pode tomar qualquer valor sendo definido pelo programador o significado imposto a cada n mero Por exemplo pode se definir o valor O como o sinal verde e o valor 1 como o sinal vermelho
120. ograma desenvolvido em linguagem de programa o C e que permite toda a interface com os receptores incluindo o processamento dos dados O segundo referente ao desenvolvimento de uma p gina na Internet com o objectivo de facultar todas as funcionalidades do software descrito anteriormente de maneira mais pr tica e intuitiva O programa que faz a comunica o com os receptores e processa os dados enviados por estes complexo e por isso um dos objectivos da disserta o come a por construir m ltiplos processos cada um com uma determinada fun o A interliga o entre os v rios processos realizada recorrendo a um dos m todos de IPC Inter Process Communication possibilitando assim a partilha de informa o entre os mesmos Alguns dos processos permitem enviar para os receptores determinadas mensagens num formato espec fico de modo a alterar determinadas caracter sticas destes ou requisitam o envio de algumas informa es sobre o estado de alguns par metros A interface com os receptores realizada por um outro processo que ao mesmo tempo guarda os dados enviados em segmentos de mem ria partilhada um dos m todos de IPC Os restantes processos trabalham apenas os dados enviados pelos receptores n o tendo qualquer tipo de interac o com os mesmos Como objectivos tem se a gera o de ficheiros no formato RINEX Receiver Independent Exchange Format o c lculo de correc es diferenciais DGPS Differential Glob
121. ois bidireccional caracterizando a liga o a vermelho a transfer ncia de determinados resultados gerados no m dulo principal Interface S rie para uma interface web e a liga o laranja permite a utilizadores autorizados comunicar directamente com os dois receptores de GPS presentes na esta o As liga es representadas na Figura 3 1 resultam tamb m de software desenvolvido 3 3 Solu es Adoptadas e Linguagem de programa o Para o desenvolvimento dos m dulos Interface S rie e Interface user friendly foi usada a linguagem de programa o A linguagem foi criada em 1972 existindo por isso muita documenta o Uma das grandes vantagens desta linguagem adaptar se ao desenvolvimento de qualquer projecto n o estando restrita a nenhuma aplica o em particular Consegue obter performances com uma rapidez apreci vel mesmo para aceder a mecanismos de baixo n vel como a manipula o de bits Outra vantagem ser independente da m quina onde est a ser processada permitindo no futuro processar os m dulos em m quinas mais evolu das sem ser necess rio altera es significativas 13 e Comunica o entre m ltiplos processos Os receptores de GPS utilizados no projecto permitem a aquisi o de um grande n mero de informa o Esta informa o pode ser depois processada de modo a gerar certos resultados Se toda a aquisi o de dados e o seu respectivo processamento fosse realizado por u
122. om o envio do sinal SIGINT O programa ao receber este sinal antes de sair fecha os segmentos de mem ria sem foros e ficheiros 46 e Figura posi o dos sat lites Este programa tem como objectivo disponibilizar uma figura com a posi o dos sat lites em linha de vista com as antenas da esta o Na directoria de trabalho o programa identificado pelo nome Plot Satellite Data No trabalho s o usados os dois receptores estando assim dispon vel duas figuras com a posi o dos sat lites vis veis s duas antenas Os dados que o programa utiliza est o no ficheiro apresentado no programa anterior A leitura dos dados a partir do ficheiro realizada com recurso ao sem foro associado para evitar problemas de sincroniza o entre os dois processos Tal como a maioria dos programas do m dulo Interface S rie este corre tamb m num ciclo infinito Neste caso o ciclo realizado com um intervalo de tr s minutos devido ao facto de a eleva o e azimute dos sat lites variar de uma forma relativamente lenta A ferramenta utilizada para gerar a figura foi o Matlab como foi referido no ponto 3 8 O primeiro passo efectuado pelo programa em cada ciclo copiar o ficheiro gerado no programa Dados dos sat lites Com este ficheiro o Matlab iniciado e gerada uma figura com o azimute e eleva o de cada um dos sat lites presentes no ficheiro O Matlab iniciado directamente pelo programa sem abrir nenh
123. on 3 1 RTCM 1994 Recommended Standards For Differential NAVSATR GPS Service Version 2 1 NMEA 0183 2000 Standard For Interfacing Marine Electronic Devices Version 3 00 Professional Magellan Reference Manual A12 B12 AC12 Rinex 2007 The Receiver Independent Exchange Format Version 3 00 Waldemar Kunysz NovAtel Inc Effect of Antenna Performance on the GPS sinal Accuracy _ http www novatel com Documents Papers effectofantenna pdf Online Cita o 22 de Fevereiro de 20101 NovAtel L1 GPS Antenna Model 531 Rev 2 http www novatel com Documents Manuals om 20000032 pdf Online Cita o 22 de Fevereiro de 2010 Commission European Enterprise and Industry Space http ec europa eu enterprise policies space galileo index en htm Online 30 de Mar o de 2010 Damas Luis Linguagem C 10 Edi o FCA 1999 Stevens W Richard UNIX Network Programming Second Edition Prentice Hall 1990 82 15 Lerdorf R PHP Pocket Reference O Reilly 2003 16 NAVSTAR Global Positioning System Navstar GPS Space Segment Navigation User Interfaces Revision D 2004 17 Hofmann Wellenhof B Lichtenegger H e Collins J GPS Theory and Practice Third edition Springer Verlag Wien New York 1994 83 Anexo Formato RTCM As mensagens no formato RTCM vers o 2 1 est o divididas em v rias palavras cada uma ocupando 30 bits Os ltimos 6 bits de cada palavra representam os bits de parid
124. orresponde ao indice da estrutura de mem ria onde deve ser realizada a escrita dos dados sendo a leitura efectuada na outra estrutura de mem ria typedef struct int index unsigned long int revtime unsigned char sitename 5 double X_Pos double Y_Pos double Z Pos float Clock Offset float X Vel float Y Vel float Z Vel float Clock Drift float PDOP mensagem PBN Figura 3 6 Estrutura para a mensagem PBN 3 4 2 Programa Antena O objectivo do programa Antena permitir ao administrador da esta o alterar alguns dos par metros relacionadas com as antenas de GPS em qualquer instante e sem ser necess rio interromper os outros programas Na directoria de trabalho o nome do programa Antenna Ao programa Antena est o associados dois ficheiros O primeiro representado na Figura 3 7 tem a informa o da correspond ncia entre a porta s rie do computador onde est o ligados os dois receptores de GPS e as duas antenas A diferencia o entre as duas antenas da esta o feita com base na sua localiza o estando uma identificada como antena Sul e a outra como antena Norte Na primeira coluna da Figura 3 7 est o as duas portas s rie onde est o ligados os dois receptores sendo a diferencia o dos receptores feita com base na identifica o das duas portas A informa o contida no ficheiro representado na Figura 3 7 permite saber que o receptor de GPS ligado porta s rie dev t
125. os de navega o respons vel pela aquisi o das efem rides dos sat lites Na directoria de trabalho o programa est identificado a partir do nome Navigation Data Este programa tem tamb m a op o de dois argumentos para iniciar o programa na linha de comandos que o administrador pode introduzir para escolher um dos receptores da esta o No trabalho s o usados dois processos um o argumento dev ttySO e outro com 35 IdevittyS1 estando assim a aquisi o dos dados de navega o a ser feita a partir dos dois receptores de GPS Dado que este programa n o faz interface com os receptores os dados de navega o s o obtidos atrav s dos segmentos de mem ria preenchidos o programa Interface com os receptores A mensagem enviada pelo receptor que cont m as efem rides tem o identificador SNV por isso o programa usa os segmentos de mem ria e os respectivos sem foros associados mensagem SNV Para a leitura dos dados do segmento de mem ria o esquema o descrito no ponto 3 3 mais concretamente os passos definidos para a leitura representados na Figura 3 4 As efem rides adquiridas com este programa s o guardadas num outro segmento de mem ria partilhada devido ao facto de serem necess rias noutros programas O esquema usado nestes segmentos de mem ria juntamente com os sem foros n o segue o que foi descrito no ponto 3 3 Isto deve se ao facto de quando um outro processo quer o
126. penas num processo e tem somente um argumento dev ttySO Na directoria de trabalho est identificado pelo nome DGPS O receptor ligado porta s rie O funciona como o receptor base e gerador de correc es diferenciais enquanto que o receptor ligado porta s rie 1 usado para testar a validade das correc es geradas Como est referido no ponto 2 1 3 e 2 1 4 para obter as correc es diferencias necess rio que a esta o seja fixa com uma posi o definida como exacta Atrav s desta posi o exacta s o obtidas as correc es diferenciais Segundo o conceito te rico de DGPS as correc es poderiam ser obtidas subtraindo a posi o enviada pelo receptor com a posi o exacta da antena Os erros em cada uma das componentes X Y e Z seriam depois transmitidas para os restantes receptores de GPS A verdade que o conceito de DGPS vai mais para al m disso dado que existem aspectos que n o s o comuns entre os receptores como por exemplo o seu erro no rel gio os sat lites em linha de vista e a influ ncia da troposfera e ionosfera na propaga o do sinal Assim sendo essencial tratar cada um dos sat lites vis veis para a esta o de refer ncia independentemente sendo geradas correc es para cada um desses sat lites O receptor que recebe as correc es respons vel depois por aplic las nos sat lites correspondentes Na Figura 3 11 est apresentado o fluxograma com o funcionamento geral do p
127. pon vel na interface web Logout e vice versa A p gina Logout permite ao utilizador j registado destruir a sua sess o ficando assim desabilitado no acesso aos conte dos reservados Sempre que efectuado o Login ou Logout escrito no ficheiro loginfo txt informa o do nome do utilizador bem como a data e qual das ac es foi efectuada Um exemplo do ficheiro referido gt pedro 04 03 2010 13 57 33 Login pedro 04 03 2010 22 52 28 Logout O ficheiro descrito utilizado para consulta do administrador da esta o servindo para controlo de acesso e tamb m como um dado estat stico 3 6 2 Interac o com os receptores Um dos conte dos desenvolvidos no m dulo Interface Web permite enviar mensagens para os dois receptores de GPS da esta o do IT No portal a p gina onde est o definidas as mensagens designa se por Receiver Para que um utilizador consiga enviar mensagens para os receptores tem que efectuar o Login como administrador n o estando os utilizadores do tipo geral autorizados a interagir com os receptores da esta o Na p gina Receiver as mensagens encontram se divididas em dois tipos como descrito no ponto 3 4 3 estando as mensagens dispon veis na interface web referidas no mesmo ponto O administrador encontra primeiro uma descri o breve com os principais pontos de cada mensagem podendo depois seleccionar uma das mensagens para envio Seleccionada uma mensagem aparece um formul rio em
128. posi o de cada sat lite independente do receptor Na Figura 4 4 est representada a evolu o da dist ncia em metros para um determinado sat lite Foram realizadas 50 observa es verificando se um comportamento semelhante para mais 73 observa es Na Figura 4 4 est apenas a representa o um determinado sat lite verificando se uma analogia com os restantes 10 Dist ncia entre os sat lites 6 Dist ncia metros to N A U 0 5 10 N mero de observa es Figura 4 4 Dist ncia entre um dado sat lite calculado com recurso aos dois receptores Pela observa o da Figura 4 4 verifica se que a dist ncia entre a posi o de um determinado sat lite calculada com um dos receptores e a posi o calculada com o outro receptor tem uma ordem de grandeza de 0 0001 metros Esta conclus o permite excluir tamb m a hip tese de erro na estimativa das posi es dos sat lites no instante de transmiss o do sinal Um outro par metro importante no c lculo das correc es diferenciais o pseudo range medido por cada um dos receptores Na medi o deste pseudo range est inclu do o erro do rel gio de cada um dos receptores De modo a possibilitar uma generaliza o na analogia entre as duas medi es foi adquirido o pseudo range dos sat lites sendo subtra do o erro do rel gio do receptor em causa e que pode ser obtido como descrito no ponto 3 4 8 Com esta subtrac o obt m se
129. posi o exacta da antena que est ligada ao receptor Para obter essa informa o o programa recorre aos dois ficheiros descritos no ponto 3 4 2 sendo a leitura dos dados sincronizada com os sem foros associados a cada um dos ficheiros Os ficheiros RINEX gerados s o guardados num directoria segundo 39 e Receptor o Ligado porta s rie O o Ligado porta s rie 1 e Ano e M s e Dia e Nome do ficheiro ssssdddf yyt o 8555 da esta o o dia da primeira escrita de dados o f sequ ncia do ficheiro a x ficheiros hor rios yy ltimos dois d gitos do ano o t tipo de ficheiro O Observa o N Navega o 3 4 6 Programas Posi o dos sat lites e Azimute e eleva o e Posi o dos Sat lites O programa Posi o dos sat lites calcula a posi o dos sat lites da constela o de GPS no sistema ECEF Earth Centered Earth Fixed WGS 84 Na directoria de trabalho o programa identificado a partir do nome Satellite Position O administrador da esta o tem a op o de iniciar o programa na linha de comandos com dois argumentos tal como acontece nos programas descritos anteriormente O c lculo da posi o dos sat lites conseguido atrav s das efem rides Como foi referido anteriormente estas s o enviadas pelo receptor na mensagem com identificador SNV Uma das op es neste programa era obter as efem rides a partir do segmento de m
130. r all the direct interaction with the two receivers of station To run Desktop it ac 12 interface_AC 12 serial argv a argv dev ttySO dev ttyS1 14 Navigation Data program responsible for the storage of ephemeris To run Desktop it ac 12 Nav_Rinex download argv a argv 95 20 i dev ttySO ii dev ttyS1 Observation Data program responsible for the storage of observation data such as pseudo range carrier phase SNR and doppler To run Desktop it ac 12 Obs_Rinex download argv a argv i dev ttySO ii dev ttyS1 Satellite Position the program s objective is to compute the satellite positions with the ephemeris To run Desktop it ac 12 Satellite_Position compute argv a argv i dev ttySO ii dev ttyS1 Azimuth and Elevation with the satellite positions previous referred the program is responsible for computing the azimuth and elevation of GPS satellites The reference is the two GPS antennas of station To run Desktop it ac 12 Azimuth_Elevation compute argv a argv dev ttySO ii dev ttyS1 Satellite Data program responsible for the acquisition of satellite data such as elevation azimuth and SNR This data comes from the message with ID GSV To run Desktop it ac 12 Satellite_Data download argv a argv i dev ttySO ii dev ttyS1 Plot Satellite Data with the data previous described this program generate a figure with sate
131. ri veis sendo a sua verifica o realizada no ficheiro checklogin php Neste ficheiro a primeira confirma o verificar se o utilizador introduziu a sua identifica o completa Se tal n o acontecer apresentada a p gina de Login com uma mensagem para o utilizador introduzir todos os dados No caso de os dados estarem incorrectos indicada na p gina uma mensagem de erro A informa o do nome dos utilizadores autorizados e das respectivas senhas de acesso est num ficheiro cujo nome um conjunto de caracteres escritos aleatoriamente A identifica o introduzida pelo utilizador comparada com a que est guardada no ficheiro e se corresponder a algum utilizador autorizado iniciada uma sess o onde guardado em duas vari veis de sess o username e tipo de utilizador Iniciada a sess o o utilizador remetido para a p gina principal estando agora autorizado a navegar pelos conte dos 60 Foram definidos dois tipos de utilizadores autorizados administrador e geral O administrador tem acesso a todos os conte dos desenvolvidos no m dulo Interface Web enquanto que o utilizador geral tem acesso a todas as p ginas excepto p gina que permite uma interac o com os dois receptores Quando a sess o iniciada uma das vari veis guarda a informa o do tipo de utilizador permitindo assim um acesso controlado ao conte do da p gina dependendo do tipo de utilizador Se o Login estiver efectuado a op o dis
132. rograma 48 Inicio do ciclo com 2 segundos Obten o dos sat lites com informa o completa N o existem C lculo da posi o sat lites suficientes da antena em causa Obten o do erro do rel gio do receptor em causa Gerar correc es diferencias Validar as correc es usando o outro receptor Ficheiro RTCM Figura 3 11 Ciclo do programa Gerar correc es diferenciais As correc es diferenciais s o geradas com um per odo de dois segundos O primeiro passo na obten o das correc es a aquisi o das efem rides e pseudo range dos sat lites do receptor ligado porta s rie 0 Os sat lites usados no processamento s o aqueles para os quais existe informa o das suas efem rides e pseudo range Estes dados s o adquiridos utilizando os segmentos de mem ria partilhada descritos no ponto 3 4 5 recorrendo aos sem foros associados para sincroniza o entre leitura e escrita nos segmentos Ap s este tratamento necess rio verificar quantos sat lites est o dispon veis Como referido no ponto 2 1 2 s o necess rios no m nimo quatro sat lites para calcular a posi o de um utilizador Consequentemente se o n mero de sat lites for inferior a quatro o processamento termina neste ponto e o ciclo volta ao inicio Estando dispon vel mais do que quatro sat lites calculada a posi o da antena utilizada pelo receptor ligado porta s rie 0 utilizando todos os sat lites d
133. rogramas Dados dos sat lites e Figura com a posi o dos sat lites 45 3 4 8 Programa Gerar correc es diferenciais areas 48 3 5 Interface user friendly 55 3 6 Interface na Asa Spa dra au 58 3 6 1 deh 60 3 6 2 Interac o COM OS receptores araras 61 3 6 3 Dados dos sat lites 63 3 6 4 Ficheros no sister Lingua 65 3 7 Manual de instru es rare eae 67 4 Resultados Testes css sicas sois cam asseieaasass aa do coqanass iscas nnmnnn nnmnnn cascas nnmnnn sado cam assa nnmn nnna 68 4 1 68 4 2 68 4 3 Interface user iriendIy 77 44 2 Web a ES O RATED RR 77 5 Conclus es e Desenvolvimentos Futuros ss erssereseeeaeeeaeeseeeseeeseeenaneranes 79 5 1 CONCIUSOCS rE E is sata Ue E 79 5 2 Perspectivas de trabalho futuro 80 Refer ncias Bibliogr ficas
134. ros descritos no ponto 3 4 2 calculando se a dist ncia entre a posi o exacta da antena e a sua estimativa resultante da aplica o de correc es diferenciais Essa diferen a representa o valor do UDRE User Differential Range Error que um campo necess rio na escrita do ficheiro RTCM e Escrita do ficheiro RTCM Com todo o algoritmo processado escrito o ficheiro com as correc es diferenciais no formato RTCM Para a escrita deste ficheiro todos os bytes t m de ser tratados com um processamento de baixo n vel Este processamento traduz se no c lculo e na formata o do ficheiro bit a bit Mais detalhes sobre o formato RTCM podem ser consultados no ponto 2 1 4 em conjuga o com o Anexo A Com um per odo de 2 segundos todo o processamento descrito iniciado gerando assim correc es diferenciais com uma actualiza o de dois segundos O ciclo do programa termina com o comando Ctrl c O programa ao receber este sinal antes de sair fecha os segmentos de memoria sem foros e ficheiros 3 5 Interface user friendly O segundo m dulo do sistema desenvolvido designa se por Interface user friendly por permitir a outros utilizadores adquirirem dados GPS de uma forma muito simples 55 A possibilidade de gerar determinados resultados e aplica es a partir de dados de GPS diversa e dado esse facto era importante possibilitar a interac o com os dois receptores de GPS da esta
135. rre aos ficheiros referidos no ponto 3 4 2 Com base nesses ficheiros o programa sabe qual a antena que est ligada ao receptor em causa 42 com essa informa o a partir do ficheiro com a posi o exacta das antenas guarda numa vari vel a posi o da antena em coordenadas cartesianas A posi o dos sat lites obtida a partir do segmento de mem ria partilhada preenchido no programa Posi o dos sat lites e descrito anteriormente Para efectuar a leitura das posi es dos sat lites o programa segue os passos descritos no ponto 3 3 Os sat lites para os quais calculado o azimute e eleva o s o aqueles que est o presentes no segmento de mem ria criado no programa Posi o dos sat lites O programa corre num ciclo de 30 segundos tal como o programa Posi o dos sat lites O primeiro passo na determina o do azimute e eleva o calcular o vector que une a antena em causa e cada um dos sat lites dispon veis Este vector com os dados que existem calculado no sistema WGS 84 A equa o 3 5 representa o c lculo descrito A vari vel com o nome sat representa a posi o do sat lite em causa nas tr s coordenadas x y e z O mesmo significado tem a vari vel user para a posi o da antena em causa x sat user y sat user 3 5 Vio sat User necess rio agora determinar o vector calculado no sistema WGS 84 num sistema de coordenadas locais atr
136. s dddmm mmmmm direction of longitude position type O invalid or not available 1 autonomous position 2 RTCM or SBAS differentially corrected number of satellites used in position computation HDOP altitude in meters above mean sea level altitude units meters geoidal separation in meters above WGS 84 reference ellipsoid geoidal separation units meters age of differential corrections seconds base station ID RTCM only checksum to validate the message 87 Mensagem GSA Formato da mensagem GPGSA c1 d1 d2 d3 d4 d5 d6 d7 d8 d9 dto dti dt2 dt3 fi f2 fs cc GPGSA d1 Mensagem GSV header of message mode M manual A automatic mode 1 fix not available 2 2D 3 3D satellites used in solution empty for unused channel PDOP HDOP VDOP checksum to validate the message Formato da mensagem GPGSV d1 d2 d3 n d4 d5 d6 f1 cc GPGSV di d2 d3 d4 d5 d6 d7 header of message total number of messages message number total number of satellites in view satellite PRN elevation in degrees azimuth in degrees SNR in dBHz checksum to validate the message 88 Anexo Formato propriet rio Mensagem NAK ACK Formato da mensagem PASHR s1 cc PASHR header of message 51 ACK or checksum to validate the message Mensagem PAR Devido ao facto da mensagem n o apresentar um formato espec fico de seguida est apresentado um exemplo da mensagem enviada pelo re
137. s enviados pelos receptores mas j guardados na mem ria do computador evitando se toda a componente de interac o com os receptores O segundo m dulo consistiu no desenvolvimento de uma interface web com algumas das funcionalidades desenvolvidas no primeiro m dulo O acesso p gina foi condicionado a utilizadores autorizados Com esta interface qualquer utilizador com permiss o pode em qualquer lugar do globo tirar partido do projecto desenvolvido Este portal permite aumentar a visibilidade do trabalho desenvolvido integrando alguns dos resultados obtidos De todos os resultados desenvolvidos no projecto os mais relevantes s o e aquisi o de dados dos dois receptores de GPS a esta o de monitoriza o realiza a aquisi o de dados dos dois receptores e a sua respectiva descodifica o 79 e envio de mensagens para os receptores o administrador da esta o tem possibilidade de enviar determinadas mensagens para os receptores requisitando o envio de determinada informa o ou a altera o de alguns par metros Esta interac o pode ser realizada atrav s da linha de comandos executando os programas espec ficos para tal ou pela interface web possibilitando o controlo remoto dos receptores e posi o dos sat lites atrav s do processamento de dados enviados pelo receptor calculada a posi o dos sat lites presentes na constela o em coordenadas cartesianas sendo depois transformada em eleva
138. s with some information is available anywhere in the world The resulting work serves as a starting point in developing a GPS monitoring station with some features developed Keywords GPS Monitoring station Receiver Interface ndice Agradecimentos crena a Eaa a aan a ii RESUMO at piada Ooo USO Sa DAE and ana Ste iii ADSI G op ES cA EEEE RASA RPE AS OA ne iv Indico ns e a ee S v Listo de 2 2 vii Lista de Figuras sediri a eea Aa a i viii Lista de ADreViaGOCS iis aea Ten Ea ima aniei ix 1 isca S 1 1 1 ada nora aaa nd pr E T 1 1 2 OBJOCLIVOS Farina data ALA SL ey 1 1 3 Organiza o aiden tine alt Vie ee ee Wl 2 2 Enquadramento 4 2 1 Global Positioning System 4 Eca SAR SO FE PRE RRPR CRU as PROERD PEDE CRER ROS PERDE PRO E PER 4 2 1 2 Conceitos d Sistema i 4 21 3 Differential Global Positioning System DGPS 8 2 1 4 Radio Technical Commission For Maritime Services
139. sta ao envio da mensagem com identificador PAR O conte do do ficheiro disponibilizado no portal com a informa o do receptor seleccionado e o instante de tempo referente aos dados bem como a op o de o utilizador efectuar o download do ficheiro Fj GPS MONITOR STATION Home Satellite Data Rinex Logout PER Click here to download the file Figura 3 15 Exemplo da resposta ao envio da mensagem PAR no m dulo Interface Web 3 6 3 Dados dos sat lites Na p gina designada por Satellite Data podem ser encontrados os dados gerados no programa Figura com a posi o dos sat lites do m dulo Interface S rie Na Figura 3 16 est 63 representada a p gina inicial O acesso a este conte do permitido para utilizadores do tipo administrador e geral GPS MONITORING STATION Home Receiver Rinex Logout a described below about the satellites in vie Total number of satellites in view 14 Satellite PRN Elevation in degrees 0 9 Azimuth in degrees SNR in dB Hz View current data Figura 3 16 P gina que permite aceder aos dados dos sat lites vis veis Na p gina s o apresentadas as caracter sticas que o utilizador encontra quando acede aos dados Estes s o apresentados na forma de uma figura com o azimute e eleva o em graus dos sat lites vis veis para a esta o e numa tabela onde para cada PRN de cada sat lite escrito o azimute elev
140. t 0 ii 2 receiver connected to serial port 1 4 Datum send to receiver a message to allow the administrator to change the Coordinated system To run Desktop it ac 12 dtm DTM argv1 argv2 a argv 93 i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 b argv2 string with three characters representing the ID of datum 1 5 Initialization allows the administrator of the station to send to receivers a message with some parameters for the initialization To run Desktop it ac 1 2 Initialization Initialize argv1 argv2 argv3 argv4 a argv1 i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 b argv2 baudrate port A 1 c argv3 baudrate port B 1 d argv4 memory reset code 1 6 Navigation Mode program to send for receivers a message with the navigation mode chosen It can be 2D or 3D mode To run Desktop it ac 12 Navigation Mode Navigation Mode argv1 argv2 a argv i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 argv2 i 2 2D mode ii 4 30 mode 7 Receiver ID send to receivers the message with ID RID To run Desktop it ac 12 Receiver_ID Receiver_ID argv a argv i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 8 Receiver Status send to receivers the message with ID PAR To run Desktop it ac 12 Recei
141. tained and these data were used in the position computation 3 symbols in the navigation message have not been synchronized 4 pseudo range measurement is not smoothed 5 reserved 6 a loss of lock has occurred on the code and or carrier phase of the satellite signal 7 reserved 8 a loss of continuity has occurred indicates the quality of the position measurement 0 measurement not available no additional data will be sent 21 the satellite is below the elevation mask 22 code and or carrier phase has been measured 23 code and or carrier phase has been measured and navigation messsage was obtained but measurements s not used to compute position 24 code and or carrier phase measured navigation message was obtained and measurement s used to compute position polarity 0 the satellite has just been locked 5 meaning the first frame of the navigation message has been found signal to noise measurement db Hz for the satellite referenced in PRN not used always zero full carrier phase measured in cycles of the satellite referenced in PRN raw range in seconds to the satellite referenced in PRN using the following formula receiver time transmitted time raw range doppler measurement 107 Hz for the satellite referenced in PRN bits 31 24 represent the amount of smoothing 0 unsmoothed 1 least smoothed 100 most smoothed bits 23 0 represent the magnitude of the correction in centimeters checksum to validate the message
142. teja realiza um decremento no terceiro membro do sem foro informando o sistema que existe um processo a ler dados do segmento de mem ria Antes de 23 efectuar a leitura obt m se o ndice de qual a estrutura a usar para efectuar a leitura dos dados e quando essa leitura finalizada o terceiro membro do sem foro incrementado para assim informar o sistema que aquele processo j n o est a ler dados do segmento de mem ria partilhada Na Figura 3 4 est representado um fluxograma com o uso do primeiro e terceiro membros do sem foro quando efectuada a escrita e leitura de dados no segmento de mem ria partilhada associado Escrita Leitura O y Obter o indice da estrutura para escrever dados Escrita dos dados no Decrementar terceiro membro do segmento de memoria sem foro processo vai ler dados correspondente da estrutura Esperar que o primeiro membro do sem foro esteja verde Colocar primeiro membro do semaforo a vermelho Obter o ndice da estrutura para realizar leitura dos dados Esperar para que todos OS processos parem a Realizar a leitura dos dados do leitura de dados segmento de memoria partilhada Trocar os ndices da estrutura e colocar primeiro membro do sem foro verde Incrementar terceiro membro do semaforo terminou a leitura dos dados Figura 3 4 Fluxograma com o uso dos sem foros na leitura e es
143. tir de um instante de refer ncia transforma o n mero da semana e os segundos da semana no formato RINEX para a escrita do tempo de refer ncia das efem rides O ciclo do programa infinito terminando com o envio do sinal SIGINT O programa ao receber este sinal antes de sair fecha os segmentos de memoria sem foros e ficheiros e Dados de observa o O programa Dados de observa o respons vel pela aquisi o dos dados necess rios escrita de um ficheiro RINEX do tipo observa o O nome do programa na directoria de trabalho Observation Data A estrutura geral do programa muito semelhante estrutura apresentada no programa Dados de navega o Tamb m aqui o administrador tem a op o de iniciar o programa na linha de comandos com dois argumentos que permite seleccionar um dos receptores No trabalho este programa usa os dois receptores A aquisi o de dados realizada recorrendo aos segmentos de mem ria partilhada preenchidos no programa Interface com os receptores Para gerar os dados necess rios preciso recorrer a mais do que uma mensagem S o usados ent o os dados das mensagens com identificadores MCA PBN e UKO Da mensagem MCA s o obtidos os dados propriamente ditos entre os quais pseudo range fase da portadora efeito de Doppler rela o sinal ru do e canal do receptor Estes par metros s o os campos de dados que comp em o ficheiro RINEX de observa o Para al m
144. to das mensagens especificadas anteriormente 8 2 2 2 Antena A antena uma parte importante para o sistema de receptores de GPS Ela recebe transforma um sinal de uma onda electromagn tica num sinal em radiofrequ ncia RF que cont m a amplitude e fase do sinal GPS Multi percurso e o ruido do receptor continuam a ser os dois principais obst culos do GPS para atingir precis es cada vez melhores 10 A fun o da antena no projecto permitir aos receptores GPS adquirirem os sinais vindos dos sat lites No topo da torre Norte do IST est o duas antenas iguais sendo identificadas pela sua localiza o Uma designada por antena Norte outra por antena Sul As antenas s o da marca NovAtel modelo 531 Na Figura 2 5 est representada uma das antenas da esta o de monitoriza o de GPS 4 Figura 2 5 Antena de GPS da esta o do IT O modelo usado de uma antena activa designada para operar na frequ ncia L1 1575 42 MHz A unidade est optimizada para receber sinais com polariza o circular direita e o seu diagrama de radia o foi moldado para reduzir os sinais de GPS provenientes de sat lites com baixos ngulos de eleva o Estas caracter sticas t m como objectivo diminuir os erros associados ao multi percurso e a interfer ncias electromagn ticas Na Figura 2 6 est representado o diagrama de radia o das antenas utilizadas no trabalho 11 15 5 18 5
145. tySO est a adquirir dados com a antena Sul A mesma interpreta o dever ser feita para o outro receptor idevittySO Antena Sul devittyS1 Antena Norte Figura 3 7 Ficheiro com a correspond ncia entre as antenas e a porta s rie 28 O outro ficheiro representado na Figura 3 8 tem na primeira linha as coordenadas X Y e 7 respectivamente no sistema WGS 84 World Geodetic Systema 1984 da antena Sul Na segunda linha est a posi o da antena Norte Estas coordenadas foram obtidas durante alguns dias de aquisi o de dados sendo depois realizada uma m dia das v rias componentes As posi es apresentadas na Figura 3 8 s o usadas no projecto como as posi es exactas sem erros das duas antenas 4918533 3200 791212 5720 3969758 4510 49185266680 791212 1150 3969767 1400 Figura 3 8 Ficheiro com a posi o exacta das duas antenas de GPS Para o administrador da esta o alterar os dois ficheiros basta iniciar o processo e aparecer na consola uma caixa de di logo com todos os passos necess rios para efectuar as modifica es Os ficheiros apresentados anteriormente s o tamb m usados noutros processos para por exemplo saber qual a posi o exacta da antena ligada ao receptor em causa Por existir entre processos uma partilha de informa o necess rio recorrer aos sem foros para a sua sincroniza o existindo no sistema dois sem foros um por ficheiro A estrutura dos s
146. u fecho o sem foro seja removido ou criado respectivamente Se tal acontecesse iria ocorrer um erro no programa Apesar de ser uma situa o improv vel este membro impede tais situa es de ocorrerem O segundo membro um contador para o n mero de processos que est o a usar o sem foro Isto permite que a remo o do sem foro do sistema o respectivo segmento de mem ria partilhada associado seja realizada pelo ltimo processo a fechar o sem foro O primeiro membro e o terceiro s o usados em conjunto quando realizada a leitura e escrita de dados nos segmentos de mem ria Para efectuar a escrita o processo obt m o ndice da estrutura onde devem ser escritos os dados j que a outra est a ser usada para leitura Ap s obter o indice escreve os dados no segmento de mem ria partilhada Enquanto este processo corre outros processos podem efectuar a leitura de dados Depois da escrita dos dados o processo coloca o primeiro membro do sem foro a vermelho para impedir a entrada de novos processos no segmento de leitura De seguida espera que todos os processos acabem a leitura de dados informa o obtida com o terceiro membro do sem foro e troca os ndices das duas estruturas para a leitura ser efectuada do segmento com os dados mais recentes O primeiro membro do sem foro colocado a verde Para realizar a leitura de dados o processo verifica primeiro se o primeiro membro est verde e assim que es
147. ue possibilitasse a determina o da posi o de um determinado ponto do globo terrestre em tr s dimens es Nesta altura tinha se como objectivos a cobertura global uma opera o cont nua e uma grande precis o nos resultados O primeiro sistema de posicionamento global teve a designa o de Transit e ficou operacional no ano de 1964 Apesar de ter sido usado em algumas plataformas o sistema possu a algumas limita es e n o cumpria os objectivos requeridos inicialmente Surgiram diversas variantes do sistema original Transit as quais permitiram obter conhecimentos teis para o desenvolvimento do GPS 1 Com o prop sito de atingir os objectivos descritos atr s em 1970 come ou o desenvolvimento de um sistema com o nome NAVSTAR Navigation Satellite with Time and Ranging GPS O primeiro tipo de sat lites lan ado tinha o nome de Block Ap s este seguiram lhe os sat lites dos tipos Block Il Block IIA Block IIR e Block IIR M Os pr ximos conjuntos de sat lites previstos ser o Block IIF e Block III 1 Oficialmente o sistema GPS foi declarado totalmente operacional em 1995 garantindo que pelo menos 24 dos sat lites em rbita estavam a funcionar correctamente 2 2 1 2 Conceitos do sistema e rbita dos sat lites Para garantir uma cobertura global os sat lites pertencentes constela o GPS foram colocados em seis rbitas planas a uma dist ncia pr xima de 20 200 km da Terra como pode ser visto na F
148. uma interface gr fica diminuindo assim o tempo total de processamento Para o seu inicio usada a fun o system Esta fun o permite atrav s de um execut vel em linguagem de programa o C executar um determinado comando como se este estivesse a ser escrito na linha de comandos Para gerar a figura com os dados do receptor ligado porta s rie O a fun o system tem o argumento e matlab nodesktop r status Plot 0 Associado execu o do Matlab existe um sem foro para garantir que a gera o da figura n o realizada simultaneamente com os dados dos dois receptores dado que poderia originar erros imprevistos Antes de ser invocada a fun o system verificado o valor do sem foro referido Se este tiver o valor O significando que est verde o processo em causa reserva o recurso colocando assim o sem foro com o valor 1 significando que est vermelho Quando o Matlab finaliza a sua execu o o valor do sem foro novamente colocado a 0 libertando assim o recurso A figura gerada guardada na directoria usr local apache2 htdocs site SatelliteData dentro do m dulo Interface Web Nesta interface para al m da figura apresentado tamb m uma tabela com os dados do ficheiro utilizado pelo Matlab Devido ao facto de a actualiza o dos dados ser autom tica necess rio garantir que quando um utilizador na Interface Web tenta aceder aos dados estes n o est o a ser escr
149. ver_Status Receiver argv a argv i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 9 Reset Values program that allows the administrator of the station to send a message with the objective of restart all values to their default numbers run Desktop it ac 12 Reset_Values Reset argv a argv 94 i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 10 Save Parameters allows the administrator to save current parameters run Desktop it ac 12 Save_Parameters Save argv1 argv2 argv i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 argv2 i 1 save current parameters ii 2 not save current parameters 11 Elevation Mask Angle send the message for receivers that allows the administrator of the station to set the mask angle To run Desktop it ac 12 Set_Mask_Angle Mask_Angle argv1 argv2 a argv i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 b argv2 value between 0 and 90 degrees mask angle 12 Wide Area program to send the message that enable or disable the reception of SBAS signals To run Desktop it ac 12 was WAS argv1 argv2 a argv i 1 receiver connected to serial port 0 ii 2 receiver connected to serial port 1 argv2 i 1 enable ii 2 disable 13 AC12 interface program responsible fo
150. zar as altera es necess rias e Ficheiros RINEX No m dulo Interface S rie s o gerados por hora quatro ficheiros no formato RINEX dois por cada receptor de GPS Existem dois tipos de ficheiro um de navega o com as efem rides e outro de observa o que inclui o pseudo range fase da portadora efeito de Doppler SNR e canal do receptor para cada sat lite ligado ao receptor em causa Na Figura 4 1 est apresentado uma parte de um ficheiro RINEX de navega o No ficheiro est o as efem rides de tr s sat lites com PRN 2 3 e 4 O cabe alho do ficheiro tem apenas a identifica o do formato RINEX e a data correspondente sua cria o 3 00 N G RINEX VERSION TYPE G GPS COMMENT ITRINEXN ISTIT 20100309 190000 UTC PGM RUN BY DATE END OF HEADER G02 2010 03 09 18 00 00 234582927078D 03 386535248253D 11 000000000000 01 290000000000D 02 1368750000000 02 537129496436D 08 825881912337D 00 694766640663D 06 940706476104D 02 619702041149D 05 515378135300D 04 237600000000D 06 126659870148D 06 732424134005D 00 689178705215 07 940251556017D 00 2481250000000 03 298332486284D 01 839963565369D 08 285726182297D 10 157400000000 04 200000000000 01 000000000000 01 172294676304D 07 290000000000 02 999900000000D 09 400000000000 01 2010 03 09 12 00 00 525780022144D 03 511590769747D 11 000000000000D 01 630000000000D 02 222187500000D 02 525879029212D 08 245344573653D 01 1331791

Download Pdf Manuals

image

Related Search

Related Contents

  Introducción al NycoCard® READER II Descripción del NycoCard  JOB DATING FPRESSE23  Receptor de sonido envolvente AV  VS 930 MAXI  MWS5 product guide  LYNGBY Matlab toolbox for functional neuroimaging analysis  

Copyright © All rights reserved.
Failed to retrieve file