Tartalomjegyzék:

HiFive1 Arduino betolakodóészlelés MQTT riasztásokkal ESP32 vagy ESP8266 használatával: 6 lépés
HiFive1 Arduino betolakodóészlelés MQTT riasztásokkal ESP32 vagy ESP8266 használatával: 6 lépés

Videó: HiFive1 Arduino betolakodóészlelés MQTT riasztásokkal ESP32 vagy ESP8266 használatával: 6 lépés

Videó: HiFive1 Arduino betolakodóészlelés MQTT riasztásokkal ESP32 vagy ESP8266 használatával: 6 lépés
Videó: hifive1 revb demo 2024, November
Anonim
HiFive1 Arduino betolakodó érzékelés MQTT riasztásokkal ESP32 vagy ESP8266 használatával
HiFive1 Arduino betolakodó érzékelés MQTT riasztásokkal ESP32 vagy ESP8266 használatával

A HiFive1 az első Arduino-kompatibilis RISC-V alapú kártya, amelyet a SiFive FE310 processzorával építettek fel. A tábla körülbelül 20 -szor gyorsabb, mint az Arduino UNO, de ugyanúgy, mint az UNO tábla, nincs vezeték nélküli kapcsolata.

Szerencsére számos olcsó modul létezik a piacon, hogy enyhítse ezt a korlátozást. Ebben az oktatóanyagban ESP32 vagy ESP8266 -ot használtam a vezeték nélküli kapcsolat eléréséhez. Annak ellenére, hogy az ESP-01 olcsó, mivel az Arduino vázlattal kell programozni, az ESP-01 kevésbé praktikus megoldás volt. Az ESP-01 programozásához külső USB-ESP-01 adapterre van szüksége, ami nem volt az oktatóanyag elkészítésekor. (Ha érdekli a HiFive1 használata az ESP-01-gyel, kövesse ezt a linket.) Az Arduino Shield használatát is fontolgattam, de végül ragaszkodtam az ESP8266/32-hez a legtöbb pajzs viszonylag drága ára miatt.

Ez a projekt egy betolakodó észlelési rendszer létrehozására összpontosít, amely úgy működik, hogy értesítést küld az MQTT Brokernek minden alkalommal, amikor az ultrahangos érzékelő (SRF05) észleli a látómezőjén áthaladó tárgyat.

A projekthez szükséges anyagok:

  • HiFive1 kártya (itt vásárolható meg)
  • ESP32 Dev Module vagy ESP8266 NodeMCU 1.0
  • 10k ellenállás x 2
  • 1k ellenállás
  • Kenyeretábla
  • áthidaló kábel x 6
  • SRF05 ultrahangos modul
  • Mobil eszköz

1. lépés: A környezet beállítása

A környezet beállítása
A környezet beállítása

Telepítse az Arduino IDE -t

1. Kövesse az utasításokat a HiFive1 tábla Arduino csomagjának és USB -illesztőprogramjának telepítéséhez.

2. Telepítse az ESP32 vagy ESP8266 kártyacsomagot úgy, hogy megfelelő URL-t ad hozzá a "Fájl-> Beállítások-> További táblák kezelőhöz":

  • ESP8266 -
  • ESP32 -

2. lépés: Az ESP32 bekötése

Az ESP32 bekötése
Az ESP32 bekötése
Az ESP32 bekötése
Az ESP32 bekötése

Ha ESP8266 -ot használ, ugorjon a 3. lépésre.

Fontos: Az SRF05 2 pinout verzióban érkezik, amelyek egymás tükrözött verziói, az alábbi link segítségével győződjön meg arról, hogy ugyanaz a modul, mint az enyém.

Az SRF05 további technikai részleteiért kattintson erre a linkre.

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)

Megjegyzés: Győződjön meg arról, hogy az IOREF jumper 3.3V -ra van állítva.

3. lépés: Az ESP8266 bekötése

Az ESP8266 bekötése
Az ESP8266 bekötése
Az ESP8266 bekötése
Az ESP8266 bekötése

Fontos: Az SRF05 2 pinout verzióban érkezik, amelyek egymás tükrözött verziói, az alábbi link segítségével győződjön meg arról, hogy ugyanaz a modul, mint az enyém.

Az SRF05 további technikai részleteiért kattintson erre a linkre

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)

Megjegyzés: Győződjön meg arról, hogy az IOREF jumper 3.3v -ra van állítva.

4. lépés: Programozás

HiFive1 kód:

A programozás előtt állítsa az "Eszközök-> Tábla" elemet HiFive1 kártyára, az "Eszközök-> CPU órajel-frekvenciája" értékét "256 MHz-es PLL" -re, az "Eszközök-> Programozó" -ot "SiFive OpenOCD" -ra, és válassza ki a megfelelő soros portot.

Ezenkívül le kell töltenie ezt az ultrahangos könyvtárat és ezt a PubSubClient programot, és kicsomagolnia azokat az Arduino Libraries mappába, amely a "User-> Documents-> Arduino-> Libraries" mappában található.

ESP32/8266 Kód:

A programozás során az ESP kártyát le kell választani a hardver Rx és Tx csapjairól. A kód sikeres feltöltése után újra kell vezetni az Rx és Tx csapokat az ESP -n, hogy biztosítsa a kommunikációt a HiFive1 és az ESP között.

ESP32 esetén-Állítsa az "Eszközök-> Tábla" beállítást "ESP32 Dev Module" -ra, az "Eszközök-> Programozó" -ot "AVRISP mkll" -re, és válassza ki a megfelelő soros portot.

ESP8266 esetén-Állítsa az "Eszközök-> Tábla" beállítást "NodeMCU 1.0 (ESP-12E modul)", az "Eszközök-> Programozó" értékét "AVRISP mkll" értékre, és válassza ki a megfelelő soros portot.

A vázlatkódot innen kölcsönözték módosításokkal, hogy betolakodó észlelési rendszerré alakítsák át.

5. lépés: Az ügyfél beállítása

Az ügyfél beállítása
Az ügyfél beállítása
Az ügyfél beállítása
Az ügyfél beállítása
Az ügyfél beállítása
Az ügyfél beállítása
Az ügyfél beállítása
Az ügyfél beállítása

Egy felhőalapú MQTT Brokert (ezt) és egy Android telefont használtam ezzel az alkalmazással.

Annak érdekében, hogy mindent beállítson, fiókot kell nyitnia.

Használja a mellékelt képernyőképeket a CloudMQTT és az alkalmazás beállításához.

6. lépés: Végeredmény

Végeredmény
Végeredmény
Végeredmény
Végeredmény
Végeredmény
Végeredmény
Végeredmény
Végeredmény

Megjegyzés: A soros monitor adatátviteli sebességét 115200 -ra kell beállítani, mivel ezt az átviteli sebességet használjuk a vázlatunkban.

A végeredménynek hasonlónak kell lennie a végső képernyőképekhez

Ajánlott: