Obsah:

Jednoduché spojenie Arduino LoRa (viac ako 5 km): 9 krokov
Jednoduché spojenie Arduino LoRa (viac ako 5 km): 9 krokov

Video: Jednoduché spojenie Arduino LoRa (viac ako 5 km): 9 krokov

Video: Jednoduché spojenie Arduino LoRa (viac ako 5 km): 9 krokov
Video: ELF/EMBARC Bronchiectasis conference 2023 with subtitles 2024, Júl
Anonim
Jednoduchá komunikácia Arduino LoRa (viac ako 5 km)
Jednoduchá komunikácia Arduino LoRa (viac ako 5 km)

Ideme testovať E32-TTL-100 s mojou knižnicou. Jedná sa o bezdrôtový transceiverový modul, ktorý pracuje na frekvencii 410 441 MHz (alebo 868 MHz alebo 915 MHz) na základe originálu RFIC SX1278 od spoločnosti SEMTECH, je k dispozícii transparentný prenos, úroveň TTL. Modul využíva technológiu rozšíreného spektra LORA.

Zásoby

  • Arduino UNO
  • Zariadenia LoRa e32

Voliteľné

  • Mischianti Arduino LoRa štít (otvorený zdroj)
  • Mischianti WeMos LoRa štít (otvorený zdroj)

Krok 1: Špecifikácia zariadenia

Modul obsahuje algoritmus FEC Forward Error Correction, ktorý zaisťuje vysokú účinnosť kódovania a dobrý výkon korekcie. V prípade náhleho rušenia môže rušené dátové pakety automaticky opraviť, aby sa zodpovedajúcim spôsobom zlepšila spoľahlivosť a rozsah prenosu. Ale bez FEC môžu byť tieto pakety da te iba zahodené. A s dôsledným šifrovaním a dešifrovaním je zachytávanie údajov zbytočné. Funkcia kompresie údajov môže skrátiť čas prenosu a pravdepodobnosť rušenia a zároveň zvýšiť spoľahlivosť a účinnosť prenosu.

  • Veľkosť modulu: 21*36 mm
  • Typ antény: SMA-K (impedancia 50Ω)
  • Prenosová vzdialenosť: 3000 m (max.)
  • Maximálny výkon: 2 dB (100 mW)
  • Prenosové rýchlosti: 2,4 Kbps (6 voliteľných úrovní (0,3, 1,2, 2,4, 4,8, 9,6, 19,2 kbps)
  • Dĺžka emisie: 512ByteReceive
  • dĺžka: 512 Bajtov
  • Komunikačné rozhranie: UART - 8N1, 8E1, 8O1,
  • Osem druhov prenosovej rýchlosti UART od 1200 do 115200bps (predvolené: 9600)
  • Podpora RSSI: Nie (vstavané inteligentné spracovanie)

Krok 2: Typ prevodovky

Typ prevodovky
Typ prevodovky

Transparentný prenos Toto možno považovať za „demo režim“, v predvolenom nastavení môžete odosielať správy na všetky zariadenia s rovnakou nakonfigurovanou adresou a kanálom.

Opravený prenos

Tento typ prenosu môžete zadať adresu a kanál, kam chcete odoslať správu. Správu môžete poslať na:

  • Určené zariadenie s vopred určenou nízkou adresou, vysokou adresou a kanálom.
  • Rozoslať správu na skupinu kanálových zariadení Normálny režim Jednoducho pošlite správu.

Krok 3: Režim zariadenia

Normálny režim Jednoducho odošlite správu.

Režim prebudenia a úsporný režim

Ako môžete zamýšľať, ak je zariadenie v režime prebudenia, môže pomocou preambulovej komunikácie „prebudiť“jedno alebo viac zariadení, ktoré sú v úspornom režime.

Program/režim spánku

Pomocou tejto konfigurácie môžete zmeniť konfiguráciu svojho zariadenia.

Krok 4: Zapojenie zariadenia

Zariadenie na zapojenie
Zariadenie na zapojenie
Zariadenie na zapojenie
Zariadenie na zapojenie

Tu je schéma pripojenia zariadenia, toto je plne prepojené, so správou pinov M0 a M1 umožňuje zmeniť modalitu zariadenia, takže sa môžete pomocou programu prepnúť do režimu konfigurácie alebo prebudenia, v tomto všetkom vám pomôže knižnica operáciu.

Krok 5: Konfigurácia

Konfigurácia
Konfigurácia

Existujúci zadaný príkaz na nastavenie a získanie konfigurácie

void setup () {Serial.begin (9600); oneskorenie (500); // Spustenie všetkých pinov a UART e32ttl100.begin (); ResponseStructContainer c; c = e32ttl100.getConfiguration (); // Je dôležité získať konfiguračný ukazovateľ pred všetkými ostatnými operáciami Konfigurácia konfigurácie = *(Konfigurácia *) c.data; Serial.println (c.status.getResponseDescription ()); Serial.println (c.status.code); printParameters (konfigurácia); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation (); // Je dôležité získať ukazovateľ informácií pred všetkými ostatnými operáciami ModuleInformation mi = *(ModuleInformation *) cMi.data; Serial.println (cMi.status.getResponseDescription ()); Serial.println (cMi.status.code); printModuleInformation (mi); }

Krok 6: Výsledok konfigurácie

A výsledkom sa stáva

Začnite úspech 1 ---------------------------------------- KOŠÍK HLAVY: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433 MHz SpeedParityBit BIN: 0 -> 8N1 (predvolené) SpeedUARTDataRate BIN: 11 -> 9600bps (predvolené) SpeedAirDataRate BIN: 10 -> 2,4 kbps (predvolené) OptionTrans BIN: 0 - > Priehľadný prenos (predvolené) Voliteľné Pullup BIN: 1 -> TXD, RXD, AUX sú push -pull/pull -upy OptionWakeup BIN: 0 -> 250ms (predvolené) OptionFEC BIN: 1 -> Zapnite prepínač korekcie chýb vpred (predvolené) Voliteľný BIN: 0-> 20 dBm (predvolené) ---------------------------------------- Úspech 1 ---------------------------------------- HLAVNÝ KOŠ: 11000011 195 C3 Model č.: 32 Verzia: 44 Vlastnosti: 14 ----------------------------------------

Krok 7: Odoslanie správy

Poslať správu
Poslať správu

Tu je jednoduchý náčrt na odoslanie správy všetkým zariadeniam pripojeným k kanálu

void loop () {// Ak je niečo k dispozícii, ak (e32ttl100.available ()> 1) {// prečítajte si reťazcovú správu ResponseContainer rc = e32ttl100.receiveMessage (); // Niečo sa pokazí chyba tlače if (rc.status.code! = 1) {rc.status.getResponseDescription (); } else {// Vytlačí prijaté údaje Serial.println (rc.data); }} if (Serial.available ()) {String input = Serial.readString (); e32ttl100.sendMessage (vstup); }}

Krok 8: Štít pre Arduino

Štít pre Arduino
Štít pre Arduino

Vytváram tiež štít pre Arduino, ktorý sa stal veľmi užitočným pre prototypovanie.

A tu ho vydávam ako open source projekt

www.pcbway.com/project/shareproject/LoRa_E32_Series_device_Arduino_shield.html

Krok 9: Knižnica

Knižnica
Knižnica

Úložisko GitHub

Fórum podpory

Dodatočná dokumentácia

Odporúča: