Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Specyfikacje urządzeń
- Krok 2: Typ transmisji
- Krok 3: Tryb urządzenia
- Krok 4: Urządzenie okablowania
- Krok 5: Konfiguracja
- Krok 6: Wynik konfiguracji
- Krok 7: Wyślij wiadomość
- Krok 8: Tarcza dla Arduino
- Krok 9: Biblioteka
Wideo: Prosta komunikacja Arduino LoRa (ponad 5 km): 9 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
Przetestujemy E32-TTL-100 z moją biblioteką. Jest to bezprzewodowy moduł nadawczo-odbiorczy, pracujący z częstotliwością 410 441 MHz (lub 868 MHz lub 915 MHz) w oparciu o oryginalny RFIC SX1278 firmy SEMTECH, dostępna transmisja transparentna, poziom TTL. Moduł wykorzystuje technologię widma rozproszonego LORA.
Kieszonkowe dzieci
- Arduino UNO
- Urządzenia LoRa e32
Opcjonalny
- Tarcza Mischianti Arduino LoRa (Open source)
- Tarcza Mischianti WeMos LoRa (Open source)
Krok 1: Specyfikacje urządzeń
Moduł wyposażony jest w algorytm korekcji błędów FEC Forward, który zapewnia wysoką wydajność kodowania i dobrą wydajność korekcji. W przypadku nagłych zakłóceń może automatycznie skorygować zakłócone pakiety danych, aby odpowiednio poprawić niezawodność i zasięg transmisji. Ale bez FEC te pakiety danych można tylko odrzucić. A dzięki rygorystycznemu szyfrowaniu i deszyfrowaniu przechwytywanie danych staje się bezcelowe. Funkcja kompresji danych może skrócić czas transmisji i prawdopodobieństwo wystąpienia zakłóceń, jednocześnie poprawiając niezawodność i wydajność transmisji.
- Rozmiar modułu: 21*36mm
- Typ anteny: SMA-K (impedancja 50 Ω)
- Odległość transmisji: 3000 m (maks.)
- Maksymalna moc: 2dB (100mW)
- Szybkość transmisji powietrza: 2,4 kb/s (6 opcjonalnych poziomów (0,3, 1,2, 2,4, 4,8, 9,6, 19,2 kb/s)
- Długość emisji: 512ByteReceive
- długość: 512 bajtów
- Interfejs komunikacyjny: UART – 8N1, 8E1, 8O1,
- Osiem rodzajów szybkości transmisji UART, od 1200 do 115200bps (domyślnie: 9600)
- Obsługa RSSI: Nie (wbudowane inteligentne przetwarzanie)
Krok 2: Typ transmisji
Transmisja przezroczysta Można to uznać za „tryb demonstracyjny”, domyślnie możesz wysłać wiadomość do wszystkich urządzeń o tym samym skonfigurowanym adresie i kanale.
Transmisja stała
W tym typie transmisji możesz określić adres i kanał, na który chcesz wysłać wiadomość. Możesz wysłać wiadomość do:
- Określone urządzenie ze wstępnie określonym adresem Low, Address High i Channel.
- Emisja wiadomości do zestawu urządzeń kanałowych Tryb normalny Po prostu wyślij wiadomość.
Krok 3: Tryb urządzenia
Tryb normalnyPo prostu wyślij wiadomość.
Tryb budzenia i tryb oszczędzania energii
Jak można sobie wyobrazić, jeśli urządzenie jest w trybie wybudzania, może „obudzić” jedno lub więcej urządzeń w trybie oszczędzania energii za pomocą komunikacji z preambułą.
Tryb programu/uśpienia
Dzięki tej konfiguracji możesz zmienić konfigurację swojego urządzenia.
Krok 4: Urządzenie okablowania
Tutaj schemat podłączenia urządzenia, jest to w pełni połączone, z zarządzaniem pinami M0 i M1 pozwala na zmianę modalności urządzenia, dzięki czemu można przejść do trybu konfiguracji lub wybudzić za pomocą programu, w tym wszystkim pomoże biblioteka operacja.
Krok 5: Konfiguracja
Istnieje określone polecenie do ustawienia i pobrania konfiguracji
void setup() { Serial.begin(9600); opóźnienie (500); // Uruchom wszystkie piny i UART e32ttl100.begin(); ResponseStructContainer c; c = e32ttl100.getKonfiguracja(); // Ważne jest, aby uzyskać wskaźnik konfiguracji przed wszystkimi innymi operacjami Configuration configuration = *(Configuration*) c.data; Serial.println(c.status.getResponseDescription()); Serial.println(c.status.kod); printParameters(konfiguracja); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation(); // Ważne jest, aby uzyskać wskaźnik informacji przed wszystkimi innymi operacjami ModuleInformation mi = *(ModuleInformation*)cMi.data; Serial.println(cMi.status.getResponseDescription()); Serial.println(cMi.status.code); printModuleInformation(mi); }
Krok 6: Wynik konfiguracji
A wynik stał się
Początek sukcesu 1 ---------------------------------------- ZBIORNIK: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433MHz SpeedParityBit BIN: 0 -> 8N1 (domyślnie) SpeedUARTDataRate BIN: 11 -> 9600bps (domyślnie) SpeedAirDataRate BIN: 10 -> 2.4kbps (domyślnie) OptionTrans BIN: 0 - > Transmisja transparentna (domyślnie) OptionPullup BIN: 1 -> TXD, RXD, AUX to push-pull/pull-ups OptionWakeup BIN: 0 -> 250ms (domyślnie) OptionFEC BIN: 1 -> Włącz Forward Error Correction Switch (domyślnie) OptionPower BIN: 0 -> 20dBm (domyślnie) ---------------------------------------- Sukces 1 ---------------------------------------- KOSZ NA GŁOWICA: 11000011 195 C3 Nr modelu.: 32 Wersja: 44 Cechy: 14 --------------------------------------------
Krok 7: Wyślij wiadomość
Tutaj prosty szkic do wysłania wiadomości do wszystkich urządzeń podłączonych do kanału
void loop() { // Jeśli coś jest dostępne if (e32ttl100.available()>1) { // odczytaj wiadomość String ResponseContainer rc = e32ttl100.receiveMessage(); // Czy coś pójdzie nie tak? błąd drukowania if (rc.status.code!=1){ rc.status.getResponseDescription(); }else{ // Wydrukuj otrzymane dane Serial.println(rc.data); } } if (Serial.available()) { String input = Serial.readString(); e32ttl100.sendMessage(wejście); } }
Krok 8: Tarcza dla Arduino
Tworzę również nakładkę dla Arduino, która bardzo przydaje się do prototypowania.
I udostępniam go jako projekt open source tutaj
www.pcbway.com/project/shareproject/LoRa_E32_Series_device_Arduino_shield.html
Krok 9: Biblioteka
Repozytorium GitHub
Forum wsparcia
Dodatkowa dokumentacja
Zalecana:
FeatherQuill - ponad 34 godziny pisania bez rozpraszania uwagi: 8 kroków (ze zdjęciami)
FeatherQuill - ponad 34 godziny pisania bez rozpraszania uwagi: zarabiam na życie pisząc i spędzam większość dnia pracy siedząc przed komputerem stacjonarnym, jednocześnie pisząc artykuły. Zbudowałem FeatherQuill, ponieważ chciałem satysfakcjonującego pisania na klawiaturze, nawet gdy jestem poza domem. Jest to dedykowana, rozpraszająca
Komunikacja bezprzewodowa LoRa 3Km do 8Km z tanim urządzeniem E32 (sx1278/sx1276) dla Arduino, Esp8266 lub Esp32: 15 kroków
LoRa 3Km do 8Km Bezprzewodowa komunikacja z niskokosztowym urządzeniem E32 (sx1278/sx1276) dla Arduino, Esp8266 lub Esp32: Tworzę bibliotekę do zarządzania EBYTE E32 opartą na urządzeniu LoRa serii Semtech, bardzo wydajne, proste i tanie urządzenie. Wersja 3Km tutaj, wersja 8Km tutaj Mogą pracować na dystansie od 3000m do 8000m i mają wiele funkcji i
Jak naprawić mój martwy laptop od ponad dwóch lat: 8 kroków
Jak naprawiam mój martwy laptop z ponad dwóch lat: Uwaga ** proszę głosować, jeśli doceniasz ten projekt, dziękuję Masz głupiego laptopa NE522 w mojej szufladzie przez około dwa lata, prawdopodobnie dlatego, że mam inny do użycia, więc kiedy zobaczyłem ten konkurs Wiem, że warto to naprawić i dzielić się całą naprawą
Komunikacja peer to peer LORA z Arduino: 9 kroków
LORA Peer to Peer Komunikacja z Arduino: Jestem początkującym entuzjastą elektroniki i jest to moja pierwsza instrukcja, więc proszę nie bądź zbyt ostry w swoich komentarzach. W tej instrukcji wyjaśnię, jak sprawić, by dwa węzły LORA komunikowały się bezpośrednio bez TTN (sieć rzeczy). Co to jest
Ponad 100 przełączników w jednym pinie Arduino: 6 kroków (ze zdjęciami)
Ponad 100 przełączników w jednym pinie Arduino: Wprowadzenie Czy zabrakło pinów wejściowych? Nie martw się, oto rozwiązanie bez rejestrów przesuwnych. W tym filmie dowiemy się, jak podłączyć ponad 100 przełączników do jednego pinu Arduino