Cuprins:

Sistem De Cartografiere a Retelelor LoRaWAN: 4 Steps
Sistem De Cartografiere a Retelelor LoRaWAN: 4 Steps

Video: Sistem De Cartografiere a Retelelor LoRaWAN: 4 Steps

Video: Sistem De Cartografiere a Retelelor LoRaWAN: 4 Steps
Video: Cartografierea rețelelor de distribuție, pentru alimentarea mai sigură cu energie electrică 2024, Noiembrie
Anonim
Sistem De Cartografiere a Retelelor LoRaWAN
Sistem De Cartografiere a Retelelor LoRaWAN

In cadrul acestui program s-a dorit realizarea unui sistem de cartografiere a retelelor LoRaWAN.

Ce este LoRa?

LoRa este o tehnologie care pune la dipozitia dezvoltatorilor de solutii inteligente o transmisie de raza lunga si securizata a datelor, cu un consum redus de energie. Retelele publice si private care utilizeaza aceasta tehnologie pot oferi o acoperire care este mai mare decat cea a retelelor celulare. existent. Este o tehnologie utilizatoare de conectat la orice infrastructură existentă. LoRa utilizează benzi de frecventa radio sub-gigahertz fara licenta, cum ar fi: 169 MHz, 433 MHz, 868 MHz (Europa) si 915 MHz (America de Nord).

Ce este LoRaWAN?

LoRaWAN este reteaua pe care LoRa operează. LoRaWAN este un protocol de transmisii radio prin care se formează retele de obiecte inteligente, cu nivel Media Access Control (Mac) și definește protocolul de comunicare și arhitectura sistemului pentru o retea de Internet of Things, în timp ce componentele fizice LoRa permit conexiunea de comunicare pe distanțe lungi.

Cum am ales realizarea acestui proiect?

Prin utilizarea unei placute Seeeduino Stalker voi lega un modul radio LoRaWAN ce va fi folosit pe post de

receptor. (va asculta dupa semnalele ce provin de la gateway urile de LoRaWAN)

Datele relevante: coordonate geografice, RSSI, timestamp vor fi salvate in format kml pentru a fi folosit la

mappare în Google Earth.

Pasul 1: Utilizați componentele

Componente Utilizate
Componente Utilizate
Componente Utilizate
Componente Utilizate
Componente Utilizate
Componente Utilizate

Pentru realizarea acestui proiect am folosit urmatoarele componente:

1. Seeeduino Stalker v2.3

2. Modul Convertor USB Serial FT232RL cu Mufa USB Mini

3. Modul GPS MTK-3329

4. Cablu Mini USB

5. Foc mama-tata

6. LCD RC2004A-BIW-ESX + MCP23008

7. card microSD 2Gb

8. Baterie CR2032

9. LoRa ACW-XB v1.1 ATIM

10. Antena wifi

Speficatii relevante Seeeduino Stalker v2.3

Microcontroler: ATmega328P

Pini I / O: 20

Conectivitate: I2C, UART, SPI

Rată de transmisie UART: 115200 bps

Conectivitatea dintre acestea s-a realizat în următorul mod:

Pentru a face conexiunea intre placuta si calculator se conecteaza placuta la modulul FT232RL, iar apoi cablu USB mini intre cele 2 din urma. (Modulul FT232RL va comunica prin intermediul UART-ului cu Seeeduino).

Seeeduino Stalke - FT232RL

USB5V ↔ VCCRX

TXD ↔ TXD

RXD ↔ RXD

GND ↔ GND

DTR ↔ DTR

Bateria impreuna cu microSD cardul si modulul LoRa au fost atasate in locurile special create de pe placa

Conectivitate GPS

Seeeduino Stalker - GPS

GND ↔ GND

Pinul 7 ↔ RXA

Pinul 8 ↔ TXA

3,3V ↔ VDD

In citirea coordonatele GPS am intampinat probleme referitoare la baud rate. Din cauza faptului ca interfata seriala a placutei Seeeduino este impartita cu modulul FT232RL a fost necesara setarea permanenta a baud rate-ului GPS-ului la valorea de 38400.

Conectivitate LCD

Datorita Port Expander-ului cu interfata I2C ce a fost lipit de LCD, conexiunea s-a realizat usor.

Seeeduino Stalker - MCP23008

USB5V ↔ 5V

GND ↔ GND

SDA ↔ SDA

SCL ↔ SCL

Pasul 2: Mediu De Dezvoltare

Programul a fost realizat în programul Arduino IDE cu urmatoarele specificatii:

Placă: Arduino Pro sau Pro Mini

Procesor: ATmega328P (3,3 V, 8 MHz)

Pasul 3: Afisare Coordonate + Timestamp Pe LCD

Afisare Coordonate + Timestamp Pe LCD
Afisare Coordonate + Timestamp Pe LCD

Primul pas a fost afisat coordonator GPS impreuna cu Data si Timpul pe LCD pentru a fi folosit la mapparea in Google Earth.

Am folosit urmatorul cod: (Mentionez ca este nevoie de importarea unor librarii si anume TinyGPS ++.h, RTClib.h si LiquidCrystal.h)

Cod:

#include #include

#include

#include

#include

static const int RXPin = 8, TXPin = 7; static const uint32_t GPSBaud = 38400;

RTC_DS3231 rtc;

char t [32];

GPS TinyGPSPlus;

SoftwareSerial ss (RXPin, TXPin);

LiquidCrystal lcd (0);

configurare nulă ()

{lcd.begin (20, 4);

Serial.begin (9600);

Wire.begin ();

rtc.begin ();

ss.begin (GPSBaud);

întârziere (1000);

lcd.clear ();

}

bucla nulă ()

{

DateTime acum = rtc.now ();

sprintf (t, "% 02d:% 02d:% 02d% 02d /% 02d /% 02d", now.hour (), now.minute (), now.second (), now.day (), now.month (), now.year ());

întârziere (1000);

while (ss.available ()> 0)

if (gps.encode (ss.read ()))

displayInfo ();

if (millis ()> 5000 && gps.charsProcessed () <10) {

lcd.print (F („Fără GPS detectat”));

while (adevărat);

}

}

void displayInfo () {if (gps.location.isValid ())

{

Serial.println (gps.location.lat (), 6);

Serial.println (gps.location.lng (), 6);

Serial.println (t);

lcd.setCursor (0, 0);

lcd.print ("Lat =");

lcd.print (gps.location.lat (), 6);

lcd.setCursor (0, 1);

lcd.print ("Lng =");

lcd.print (gps.location.lng (), 6);

lcd.setCursor (0, 2);

lcd.print (t);

}

altceva {

lcd.print ("INVALID");

lcd.clear ();

}

if (millis ()> 5000 && gps.chars Processed () <10)

{

Serial.println (F ("Fără GPS detectat: verificați cablarea."));

while (adevărat);

}

}

Pasul 4: Salvare Date Pe card MicroSD

Librarie utilizată: SD.h

Pentru salvarea datelor pe microSD card am adăugat urmatoarele linii:

Înregistrează fișierul meu;

configurare nulă ()

{

…..

Serial.print („Inițializarea cardului SD…”); pinMode (10, OUTPUT);

if (! SD.begin (4))

{Serial.println ("inițializarea a eșuat!");

întoarcere;

}

Serial.println ("inițializarea făcută.");

}

bucla nulă ()

{

….

while (ss.available ()> 0) if (gps.encode (ss.read ()))

{displayInfo ();

writeInfo ();

}

}

void writeInfo () {if (gps.location.isValid ())

{MyFile = SD.open ("testf.txt", FILE_WRITE);

dacă (fișierul meu) {

Serial.print („Scrierea în testf.txt …”);

myFile.println (gps.location.lat (), 6);

myFile.println (gps.location.lng (), 6);

MyFile.close (); }

}

altceva {

myFile = SD.open ("testf.txt", FILE_WRITE);

dacă (fișierul meu) {

Serial.print („Invalid”);

MyFile.close (); }

}

}

Pasul urmator presupune transofmarea fisierului.txt in.kml si incarcarea acestuia in Google Earth.

Recomandat: