Índice:

Tráfego inteligente: 9 etapas
Tráfego inteligente: 9 etapas

Vídeo: Tráfego inteligente: 9 etapas

Vídeo: Tráfego inteligente: 9 etapas
Vídeo: Las INTELIGENCIAS MÚLTIPLES | ACTIVIDADES Para Desarrollarlas 2024, Julho
Anonim
Tráfego Inteligente
Tráfego Inteligente

Resumo

Smart Traffic é uma solução de IoT baseada em um controlador com sensor de sinal bluetooth que altera o tempo dos semáforos após a identificação do sinal emitido por um veículo prioritário (militar, bombeiro ou ambulância), permitindo que o veículo se mova rapidamente.

Sumário

O Smart Traffic (Tráfego Inteligente) consiste em uma solução IoT baseada em um driver com sensor de sinal bluetooth que após identificar o sinal emitido por um veículo com prioridade (militar, bombeiros ou ambulância), altera a temporização dos semáforos possibilitando o deslocamento rápido do veículo.

Descrição

Neste projeto, cada veículo com prioridade de deslocamento será equipado com um dispositivo Bluetooth Low Energy (BLE), como um Beacon Bluetooth ou um dispositivo Android com suporte para BLE. Neste projeto implementamos um aplicativo em Android que deve equipar as viaturas, possibilitando que o condutor ativo ou indique a necessidade de preferência no deslocamento.

Como controlador utiliza uma placa DragonBoard 410C com Windows IoT ou, opcionalmente, uma placa Raspberry Pi 3. O projeto foi testado com duas opções. Ambas possuem rádio Bluetooth e portas GPIO que possibilitam ligar os semáforos, representados neste projeto por Leds coloridos. A placa controladora é responsável, então, por captar o sinal Bluetooth emitido pela viatura em emergência e alterar a temporização do semáforo.

Desenvolvedores

Etapa 1: Visão Geral

Visão Geral
Visão Geral

O cenário definido para este projeto trata-se de uma via A de mão única que é cortada por outras duas vias, B e C, também de mão única, conforme imagem acima. Quando uma viatura se desloca em emergência pela via A, o tráfego precisa ser liberado nesta via, fechando os semáforos para as vias B e C até que a viatura tenha finalizado seu deslocamento por A.

Etapa 2: Diagrama De Blocos

Diagrama De Blocos
Diagrama De Blocos

Componentes

  • Placa DragonBoard 410C (ou Raspberry PI 3) problemas Windows IoT
  • 4 leds vermelhos
  • 4 verdes de Led
  • 8 resistores de 1000 Ohm
  • Dispositivo Android versão 6.1 com bluetooth 4.0
  • Protoboard e fios para facilitar a montagem

Etapa 3: Funcionamento Detalhado

Funcionamento Detalhado
Funcionamento Detalhado
Funcionamento Detalhado
Funcionamento Detalhado

O projeto é basicamente exclusivo do Aplicativo Android, do Aplicativo UWP (que executa na DragonBoard, ou Raspberry) e da ligação física do semáforo (Leds).

Aplicativo UWP

O aplicativo UWP contém uma lógica dos semáforos, ao ser iniciado, um thread irá controlar a temporização do semáforo em seu modo de operação. Este mesmo aplicativo é responsável por receber o sinal bluetooth enviado pelo dispositivo Android que deve equipar os veículos de emergência. O evento, ao detectar um determinado sinal de bluetooth emitido pelo aplicativo, cancelar o modo de operação normal e dispara uma nova thread com uma temporização de atender ao veículo de emergência. Os Leds são controlados pelas portas GPIO da placa, sendo estes os seguintes pinos:

  • DragonBoard:

    • GPIO 36; // Verde
    • GPIO 13; // vermelho
    • GPIO 115; // vermelho
    • GPIO 25; // Verde
    • GPIO 35; // Verde
    • GPIO 28; // vermelho
    • GPIO 25; // vermelho
    • GPIO 34; // Verde
  • Framboesa PI 3:

    • GPIO 27; // Verde
    • GPIO 21; // vermelho
    • GPIO 20; // vermelho
    • GPIO 18; // Verde
    • GPIO 17; // Verde
    • GPIO 26; // vermelho
    • GPIO 19; // vermelho
    • GPIO 22; // Verde

A leitura do sinal Bluetooth é feita utilizando uma biblioteca Nativa do Windows UWP Windows. Devices. Bluetooth. Advertisement, que é responsável por receber e tratar a propaganda de dispositivos Bluetooth Low Energy (BLE). Utilizando esta especificação Bluetooth não é necessário para os dispositivos (funcionamento conforme Beacons).

Quando o sinal Bluetooth é detectado, as lâmpadas verdes referem-se à via "A" piscam 3 vezes e são mantidas acesas. Depois de um tempo pré-determinado, caso o sinal Bluetooth continue sendo detectado, será possível ver as lâmpadas verdes da via "A" piscarem 3 vezes novamente e manterem-se acesas, indicando que o veículo em emergência ainda não conseguiu passar pela via e que por isto, o modo de operação especial será mantido por mais um tempo.

Quando detectamos um sinal Bluetooth, conhecemos, dentre outros detalhes, a definição daquele sinal. Com isto, definimos uma intensidade mínima que faz com que o modo de operação especial seja acionado. Esta intensidade esta relacionada, outros fatores de interferência, com a distância entre o emissor e o receptor do sinal.

