PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA ENGENHARIA DE COMPUTAÇÃO HENRIQUE DUARTE LIMA JONATHAN CARVALHO DINIZ



Documentos relacionados
Pós-Graduação em Gerenciamento de Projetos práticas do PMI

IW10. Rev.: 02. Especificações Técnicas

JULIANA CECÍLIA GIPIELA CORRÊA DIAS MARIO HENRIQUE CÉ DEMARIA COOLER AUTOMÁTICO

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ

MASTER IN PROJECT MANAGEMENT

F.1 Gerenciamento da integração do projeto

Processo de Abertura de Projetosescritorio. Bizagi Process Modeler

17/02/2009. Curso Superior de Tecnologia: Redes de Computadores. Disciplina: Gestão de Projetos de TI Prof.: Fernando Hadad Zaidan. Unidade 2.

Em 2012, a Prosoft planejou o lançamento da Versão 5 dos seus produtos.

Gerenciamento de Problemas

Estabelecer os procedimentos para o gerenciamento dos sistemas e demais aplicações informatizadas do TJAC.

Manual SAGe Versão 1.2 (a partir da versão )

Documento de Análise e Projeto VideoSystem

Metodologia de Gerenciamento de Projetos da Justiça Federal

Comm5 Tecnologia Manual de utilização da família MI. Manual de Utilização. Família MI

Programa de Capacitação em Gestão do PPA Curso PPA: Elaboração e Gestão Ciclo Básico. Elaboração de Planos Gerenciais dos Programas do PPA

CHECK - LIST - ISO 9001:2000

Treinamento. Módulo. Escritório Virtual. Sistema Office. Instruções para configuração e utilização do módulo Escritório Virtual do sistema Office

Princípios da Engenharia de Software aula 05 Gerenciamento de planejamento de projetos. Prof.: Franklin M. Correia

Gerenciamento de Projeto: Monitorando e Controlando o Projeto II. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Sistema de Controle de Solicitação de Desenvolvimento

Manual de Usuário Versão 3.0

Automação de Bancada Pneumática

Manual Telemetria - RPM

PODER JUDICIÁRIO TRIBUNAL DE JUSTIÇA DO ESTADO DO AMAZONAS DIVISÃO DE GESTÃO DA QUALIDADE

O Oficina Integrada é um sistema completo para o controle e gerenciamento de oficinas mecânicas. É o primeiro e único software que controla o fluxo

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

2 Diagrama de Caso de Uso

Avaliação e Treinamento para Motoristas

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração.

Sistema de Gestão da Qualidade

Gerenciamento de Projeto

MANUAL DE UTILIZAÇÃO

Manual Do Usuário Processo Aditivo de Prazo

Agora todas as Unimeds vão falar uma só língua. Unimed do Brasil Federação São Paulo Portal Unimed

{Indicar o tema e objetivo estratégico aos quais o projeto contribuirá diretamente para o alcance.}

b 1 Copyright In9 Mídia Soluções Digitais Inc. All rights reserved.

Desenvolvimento de um software de gerenciamento de projetos para utilização na Web

Trabalho Interdisciplinar. MS Project

Curva ABC. Tecinco Informática Ltda. Av. Brasil, º Andar Centro Cascavel PR

1. Escritório Virtual Atualização do sistema Instalação e ativação do sistema de Conexão...5

UNIP UNIVERSIDADE PAULISTA

Guia Rápido para Acesso, Preenchimento e Envio Formulário de Cadastro da Empresa e Formulário de Projeto

Software de segurança em redes para monitoração de pacotes em uma conexão TCP/IP

Escritório Virtual Administrativo

ANEXO 3 da Ata 3/ 2000 da XXIII Reunião Especializada de Ciência e Tecnologia do MERCOSUL

Projeto Disciplinar de Infra-Estrutura de Software SISCOP TORRE FORTE CONSTRUÇÕES LTDA.

GUIA DE TELAS IHM Delta ARVTi 2000

W Projeto. Gerenciamento. Construindo a WBS e gerando o Cronograma. Autor: Antonio Augusto Camargos, PMP 1/12

Plano de Gerenciamento do Projeto

Engenharia de Software III

Pontos de Função. André Chastel Lima Andréia Ferreira Pinto Diego Souza Campos. Engenharia de Software Mestrado Ciência da Computação - UFMS

Nome da Empresa Sistema digitalizado no almoxarifado do EMI

Ato Convocatório Nº07/ TP 033/2013

Copyright 2013 VW Soluções

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9

Versão Liberada. Gerpos Sistemas Ltda. Av. Jones dos Santos Neves, nº 160/174

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Esclarecimento: As versões dos navegadores a serem utilizadas pelo PSIM estão descrito no item do projeto básico.

1 Inicie um novo. Guia de Referência Rápida de Gerenciamento de Projeto para o Project projeto

Justificativa da iniciativa

PROJETO DE PESQUISA MODALIDADE INICIAÇÃO CIENTÍFICA (BOLSA PIC/FACIT/FAPEMIG)

Manual Do Usuário Processo Medição

Funções de Posicionamento para Controle de Eixos

Placa Acessório Modem Impacta

SST - PPP x. abril de Versão: 4.0

