Sadržaj:

Jednostavna Arduino LoRa komunikacija (više od 5 km): 9 koraka
Jednostavna Arduino LoRa komunikacija (više od 5 km): 9 koraka

Video: Jednostavna Arduino LoRa komunikacija (više od 5 km): 9 koraka

Video: Jednostavna Arduino LoRa komunikacija (više od 5 km): 9 koraka
Video: Leslie Kean on David Grusch (UFO Whistleblower): Non-Human Intelligence, Recovered UFOs, UAP, & more 2024, Srpanj
Anonim
Jednostavna Arduino LoRa komunikacija (više od 5 km)
Jednostavna Arduino LoRa komunikacija (više od 5 km)

Testirat ćemo E32-TTL-100 s mojom knjižnicom. To je bežični primopredajnik, radi na 410 441 MHz (ili 868MHz ili 915MHz) na temelju izvornog RFIC SX1278 iz tvrtke SEMTECH, dostupan je transparentan prijenos, TTL razina. Modul prihvaća LORA tehnologiju širenja spektra.

Pribor

  • Arduino UNO
  • LoRa e32 uređaji

Izborno

  • Mischianti Arduino LoRa štit (otvoreni izvor)
  • Mischianti WeMos LoRa štit (otvoreni izvor)

Korak 1: Specifikacije uređaja

Modul sadrži FEC algoritam za ispravljanje grešaka prema naprijed, koji osigurava visoku učinkovitost kodiranja i dobre performanse ispravljanja. U slučaju iznenadnih smetnji, može automatski ispraviti ometane pakete podataka, tako da se pouzdanost i raspon prijenosa odgovarajuće poboljšavaju. No bez FEC -a ti se da te paketi mogu samo ispustiti. Uz strogo šifriranje i dešifriranje, presretanje podataka postaje besmisleno. Funkcija kompresije podataka može smanjiti vrijeme prijenosa i vjerojatnost smetnji, poboljšavajući pritom pouzdanost i učinkovitost prijenosa.

  • Veličina modula: 21*36 mm
  • Vrsta antene: SMA-K (impedancija 50Ω)
  • Udaljenost prijenosa: 3000m (max)
  • Maksimalna snaga: 2dB (100mW)
  • Brzine zraka: 2,4Kbps (6 izbornih razina (0,3, 1,2, 2,4, 4,8, 9,6, 19,2kbps)
  • Duljina emisije: 512ByteReceive
  • duljina: 512Byte
  • Komunikacijsko sučelje: UART - 8N1, 8E1, 8O1,
  • Osam vrsta UART brzine prijenosa, od 1200 do 115200bps (zadano: 9600)
  • RSSI podrška: Ne (ugrađena inteligentna obrada)

Korak 2: Vrsta prijenosa

Vrsta prijenosa
Vrsta prijenosa

Transparentni prijenosTo se može smatrati "Demo načinom", prema zadanim postavkama možete poslati poruku na sve uređaje iste konfigurirane adrese i kanala.

Fiksni prijenos

Ovom vrstom prijenosa možete odrediti adresu i kanal na koji želite poslati poruku. Poruku možete poslati na:

  • Navedeni uređaj s unaprijed određenom adresom nisko, visokom adresom i kanalom.
  • Emitiranje poruke na skup kanala uređaja Normalni način rada Jednostavno pošaljite poruku.

Korak 3: Način uređaja

Normalni način Jednostavno pošaljite poruku.

Način buđenja i način uštede energije

Kao što možete zamisliti ako je uređaj u načinu buđenja može "probuditi" jedan ili više uređaja koji su u načinu rada za uštedu energije s komunikacijom u preambuli.

Program/način mirovanja

Pomoću ove konfiguracije možete promijeniti konfiguraciju svog uređaja.

Korak 4: Ožičenje uređaja

Uređaj za ožičenje
Uređaj za ožičenje
Uređaj za ožičenje
Uređaj za ožičenje

Ovdje je shema povezivanja uređaja, ovo je potpuno povezano, s upravljanjem pinova M0 i M1 dopušta promjenu modaliteta uređaja, tako da se možete prebaciti na konfiguraciju ili način buđenja s programom, biblioteka će vam u tome pomoći operacija.

Korak 5: Konfiguracija

Konfiguracija
Konfiguracija

Postoji određena naredba za postavljanje i dobivanje konfiguracije

void setup () {Serial.begin (9600); kašnjenje (500); // Pokretanje svih pinova i UART e32ttl100.begin (); ResponseStructContainer c; c = e32ttl100.getConfiguration (); // Važno je dobiti pokazivač konfiguracije prije svih ostalih operacija Configuration configuration = *(Configuration *) c.data; Serial.println (c.status.getResponseDescription ()); Serial.println (c.status.code); printParameters (konfiguracija); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation (); // Važno je dobiti informacijski pokazivač prije svih ostalih operacija ModuleInformation mi = *(ModuleInformation *) cMi.data; Serial.println (cMi.status.getResponseDescription ()); Serial.println (cMi.status.code); printModuleInformation (mi); }

Korak 6: Konfiguracijski rezultat

I rezultat postaje

Započni uspjeh 1 ---------------------------------------- KORA ZA GLAVU: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433MHz SpeedParityBit BIN: 0 -> 8N1 (zadano) SpeedUARTDAtaRate BIN: 11 -> 9600bps (zadano) SpeedAirDataRate BIN: 10 -> 2,4kbps (zadano) OptionTrans BIN: 0 - > Transparentni prijenos (zadano) OptionPullup BIN: 1 -> TXD, RXD, AUX su push -pull/pull -ups OptionWakeup BIN: 0 -> 250ms (zadano) OptionFEC BIN: 1 -> Uključite prekidač za ispravljanje grešaka prema naprijed (zadano) OptionPower BIN: 0-> 20dBm (zadano) ---------------------------------------- Uspjeh 1 ---------------------------------------- KORA ZA GLAVU: 11000011 195 C3 Model br.: 32 Verzija: 44 Značajke: 14 ----------------------------------------

Korak 7: Pošaljite poruku

Pošalji poruku
Pošalji poruku

Evo jednostavne skice za slanje poruke na sve uređaje povezane s kanalom

void loop () {// Ako je nešto dostupno if (e32ttl100.available ()> 1) {// pročitajte String poruku ResponseContainer rc = e32ttl100.receiveMessage (); // Nešto nije u redu pogreška ispisa if (rc.status.code! = 1) {rc.status.getResponseDescription (); } else {// Ispis primljenih podataka Serial.println (rc.data); }} if (Serial.available ()) {String input = Serial.readString (); e32ttl100.sendMessage (ulaz); }}

Korak 8: Štit za Arduino

Štit za Arduino
Štit za Arduino

Također stvaram štit za Arduino koji postaje vrlo koristan za izradu prototipova.

Ovdje ga objavljujem kao otvoreni projekt

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

Korak 9: Knjižnica

Knjižnica
Knjižnica

Spremište GitHub

Forum za podršku

Dodatna dokumentacija

Preporučeni: