Sommario:

Rilevamento di intrusi Arduino HiFive1 con avvisi MQTT utilizzando ESP32 o ESP8266: 6 passaggi
Rilevamento di intrusi Arduino HiFive1 con avvisi MQTT utilizzando ESP32 o ESP8266: 6 passaggi

Video: Rilevamento di intrusi Arduino HiFive1 con avvisi MQTT utilizzando ESP32 o ESP8266: 6 passaggi

Video: Rilevamento di intrusi Arduino HiFive1 con avvisi MQTT utilizzando ESP32 o ESP8266: 6 passaggi
Video: Промышленный Интернет вещей: удаленный мониторинг температуры через веб-интерфейс | ГАЗ | ОГОНЬ | ЛДР | ПИР-ДАТЧИКИ 2024, Dicembre
Anonim
Rilevamento di intrusi Arduino HiFive1 con avvisi MQTT utilizzando ESP32 o ESP8266
Rilevamento di intrusi Arduino HiFive1 con avvisi MQTT utilizzando ESP32 o ESP8266

HiFive1 è la prima scheda RISC-V compatibile con Arduino costruita con CPU FE310 di SiFive. La scheda è circa 20 volte più veloce di Arduino UNO ma, come la scheda UNO, manca di connettività wireless.

Fortunatamente, ci sono diversi moduli economici sul mercato per mitigare questa limitazione. In questo tutorial ho utilizzato un ESP32 o un ESP8266 per ottenere la connettività wireless. Nonostante quanto sia economico l'ESP-01, a causa della necessità di programmarlo con uno schizzo Arduino, l'ESP-01 era una soluzione meno pratica. Per programmare l'ESP-01, è necessario un adattatore esterno da USB a ESP-01 che non avevo al momento della creazione di questo tutorial. (Se sei interessato a utilizzare un HiFive1 con ESP-01 segui questo link) Ho anche contemplato l'utilizzo di uno scudo Arduino, ma ho finito per attaccare con l'ESP8266/32 a causa del prezzo relativamente costoso che hanno la maggior parte degli scudi.

Questo progetto si concentrerà sulla creazione di un sistema di rilevamento degli intrusi che opererà inviando una notifica a MQTT Broker ogni volta che il sensore a ultrasuoni (SRF05) rileva un oggetto che attraversa la sua linea di vista.

Materiali necessari per questo progetto:

  • Scheda HiFive1 (può essere acquistata qui)
  • Modulo di sviluppo ESP32 o NodeMCU ESP8266 1.0
  • Resistenza da 10k x 2
  • resistenza da 1k
  • tagliere
  • cavo di collegamento x 6
  • SRF05 Modulo ad ultrasuoni
  • Dispositivo mobile

Passaggio 1: configurazione dell'ambiente

Preparare l'ambiente
Preparare l'ambiente

Installa l'IDE Arduino

1. Seguire le istruzioni per installare il pacchetto Arduino della scheda HiFive1 e il driver USB.

2. Installa il pacchetto della scheda ESP32 o ESP8266 aggiungendo un URL appropriato a "File->Preferenze->Gestione schede aggiuntive":

  • ESP8266 -
  • ESP32 -

Passaggio 2: cablaggio dell'ESP32

Cablaggio dell'ESP32
Cablaggio dell'ESP32
Cablaggio dell'ESP32
Cablaggio dell'ESP32

Se stai utilizzando un ESP8266, vai al passaggio 3.

Importante: l'SRF05 è disponibile in 2 versioni di pinout che sono versioni speculari l'una dell'altra, assicurati di avere lo stesso modulo del mio usando il link sottostante.

Per maggiori dettagli tecnici sull'SRF05 segui questo link.

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

Nota: assicurarsi che il jumper IOREF sia impostato su 3.3v.

Passaggio 3: cablaggio dell'ESP8266

Cablaggio dell'ESP8266
Cablaggio dell'ESP8266
Cablaggio dell'ESP8266
Cablaggio dell'ESP8266

Importante: l'SRF05 è disponibile in 2 versioni di pinout che sono versioni speculari l'una dell'altra, assicurati di avere lo stesso modulo del mio usando il link sottostante.

Per maggiori dettagli tecnici sull'SRF05 segui questo link

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

Nota: assicurarsi che il ponticello IOREF sia impostato su 3.3v.

Passaggio 4: programmazione

Codice HiFive1:

Prima della programmazione impostare "Strumenti->Scheda" su HiFive1, "Strumenti->Frequenza clock CPU" su "256MHz PLL", "Strumenti->Programmatore" su "SiFive OpenOCD" e selezionare la porta seriale corretta.

Dovrai anche scaricare questa libreria Ultrasonic e questo PubSubClient ed estrarli nella cartella Librerie Arduino che si trova in "Utente-> Documenti-> Arduino-> Librerie".

Codice ESP32/8266:

Durante la programmazione, la scheda ESP dovrebbe avere i pin hardware Rx e Tx disconnessi. Dopo che il codice è stato caricato con successo, ricablare i pin Rx e Tx sull'ESP per garantire la comunicazione tra HiFive1 e ESP.

Per ESP32: impostare "Strumenti->Scheda" su "Modulo di sviluppo ESP32", "Strumenti->Programmatore" su "AVRISP mkll" e selezionare la porta seriale corretta.

Per ESP8266: impostare "Strumenti-> Scheda" su "NodeMCU 1.0 (Modulo ESP-12E)", "Strumenti-> Programmatore" su "AVRISP mkll" e selezionare la porta seriale corretta.

Il codice dello schizzo è stato preso in prestito da qui con modifiche per convertirlo in un sistema di rilevamento degli intrusi.

Passaggio 5: configurazione del client

Configurazione del cliente
Configurazione del cliente
Configurazione del cliente
Configurazione del cliente
Configurazione del cliente
Configurazione del cliente
Configurazione del cliente
Configurazione del cliente

Ho usato un broker MQTT basato su cloud (questo) e un telefono Android con questa app.

Per impostare tutto, dovrai aprire un account.

Utilizza gli screenshot forniti per completare la configurazione di CloudMQTT e dell'app.

Passaggio 6: risultato finale

Risultato finale
Risultato finale
Risultato finale
Risultato finale
Risultato finale
Risultato finale
Risultato finale
Risultato finale

Nota: dovresti impostare la velocità di trasmissione del tuo monitor seriale su 115200 poiché questa è la velocità di trasmissione che usiamo nel nostro schizzo.

Il tuo risultato finale dovrebbe essere simile agli screenshot finali

Consigliato: