Innehållsförteckning:

HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266: 6 steg
HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266: 6 steg

Video: HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266: 6 steg

Video: HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266: 6 steg
Video: #111 Weekly Roundup #26 - New Maker Products 2024, Juni
Anonim
HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266
HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266

HiFive1 är det första Arduino-kompatibla RISC-V-baserade kortet byggt med FE310 CPU från SiFive. Kortet är cirka 20 gånger snabbare än Arduino UNO men som UNO -kortet saknar det någon trådlös anslutning.

Lyckligtvis finns det flera billiga moduler på marknaden för att mildra denna begränsning. I denna handledning använde jag en ESP32 eller en ESP8266 för att få trådlös anslutning. Trots hur billig ESP-01 är, på grund av behovet av att programmera den med en Arduino-skiss, var ESP-01 en mindre praktisk lösning. För att programmera ESP-01 behöver den en extern USB till ESP-01-adapter som jag inte hade när jag gjorde den här självstudien. (Om du är intresserad av att använda en HiFive1 med ESP-01 följ den här länken) Jag övervägde också att använda en Arduino Shield men slutade hålla fast vid ESP8266/32 på grund av den relativt dyra prislappen som de flesta sköldar har.

Detta projekt kommer att fokusera på att skapa ett intrångsdetekteringssystem som kommer att fungera genom att skicka ett meddelande till MQTT Broker varje gång ultraljudssensorn (SRF05) detekterar ett objekt som passerar sin siktlinje.

Material som behövs för detta projekt:

  • HiFive1 -kort (kan köpas här)
  • ESP32 Dev Module eller ESP8266 NodeMCU 1.0
  • 10k motstånd x 2
  • 1k motstånd
  • Bakbord
  • bygelkabel x 6
  • SRF05 Ultraljudsmodul
  • Mobilenhet

Steg 1: Konfigurera miljön

Ställa in miljön
Ställa in miljön

Installera Arduino IDE

1. Följ instruktionerna för att installera HiFive1 -kortets Arduino -paket och USB -drivrutin.

2. Installera ESP32- eller ESP8266-kortpaketet genom att lägga till en lämplig URL till "File-> Preferences-> Additional Boards Manager":

  • ESP8266 -
  • ESP32 -

Steg 2: Anslut ESP32

Anslutning av ESP32
Anslutning av ESP32
Anslutning av ESP32
Anslutning av ESP32

Om du använder en ESP8266 gå till steg 3.

Viktigt: SRF05 finns i två pinout -versioner som är speglade versioner av varandra, se till att du har samma modul som min med länken nedan.

För mer teknisk information om SRF05, följ denna länk.

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)

Obs: Se till att IOREF -bygeln är inställd på 3.3v.

Steg 3: Anslut ESP8266

Anslutning av ESP8266
Anslutning av ESP8266
Anslutning av ESP8266
Anslutning av ESP8266

Viktigt: SRF05 finns i två pinout -versioner som är speglade versioner av varandra, se till att du har samma modul som min med länken nedan.

För mer teknisk information om SRF05, följ denna länk

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)

Obs: Se till att IOREF -bygeln är inställd på 3,3v.

Steg 4: Programmering

HiFive1 -kod:

Innan programmeringen ställer du in "Verktygs-> Kort" på HiFive1-kortet, "Verktygs-> CPU-klockfrekvens" till "256MHz PLL", "Verktygs-> Programmerare" till "SiFive OpenOCD" och rätt seriell port väljs.

Du måste också ladda ner detta ultraljudsbibliotek och denna PubSubClient och extrahera dem i mappen Arduino Libraries som finns i "Användare-> Dokument-> Arduino-> Bibliotek".

ESP32/8266 Kod:

Under programmeringen bör ESP -kortet koppla bort hårdvarans Rx- och Tx -stift. Efter att koden har laddats upp, koppla om Rx- och Tx -stiften på ESP för att säkerställa kommunikation mellan HiFive1 och ESP.

För ESP32-Ställ in "Verktygs-> Kort" på "ESP32 Dev Module", "Verktygs-> Programmerare" till "AVRISP mkll" och välj rätt seriell port.

För ESP8266-Ställ in "Verktygs-> Kort" på "NodeMCU 1.0 (ESP-12E-modul)", "Verktygs-> Programmerare" till "AVRISP mkll" och välj rätt seriell port.

Skisskoden lånades härifrån med modifieringar för att konvertera den till ett inkräktardetekteringssystem.

Steg 5: Konfigurera klienten

Konfigurera klienten
Konfigurera klienten
Konfigurera klienten
Konfigurera klienten
Konfigurera klienten
Konfigurera klienten
Konfigurera klienten
Konfigurera klienten

Jag använde en molnbaserad MQTT-mäklare (den här) och en Android-telefon med den här appen.

För att kunna konfigurera allt måste du öppna ett konto.

Använd de medföljande skärmdumparna för att komma igång med att konfigurera CloudMQTT och appen.

Steg 6: Slutresultat

Slutresultat
Slutresultat
Slutresultat
Slutresultat
Slutresultat
Slutresultat
Slutresultat
Slutresultat

Obs! Du bör ställa in din seriella bildskärms överföringshastighet till 115200 eftersom det är den överföringshastighet vi använder i vår skiss.

Ditt slutliga resultat ska likna de sista skärmdumparna

Rekommenderad: