Taula de continguts:

HiFive1 Arduino Detecció d’intrusos amb alertes MQTT mitjançant ESP32 o ESP8266: 6 passos
HiFive1 Arduino Detecció d’intrusos amb alertes MQTT mitjançant ESP32 o ESP8266: 6 passos

Vídeo: HiFive1 Arduino Detecció d’intrusos amb alertes MQTT mitjançant ESP32 o ESP8266: 6 passos

Vídeo: HiFive1 Arduino Detecció d’intrusos amb alertes MQTT mitjançant ESP32 o ESP8266: 6 passos
Vídeo: Sensor de colores(1) 2024, De novembre
Anonim
HiFive1 Arduino Detecció d’intrusos amb alertes MQTT mitjançant ESP32 o ESP8266
HiFive1 Arduino Detecció d’intrusos amb alertes MQTT mitjançant ESP32 o ESP8266

La HiFive1 és la primera placa basada en RISC-V compatible amb Arduino construïda amb CPU FE310 de SiFive. La placa és unes 20 vegades més ràpida que Arduino UNO, però, igual que la placa UNO, no té connectivitat sense fils.

Afortunadament, hi ha diversos mòduls econòmics al mercat per mitigar aquesta limitació. En aquest tutorial he utilitzat un ESP32 o un ESP8266 per tal d’obtenir connectivitat sense fils. Tot i el barat que és l’ESP-01, a causa de la necessitat de programar-lo amb un esbós Arduino, l’ESP-01 era una solució menys pràctica. Per programar l’ESP-01, necessita un adaptador extern USB a ESP-01 que no tenia al moment de fer aquest tutorial. (Si esteu interessat en utilitzar un HiFive1 amb l'ESP-01, seguiu aquest enllaç) També vaig contemplar l'ús d'un Arduino Shield però vaig acabar quedant-me amb l'ESP8266 / 32 a causa del preu relativament car que tenen la majoria dels protectors.

Aquest projecte se centrarà en la creació d’un sistema de detecció d’intrusos que funcionarà enviant una notificació a MQTT Broker cada vegada que el sensor d’ultrasons (SRF05) detecti un objecte que creua la seva línia de visió.

Materials necessaris per a aquest projecte:

  • Tauler HiFive1 (es pot comprar aquí)
  • Mòdul ESP32 Dev o ESP8266 NodeMCU 1.0
  • 10k resistència x 2
  • 1k resistència
  • Taula de pa
  • cable de pont x 6
  • Mòdul d'ultrasons SRF05
  • Dispositiu mòbil

Pas 1: Configuració de l'entorn

Configuració del medi ambient
Configuració del medi ambient

Instal·leu l'IDE Arduino

1. Seguiu les instruccions per instal·lar el paquet Arduino de la placa HiFive1 i el controlador USB.

2. Instal·leu el paquet de placa ESP32 o ESP8266 afegint un URL adequat a "Fitxer-> Preferències-> Gestor de taules addicionals":

  • ESP8266 -
  • ESP32:

Pas 2: Cablatge de l'ESP32

Cablatge de l'ESP32
Cablatge de l'ESP32
Cablatge de l'ESP32
Cablatge de l'ESP32

Si feu servir un ESP8266, aneu al pas 3.

Important: el SRF05 inclou dues versions de pinout que són versions reflectides, assegureu-vos que teniu el mateix mòdul que el meu mitjançant l'enllaç següent.

Per obtenir més informació tècnica sobre el SRF05, seguiu aquest enllaç.

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI / O 11 (HiFive1) -> Pin de disparador (SRF05) DI / O 12 (HiFive1) -> Pin de ressò (SRF05) DI / O 5 (HiFive1) -> Tx (ESP32) DI / O 6 (HiFive1) -> Rx (ESP32)

Nota: Assegureu-vos que el pont IOREF estigui configurat a 3.3v.

Pas 3: Cablatge de l'ESP8266

Cablatge de l’ESP8266
Cablatge de l’ESP8266
Cablatge de l’ESP8266
Cablatge de l’ESP8266

Important: el SRF05 inclou dues versions de pinout que són versions reflectides, assegureu-vos que teniu el mateix mòdul que el meu mitjançant l'enllaç següent.

Per obtenir més informació tècnica sobre el SRF05, seguiu aquest enllaç

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI / O 11 (HiFive1) -> Pin de disparador (SRF05) DI / O 12 (HiFive1) -> Pin de ressò (SRF05) DI / O 5 (HiFive1) -> Tx (ESP8266) DI / O 6 (HiFive1) -> Rx (ESP8266)

Nota: Assegureu-vos que el pont IOREF estigui configurat a 3.3v.

Pas 4: Programació

Codi HiFive1:

Abans de programar, configureu "Eines-> Taula" a la placa HiFive1, seleccioneu "Eines-> Freqüència de rellotge de la CPU" a "256 MHz PLL", "Eines-> Programador" a "SiFive OpenOCD" i se selecciona el port sèrie correcte.

També haureu de descarregar aquesta biblioteca d'ultrasons i aquest PubSubClient i extreure'ls a la carpeta Arduino Libraries que es troba a "Usuari-> Documents-> Arduino-> Biblioteques".

Codi ESP32 / 8266:

Durant la programació, la placa ESP hauria de tenir els pins de maquinari Rx i Tx desconnectats. Després de carregar el codi, torneu a connectar els pins Rx i Tx a l’ESP per garantir la comunicació entre l’HiFive1 i l’ESP.

Per a ESP32: configureu "Eines-> Taula" a "Mòdul de desenvolupament ESP32", "Eines-> Programador" a "AVRISP mkll" i seleccioneu el port sèrie correcte.

Per a ESP8266: configureu "Eines-> Taula" a "NodeMCU 1.0 (mòdul ESP-12E)", el "Eines-> Programador" a "AVRISP mkll" i seleccioneu el port sèrie correcte.

El codi d'esbós es va agafar aquí amb modificacions per convertir-lo en un sistema de detecció d'intrusos.

Pas 5: Configuració del client

Configuració del client
Configuració del client
Configuració del client
Configuració del client
Configuració del client
Configuració del client
Configuració del client
Configuració del client

He utilitzat un corredor MQTT basat en el núvol (aquest) i un telèfon Android amb aquesta aplicació.

Per configurar-ho tot, haureu d’obrir un compte.

Utilitzeu les captures de pantalla proporcionades per configurar CloudMQTT i l'aplicació.

Pas 6: Resultat final

Resultat final
Resultat final
Resultat final
Resultat final
Resultat final
Resultat final
Resultat final
Resultat final

Nota: haureu d’establir la velocitat de transmissió del vostre monitor sèrie a 115200, ja que és la velocitat de transmissió que fem servir al nostre esbós.

El resultat final hauria de ser similar a les captures de pantalla finals

Recomanat: