Indholdsfortegnelse:
- Trin 1: Bygning af basestation
- Trin 2: Den første test
- Trin 3: Opret grænsefladen
- Trin 4: Tilføj måler
- Trin 5: Træk Gauge GPS og tilføj OpenStreetMap
- Trin 6: Træk GPS -måler og tilføj tabellog
- Trin 7: Hent kode
- Trin 8: Arduino IDE
- Trin 9: Kodningsoplysninger
Video: Arduino -projekt: Test Range LoRa -modul RF1276 til GPS -sporingsløsning: 9 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Forbindelse: USB - Seriel
Behov: Chrome Browser
Behov: 1 X Arduino Mega
Behov: 1 x GPS
Behov: 1 X SD -kort
Behov: 2 X LoRa -modem RF1276
Funktion: Arduino Send GPS-værdi til hovedbasen-Hovedbase lagrer data i Dataino Server Lora Modul: Ultra long range RF1276 fra APPCONWIRELESS LoRa er en ny, privat og spredt spektrum moduleringsteknik, der gør det muligt at sende data ved ekstremt lave datahastigheder til ekstremt ekstreme lange afstande. Den lave datahastighed (ned til få bytes pr. Sekund) og LoRa-modulering fører til meget lav modtagerfølsomhed, hvilket betyder, at denne test betyder mere end 10 km.
Trin 1: Bygning af basestation
Computerbredde internetforbindelse og et LoRa -modem tilsluttet USB -port.
Arduino bilsæt ·
Den metriske boks
Anduino Mega tilsluttet seriel 2 til GPS -modtager og Serial 1 til LoRa -modem. Et SD -kort bruges til lagringsdata.
Trin 2: Den første test
· 10,6 km på en sti gennem bycentre, gallerier og langs kysten lavet med sløjfer
Forholdet mellem modtagelse /transmission har været på 321 /500TX punkt
RX -punkt
Trin 3: Opret grænsefladen
1 - Opret et nyt projekt LoRa
Tryk på ikonet for at åbne projektkonfiguration
Trin 4: Tilføj måler
2) Åbn målerens skyder.
· 3) Rul til GPS'en.
· 4) Føj en til skrivebordet.
Trin 5: Træk Gauge GPS og tilføj OpenStreetMap
· 5) Tilføj OpenStreetMap -kort til skrivebordet
Ved at trække komponent -GPS'en på ikonkortet genereres OpenStreet -kort.
Opret grænsefladen
· 6) Skift kortopdatering
Skift kortopdateringstid fra 5000 til 10000
Trin 6: Træk GPS -måler og tilføj tabellog
· 7) Tilføj en tabellog -måler.
Ved at trække måleren over GPS -ikonetabellen oprettes målertabelloggen
· 8) Skift tabellogopdatering. Skift kortopdateringstid fra 5000 til 10000
Juster målernes position
· 9) Trækmålere justerer målernes position ved at trække dem hen over skærmen.
· 10) Gem projekt
Trin 7: Hent kode
10) Aktiver kodebeholder
Knap øverst til højre, vælg alle og kopier basiskoden.
Trin 8: Arduino IDE
· 11) Indsæt kode på Arduino IDE
· 12) Rediger kode Tilføj denne linje i definitionen
Trin 9: Kodningsoplysninger
Tilføj denne linje i definitionen
//*************************************************************************
// ** BIBLIOTEK ** // ***************************************** ********************************
#include // ++ GPS -bibliotek
#include // ++ SPI -bibliotek #include
// ++ SD -bibliotek //
*************************************************************************
// ** SD ** // ***************************************** ********************************
// * SD -kort knyttet til SPI -bus som følger:
// ** UNO: MOSI - pin 11, MISO - pin 12, CLK - pin 13, CS - pin 4
// (CS -pin kan ændres) og pin #10 (SS) skal være en output
// ** Mega: MOSI - pin 51, MISO - pin 50, CLK - pin 52, CS - pin 53
// (CS -pin kan ændres) og pin #52 (SS) skal være en output
// ** Leonardo: Opret forbindelse til hardware SPI via ICSP -overskriften
// Pin 4 bruges her til konsistens med andre Arduino -eksempler const int chipSelect = 53;
// ++ SD pin -vælger
//*************************************************************************
// ** GPS ** // ***************************************** ********************************
TinyGPS gps; // ++ GPS på Serial2
void gpsdump (TinyGPS & gps); // ++
bool newdataGPS = falsk; // ++
Tilføj denne linje i opsætningen ()
//***********************************************************************
// ** Seriel GPS -opsætning ** // *************************************** ********************************
Serial2.begyndt (9600); // ++
forsinkelse (1000); // ++
//***********************************************************************
// ** SD -initialisering ** // **************************************** *******************************
// sørg for, at standardchip -valgnålen er indstillet til // ++
// output, selvom du ikke bruger det: // ++
pinMode (SS, OUTPUT); // ++
Serial.println (F ("Initialiserer SD -kort …")); // ++
// se om kortet er til stede og kan initialiseres: // ++
hvis (! SD.begin (chipSelect)) {// ++
Serial.println (F ("Kort mislykkedes eller findes ikke")); // ++
// ikke gør noget mere: // ++
Vend tilbage; // ++
} andet {// ++
Serial.println (F ("SD -kort OK")); // ++
} // ++
Tilføj disse linjer i loop () void
serialEvent2 (); // ++ opkald GPS seriel begivenhed
Tilføj SeriaEvent2 -kode
//*************************************************************************
// ** GPS serialEvent ** // ***************************************** *********************************
void serialEvent2 () {// ++
mens (Serial2.available ()) {// ++
char c = Serial2.read (); // ++
//Serial.print(c); // ikke kommentere for at se rå GPS -data // ++
hvis (gps.encode (c)) {// ++
newdataGPS = true; // ++
pause; // kommenter ikke om at udskrive nye data med det samme! // ++
} // ++
} // ++
} // ++
Tilføj GPS dump voud
//*************************************************************************
// ** gps dump ** // **************************************** *********************************
// ** Det gyldige breddegrad i grader er -90 og +90. **
// ** Længdegrad er i området -180 og +180 **
// ** angivelse af øst-vest-position **
//** "123456789 1234567890" **
//** "000.00000;0000.00000" ** //*************************************************************************
void gpsdump (TinyGPS & gps) // ++
{ // ++
int år; // ++
byte måned, dag, time, minut, sekund, hundrededele; // ++
usigneret lang alder; // ++
gps.f_get_position (& LATGP00, & LONGP00, & alder); // ++
gps.crack_datetime (& år, & måned, & dag, & time, // ++
& minut, & andet, & hundrededele, & alder); // ++
lang lat, lon; // ++
gps.get_position (& lat, & lon, & age); // ++
// *********************************************************************
// ** lav en streng til samling af data til log: **
// *********************************************************************
String dataString = ""; // ++
dataString += (lat / 100000); // ++
dataString += "."; // ++
dataString += lat - (lat / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += (lon / 100000); // ++
dataString += "."; // ++
dataString += lon - (lon / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += String (static_cast (dag)); // ++
dataString += "/"; // ++
dataString += String (static_cast (måned)); // ++
dataString += "/"; // ++
dataString += String (år); // ++
dataString += ";"; // ++
dataString += String (static_cast (time)); // ++
dataString += ":"; // ++
dataString += String (static_cast (minut)); // ++
dataString += ":"; // ++
dataString += String (static_cast (sekund)); // ++ // ******************************************** ******************************
// ** GEM TIL SD ** // *************************************** **********************************
// Åbn filen. Bemærk, at kun en fil kan være åben ad gangen, **
// så du skal lukke denne, før du åbner en anden. ** // ********************************************** ****************************
Fil dataFile = SD.open ("gps00.txt", FILE_WRITE); // ++
// ***********************************************************************
// ** hvis filen er tilgængelig, skal du skrive til den: **
// ***********************************************************************
hvis (dataFile) {// ++
dataFile.println (dataString); // ++
dataFile.close (); // ++
} andet {// ++
Serial.println (F ("FEJL SD -skrivning")); // ++
} // ++
}
Hvis du vil downloade koden, kan du besøge denne side.
Anbefalede:
LoRa 3 km til 8 km trådløs kommunikation med lavpris E32 (sx1278/sx1276) enhed til Arduino, Esp8266 eller Esp32: 15 trin
LoRa 3 til 8 km trådløs kommunikation med lavpris E32 (sx1278/sx1276) enhed til Arduino, Esp8266 eller Esp32: Jeg opretter et bibliotek til at styre EBYTE E32 baseret på Semtech -serien af LoRa -enheder, meget kraftfuld, enkel og billig enhed.Du kan finde 3Km version her, 8Km version herDe kan arbejde over en afstand på 3000m til 8000m, og de har en masse funktioner og
Sammenligning af LV-MaxSonar-EZ og HC-SR04 Sonar Range Finders med Arduino: 20 trin (med billeder)
Sammenligning af LV-MaxSonar-EZ og HC-SR04 Sonar Range Finders med Arduino: Jeg finder ud af, at mange projekter (især robotter) kræver eller kan drage fordel af at måle afstanden til et objekt i realtid. Sonar rækkevidde finder er relativt billige og kan let forbindes til en mikro-controller som Arduino. Dette i
LoRa Messenger til to enheder til distancer Op til 8 km: 7 trin
LoRa Messenger til to enheder til afstande Op til 8 km: Tilslut projektet til din bærbare computer eller telefon, og chat derefter mellem enhederne uden internet eller SMS ved hjælp af bare LoRa.Hey, hvad sker der gutter? Akarsh her fra CETech. I dag skal vi lave et projekt, der kan forbindes til din smartphone eller en hvilken som helst
GÅR UDEN HORIZONEN MED LoRa RF1276: 12 trin
GÅR UDEN HORIZONEN MED LoRa RF1276: Jeg har fundet RF1276 Transceiver til at levere den mest fremragende ydeevne med hensyn til signalinterval og kvalitet. Ved min første flyvning kunne jeg nå 56 km afstand ved -70dB signalniveau med små kvart bølgelængde antenner
Instruktioner til fremstilling af en tilkobling med fire stænger til centermonteret fodstøtte: 9 trin (med billeder)
Instruktioner til fremstilling af en tilkoblingstilslutning med fire stænger til midtermonteret fodstøtte: Mellemdrevne kørestole (PWC) er blevet mere populære i de seneste år. Men på grund af placeringen af de forreste hjul er de traditionelle sidemonterede fodstøtter blevet erstattet af en enkelt midtermonteret fodstøtte. Desværre center-mou