Innehållsförteckning:
- Steg 1: Konfigurera miljön
- Steg 2: Anslut ESP32
- Steg 3: Anslut ESP8266
- Steg 4: Programmering
- Steg 5: Konfigurera klienten
- Steg 6: Slutresultat
Video: HiFive1 Arduino -inkräktaravkänning med MQTT -varningar med ESP32 eller ESP8266: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
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
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
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
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
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
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:
LoRa 3 km till 8 km trådlös kommunikation med låg kostnad E32 (sx1278/sx1276) enhet för Arduino, Esp8266 eller Esp32: 15 steg
LoRa 3 km till 8 km trådlös kommunikation med låg kostnad E32 (sx1278/sx1276) enhet för Arduino, Esp8266 eller Esp32: Jag skapar ett bibliotek för att hantera EBYTE E32 baserat på Semtech -serien av LoRa -enheter, mycket kraftfull, enkel och billig enhet.Du kan hitta 3Km version här, 8Km version här De kan arbeta över ett avstånd på 3000m till 8000m, och de har många funktioner och
Odla mer sallad på mindre utrymme eller växa sallad i rymden, (mer eller mindre) .: 10 steg
Växande mer sallad på mindre utrymme eller … växande sallad i rymden, (mer eller mindre) .: Detta är en professionell underkastelse till Growing Beyond Earth, Maker Contest, som skickas in via Instructables. Jag kunde inte vara mer upphetsad över att planera för produktion av rymdgrödor och lägga upp min första instruktör. För att börja bad tävlingen oss att
Hur man använder Neopixel Ws2812 LED eller LED STRIP eller Led Ring med Arduino: 4 steg
Hur man använder Neopixel Ws2812 LED eller LED STRIP eller Led Ring With Arduino: Hej killar eftersom Neopixel led Strip är mycket populära och det kallas också som ws2812 led strip också. De är mycket populära eftersom vi i dessa ledremsor kan ta upp varje led separat, vilket betyder att om du vill att få lysdioder ska lysa i en färg,
Arduino Ws2812 LED eller Neopixel Led Strip eller Ring Handledning: 4 steg
Arduino Ws2812 LED eller Neopixel Led Strip eller Ring Tutorial: I denna instruktioner lär vi oss hur man använder neopixel eller ws 2812 eller snabb led med Arduino. Dessa typer av LED eller remsor eller ringar styrs av endast en enda Vin -pin och alla Lysdioder är individuellt adresserbara så de kallas även indi
HiFive1 webbserver med ESP32 / ESP8266 WiFi -moduler Handledning: 5 steg
HiFive1 webbserver med ESP32 / ESP8266 WiFi-moduler Handledning: HiFive1 är det första Arduino-kompatibla RISC-V-baserade kortet byggt med FE310 CPU från SiFive. Kortet är ungefär 20 gånger snabbare än Arduino UNO men som UNO -kortet HiFive1 saknar trådlös anslutning. Lyckligtvis finns det flera billiga