Spisu treści:
- Krok 1: Konfiguracja środowiska
- Krok 2: Okablowanie ESP32
- Krok 3: Okablowanie ESP8266
- Krok 4: Programowanie
- Krok 5: Konfiguracja klienta
- Krok 6: Wynik końcowy
Wideo: Wykrywanie intruzów Arduino HiFive1 z alertami MQTT przy użyciu ESP32 lub ESP8266: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
HiFive1 to pierwsza kompatybilna z Arduino płytka oparta na RISC-V, zbudowana z procesorem FE310 firmy SiFive. Płyta jest około 20 razy szybsza niż Arduino UNO, ale podobnie jak płyta UNO, nie ma łączności bezprzewodowej.
Na szczęście na rynku dostępnych jest kilka niedrogich modułów, które łagodzą to ograniczenie. W tym samouczku użyłem ESP32 lub ESP8266 w celu uzyskania łączności bezprzewodowej. Pomimo tego, jak tani jest ESP-01, ze względu na konieczność zaprogramowania go szkicem Arduino, ESP-01 był mniej praktycznym rozwiązaniem. Aby zaprogramować ESP-01, potrzebuje zewnętrznego adaptera USB na ESP-01, którego nie miałem w czasie tworzenia tego samouczka. (Jeśli jesteś zainteresowany użyciem HiFive1 z ESP-01, skorzystaj z tego linku) Rozważałem również użycie Arduino Shield, ale skończyłem z ESP8266/32 ze względu na stosunkowo wysoką cenę, jaką ma większość tarcz.
Ten projekt skupi się na stworzeniu systemu wykrywania intruzów, który będzie działał poprzez wysyłanie powiadomienia do MQTT Broker za każdym razem, gdy czujnik ultradźwiękowy (SRF05) wykryje obiekt przekraczający jego linię wzroku.
Materiały potrzebne do tego projektu:
- Płyta HiFive1 (można kupić tutaj)
- Moduł deweloperski ESP32 lub NodeMCU ESP8266 1.0
- Rezystor 10k x 2
- rezystor 1k
- Deska do krojenia chleba
- kabel połączeniowy x 6
- Moduł ultradźwiękowy SRF05
- Urządzenie przenośne
Krok 1: Konfiguracja środowiska
Zainstaluj Arduino IDE
1. Postępuj zgodnie z instrukcjami, aby zainstalować pakiet Arduino płyty HiFive1 i sterownik USB.
2. Zainstaluj pakiet płyt ESP32 lub ESP8266 dodając odpowiedni adres URL do "Plik->Preferencje->Additional Boards Manager":
- ESP8266 -
- ESP32 -
Krok 2: Okablowanie ESP32
Jeśli używasz ESP8266, przejdź do kroku 3.
Ważne: SRF05 jest dostępny w 2 wersjach pinout, które są lustrzanymi wersjami siebie, upewnij się, że masz ten sam moduł co mój, korzystając z poniższego linku.
Aby uzyskać więcej informacji technicznych na temat SRF05, kliknij ten link.
GND (HiFive1) - > GND (SRF05)5v (HiFive1) - > VCC (SRF05) DI/O 11 (HiFive1) - > Styk wyzwalający (SRF05)DI/O 12 (HiFive1) - > Styk echa (SRF05)DI/ O 5 (HiFive1) -> Tx (ESP32) DI/O 6 (HiFive1) -> Rx (ESP32)
Uwaga: Upewnij się, że zworka IOREF jest ustawiona na 3,3v.
Krok 3: Okablowanie ESP8266
Ważne: SRF05 jest dostępny w 2 wersjach pinout, które są lustrzanymi wersjami siebie nawzajem, upewnij się, że masz ten sam moduł co mój, korzystając z poniższego linku.
Aby uzyskać więcej informacji technicznych na temat SRF05, kliknij ten link
GND (HiFive1) - > GND (SRF05)5v (HiFive1) - > VCC (SRF05)DI/O 11 (HiFive1) - > Styk wyzwalający (SRF05) DI/O 12 (HiFive1) - > Styk echa (SRF05) DI/ O 5 (HiFive1) -> Tx (ESP8266)DI/O6 (HiFive1) -> Rx (ESP8266)
Uwaga: Upewnij się, że zworka IOREF jest ustawiona na 3,3V.
Krok 4: Programowanie
Kod HiFive1:
Przed programowaniem ustaw "Tools->Board" na płytkę HiFive1, "Tools->CPU Clock Frequency" na "256MHz PLL", "Tools->Programmer" na "SiFive OpenOCD" i wybierz właściwy port szeregowy.
Będziesz także musiał pobrać tę bibliotekę Ultrasonic i ten PubSubClient i wyodrębnić je do folderu Arduino Libraries znajdującego się w "User->Documents->Arduino->Libraries".
ESP32/8266 Kod:
Podczas programowania płyta ESP powinna mieć odłączone sprzętowe styki Rx i Tx. Po pomyślnym przesłaniu kodu ponownie podłącz styki Rx i Tx na ESP, aby zapewnić komunikację między HiFive1 a ESP.
Dla ESP32 - Ustaw "Tools->Board" na "ESP32 Dev Module", "Tools->Programmer" na "AVRISP mkll" i wybierz odpowiedni port szeregowy.
Dla ESP8266 - Ustaw "Tools->Board" na "NodeMCU 1.0 (Moduł ESP-12E)", "Tools->Programmer" na "AVRISP mkll" i wybierz odpowiedni port szeregowy.
Kod szkicu został stąd zapożyczony z modyfikacjami, aby przekształcić go w system wykrywania intruzów.
Krok 5: Konfiguracja klienta
Użyłem brokera MQTT w chmurze (tego) i telefonu z Androidem z tą aplikacją.
Aby wszystko skonfigurować, musisz otworzyć konto.
Użyj dostarczonych zrzutów ekranu, aby przejść przez konfigurację CloudMQTT i aplikacji.
Krok 6: Wynik końcowy
Uwaga: Powinieneś ustawić szybkość transmisji monitora szeregowego na 115200, ponieważ jest to szybkość transmisji, której używamy w naszym szkicu.
Twój końcowy wynik powinien wyglądać podobnie do końcowych zrzutów ekranu
Zalecana:
MAX7219 Matryca LED MQTT przy użyciu Esp8266: 6 kroków
MAX7219 LED Matrix MQTT Używając Esp8266: Próbowałem podłączyć mój wyświetlacz LED MAX7219 do serwera MQTT i otrzymać tekst z subskrypcji MQTT na wyświetlacz. Ale nie otrzymałem żadnego odpowiedniego kodu w Internecie, więc zacząłem budować własny …i wynik wypada całkiem nieźle…można di
Temperatura i wilgotność przy użyciu ESP32-DHT22-MQTT-MySQL-PHP: 7 kroków
Temperatura i wilgotność przy użyciu ESP32-DHT22-MQTT-MySQL-PHP: Moja dziewczyna chciała szklarnię, więc ją zrobiłem. Ale chciałem mieć czujnik temperatury i wilgotności wewnątrz szklarni. Szukałem więc przykładów i zacząłem eksperymentować. Doszedłem do wniosku, że wszystkie przykłady, które znalazłem, nie były dokładnie takie
Neopixel Ws2812 Rainbow LED Glow z M5stick-C - Uruchamianie Rainbow na Neopixel Ws2812 przy użyciu M5stack M5stick C przy użyciu Arduino IDE: 5 kroków
Neopixel Ws2812 Rainbow LED Glow z M5stick-C | Uruchamianie Rainbow na Neopixel Ws2812 Używając M5stack M5stick C Używając Arduino IDE: Cześć chłopaki, w tej instrukcji dowiemy się, jak używać neopikselowych ws2812 LED lub taśmy LED lub matrycy LED lub pierścienia LED z płytką rozwojową m5stack m5stick-C z Arduino IDE i zrobimy wzór tęczy z nim
Wykrywanie obiektów z Dragonboard 410c lub 820c przy użyciu OpenCV i Tensorflow.: 4 kroki
Object Detection W/ Dragonboard 410c lub 820c Using OpenCV i Tensorflow.: Ta instrukcja opisuje, jak zainstalować OpenCV, Tensorflow i frameworki uczenia maszynowego dla Pythona 3.5 w celu uruchomienia aplikacji Object Detection
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: 18 kroków (ze zdjęciami)
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: to moja pierwsza publikacja eva artykułu o majsterkowaniu w Internecie. Więc przepraszam za literówki, protokoły itp. Poniższe instrukcje pokazują, jak zrobić PRACOWĄ lutownicę na gorące powietrze odpowiednią do WSZYSTKICH zastosowań wymagających lutowania. To lutowanie gorącym powietrzem