GPCode SOFTWARE DIDÁTICO PARA CALCULAR OBSERVAÇÕES GPS Eduardo de Paula Miranda Antonio Simões Silva Carlos de Castro Goulart Universidade Federal de Viçosa Departamento de Engenharia Civil Viçosa MG 36570-000 simoesufv@gmailcom RESUMO Este artigo mostra a implementação de software para uso em tarefas de ensino Pretende-se mostrar para o aprendiz todo o caminho de calcular a posição de um satélite GPS e a posição de um ponto terrestre Os softwares comerciais disponíveis não têm preocupação com o cálculo intermediário de posicionamento, utilizando técnicas de GPS, por causa disso o aluno frequentemente ver um software de GPS como uma caixa preta, com um comando de entrada e um relatório de saída Este software utiliza o código para o calculo das pseudodistâncias e arquivos RINEX Os elementos keplerianos são usados para calcular a posição do satélite e abordagem dos mínimos quadrados é usado para o posicionamento da estação terrestre O software permite que o aprendiz veja passo a passo todo o caminho das transformações É permitido escolher o número de satélites e a quantidade de épocas para se processar O software usa o processamento relativo e mostra as matrizes que se formam durante as fases do ajustamento Este artigo mostra algumas janelas e exemplo de cálculo de coordenadas Palavras chaves: software, GPS, ensino ABSTRACT This paper shows the implementation of software for using in teaching tasks It intends to show for the apprentice all the way of calculating the position of a GPS satellite and the position of a terrestrial point The commercial available software have not concern with the intermediate calculation of positioning by using GPS techniques, because of that the student frequently see a GPS software like a black box, with one input command and one output report This software uses the traditional pseudorange code and RINEX files The Keplerian elements are used for computing the satellite position and least squares approach is used for positioning the terrestrial station The software allowed the apprentice see step by steps all the way of processing It is allowed to choose the number of satellites and the quantity of epochs The software uses the relative processing and shows the matrices that are formed during the adjustment phases This paper shows some windows and example of coordinates computing Keywords: software, GPS, teaching 1 INTRODUÇÃO Este trabalho implementa o algoritmo necessário à estimativa das coordenadas orbitais dos satélites pertencentes ao sistema GPS e as transformações destas para um sistema de coordenadas terrestres, relatando os seus principais cálculos Após obter as coordenadas dos satélites pode-se obter então a posição de um ponto ou estação rastreada A grande variedade existente de equipamentos, se enfocado o aspecto da integração dos dados, poderia ser entendido como um complicador para a atividade de posicionamento, visto que os formatos de cada fabricante teriam de ser conhecidos pela comunidade de usuários Esta dificuldade foi eliminada com o aparecimento do formato de dados conhecido por RINEX ( Receiver Independent Exchange Format ) Desta forma, foi estabelecido que, para total 828
independência de fabricante, a implementação do software utiliza dados no formato RINEX 2 MODELO MATEMÁTICO UTILIZADO Os satélites do GPS usam dois principais tipos de observáveis para enviar as informações necessárias ao cálculo das coordenadas de um ponto Essas observáveis são as pseudodistâncias calculadas pela diferença de fase e pseudodistâncias calculadas a partir do código Esta última tem um processamento mais simples e é um tipo de informação que é rastreada por todos os receptores GPS Neste projeto foi usado o código para o cálculo das pseudodistâncias utilizando as fórmulas já consagradas neste procedimento e descritas em MONICO (2008) Inicialmente calcula-se a atualização dos elementos keplerianos que permitem calcular a posição dos satélites Em seguida calculam-se as posições dos satélites e posteriormente são feitos os cálculos para se obter a posição do ponto Na determinação das coordenadas através dos satélites do GPS foi usado o método estático com posicionamento relativo empregando o código para as observações O cálculo das coordenadas do satélite é realizado no sistema WGS-84 a partir das mensagens de navegação As formulas para os cálculos usados no programa são bem conhecidas nos livros textos de Geodesia Espacial, nos quais tem-se todos os passos para os cálculos realizados no programa Seguindo os passos descritos obtemos as coordenadas de um determinado satélite no sistema WGS-84 Tendo calculado as coordenadas para pelo menos quatro satélites, as coordenadas do ponto ou estação rastreada também podem ser obtidas tanto em coordenadas cartesianas quanto em coordenadas geodésicas 21 Formato RINEX O formato Receiver INdependent EXchange (RINEX) foi desenvolvido pelo Astronomical Institute of the University of Berne com o propósito de facilitar o intercâmbio dos dados coletados na campanha EUREF 89, que envolveu mais de 60 receptores GPS provenientes de 4 diferentes fabricantes (GURTNER, 2007) Esta padronização tornou-se necessária, devido aos distintos formatos e programas para o processamento dos dados obtidos nos diversos tipos de receptores A segunda versão do RINEX foi publicada em 1990 e, posteriormente, sofreu algumas pequenas revisões Atualmente, o formato RINEX é o mais utilizado pela comunidade internacional de usuários e fabricantes de receptores O formato RINEX consiste de três arquivos do tipo ASCII: dados de observação, mensagem de navegação e dados meteorológicos Estes arquivos contêm um cabeçalho, com informações gerais sobre o arquivo, e uma seção de dados Os arquivos de observação e meteorológicos contêm dados para uma determinada estação e sessão, enquanto que os arquivos de navegação fornecem parâmetros orbitais, coeficientes para a correção ionosférica, informações sobre os satélites e sinais por estes transmitidos Cada arquivo consiste de um cabeçalho e de uma seção de dados O cabeçalho contém informações globais de todo o arquivo e é localizado no início do arquivo O cabeçalho possui a descrição do cabeçalho a partir da coluna 61 até a coluna 80 para cada linha do cabeçalho Estas descrições são obrigatórias e devem ser exatamente como apresentados na documentação (GURTNER, 2007) O aplicativo desenvolvido utiliza apenas os arquivos de Navegação e Observação Uma descrição completa dos arquivos de dados no formato RINEX pode ser obtida em ftp://ftpunibech/aiub/rinex 22 Linguagem de programação GPCode foi desenvolvido utilizando o IDE (Integrated Development Environment Ambiente de Desenvolvimento Integrado) Microsoft Visual Studio Microsoft Visual Studio é uma poderosa IDE que garante código de qualidade durante todo o ciclo de 829
vida da aplicação, desde a concepção até a implantação, além de oferecer ferramentas que possibilitam aos desenvolvedores e demais participantes do processo de desenvolvimento criar rapidamente software utilizando as mais recentes tecnologias Microsoft Integrado ao processo de desenvolvimento dentro do Visual Studio encontra-se o Net Framework ONET Framework é distribuído em conjunto com o Sistema Operacional Windows e é o modelo de programação completo e consistente da Microsoft para a criação de aplicativos que oferecem uma experiência visualmente surpreendente aos usuários, comunicação segura e sem interferências e a capacidade de modelar uma variedade de processos de negócios (Microsoft) O Departamento de Informática da Universidade Federal de Viçosa estimula aos estudantes a aprenderem a linguagem C++ através das aulas práticas e projetos desenvolvidos dentro das disciplinas Com o intuito de reduzir a curva de aprendizagem de uma nova linguagem, foi escolhido a linguagem Visual C++ que é uma das possíveis linguagens de desenvolvimento oferecidos pelo Visual Studio Visual C++ Possui a mesma sintaxe do C++ porém com adição de recursos do NET Framework 3 REQUISITOS DO SISTEMA Sistemas Operacionais com Suporte: Windows Server 2003; Windows Server 2008; Windows XP; Windows Vista; Windows 7 Arquiteturas com suporte: 32 bits (x86) 64 bits (x64) Requisitos de hardware : Pentium de 400 MHz ou equivalente (Mínimo); Pentium de 1GHz ou equivalente (Recomendado) com 512 MB de RAM ou mais Requisitos de espaço em disco: Necessário um espaço disponível de 15Mb Requisitos do Sistema Operacional : Navegador de internet previamente instalado (Internet Explorer 501 ou superior é preferencial) e Net Framework 35 ou superior (MIRANDA, 2011) 4 USO DO PROGRAMA Inicialmente o usuário é apresentado a janela principal mostrada na figura 1 No menu principal o usuário possui fácil acesso as principais funções do aplicativo Figura 1 Janela principal 830
Para efetuar os cálculos, o usuário deve entrar com os arquivos de navegação e observação Para isto, basta clicar na opção Arquivo de Dados localizada no canto esquerdo da barra de opções ou accesar Arquivo Arquivo de Dados no menu principal Clicando no botão Procurar uma nova janela será aberta permitindo a seleção do Arquivo de Navegação como mostrado nas figuras 2 e 3 (MIRANDA, 2011) Figura 2 Procura arquivos de dados Figura 3 Arquivos de dados 831
Arquivos que não podem ser lidos por não estarem de acordo com o formato RINEX são informados ao usuário através da mensagem da figura 4 Figura 3 Arquivo não lido 41 Cálculos Parciais Após a seleção do Arquivo de Navegação e junto o Arquivo de Observação o usuário tem acesso a outras funções do aplicativo Uma das opções é o Cálculos Parciais que permite ao usuário visualizar cálculos intermediários ao cálculo das Coordenadas dos Satélites Primeiro o usuário precisa selecionar sobre qual época ele deseja o resultado dos cálculos e para isto ele tem 2 opções Pode selecionar no campo Data o dia da observação e o campo Hora é automaticamente preenchido com os horários das observações existentes no arquivo para o dia selecionado ou pode ir diretamente ao campo época que permite a seleção de qualquer época existente no arquivo Após a seleção da época o campo Satélites é automaticamente preenchido com os satélites que possuem observações para a época selecionada e o usuário pode selecionar os satélites que ele deseja visualizar o resultado dos cálculos No canto direito o usuário pode selecionar qual etapa do cálculo ele deseja visualizar e o resultado é imediatamente listado na tabela abaixo ao menu de seleção 832
Figura 4 Janela que mostra os cálculos parciais Uma outra opção é a janela Dados Referentes ao seleção da época, no entanto como as informações são Satélite que permite ao usuário visualizar parâmetros específicas de um único satélite ele precisa selecionar o orbitais, coeficientes para a correção ionosférica, satélite ao qual deseja obter as informações Após a informações sobre os satélites e sinais provenientes do seleção da época as tabelas com as informações do Arquivo de Navegação Como na janela Cálculos satélite são automaticamente preenchidas como mostra Parciais o usuário possui as mesmas 2 opções de afigura 5 Figura 5 Informações da mensagem de navegação para o satélite escolhido 833
A janela Coordenadas do Satélite, figura 6, exibe apenas algumas das variáveis que são possíveis visualizar na janela Dados Referentes ao Satélite No entanto a janela Coordenadas do Satélite permite a gravação das coordenadas (X, Y, Z) do satélite que podem ser usadas para futuras comparações em outra função do aplicativo Figura 6 Coordenadas do satélite O programa está apto também a calcular as coordenadas do ponto no terreno usando o posicionamento relativo com a observável código A janela da figura 7 mostra essa opção É também possível ver a os resultados detalhados através dum relatório gerado em HTML, figura 8, de fácil leitura 834
Figura 7 Posicionamento relativo Figura 8 Relatório HTML 835
5 BIBLIOGRAFIA GURTNER, W ;2007 RINEX The Receiver Independent Exchange Format Version 300 MIRANDA, E P 2011 GPCode Software didático para computação GPS Monografia de Graduação do Curso de Ciência da Computação Universidade Federal de Viçosa Viçosa MG MONICO, JFG:2008 Posicionamento pelo GNSS: Descrição, Fundamentos e Aplicações 2ed São Paulo: UNESP, 2008 836