Szukaj kodu

System zdalnego ostrzegania o otwarciu drzwi z odległości 13 mil (21 km) za pomocą LoRa – poza siecią! (Heltec WiFi LoRa 32 V3)

Ta lekcja jest częścią: Wprowadzenie do Wi-Fi LoRa

System zdalnego ostrzegania o otwarciu drzwi z odległości 13 mil (21 km) za pomocą LoRa – poza siecią! (Heltec WiFi LoRa 32 V3)

Wyobraź sobie możliwość monitorowania drzwi wejściowych odległej chatki, bramy gospodarstwa lub wejścia do magazynu z odległości ponad 13 mil (21 km)—bez połączenia Wi-Fi, karty SIM ani żadnych opłat miesięcznych. To nie futurystyczna koncepcja; to praktyczna rzeczywistość dzięki technologii LoRa (Long Range). W tym projekcie zbudujemy system monitorowania drzwi dalekiego zasięgu z wykorzystaniem modułu Heltec Wi-Fi LoRa 32 V3, starannie zapakowanego w obudowę Meshnology N32 z baterią 3000 mAh zapewniającą długotrwałą pracę poza siecią.

Projekt wykorzystuje czujnik Halla do wykrywania, czy drzwi są otwarte, czy zamknięte, i przesyła ten status przez pasmo LoRa. To idealne rozwiązanie dla domków letniskowych, stodół, magazynów lub dowolnego miejsca, gdzie potrzebujesz niezawodnego zdalnego monitorowania bez polegania na istniejącej infrastrukturze. Możesz nawet dodać brzęczyk lub przekaźnik do odbiornika, aby stworzyć lokalny system alarmowy.

Oto kilka praktycznych sposobów wykorzystania tego projektu:

  • Monitoruj drzwi zdalnej szklarni, aby upewnić się, że są zamknięte dla kontroli temperatury.
  • Sprawdź, czy drzwi stodoły lub obory zostały pozostawione otwarte po opuszczeniu posesji.
  • Stwórz alarm bezpieczeństwa dalekiego zasięgu dla szopy lub warsztatu.
  • Otrzymuj powiadomienia, gdy skrzynka pocztowa lub brama zostanie otwarta.
  • Monitoruj dostęp do ogrodzonego obszaru lub placu budowy.

Ten przewodnik jest czwartym z serii o Wi-Fi LoRa 32 V3. Poprzednie filmy dotyczyły wysyłania danych o temperaturze, odczytu do 150 V DC oraz zdalnego sterowania przekaźnikiem—wszystko przez LoRa. Ten projekt opiera się na tych koncepcjach, tworząc kompletny, praktyczny system monitorowania.

Wymagany sprzęt

Do zbudowania tego projektu potrzebne będą następujące komponenty:

  • 2x moduły Heltec Wi-Fi LoRa 32 V3
  • 2x obudowy Meshnology N32 (lub podobne)
  • 2x baterie LiPo 3000 mAh 3,7 V
  • 1x moduł czujnika Halla (z wyjściem cyfrowym)
  • 1x mały magnes (na drzwi)
  • 1x brzęczyk (5 V działa z 3,3 V) lub moduł przekaźnika 5 V
  • 1x tranzystor NPN 2N2222 (do obwodu brzęczyka)
  • 1x rezystor 1kΩ
  • Przewody łączące i lutownica

Obudowa Meshnology N32 to świetna opcja do tego projektu. Została zaprojektowana tak, aby pomieścić moduł Heltec i baterię 3000 mAh, zapewniając czyste, profesjonalne wykończenie. Możesz również użyć zwykłej płytki stykowej lub niestandardowej obudowy wydrukowanej w 3D, aby zacząć.

Przewodnik po okablowaniu

Należy zbudować dwa główne obwody: nadajnik i odbiornik. Nadajnik jest podłączony do czujnika Halla, a odbiornik może być podłączony do brzęczyka lub modułu przekaźnika do alarmów.

Okablowanie nadajnika:

Ta konfiguracja jest bardzo prosta. Czujnik Halla ma cztery piny: VCC, GND, DO (Digital Out) i AO (Analog Out). Do tego projektu potrzebujemy tylko wyjścia cyfrowego.

  • VCC na czujniku łączy się z pinem 3.3V na płycie Heltec.
  • GND na czujniku łączy się z pinem GND na płycie Heltec.
  • DO na czujniku łączy się z GPIO 4 na płycie Heltec.
  • Pin AO pozostaje niepodłączony.

Okablowanie odbiornika (brzęczyk):

Aby sterować brzęczykiem, używany jest tranzystor jako przełącznik, ponieważ brzęczyk może pobierać więcej prądu, niż pin GPIO mikrokontrolera może bezpiecznie dostarczyć. Obwód jest prosty:

  • Dodatni przewód brzęczyka łączy się z pinem 3.3V.
  • Ujemny przewód brzęczyka łączy się z kolektorem tranzystora 2N2222.
  • Emiter tranzystora łączy się z GND.
  • Baza tranzystora łączy się z GPIO 4 na płycie Heltec odbiornika przez rezystor 1kΩ.

Okablowanie odbiornika (przekaźnik):

Jeśli chcesz sterować obciążeniem, takim jak światło lub syrena, możesz użyć modułu przekaźnika. Okablowanie jest jeszcze prostsze:

  • VCC na module przekaźnika łączy się z pinem 3.3V (lub 5 V, jeśli używasz przetwornicy podwyższającej).
  • GND na module przekaźnika łączy się z GND.
  • IN na module przekaźnika łączy się z GPIO 4 na płycie Heltec.

Następnie możesz podłączyć obciążenie AC lub DC do zacisków wyjściowych przekaźnika. Przekaźnik działa jak elektromagnetyczny przełącznik, zamykając obwód, gdy drzwi są otwarte.

W obwodzie brzęczyka tranzystor 2N2222 służy do wzmocnienia prądu z pinu GPIO. Rezystor 1kΩ jest umieszczony między pinem GPIO a bazą, aby ograniczyć prąd wpływający do tranzystora. Brzęczyk jest podłączony między 3,3 V a kolektorem, więc gdy tranzystor jest włączony, zamyka obwód i brzęczyk wydaje dźwięk.

Konfiguracja oprogramowania

Zanim będziesz mógł przesłać kod, musisz zainstalować niezbędne oprogramowanie i biblioteki w swoim Arduino IDE. Najpierw upewnij się, że masz zainstalowane Arduino IDE. Następnie wykonaj następujące kroki:

  1. Instalacja wsparcia dla płyt ESP32: Otwórz Menedżer płyt (Narzędzia > Płyta > Menedżer płyt), wyszukaj „ESP32” i zainstaluj pakiet od Espressif Systems.
  2. Dodanie adresu URL płyt Heltec: Przejdź do Plik > Preferencje, a w polu „Dodatkowe adresy URL menedżera płyt” wklej adres URL JSON https://resource.heltec.cn/download/package_heltec_esp32_index.json dla płyt Heltec ESP32. Ten link można znaleźć na stronie dokumentacji Heltec. Następnie wróć do Menedżera płyt, wyszukaj „Heltec ESP32” i zainstaluj go.
  3. Instalacja bibliotek: Przejdź do Narzędzia > Zarządzaj bibliotekami i zainstaluj następujące pozycje:
    • Heltec ESP32 Dev Boards autorstwa Heltec Automation
    • Adafruit GFX Library autorstwa Adafruit (zainstaluj wszystkie zależności, gdy zostaniesz o to poproszony)
    • Robojax Heltec LoRa 32 – biblioteka (pobierz plik .zip z linku w opisie filmu i zainstaluj go przez Szkic > Dołącz bibliotekę > Dodaj bibliotekę .ZIP).

Po zainstalowaniu bibliotek możesz wybrać właściwą płytę, przechodząc do Narzędzia > Płyta > Heltec ESP32 Arduino > Heltec Wi-Fi LoRa 32(V3). Upewnij się, że wybrany jest właściwy port.

Wyjaśnienie kodu

Ten projekt wykorzystuje dwa osobne pliki kodu: jeden dla nadajnika i jeden dla odbiornika. Oba są zawarte w bibliotece Robojax Heltec LoRa 32 w menu przykładów. Kod jest w dużej mierze wstępnie napisany; wystarczy dostosować kilka kluczowych zmiennych na górze każdego pliku, aby skonfigurować sieć.

Kod nadajnika (Door Alarm TX):

Otwórz kod nadajnika z Plik > Przykłady > Robojax Heltec LoRa 32 > Door Alarm TX. Kluczowe ustawienia, które należy zmodyfikować, to:

  • Pin czujnika drzwi: Jest to pin GPIO podłączony do wyjścia cyfrowego czujnika Halla. Domyślnie jest to pin 4, ale można go zmienić, jeśli podłączyłeś go inaczej.
  • Ciągi tekstowe: Możesz zmienić tekst wyświetlany i przesyłany, taki jak „Door is OPEN” i „Door is CLOSED”. Zachowaj cudzysłowy, ponieważ są to ciągi znaków.
  • Klucz zabezpieczający: Jest to tajny ciąg znaków, który musi być zgodny między nadajnikiem a odbiornikiem. Zapobiega to wyzwalaniu alarmu przez inne urządzenia LoRa. Zmień go na unikalną wartość.
  • Częstotliwość: Musi być ustawiona na właściwą częstotliwość dla Twojego regionu (np. 915 MHz dla USA, 868 MHz dla Europy). Musi być zgodna z częstotliwością odbiornika.
  • Moc nadawania: Ustawia moc transmisji w dBm. Można ją ustawić od 2 do 20. Do testów na krótkim dystansie wystarczy niska wartość, np. 2. Do testu na długim dystansie 13 mil ustawiono ją na 20. Wyższa moc szybciej rozładuje baterię.

Kod odbiornika (Door Alarm RX):

Otwórz kod odbiornika z Plik > Przykłady > Robojax Heltec LoRa 32 > Door Alarm RX. Kluczowe ustawienia to:

  • Pin przekaźnika: Pin GPIO podłączony do przekaźnika lub obwodu sterowania brzęczykiem. Domyślnie jest to pin 4.
  • Czas trwania alarmu: Ta zmienna określa, jak długo przekaźnik lub brzęczyk pozostaje aktywny po odebraniu sygnału „Door Open”. Domyślnie jest to 1000 milisekund (1 sekunda). Możesz zwiększyć tę wartość do 10 000 lub 20 000 ms, jeśli chcesz, aby alarm brzmiał dłużej.
  • Klucz zabezpieczający: Musi być identyczny z kluczem ustawionym w kodzie nadajnika.
  • Częstotliwość: Musi być zgodna z częstotliwością nadajnika dla Twojego regionu.

Po skonfigurowaniu tych ustawień możesz przesłać kod na odpowiednie płyty.

Projekt na żywo i demonstracja

W filmie projekt jest demonstrowany zarówno na stole warsztatowym, jak i w rzeczywistym scenariuszu. W laboratorium nadajnik jest podłączony do czujnika Halla, a magnes służy do symulacji otwierania i zamykania drzwi. Gdy magnes znajduje się blisko czujnika, system pokazuje „CLOSED”, a gdy zostanie usunięty, pokazuje „OPEN”. Ten status jest przesyłany do odbiornika, który aktywuje brzęczyk lub przekaźnik.

Test w rzeczywistych warunkach obejmował zamontowanie czujnika Halla i magnesu na drzwiach. Gdy drzwi zostały otwarte, odbiornik natychmiast wyświetlił „OPEN” i uruchomił alarm. Zamknięcie drzwi wysłało sygnał „CLOSED” i wyłączyło alarm.

Aby udowodnić możliwości transmisji na duże odległości, nadajnik umieszczono na statywie nad jeziorem z czystą linią widoczności. Następnie odbiornik przewieziono do miejsca oddalonego o ponad 13 mil (21 km). Na tej odległości odbiornik nadal był w stanie odebrać sygnał i wyświetlić przesłane dane, co pokazuje moc i niezawodność LoRa w komunikacji poza siecią.

Do testu zasięgu można ustawić moc nadawania na 20 dBm. Jednak do codziennego użytku w laboratorium lub na krótkich dystansach ustawienie jej na 2 dBm pozwoli oszczędzać baterię. Przy baterii 3000 mAh nadajnik może działać przez kilka dni, w zależności od mocy transmisji i częstotliwości aktualizacji.

Rozdziały

  • [00:00] Wprowadzenie do systemu zdalnego alarmu drzwiowego
  • [01:04] Przegląd serii projektów LoRa
  • [02:01] Przegląd komponentów i sprzętu
  • [05:42] Obudowa Meshnology N32 i opcje baterii
  • [07:20] Montaż obudowy Meshnology N32
  • [11:41] Testowanie złączy i bezpieczeństwo baterii
  • [12:22] Podłączanie czujnika Halla i przekaźnika
  • [13:51] Podłączanie brzęczyka z tranzystorem
  • [17:48] Finalny montaż i regulacja czujnika
  • [23:20] Instalacja oprogramowania i bibliotek
  • [27:42] Konfiguracja i wgrywanie kodu nadajnika
  • [30:22] Konfiguracja i wgrywanie kodu odbiornika
  • [31:56] Demonstracja laboratoryjna systemu alarmu drzwiowego
  • [33:03] Testowanie na prawdziwych drzwiach
  • [34:08] Test zasięgu 13 mil i podsumowanie
Brak załączonego kodu.

Pliki📁

Biblioteki Arduino (zip)

Inne pliki