aplicativo móvel em android para monitoramento de rotas dos usuários de transporte público

7
Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público Jaffer dos Santos Veronezi 1 , Udo Fritzke Junior 1 1 Departamento de Ciência da Computação Pontifícia Universidade Católica de Minas Gerais (PUC Minas) 37.701-355 – Poços de Caldas – MG – Brasil [email protected], [email protected] Abstract. Urban mobility is a constant theme in discussions about what we need to improve our cities. Several solutions have already been deployed in the search to resolve this issue. However, these solutions often do not reflect improvements efficiently, since no trace patterns of mobility. In most applications aim to assist users with information on routes and schedules collective and public transport companies in managing billing. This paper presents the design of a mobile application for Android that aims to collect data on the mobility of people and store them on a server, in order to further investigate which paths used for public transportation, seeking to assist the public transport companies and the government in taking measures that result in higher quality for their users. Resumo. A mobilidade urbana é um tema constante nas discussões entre o que devemos melhorar em nossas cidades. Várias soluções já estão sendo implantadas na busca de resolver essa questão. Entretanto, essas soluções muitas vezes não refletem em melhorias eficientes, visto que não traçam os padrões de mobilidade das pessoas. Em sua maioria as aplicações visam auxiliar os usuários com informações sobre itinerários e horários de coletivos e as empresas de transporte público no gerenciamento de bilhetagem. Neste trabalho apresenta-se o projeto de uma aplicação móvel em Android que pretende coletar dados referentes a mobilidade das pessoas e os armazenar em um servidor, com o intuito de se investigar quais trajetos mais utilizados no transporte público, procurando auxiliar as empresas de transporte público e o governo na tomada de medidas que resultem em maior qualidade para seus usuários. Palavras-chave: Android, Mobilidade urbana, Monitoramento de rotas, Transporte público. 1. Introdução e contextualização A mobilidade urbana é uma questão que se refere ao ir e vir cotidiano de nossas cidades. Nas cidades o uso de veículos é cada vez maior, causando congestionamentos e dificultando a mobilidade das pessoas. Uma medida que alivia o trânsito e melhora a mobilidade urbana é o uso do transporte público. Os transportes públicos têm importante papel na mobilidade da população por isso várias medidas para melhorar a qualidade vem sendo estudadas e implantadas como a construção de VLT (Veículo sobre Trilhos), ampliação de linhas de metrôs e outras melhorias no transporte coletivo.

Upload: jaffer-veronezi

Post on 20-Jul-2015

174 views

Category:

Software


49 download

TRANSCRIPT

Page 1: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

Aplicativo móvel em Android para monitoramento de rotas

dos usuários de transporte público

Jaffer dos Santos Veronezi1, Udo Fritzke Junior1

1Departamento de Ciência da Computação

Pontifícia Universidade Católica de Minas Gerais (PUC Minas)

37.701-355 – Poços de Caldas – MG – Brasil [email protected], [email protected]

Abstract. Urban mobility is a constant theme in discussions about what we

need to improve our cities. Several solutions have already been deployed in

the search to resolve this issue. However, these solutions often do not reflect

improvements efficiently, since no trace patterns of mobility. In most

applications aim to assist users with information on routes and schedules

collective and public transport companies in managing billing. This paper

presents the design of a mobile application for Android that aims to collect

data on the mobility of people and store them on a server, in order to further

investigate which paths used for public transportation, seeking to assist the

public transport companies and the government in taking measures that result

in higher quality for their users.

Resumo. A mobilidade urbana é um tema constante nas discussões entre o que

devemos melhorar em nossas cidades. Várias soluções já estão sendo

implantadas na busca de resolver essa questão. Entretanto, essas soluções

muitas vezes não refletem em melhorias eficientes, visto que não traçam os

padrões de mobilidade das pessoas. Em sua maioria as aplicações visam

auxiliar os usuários com informações sobre itinerários e horários de coletivos e

as empresas de transporte público no gerenciamento de bilhetagem. Neste

trabalho apresenta-se o projeto de uma aplicação móvel em Android que

pretende coletar dados referentes a mobilidade das pessoas e os armazenar em

um servidor, com o intuito de se investigar quais trajetos mais utilizados no

transporte público, procurando auxiliar as empresas de transporte público e o

governo na tomada de medidas que resultem em maior qualidade para seus

usuários.

Palavras-chave: Android, Mobilidade urbana, Monitoramento de rotas,

Transporte público.

1. Introdução e contextualização A mobilidade urbana é uma questão que se refere ao ir e vir cotidiano de nossas cidades.

Nas cidades o uso de veículos é cada vez maior, causando congestionamentos e

dificultando a mobilidade das pessoas. Uma medida que alivia o trânsito e melhora a

mobilidade urbana é o uso do transporte público.

Os transportes públicos têm importante papel na mobilidade da população por

isso várias medidas para melhorar a qualidade vem sendo estudadas e implantadas como

a construção de VLT (Veículo sobre Trilhos), ampliação de linhas de metrôs e outras

melhorias no transporte coletivo.

Page 2: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

O transporte coletivo por meio de ônibus é o mais utilizado no Brasil, em muitas

cidades é o único meio de transporte de massa para o deslocamento da população de sua

residência ao trabalho, a escola e a outros pontos da cidade. Como a demanda por

transporte coletivo por ônibus é crescente nas cidades brasileiras diversas pesquisas com

a utilização de tecnologias avançadas vem se desenvolvendo para auxiliar na melhoria

da qualidade desse tipo de serviço que é essencial para mobilidade urbana.

Nos países desenvolvidos, principalmente os Europeus, os sistemas de transporte

público sofreram uma grande evolução de qualidade nos últimos tempos utilizando-se

de modernas tecnologias, com frota e rede viária integrados por sistemas inteligentes,

seja na automação da bilhetagem ou no controle da operação. A precisão das

informações, obtidas pelos sistemas inteligentes e pelos sistemas que operam em tempo

real, pode conduzir à melhoria de diversos processos operacionais do transporte

coletivo, como por exemplo: dimensionar a oferta de forma mais adequada à realidade

da demanda, controlar as viagens, realizar a regulação das linhas, informar os

passageiros com maior precisão, reduzir a evasão da receita, possibilitar a integração

temporal, e assim por diante (Silva, 2000).

Procurando colaborar com a melhoria do transporte público e com mobilidade

das pessoas, foi desenvolvido um aplicativo móvel em sistema Android que visa obter

informações, a partir do monitoramento dos caminhos feitos pelas pessoas na cidade,

procurando detectar os lugares com maior movimentação, além de buscar dados que

identifiquem quais ônibus do transporte público são mais utilizados.

Todas as informações coletadas são de grande importância para que políticas

públicas de melhoria da mobilidade das cidades possam ser melhor direcionadas.

O aplicativo Projeto Rotas faz uso da tecnologia GPS (Global Positioning

System) do smartphone que captura a latitude e longitude dos caminhos feitos pelo

usuário além de coletar informações sobre a velocidade, tempo e a distância percorrida.

Todas essas informações são armazenadas em um banco de dados no aparelho para

posterior sincronização com um servidor.

2. Tecnologia a serviço da mobilidade O uso de tecnologias para melhoria do transporte público vem se tornando cada vez

mais comum na vida de quem o utiliza.

No Brasil diversas iniciativas estão sendo realizadas, principalmente após o

advento dos smartphones onde o usuário tem em mãos um aparelho capaz de realizar

diversas tarefas tais como: acesso à internet, GPS, mapas, dentre outros. Vários

aplicativos foram criados afim de informar o usuário sobre itinerários, horários dos

coletivos, simular trajetos, monitorar coletivos e seus pontos e também caminhos que o

usuário percorreu.

Dentre os aplicativos que colaboram com a mobilidade urbana temos o Moovit

que informa ao usuário os horários dos coletivos para cada ponto com resultados que

incluem metrô, ônibus e trem, disponível para sistema operacional Android, iOS e

Windows Phone. Outro aplicativo é o Omnibus onde o usuário pode acompanhar duas

linhas simultaneamente, somente para sistema Android. Além desses podemos citar o

Cadê o ônibus? que monitora o trajeto de um determinado coletivo e o Onde Está Meu

Ônibus?, assim como outros projetos que também estão sendo desenvolvidos não

somente para colaborar com a melhoria do transporte público mas também com toda o

ciclo da mobilidade urbana (Folha de São Paulo, 2013).

Page 3: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

Esses aplicativos vem colaborando para melhoria da experiência dos usuários

com o transporte público e para melhor direcionamento de políticas de transporte por

parte das empresas responsáveis pelos coletivos, além de servir para monitorar as rotas

realizadas pelos seus usuários, bem como estudos da mobilidade das pessoas.

3. Aplicativo para monitoramento O aplicativo foi construído em Android, uma plataforma móvel de código aberto que

está inovando o mercado global de aplicativos para celular (Ableson, W. Frank, 2012).

As telas foram desenvolvidas por meio da classe Activity que é a responsável na

plataforma Android de controlar os eventos de tela, dando liberdade para o usuário

utilizar outro aplicativo enquanto aplicação é executado. A interface das telas e o menu

foram definidas em arquivos XML (eXtensible Markup Language) localizado no

diretório res/layout, separada da lógica de negócio da aplicação. Para mostrar na tela a

rota que o usuário está fazendo ou a que já está salva no banco de dados a aplicação faz

uso da biblioteca do Google Maps para Android que dispõe da classe MapView que é

responsável por exibir o mapa. O trajeto monitorado é realizado pela classe Overlay,

uma subclasse de android.widget.View que é adicionada ao MapView e é utilizada para

fazer desenhos sobre mapas. Na aplicação a classe android.graphics.Canvas junto com

a classe android.graphics.Paint desenham retas ligando os pontos capturados pelo GPS

e que são inseridos em um vetor com as coordenadas geográficas. Para obter esses

pontos via GPS a aplicação faz uso da interface android.Location.LocationListerner que

é implementada pela classe ServicoBackground da aplicação utilizando o método

onLocationChanged(Location) que recebe um objeto Location que informa latitude e

longitude para verificar se a localização do GPS foi modificada (Lecheta, Ricardo R.,

2010).

Ao encerrar o monitoramento todos os dados são persistidos em um banco de

dados SQLite nativo da plataforma Android para posterior envio ao servidor. Pode-se

ver seu modelo na Figura 1.

Figura 1. Modelo do banco de dados do cliente armazenado no dispositivo móvel.

Quando a aplicação é iniciada pelo usuário verifica-se o GPS está ligado.

Estando ligado inicia-se o monitoramento do trajeto exibindo a velocidade, a distância

percorrida e o tempo de percurso, como na Figura 2a.

Page 4: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

Figura 2a. Tela que exibe o Figura 2b. Tela com a lista Figura 2c. Tela com dados monitoramento. de trajetos realizados. de um trajeto armazenados.

Cancelando o monitoramento, os dados colhidos são armazenados em um banco

de dados no aparelho. Na Figura 2b pode-se observar uma lista de trajetos percorridos

pelo usuário.

Ao clicar em um trajeto aparecerão as informações coletadas como: a velocidade

média, distância, tempo e um botão para o mapa do trajeto, conforme a Figura 2c.

O menu do aplicativo traz algumas configurações tais como: opção de unidade

de medida (km ou milha), precisão do GPS (baixa, média ou alta) e alertas (sonoro ou

vibratório) como na Figura 3a, além de mostrar uma tela de como utilizar o aplicativo

conforme a Figura 3b e uma tela de créditos como na Figura 3c.

Figura 3a. Tela com as confi- Figura 3b. Tela de ajuda. Figura 3c. Tela de gurações do aplicativo. créditos.

Ao se construir o aplicativo teve-se uma preocupação com sua

internacionalização disponibilizando-o em português, inglês e espanhol, conforme a

língua utilizada no aparelho.

Page 5: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

4. Sincronismo e apresentação dos dados no servidor Os trajetos monitorados ao serem persistidos no banco de dados da aplicação móvel são

sincronizados com o banco de dados do servidor assim que o usuário habilita Wi-Fi

(Wireless Fidelity) do dispositivo móvel. Essa sincronização ocorre por meio da

utilização do Webservice REST (Representational State Transfer) que possibilita a

interoperabilidade entre a aplicação Android e o servidor oferecendo grande

performance através de um sistema de mensagens mais leve. O envio das informações

ocorre por meio da criação de uma lista em JSON (JavaScript Object Notation), um

formato leve para notação de dados que devem ser enviadas ao servidor.

Para identificação do dispositivo móvel ao qual pertence o trajeto no banco é

enviado o Android ID junto com os dados, um número de 64 bits que é gerado

aleatoriamente quando o usuário define a primeira configuração no dispositivo e

permanece constante durante a toda sua vida útil. Todo o banco de dados da aplicação

móvel é enviado ao servidor onde ocorre uma busca do id e o Android ID dos trajetos já

gravados, onde são comparados com os que foram enviados para que caso o trajeto não

esteja armazenado no banco ele possa ser gravado. Este banco de dados foi criado em

MySQL e podemos ver seu modelo, conforme a Figura 4.

Figura 4. Modelo do banco de dados do servidor onde os trajetos de todos os clientes são armazenados.

O acesso aos dados do banco no servidor é feita pela Web, onde o administrador

realiza acesso ao sistema, sendo direcionado a uma página contendo a lista de todos os

usuários que tem trajetos enviados ao servidor, ao selecionar um usuário o

administrador tem a opção de buscar um dos trajetos realizados, fazendo essa busca

aparecerá o trajeto indicado em azul no mapa e ao lado as informações sobre ele,

conforme a Figura 5.

Page 6: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

Figura 5. A imagem mostra o mapa com o trajeto indicado em azul e ao lado as informações do trajeto.

Para o desenvolvimento da aplicação no servidor foi utilizado para back-end a

linguagem JSP (Java Server Pages) e para front-end as linguagens HTML (HyperText

Markup Language), CSS (Cascading Style Sheets) e JavaScript, sendo que o mapa

responsável pela exibição dos trajetos foi criado a partir da API Google Maps v3.

5. Comparações com outros aplicativos As tecnologias de Computação Móvel e geoprocessamento (detecção de posição

geográfica) vem sendo utilizadas em conjunto há vários anos, inclusive essa interessante

combinação já tem sido aplicada ao problema do transporte público urbano (Geovane

Fedrecheski, 2012).

Neste trabalho procura-se oferecer mais uma alternativa que busque investigar a

mobilidade das pessoas por meio da coleta de informações de seus trajetos, fazendo uso

da Computação Móvel que cresce a cada dia com o advento dos smartphones, visando

com isso criar um banco de informações que possa ser usado na tomada de medidas que

colaborem com as empresas de transporte público na melhoria de seus serviços e

consequentemente na melhoria da mobilidade urbana.

Outros aplicativos relacionados a mobilidade já existem como por exemplo os já

citados Omnibus, Cadê o ônibus? e o Moovit que traz o conceito de crowdsourcing

onde a comunidade colabora para informar sobre a situação do trânsito, do ônibus

coletivo e de outros transportes urbanos (Folha de São Paulo, 2014). No caso do

Omnibus se trata de um aplicativo que possibilita aos moradores da cidade de São Paulo

acompanharem em tempo real a localização dos ônibus da rede municipal. O projeto

teve início com o lançamento do serviço Olho Vivo da SPTrans, que disponibiliza as

informações que tornam este aplicativo possível (Omnibus, 2014). O Cadê o ônibus? é

um aplicativo que tem o objetivo de facilitar o acompanhamento das linhas municipais

de ônibus da cidade de São Paulo (Cadê o ônibus?, 2014).

Todos os aplicativos citados tem foco em mostrar itinerários e pontos de ônibus,

contribuindo para dar informações aos usuários sobre o transporte público, o projeto

apresentado neste trabalho busca colaborar com informações dos trajetos mais

utilizados pelos seus usuários bem como as linhas de transporte público mais utilizadas,

procurando auxiliar principalmente as empresas de transporte público na coleta de

informações para análise de uso e melhorias do transporte.

Page 7: Aplicativo móvel em Android para monitoramento de rotas dos usuários de transporte público

6. Considerações finais Conforme discutido, entende-se que para se obter boas soluções para mobilidade urbana

o uso da tecnologia é indispensável tanto para melhorar o transporte coletivo como para

melhorar o fluxo das pessoas pela cidade por outros meios de transporte. Mas para isso

a coleta de informações deve ser realizada para que se possa estudar medidas

conscientes e que solucionem os problemas de mobilidade. Uma forma de se obter essas

informações é com a utilização de aplicativos móveis.

Neste trabalho, foram apresentados os principais argumentos para definição de

mobilidade urbana e algumas aplicações móvel que tem como intuito oferecer serviços e

buscar informações para melhorar a mobilidade, principalmente quanto ao uso dos

transportes públicos por meio de ônibus.

Como contribuição foi criado um aplicativo móvel para sistema Android que

monitora os trajetos realizados por seus usuários e uma aplicação WEB que recebe esses

dados, visando criar um banco de informações por onde possam ser tiradas soluções que

melhorem os transportes coletivos e a mobilidade urbana como um todo.

Referências (Ableson, W. Frank, 2012) “Android em ação”, W. Frank Ableson, Chalie Collins, Robi

Sem; tradução Eduardo Kraszczuk, Edson Furmanliewicz. Rio de Janeiro: Elsevier,

Outubro.

(Cadê o ônibus?, 2014) “Informações sobre o aplicativo Cadê o ônibus?

http://www.cadeoonibus.com.br/CoO/SiteV2”, Outubro.

(Folha de São Paulo, 2013) “Aplicativos para celular ajudam usuários de transporte

público em São Paulo” http://folha.com/no1231505, Outubro.

(Folha de São Paulo, 2014) “Folha passa a publicar serviço de transporte público do

Moovit” http://folha.com/no1438303, Outubro.

(Geovane Fedrecheski, 2012) Richard Aderbal Gonçalves, Josiel Neumann kuk.

“Projeto de um Aplicativo Android de Monitoramento de Veículos do Transporte

Público”, Outubro.

(Lecheta, Ricardo R., 2010) “Google Android: Aprenda a criar aplicações para

dispositivos móveis com Android SDK”. 2. Ed. rev. e ampl. São Paulo: Novatec

Editora, Outubro.

(Omnibus, 2014) “Informações sobre o aplicativo Omnibus” http://omnibusapp.com/,

Outubro.

(Silva, 2000) Silva, Danyela de Moraes da, Lindau, Luis Antonio. “Sistemas

inteligentes no transporte público coletivo por ônibus”

http://hdl.handle.net/10183/3134, Outubro.