Sisukord:

HiFive1 Arduino sissetungija tuvastamine koos MQTT hoiatustega, kasutades ESP32 või ESP8266: 6 sammu
HiFive1 Arduino sissetungija tuvastamine koos MQTT hoiatustega, kasutades ESP32 või ESP8266: 6 sammu

Video: HiFive1 Arduino sissetungija tuvastamine koos MQTT hoiatustega, kasutades ESP32 või ESP8266: 6 sammu

Video: HiFive1 Arduino sissetungija tuvastamine koos MQTT hoiatustega, kasutades ESP32 või ESP8266: 6 sammu
Video: HiFive 1 Dev Kit 2024, November
Anonim
HiFive1 Arduino sissetungija tuvastamine koos MQTT hoiatustega, kasutades ESP32 või ESP8266
HiFive1 Arduino sissetungija tuvastamine koos MQTT hoiatustega, kasutades ESP32 või ESP8266

HiFive1 on esimene Arduino-ühilduv RISC-V-põhine plaat, mis on ehitatud SiFive'i FE310 protsessoriga. Tahvel on umbes 20 korda kiirem kui Arduino UNO, kuid samas nagu UNO plaat, sellel puudub igasugune traadita ühendus.

Õnneks on selle piirangu leevendamiseks turul mitmeid odavaid mooduleid. Selles õpetuses kasutasin traadita ühenduse loomiseks ESP32 või ESP8266. Vaatamata sellele, kui odav on ESP-01, oli ESP-01 Arduino visandiga programmeerimise tõttu vähem praktiline lahendus. ESP-01 programmeerimiseks vajab see välist USB-ESP-01 adapterit, mida mul selle õpetuse tegemise ajal polnud. (Kui olete huvitatud HiFive1 kasutamisest ESP-01-ga, järgige seda linki) Kavatsesin kasutada ka Arduino Shieldi, kuid jäin ESP8266/32 juurde, kuna enamikul kilpidel on suhteliselt kallis hinnasilt.

See projekt keskendub sissetungijate tuvastamise süsteemi loomisele, mis töötab, saates MQTT Brokerile iga kord, kui ultraheliandur (SRF05) tuvastab objekti, mis ületab tema vaatevälja.

Selle projekti jaoks vajalikud materjalid:

  • HiFive1 plaat (saab osta siit)
  • ESP32 arendusmoodul või ESP8266 NodeMCU 1.0
  • 10k takisti x 2
  • 1k takisti
  • Leivalaud
  • hüppaja kaabel x 6
  • SRF05 ultraheli moodul
  • Mobiilseade

Samm: keskkonna seadistamine

Keskkonna seadistamine
Keskkonna seadistamine

Installige Arduino IDE

1. HiFive1 plaadi Arduino paketi ja USB -draiveri installimiseks järgige juhiseid.

2. Installige ESP32 või ESP8266 tahvlipakett, lisades "Fail-> Eelistused-> Lisalaudade haldurile" sobiva URL-i:

  • ESP8266 -
  • ESP32 -

Samm: ESP32 ühendamine

ESP32 juhtmestik
ESP32 juhtmestik
ESP32 juhtmestik
ESP32 juhtmestik

Kui kasutate ESP8266, jätkake 3. sammuga.

Tähtis: SRF05 on saadaval kahes pinout -versioonis, mis on üksteise peegelpildid. Veenduge, et teil on minu mooduliga sama moodul, kasutades allolevat linki.

SRF05 kohta leiate lisateavet sellelt lingilt.

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

Märkus: Veenduge, et IOREF -hüppaja on seatud 3.3v -le.

Samm 3: ESP8266 juhtmestik

ESP8266 juhtmestik
ESP8266 juhtmestik
ESP8266 juhtmestik
ESP8266 juhtmestik

Tähtis: SRF05 on saadaval kahes pinout -versioonis, mis on üksteise peegelpildid. Veenduge, et teil on minu mooduliga sama moodul, kasutades allolevat linki.

SRF05 kohta leiate lisateavet sellelt lingilt

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

Märkus: Veenduge, et IOREF -hüppaja on seatud väärtusele 3.3v.

4. samm: programmeerimine

HiFive1 kood:

Enne programmeerimist seadke "Tools-> Board" HiFive1 tahvlile, "Tools-> CPU Clock Frequency" väärtusele "256MHz PLL", "Tools-> Programmer" väärtusele "SiFive OpenOCD" ja valitakse õige jadaport.

Samuti peate alla laadima selle ultrahelikogu ja selle PubSubClienti ning ekstraheerima need oma kausta Arduino Libraries, mis asub jaotises „Kasutaja-> Dokumendid-> Arduino-> Teegid”.

ESP32/8266 Kood:

Programmeerimise ajal peaksid ESP -plaadil olema riistvara Rx- ja Tx -tihvtid lahti ühendatud. Pärast koodi edukat üleslaadimist ühendage ESP -l Rx- ja Tx -tihvtid uuesti, et tagada HiFive1 ja ESP vaheline side.

ESP32 puhul-määrake "Tools-> Board" väärtuseks "ESP32 Dev Module", "Tools-> Programmer" väärtuseks "AVRISP mkll" ja valige õige jadaport.

ESP8266 jaoks-määrake "Tools-> Board" väärtuseks "NodeMCU 1.0 (ESP-12E Module)", "Tools-> Programmer" väärtuseks "AVRISP mkll" ja valige õige jadaport.

Eskiisikood laenati siit koos muudatustega, et muuta see sissetungijate tuvastamise süsteemiks.

Samm: kliendi seadistamine

Kliendi seadistamine
Kliendi seadistamine
Kliendi seadistamine
Kliendi seadistamine
Kliendi seadistamine
Kliendi seadistamine
Kliendi seadistamine
Kliendi seadistamine

Kasutasin selle rakendusega pilvepõhist MQTT maaklerit (seda) ja Android-telefoni.

Kõigi seadistamiseks peate avama konto.

Kasutage kaasasolevaid ekraanipilte CloudMQTT ja rakenduse seadistamiseks.

6. samm: lõpptulemus

Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus

Märkus. Seeriamonitori andmeedastuskiiruseks peaksite määrama 115200, kuna see on joonisel kasutatav andmeedastuskiirus.

Teie lõpptulemus peaks sarnanema lõplike ekraanipiltidega

Soovitan: