Az Ön adatainak védelme fontos számunkra! Az ANXQ Vision Technology Kft. sütiket használ a weboldal működőképességének biztosításához és a beleegyezésével weboldalunk tartalmának személyre szabásához is. Az "Elfogadom" gombra kattintva elfogadja a sütik használatát és a weboldal viselkedésével kapcsolatos adatok átadását és a célzott hirdetések megjelenítését.

A sütik feldolgozásával kapcsolatban még több információt talál az Adatkezelési tájékoztatónkban.

ESP32 PLC csatlakoztatása LoRaWAN hálózathoz

ESP32 PLC csatlakoztatása LoRaWAN hálózathoz

A LoRaWAN egy hatékony technológia az alacsony fogyasztású, nagy kiterjedésű hálózatokhoz, így ideális ipari alkalmazásokhoz. Ebben az útmutatóban bemutatjuk, hogyan integrálható a LoRaWAN egy ESP32 PLC-vel, egy RN2483 LoRa click modul és a The Things Network (TTN) segítségével. Az oktatóanyag végére az ESP32 PLC adatokat fog küldeni a TTN-hez.

ESP32 PLCHardverszükséglet

A kezdéshez győződjön meg arról, hogy rendelkezik a következőkkel:

  • ESP32 PLC: Industrial Shields ESP32-alapú programozható logikai vezérlő.

  • RN2483 Click modul: Egy LoRaWAN modul, amely csatlakozik az ESP32 PLC-hez.

  • Csatlakozások: vagy 2. foglalat az ESP32 PLC-n (a 2. foglalat az Ethernet csatlakozó mellett található, és további kapcsolókonfigurációt igényel).

  • Micro USB kábel: Az ESP32 PLC programozásához.

Szoftver beállítása

Mielőtt belevágnánk a kódba, győződjön meg arról, hogy rendelkezik a következőkkel:

  • Arduino IDE: Telepítve és konfigurálva ESP32 eszközök programozásához.

  • RN2483 Arduino Library

Eszköz regisztrálása a TTN-en

  • Lépjen a The Things Stack oldalára és jelentkezzen be.

  • Hozzon létre egy új eszközt és jegyezze fel a következő kulcsokat:

    • Eszköz EUI

    • Alkalmazás EUI

    • Alkalmazáskulcs

Ezeket a kulcsokat fogjuk használni az Arduino vázlatban.

Arduino kód

Az alábbi Arduino kód beállítja a LoRaWAN-t az ESP32 PLC-n és adatokat küld a TTN-hez. Cserélje ki a devEui, appEui és appKey helyőrzőket az eszközspecifikus adatokkal a TTN-ből.

#include 

// Constants for OTAA keys
const char* devEui = "0011223344556677";  // Replace with your Device EUI
const char* appEui = "0000000000000000"; // Replace with your Application EUI
const char* appKey = "00112233445566778899AABBCCDDEEFF"; // Replace with your App Key

// Create an instance of the rn2xx3 library
rn2xx3 myLora(SerialExp2);

// The setup routine runs once when you press reset:
void setup() {
  Serial.begin(115200); // Serial port to computer
  SerialExp2.begin(57600); // Serial port to radio
  Serial.println("Startup");

  initialize_radio();

  // Transmit a startup message
  myLora.tx("TTN Mapper on TTN ESP32 node");

  delay(2000);
}

void initialize_radio() {
  // Reset rn2483
  pinMode(EXP2_RST, OUTPUT);
  digitalWrite(EXP2_RST, LOW);
  delay(1000);
  digitalWrite(EXP2_RST, HIGH);
  delay(1000); // Wait for the RN2xx3's startup message

  SerialExp2.flush();

  Serial.println("RN2xx3 firmware version:");
  Serial.println(myLora.sysver());

  // Configure your keys and join the network
  Serial.println("Trying to join TTN");
  bool join_result = false;

  join_result = myLora.initOTAA(appEui, appKey, devEui);

  while (!join_result) {
    Serial.println("Unable to join. Are your keys correct, and do you have TTN coverage?");
    delay(60000); // Delay a minute before retry
    join_result = myLora.init();
  }
  Serial.println("Successfully joined TTN");
}

// The loop routine runs over and over again forever:
void loop() {
  Serial.println("TXing");
  myLora.tx("!"); // One byte, blocking function

  delay(200);
}    

TTN dekóder 

Az adatok vizualizálásához adja hozzá a következő dekódert a TTN konzolon az uplink üzenetek Payload Formatters részében:

function decodeUplink(input) {
  return {
    data: {
      bytes: input.bytes
    },
    warnings: [],
    errors: []
  };
}    


Ez megjeleníti az ESP32 PLC által küldött nyers bájtokat a TTN konzolon.

Fő lépések összefoglalása ESP32 PLC és LoRaWAN

  • Csatlakoztassa az RN2483 click modult az ESP32 PLC-hez (a 2. foglalat ajánlott a rugalmasság érdekében).

  • Állítsa be az Arduino IDE-t az RN2483 Arduino könyvtárral.

  • Regisztrálja eszközét a TTN-en, és másolja be a kulcsokat az Arduino vázlatba.

  • Töltse fel a kódot az ESP32 PLC-re.

  • Figyelje a TTN konzolt a bejövő adatokért.

Hibaelhárítási tippek

  • Nincs csatlakozási válasz: Győződjön meg arról, hogy van LoRaWAN lefedettség, és hogy a kulcsok helyesen vannak konfigurálva a TTN-en.

  • Az adatok nem láthatók a TTN konzolon: Ellenőrizze a dekóder funkciót és a kód hasznosadat-formátumát.

Összefoglaló

Ezzel a beállítással az ESP32 PLC mostantól csatlakozik egy LoRaWAN hálózathoz, és adatokat továbbít a TTN-hez. Ez egy robusztus alapot jelent az ipari IoT alkalmazásokhoz, mint például az érzékelők monitorozása, az eszközök nyomon követése vagy akár az intelligens városmegoldások. Jó kódolást! 

Tartalomhoz tartozó címkék: Industrial Shields LoRaWAN® PLC

Kapcsolódó tartalmak