YUK TASHISHNI TASHKIL ETISHNING INTELEKTUAL TIZIMLARDAN FOYDALANGAN HOLDA LOGISTIKA XIZMATINI TASHKIL ETISH USULLARI.
#include //GPS qurilmasi uchun kutubxona e`lon qilish
#include // Ma`lumotni ekranga chiqarish kutubxona e`lon qilish
#define BPS //O`zgaruvchini e`lon qilish
#include // ESP8266WiFi qurilmasi uchun kutubxona e`lon qilish
#include //BlynkSimpleEsp8266 qurilmasi uchun kutubxona e`lon qilish
static const int RXPin = 4, TXPin = 5; // GPIO 4=D2(GPSning Tx-ni ulash) va GPIO 5=D1(GPS-ning Rx-ni ulash)
static const uint32_t GPSBaud = 9600; //Agar Bod tezligi 9600 sizning holatingizda ishlamasa, 4800 dan foydalaning
TinyGPSPlus gps; // TinyGPS++ obyekti
WidgetMap myMap(V0); // Map Widget virtual pin uchun V0
SoftwareSerial ss(RXPin, TXPin); // GPS qurilmasiga ketma-ket ulanish
BlynkTimer timer;
float spd; //Tezlikni saqlash uchun o'zgaruvchi
float sats; //Saqlash raqami uchun o'zgaruvchi. sun'iy yo'ldoshlarning javobi
String bearing; //GPS yoʻnalishini yoki yoʻnalishini saqlash uchun oʻzgaruvchi
char auth[] = "--------------------"; // Loyihangizning autentifikatsiya kaliti
char ssid[] = "-------"; // Tarmoq nomi (HotSpot yoki Router nomi)
char pass[] = "-------"; // Tegishli parol
unsigned int move_index = 1; // Hozircha belgilangan joy
void setup()
{
Serial.begin(115200);
Serial.println();
ss.begin(GPSBaud);
Blynk.begin(auth, ssid, pass);
timer.setInterval(5000L, checkGPS); // har 5 soniyada GPS ulangan yoki yo'qligini tekshirib ko'ring, faqat bir marta qilish kerak
}
void checkGPS(){
if (gps.charsProcessed() < 10)
{
Serial.println(F("GPS aniqlanmadi: simlarni tekshiring."));
Blynk.virtualWrite(V4, " GPS XATOSI "); // Agar GPS aniqlanmasa, V4 da qiymatni ko'rsatish vidjeti
}
}
void loop()
{
while (ss.available() > 0)
{
// eskiz har safar yangi jumla to'g'ri kodlanganda ma'lumotni ko'rsatadi.
if (gps.encode(ss.read()))
displayInfo();
}
Blynk.run();
timer.run();
}
void displayInfo()
{
if (gps.location.isValid() )
{
float kenglik = (gps.location.lat()); //Lotni saqlash. va Lon.
float uzunlik = (gps.location.lng());
Serial.print("KEYINROQ");
Serial.println(kenglik, 6); // x kasrli kasrgacha siljitish
Serial.print("UZUNLIK:");
Serial.println(uzunlik, 6);
Blynk.virtualWrite(V1, String(kenglik, 6));
Blynk.virtualWrite(V2, String(uzunlik, 6));
myMap.location(move_index, kenglik, uzunlik, "GPS_Location");
spd = gps.speed.kmph(); // tezlikni oling
Blynk.virtualWrite(V3, spd);
sats = gps.satellites.value(); // sun'iy yo'ldoshlar sonini oling
Blynk.virtualWrite(V4, sats);
bearing = TinyGPSPlus::cardinal(gps.course.value()); // yo'nalishni oling
Blynk.virtualWrite(V5, bearing);
}
Serial.println();
}
Do'stlaringiz bilan baham: |