Skip to content

nobertomaciel/PGCC008-Problema3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PGCC008 - Sistemas Computacionais 2022-1
Atividade #3: Detecção de Emergências (rede mesh)

Descrição:

Este projeto faz parte da atividade final da disciplina PGCC008 do Programa de Pós-graduação Stricto Sensu em Ciência da Computação (mestrado) da Universidade Estadual de Feira de Santana.

Alunos: Noberto Maciel e Gustavo Coelho

Professores: Ângelo Duarte e Thiago de Jesus

Diagramas do projeto:

Resultados das leituras

NodeMCU ESP8266 v3:

Códigos

Configuração

  1. Para desenvolver e carregar o código fonte no nodeMCU ESP8266 foi usado o Visual Studio Code com a extensão PlatformIO.
  2. Para usar o código na IDE do Arduino, utilize o arquivo main.cpp mudando a extensão para .ino e retirando a biblioteca Arduino.h.
  3. Você pode precisar instalar o driver ch340: download aqui (linux - testado em debian) ou aqui (windows).
  4. Tutorial para usar o ESP8266 na PlatformIO Vs Code aqui
  5. Tutorial para usar o ESP8266 na IDE Arduino aqui
  6. Sensores, pinos e funcionalidades: issue #2
  7. Protocolo de comunicação do projeto: issue #4
  8. Protocolo de comunicação da rede Mesh: PainlessMesh Lib

Comunicação MQTT

O Raspberry cadastrado no site da AWS possui um canal de comunicação MQTT denominado shadow, e foi a partir desse canal que foi realizada a troca de mensagem entre o broker AWS e o raspberry.

Um cliente MQTT é responsável por verificar se o canal 'update' do shadow sofreu alterações, em caso positivo é acionado o método que deve realizar o processamento a partir da mensagem recebida. Se a mensagem for para alterar a frequência de um nó, os valores serão obtidos do json e uma mensagem será montada e enviada, seguindo o protocolo vigente, para que o node em questão tenha sua frequência alterada.

Caso o objetivo seja obter o valor do sensor de um determinado node, então são realizados alguns processos a mais. Primeiro uma mensagem é enviada para que a frequência da mensagem seja igual a 1, dessa forma o node envia seus dados imediatamente. Feito isso, os dados são lidos e enviados de volta para o broker AWS. Logo em seguida, é enviada outra mensagem para o nó que retornou o valor para que ele volta a sua frequêncai de operação original.

Sites

  1. https://www.instructables.com/Add-Custom-Alexa-Control-to-Raspberry-Pi-Project/
  2. https://www.raspberrypi.com/software/operating-systems/
  3. https://docs.aws.amazon.com/pt_br/lambda/latest/dg/welcome.html
  4. https://github.com/alexa
  5. https://developer.amazon.com/en-US/alexa/alexa-skills-kit#
  6. https://gitlab.com/painlessMesh/painlessMesh
  7. https://www.waveshare.com/wiki/Flame_Sensor

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published