Manual Do Usuário Processo Licitação

TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação

SISTEMA DE AVALIAÇÃO DE DESEMPENHO DA CONCESSIONÁRIA PPP PÁTIO VEICULAR INTEGRAL SÃO PAULO

SISTEMA INTEGRADO DE GESTÃO ACADÊMICA

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO

ÍNDICE. Futura Ponto (REP) Configurações Iniciais Cadastrar Horário Configurar Hora Extra Cadastrar Departamento...

CDE4000 MANUAL 1. INTRODUÇÃO 2. SOFTWARE DE CONFIGURAÇÃO 3. COMUNICAÇÃO

Pag: 1/20. SGI Manual. Controle de Padrões

Fundamentos de Teste de Software

Manual de Instalação... 2 RECURSOS DESTE RELÓGIO REGISTRANDO O ACESSO Acesso através de cartão de código de barras:...

Guia de Especificação de Caso de Uso Metodologia CELEPAR

1. Tela de Acesso pg Cadastro pg Abas de navegação pg Abas dados cadastrais pg Aba grupo de usuários pg.

PLANO DE GERANCIAMENTO DO RELEASE Release:

Manual de Utilização

15/03/2010. Análise por pontos de função. Análise por Pontos de Função. Componentes dos Pontos de Função. Componentes dos Pontos de Função

METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE DO MUSEU PARAENSE EMÍLIO GOELDI

MANUAL LOJA VIRTUAL - PORTAL PHARMA LINK

Manual Básico do Usuário. Monitoramento de Iniciativas Estratégicas. Planejamento Estratégico - ANVISA

SISTEMA DE GESTÃO DO PROGRAMA BOLSA FAMÍLIA

CAPÍTULO I DA NATUREZA DOS LABORATÓRIOS

Gestão do custo do projeto

GOVERNO DO ESTADO DE MINAS GERAIS SECRETARIA DE ESTADO DE SAÚDE SUPERINTENDÊNCIA DE ASSISTÊNCIA FARMACÊUTICA DIRETORIA DE MEDICAMENTOS ESTRATÉGICOS

Monitor de Rastreamento de Frota para Segurança de Transporte Planejamento de Projetos Iterativos Aplicando o RUP Projeto Blue Moon

Nota de Aplicação. Utilizando os recursos de segurança dos controladores HI. HI Tecnologia. Documento de acesso público

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

SISTEMA DE MONITORAMENTO DE CONDIÇÕES CLIMÁTICAS

Transcrição:

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA ENGENHARIA DE COMPUTAÇÃO HENRIQUE DUARTE LIMA JONATHAN CARVALHO DINIZ RELATÓRIO TÉCNICO FINAL SISTEMA DE PREVISÃO DE CONDIÇÕES ADVERSAS DE CONDUÇÃO ENVOLVENDO NEBLINA EM RODOVIAS Orientador: Prof. MSc. Afonso Ferreira Miguel CURITIBA 2013

HENRIQUE DUARTE LIMA JONATHAN CARVALHO DINIZ RELATÓRIO TÉCNICO FINAL SISTEMA DE PREVISÃO DE CONDIÇÕES ADVERSAS DE CONDUÇÃO ENVOLVENDO NEBLINA EM RODOVIAS Relatório Técnico Final apresentado ao Curso de Engenharia de Computação da Pontifícia Universidade Católica do Paraná, como requisito parcial de avaliação da disciplina de Projeto Final II, coordenada pelo Prof. Ph.D. Luiz A. de P. Lima Jr. Orientador: Afonso Ferreira Miguel. CURITIBA 2013

SUMÁRIO 1. INTRODUÇÃO... 7 2. DETALHAMENTO DO PROJETO... 8 2.1. VISÃO GERAL DO PROJETO... 8 2.1.1. Relação entre os módulos... 8 2.1.2. Módulo de Aquisição... 8 2.1.3. Módulo Central... 10 2.2. BLOCO DE SOFWARE... 12 2.2.1. Diagrama de Classes... 12 2.2.2. Pseudo-código Calcular Ponto de Orvalho... 13 2.2.3. Pseudo-código Encontrar Zero... 15 2.2.4. Pseudo-código Pivoteamento Parcial... 17 2.2.5. Pseudo-código Método dos Mínimos Quadrados... 19 2.2.6. Pseudo-código Desvio Padrão... 23 2.3. BLOCO DE HARDWARE... 25 2.3.1. Diagrama Elétrico do Módulo de Aquisição... 25 2.3.2. Diagrama Elétrico do Módulo Central... 26 2.4. IMPLEMENTAÇÃO E INTEGRAÇÃO DOS MÓDULOS... 27 2.4.1. Módulo de Aquisição... 27 2.4.2. Módulo Central... 27 3. CRONOGRAMA DO PROJETO... 30 4. PLANO DE TESTES... 32 4.1. INTRODUÇÃO... 32 4.2. PLANO DE TESTES DO MÓDULO DE AQUISIÇÃO... 32 4.2.1. Descrição... 32 4.2.2. Resultados esperados... 32 4.2.3. Resultados obtidos... 32 4.3. PLANO DE TESTES DO MÓDULO CENTRAL... 33 4.3.1. Descrição... 33 4.3.2. Resultados esperados... 33 4.3.3. Resultados obtidos... 33 5. ANÁLISE DOS RISCOS... 36 6. CONCLUSÃO... 41 7. REFERÊNCIAS BIBLIOGRÁFICAS... 43

LISTA DE FIGURAS Figura 1: Relação entre os módulos do projeto... 8 Figura 2: Diagrama de blocos do módulo de aquisição... 9 Figura 3: Diagrama de blocos do módulo central... 10 Figura 4: Diagrama de classes do projeto... 12 Figura 5: Pseudo-códido do cálculo do ponto de orvalho... 13 Figura 6: Diagrama de atividade do algoritmo de cálculo de ponto de orvalho... 14 Figura 7: Pseudo-código da funcionalidade que verifica a existência de zero... 15 Figura 8: Diagrama de atividade do algoritmo que verifica a existência de zero... 16 Figura 9: Pseudo-código da funcionalidade de pivoteamento parcial... 17 Figura 10: Diagrama de atividade da seleção do pivô... 18 Figura 11: Diagrama de atividade da permutação entre as linhas da matriz... 18 Figura 12: Diagrama de atividade do escalonamento da matriz... 19 Figura 13: Pseudo-código do método dos mínimos quadrados... 20 Figura 14: Fórmulas utilizadas no método dos mínimos quadrados (MMQ)... 20 Figura 15: Diagrama de atividade do método de ajuste de curva... 21 Figura 16: Exemplo de ajuste de curva... 22 Figura 17: Algumas famílias de curvas para ajustes não lineares... 23 Figura 18: Pseudo-código do cálculo do desvio padrão... 23 Figura 19: Diagrama de atividade do algoritmo de cálculo do desvio padrão... 24 Figura 20: Diagrama elétrico do módulo de aquisição... 25 Figura 21: Diagrama elétrico do módulo central... 26 Figura 22: Layout do software de previsão de neblina... 28 Figura 23: Ambiente remoto do módulo central... 29 Figura 24: Cronograma do projeto referente ao Projeto Final I... 30 Figura 25: Cronograma do projeto referente ao Projeto Final II... 31

5 Figura 26: Dados de incidência de neblina... 34 Figura 27: Dados parciais de incidência de neblina... 34 Figura 28: Funcionamento evidenciando a incidência de neblina... 35 Figura 29: Funcionamento evidenciando a não incidência de neblina... 35

RESUMO O projeto consiste no desenvolvimento de um conjunto de dispositivos, interligados utilizando a tecnologia de rede sem fio ZigBee, que a partir do monitoramento de algumas variáveis do ambiente seja capaz de prever e disponibilizar a probabilidade de ocorrência de neblina. A aplicação ao qual o produto do projeto se destina é em relação ao monitoramento de trechos de rodovia com alta incidência de neblina, a fim de permitir que os responsáveis pela via possam realizar tomadas de decisão a partir das informações geradas, visando evitar a ocorrência de acidentes. Os diversos módulos, responsáveis por monitorar as variáveis do ambiente, contarão com um sistema embarcado desenvolvido em linguagem de programação C, e serão configurados para encaminhar os dados coletados para uma central responsável por realizar o processamento dos mesmos, bem como disponibilizar o resultado do processamento, ou seja, a probabilidade de ocorrência de neblina. Com as especificações definidas, bem como todos os escopos a serem seguidos, obteve-se êxito na implementação do projeto propriamente dito, tanto na parte de software quando na parte de hardware, onde estão envolvidos todo o processamento, sendo este a do cálculo da probabilidade de ocorrência de neblina e os módulos central e de aquisição.

7 1. INTRODUÇÃO Os acidentes de trânsito [1] representam um grave problema social, pois em muitos casos causam diversos problemas psicológicos nos envolvidos, assim como ceifa a vida de muitas pessoas, e consequentemente afeta famílias de forma permanente e devastadora. Há também um aspecto econômico envolvido, visto que os acidentes geram elevados custos para os responsáveis por determinada rodovia, sendo este um importante aspecto que deve ser observado por uma concessionária que detém o direito sobre a administração de uma via. Muitos dos acidentes em rodovias estão diretamente ligados à baixa visibilidade oriunda dos efeitos da neblina. Para mitigar as consequências das condições desfavoráveis de visibilidade causadas por neblina é necessário prever a ocorrência desta situação climática, com algumas horas de antecedência, sobre uma determinada região. Com o conhecimento prévio é possível que a concessionária ou órgão responsável pela administração de uma determinada via, elabore medidas preventivas, como informar aos condutores da via sobre a situação através de painéis eletrônicos, ou mesmo alterando a velocidade máxima de circulação. Foi desenvolvido o projeto em sua totalidade, bem como todos os seus requisitos, sendo esta a parte de software, responsável pelo algoritmo que realiza o cálculo de probabilidade de ocorrência de neblina e a parte de hardware, onde foram implementados o módulo central e o módulo de aquisição das variáveis do ambiente. Neste documento, estará sendo descrito os detalhes do projeto implementado. Serão descritas as funcionalidades, bem como o bloco de hardware e software do projeto e os módulos desenvolvidos. Estarão sendo descritos também o cronograma do projeto, os procedimentos de validação/teste, a análise dos riscos do projeto e por fim, os resultados obtidos após o término da implementação.

