Be Safe

Participantes:

José Nilton de Oliveira Lima Júnior
Elton Faleta Santana
Cesar Araújo Evangelista

Resumo do projeto:

BeSafe é o assistente inteligente para o seu carro, que atuará como um verdadeiro copiloto. Com BeSafe, você receberá avisos de veículos em pontos cegos, dicas de direção e manutenção do veiculo, além de autenticação por biometria.

Descrição do projeto:

O trânsito brasileiro está entre um dos mais caóticos do mundo. Segundo a OMS, em 2016, o Brasil era o quarto país com mais mortes no trânsito na América, com uma taxa de 23,4 mortes no trânsito para cada 100 mil habitantes. Isso sem contar os inúmeros acidentes leves que atrapalham o dia a dia do brasileiro. Nesse cenário nacional existem veículos com sistemas de auxilio ao motorista que propiciam um aumento na segurança, porem, ainda uma pequena parte da população tem acesso a isso, pois esses recursos estão presentes em veículos considerados de luxo e de alto valor.

Ciente desta realidade o BeSafe se apresenta como o assistente veicular para tornar sua direção mais segura e econômica. O sistema BeSafe proporciona avisos sobre a presença de veículos em pontos cegos, alertas para a necessidade de ativar os faróis, identificar possíveis falhas no veiculo e informa ao condutor as velocidades máximas permitidas nas vias, além de possibilitar a interação com o sistema via comandos de voz.

As funcionalidades do BeSafe são possíveis graças ao poder de processamento da Qualcomm DragonBoard 410c, que funciona como central computacional para todas as necessidades existentes no sistema, tais como coletar informações do veículo de modo automatizado, tratar dados do GPS, controlar os sensores laser, comunicar se com a interface do usuário via wifi e ainda proporcionar rede de internet para o condutor e passageiros.

Os esforços de desenvolvimento do sistema BeSafe visa dispor de recursos e informações essenciais ao motorista para automatizar tarefas difíceis ou repetitivas, afim de proporcionar um aumento da segurança do carro e dos demais veículos na via. Porque carros inteligentes são para todos!

Histórico do desenvolvimento:

Semana 1:

Recebemos a placa e conferimos seus componentes. Instalamos o linaro e começamos a instalar as bibliotecas necessárias para os testes dos componentes iniciais. A instalação da mraa ocorreu sem problemas, porém tivemos problemas instalando a upm, tanto pelo apt-get quanto pelo repositório git. Continuamos testando os componentes básicos utilizando somente a mraa, o que ocorreu sem problemas.

Semana 2:

Na segunda semana , fomos validar nossa idéia com um professor da nossa universidade, e encontramos algumas dificuldades técnicas na aplicação da tecnologia V2V que planejávamos utilizar. Tais obstáculos seriam impossibilidade de utilização do padrão IEEE 802.11p , um padrão recentemente aprovado e específico para v2v, com a dragonboard, uma vez que a mesma não tem suporte para tal padrão, por ser recente. Além disso, uma tecnologia v2v exigiria a presença de um dispositivo mestre na rede, de forma que a solução precisaria ser movida para ambientes fechados. Isso demandou que nós repensássemos e revalidássemos a solução para torná-la mais factível.

Semana 3:

A semana 3 foi focada em ideação e validação com usuário. Decidimos abandonar a tecnologia v2v e definimos como nossa base a proposta inicial de obtenção de carros inteligentes sem precisar comprar um novo carro para isso. Dessa forma, após algumas sessões de ideação e várias de entrevistas e questionários, chegamos a proposta do sistema atual.

Semana 4:

Na semana 4 refizemos a arquitetura, requisitos e casos de uso do sistema. Também corremos para comprar os dispositivos hardware necessários para desenvolvimentos do projeto. Conseguimos resolver o problema com a upm instalando uma versão mais atualizada do linaro na placa. Também configuramos o swap da placa de acordo com o tutorial postado no fórum.

Semana 5:

Compramos também localmente um adaptador OBD ELM327 Bluetooth e começamos a tentar a comunicação SSP com o  mesmo utilizando a dragonboard. Após uma semana de testes com o adaptador OBD, descobrimos que o OBD que tínhamos se tratava de uma versão chinesa do ELM327 original, e por isso seu protocolo funcionava de uma forma diferente do original, dessa forma causamos vários problemas para comunicação via SPP utilizando comandos AT e utilizando a biblioteca pythonOBD, a qual pretendíamos utilizar. No fim da semana, compramos um módulo OBD USB e conseguimos fazer funcionar sem maiores problemas.

Semana 6:

Iniciamos a semana fazendo testes dos dados que poderíamos obter do OBD. Configuramos o hotspot Wifi e setamos ip fixo na placa, além de configurar o modem 3G na mesma. Também iniciamos os testes com o GPS , e após uma espera um pouco longa, conseguimos tirar os primeiros dados do GPS. Após isso, fizemos a integração com a API Open Street Maps para pegar as velocidades na Dragonboard via REST API. Também definimos o Hi Fi do aplicativo e configuramos a conexão socket entre a Dragonboard e o smartphone. Por fim, conseguimos implementar a interface para transformar texto em audio no aplicativo.

Semana 7

Implementamos a UI do aplicativo e a detecção de voz. Na dragonboard, fizemos a conexão bluetooth com o módulo HC-05 e implementamos a interpretação dos códigos DTC, enviando as mensagens de aviso a serem faladas no app. Por fim, montamos o módulo de blind spot, que funcionou perfeitamente!!

 

 

 

Hardware:

Diagrama esquemático de hardware:

Software/Firmware:

Referências: