UNIVERSIDADEDOSULDESANTACATARINA
LEONEPAGANI
PLATAFORMA WEB PARA VISUALIZAÇÃO DE DADOS AUTOMOTIVOS A PARTIR DA SUA CENTRAL ELETRÔNICA
Florianópolis 2017
LEONEPAGANI
PLATAFORMA WEB PARA VISUALIZAÇÃO DE DADOS AUTOMOTIVOS A PARTIR DA SUA CENTRAL ELETRÔNICA
Trabalho de Conclusão de Curso apresentado ao Curso de Graduação em Sistemas de Informação da Universidade do Sul de Santa Catarina, como requisito parcial à obtenção do título de Bacharel em Sistemas de Informação.
Orientador: Prof. Flávio Ceci, Dr
Florianópolis 2017
Dedico este trabalho aos meus pais, grandes incentivadores do estudo e da formação acadêmica, que sempre acreditaram em minha capacidade, e nunca desistiram de me proporcionar o melhor.
AGRADECIMENTOS
No desenvolvimento deste trabalho, tive a participação de pessoas muito importantes, pessoas que me acompanharam desde o início do curso de graduação, e que me deram apoio e não mediram esforços para ajudar nesta conquista.
Primeiramente, agradeço a Deus, agradeço por cada dia e cada experiência que passei, cada nova oportunidade me fez aprender e evoluir. Agradeço aos meus pais, por todo apoio, carinho e paciência, assim como todo esforço para que eu pudesse atingir meus objetivos. Obrigado meus pais.
Agradeço a minha namorada Michelly, que sempre esteve ao meu lado me dando apoio e incentivando, comemorando nos momentos de conquistas, e dando apoio nos momentos de estresse. Obrigado por todo amor, carinho e compreensão. Eu te amo.
Agradeço por cada amizade que fiz nesses anos, umas que se distanciaram, e outras que sinto que irão perdurar por uma vida toda, um agradecimento especial a Nathani e ao Filipe que compartilharam as dores e preocupações em todos esses anos.
Agradeço ao meu orientador Dr. Flávio Ceci, que não mediu esforços ao longo deste trabalho, tirando dúvidas, tranquilizando nos momentos de maior aflição e compartilhando seu conhecimento. Agradeço por ser além de um profissional excelente, uma pessoa magnífica, educada e paciente. Obrigado, meu mestre.
Agradeço aos meus amigos de fora do mundo acadêmico, que direta ou indiretamente me apoiaram nesta etapa, que entenderam meus momentos de ausência e sempre me ajudaram no que puderam.
Por fim, agradeço aos professores do curso de Sistemas de Informação da Universidade do Sul de Santa Catarina, por todo conhecimento compartilhado. Muito obrigado.
“A tarefa não é tanto ver aquilo que ninguém viu, mas pensar o que ninguém ainda pensou sobre aquilo que todo mundo vê.”. (Arthur Schopenhauer).
RESUMO
Desde a invenção dos automóveis, a necessidade de manutenção dos veículos vem crescendo, assim como as tecnologias empregadas neles. A evolução de um sistema mecânico para o sistema eletrônico, trouxe consigo a necessidade de visualização dos parâmetros dos veículos para realizar o monitoramento de diversos componentes do motor, localizando e prevenindo possíveis problemas, e até otimizar o desempenho do veículo através de dados que possam ser visualizados por um mecânico profissional. Este trabalho tem o objetivo de propor uma plataforma web para visualizar os dados do veículo em forma de gráficos. A plataforma foi desenvolvida utilizando a linguagem de programação PHP e um banco de dados SQL para armazenamentos dos dados coletados do veículo através de um conector OBD. Para analisar os resultados desta plataforma, foi realizada uma avaliação para julgar a importância e satisfação dos participantes com a plataforma desenvolvida. A avaliação demonstrou que o sistema desenvolvido atingiu a proposta do trabalho, exibindo os dados de forma clara e íntegra, dentro de um sistema que garante usabilidade e ergonomia.
ABSTRACT
Since the invention of automobiles, the maintenance necessity, of vehicles are growing, as the technologies used in them. The evolution of a mechanical system for a eletronic system, brought with you the parameter viewing necessity of vehicles to monitoring various engine components, locating and preventing possibles issues, and even, optimize performance of vehicle, through data can be viewed for a professional mechanic. This paper have the objective to propose a web platform to view the vehicle data in graphic form. The platform was developed using the PHP programming language and a SQL database to storage of vehicle data through an OBD connector. To analyze the results of this platform, it was made a evaluation to judge the importance and satisfaction of participants with the developed platform. The evaluation showed that the developed system reached the proposal of the paper, displaying the data in a clear and integral, within a system that guarantees usability and ergonomics.
LISTA DE ILUSTRAÇÕES
Figura 1 – Carruagem motorizada de 1886 ... 18
Figura 2 - Ford Modelo T e seu criador Henry Ford ... 18
Figura 3 - ECU - Central Eletrônica ... 20
Figura 4 - Conector OBD II ... 27
Figura 5 - Etapas do projeto ... 32
Figura 6 - Etapas do projeto ... 34
Figura 7 - Arquitetura física da solução ... 36
Figura 8 - Métodologia Iconix ... 38
Figura 9 - Protóripo da tela principal ... 40
Figura 10 - Protótipo da tela de importação ... 41
Figura 11 - Protótipo da tela de listagem de arquivos importados ... 41
Figura 12 - Atores do sistema ... 42
Figura 13 - Atores e Funções ... 42
Figura 14 - Modelo de domínio ... 43
Figura 15 - Diagrama de Robustez - Importar Novo Arquivo ... 44
Figura 16 - Diagrama de Robustez – Carregar Arquivo Salvo ... 44
Figura 17 - Diagrama de Sequência - Importar Novo Arquivo ... 46
Figura 18 - Diagrama de Sequência - Carregar Arquivo Salvo ... 47
Figura 19 - Diagrama de Classe ... 48
Figura 20 - Esquema do sistema ... 49
Figura 21 - Tecnologias e ferramentas ... 50
Figura 22 - Tela inicial do sistema ... 54
Figura 23 – Pop-up de importação de arquivo ... 55
Figura 24 - Selecionar arquivo salvo ... 56
Figura 25 - Caixa de seleção de sensores ... 57
Figura 26 - Adaptador OBD II utilizado ... 58
Figura 27 - Conector OBD II localizado no veículo ... 58
Figura 28 - Adaptador ligado ao conector OBD II ... 59
Figura 29 - Conexão realizada ao veículo ... 59
Figura 30 - ScanMaster-ELM gravando os dados do veículo ... 60
Figura 31 - Arquivo .CSV exportado ... 60
Figura 32 - Importando o arquivo gerado ... 61
Figura 33 - Arquivo carregado dentro do sistema ... 62
Figura 34 - Lista de arquivos já importados ... 62
Figura 35 - Questão 1 ... 66
Figura 36 - Questão 2 ... 66
Figura 37 - Questão 3 ... 67
LISTADETABELAS
LISTADEQUADROS
Quadro 1 - Itens apresentados no OBD I ... 26
Quadro 2 - Itens apresentados no OBD II ... 27
Quadro 3 - Detalhamento robustez ... 44
SUMÁRIO 1 INTRODUÇÃO ... 13 1.1 PROBLEMÁTICA ...14 1.2 OBJETIVOS ...15 1.2.1 Objetivo Geral ...15 1.2.2 Objetivos Específicos ...15 1.3 JUSTIFICATIVA ...15 1.4 ESTRUTURA DA MONOGRAFIA ...16 2 REFERENCIAL TEÓRICO ... 17 2.1 AUTOMÓVEIS ...17 2.1.1 Origem ...17 2.1.2 Produção no Brasil ...19
2.1.3 Unidade Eletrônica de Controle - ECU...19
2.1.4 Eletrônica embarcada ...21
2.1.5 Internet das Coisas ...22
2.2 OBD ...23
2.2.1 Origem ...24
2.2.2 Evolução ...24
2.2.3 Necessidade deste sistema ...25
2.2.4 OBD I ...26
2.2.5 OBD II ...27
3 MÉTODO... 29
3.1 CARACTERIZAÇÃO DO TIPO DE PESQUISA ...29
3.1.1 Pesquisa aplicada ...30 3.1.2 Pesquisa bibliográfica ...30 3.1.3 Pesquisa qualitativa ...31 3.1.4 Pesquisa quantitativa ...31 3.1.5 ETAPAS METODOLÓGICAS ...32 3.1.6 DESENHO DA SOLUÇÃO ...33 3.1.7 DELIMITAÇÕES ...34 3.1.8 CUSTOS ...35 4 PROPOSTA DE SOLUÇÃO ... 36 4.1 ARQUITETURA FÍSICA ...36 4.2 METODOLOGIA ICONIX ...37 4.2.1 Requisitos ...39 4.2.2 Protótipo de Tela ...40 4.2.3 Casos de Uso ...42 4.2.4 Modelo de Domínio ...43 4.2.5 Diagrama de Robustez ...43 4.2.6 Diagrama de Sequência ...45 4.2.7 Diagrama de Classe...47 5 PROPOSTA DE SOLUÇÃO ... 49 5.1 ESQUEMA DO SISTEMA ...49
5.2 TECNOLOGIAS E FERRAMENTAS UTILIZADAS ...50
5.2.1 PHP ...51 5.2.2 Apache ...51 5.2.3 MySQL ...51 5.2.4 Sublime Text ...52 5.2.5 Jquery ...52 5.2.6 Enterprise Architect ...52 5.2.7 Balsamiq Mockups ...53
5.2.8 Bootstrap ...53
5.3 PLATAFORMA WEB DESENVOLVIDA ...53
5.4 PROCESSO ...57
5.4.1 Captura dos dados do veículo ...57
5.4.2 Importação no sistema ...61
5.5 AVALIAÇÃO DO SISTEMA ...63
5.5.1 Cenário de avaliação ...63
5.5.2 Questionário desenvolvido ...64
5.5.3 Análise dos resultados...65
5.5.4 Conclusão da avaliação...69
6 CONCLUSÃO E TRABALHOS FUTUROS ... 70
6.1 CONCLUSÃO ...70
1 INTRODUÇÃO
O mercado automotivo está em constante crescimento, abrindo portas para novos segmentos de mercado. Com o avanço dos estudos baseado em tecnologia, os automóveis foram evoluídos para oferecer maior segurança, conforto e potência, e isto causou um aumento significativo no seu custo de produção. Se para o consumidor comprar se tornou mais caro, mantê-lo também se tornou, isto inclui peças de desgaste, como pneus e freios até manutenções periódicas, que exigem mão de obra especializada.
Segundo Mariana Barros (2015), na última década a frota brasileira passou de 24 milhões para 50 milhões de veículos, e teve um aumento percentual 11 vezes maior que o da população.
Os acidentes de trânsito estão entre as principais causas de mortes no mundo, 1.25 milhão de pessoas morrem todos os anos vítimas de acidentes de trânsito. O Brasil é responsável por 47 mil dessas mortes. Falhas mecânicas estão entre os principais motivos de acidentes nas rodovias brasileiras.
Segundo dados do programa de Check-up gratuito, Carro 100%, promovido em São Paulo – SP, 62% dos veículos apresentaram alguma deficiência em itens de segurança. Na mesma amostragem, constatou-se que 38% dos veículos avaliados tinham alguma deficiência no sistema de frenagem, entre 8% e 9%, apresentaram problemas na suspensão, sendo itens diretamente ligados a segurança, a deficiência desses componentes compromete diretamente a segurança. (MARCONDES, 2015).
Levantamentos apontam que 80% dos motoristas levam o veículo para revisão apenas nos primeiros 2 anos, A partir do 3º ano, esse índice cai para 59%, e a cada ano que passa, esse número cai ainda mais. Entre os componentes que mais apresentam problemas, encontram-se as correias auxiliares, sistema de arrefecimento e correia dentada.
Saber o que acontece com o veículo é fundamental, diversos problemas podem ocorrer e nem sempre podem ser diagnosticados de forma física, isto ocorre, pois os veículos passaram a utilizar a injeção eletrônica, que por sua vez se alimenta de informações vindas de diversos sensores, e se um deles percebe que algo saiu do normal, sua função é de alertar o condutor. Porém com a falta do computador de bordo nos veículos, fica impossível diagnosticar qual o problema, e de onde exatamente ele provém. Tendo em vista esta dificuldade, seria necessário um sistema que receberia os dados coletados do veículo e
realizasse uma análise, com isto, transmitindo as informações do veículo de forma clara e visual ao condutor, ajudando-o a sanar o problema.
1.1 PROBLEMÁTICA
Desde a criação dos primeiros automóveis, a necessidade de monitorar o seu funcionamento está diretamente ligada à sua evolução. Com o avanço da tecnologia, consequentemente os veículos deixaram de ser apenas um meio de locomoção equipados com nada além do suficiente para serem conduzidos, e passaram a incorporar e oferecer outros serviços. Tal avanço tecnológico pode ser observado também na motorização, automatizando diversas operações responsáveis pelo funcionamento.
Essa automatização se deve a chamada Injeção Eletrônica, que se alimenta de informações coletadas por diversos sensores espalhados pelo motor, que retornam a atual situação em que está trabalhando. Após receber estas informações, a Injeção Eletrônica ajusta o funcionamento do motor, para a atual condição que se encontra, podendo variar de acordo com as condições climáticas, qualidade do combustível e instabilidade das vias.
Em automóveis de classe superior, estes vem equipado com computador de bordo, que em sua grande maioria informam dados vindos do motor, como, consumo de combustível e velocidade média, porém, nada muito detalhado e pertinente a manutenção do veículo. Para isto temos o conector OBD (On Board Diagnotics), que está presente em todos os veículos equipados com Injeção Eletrônica, este conector retorna todas as informações vindas do motor, inclusive problemas que possam ser apresentados internamente.
A falta de informação sobre o estado de funcionamento do veículo, pode causar diversos danos, como desgaste excessivo de peças, problemas com o arrefecimento e diversos outros problemas que podem pôr em risco a vida do condutor, por conta de alguma falha mecânica que não foi diagnosticada antecipadamente.
Sabendo destas informações, seria possível desenvolver um sistema, capaz de processar e apresentar estas informações de forma clara e visual ao condutor?
1.2 OBJETIVOS
Esta seção apresenta os objetivos geral e específicos do presente trabalho.
1.2.1 Objetivo Geral
Estabelecer uma proposta de solução para visualização dos dados vindos de uma central eletrônica automotiva.
1.2.2 Objetivos Específicos
a)Identificar as possíveis interfaces de comunicação com a central eletrônica automotiva. b)Levantar a natureza dos dados coletados por essa central para a apresentação ao
motorista.
c)Desenhar uma solução para visualizar os dados coletados.
d)Estabelecer um experimento para atestar a viabilidade da proposta de solução. e)Avaliar os resultados obtidos.
f)Armazenar o histórico de leituras.
1.3 JUSTIFICATIVA
Segundo Teixeira, Oliveira e Heleno (2014), diagnosticar problemas no motor, representa uma atividade importante, prevenindo problemas de forma antecipada em veículos de carga, conforme diz:
O controle das funções de veículos para diagnosticar, em tempo real, problemas no motor pode representar uma atividade importante, especialmente em veículos usados para transporte de cargas. Este controle permite diagnosticar ou prevenir problemas graves de forma antecipada. Atualmente, este controle é feito por meio dos sistemas OBD. Tais sistemas são utilizados na maioria dos automóveis leves e pesados que circulam atualmente nas estradas (TEIXEIRA; OLIVEIRA; HELENO, 2014, p1). Ter a possibilidade de monitorar o veículo e identificar problemas, ajuda ao condutor guiar de maneira que consiga extrair o melhor desempenho do veículo, diminuindo o consumo e aumentar a longevidade da mecânica. A vantagem de monitorar o funcionamento do veículo, pode ser observado também em competições automobilísticas, onde a mecânica é alterada para que se possa extrair o melhor desempenho, visando a competição, auxiliando em ajustes finos e no monitoramento, afinal, nessas competições, os veículos são levados a condições extremas, facilitando que problemas possam ocorrer.
Identificar problemas com antecedência ajuda a manter o veículo com a manutenção em dia, além de prevenir que acidentes possam ocorrer por algum tipo de falha mecânica. Outro grande benefício é encontrado nas oficinas, esta leitura dos dados do veículo ajuda na identificação do problema, fazendo com que o reparo do veículo ocorra de forma mais ágil, economizando recursos e mão de obra desnecessária.
1.4 ESTRUTURA DA MONOGRAFIA
Este trabalho de conclusão de curso é composto por seis capítulos.
No primeiro capítulo, são apresentados os elementos da pesquisa que norteiam este trabalho.
O capítulo 2 possui a revisão bibliográfica dos principais temas que fundamentam a busca pela proposta de solução.
No capítulo 3 é apresentado o método de pesquisa utilizado para se conduzir a pesquisa em questão.
O capítulo 4 tem como objetivo apresentar o projeto da proposta de solução utilizando modelagem de software.
O capítulo 5 apresenta o protótipo desenvolvido, juntamente com a sua avaliação. Por fim no capitulo 6 são apresentadas as conclusões e os trabalhos futuros.
2 REFERENCIAL TEÓRICO
O presente capítulo tem o objetivo tem apresentar uma revisão teórica de conceitos e ideias apresentadas por diversos autores, os assuntos pesquisados estão relacionados com automóveis, OBD e sistemas de informação.
2.1 AUTOMÓVEIS
“AUTOMÓVEL - veículo automotor destinado ao transporte de passageiros, com capacidade para até oito pessoas, exclusive o condutor. ” (BRASIL, 1997, p. 1).
2.1.1 Origem
Para entender sobre os automóveis, é necessário aprender sua origem e principalmente sua evolução, nesta seção é apresentada como e quando foi o surgimento dos automóveis e como evoluíram até se tornarem as máquinas confiáveis que fazem parte do nosso cotidiano.
“O primeiro meio de transporte a fazer uso de um motor a gasolina para se locomover foi um automóvel que continha somente três rodas e foi criado no ano de 1885 por um alemão de nome Karl Benz.” (SANTANA, 2016, p. 1).
“Com o passar do tempo foram sendo idealizados outros exemplares, muitos deles com o que era chamado na época de “motor de dois tempos”, idealizado em 1884 por Gottlieb Daimbler.” (SANTANA, 2016, p. 1).
“(...) Em 1886, Daimler e Maybach compraram uma carruagem e adaptaram-na para receber um motor mais potente, criando o primeiro carro de quatro rodas do mundo, que chegava a 16 km/h.” (GUSTAVO, 2012, p. 1). A Figura 1 mostra como éra esse veículo.
Figura 1 – Carruagem motorizada de 1886
Fonte: Gustavo (2012).
“A partir de então teve início a corrida pela produção e venda de automóveis, iniciada por uma empresa francesa conhecida pelo nome de Panhard et Levassor. No ano de 1892, o conhecido Henry Ford fabricou seu primeiro carro, o Ford, na América do Norte” (SANTANA, 2016, p. 1).
“Em 1908 tinha sido lançado o famoso modelo T que viria a ser o primeiro automóvel a ser produzido em série.” (SMART14, 2007, p. 1). A Figura 2 mostra esse modelo com seu criador. “[...] Até 1927 foram vendidos 15 milhões de modelos T.”[...] (SMART14, 2007, p. 1).
Figura 2 - Ford Modelo T e seu criador Henry Ford
Fonte: Estudante (2013).
O modelo T parou de ser vendido em 1927, pois havia se tornado obsoleto, apesar do preço baixo, ninguém mais queria compra-lo, logo, a fábrica parou de produzir durante
alguns meses até que pudesse lançar um modelo novo. A General Motors assumiu então o posto de número 1 do mundo.
2.1.2 Produção no Brasil
“Foi na década de 30 que algumas fábricas estrangeiras começaram a investir no Brasil; as duas primeiras a por em funcionamento suas linhas de montagem foram a Ford e a General Motors.” (SANTANA, 2016, p. 1).
Segundo Santana (2016), Quando Juscelino Kubitscheck se tornou presidente da República Brasileira, as multinacionais iniciaram a produção de veículos, começando por caminhões, caminhonetes, e furgões, até os veículos de passeio, conforme diz:
Porém o boom mesmo veio no ano de 1956, quando Juscelino Kubitscheck tornou-se Presidente da República Brasileira; As multinacionais iniciaram então a produção dos automotores. Inicialmente produziram caminhões, camionetas, jipes e furgões para então chegarem aos autos utilizados para passeio. (SANTANA, 2016, p. 1).
“Completamente distinto do que era antigamente, o automóvel contemporâneo têm particularidades das quais nós só podemos desfrutar hoje, como conforto e agilidade, sem dizer que hoje a maioria deles são muito mais silenciosos e seguros”. (SANTANA, 2016, p. 1).
Segundo Santana (2016), além de ser objeto de desejo de milhares de pessoas, o processo produtivo dos automóveis proporciona milhares de empregos no mundo, movimentando bilhões de dólares e gerando lucro para as empresas fabricantes.
2.1.3 Unidade Eletrônica de Controle - ECU
Segundo Dias (2012), a ECU é o componente da injeção eletrônica mais importante do veículo, alguns chamam de cérebro do motor, pois este componente é o responsável por receber, analisar e comparar os parâmetros provenientes dos sensores, e
comandar os atuadores para manter o motor perfeito funcionamento, independente de condição climática ou outros fatores externos, buscando a melhor eficiência possível.
“Antigamente o carburador era o cara responsável por enviar a quantidade adequada de ar e combustível para os cilindros. Felizmente, hoje esse trabalho é todo feito por um sistema eletrônico chamado ‘Unidade de Controle do Motor’.” (CONTESINI, 2014, p. 1).
Segundo Contesini (2014), a ECU, ou como é conhecida, módulo de injeção, ela otimiza o desempenho do veículo utilizando sensores para controlar variáveis em um motor.
Figura 3 - ECU - Central Eletrônica
Fonte: Dias (2012).
Segundo Contesini (2014), a ECU, basicamente, é responsável, por quatro tarefas. A primeira delas é controlar a mistura ar-combustível. A segunda é controlar a marcha lenta, a terceira é controlar o tempo de ignição e a última, em alguns casos, ela controla o comando de válvulas. Em alguns veículos mais bem equipados e dotados de tecnologias de assistência como ABS e ESP, esses sistemas também tem suas funções incorporadas a ECU, ou controladas por ela através de módulos separados.
Segundo Contesini (2014), a injeção eletrônica é capaz de controlar e otimizar uma série funções do motor, substituindo mecanismos antiquados e propensos a falhas como, carburadores e distribuidores de ignição, por um sistema eletro-mecânico, graças a capacidade da ECU, e ainda auxiliar em sistemas de segurança, como controle de tração, controle de estabilidade e ABS.
2.1.4 Eletrônica embarcada
“Eletrônica embarcada é um sistema eletrônico projetado para ser usado em algum tipo específico de veículo de transporte, onde as exigências são superiores às dos sistemas eletrônicos fixos.” (DANTAS, 2016, p. 1).
A ECU é capaz de controlar funcionalidades do veículo, tais como:
“ABS (Anti-lock Brake System): sistema que controla a ação dos freios sobre cada roda, evitando que elas travem. Em frenagens severas, esta ação reduz o espaço de frenagem entre 20 e 30% e ainda mantém o controle direcional do veículo.” (DANTAS, 2016, p. 1).
Segundo Dantas (2016), ACC (Automatic Climate Control) é o módulo que comanda o aquecimento, ar-condicionado e distribuição de ar dentro do veículo, controlando principalmente a temperatura do ar, conhecido como ECC (Eletronic Climate Control), ou ar-condicionado digital.
Segundo Dantas (2016), ACM (Airbag Control Module) é um módulo eletrônico responsável pelo controle do airbag. Este módulo utiliza os dados coletados de diversos sensores espalhados por todo o veículo, afim de identificar sem enganos uma colisão e poder fazer o acionamento dos airbags em poucos milésimos de segundos.
Segundo Dantas (2016), EBD é um sistema que controla independentemente a frenagem de cada roda, baseado na aderência prevista para cada, conforme diz:
EBD (Electronic Brake force Distribution): sistema que controla independentemente a força de frenagem em cada roda a partir das capacidades previstas de aderência para elas. Num veículo em curva, por exemplo, o peso é transferido das rodas internas para as externas à curva, diminuindo a capacidade de frenagem das rodas internas e aumentando a das externas. Sem o EBD, numa frenagem de emergência em curva as rodas internas podem travar ou o ABS atuar sobre elas prematuramente, muito antes do limite das rodas externas ser atingido, diminuindo a eficiência da frenagem e comprometendo a estabilidade direcional do veículo. Com o EBD, as rodas são freadas proporcionalmente às suas capacidades naquele instante, equilibrando a frenagem. (DANTAS, 2016, p. 1).
Segundo Dantas (2016), o EDS é um sistema que controla o escorregamento da roda, desta forma, acionando o freio e limitando seu escorregamento, permitindo transmitir mais potência para outra roda, conforme diz:
EDS (Electronic Diferential lock System): sistema que controla o escorregamento das rodas motrizes atuando sobre os freios destas rodas. Caso uma das rodas motrizes deslize por excesso de potência de aceleração, o EDS aciona o freio desta roda, limitando seu escorregamento e permitindo que mais potência seja direcionada para a outra roda através do diferencial.
O conjunto funciona como um diferencial com bloqueio inteligente. (DANTAS, 2016, p. 1).
“ECS (Electronic Clutch System): sistema eletrônico que aciona automaticamente a embreagem em sistemas de câmbio convencional, dispensando o pedal de acionamento.” (DANTAS, 2016).
Segundo Dantas (2016), o ETC é um sistema de controle de aceleração que substitui o tradicional cabo de aço por um potenciômetro, que mede a posição do pedal do acelerador e passa a informação para a ECU, que através de um motor elétrico atua sobre a abertura da borboleta de aceleração, conforme diz:
ETC (Electronic Throttle Control): sistema de abertura controlada eletronicamente da borboleta de aceleração. Substitui o tradicional cabo de aço por um potenciômetro que mede a posição do pedal do acelerador, e um motor elétrico controlado pela módulo eletrônico da injeção que atua sobre a abertura da borboleta. Conhecido popularmente como “acelerador eletrônico”. (DANTAS, 2016, p. 1).
Segundo Dantas (2016), o PAS é um sistema que auxilia o motorista a estacionar o veículo, através de sensores e uma câmera instalada na traseira do veículo que transmiti a imagem para uma tela localizada no interior do mesmo, conforme diz:
PAS (Parking Assistant System): sistema de auxílio ao motorista para estacionamento. Através de sensores, avalia a existência de obstáculos fora do campo de visão do motorista, enquanto uma tela no painel mostra imagens de uma câmera instalada na traseira do veículo sobrepostas por marcas de distâncias e de limites, enquanto alertas auditivos e visuais podem ser disparados em intensidade proporcional ao risco de colisão. Sistemas mais avançados, inteligentes (IPAS – Inteligent Assistant System) podem realizar a manobra sozinhos, monitorados pelo motorista. (DANTAS, 2016, p. 1).
“A eletrônica embarcada visa fornecer um sistema inteligente que possa interagir com dispositivos capazes de realizar algum tipo de ação num veículo com sensores que informem quando essas ações precisam ser executadas ou quando não podem.” (INSTITUTO NEWTON C BRAGA, 2005).
2.1.5 Internet das Coisas
“Internet das Coisas é uma tradução literal da expressão em inglês Internet of Things (IoT). Em português, o nome mais adequado poderia ser algo como "Internet em Todas as Coisas"[...]”. (ALECRIM, 2017, p. 1).
Segundo Alecrim (2017), a Internet das Coisas é um conceito constituído a partir de três fatores: dispositivos, redes de comunicação e sistemas de controle, e não pode ser visto como uma tecnologia “maciça”.
Segundo Tecnologia (2014), no contexto da Internet das Coisas, uma “Coisa” é um objeto conectado à internet, por exemplo, um aparelho doméstico, uma monitor cardíaco em uma pessoa, um rastreador em animais domésticos e de fazenda, um veículo e seus periféricos ou qualquer objeto natural ou construído pelo homem.
Segundo Tecnologia (2014), a Internet das coisas possui tecnologias em comum com a comunicação machine-to-machine (M2M), utilizada em industrias. Porém, o conceito de Internet das Coisas vai além, pois propõe um futuro no qual todos os objetos estão conectados e comunicando-se de forma inteligente. O mundo físico da origem a um grande sistema de informação.
2.2 OBD
Segundo Machado e Oliveira (2016), já faz muito tempo que os automóveis passaram a utilizar módulo eletrônicos, para controlar tarefas específicas de um veículo, porém se antigamente estes módulos se limitavam a controlar a injeção do veículo, hoje eles fazem muito mais que apenas isso. Atualmente estes módulos recebem uma grande quantidade de informação, alimentados por uma série de sensores, que não apenas pode identificar a falha, mas como pode reprogramar a sistema para corrigir a falha, caso a falha não possa ser corrigida, esta é armazenada em memória, para quer possa ajudar a diagnosticar o problema na oficina, caso haja uma falha grave no veículo, o sistema tem a capacidade de limitar o veículo a ser utilizado em um modo especial, onde permite seguir em segurança até a oficina mais próxima. Desde 1 de janeiro de 1996, todos os veículos tiveram que ser produzidos com uma interface criada pela SAE (Society of Automotive Engineers), batizada de OBD-II (ON BOARD DIAGNOSTICS).
“OBD (On Board Diagnostics), é uma interface de comunicação usada por sistemas de diagnósticos. O padrão atual é o OBD-II, baseado em padrões de comunicação anteriores (SAE J1850 VPW, SAE J1850 PWM, ISO 9141). “ (AUTOMOTIVE BUSINESS, 2010, p. 61).
2.2.1 Origem
Segundo Machado e Oliveira (2016), o sistema foi criado, pois o governo da Califórnia despertou a necessidade de haver maior controle sobre as emissões de gases emitidos pelos automóveis. Desta forma a CARB (California Air Resources Board) em 1966 obrigou todos os veículos a terem este sistema de controle que passou a ser obrigatório no resto do país de 1968.
Segundo Machado e Oliveira (2016), em 1970 foi criada, nos Estados Unidos, a E.P.A. (Agência de Proteção Ambiental), que lidera tudo relacionado ao OBD. Logo quando sua implementação houve maior controle dos veículos, passaram a ser obrigatórias manutenções periódicas nos veículos, e passou a ser padronizados os parâmetros que seriam medidos nos veículos. Com a diminuição dos valores limites para emissão de gases, os construtores, tiveram que passar a utilizar sistemas que permitissem o controle de consumo e ignição, para isso foi necessário que o motor fosse constantemente lido por sensores e sua performance sua adequada a emitir menor poluição.
“No entanto, a Sociedade dos Engenheiros Automóveis (S.A.E.) em 1988 emitiu uma regulamentação para haver uniformidade nos conectores, de modo a impedir o rumo da diversidade enorme dos sistemas. ” (MACHADO e OLIVEIRA, 2016, p. 1).
Segundo Machado e Oliveira (2016), em 1996, as normas aplicadas levaram ao surgimento do OBD-II, que já vinha padronizado de série, e permitia um controle muito mais rígido de todo o veículo, e a utilização de um único padrão de aparelho para fazer a leitura das informações do veículo.
“Devido a essa regulamentação nos EUA, nos anos 90 foi implantado esse sistema de diagnóstico em automóveis destinados ao mercado europeu. ” (MACHADO e OLIVEIRA, 2016, p. 1).
2.2.2 Evolução
Segundo Machado e Oliveira (2016), a evolução histórica do sistema OBD, ocorre entre 1976 a 2005, conforme diz:
Em 1976 a Califórnia solicitou a introdução do catalisador de 3 vias com sistema de controlo por realimentação.
Em 1988 o sistema OBD-I foi introduzido no EUA. Em 1996 o sistema OBD-II foi introduzido no EUA.
Em 2000 o sistema OBD foi introduzido na Comunidade Europeia nos veículos com motor a gasolina.
Em 2003 foi introduzido o sistema OBD na Comunidade Europeia nos veículos a diesel e nos veículos movidos a CNG/LPG.
Em 2005 o sistema OBD Foi introduzido na União Europeia nos veículos pesados e ligeiros diesel. (MACHADO e OLIVEIRA, 2016, p. 2).
O surgimento e a evolução do sistema OBD ocorre a partir da necessidade do uso deste sistema para o controle de gases poluentes, conforme é apresentado na próxima seção.
2.2.3 Necessidade deste sistema
Segundo Machado e Oliveira (2016), em 1970, a E.P.A. foi incumbida de diminuir a quantidade de gases poluentes que éram emitidos, naquele momento a principal preocupação do governo éra preparar as construtoras para uma maior rigidez nas normas que dizem respeito a emissões de gases. Seu principal propósito éra fazer com que os veículos mantivessem seus níveis de emissões de gases por toda sua vida útil, possibilitando que as autoridades pudessem controlar através de equipamentos, e não apenas na sua homologação. A evolução desta tecnologia, fez com que surgisse a necessidade de de criar um processo que facilitasse os trabalhos de manutenção, o chamado auto-diagnóstico.
Segundo Comenale (2016), a grande utilidade do plug OBD é facilitar o reparo e manutenção do veículo, tanto para oficinas especializadas, como para os próprios proprietários dos veículos. Hoje há tanta eletrônica embarcada, e tantos sensores espalhados pelo motor, que com a ajuda do OBD se tornou mais fácil identificar o problema, e realizar o reparo com o menor custo possível.
2.2.4 OBD I
Segundo Machado e Oliveira (2016), na primeira versão do sistema OBD, ficava a critério de cada marca escolher qual seria o melhor sistema de conexão dos pinos e os protocolos a ser usado, fazendo com que apenas as próprias marcas pudessem ter acesso aos dados que éram lidos e armazenados pelo OBD.
Segundo Machado e Oliveira (2016), em geral os sistemas apresentavam os seguintes itens, conforme representado pelo Quadro 1:
Quadro 1 - Itens apresentados no OBD I OBD I SENSOR DE OXIGÊNIO SISTEMA DE EGR SISTEMA DE COMBUSTÍVEL COMPONENTES ELÉCTRICOS SISTEMAS ELECTRÓNICOS INFORMAÇÕES DE DIAGNÓSTICO CÓDIGOS DE ERROS Fonte: Machado e Oliveira (2016).
Segundo Machado e Oliveira (2016), em geral, os sistemas apresentavam leitura vindas de sensores de oxigênio, Sistema EGR (Recirculação dos gases do escape), sistema de combustível, componentes elétricos e eletrônicos, informações de diagnósticos e códigos de erros.
2.2.5 OBD II
Segundo Machado e Oliveira (2016), a grande melhoria do OBD II em comparação ao OBD I, foi a coerência entre os muitos sistemas existentes. Permitindo, desta forma, a normatização e padronização aos métodos de conexão, e acima de tudo, os protocolos. A figura 3 mostra a imagem do cabo de conexão OBD II.
Figura 4 - Conector OBD II
Fonte: Machado e Oliveira (2016).
“Ao contrário do conector OBD I, que muitas vezes se encontrava debaixo do capot do carro, o conector OBD-II está sempre perto da consola central do veículo. “ (MACHADO e OLIVEIRA, 2016, p. 3).
Conforme exibido no Quadro 2, além, da mudança na localização do conector, em geral o OBD II apresenta os seguintes itens:
Quadro 2 - Itens apresentados no OBD II OBD II
EFICIÊNCIA DO CATALISADOR AQUECIMENTO DO
COMBUSTÃO ESPONTÂNEA SISTEMA DE EVAPORAÇÃO SISTEMA DE AR SECUNDÁRIO INFORMAÇÕES DO DIAGNÓSTICO PARÂMETROS DO MOTOR MEMORIZAÇÃO DE AVARIAS ESTANDARDIZAÇÃO DAS LIGAÇÕES Fonte: Machado e Oliveira (2016).
“Com todos estes itens a ser constantemente analisados conseguiu-se cada vez mais diminuir as emissões de gases poluentes e assim cumprir os limites impostos para essas emissões. “ (MACHADO e OLIVEIRA, 2016, p. 3).
3 MÉTODO
Pode-se definir método como caminho para se chegar a determinado fim. E método científico como o conjunto de procedimentos intelectuais e técnicos adotados para se atingir o conhecimento. (GIL, 2008, p. 8).
Segundo Fonseca (2002, apud Rio Grande do Sul, 2009, p. 12) methodos significa organização e logos significa estudo sistemático, pesquisa, investigação; logo, metodologia é o estudo dos caminhos para realizar uma pesquisa científica.
3.1 CARACTERIZAÇÃO DO TIPO DE PESQUISA
Este capítulo tem por objetivo especificar os tipos de pesquisa aplicados no presente trabalho, definindo processos e suas etapas para atingir os objetivos propostos na solução inicial.
Pode-se definir pesquisa como o processo formal e sistemático de desenvolvimento do método científico. O objetivo fundamental da pesquisa é descobrir respostas para problemas mediante o emprego de procedimentos científicos (GIL, 2008, p. 3).
Só se inicia uma pesquisa se existir uma pergunta, uma dúvida para a qual se quer buscar a resposta. Pesquisar, portanto, é buscar ou procurar resposta para alguma coisa. (RIO GRANDE DO SUL, 2009, p. 12).
Segundo Gil (2008), a pesquisa busca o progresso da ciência, desenvolvendo conhecimentos científicos sem a preocupação de sua aplicação prática. O desenvolvimento tende a ser formalizado e objetiva ser generalizado, para que possa construir teorias e leis.
3.1.1 Pesquisa aplicada
A pesquisa do presente trabalho é classificada como aplicada, tendo em vista que será de grande valia para a solução de problemas específicos, tratando-se de sistemas embarcados.
Objetiva gerar conhecimentos para aplicação prática, dirigidos à solução de problemas específicos. Envolve verdades e interesses locais. (RIO GRANDE DO SUL, 2009, p. 35).
Segundo Gil (2008), a pesquisa aplicada depende de suas descobertas e se enriquece com sua aplicação e utilização, é a pesquisa mais utilizada por pesquisadores sociais, como psicólogos, sociólogos, economistas e assistentes sociais.
3.1.2 Pesquisa bibliográfica
Com relação a parte de estudos e conceitos do presente trabalho, o mesmo pode ter sua pesquisa classificada como bibliográfica, pois é considerado o método mais fácil por se embasar em livros, artigos, pesquisas e meios eletrônicos.
Segundo Rio Grande do Sul (2009), a pesquisa bibliográfica é feita a partir de referências teóricas já analisadas, permitindo o pesquisador conhecer o que já se estudou sobre o assunto, conforme diz:
A pesquisa bibliográfica é feita a partir do levantamento de referências teóricas já analisadas, e publicadas por meios escritos e eletrônicos, como livros, artigos científicos, páginas de web sites. Qualquer trabalho científico inicia-se com uma pesquisa bibliográfica, que permite ao pesquisador conhecer o que já se estudou sobre o assunto. Existem porém pesquisas científicas que se baseiam unicamente na pesquisa bibliográfica, procurando referências teóricas publicadas com o objetivo de recolher informações ou conhecimentos prévios sobre o problema a respeito do qual se procura a resposta (FONSECA, 2009 apud RIO GRANDE DO SUL, 2002, p. 32).
Segundo Gil (2008), a pesquisa bibliográfica é desenvolvida a partir de um material já existente, é constituído principalmente de livros e artigos científicos, há pesquisas desenvolvidas exclusivamente a partir de fontes bibliográficas.
Outro método de pesquisa aplicado neste trabalho é o método de pesquisa qualitativa.
3.1.3 Pesquisa qualitativa
Com relação a abordagem, o presente trabalho tem como classificação, a pesquisa qualitativa, pois os dados são colhidos através da central eletrônica do veículo, desta forma não são geradas estatísticas como no método quantitativo.
A pesquisa qualitativa não se preocupa com representatividade numérica, mas, sim, com o aprofundamento da compreensão de um grupo social, de uma organização, etc. [...] (GOLDENBERG, 1997, p. 34, apud RIO GRANDE DO SUL, 2009, p. 31).
A pesquisa qualitativa preocupa-se, portanto, com aspectos da realidade que não podem ser quantificados, centrando-se na compreensão e explicação da dinâmica das relações sociais. (RIO GRANDE DO SUL, 2009, p. 32).
3.1.4 Pesquisa quantitativa
O trabalho foi classificado também como pesquisa quantitativa, tendo em vista o produto final da proposta de solução, baseada na geração de gráficos.
Segundo Fonseca (2002, apud RIO GRANDE DO SUL, 2009), diferente das pesquisas qualitativas, as pesquisas quantitativas podem ser quantificadas. Ela centra na objetividade, influenciada pelo positivismo, considera que a realidade só pode ser compreendida através da análise de dados brutos. A pesquisa quantitativa recorre a matemática para descrever as causas de um fenômeno.
Ainda segundo Fonseca (2002, apud RIO GRANDE DO SUL, 2009), a utilização conjunta da pesquisa qualitativa com a pesquisa quantitativa pode recolher mais informações do que se poderia conseguir isoladamente.
3.1.5 ETAPAS METODOLÓGICAS
As etapas estão divididas da seguinte forma, respectivamente: 1) Definição do tema.
2) Levantamento bibliográfico. 3) Definição do método de pesquisa.
4) Análise dos protocolos de comunicação automotivo. 5) Testes utilizando o OBD.
6) Levantamento dos dados que podem ser coletados. 7) Elaboração de uma proposta de visualização dos dados.
8) Desenvolvimento de uma modelagem com a proposta de solução. 9) Desenvolvimento de um protótipo funcional.
10) Avaliação do protótipo.
11) Análise do resultados e conclusões.
As etapas do projeto podem ser vistas em sequência na Figura 4. Figura 5 - Etapas do projeto
O projeto é dividido em basicamente onze etapas, a primeira delas é a Definição do Tema, que consiste em analisar as propostas de estudos disponíveis e escolher qual a melhor opção a ser estudada e apresentada.
A segunda etapa é o Levantamento Bibliográfico, que é um estudo, realizado em cima de pesquisas já publicadas e validadas que permeiam o assunto principal, dessa forma possibilitando um maior entendimento acerca do assunto.
A terceira etapa é a Definição do Método de Pesquisa, este é o momento em que deve ser identificado o método de pesquisa em que o projeto vai se basear, desta forma, podendo saber como foram levantadas as informações apresentadas.
A quarta etapa é a Análise dos protocolos de comunicação automotivos, consiste em analisar e identificar os protocolos de comunicação utilizados pela central do veículo a ser lida, para identificar qual equipamento deve ser utilizado para fazer essa leitura.
A etapa cinco, Testes utilizando o OBD, e a etapa seis, Levantamento dos dados que podem ser coletados, se referem ao estudo das ferramentas de coleta e realização da coleta das informações da central eletrônica.
A etapa sete, oito e nove do projeto, definem a elaboração de uma proposta de exibição dos dados obtidos da leitura da central eletrõnica do veículo seguido do desenvolvimento da modelagem dessa proposta e por fim o desenvolvimento de um protótipo funcional de exibição desses dados.
Por fim, a etapa dez e onze do projeto tem como objetivo avaliar o protótipo desenvolvido, analisando se foram cumpridos os requisitos do sistema e se o mesmo atendeu a demanda do projeto.
3.1.6 DESENHO DA SOLUÇÃO
A solução foi desenhada a fim de expor as etapas da solução de forma visível e de fácil entendimento.
Figura 6 - Etapas do projeto
Fonte: O autor, (2016).
Conforme a Figura 5, a solução é basicamente dividida em 4 etapas bem distintas, em primeiro lugar, os dados são coletados pela central eletrônica do veículo através de um adaptador OBDII, exportado para um arquivo em formato texto, e a partir deste arquivo exportado, gerar estatísticas e gráficos legíveis para o usuário.
3.1.7 DELIMITAÇÕES
Não será projetado, construído ou criado qualquer tipo de hardware para substituição dos adaptadores OBD já conhecidos.
Não será desenvolvido um software para realizar a captura dos dados do veículo diretamente de sua central.
O sistema não irá identificar códigos de erros da central eletrônica. O sistema não modificará qualquer parâmetro do veículo.
O sistema será limitado a gerar gráficos baseado no arquivo de dados coletados por um software auxiliar.
3.1.8 CUSTOS
Os custos podem variar de acordo com a marca e modelo do adaptador, os adaptadores mais comuns e utilizados são apresentados pela Tabela 1.
Tabela 1 - Preço médio dos adaptadores OBD II
PREÇO MÉDIO DOS ADAPTADORES OBD SCANNER AUTOMOTIVO
UNIVERSAL OBD2 BLUETOOTH
R$ 39,90
SCANNER AUTOMOTIVO OBD2 USB
R$ 39,90 Fonte: O autor, (2016).
Os valores são baseados no site de comércio eletrônico Mercado Livre (www.mercadolivre.com.br), local onde foi realizada a compra do adaptador em março de 2016, utilizado neste trabalho para a captura dos dados automotivos.
O próximo capítulo apresenta a proposta de solução encontrada para a solução do problema deste trabalho.
4 PROPOSTA DE SOLUÇÃO
O presente capítulo, tem como objetivo apresentar a proposta de solução encontrada para solucionar o problema deste trabalho.
Se apresenta a estrutura física necessária para a implementação desta solução, seguido da modelagem, os requisitos necessários, os protótipos de tela, casos de uso, e outros modelos e diagramas necessários, respectivamente.
4.1 ARQUITETURA FÍSICA
A arquitetura física da solução proposta é retratada pela figura 6, onde é possível observar o momento em que os dados são capturados e visualizar o percurso e os tratamentos que esses dados sofrem até a exibição em formato legível.
Figura 7 - Arquitetura física da solução
Fonte: O autor, (2016).
Conforme demonstrado na Figura 6, o processo de solução tem início na coleta das informações vindas da central eletrônica do veículo, esta coleta se da através de um sistema chamado ScanMaster-ELM, que utiliza um adaptador ELM327 conectado entre o
veículo e um computador via USB. Após a coleta dos dados pelo sistema ScanMaster-ELM ter sido feita, é necessário exportar os dados para um arquivo em formato CSV, que irá conter uma série de valores entre um período de tempo lido pelos sensores do veículo, com hora, minuto, segundo e milissegundo em que o sensor foi lido, seguido do valor lido pelo sensor. O arquivo exportado em CSV é importado em um web service que realiza a leitura deste arquivo linha-a-linha, armazenando os dados em um banco de dados e exibindo posteriormente em formato de gráficos e estatísticas legíveis para o usuário.
4.2 METODOLOGIA ICONIX
Segundo Rosenberg & Scott (1999, apud Bona, 2002, p. 60), ICONIX é um processo simples que unifica métodos de orientação a objetos utilizado uma obordagem completa. Foi elaborado Doug Rosenberg e Kendall Scott, a partir da síntese do processo unificado por Booch, Rumbaugh e Jacobson desde 1993.
Figura 8 - Métodologia Iconix
Fonte: Bona, (2016).
Segundo Carvalho (2016), O ICONIX é uma metodologia simples e poderosa utilizada para guiar a análise e projeto orientado a objetos, utilizado a complexidade do RUP (Rational Unified Process) e a simplicidade do XP (Extreme Programming).
As fases do Iconix são constituídas por (ICONIX, 2016): Modelo de domínio.
Modelo de Caso de uso. Análise de Robusta. Diagrama de Sequência. Diagrama de Classes.
A seguir são analisados os requisitos da proposta de solução, identificando quais funções o sistema deverá comtemplar e quais as bases necessárias para sustentar o sistema.
4.2.1 Requisitos
Segundo Medeiros (2016), antigamente, requisitos eram sinônimos de funções, ou seja a descrição de tudo que o software deveria fazer funcionalmente, porém, hoje, requisitos são mais que funções, são objetivos, propriedades e restrições, que o sistema deve possuir, de forma geral um requisito é uma condição necessária para satisfazer um objetivo.
Existem dois tipos de requisitos, os Requisitos Funcionais (RF) e os Requisitos Não-funcionais (RNF).
4.2.1.1 Requisitos funcionais (RF)
Os requisitos Funcionais se referem as funções do sistema, suas obrigações e informações.
O sistema deve permitir a importação dos dados em formato .CSV. O sistema deve realizar a leitura dos dados importados.
O sistema exibirá os dados em forma de gráficos.
O sistema deve realizar o armazenamento desses dados para futuras consultas. O sistema deve disponibilizar o carregamento de leituras importadas anteriormente.
4.2.1.2 Requisitos Não-Funcionais (RNF)
Os requisitos Não-Funcionais referem-se aos critérios que sustentam os requisitos Funcionais.
É necessário um notebook com sistema operacional Windows XP ou superior, com o programa ScanMaster-ELM (v 2.1+) instalado.
É necessário um conector OBDII com saída USB.
É necessário um servidor Apache com conexão ao banco de dados.
Após identificados os requisitos do sistema foram projetados os protótipos de tela do sistema, utilizando como base os requisitos funcionais (RF).
4.2.2 Protótipo de Tela
Os protótipos de tela do sistema que será desenvolvido, foram inspirados no estilo minimalista, proporcionando uma visão mais limpa e agradável, facilitando no entendimento e utilização do sistema, conforme é exibido na Figura 8.
Figura 9 - Protóripo da tela principal
Fonte: O autor, (2016).
A tela inicial apresenta as principais funções do sistema em um menu vertical fixo localizado a esquerda da tela, contendo as opções de ‘Importar Novo Arquivo’ e ‘Carregar Arquivo Salvo’, estando sempre presentes durante a utilização do sistema, isso se dá pois os gráficos gerados a partir da leitura dos arquivos enviados, são exibidos no espaço ao lado direito do menu, neste espaço irá conter uma caixa de seleção com os sensores encontrados no arquivo que está sendo lido no momento, e um espaço abaixo que irá conter o gráfico com os valores do sensor selecionado na caixa de seleção.
O menu principal apresenta a opção ‘Importar Novo Arquivo’, ao clicar nesta opção, é exibida uma pequena tela, retratada na figura 9, com um formulário de importação de arquivo, contendo apenas um campo de seleção de arquivo.
Figura 10 - Protótipo da tela de importação
Fonte: O autor, (2016).
O formulário permite realizar a importação de arquivos no formato ‘.CSV’, caso o arquivo não esteja no formato necessário, ou com o layout não apropriado a leitura pelo sistema, será retornado um erro, informando a falha no processo de importação.
A segunda opção do menu principal disponibiliza uma tela com a listagem dos arquivos que já foram importados anteriormente pelo sistema, exibido na figura 10, esta listagem é exibida em formato de tabela, contendo o nome original do arquivo enviado, e data com hora em que o processo de importação foi realizado. Ao lado de cada registro se encontra uma opção em formato de ‘link’, que realizar o carregamento dos dados que foram gravados do respectivo arquivo.
Figura 11 - Protótipo da tela de listagem de arquivos importados
Fonte: O autor, (2016).
Ao clicar no ‘link’ Carregar Dados, esta tela automaticamente se fecha voltando para a tela principal com os dados dos sensores do respectivo arquivo selecionado já carregados, e prontos para serem exibidos em forma de gráficos.
4.2.3 Casos de Uso
O sistema conta com apenas um usuário responsável por toda operação do sistema, exibido na figura 11, desde a leitura dos dados automotivos vindos de sua central eletrônica, até a importação e visualização dos dados no sistema.
Figura 12 - Atores do sistema
Fonte: O autor, (2016).
O usuário é responsável por todas as operações fora e dentro do sistema, conforme é mostrado pela figura 12, o usuário pode importar um novo arquivo, selecionar um arquivo importado anteriormente e selecionar o sensor na qual pretende visualizar a leitura.
Figura 13 - Atores e Funções
Fonte: O autor, (2016).
Para determinar as entidades do cenário de aplicação do sistema, foi elaborado o modelo de domínio.
4.2.4 Modelo de Domínio
Segundo Iconix (2016), auxilia no processo da fase de design a partir dos casos de uso. Consiste em identificar todos os objetos do mundo real de um problema. Para elaborar um modelo de domínio é necessários encontrar o maior número de classes possíveis no problema.
Figura 14 - Modelo de domínio
Fonte: O autor, (2016).
A Figura 13 representa o modelo de domínio utilizado no sistema. O usuário pode importar ou selecionar um arquivo de dados, que por sua vez possui um ou mais sensores que podem ser selecionados para visualização dentro do sistema.
4.2.5 Diagrama de Robustez
Através da análise de robustez, podemos fazer a verificação de sanidade, isto é, a verificação se o texto do caso de uso está correto e que ele não representa para o sistema que não é razoável ou impossível. (DELFIM, 2008, p. 1).
Este é um diagrama que não é necessário ser mantido atualizado uma vez que é utilizado apenas para a transição. Sendo assim, ao criar os diagramas, é perfeitamente plausível usar apenas lápis e papel. (DELFIM, 2008, p. 1).
Para melhor entender a relação entre as interfaces, controles e entidades, é possível observar a Tabela 4, e entender facilmente as relações do sistema.
Quadro 3 - Detalhamento robustez
Detalhamento Robustez
Casos de Uso Ator Interface Controle Entidade
UC01 – Importar Novo Arquivo
Usuário TEL001 – Importar Novo Arquivo
Envia_arquivo ReadFile UC03 – Carregar Arquivo
Importado
Usuário TEL002 – Carregar Arquivo Salvo
Home Home
Fonte: O autor, (2016).
Figura 15 - Diagrama de Robustez - Importar Novo Arquivo
Fonte: O autor, (2016).
No processo exibido na Figura 14, Importar Novo Arquivo, o ator Usuário tem acesso a opção “Importar Novo Arquivo”, localizado no menu do sistema, ao selecionar esta opção, é exibida uma tela contendo um formulário permitindo selecionar o arquivo que deverá ser importado, e posteriormente realizar o envio para o sistema utilizar os dados do arquivo.
Figura 16 - Diagrama de Robustez – Carregar Arquivo Salvo
Fonte: O autor, (2016).
No processo exibido na Figura 15, o ator usuário tem acesso a opção “Carregar Arquivo Salvo”, localizado no menu do sistema, ao selecionar esta opção, será exibido uma tela contendo a listagem dos arquivos importados anteriormente, juntamente com a opção de
carregar os dados dos arquivos respectivos. Ao selecionar a opção “Carregar dados”, o sistema carregar as informações vindas do banco de dados para serem exibidas.
4.2.6 Diagrama de Sequência
Os diagramas de sequência são muito importantes para designers porque eles esclarecem os papéis dos objetos em um fluxo e, portanto, fornecem entrada básica para determinar responsabilidades de classe e interfaces. (UFPR, 2017, p.1).
Quadro 4 - Detalhamento sequência
Detalhamento Robustez
Casos de Uso Ator Interface Controle Entidade
UC01 – Importar Novo Arquivo
Usuário TEL001 – Importar Novo Arquivo
Envia_arquivo ReadFile UC03 – Carregar Arquivo
Importado
Usuário TEL002 – Carregar Arquivo Salvo
Home Home
Fonte: O autor, (2016).
A Figura 16 ilustra a o diagrama de sequência para o processo Importar Novo Arquivo, esse processo inicia a partir do ator Usuário, que faz a requisição do formulário de importação, e através deste formulário seleciona e envia o arquivo para a aplicação, onde, por sua vez, trata as informações contidas no arquivo e as insere no banco de dados, mantendo as disponíveis posteriormente. Após o processo de inserção dos dados no banco de dados, a aplicação realiza uma consulta para retornar os dados inseridos, na qual passa por um tratamento para ser exibido de forma gráfica e legível para o usuário.
Figura 17 - Diagrama de Sequência - Importar Novo Arquivo
Fonte: O autor, (2016).
O diagrama ilustrado na Figura 17 representa o processo Carregar Arquivo Salvo, que tem início no ator Usuário, fazendo a requisição da listagem de arquivos que já foram inseridos para a aplicação, que por sua vez consulta o banco de dados, e retorna esses dados para o usuário. Com a listagem, o usuário escolhe o arquivo desejado sinalizando para a aplicação o parâmetro na qual ele deverá realizar a consulta no banco de dados, para que seja retornado os dados do arquivo escolhido para a aplicação, que novamente tratará as informações para ser exibida de forma gráfica e legível para o usuário.
Figura 18 - Diagrama de Sequência - Carregar Arquivo Salvo
Fonte: O autor, (2016).
Nesta seção, foi exibido o diagrama de sequência dos processos Importar Novo Arquivo e Carregar Arquivo Salvo, a seguir será apresentado o diagrama de classes da aplicação.
4.2.7 Diagrama de Classe
Segundo Macêdo (2012), diagramas de classe ou diagramas estáticos, mostram as diferentes classes e como elas se relacionam, mostram seus métodos e atributos, bem como os
relacionamentos estáticos, quais classes conhecem quais, e quais são partes de quais, porém não mostram a troca de mensagens entre elas.
A Figura 18 exibe o diagrama de classe do sistema. Figura 19 - Diagrama de Classe
Fonte: O autor, (2016).
Nesta seção, foi apresentada as classes que compõe o modelo ICONIX do projeto, a seguir será apresentada a proposta de solução.
5 PROPOSTA DE SOLUÇÃO
No presente capítulo, é apresentado o desenvolvimento do sistema proposto, compreendendo as ferramentas utilizadas e as tecnologias estudadas.
Na sequência é apresentado as telas do sistema, composto pelo detalhamento de cada tela, e apresentação e descrição das ferramentas utilizadas.
Por fim, para demonstrar a eficiência do sistema desenvolvido, será realizada a avaliação do sistema e apresentado os resultados obtidos.
5.1 ESQUEMA DO SISTEMA
Nesta seção é apresentado o esquema físico do sistema, a figura 19 apresenta a aplicação do sistema, bem como a utilização e interação de cada tecnologia utilizando a arquitetura cliente/servidor.
Figura 20 - Esquema do sistema
Fonte: O autor, (2016).
Na Figura 19 é possível visualizar que o usuário realiza uma ação dentro do sistema, através do navegador, esta ação envia uma requisição para o servidor Apache que interpreta esta requisição e se necessário realiza a consulta no servidor de banco de dados MySQL, com os dados todos prontos, o servidor retorna o resultado da requisição de maneira visual e amigável para o usuário.
5.2 TECNOLOGIAS E FERRAMENTAS UTILIZADAS
As tecnologias e ferramentas utilizadas para o desenvolvimento da solução proposta foram escolhidas com base em alguns aspectos importantes, julgados necessário pelo autor, a fim de obter o resultado esperado.
Ferramentas de desenvolvimento livres. Plataforma web.
Ferramentas já conhecidas pelo autor.
Ferramentas que proporcionassem maior produção.
Ferramentas ricas em documentação e com comunidade ativa.
As ferramentas escolhidas estão ilustradas com suas devidas marcas na figura 20. Figura 21 - Tecnologias e ferramentas
Fonte: O autor, (2016).
A Figura 20 apresenta as marcas das principais tecnologias e ferramentas utilizadas, a seguir é apresentado uma breve descrição de cada ferramenta.
5.2.1 PHP
O PHP (um acrônimo recursivo para PHP: Hypertext Preprocessor) é uma linguagem de script open source de uso geral, muito utilizada, e especialmente adequada para o desenvolvimento web e que pode ser embutida dentro do HTML. (GROUP, 2016, p. 1).
Segundo Group (2016), diferentemente de linguagens como o Javascript que é executado no lado do cliente, o PHP é executado no servidor, gerando o HTML que é então enviado para o navegador, porém o navegador não sabe qual o código fonte.
5.2.2 Apache
Segundo Mazioli Silva (2015), o Apache é um servidor Web, configurável, robusto e de alta performance, desenvolvido por uma equipe de voluntários conhecidos como Apache Group, buscando criar um servidor Web completo, gratuito e de código aberto. Segundo a Netcraft, o Apache é mais usado que todos os outros servidores Web do mundo juntos.
5.2.3 MySQL
Segundo Pisa (2016), o MySQL é um gerenciador de banco de dados gratuito, usado na maioria de aplicações gratuitas como base de dados. Utiliza linguagem SQL (Structure Query Language), que é a linguagem mais popular para gerenciar uma base de dados.
Segundo Pisa (2016), o sistema foi desenvolvido pela empresa sueca MySQL AB, e lançado oficialmente em 1995. Em 2010 a empresa foi comprada pela Sun Microsystems, que integrou a compra bilionária da Sun pela Oracle Corporation.
5.2.4 Sublime Text
Segundo Otávio (2016), para manter alta produtividade na codificação é necessário um editor de códigos robusto e eficiente, e dentre tantas opções, o Sublime Text se destaca, pela simplicidade, leveza e ergonomia, incorporado a uma ferramenta robusta, permitindo a interpretação de diversas linguagens.
A ferramenta utilizada para desenvolver as etapas de Front-end e Back-end do projeto foi o Sublime Text.
5.2.5 Jquery
Segundo Jquery, (2016, tradução nossa), JQuery é uma biblioteca pequena, porém rica em recursos, ela manipula documentos HTML e requisições Ajax de forma simples, utilizando uma API fácil e compatível com diversos navegadores, combinado com versatilidade e extensibilidade.
Segundo Belem (2010), o JQuery, foi criado seguindo o conceito “Write Less, do more” (Escreva menos, faça mais), com poucas linhas de código é possível criar os mais diversos efeitos, que antes custavam dezenas de linhas de códigos e horas de trabalho.
5.2.6 Enterprise Architect
Segundo Architect (2016, tradução nossa), o Enterprise Architect é uma ferramenta gráfica multi usuário, criada para ajudar a equipe a criação e manutenabilidade de sistemas, apoiada por uma forte documentação, permitindo uma visão fácil e precisa do sistema.
Dentre as ferramentas case, o Enterprise Architect (EA) surge como uma opção. Voltado para a área de Engenharia de Software, o EA pode ser utilizado na construção do modelo DTR (Diagrama de Tabela Relacional) ou modelo físico. (CLIMACO, 2016, p. 1).
5.2.7 Balsamiq Mockups
Segundo Balsamiq Mockups (2011, apud Malherbi, 2016), Balsamiq Mockups é uma aplicação desenvolvida em Action Script, que executa Adobe AIR (Adobe Integrated Runtime), é utilizada para desenvolver protótipos, como modelos de telas de sistema desktop, ou mobile.
5.2.8 Bootstrap
Segundo Costa (2014), Bootstrap é framework front-end que auxilia na criação de sites utilizando tecnologia responsiva. O termo bootstrap significa inicialização, ou seja algo que possui um ponto de partida. O bootstrap conta com uma diversidade de plug-ins em JavaScripts, que permitem a criação de efeitos dentro da página.
O design do projeto foi criado utilizando o framework Boostrap, assim como os efeitos de navegação.
5.3 PLATAFORMA WEB DESENVOLVIDA
Nesta seção é apresentada a interface do sistema desenvolvido, assim como a descrição de cada tela.
A Figura 21 mostra a tela inicial do sistema, onde é exibido o gráfico gerado a partir da leitura de um dos sensores, caso nenhuma leitura esteja carregada no momento, a
área onde o gráfico seria carregado exibirá uma mensagem informando que nenhum arquivo está carregado no momento.
Figura 22 - Tela inicial do sistema
Fonte: O autor, (2016).
É possível ver na Figura 21, o menu lateral, que exibe as opções “Importar um Novo Arquivo”, que permite selecionar um arquivo existente no computador em formato CSV, contendo a leitura do arquivo, e a opção “Carregar Arquivo Salvo”, que permite selecionar um arquivo que já havia sido lido anteriormente, carregando os dados salvos no banco de dados no momento da importação, desta forma não necessitando do arquivo CSV original.
Selecionando a opção “Importar um Novo Arquivo”, é aberta uma popup contendo um formulário que permite a importação do arquivo, através de um campo próprio para selecionar o arquivo, conforme é exibido na Figura 22.
Figura 23 – Pop-up de importação de arquivo
Fonte: O autor, (2016).
O usuário pode selecionar o arquivo através do assistente de importação do sistema operacional que é aberto ao clicar sobre o botão escrito “Selecione um Arquivo”. Após selecionar o arquivo a ser importado, o nome do arquivo aparecerá ao lado do botão.
Para finalizar a operação de importação, basta clicar no botão “Importar Dados”, ou caso queira fechar a janela, basta clicar no botão “Fechar”.
O sistema também permite selecionar um arquivo importado anteriormente, para isto, o usuário deve clicar sobre a opção “Carregar Arquivo Salvo”, feito isto, será aberta uma popup, contendo uma listagem de arquivos salvos anteriormente, informando o nome do arquivo, a data da importação e a opção de carregar os dados, conforme pode ser visto na Figura 23.
Figura 24 - Selecionar arquivo salvo
Fonte: O autor, (2016).
Para carregar os dados de um arquivo, o usuário deve clicar sobre o link “Carregar dados”, correspondente a linha do arquivo que deseja importar, conforme a Figura 23, feito isso, o sistema irá buscar os dados no banco de dados e retornar com os dados prontos para serem visualizados.
O usuário também pode excluir um arquivo enviado clicando no link “Excluir”, segundo a Figura 23, da linha respectiva do arquivo a ser excluído, uma mensagem de confirmação aparecerá, pedindo a confirmação da ação pelo usuário.
Após os dados serem carregados, o usuário será redirecionado para a tela inicial novamente, porém com os dados da leitura carregados, conforme exibido na Figura 15. Os sensores que são carregados na leitura são exibidos e podem ser selecionados em uma caixa de seleção localizada acima do gráfico exibido, o usuário pode selecionar qual sensor deseja obter a leitura através desta caixa de seleção, conforme a Figura 24.