Mundarija:

DIY GPS kuzatuvchisi-Python ilovasi: 5 qadam (rasmlar bilan)
DIY GPS kuzatuvchisi-Python ilovasi: 5 qadam (rasmlar bilan)

Video: DIY GPS kuzatuvchisi-Python ilovasi: 5 qadam (rasmlar bilan)

Video: DIY GPS kuzatuvchisi-Python ilovasi: 5 qadam (rasmlar bilan)
Video: Architecture Kata - узнай каково это быть архитектором [#ityoutubersru] 2024, Noyabr
Anonim
DIY GPS kuzatuvchisi-Python ilovasi
DIY GPS kuzatuvchisi-Python ilovasi

Men ikki hafta oldin velosport musobaqasida qatnashganman. Tugatgandan so'ng, men marshrutni va o'sha paytdagi tezlikni tekshirishni xohladim. Afsuski, bunga erishilmadi. Endi men ESP32 -dan GPS izdoshini yasash uchun foydalanaman va men keyingi safar velosiped marshrutimni yozib olaman. GPS -treker joylashuv va vaqt ma'lumotlarini SD -kartaga saqlashi mumkin, va bu ma'lumotlarni qayta ishlash va kompyuter dasturi yordamida masofa va tezlik jadvalini chizish mumkin.

Ta'minot:

Uskuna:

  • MakePython ESP32, Wrover bilan.
  • MakePython A9G

MakePython A9G kartasi - bu MakePython uchun GPS/GPRS kengaytirish paneli.

  • Batareya
  • Mikro USB kabeli

Dasturiy ta'minot:

  • Python 3
  • uPyCraft_v1.1

1 -qadam: ulanish

Ulanish
Ulanish
Ulanish
Ulanish

Pimlarga muvofiq ikkita taxtani ulang. Modul batareya yoki mikro USB kabeli orqali quvvatlanishi mumkin.

2 -qadam: Kompyuterda dasturiy ta'minot

Kompyuterda dasturiy ta'minot
Kompyuterda dasturiy ta'minot
Kompyuterda dasturiy ta'minot
Kompyuterda dasturiy ta'minot

Python3:

  • Siz uni bu erdan yuklab olishingiz mumkin: Python3. 3.8.5 versiyasini tanlang, yuklab oling va o'rnating.
  • O'rnatish jarayonida "Python 3.8 ni PATH ga qo'shish" tanlovi tekshirilishi kerak, 1 -rasm.
  • Agar dasturda foydalaniladigan kutubxona o'rnatilmagan bo'lsa, dastur ishlayotgan vaqtda ko'rsatma beradi. Kutubxonalarni o'rnatish uchun cmd.exe -da quyidagi buyruqni bajarishingiz mumkin, 2 -rasm.

pip install xxx // xxx - kutubxona nomi

pip o'chirish xxx // xxx - kutubxona nomi pip ro'yxati // o'rnatilgan kutubxonalarni chop etish

Kod:

  • Python faylini bu erdan olishingiz mumkin: Kod. Python fayli "/Project_Gps-Trace-Analysis-master/Google_trace.py" dir.
  • Xaritada marshrutni chizish.

def create_html_map ():

gmap = gmplot. GoogleMapPlotter (lat_list [0], lon_list [0], 16) gmap.plot (lat_list, lon_list) gmap.marker (lat_list [0], lon_list [0], color = 'ko'k') gmap.marker (lat_list [kenglik - 1], lon_list [kenglik - 1], rang = 'qizil') gmap.draw ("./ map -trace.html")

Vaqt va tezlik, masofa va vaqt grafiklarini chizish

plt.subplot (2, 1, 1)

plt.plot (vaqt ro'yxati [0: -1], tezlik) plt.title ("O'rtacha tezlik:" + str (avg_speed)) # plt.xlabel ("Vaqt") plt.ylabel ("Tezlik (m/s)")) plt.subplot (2, 1, 2).xlabel ("Vaqt") plt.ylabel ("Masofa (m)") plt.draw () plt.pauza (0) o'tish

3 -qadam: ESP32 haqida dasturiy ta'minot

ESP32 haqida dasturiy ta'minot
ESP32 haqida dasturiy ta'minot
ESP32 haqida dasturiy ta'minot
ESP32 haqida dasturiy ta'minot

uPyCraft_v1.1

  • Siz uni bu erdan yuklab olishingiz mumkin: uPyCraft.
  • Kengashni kompyuterga USB kabeli orqali ulang. UPyCraft_v1.1 -ni oching, asboblarni tanlang: "Asboblar> taxta> esp32" va "Asboblar> port> com*", o'ngdagi ulangan tugmani bosing.
  • Agar ulanish muvaffaqiyatsiz bo'lsa, ko'rsatma "ketma -ket xatoni oching, qaytadan urinib ko'ring" sifatida ko'rsatiladi. Muvaffaqiyatli ulanishni va'da qilish uchun siz dasturiy ta'minotni yangilashingiz kerak. Dasturiy ta'minotni yuklab olish havolasi LINK. "Asboblar> BurnFirmware" ni oching, parametrni 3 -rasmga o'rnating va OK tugmasini bosing.

  • Python faylini oching va o'ngdagi "DownloadAndRun" tugmasini bosing. Dastur taxtaga yuklangan, uni chapdagi "qurilma" menyusida ko'rishingiz mumkin, 4 -rasm.

Dasturiy ta'minot va yuklab olish

Siz dasturiy ta'minotni bu erdan olishingiz mumkin: dasturiy ta'minot.

Faylga SD-karta moduli bilan ulanishni o'rnating: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# SD boshlang'ich

spi = SPI (1, baudrate = 400000, kutupluluk = 1, faza = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # To'g'ri baudrate lcd. text ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") tasodifiy.seed (len (os.listdir ("/SD")))) chop etish ("SD OK") lcd.text ("SPI OK", 0, 16)

A9G moduli bilan ulanishni faylga o'rnating: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# A9G ochiq

A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # pinni past vaqtga qo'ying..value (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G ochiq', 0, 0)

A9G moduli uchun AT buyrug'i

AT+GPS = 1 # 1: GPSni yoqing, 0: GPSni o'chiring

AT+LOCATION = 2 #GPS manzili ma'lumotini oling, agar GPS qaytmasidan oldin sun'iy yo'ldoshni ko'rsa, aks holda GPS qaytadi, AT+GPSRD = 0 #hisobot berishni to'xtating

Kengashni USB kabeli orqali kompyuterga ulang va "/Project_Gps-Trace-Analysis-master/workpace" papkasidagi barcha fayllarni yuklash uchun uPyCraft-dan foydalaning

4 -qadam: ma'lumotlarni qayta ishlash

Ma'lumotni qayta ishlash
Ma'lumotni qayta ishlash
  • SD kartadagi "iz" bilan boshlangan TXT faylini "/Project_Gps-Trace-Analysis-master" jildiga nusxalash.
  • Notepad bilan Python faylini oching va kodni o'zgartiring.

#Tahlil qilmoqchi bo'lgan fayl

trace_file_name = "./trace4.txt"

Python faylini ishga tushirish uchun buyruq satridan foydalaning, siz 5 -rasmdagi tezlik va masofani olasiz

5 -qadam: harakat qilaylik

Tavsiya: