Artigo TCC-SI-2013

33
SISTEMA DE RASTREAMENTO(12 / 2013) Artigo . NANI, Matheus Ernesto. Sistemas de Informação (Unianchieta). Analista de Sistemas Araymond Brasil, Rua Comendador João Lucas, 555, Distrito Industrial, Vinhedo SP, CEP 13280-000, 0xx19 3836-6900, [email protected] TOFANINI, Cesar Tegani. Especialista em Formação em Educação a Distância pela Universidade Paulista - UNIP (2011). Graduado em Engenharia de Computação pela Universidade São Francisco (2004). Professor do Centro Universitário Padre Anchieta. Campus Prof. Pedro C. Fornari. Av. Dr. Adoniro Ladeira, 94, Jundiaí SP, CEP 13210-800, 0xx11 4588-4445, [email protected].

Transcript of Artigo TCC-SI-2013

Page 1: Artigo TCC-SI-2013

SISTEMA DE RASTREAMENTO(12 / 2013)

Artigo

.

NANI, Matheus Ernesto. Sistemas de Informação (Unianchieta). Analista de

Sistemas Araymond Brasil, Rua Comendador João Lucas, 555, Distrito Industrial,

Vinhedo – SP, CEP 13280-000, 0xx19 3836-6900, [email protected]

TOFANINI, Cesar Tegani. Especialista em Formação em Educação a Distância

pela Universidade Paulista - UNIP (2011). Graduado em Engenharia de Computação

pela Universidade São Francisco (2004). Professor do Centro Universitário Padre

Anchieta. Campus Prof. Pedro C. Fornari. Av. Dr. Adoniro Ladeira, 94, Jundiaí – SP,

CEP 13210-800, 0xx11 4588-4445, [email protected].

Page 2: Artigo TCC-SI-2013

2

SISTEMA DE RASTREAMENTO

Matheus Ernesto Nani1

César TeganiTofanini 2

RESUMO

Este trabalho pretende demonstrar a utilização de um sistema de rastreamento, que

pode ser utilizado na fase de desenvolvimento de produtos de localização geográfica.

A análise desse sistema permite apresentar vantagens e desvantagens do produto, e

também auxiliar a equipe de desenvolvimento na melhoria de novas funcionalidades e

ajustes finos no funcionamento do equipamento.

Palavras-Chave: localização geográfica, desenvolvimento, sistema de rastreamento.

ABSTRACT

This work aims to demonstrate the use of a tracking system that can be used during

product development to geographic location. The analysis of this system allows us to present

the advantages and disadvantages of the product, and assist the development team in

enhancing new features and fine-tuning the operation of the equipment.

Keywords: geographical location, development, tracking system.

1 Sistemas de Informação (UNIANCHIETA). Analista de Sistemas A.Raymond Brasil.

2 Especialista em formação em educação à distância (UNIP) e Engenheiro da Computação

(USF). Professor de cursos de Graduação do Centro Universitário Padre Anchieta.

Page 3: Artigo TCC-SI-2013

3

INTRODUÇÃO

Um sistema de rastreamento é a forma mais fácil e segura de monitorar frotas,

cargas e até mesmo veículos particulares que irão percorrer longos caminhos,

investir em segurança nunca é demais.

Como a Internet, o GPS é um elemento essencial da infraestrutura global de

informação. A natureza livre, aberta e segura do GPS levou ao desenvolvimento de

centenas de aplicações que afetam todos os aspectos da vida moderna. A

tecnologia GPS agora está em tudo, desde telefones celulares e relógios de pulso

até em tratores, contêineres e caixas eletrônicos(U.S Government information about

GPS, 2013).

O GPS aumenta a produtividade através de uma ampla faixa de economia,

para incluir a agricultura, construção, mineração, topografia, entrega de pacotes e

gerenciamento logístico das cadeias de suprimentos. Grandes redes de

comunicação, sistemas bancários, mercados financeiros e redes de energia

dependem fortemente do GPS para sincronização de tempo preciso. Alguns

sistemas sem fio não podem funcionar sem ele (U.S Government information about

GPS, 2013).

O GPS salva vidas pela prevenção de acidentes de transportes, auxiliando os

esforços de busca e salvamento, e acelerar a entrega de serviços de emergência e

socorro. O GPS visa também avanços científicos, como previsão do tempo,

monitoramento de terremotos, e proteção ambiental. Algumas das outras aplicações

do sistema GPS são: agricultura, aviação, marinha, segurança pública, transportes

sobre trilhos, estradas e rodovias, pesquisas espaciais, mapeamentos e localização.

Page 4: Artigo TCC-SI-2013

4

Esse trabalho consiste no desenvolvimento de um sistema de rastreamento,

cujo principal objetivo é proporcionar a equipe de desenvolvimento e a futuros

compradores uma maneira simples de verificar o funcionamento do aparelho em

desenvolvimento. Verificar a velocidade de envio e resposta de mensagens,

precisão de posicionamento, velocidade de conexão com o servidor e tempo de

duração da bateria de backup ( Fonte de alimentação externa ao aparelho rastreador

que em caso de falha de energia é acionada para que a peça consiga se conectar a

rede).

Aqui está apenas uma pequena amostra de aplicações GPS existente. Novos

usos de GPS são inventados todos os dias e são limitados apenas pela imaginação

humana (U.S Government information about GPS, 2013) .

GPS (Global Positioning System)

O Sistema de Posicionamento Global (GPS) é um utilitário de propriedade

americana que fornece aos usuários os serviços de posicionamento, navegação e

tempo. Este sistema é composto por três segmentos: O segmento espacial, o

segmento de controle e o segmento do utilizador. A Força Aérea dos EUA

desenvolve, mantém e opera nos segmentos de espaço e controle (U.S Government

information about GPS, 2013).

O segmento espacial consiste de uma constelação de satélites que transmitem

sinais de rádio para os utilizadores. A Força Aérea gere a constelação para garantir

a disponibilidade de pelo menos 24 satélites GPS, 95% do tempo. Nos últimos anos,

a Força Aérea tem controlado 31 satélites GPS operacionais, além de satélites

desativados 3-4 (“resíduos”) que podem ser reativados, se necessário (U.S

Government information about GPS, 2013).

Page 5: Artigo TCC-SI-2013

5

O segmento de controle GPS é constituído por uma rede global de instalações

terrestres que rastreiam os satélites GPS, para monitorar suas transmissões, realizar

análises e enviar comandos de dados para a constelação. O segmento atual de

controle operacional inclui uma instalação de controle mestre, uma instalação de

controle mestre alternativa, 12 comandos de antenas de controle e 16 locais de

monitoramento. Os locais das instalações estão mostrados no mapa abaixo (U.S

Government information about GPS, 2013).

Figura 1 – Mapa de controle GPS.(U.S Government Information, 2013)

Em cada ponto da Terra estão sempre visíveis quatro satélites, e com os

diferentes sinais desses quatro satélites o receptor GPS calcula a latitude, longitude

e altitude do lugar onde se encontra (Dilão, 2005).

Page 6: Artigo TCC-SI-2013

6

Sistemas de Coordenadas Geográficas

Existem pelo menos quatro modos de designar uma localização exata para

qualquer ponto do globo terrestre sendo eles:

Graus - Minutos – Segundos

Neste sistema, cada grau é dividido em 60 minutos, que por sua vez se

subdividem, cada um, em 60 segundos. A partir daí, os segundos podem

ser divididos em frações cada vez menores.

Grau - Minutos Decimais

Neste sistema, cada grau é dividido em 60 minutos, que por sua vez são

divididos decimalmente. O Aparelho em questão utiliza as coordenadas em Grau,

Minutos decimais sendo: 30º01,992’S e 51º14,117’W.

Grau – Decimal

Neste sistema, cada grau é dividido em frações decimais. A forma de

nomeação difere um pouco dos dois primeiros sistemas: a latitude recebe a

abreviatura lat e a longitude, lon e existem valores positivos e negativos conforme

figura a baixo: ( Corrêa, 2009).

Page 7: Artigo TCC-SI-2013

7

Figura 2 - Latitudes e Longitudes em cada hemisfério (Wikipédia, 2012).

Tecnologia

A aplicação funciona com base nas informações recebidas de um equipamento

rastreador que trabalha com tecnologia GPS, e transmissão de dados GPRS/GSM.

Para tal foi criado um protocolo para estabelecer de forma padronizada a

comunicação entre servidor e cliente, onde cada lado sabe o que pode ou não ser

enviado e recebido.

O GSM (Global System for Mobile Communications) foi inicialmente

desenvolvido para integrar o sistema de comunicação móvel da Europa. A promessa

era prover mais que um sistema integrado de comunicações. Ele traria uma série de

serviços utilizando Redes Digitais de Serviços Integrados (RDSI ou ISDN –

Integrated Services Digital Network)

O GPRS (General packet radio service) é uma tecnologia que aumenta as

taxas de transferência de dados nas redes GSM existentes. Essa permite o

transporte de dados por pacotes. Sendo o GPRS um serviço “sempre ativo” por ter

seus pacotes trafegando entre sua rede e redes TCP/IP, ele dá as operadoras a

possibilidade de oferecer a seus clientes um excelente acesso a Internet a um custo

plausível, e ainda tarifar pela quantidade de dados transferidos e não somente pelo

tempo de conexão ( 4g Americas, 2007, Magalhães, 2005).

DESENVOLVIMENTO SERVIDOR

O sistema desenvolvido para a empresa trabalha com comunicação socket,

que funciona como um ponto de conexão entre a camada de aplicação e a de

transporte TCP ( TransmissionControlProtocol ) ou UDP ( UserDatagramProtocol ).

Page 8: Artigo TCC-SI-2013

8

O servidor socket é responsável por aceitar e gerenciar todas as Threads de

conexões, cada nova conexão que é aceita, é armazenada em uma lista que será

utilizada posteriormente para o envio de comandos, tratamento do protocolo e

também para encerar cada um delas. Ele implementa de forma parcial o modelo

OSI-ISO e sua principal característica é dividir as funcionalidades (que ele chama de

serviços) necessárias á comunicação em camadas, dividindo assim as

responsabilidades e permitindo que uma certa camada possa ter diferentes

implementações (com diferentes tecnologias), mas ainda assim mantendo a sua

compatibilidade(NUMES, 2001). A linguagem Java oferece ambas as camadas de

transporte conhecidas como modo orientado à conexão para TCP e modo orientado

a datagrama para UDP, os dois modos funcionam sobre o protocolo IP (Internet

Protocol). O funcionamento do servidor segue conforme APÊNDICE A.

JAVA

Linguagem de programação multiplataformas que utiliza o conceito de máquina

virtual, onde existe, entre o sistema operacional e a aplicação, uma camada extra

responsável por “traduzir” – mas não apenas isso – o que sua aplicação deseja fazer

para as respectivas chamadas do sistema operacional. Os programas Java podem

ser executados em qualquer sistema operacional, desde que a Java Virtual Machine

esteja instalada.

O servidor foi desenvolvido em cima do modo orientado a conexões por

questão de segurança, que apesar de ser mais lento proporciona uma confirmação

fim-a-fim essencial a este tipo de aplicação, ou seja, a camada de transporte não se

comunica com máquinas (aparelhos) intermediárias na rede.

Page 9: Artigo TCC-SI-2013

9

Conforme figura abaixo ambos os tipos de sockets possuem vantagens e

desvantagens,

Figura 3 –Vantagens e desvantagens sockets (Nunes, 2012).

CONEXÃO

O processo de comunicação no modo orientado a conexões funciona da

seguinte forma: O servidor socket é inicializado com uma determinada porta, e fica

“escutando”, esperando por um cliente através do método accept da ServerSocket.

O cliente por sua vez deve ser configurado com a mesma porta que o servidor, para

saber com quem ele deve se comunicar e fazer uma requisição de conexão,

conforme a imagem:

Figura 4 - Servidor socket aguardando conexão (Nunes, 2012).

Page 10: Artigo TCC-SI-2013

10

1. Criando uma conexão socket

O servidor tem o comportamento de ficar em um loop aguardando novas

conexões, e gerando novos sockets para atender as solicitações dos clientes.

Também é preciso que o servidor seja capaz de receber inúmeras conexões

simultâneas, um serviço para cada cliente conectado. Por isso a utilização de

Threads é imprescindível. A aplicação cria um Thread para cada nova conexão,

assim tornando possível o recebimento e envio para diversos aparelhos.

Para que seja possível executar inúmeras tarefas “simultâneas” em um único

processador, entra em cena o escalonador de Threads, que é o responsável por

escolher qual a próxima Thread a ser executada, e fazer a troca de contexto. Ele

primeiro salva o estado da execução da Thread atual para depois poder retornar a

execução da mesma. Então ele restaura o estado da Thread que vai ser executada

e faz com que o processador continue a execução desta. A troca de contexto é

justamente as operações de salvar o contexto da Thread atual e restaurar o da

Thread que vai ser executada em seguida. O escalonador pega todas as Threads

// CRIA UM SERVIDOR SOCKET

ServerSocket servidor = null;

Socket conexão = null;

servidor = new ServerSocket(porta);

while (existirConexao) {

// ACEITA CONEXÃO REQUISITADA PELO CLIENTE.

conexao = servidor.accept();

}

}

}

Page 11: Artigo TCC-SI-2013

11

que precisam ser executadas e faz com que o processador fique alternando a

execução de cada uma delas.

As Threads são processos paralelos que são executados aos poucos, uma de

cada vez, o processamento é tão rápido que as aplicações parecem ser executadas

juntas.

RECEBENDO MENSAGENS

Se nem um problema ocorrer, o servidor aceita a conexão gerando um socket

em uma porta qualquer do lado servidor, criando assim um canal de conexão entre o

servidor e o cliente, conforme imagem:

Figura 5 – Fluxo servidor socket conexão aceita (Nunes, 2012).

Para que seja capaz a captura dos dados do cliente, é preciso criar uma

Stream de dados, que pode ser definida como um caminho lógico representando o

fluxo de dados entre a fonte e o destino. Para obter informações, uma aplicação

abre uma Stream e lê sequencialmente (Stream de leitura de dados). As classes

java.io.InputStream e java.io.OutputStream são as responsáveis pela criação de

Stream de escrita e leitura, respectivamente.

Page 12: Artigo TCC-SI-2013

12

Sempre que um socket é criado já existem as streams associadas a ele. E para

obter a referência a elas devemos utilizar os métodos getOutputStream() e

getInputStream() (TRINDADE, 2003, CAELUM, 2013, GOMES,2004 ).

Existem diversas streams tais como stream de Objetos e stream de arquivos

nesse caso o servidor utiliza a stream de bytes.

2. Criando uma stream de leitura de dados.

ENVIO DE MENSAGENS

Da mesma forma que precisamos criar uma stream de entrada de dados

(leitura) é necessário criar uma stream de saída de dados (escrita), para enviar

informações à aplicação abre uma stream para um destino e escreve

sequencialmente.

Entretanto existe uma particularidade no envio de mensagens, onde para

escrever uma String necessariamente precisamos converter a String que desejamos

em um Array de bytes.

//CRIA UMA STREAM DE ENTRADA DE DADOS

entrada = new Scanner(cliente.getInputStream());

//ENQUANTO HOUVER INFORMAÇÃO LÊ

while (entrada.hasNext()) {

msgRecebida = entrada.nextLine();

System.out.println(msgRecebida);

}

}

}

Page 13: Artigo TCC-SI-2013

13

Felizmente na API Java existem métodos para realizar essas transformações.

Figura 6 – Envio de mensagens com socket TCP.

PROTOCOLO

É definido como um acordo que específica o formato e o significado das

mensagens a trocar numa rede. De maneira simples um protocolo pode ser definido

como conjunto de regras-padrão que caracterizam o formato a sintaxe, semântica e

sincronização da comunicação. Os protocolos podem ser implementados pelo

hardware, software ou por combinação dos dois (Sérgio, 2004, Infopédia 2010).

O sistema trabalha com o protocolo desenvolvido pela empresa Cliptech a qual

solicitou o desenvolvimento do sistema em questão, e contém mais de cinquenta

Page 14: Artigo TCC-SI-2013

14

mensagens distintas. O servidor consiste em receber todos os dados em uma string

tais como, identificação do aparelho, hora de envio, latitude, longitude e checksum

(consiste na transmissão de todas as palavras juntamente com o resultado da soma

binária. No receptor (servidor), as palavras são novamente somadas e comparadas

com o checksum recebido. Se qualquer um dos dados transmitidos, incluindo o

checksum, sofrerem algum erro, a soma do novo checksum com o checksum

recebido é 1.) Entre outras informações. Um exemplo de mensagens recebidas do

rastreador é: Msg: SRMA,Dt:01234567,OK,07,OF,End.

Para que fosse possível o tratamento de todas as mensagens disponíveis, foi

desenvolvida a classe Protocolo.java que é responsável por tratar todas as

mensagens. Existem outras três classes que compõem a classe Protocolo que são,

ProtocoloConfiguracao.java, ProtocoloPadrao.java e ProtocoloStatus.java elas são

responsáveis por receber os valores já tratados e serem utilizados posteriormente

conforme o APÊNDICE B.

A classe utiliza o método Split() que divide a String em um array de Strings,

uma vez que o caractere de separação é a ‘ , ’.

1. Dividindo String recebida.

//DIVIDINDO A STRING

String parteProtocolo [ ];

String Delimitador = “, ”;

If(msgRecebida != null) {

parteProtocolo = msgRecebida.split(delimitador);

}

Page 15: Artigo TCC-SI-2013

15

BANCO DE DADOS

O sistema utiliza o banco de dados MySql, responsável por armazenar todas as

informações que foram anteriormente tratadas pelo servidor, o sistema é composto

por 4 tabelas conforme APÊNDICE C. O MySql foi desenvolvido pela TCX em 1996

e é mantido atualmente pela Oracle. Eles criaram-no porque precisavam de um

banco de dados relacional que pudesse tratar grandes quantidades de dados em

máquinas de custo relativamente barato.

É um dos bancos de dados relacionais mais rápidos do mercado e apresenta

quase todas as funcionalidades dos grandes bancos de dados. O servidor Mysql foi

desenvolvido originalmente para lidar com bancos de dados muito grandes de

maneira muito mais rápida que as soluções existentes, e tem sido usado em

ambientes de produção de alta demanda por diversos anos de maneira bem-

sucedida (Almeida,2012).

Características

Multi-plataforma, portanto, suporta diferentes plataformas: Win32, Linux,

FreeBSD e Unix;

Suporta múltiplos processadores;

Um sofisticado sistema de senhas criptografadas flexível e seguro;

Suporta até 16 índices por tabela;

O cliente conecta no MySQL através de conexões TCP/IP;

Capacidade de manipular bancos com até 50 milhões de registros.

(MYSQL, 2013)

O servidor Java cria apenas uma tabela, a qual fica responsável por armazenar

todas as informações de todos os rastreadores.

Page 16: Artigo TCC-SI-2013

16

SISTEMA DE MONITORAMENTO

O sistema oferece aos usuários uma forma interativa de verificar cada

aparelho, um site que pode ser acessado de qualquer aparelho que tenha acesso a

internet conforme APÊNDICE D que demonstra o funcionamento básico do site.

Figura 7 – Tela de login site de monitoramento.

Os usuários ou administrador podem realizar o acesso pelo site, o administrador ao

ser autenticado no sistema, terá mais privilégios que determinados clientes, o nível

de acesso pode ser alterado apenas pelo administrador.

Figura 8 – Tela principal de monitoramento.

Page 17: Artigo TCC-SI-2013

17

A tela principal é onde o usuário poderá escolher qual aparelho deseja monitorar e

tomar ações se necessário, o usuário também pode escolher uma das opções no

menu que são descritos abaixo:.

Figura 9 – Tela alteração de perfil.

A tela perfil é onde o usuário poderá alterar seus dados de cadastro tais como nome,

e-mail e senha de acesso.

Figura 10 – Tela de Histórico.

Page 18: Artigo TCC-SI-2013

18

A tela de histórico é onde o usuário poderá filtrar o período desejado, informando a

data no centro superior, para que seja traçada a rota feita pelo aparelho.

.

Figura 11 – Tela cadastro de novos usuários e rastreadores.

A tela Gerenciar Usuários apenas o administrador do sistema tem acesso, ele pode

adicionar novos clientes, alterar cliente já existentes ou excluir, o mesmo para os

rastreadores vinculados a cada cliente.

Figura 11 – Tela de envio de comandos.

Page 19: Artigo TCC-SI-2013

19

Na tela de comando os usuários ou administrador podem escolher qual comando

desejam enviar selecionando uma opção rápida (checkbox) ou no campo “Comando

Manual” onde pode ser inserido um comando digitado com a configuração desejada.

Também é possível criar cercas geográficas clicando com o botão direito do mouse

sobre o mapa e selecionando a opção “Nova Cerca”.

Figura 12 – Criando cerca Geográfica.

Figura 13 – Adicionando nova cerca geográfica.

Page 20: Artigo TCC-SI-2013

20

CERCA GEOGRÁFICA

É um recurso em um programa ou software que utiliza o sistema de

posicionamento global (GPS) ou identificação por radiofrequência (RFID) para definir

os limites geográficos. Uma área demarcada é uma barreira virtual (Rouse, 2013).

ENVIANDO COMANDOS PELA APLICAÇÃO WEB

Para poder enviar informações do site para a peça, é preciso criar uma ponte

entre a aplicação web e o servidor Java, a aplicação web chama o método Java que

é responsável por enviar mensagens para o cliente. Para que isso fosse possível foi

utilizada a biblioteca Php/JavaBridge que é uma implementação de um protocolo de

streaming de rede baseada em XML, que pode ser utilizada para conectar um

mecanismo de script nativo, por exemplo, PHP e Python, com uma máquina virtual

Java. É mais rápido e mais confiável do que a comunicação direta através da Java

Native Interface (interface de programação padrão para escrever métodos nativos e

incorporar a máquina virtual), e não necessita de componentes adicionais para

invocar procedimentos Java a partir do PHP ou procedimentos PHP do Java

(php/JavaBridge, 2013).

API GOOGLE MAPS

A API do Google Maps é um serviço gratuito que permite incorporar o Google

Maps a suas páginas web ou aplicativos móveis de modo livremente acessível.

Regras Gerais

Acesso gratuito (sem taxas). Mapas implementados pela API devem ser

geralmente acessíveis aos usuários, sem custo e não deve exigir uma assinatura em

taxa ou outro acesso restrito com base em taxas. Esta regra aplica-se ao seu

conteúdo e qualquer outro conteúdo na sua implementação API do Google Maps.

Page 21: Artigo TCC-SI-2013

21

Acesso público (sem Firewall). Sua implementação API Google Maps não deve

funcionar apenas atrás de um firewall, ou apenas em uma rede interna (exceto

durante a fase de desenvolvimento e testes), ou em uma comunidade fechada, por

exemplo, acessar apenas através de convites (GOOGLE, 2013).

Recursos

Figura 14 – Recursos API Google Maps (Google, 2013).

Page 22: Artigo TCC-SI-2013

22

CONCLUSÕES

Dentro do tempo estabelecido e das dificuldades encontradas, o projeto teve

um resultado satisfatório. O objetivo era criar uma aplicação que fosse capaz de

receber uma boa quantidade de conexões e proporcionar a equipe de

desenvolvimento do produto e aos futuros compradores uma interface de alto nível e

que pudesse ser acessada de qualquer lugar, com histórico de rotas, envio de

comandos, gerenciamento de administrador e a criação de cercas geográficas; esse

objetivo foi cumprido.

O desenvolvimento do projeto proporcionou um maior avanço de

conhecimento de programação orientada a objetos e também no gerenciamento de

serviços executados em um computador, operando threads. Também foi

imprescindível conhecer e aprender sobre cálculos de transformações de

coordenadas geográficas, velocidade, números hexadecimais e binários. O

conhecimento adquirido em eletrônica foi importante para lidar com tabelas de

valores ANSII que foram utilizadas para o desenvolvimento de detecção de alertas e

outras funcionalidades do aparelho que eram em valores ou binários ou

hexadecimais.

O conhecimento adquirido na implementação do sistema de monitoramento

(site) tem grande valia, ao desenvolver utilizando PHP, API Google MAPS e

php/Javabridge. O desenvolvimento do sistema também proporciona outra opção de

uso e não somente para o aparelho em questão, onde pode ser utilizado para

qualquer tipo de aparelho GPS, apenas implementando seu protocolo.

O sistema pode também receber novas funcionalidades, tais como, mostrar a

direção dos veículos, gerar gráficos de velocidade e alertas também um histórico de

mensagens enviadas.

Page 23: Artigo TCC-SI-2013

23

REFERÊNCIAS BIBLIOGRÁFICAS

ROUSE, Margaret, Geo-Fencing (Geofencing), Disponível em:

http://whatis.techtarget.com/definition/geofencing Recuperado em 15/11/13

BRIDGE, php/Java, What is the PHP/Java Bridge, Disponível em: http://php-java-

bridge.sourceforge.net/pjb/ Recuperado em 12/11/13.

MYSQL, Why MYSQL, Disponível em: http://www.mysql.com/ Recuperado em 11/11/13.

INFOPÉDIA, Protocolos de comunicação, Disponível em:

http://www.infopedia.pt/$protocolos-de-comunicacao;jsessionid=sp32ihTjXWz3aXy6d5J84A__

Recuperado em: 08/11/13.

OFFICIAL, U.S Government information about the Global Positioning System (GPS)

Disponível em: http://www.gps.gov/applications/ Recuperado em: 09/11/13.

ALMEIDA, José Henrique Monteiro De. PHP com MYSQL, Disponível em:

http://apostilando.com/sessao.php?cod=26 Recuperando em 01/11/13.

NUNES, Lonardo R. Formado em Ciência da Computação Pela PUCPR, Mestrado

em Sistemas Distribuídos na PUCPR, Coordenador do PRoJAVA, Disponível em :

http://www.ebah.com.br/content/ABAAABcOMAA/sockets-java Recuperado em 12/10/13.

GOMES, Rafael de Aquimo. Transmitindo e recebendo dados via Socket,

Page 24: Artigo TCC-SI-2013

24

Disponível em:

http://pt.wikinourau.org/bin/view/GrupoJava/TransmitindoERecebendoDadosViaSockets#Streams

Recuperado em 12/10/13.

CRISTIANO, Trindade, Desenvolvedor de sistemas, Disponível em

http://imasters.com.br/artigo/910/ Recuperado em 12/10/13.

CAELUM, Apostila Java e Orientação a Objetos, Apêndice Sockets, Disponível em:

http://www.caelum.com.br/apostila-java-orientacao-objetos/apendice-sockets/ Recuperado em

12/10/13.

MAGALHÃES, Marcos Paulo Pereira. Bacharelado em Sistemas de Informação,

Estudo do comportamento dos protocolos GPRS em uma chamada de dados,

Faculdade de ciências aplicadas de Minas 2005, Disponível em:

http://www.si.lopesgazzani.com.br/TFC/monografias/Monografia%20-%20Marcos%20Paulo.pdf

Recuperado em 15/10/13.

DILÃO, Rui. Grupo de dinâmica Não-Linear, IST, Disponível em:

http://www.cienciaviva.pt/latlong/anterior/gps.asp# Recuperado em 20/10/13.

Trible, GPS – Tutorial Disponível em:

http://www.trimble.com/gps_tutorial/whygps.aspx Recuperado em 20/10/13.

CORRÊA, Iran Carlos Stalliviere. Coordenadas Geográficas – Departamento de

Geodesia – UFRGS Disponível em:

Page 25: Artigo TCC-SI-2013

25

http://artedanavegacaoaerea.blogspot.com.br/2011/06/coordenadas-geograficas-

igufrgs.html Recuperado em: 11/11/13.

NUNES, Sérgio Sobral. Computadores e Redes de Comunicação

Mestrado em Gestão de Informação, FEUP ( Universidade do Porto Faculdade de

Engenharia). Disponível em:

http://web.fe.up.pt/~ssn/disciplinas/crc/redes-de-comunicacao.pdf recuperado em 29/10/13.

4G AMERICAS, GPRS: General Packet Radio Service Disponível em:

http://www.4gamericas.org/index.cfm?fuseaction=page&sectionid=243, recuperado em 09/11/13.

APÊNDICE A – FUNCIONAMENTO SERVIDOR

Page 26: Artigo TCC-SI-2013

26

APÊNDICE B – CLASSES SERVIDOR.

Page 27: Artigo TCC-SI-2013

27

APÊNDICE C – TABELAS (MER)

Page 28: Artigo TCC-SI-2013

28

APÊNDICE D – DEMONSTRAÇÃO DE FUNCIONAMENTO SITE

Page 29: Artigo TCC-SI-2013

29

Pesquisar

Enviar comando

Page 30: Artigo TCC-SI-2013

30

Gerenciar cerca

Page 31: Artigo TCC-SI-2013

31

Gerenciar usuários

Page 32: Artigo TCC-SI-2013

32

Pesquisar

Visualizar Histórico

Page 33: Artigo TCC-SI-2013

33

Visualizar rastreador

Visualizar todos