Mündəricat:
- Addım 1: Baza Stansiyası
- Addım 2: İlk test
- Addım 3: İnterfeys yaradın
- Addım 4: Göstərici əlavə edin
- Addım 5: GPS Ölçmə cihazını çəkin və OpenStreetMap əlavə edin
- Addım 6: GPS Göstəricisini çəkin və Cədvəl Qeydini əlavə edin
- Addım 7: Kod əldə edin
- Addım 8: Arduino IDE
- Addım 9: Detalların kodlaşdırılması
Video: Arduino Layihəsi: GPS İzləmə Həll üçün RF1276 Test Aralığı LoRa Modulu: 9 Addım (Şəkillərlə birlikdə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Bağlantı: USB - Serial
Ehtiyac: Chrome brauzeri
Ehtiyac: 1 X Arduino Mega
Lazımdır: 1 X GPS
Lazımdır: 1 X SD kart
Ehtiyac: 2 X LoRa Modem RF1276
Fonksiyon: Arduino, GPS dəyərini əsas bazaya göndərir-Dataino Server Lora Modulunda əsas baza məlumatları: APPCONWIRELESS LoRa'dan ultra uzun məsafəli RF1276, son dərəcə aşağı məlumat sürətində məlumat göndərmək imkanı verən yeni, özəl və yayılmış spektrli bir modulyasiya texnikasıdır. uzun məsafələr. Aşağı məlumat sürəti (saniyədə bir neçə bayta qədər) və LoRa modulyasiyası çox aşağı alıcı həssaslığına səbəb olur, bu testdə 10 km-dən çox deməkdir.
Addım 1: Baza Stansiyası
Kompüter genişliyində internet bağlantısı və USB portuna qoşulmuş LoRa modemi.
Arduino Avtomobil dəsti ·
Metrik qutu
Anduino Mega serial 2 -ni GPS qəbuledicisinə və Serial 1 -ə LoRa modeminə bağladı. Məlumat saxlamaq üçün bir SD kart istifadə olunur.
Addım 2: İlk test
· Şəhər mərkəzləri, qalereyalar və sahillər boyunca bir döngə ilə 10.6 km
Qəbul /ötürmə nisbəti 321 /500TX nöqtəsinə bərabərdir
RX nöqtəsi
Addım 3: İnterfeys yaradın
1 - Yeni bir LoRa layihəsi qurun
Layihə konfiqurasiyasını açmaq üçün icon cog düyməsini basın
Addım 4: Göstərici əlavə edin
2) Ölçmə çubuğunu açın.
· 3) GPS -ə keçin.
· 4) Masaya birini əlavə edin.
Addım 5: GPS Ölçmə cihazını çəkin və OpenStreetMap əlavə edin
· 5) OpenStreetMap xəritəsini masaya əlavə edin
GPS komponentini simge xəritəsinə sürükləyərək OpenStreet xəritəsi yaradılır.
İnterfeys yaradın
· 6) Xəritənin yenilənməsini dəyişdirin
Xəritənin yeniləmə müddətini 5000 -dən 10000 -ə dəyişdirin
Addım 6: GPS Göstəricisini çəkin və Cədvəl Qeydini əlavə edin
· 7) Cədvəl Giriş ölçmə cihazı əlavə edin.
Göstəricini GPS simvol cədvəlinin üstünə sürükləyərək ölçü cədvəli qeydləri yaradılır
· 8) Cədvəl jurnalının yeniləməsini dəyişdirin. Xəritənin yeniləmə müddətini 5000 -dən 10000 -ə dəyişdirin
Göstəricilərin yerini tənzimləyin
· 9) Çəkmə ölçü cihazları, ekran boyunca sürükləyərək ölçü cihazlarının mövqeyini tənzimləyir.
· 10) Layihəni saxla
Addım 7: Kod əldə edin
10) Kod konteynerini aktivləşdirin
Sağ üstdəki düyməni basın, hamısını seçin və əsas kodu kopyalayın.
Addım 8: Arduino IDE
· 11) Arduino IDE -yə kodu yapışdırın
· 12) Kodu redaktə et Bu sətri tərifə əlavə et
Addım 9: Detalların kodlaşdırılması
Bu xətti tərifə əlavə edin
//*************************************************************************
// ** KİTABXANA ** // *************************************** ********************************
# + // GPS kitabxanasına daxil olun
#daxil edin // ++ SPI kitabxanası #daxil edin
// ++ SD kitabxana //
*************************************************************************
// ** SD ** // *************************************** ********************************
// * SD kart SPI avtobusuna aşağıdakı kimi yapışdırılır:
// ** UNO: MOSI - pin 11, MISO - pin 12, CLK - pin 13, CS - pin 4
// (CS pin dəyişdirilə bilər) və pin #10 (SS) bir çıxış olmalıdır
// ** Mega: MOSI - pin 51, MISO - pin 50, CLK - pin 52, CS - pin 53
// (CS pin dəyişdirilə bilər) və pin #52 (SS) bir çıxış olmalıdır
// ** Leonardo: ICSP başlığı ilə aparat SPI -yə qoşulun
// Pin 4 burada digər Arduino nümunələri ilə uyğunluq üçün istifadə olunur const int chipSelect = 53;
// ++ SD pin seçicisi
//*************************************************************************
//** GPS ** //***************************************** ********************************
TinyGPS GPS; // Serialda ++ GPS2
boş gpsdump (TinyGPS & gps); // ++
bool newdataGPS = yanlış; // ++
Bu xətti quraşdırmaya əlavə edin ()
//***********************************************************************
// ** GPS serial quruluşu ** // ************************************* ********************************
Serial2.begin (9600); // ++
gecikmə (1000); // ++
//***********************************************************************
// ** SD işə salınır ** // ************************************** *******************************
// standart çip seçmə pininin // ++ olaraq təyin olunduğundan əmin olun
// çıxış, istifadə etməsəniz də: // ++
pinMode (SS, Çıxış); // ++
Serial.println (F ("SD kartı işə salır …")); // ++
// kartın olub olmadığını və işə salınacağını yoxlayın: // ++
əgər (! SD.begin (chipSelect)) {// ++
Serial.println (F ("Kart uğursuz, ya da yoxdur")); // ++
// daha heç nə etmə: // ++
qayıtmaq; // ++
} başqa {// ++
Serial.println (F ("SD kart OK")); // ++
} // ++
Bu xətləri loop () void -ə əlavə edin
serialEvent2 (); // ++ GPS seriyası hadisəsinə zəng edin
SeriaEvent2 kodunu əlavə edin
//*************************************************************************
// ** GPS serialEvent ** // ************************************** *********************************
etibarsız serialEvent2 () {// ++
while (Serial2.available ()) {// ++
char c = Serial2.read (); // ++
//Serial.print(c); // xam GPS məlumatlarını görmək üçün şərh yazmayın // ++
əgər (gps.encode (c)) {// ++
newdataGPS = doğru; // ++
fasilə; // yeni məlumatları dərhal çap etmək üçün şərh yazmayın! // ++
} // ++
} // ++
} // ++
GPS zibilini yüksək səslə əlavə edin
//*************************************************************************
// ** gps dump ** // ************************************** *********************************
// ** Dərəcələrdə etibarlı enlem aralığı -90 və +90 -dır. **
// ** Boylam -180 və +180 aralığındadır **
// ** şərq-qərb mövqeyini göstərməklə **
//** "123456789 1234567890" **
//** "000.00000;0000.00000" ** //*************************************************************************
void gpsdump (TinyGPS & gps) // ++
{ // ++
int il; // ++
bayt ay, gün, saat, dəqiqə, saniyə, yüzdə biri; // ++
imzasız uzun yaş; // ++
gps.f_get_position (& LATGP00, & LONGP00, & age); // ++
gps.crack_datetime (və il, ay, gün və saat, // ++
& dəqiqə, ikinci, & yüzdə və yaş); // ++
uzun lat, uzun; // ++
gps.get_position (& lat, & lon, & age); // ++
// *********************************************************************
// ** daxil olmaq üçün məlumatları toplamaq üçün simli olun: **
// *********************************************************************
String dataString = ""; // ++
dataString += (lat / 100000); // ++
dataString += "."; // ++
dataString += lat - (lat / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += (uzun / 100000); // ++
dataString += "."; // ++
dataString += lon - (uzun / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += String (static_cast (gün)); // ++
dataString += "/"; // ++
dataString += String (static_cast (ay)); // ++
dataString += "/"; // ++
dataString += String (il); // ++
dataString += ";"; // ++
dataString += String (static_cast (saat)); // ++
dataString += ":"; // ++
dataString += String (static_cast (dəqiqə)); // ++
dataString += ":"; // ++
dataString += String (static_cast (ikinci)); // ++ // ****************************************** *****************************
// ** SD -yə QAYD EDİN ** // ************************************* **********************************
// faylı açın. Qeyd edək ki, bir anda yalnız bir fayl açıla bilər, **
// başqa birini açmadan əvvəl bunu bağlamalısınız. ** // ******************************************** ***************************
Fayl dataFile = SD.open ("gps00.txt", FILE_WRITE); // ++
// ***********************************************************************
// ** fayl mövcuddursa, ona yazın: **
// ***********************************************************************
if (dataFile) {// ++
dataFile.println (dataString); // ++
dataFile.close (); // ++
} başqa {// ++
Serial.println (F ("ERROR SD Write")); // ++
} // ++
}
Kodu yükləmək istəyirsinizsə, bu səhifəni ziyarət edin.
Tövsiyə:
ATtiny85 Geyinilə bilən Titrəmə Aktivliyi İzləmə İzləmə və Proqramlaşdırma Arduino Uno ilə ATtiny85: 4 addım (şəkillərlə)
ATtiny85 Geyinilə bilən Titrəmə Aktivliyi İzləmə Saatı və Proqramlaşdırılması Arduino Uno ilə ATtiny85: Geyinilə bilən fəaliyyət izləmə saatı necə edilir? Bu, durğunluq algıladıqda titrəmək üçün hazırlanmış geyilə bilən bir gadgetdır. Vaxtınızın çoxunu mənim kimi kompüterdə keçirirsinizmi? Özünüz də bilmədən saatlarla oturursunuz? Sonra bu cihaz f
Velosipedçilər üçün İzləmə Modulu: 5 addım
Velosipedçilər üçün İzləmə Modulu: Velosipedçilər üçün bu izləmə modulu, bir yarışdakı qəzaları avtomatik olaraq aşkar edən və toxunma sensoruna toxunaraq mexaniki bir qəza aşkar edən bir moduldur. Bu hadisələrdən biri baş verdikdə, modul hadisəni moruqdakı bir verilənlər bazasına göndərir
E32-433T LoRa Modulu Dərsliyi - E32 Modulu üçün DIY Breakout Board: 6 addım
E32-433T LoRa Modulu Dərsliyi | E32 Modulu üçün DIY Breakout Board: Hey, nə var, uşaqlar! Akarsh burada CETech-dən. Mənim bu layihəm, yüksək gücə malik 1 vatlıq ötürücü modulu olan eByte-dən E32 LoRa modulunun işini başa düşmək üçün daha çox öyrənmə əyrisidir. İşi başa düşdükdən sonra dizaynım var
BricKuber Layihəsi - Raspberry Pi Rubiks Cube həll robotu: 5 addım (şəkillərlə)
BricKuber Layihəsi - Raspberry Pi Rubiks Küpü Çözən Robot: BricKuber, Rubik küpünü təxminən 2 dəqiqədən az müddətdə həll edə bilər. Raspberry Pi ilə kub həll edən robot. Getmək əvəzinə
Mükəmməl bir GPS İzləmə Xəritəsi üçün DeLorme Earthmate GPS LT-20-ni Google Earth-ə necə bağlamaq olar: 5 addım
Mükəmməl bir GPS İzləmə Xəritəsi üçün DeLorme Earthmate GPS LT-20-ni Google Earth-ə necə bağlamaq olar: Google Earth Plus istifadə etmədən GPS cihazını məşhur Google Earth proqramına necə bağlayacağınızı sizə göstərəcəyəm. Böyük bir büdcəm yoxdur, buna görə bunun mümkün qədər ucuz olacağına zəmanət verə bilərəm