Trata-se de um aplicativo em primeiro plano, como uma interface que mostra um log com os emissores Bluetooth que estão próximos e se o semáforo está operando de um modo normal ou especial.

Aplicativo Android

O aplicativo Android é responsável por emitir o sinal Bluetooth, quando indicado pelo usuário que o veículo esta em modo emergência. Para isto utilizar uma biblioteca AltBeacon (vide referências), funcionando como um beacon Bluetooth. O aplicativo é simples, implanta um botão principal, que quando acionado inicia a transmissão Bluetooth e ao ser acionado novamente encerra uma propagação de sinal, e uma configuração que permite escolher uma frequência de emissão de sinal (bilho ou muitas restrições por segundo).

Quando um sinal emitido por este aplicativo é detectado pela placa, o modo de operação especial para atender ao veículo equipado com este aplicativo deve ser iniciado.

Etapa 4: Aplicativo Android

Aplicativo Android
Aplicativo Android
Aplicativo Android
Aplicativo Android

Telas de operação do Aplicativo Android.

Etapa 5: Aplicativo Windows IoT

Aplicativo Windows IoT
Aplicativo Windows IoT
Aplicativo Windows IoT
Aplicativo Windows IoT

Telas de Monitoramento do Aplicativo UWP.

Etapa 6: Montagem E Execução

Montagem E Execução
Montagem E Execução
Montagem E Execução
Montagem E Execução

Para montar e executar o projeto, temos 3 etapas a serem seguidas. O primeiro passo é realizar a ligação física dos Leds nas portas GPIO da placa escolhida (Raspberry ou DragonBoard), seguindo o diagrama disponibilizado e observando a numeração das portas GPIO indicadas nos passos anteriores.

Após a montagem física, e assumindo que a placa já esteja concordando com o Windows 10 IoT Core (Instalação Windows IoT), é necessário fazer a implantação do aplicativo UWP sem hardware. O Código fonte está disponível no GitHub e o link pode ser encontrado neste documento. Fizemos para implantar diretamente através do Visual Studio 2017, que foi usado para o desenvolvimento do projeto. Uma vez que o aplicativo já tiver instalado na placa, é possível gerenciá-lo (iniciar, parar, excluir) através do Windows Device Portal.

É importante verificar que o Bluetooth está ativado na placa para o funcionamento do projeto. Esta ativação pode ser verificada através do Windows Device Portal, em Conectividade -> Bluetooth. Não é necessário parear nenhum dispositivo, ele apenas precisa estar ligado.

Conforme dito, o aplicativo é do tipo primeiro plano, possuindo uma interface de monitoramento, que permite visualizar os veículos de emergência próximos e o status do semáforo. Apesar de não ser necessário, para visualizar esta tela pode-se ligar a uma placa de uma tela através da porta HDMI ou usar o Windows IoT Remote Client.

Tendo feito a ligação dos Leds e o aplicativo UWP ativado em execução no Windows IoT o semáforo já existente funcionado e será possível visualizar a alternância das luzes em modo normal. Neste ponto o aplicativo já está esperando o sinal Bluetooth emitido pelas viaturas através do aplicativo Android.

Finalmente, será necessário realizar a instalação do aplicativo Android, cujo código fonte também está disponível no GitHub com link neste documento, sendo necessário que o Android esteja equipado com Bluetooth versão 4.0. Em nossos testes utilizamos Android 7.0. O aplicativo foi desenvolvido no Android Studio 2.3 e tem como pré-requisito a utilização de Bluetooth, que deve estar ativo no aparelho. O deploy pode ser feito diretamente através do Android Studio ou gerando o apk para ser distribuído.

O aplicativo apresenta um botão principal que ativa e desativa a emissão de sinal Bluetooth, indicando se o veículo esta ou não em modo emergência. Nas configurações do aplicativo é possível alterar a frequência de emissão do sinal, já que ele fica em modo de transmissão.

Quando uma emissão é exibida e detectada pelo aplicativo UWP, é possível visualizar que duas luzes verdes piscam 3 vezes, indicando que o modo de operação especial foi iniciado. O semáforo irá voltar ao funcionamento normal se não estiver detectando mais nenhum sinal bluetooth das viaturas.

Etapa 7: Código Fonte

Windows IoT

O código fonte do aplicativo desenvolvido em Windows IoT para execução no DragonBoard 410C ou no Raspberry Pi 3 está disponível no seguinte endereço:

github.com/pedrohorita/SmartTraffic-IoT-AS…

Android

O código de fonte do aplicativo Android desenvolvido para ativar o modo de emergência nos veículos com prioridade de enviando o sinal Bluetooth está disponível no seguinte endereço:

github.com/arthur-mourao/SmartTrafficTrans…

Etapa 8: Vídeo Demonstração

Na demonstração foram utilizados Smartphones com o Aplicativo Android que simula veículos com prioridade trafegando na via, enquanto o driver detectar a aproximação do veículo.

A detecção do veículo prioritário é específico do flash do sinal verde.

Após a detecção, o driver altera a temporização dos semáforos para dar passagem para o veículo com prioridade.

No exemplo em questão, simulamos uma ambulância com o paciente se deslocando para um hospital.

Etapa 9: Referências Bibliográficas

  • https://www.bluetooth.com/develop-with-bluetooth/d…
  • https://blog.bluetooth.com/proximity-and-rssi
  • https://developer.radiusnetworks.com/2014/12/04/fun…
  • https://github.com/andijakl/universal-beacon

Recomendado: