Sadržaj:

DIY GPS Tracker --- Python aplikacija: 5 koraka (sa slikama)
DIY GPS Tracker --- Python aplikacija: 5 koraka (sa slikama)

Video: DIY GPS Tracker --- Python aplikacija: 5 koraka (sa slikama)

Video: DIY GPS Tracker --- Python aplikacija: 5 koraka (sa slikama)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Studeni
Anonim
DIY GPS Tracker --- Python aplikacija
DIY GPS Tracker --- Python aplikacija

Sudjelovao sam na biciklističkom događaju prije dva tjedna. Nakon što sam završio, želio sam provjeriti rutu i brzinu kojom sam se tada vozio. Nažalost, to nije postignuto. Sada koristim ESP32 za izradu GPS trackera, a sljedeći put ću snimiti svoju biciklističku rutu. GPS tracker može spremiti podatke o lokaciji i vremenu na SD karticu, a ti se podaci mogu obraditi i nacrtati grafikon udaljenosti i brzine pomoću softvera za računalo.

Pribor:

Hardver:

  • MakePython ESP32 (s Wroverom)
  • MakePython A9G

MakePython A9G ploča je GPS/GPRS ploča za proširenje za MakePython.

  • Baterija
  • Mikro USB kabel

Softver:

  • Python 3
  • uPyCraft_v1.1

Korak 1: Povezivanje

Veza
Veza
Veza
Veza

Spojite dvije ploče prema iglama. Modul se može napajati baterijom ili mikro USB kabelom.

Korak 2: Softver na računalu

Softver na računalu
Softver na računalu
Softver na računalu
Softver na računalu

Python3:

  • Možete ga preuzeti odavde: Python3. Odaberite verziju 3.8.5, preuzmite je i instalirajte.
  • Odabir "Dodaj Python 3.8 u PATH" mora se provjeriti tijekom instalacijskog procesa, kao što je prikazano na slici 1.
  • Ako knjižnica koju koristi program nije instalirana, program će zatražiti da se pokrene. Sljedeću naredbu možete pokrenuti u cmd.exe za instaliranje knjižnica, kao što je prikazano na slici 2.

pip install xxx // xxx je naziv knjižnice

pip uninstall xxx // xxx je naziv knjižnice pip list // ispis instaliranih knjižnica

Kodirati:

  • Python datoteku možete preuzeti odavde: Kod. Python datoteka je “/Project_Gps-Trace-Analysis-master/Google_trace.py”.
  • Nacrtajte rutu na karti.

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 = 'blue') gmap.marker (lat_list [width - 1], lon_list [width - 1], color = 'red') gmap.draw ("./ map -trace.html")

Nacrtajte grafikone brzine prema vremenu, udaljenosti prema vremenu

plt.subplot (2, 1, 1)

plt.plot (time_list [0: -1], speed) plt.title ("Prosječna brzina:" + str (avg_speed)) # plt.xlabel ("Vrijeme") plt.ylabel ("Brzina (m/s)") plt.subplot (2, 1, 2) plt.plot (time_list [0: -1], total_distance) plt.title ("Ukupna udaljenost:" + str (okrugla (total_distance [- 1], 2))) plt.xlabel ("Vrijeme") plt.ylabel ("Udaljenost (m)") plt.draw () plt.pause (0) pass

Korak 3: Firmware o ESP32

Firmware o ESP32
Firmware o ESP32
Firmware o ESP32
Firmware o ESP32

uPyCraft_v1.1

  • Možete ga preuzeti ovdje: uPyCraft.
  • Spojite ploču na računalo putem USB kabela. Otvorite uPyCraft_v1.1, odaberite alate: "Alat> ploča> esp32" i "Alati> port> com*", kliknite povezani gumb s desne strane.
  • Ako povezivanje nije uspješno, upit će se prikazati kao "otvori serijsku pogrešku, pokušajte ponovno". Morate ažurirati firmver kako biste obećali uspješne veze. Veza za preuzimanje firmvera je LINK. Otvorite “Alati> BurnFirmware”, postavite parametar kao na slici 3 i kliknite U redu.
  • Otvorite Python datoteku i kliknite gumb "DownloadAndRun" s desne strane. Program je preuzet na ploču, možete ga vidjeti u izborniku "uređaj" s lijeve strane, kao što je prikazano na slici 4.

Firmware i preuzimanje

Ovdje možete preuzeti firmver: Firmware.

Postavite vezu s modulom SD kartice u datoteci: “/Project_Gps-Trace-Analysis-master/workspace/test.py”

# SD init

spi = SPI (1, brzina prijenosa = 400000, polaritet = 1, faza = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Osigurajte desni boudrate LCD. text ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Compatible with PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD"))) print ("SD OK") lcd.text ('SPI OK', 0, 16)

Postavite vezu s modulom A9G u datoteci: “/Project_Gps-Trace-Analysis-master/workspace/test.py”

# A9G otvoren

A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # postavite pin to low time.sleep (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9GYPW.vrijednost (1) vrijeme.spavanje (1) lcd.fill (0) lcd.text ('A9G otvoren', 0, 0)

AT naredba za modul A9G

AT+GPS = 1 # 1: Uključite GPS, 0: Isključite GPS

NA+LOKACIJI = 2 #Dobijte podatke o adresi GPS -a, sve dok GPS može vidjeti satelit prije povratka, u protivnom će se vratiti GPS NIJE POPRAVLJEN SADA NA+GPSRD = 0 #Prestanite s izvještavanjem

Spojite ploču na računalo USB kabelom i upotrijebite uPyCraft za preuzimanje svih datoteka u mapu “/Project_Gps-Trace-Analysis-master/radni prostor”

Korak 4: Obrada informacija

Obrada informacija
Obrada informacija
  • Kopirajte TXT datoteku koja počinje s "trace" na SD kartici u mapu "/Project_Gps-Trace-Analysis-master".
  • Otvorite Python datoteku s bilježnicom i promijenite kôd.

#Datoteka koju želite analizirati

trace_file_name = "./trace4.txt"