Loyiha №44: Oddiy GPS qabul qilgichni yaratish




Download 18,25 Kb.
bet3/6
Sana17.05.2024
Hajmi18,25 Kb.
#239205
1   2   3   4   5   6
Bog'liq
13 arduinoda gps bilan ishlash ushbu bobda, siz gps ekranini qa-www.hozir.org

Loyiha №44: Oddiy GPS qabul qilgichni yaratish
Keling, oddiy GPS qabul qilgichni yarataylik. Biroq, birinchi navbatda, biz odatda GPS-dan tashqarida foydalanamiz va ishlarni biroz osonlashtirish uchun biz 13-6-rasmdagiga o'xshash ma'lumotlarni ko'rsatish uchun LCD modulni qo'shamiz.

13-6-rasm: Freetronics LCD va klaviatura ekrani




Eslatma
Bizning misollarimiz Freetronics LCD va klaviatura ekranidan foydalanishga asoslangan. Ushbu qalqon haqida ko'proq ma'lumot olish uchun, havola: http://www.freetronics.com/collections/ display/products/lcd-keypad-shield/. Agar siz boshqa displey modulidan foydalanishni tanlasangiz, eskizlaringizdagi LiquidCrystal funksiyasiga to'g'ri qiymatlarni almashtirganingizga ishonch hosil qiling.
LCD displeyda GPS tomonidan qabul qilingan joriy joylashuv koordinatalarini ko'rsatish uchun biz 9 V batareya va ulagich bilan quvvatlanishi mumkin bo'lgan juda oddiy portativ GPSni yaratamiz.

Texnik qism
Kerakli uskuna minimal:

  • Arduino va USB kabeli


  • LCD moduli yoki Freetronics LCD ekrani (ilgari aytib o'tilgan)


  • Bitta 9 V akkumulyatordan doimiy tok rozetkasiga kabel


  • Bitta SparkFun GPS ekrani to'plami




Eskiz
Quyidagi eskizni kiriting va yuklang:
// 44-loyiha - Oddiy GPS qabul qiluvchini yaratish

 #include


#include
LiquidCrystal lcd( 8, 9, 4, 5, 6, 7 );
// TinyGPS ning TinyGPS gps ob'ekti nusxasini yarating;

 void getgps(TinyGPS &gps);


void setup()
{
Serial.begin(4800);
lcd.begin(16, 2);
}
void getgps(TinyGPS &gps)
// Getgps funksiyasi LCD displeyda kerakli ma'lumotlarni ko'rsatadi
{
float latitude, longitude;
// dekodlash va joylashuv ma'lumotlarini ko'rsatish
 gps.f_get_position(&latitude, &longitude);
lcd.setCursor(0,0);
lcd.print("Lat:");
lcd.print(latitude,5);
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print("Long:");
lcd.print(longitude,5);
lcd.print(" ");
delay(3000); // 3 soniya kuting
lcd.clear();
}
void loop()
{
byte a;
if ( Serial.available() > 0 )
// agar ketma-ket qatorga ma'lumotlar kirsa
{
a = Serial.read(); // ma'lumotlar baytini oling
if(gps.encode(a))
// agar haqiqiy GPS ma'lumotlari mavjud bo'lsa ...
{
 getgps(gps);
// ma'lumotlarni oling va uni LCD displeyda ko'rsating
}
}
}
 dan  gacha eskiz LCD va GPS uchun kerakli kutubxonalarni taqdim etadi. Bo'sh sikl  da biz GPS qabul qilgichdan olingan belgilarni  dagi getgps() funksiyasiga jo'natamiz, bu funksiya gps.f_get_position() dan joylashuv qiymatlarini &latitude (kenglik) va &longitude (uzunlik) o'zgaruvchilariga (biz LCD displeyda ko'rsatamiz) kiritish uchun ishlatadi. ).

LCD displeyda joylashuvni ko'rsatish
Eskiz yuklangandan va GPS ma'lumotlarni qabul qila boshlagandan so'ng, 13-7-rasmda ko'rsatilganidek, o'nlik kenglik va uzunlikdagi joriy joylashuvingiz LCD displeyda ko'rsatilishi kerak.

13-7-rasm: 44-loyihadan kenglik va uzunlikni ko'rsatish


Ammo bu Yerning qayerida? Biz Google Xaritalar (http://maps.google.com/) yordamida uning qayerda ekanligini aniqlay olamiz. Veb-saytda qidiruv maydoniga vergul va bo'sh joy bilan ajratilgan kenglik va uzunlikni kiriting va Google Xaritalar manzilni qaytaradi. Masalan, 13-7-rasmda qaytarilgan koordinatalardan foydalanib, 13-8-rasmdagi kabi xarita hosil bo'ladi.

13-8-rasm: 13-7-rasmda ko'rsatilgan pozitsiyaning joylashuvi




Download 18,25 Kb.
1   2   3   4   5   6




Download 18,25 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Loyiha №44: Oddiy GPS qabul qilgichni yaratish

Download 18,25 Kb.