8 2. DETALHAMENTO DO PROJETO 2.1. VISÃO GERAL DO PROJETO 2.1.1. Relação entre os módulos Segue abaixo, na Figura 1, o relacionamento entre os módulos do projeto. Figura 1: Relação entre os módulos do projeto. Na Figura 1, observa- se que o módulo central solicita aquisição dos dados ao módulo de aquisição 1. Na sequência, o módulo de aquisição 1 realizará a aquisição dos dados em questão. Logo após, estes dados serão transmitidos ao módulo central. Finalizado esta etapa, o módulo central realiza o mesmo procedimento para os n módulos de aquisição. 2.1.2. Módulo de Aquisição O diagrama de blocos abaixo, apresentado na Figura 2, representa o funcionamento do módulo responsável pela aquisição das variáveis do ar e do solo, necessárias para a tarefa de previsão de neblina, sendo este o papel do módulo central.

9 Figura 2: Diagrama de blocos do módulo de aquisição. Descrição do diagrama de blocos do módulo de aquisição O módulo de aquisição não realiza nenhuma atividade até que o mesmo receba do módulo central, uma solicitação de aquisição das variáveis. Na sequência, após receber uma solicitação, o módulo de sensoriamento realizará a aquisição da temperatura do ar e da umidade relativa do ar, bem como a aquisição da temperatura do solo. Após estas três variáveis serem obtidas, o módulo de aquisição realizará o cálculo do ponto de orvalho e transmitirá, através do módulo de comunicação, os dados ao módulo central.

10 2.1.3. Módulo Central O diagrama de blocos abaixo, apresentado na Figura 3, representa o funcionamento do módulo responsável pelo processo de previsão de neblina. Figura 3: Diagrama de blocos do módulo central.

11 Descrição do diagrama de blocos do módulo central O módulo central solicitará os dados do ar e do solo ao módulo de aquisição, e aguardará o recebimento dos dados em um tempo máximo estipulado. Após os dados serem recebidos, primeiramente será calculado o ponto de orvalho com base na temperatura do ar e na umidade relativa do ar. Após o cálculo do ponto de orvalho, é aplicado o método de ajuste de curvas para os pontos de temperatura do solo, bem como para os pontos de ponto de orvalho. O ajuste de curvas é realizado para vários formatos de equações, todas em função do tempo. Na sequência, será selecionada a melhor equação que representa o comportamento da temperatura do solo e a melhor equação que representa o comportamento do ponto de orvalho, levando-se em consideração o desvio padrão das equações. Logo após, serão igualadas as duas equações, a fim de obter uma previsão do momento em que ocorrerá a saturação da quantidade de água no ar. A partir do resultado, será verificado se o tempo calculado está na faixa de tempo máximo de previsão, bem como será calculado um grau de certeza com base no desvio padrão. Por fim, as informações serão disponibilizadas ao usuário.

12 2.2. BLOCO DE SOFTWARE 2.2.1. Diagrama de Classes O diagrama de classes abaixo, apresentado na Figura 4, representa as principais abstrações necessárias para a realização das atividades do módulo central. Para o desenvolvimento do mesmo, utilizou-se o software Astah [2]. Figura 4: Diagrama de classes do projeto. No diagrama acima, observa-se que a classe do módulo central possui seis instâncias da classe Equação, sendo estas referentes a três formas distintas de ajustes de equação para temperatura do solo e de forma análoga, outras três para o ponto de orvalho. Importante destacar, que o método CalcularProbabilidade determina a probabilidade a partir do menor desvio padrão, ou seja, quanto menor o desvio padrão, maior a probabilidade de ocorrer neblina, visto que neste caso a curva foi bem ajustada. O valor desta probabilidade será calculada por uma fórmula a ser determinada empiricamente, que relaciona desvio padrão e confirmação da previsão.

13 2.2.2. Pseudo-código Calcular Ponto de Orvalho O pseudo-código abaixo representa o implementação genérica da funcionalidade de cálculo de ponto de orvalho. método CalcularPOrvalho(t, h : double[]) : double[] variáveis n : tamanho(t); k : inteiro; PO : double[]; fim-variáveis início fim para k de 0 até n-1 PO[k] := ( (h[k]/100) ^(1/8) )*(112 +0,9*t[k]) +(0,1*t[k])-112; fim-para retorna PO; Figura 5: Pseudo-código do cálculo do ponto de orvalho. No pseudo-código acima, é recebido como parâmetro a temperatura do ar e a umidade do ar. A partir destas duas variáveis, utilizam-se as mesmas para determinar o ponto de orvalho, levando-se em consideração uma equação aproximada [3] previamente definida. Por fim, após o cálculo do ponto de orvalho, o resultado é retornado. Abaixo, na Figura 6, é possível visualizar o diagrama de atividade do algoritmo de cálculo de ponto de orvalho. O diagrama abaixo foi desenvolvido utilizando-se o software BizAgi [4].

Figura 6: Diagrama de atividade do algoritmo de cálculo de ponto de orvalho. 14

15 2.2.3. Pseudo-código Encontrar Zero O pseudo-código abaixo representa o implementação genérica da funcionalidade que verifica a existência de zero, na diferença entre as duas funções, em um determinado intervalo. método EncontrarZero(temp : Equação, POrvalho : Equação, t1, t2, tinc : double) : boolean variáveis v1, v2 : double; fim-variáveis início fim v1 := temp.estimar(t1) - POrvalho.Estimar(t1); para k de t1+tinc até t2 v2 := temp.estimar(k) - POrvalho.Estimar(k); se v1 > 0 E v2 < 0 retorna verdadeiro fim-se se v1 < 0 E v2 > 0 retorna verdadeiro; fim-se fim-para retorna falso; Figura 7: Pseudo-código da funcionalidade que verifica a existência de zero. No pseudo-código acima, é recebido como parâmetro o objeto que representa a equação da temperatura do solo, bem como o objeto que representa a equação do ponto de orvalho. É recebido também o intervalo no qual pretende-se verificar a ocorrência de zero, ou seja, se há um momento em que a equação da temperatura do solo é igual a equação do ponto de orvalho. Outro parâmetro necessário é o chamado tinc, sendo este a variação entre os pontos, que serão verificados a ocorrência de zero. Levando-se em consideração os parâmetros citados acima, é verificado se há um momento onde a diferença entre as duas equações sofre uma mudança de sinal, ou seja, cruza o eixo das ordenadas. Por fim, após todo o processo, caso não seja encontrado nenhum ponto de mudança de sinal, é retornado o valor falso. Caso contrário, é retornado o valor verdadeiro.

16 Abaixo, na Figura 8, é possível visualizar o diagrama de atividade do algoritmo da funcionalidade que verifica a existência de zero. O diagrama abaixo foi desenvolvido utilizando-se o software BizAgi [4]. Figura 8: Diagrama de atividade do algoritmo que verifica a existência de zero.

17 2.2.4. Pseudo-código Pivoteamento Parcial O pseudo-código abaixo representa a implementação genérica da funcionalidade responsável por escalonar o sistema de equação (Pivoteamento Parcial) [5]. método PivoteamentoParcial(A : double[][]) : double variáveis k, p : inteiro; c1, c2: double; fim-variáveis início fim para k de 0 até n-2 max := abs(a[k][k]); p := k; para i de k+1 até n-1 se abs(a[i][k]) > max então max := abs(a[i][k]); p := i; fim-se fim-para se p k então para j de k até n-1 temp := A[k][j]; A[k][j] =: A[p][j]; A[p][j] := temp; fim-para fim-se para l de k+1 até n-1 m := A[l][k] / A[k][k]; para c de k+1 até n-1 A[l][c] := A[l][c] - m*a[k][c]; fim-para fim-para fim-para retorna A; Figura 9: Pseudo-código da funcionalidade de pivoteamento parcial. No pseudo-código acima, é recebido uma matriz que representa um sistema de equação, onde a última coluna representa o termo independente. A partir deste sistema, no primeiro laço de repetição aninhado, ocorre a seleção do pivô. No segundo laço de repetição aninhado, ocorre a permutação entre as linhas da matriz. Já no terceiro laço de repetição aninhado, ocorre o escalonamento da matriz. Por fim, após todo o processo, a matriz escalonada é retornada.

18 Abaixo, nas Figuras 10, 11 e 12, é possível visualizar o diagrama de atividade do algoritmo da funcionalidade responsável por escalonar o sistema de equação. Os diagramas abaixo foram desenvolvidos utilizando-se o software BizAgi [4]. Figura 10: Diagrama de atividade da seleção do pivô. Figura 11: Diagrama de atividade da permutação entre as linhas da matriz.

19 Figura 12: Diagrama de atividade do escalonamento da matriz. 2.2.5. Pseudo-código Método dos Mínimos Quadrados O pseudo-código abaixo representa a implementação genérica da funcionalidade responsável por ajustar uma curva em relação a um determinado conjunto de pontos [6].

método MMQ(t', ft' : double[]) 20 variáveis M: double[][]; c1, c2: double; n = tamanho(t ); fim-variáveis início M[0][0] := M[0][1] := M[0][2] := M[1][0] := M[1][1] := M[1][2] := 0; para k de 1 até n M[0][0] := M[0][0] + 1; M[0][1] := M[0][1] + t'[k]; M[1][1] := M[1][1] + t'[k]* t'[k]; M[0][2] := M[0][2] + ft'[k]; M[1][2] := M[1][2] + ft'[k]*t'[k]; fim-para M[1][0] := M[0][1]; M := PivoteamentoParcial(M); c2 := M[1][2] / M[1][1]; c1 := (M[0][2] - M[0][1]*c2) / M[0][0]; fim Figura 13: Pseudo-código do método dos mínimos quadrados. No pseudo-código acima, é recebido o tempo e uma variável dependente do tempo, podendo ser a temperatura do solo ou o ponto de orvalho. A partir destas informações, é realizado o procedimento de somatórios para determinar a reta que melhor se ajusta a estes pontos pelo MMQ, como mostra a Figura 14. n 1 k=1 n t k [ k=1 n t k k=1 n (t k ) 2 k=1 ] [ c1 c2 ] = n ft k k=1 n ft k t k [ k=1 ] Figura 14: Fórmulas utilizadas no método dos mínimos quadrados (MMQ). Abaixo, na Figura 15, é possível visualizar diagrama de atividade do algoritmo da funcionalidade responsável por escalonar o sistema de equação. O diagrama abaixo foi desenvolvido utilizando-se o software BizAgi [4].

Figura 15: Diagrama de atividade do método de ajuste de curva. 21

22 Para melhor exemplificar o funcionamento do método dos mínimos quadrados, para ajuste de curvas, segue abaixo um exemplo de ajuste [6] : Figura 16: Exemplo de ajuste de curva [6]. Há algumas situações, a família de funções que mais se ajustam a um conjunto de pontos pode não ser linear. Para que seja possível aplicar o MMQ, é necessário realizar uma linearização através de uma transformação conveniente, ou seja, alguma transformação que encaixa-se nos casos abaixo. A tabela de curvas de ajuste [6] pode ser visualizada na Figura 17.

23 Figura 17: Algumas famílias de curvas para ajustes não lineares [6]. 2.2.6. Pseudo-código Desvio Padrão O pseudo-código abaixo representa a implementação genérica da funcionalidade responsável por realizar o cálculo do desvio padrão [7]. método DesvioPadrão() : double variáveis ft : double; n : tamanho(ft); k : inteiro; soma : inteiro; dif : double; fim-variáveis início fim soma := 0; para k de 0 até n-1 dif := ft[k] - Estimar(k); soma := soma + dif*dif; fim-para retorna sqrt( (1/(n-1)*soma ); Figura 18: Pseudo-código do cálculo do desvio padrão. O pseudo-código acima é responsável por realizar o cálculo do desvio padrão da equação com base nos pontos utilizados no ajuste de curvas. Por fim, após todo o cálculo do desvio padrão, o resultado é retornado.

24 Abaixo, na Figura 19, é possível visualizar o diagrama de atividade do algoritmo da funcionalidade responsável calcular o desvio padrão. O diagrama abaixo foi desenvolvido utilizando-se o software BizAgi [4]. Figura 19: Diagrama de atividade do algoritmo de cálculo do desvio padrão.

25 2.3. BLOCO DE HARDWARE 2.3.1. Diagrama Elétrico do Módulo de Aquisição Na Figura 20 mostrada abaixo, é apresentado o diagrama elétrico/lógico do módulo de aquisição das variáveis do ambiente, sendo estas a temperatura e umidade relativa do ar, bem como a temperatura do solo. O diagrama elétrico foi desenvolvido utilizando-se o software Cadsoft Eagle [8]. Figura 20: Diagrama elétrico do módulo de aquisição. O diagrama elétrico do módulo de aquisição consiste basicamente no microcontrolador ATmega168 [9] interligado com o módulo de comunicação XBee Pro S2B [10]. Estão presentes também os sensores de temperatura [11] e umidade relativa do ar [12], bem como da temperatura do solo [11].

26 2.3.2. Diagrama Elétrico do Módulo Central Na Figura 21 mostrada abaixo, é apresentado o diagrama elétrico/lógico do módulo central, que tem por finalidade solicitar os dados ao módulo de aquisição, bem como realizar os procedimentos de cálculo de ponto de orvalho, escalonamento de matrizes, ajuste de curvas a fim de obter a possibilidade de ocorrência de neblina. O diagrama elétrico foi desenvolvido utilizando-se o software Cadsoft Eagle [8]. Figura 21: Diagrama elétrico do módulo central. O diagrama elétrico do módulo central consiste basicamente do Raspberry Pi [14] interligado com o módulo de comunicação XBee Pro S2B [10]. Há também os reguladores de tensão, sendo estes o regulador de tensão para 3,3V L7833 [13], que alimentará o módulo de comunicação, e outro regulador de tensão para 5V L7805 [13], que alimentará o Raspberry Pi [14].

27 2.4. IMPLEMENTAÇÂO E INTEGRAÇÃO DOS MÓDULOS 2.4.1. Módulo de Aquisição Como foi citado no tópico anterior, o módulo de aquisição foi implementado utilizando-se um microcontrolador ATmega168 [9] interligado com o módulo de comunicação XBee Pro S2B [10]. Estão presentes também os sensores de temperatura [11] e umidade relativa do ar [12], bem como da temperatura do solo [11]. Toda a programação do módulo de aquisição foi desenvolvida em linguagem de programação C, utilizando o software Arduino, onde foram implementadas funções de aquisição de temperatura, umidade relativa e ponto de orvalho. Foi implementado também a função responsável pela integração com o módulo central, que tem por finalidade enviar os dados ao mesmo quando solicitado. O módulo de comunicação XBee [10] do módulo de aquisição foi configurado com o Function Set Router, para que assim fosse possível se comunicar com o módulo de comunicação XBee [10] do módulo central. 2.4.2. Módulo Central Como também foi citado nos tópicos anteriores, o módulo de aquisição foi implementado utilizando-se o Raspberry Pi [14] interligado com o módulo de comunicação XBee Pro S2B [10]. Toda a programação do software de processamento de previsão de neblina foi desenvolvida utilizando-se o framework de desenvolvimento QT Nokia [16], utilizando o software Arduino [17], onde foram implementadas funções da probabilidade propriamente dita e o grau de certeza. Foi implementado também a função responsável pela integração de comunicação, onde foi possível conectar-se com o mesmo para que assim fosse possível enviar solicitações ao módulo de aquisição. O layout do software de previsão de neblina pode ser visualizado na Figura 22.

28 Figura 22: Layout do software de previsão de neblina. No software titulado como Neblina é possível carregar arquivos com os dados das aquisições do módulo de aquisição, permitindo assim que seja possível visualizar se houve ou não a ocorrência, bem como o grau de certeza do mesmo. Ao iniciar-se o software, o mesmo solicita ao módulo de aquisição as informações, durante um determinado período de tempo estipulado, bem como em um formato pré-definido. As aquisições estarão sendo salvas em um arquivo.csv pronto para ser carregado diretamente pela aba menu do software Neblina. Como trata-se do módulo central, o mesmo pode vir a ser acessado remotamente através do software VNC Viewer [18]. Através deste software, qualquer usuário pode conectar-se ao módulo central remotamente, bem como utilizar as suas funcionalidades visuais como se estivesse em frente ao mesmo. O ambiente remoto pode ser visualizado na Figura 23.

29 Figura 23: Ambiente remoto do módulo central. O módulo de comunicação XBee [10] do módulo central foi configurado com o Function Set Coordinator, para que assim fosse possível se comunicar com o módulo de comunicação XBee [10] do módulo de aquisição.

30 3. CRONOGRAMA DO PROJETO O desenvolvimento do projeto Sistema de Previsão de Condições Adversas de Condução Envolvendo Neblina em Rodovias, descrito detalhadamente nos tópicos acima, tem prazos mostrados no cronograma da Figura 24, que refere-se às atividades já cumpridas no decorrer da disciplina de Projeto Final I, e no gráfico da Figura 25, que refere-se atividades cumpridas no decorrer da disciplina de Projeto Final II. As atividades, bem como suas respectivas durações e porcentagens de conclusão, estão presentes no cronograma. O cronograma do projeto foi desenvolvido utilizando-se o software Microsoft Project [15]. são: A data de inicio do projeto, a data de término do projeto e a duração do projeto o Data de início do projeto: 04/02/2013. o Data de término do projeto: 29/11/2013. o Duração do projeto: 180 dias (724 Horas). Figura 24: Cronograma do projeto referente ao Projeto Final I.

Figura 25: Cronograma do projeto referente ao Projeto Final II. 31

32 4. PLANO DE TESTES 4.1. INTRODUÇÃO Há uma dificuldade elevada para realizar os testes práticos de validação, visto que é necessário realizar varias visitas, em horários pouco oportunos, em regiões afastadas do meio urbano, o que pode inviabilizar o procedimento. Para contornar a dificuldade de uma validação em campo, serão realizados testes de aquisição, referente o módulo de aquisição e testes de emulação de dados anteriormente adquiridos, referente ao módulo de módulo central. Estes testes serão realizados a fim de confirmar e validar o correto funcionamento do projeto. 4.2. PLANO DE TESTES DO MÓDULO DE AQUISIÇÃO 4.2.1. Descrição Para validar o funcionamento do módulo de aquisição, serão realizados testes de aquisição dos dados de temperatura do ar e do solo, bem como a umidade relativa do ar, utilizando-se os sensores presentes nos módulos de sensoriamento. Para validar os dados adquiridos, serão comparados os resultados obtidos com equipamentos eletrônicos de medição. Para validar a humidade relativa e a temperatura do ar, será utilizado um termo higrômetro, que tem por finalidade medir a temperatura e a humidade relativa do ar. Para validar a temperatura do solo, será utilizado um multímetro com termômetro externo, que tem por finalidade medir a temperatura do solo. 4.2.2. Resultados esperados Através dos procedimentos de teste citados acima, será possível garantir que os dados coletados estão condizentes com a realidade e são aptos a serem processados para realizar o processo de previsão. 4.2.3. Resultados obtidos Após realizada a aquisição dos dados juntamente com equipamentos eletrônicos de medição, sendo estes um sensor de temperatura do ar para validar a temperatura do ambiente, um sensor de temperatura fixado no solo para validar a temperatura do solo e um sensor de humidade relativa para validar a humidade relativa aferida pelo módulo de aquisição, foi possível constatar que a aquisição

33 estava precisamente em uma faixa de 2 a 3% de variação referente aos equipamentos eletrônicos. Logo, obteve-se êxito nos testes e os dados estavam aptos a serem enviados e processados pelo módulo central. 4.3. PLANO DE TESTES DO MÓDULO CENTRAL 4.3.1. Descrição Para validar o funcionamento do módulo central, serão realizados testes a partir da emulação de dados de temperatura do ar e do solo, bem como a umidade relativa do ar, utilizando-se os módulos de sensoriamento. Emular aquisição dos dados de temperatura do ar e do solo, bem como a umidade relativa do ar, utilizando-se dados fornecidos por estações meteorológicas que disponibilizam informações on-line. Neste procedimento, o módulo central receberá os dados e realizará o processamento das variáveis em questão. A previsão realizada pelo módulo central será comparada com uma situação posterior a da aquisição dos dados. 4.3.2. Resultados esperados Ao emular a aquisição das variáveis do ambiente e do solo, através do teste descrito no tópico acima, será possível verificar a consistência dos resultados gerados, sem ser necessário realizar múltiplas visitas em locais de difícil acesso, sem comprometer o processo de validação e teste. 4.3.3. Resultados obtidos Baseando-se no plano de testes descrito acima, foram utilizados dados disponibilizados on-line por estações meteorológicas, em duas diferentes ocasiões, sendo uma ocasião em um dia normal, onde não houve a incidência de neblina e a outra ocasião em um dia diferente, onde houve a incidência de neblina em um período de tempo. Os dados foram inseridos em uma planilha para que pudessem ser carregados pelo software implementado no módulo central. Foram utilizados arquivos parcialmente preenchidos, para que assim fosse possível validar se o software de previsão estava conseguindo realizar o processamento corretamente para a faixa de horário real onde realmente houve ou não a incidência de neblina. Os exemplos das planilhas dos dados utilizados podem ser visualizadas nas Figuras 26 e 27.

34 Figura 26: Dados de incidência de neblina. Figura 27: Dados parciais de incidência de neblina.

35 Foram realizados testes de funcionamento do software para ambas as situações, sendo a de incidência de neblina e a de não incidência de neblina. O funcionamento pode ser vializado nas Figuras 28 e 29. Figura 28: Funcionamento evidenciando a incidência de neblina. Figura 29: Funcionamento evidenciando a não incidência de neblina. Obteve-se êxito nesta etapa do projeto, visto que o software desenvolvido para a previsão de neblina funcionou precisamente, baseando-se nas informações completas dos das aquisições.

36 5. ANÁLISE DOS RISCOS Em relação ao desenvolvimento do projeto, foram analisados os riscos de projeto, levando-se em consideração os integrantes da equipe, falhas técnicas ou de hardware, bem como problemas gerais no decorrer do projeto. Foram também identificadas e descritas as ações que podem ser tomadas para a prevenção dos riscos. A tabela foi desenvolvida baseando-se nos seguintes campos: Identificação do risco: número sequencial; Descrição do risco: explanação básica sobre o risco em questão; Probabilidade de ocorrência: Alta = 3, Média = 2 e Baixa = 1; Impacto no projeto caso o risco ocorra: Alta = 3, Média = 2 e Baixa = 1; Severidade: expressa como S=P*I (Probabilidade x Impacto); Ação para prevenção (ou redução): ação que visa ser tomada de forma preventiva, de modo a reduzir a probabilidade de ocorrência do risco; Ação de contingência: ação que visa ser tomada após a ocorrência do risco, de modo a reduzir o impacto sobre o projeto. Risco 1 Integrante Jonathan Carvalho Diniz se desligar do projeto PROBABILIDADE DE OCORRÊNCIA: 1 IMPACTO NO PROJETO: 3 RESPONSABILIDADE: Jonathan Carvalho Diniz SEVERIDADE: 3 DESCRIÇÃO DO RISCO: AÇÃO PARA PREVENÇÃO: AÇÃO DE CONTINGÊNCIA: O integrante Jonathan Carvalho Diniz se desvincular do projeto por motivos diversos. Dialogar com o outro integrante da equipe no inicio do projeto, sobre disponibilidade tempo, responsabilidade e comprometimento com o projeto. Manter as documentações padronizadas e atualizadas de acordo com o andamento do projeto.

37 Risco 2 Integrante Henrique Duarte Lima se desligar do projeto PROBABILIDADE DE OCORRÊNCIA: 1 IMPACTO NO PROJETO: 3 RESPONSABILIDADE: Henrique Duarte Lima SEVERIDADE: 3 DESCRIÇÃO DO RISCO: AÇÃO PARA PREVENÇÃO: AÇÃO DE CONTINGÊNCIA: O integrante Henrique Duarte Lima se desvincular do projeto por motivos diversos. Dialogar com o outro integrante da equipe no inicio do projeto, sobre disponibilidade tempo, responsabilidade e comprometimento com o projeto. Manter as documentações padronizadas e atualizadas de acordo com o andamento do projeto. Risco 3 Problemas financeiros no desenvolvimento do projeto PROBABILIDADE DE OCORRÊNCIA: 1 IMPACTO NO PROJETO: 3 RESPONSABILIDADE: Integrantes da equipe SEVERIDADE: 3 DESCRIÇÃO DO RISCO: AÇÃO PARA PREVENÇÃO: AÇÃO DE CONTINGÊNCIA: Indisponibilidade de fundos para o desenvolvimento do projeto, sendo este, por parte dos integrantes da equipe. Realização de uma estimativa de custo detalhada e de uma análise por parte dos integrantes da equipe, contemplando uma melhor relação custo x beneficio. Elaborar uma planilha com as necessidades e seus devidos custos, para que assim não ocorra uma extrapolação de orçamento. Minimizar os possíveis prejuízos oriundos do intempero financeira.