Índice:

Detecção de intrusão HiFive1 Arduino com alertas MQTT usando ESP32 ou ESP8266: 6 etapas
Detecção de intrusão HiFive1 Arduino com alertas MQTT usando ESP32 ou ESP8266: 6 etapas

Vídeo: Detecção de intrusão HiFive1 Arduino com alertas MQTT usando ESP32 ou ESP8266: 6 etapas

Vídeo: Detecção de intrusão HiFive1 Arduino com alertas MQTT usando ESP32 ou ESP8266: 6 etapas
Vídeo: Surveillance monitoring with deep learning using ESP32 | Arduino Based Projects 2024, Novembro
Anonim
Detecção de intrusão HiFive1 Arduino com alertas MQTT usando ESP32 ou ESP8266
Detecção de intrusão HiFive1 Arduino com alertas MQTT usando ESP32 ou ESP8266

O HiFive1 é a primeira placa baseada em RISC-V compatível com Arduino construída com CPU FE310 da SiFive. A placa é cerca de 20 vezes mais rápida do que o Arduino UNO, mas, como a placa UNO, não possui conectividade sem fio.

Felizmente, existem vários módulos baratos no mercado para atenuar essa limitação. Neste tutorial, usei um ESP32 ou um ESP8266 para obter conectividade sem fio. Apesar de o ESP-01 ser barato, devido à necessidade de programá-lo com um esboço do Arduino, o ESP-01 foi uma solução menos prática. Para programar o ESP-01, ele precisa de um adaptador USB externo para ESP-01 que eu não tinha na época de fazer este tutorial. (Se você estiver interessado em usar um HiFive1 com o ESP-01, siga este link) Eu também pensei em usar um Arduino Shield, mas acabei ficando com o ESP8266 / 32 por causa do preço relativamente caro que a maioria dos shields tem.

Este projeto terá como foco a criação de um Sistema de Detecção de Intrusão que funcionará enviando uma notificação ao MQTT Broker toda vez que o Sensor Ultrassônico (SRF05) detectar um objeto cruzando sua linha de visão.

Materiais necessários para este projeto:

  • Placa HiFive1 (pode ser adquirida aqui)
  • ESP32 Dev Module ou ESP8266 NodeMCU 1.0
  • 10k resistor x 2
  • Resistor 1k
  • Tábua de pão
  • cabo jumper x 6
  • Módulo ultrassônico SRF05
  • Dispositivo móvel

Etapa 1: Configurando o ambiente

Configurando o ambiente
Configurando o ambiente

Instale o IDE Arduino

1. Siga as instruções para instalar o pacote Arduino da placa HiFive1 e o driver USB.

2. Instale o pacote de placa ESP32 ou ESP8266 adicionando um URL apropriado a "Arquivo-> Preferências-> Gerenciador de placas adicionais":

  • ESP8266 -
  • ESP32 -

Etapa 2: Conectando o ESP32

Fiação do ESP32
Fiação do ESP32
Fiação do ESP32
Fiação do ESP32

Se você estiver usando um ESP8266, pule para a etapa 3.

Importante: O SRF05 vem em 2 versões de pinagem que são versões espelhadas uma da outra, certifique-se de ter o mesmo módulo que o meu usando o link abaixo.

Para mais detalhes técnicos sobre o SRF05, siga este link.

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI / O 11 (HiFive1) -> Trigger Pin (SRF05) DI / O 12 (HiFive1) -> Eco Pin (SRF05) DI / O 5 (HiFive1) -> Tx (ESP32) DI / O 6 (HiFive1) -> Rx (ESP32)

Nota: Certifique-se de que o jumper IOREF está definido em 3.3v.

Etapa 3: Conectando o ESP8266

Conectando o ESP8266
Conectando o ESP8266
Conectando o ESP8266
Conectando o ESP8266

Importante: O SRF05 vem em 2 versões de pinagem que são versões espelhadas uma da outra, certifique-se de ter o mesmo módulo que o meu usando o link abaixo.

Para mais detalhes técnicos sobre o SRF05, siga este link

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI / O 11 (HiFive1) -> Trigger Pin (SRF05) DI / O 12 (HiFive1) -> Eco Pin (SRF05) DI / O 5 (HiFive1) -> Tx (ESP8266) DI / O 6 (HiFive1) -> Rx (ESP8266)

Nota: Certifique-se de que o jumper IOREF está definido para 3,3v.

Etapa 4: Programação

Código HiFive1:

Antes de programar, defina "Ferramentas-> Placa" para placa HiFive1, "Ferramentas-> Freqüência de clock da CPU" para "PLL de 256 MHz", "Ferramentas-> Programador" para "SiFive OpenOCD" e a porta serial correta seja selecionada.

Você também precisará baixar esta biblioteca Ultrasonic e este PubSubClient e extraí-los em sua pasta Arduino Libraries encontrada em "User-> Documents-> Arduino-> Libraries".

Código ESP32 / 8266:

Durante a programação, a placa ESP deve ter os pinos de hardware Rx e Tx desconectados. Depois que o código foi carregado com êxito, reconecte os pinos Rx e Tx no ESP para garantir a comunicação entre o HiFive1 e o ESP.

Para ESP32 - defina "Ferramentas-> Placa" para "Módulo ESP32 Dev", "Ferramentas-> Programador" para "AVRISP mkll" e selecione a porta serial correta.

Para ESP8266 - Defina "Ferramentas-> Placa" para "NodeMCU 1.0 (Módulo ESP-12E)", "Ferramentas-> Programador" para "AVRISP mkll" e selecione a porta serial correta.

O código do esboço foi emprestado daqui com modificações para convertê-lo em um sistema de detecção de intrusos.

Etapa 5: Configurando o cliente

Configurando o cliente
Configurando o cliente
Configurando o cliente
Configurando o cliente
Configurando o cliente
Configurando o cliente
Configurando o cliente
Configurando o cliente

Eu usei um MQTT Broker baseado em nuvem (este) e um telefone Android com este aplicativo.

Para configurar tudo, você precisará abrir uma conta.

Use as capturas de tela fornecidas para configurar o CloudMQTT e o aplicativo.

Etapa 6: Resultado Final

Resultado final
Resultado final
Resultado final
Resultado final
Resultado final
Resultado final
Resultado final
Resultado final

Nota: Você deve definir a taxa de baud do seu Monitor Serial para 115200, pois essa é a taxa de baud que usamos em nosso esboço.

Seu resultado final deve ser semelhante às capturas de tela finais

Recomendado: