Innehållsförteckning:

Enkel Arduino LoRa -uttalande (mer än 5 km): 9 steg
Enkel Arduino LoRa -uttalande (mer än 5 km): 9 steg

Video: Enkel Arduino LoRa -uttalande (mer än 5 km): 9 steg

Video: Enkel Arduino LoRa -uttalande (mer än 5 km): 9 steg
Video: Мужская Стрижка Площадка Пошагово дома | Уроки мужских стрижек | Мужская стрижка на жесткие волосы 2024, November
Anonim
Enkel Arduino LoRa -uttalande (mer än 5 km)
Enkel Arduino LoRa -uttalande (mer än 5 km)

Vi ska testa E32-TTL-100 med mitt bibliotek. Det är en trådlös sändtagarmodul, fungerar vid 410 441 MHz (eller 868 MHz eller 915 MHz) baserat på original RFIC SX1278 från SEMTECH, transparent överföring är tillgänglig, TTL -nivå. Modulen använder LORA -teknik för spridningsspektrum.

Tillbehör

  • Arduino UNO
  • LoRa e32 -enheter

Frivillig

  • Mischianti Arduino LoRa -sköld (öppen källkod)
  • Mischianti WeMos LoRa -sköld (öppen källkod)

Steg 1: Enhetsspecifikationer

Modulen har FEC Forward Error Correction -algoritm, som säkerställer dess höga kodningseffektivitet och goda korrigeringsprestanda. Vid plötslig störning kan den korrigera de interfererade datapaketen automatiskt, så att tillförlitligheten och överföringsområdet förbättras på motsvarande sätt. Men utan FEC kan dessa paket bara släppas. Och med den rigorösa krypteringen och dekrypteringen blir avlyssning av data meningslös. Datakomprimeringens funktion kan minska överföringstiden och sannolikheten för störningar, samtidigt som tillförlitligheten och överföringseffektiviteten förbättras.

  • Modulstorlek: 21*36 mm
  • Antenn typ: SMA-K (50Ω impedans)
  • Överföringsavstånd: 3000m (max)
  • Maximal effekt: 2dB (100mW)
  • Lufthastigheter: 2,4 Kbps (6 valfri nivå (0,3, 1,2, 2,4, 4,8, 9,6, 19,2 kbps)
  • Utsläppslängd: 512ByteReceive
  • längd: 512Byte
  • Kommunikationsgränssnitt: UART - 8N1, 8E1, 8O1,
  • Åtta typer av UART -överföringshastighet, från 1200 till 115200bps (standard: 9600)
  • RSSI-stöd: Nej (Inbyggd intelligent bearbetning)

Steg 2: Överföringstyp

Växellåda
Växellåda

Transparent överföring Detta kan betraktas som ett”demoläge”, som standard kan du skicka meddelanden till alla enheter med samma konfigurerade adress och kanal.

Fast växellåda

Denna typ av överföring kan du ange en adress och en kanal dit du vill skicka meddelandet. Du kan skicka meddelande till:

  • Specificerad enhet med en förutbestämd adress låg, adress hög och kanal.
  • Sänd meddelande till en uppsättning kanalenheter Normalt läge Skicka bara meddelande.

Steg 3: Enhetsläge

Normalt läge Skicka bara meddelande.

Väckningsläge och energisparläge

Som du kan tänka dig om en enhet är i väckningsläge kan du "väcka" en eller flera enheter som är i energisparläge med en inledande kommunikation.

Program/viloläge

Med den här konfigurationen kan du ändra konfigurationen för din enhet.

Steg 4: Anslutningsenhet

Kabeldragningsenhet
Kabeldragningsenhet
Kabeldragningsenhet
Kabeldragningsenhet

Här är schemat för anslutning av enheten, detta är ett fullt anslutet, med hantering av M0 och M1 -stift tillåter att ändra enhetens modalitet, så att du kan växla till konfiguration eller väckningsläge med program, biblioteket hjälper dig i allt detta drift.

Steg 5: Konfiguration

Konfiguration
Konfiguration

Existera ett specifikt kommando för att ställa in och hämta konfiguration

void setup () {Serial.begin (9600); fördröjning (500); // Starta alla pins och UART e32ttl100.begin (); ResponseStructContainer c; c = e32ttl100.getConfiguration (); // Det är viktigt att få konfigurationspekaren före all annan operation Konfigurationskonfiguration = *(Konfiguration *) c.data; Serial.println (c.status.getResponseDescription ()); Serial.println (c.status.code); printParameters (konfiguration); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation (); // Det är viktigt att få informationspekaren före all annan operation ModuleInformation mi = *(ModuleInformation *) cMi.data; Serial.println (cMi.status.getResponseDescription ()); Serial.println (cMi.status.code); printModuleInformation (mi); }

Steg 6: Konfigurationsresultat

Och resultatet blir

Börja framgång 1 ---------------------------------------- HEAD BIN: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433MHz SpeedParityBit BIN: 0 -> 8N1 (Standard) SpeedUARTDataRate BIN: 11 -> 9600bps (default) SpeedAirDataRate BIN: 10 -> 2.4kbps (default) OptionTrans BIN: 0 - > Transparent överföring (standard) OptionPullup BIN: 1 -> TXD, RXD, AUX är push -pull/pull -ups OptionWakeup BIN: 0 -> 250ms (standard) OptionFEC BIN: 1 -> Slå på omkopplare för felkorrigering framåt (standard) OptionPower BIN: 0-> 20dBm (standard) ----------------------------------------- Framgång 1 ---------------------------------------- HEAD BIN: 11000011 195 C3 Modellnr.: 32 Version: 44 Funktioner: 14 -----------------------------------------

Steg 7: Skicka meddelande

Skicka meddelande
Skicka meddelande

Här en enkel skiss för att skicka ett meddelande till alla enheter som är anslutna till kanalen

void loop () {// Om något är tillgängligt om (e32ttl100.available ()> 1) {// läs strängmeddelandet ResponseContainer rc = e32ttl100.receiveMessage (); // Är något fel på utskriftsfelet om (rc.status.code! = 1) {rc.status.getResponseDescription (); } annat {// Skriv ut mottagna data Serial.println (rc.data); }} if (Serial.available ()) {String input = Serial.readString (); e32ttl100.sendMessage (input); }}

Steg 8: Sköld för Arduino

Sköld för Arduino
Sköld för Arduino

Jag skapar också en sköld för Arduino som blir mycket användbar för prototyper.

Och jag släpper det som ett open source -projekt här

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

Steg 9: Bibliotek

Bibliotek
Bibliotek

GitHub -förvar

Supportforum

Ytterligare dokumentation

Rekommenderad: