Sisällysluettelo:

DIY GPS -seuranta --- Python-sovellus: 5 vaihetta (kuvilla)
DIY GPS -seuranta --- Python-sovellus: 5 vaihetta (kuvilla)

Video: DIY GPS -seuranta --- Python-sovellus: 5 vaihetta (kuvilla)

Video: DIY GPS -seuranta --- Python-sovellus: 5 vaihetta (kuvilla)
Video: Веб-программирование – информатика для руководителей бизнеса 2016 2024, Marraskuu
Anonim
DIY GPS -seuranta --- Python-sovellus
DIY GPS -seuranta --- Python-sovellus

Osallistuin pyöräilytapahtumaan kaksi viikkoa sitten. Kun olin valmis, halusin tarkistaa reitin ja nopeuden, jolla ajoin tuolloin. Valitettavasti sitä ei saavutettu. Nyt käytän ESP32: ta GPS -seurantalaitteen luomiseen ja otan sen talteen pyöräilyreitilleni seuraavalla kerralla. GPS -paikannin voi tallentaa sijainti- ja aikatiedot SD -kortille, ja näitä tietoja voidaan käsitellä ja piirtää etäisyys- ja nopeuskaavio PC -ohjelmistolla.

Tarvikkeet:

Laitteisto:

  • MakePython ESP32 W ja Wrover)
  • MakePython A9G

MakePython A9G -kortti on GPS/GPRS -laajennuskortti MakePythonille.

  • Akku
  • Micro -USB -kaapeli

Ohjelmisto:

  • Python 3
  • uPyCraft_v1.1

Vaihe 1: Yhteys

Yhteys
Yhteys
Yhteys
Yhteys

Yhdistä kaksi levyä nastojen mukaan. Moduulia voidaan käyttää paristolla tai Micro USB -kaapelilla.

Vaihe 2: Ohjelmisto PC: llä

Ohjelmisto PC: llä
Ohjelmisto PC: llä
Ohjelmisto PC: llä
Ohjelmisto PC: llä

Python3:

  • Voit ladata sen täältä: Python3. Valitse versio 3.8.5, lataa ja asenna se.
  • "Lisää Python 3.8 PATHiin" -valinta on tarkistettava asennuksen aikana, kuten kuva 1.
  • Jos ohjelman käyttämää kirjastoa ei ole asennettu, ohjelma kysyy, kun se on käynnissä. Voit suorittaa seuraavan komennon cmd.exe -tiedostossa asentaaksesi kirjastoja, kuten kuva 2.

pip install xxx // xxx on kirjaston nimi

pip uninstall xxx // xxx on kirjaston nimi pip list // tulosta asennetut kirjastot

Koodi:

  • Saat python -tiedoston täältä: Code. Python-tiedosto on "/Project_Gps-Trace-Analysis-master/Google_trace.py".
  • Piirrä reitti kartalle.

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 [leveys - 1], lon_list [leveys - 1], väri = 'punainen') gmap.draw ("./ map -trace.html")

Piirrä kaavioita nopeudesta ajan kanssa, etäisyydestä ajan kanssa

plt. osa (2, 1, 1)

plt.plot (aikalista [0: -1], nopeus) plt.title ("Keskimääräinen nopeus:" + str (keskimääräinen nopeus)) # plt.xlabel ("Aika") plt.ylabel ("Nopeus (m/s)") plt.subplot (2, 1, 2) plt.plot (aikaluettelo [0: -1], total_distance) plt.title ("Kokonaismatka:" + str (pyöreä (total_distance [- 1], 2))) plt.xlabel ("Time") plt.ylabel ("Distance (m)") plt.draw () plt.pause (0) pass

Vaihe 3: Laiteohjelmisto Tietoja ESP32: sta

Laiteohjelmisto Tietoja ESP32: sta
Laiteohjelmisto Tietoja ESP32: sta
Laiteohjelmisto Tietoja ESP32: sta
Laiteohjelmisto Tietoja ESP32: sta

uPyCraft_v1.1

  • Voit ladata sen täältä: uPyCraft.
  • Liitä kortti tietokoneeseen USB -kaapelilla. Avaa uPyCraft_v1.1, valitse työkalut:”Työkalu> levy> esp32” ja “Työkalut> portti> com*”, napsauta liitettyä painiketta oikealla.
  • Jos yhteys ei onnistu, kehote näkyy "avaa sarjavirhe, yritä uudelleen". Sinun on päivitettävä laiteohjelmisto lupaamaan yhteydet onnistuneesti. Laiteohjelmiston latauslinkki on LINK. Avaa "Työkalut> BurnFirmware", määritä parametri, kuten kuva 3, ja napsauta OK.
  • Avaa Python -tiedosto ja napsauta oikealla olevaa DownloadAndRun -painiketta. Ohjelma on ladattu taululle, näet sen vasemmalla olevasta "laite" -valikosta, kuten kuva 4.

Laiteohjelmisto ja lataus

Voit ladata laiteohjelmiston täältä: Laiteohjelmisto.

Aseta yhteys SD-korttimoduuliin tiedostossa: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# SD -alku

spi = SPI (1, baudrate = 400000, napaisuus = 1, vaihe = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Varmista oikea baudrate lcd. text ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Yhteensopiva PCB: n kanssa vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD")))) print ("SD OK") lcd.text ('SPI OK', 0, 16)

Määritä yhteys A9G-moduuliin tiedostossa: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# A9G auki

A9G_RESET_PIN = Nasta (33, Pin. OUT) A9G_RESET_PIN.value (0) # aseta nasta alhaiseksi. Uni (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_PW.arvo (1) aika.unen (1) lcd.fill (0) lcd.text ('A9G auki', 0, 0)

AT -komento A9G -moduulille

AT+GPS = 1 # 1: Kytke GPS päälle, 0: Sammuta GPS

AT+LOCATION = 2 #Hae GPS -osoitetiedot niin kauan kuin GPS näkee satelliitin ennen paluuta, muuten se palauttaa GPS EI KORJAA NYT AT+GPSRD = 0 #Lopeta raportointi

Liitä kortti tietokoneeseen USB-kaapelilla ja lataa uPyCraft-sovelluksella kaikki tiedostot kansioon "/Project_Gps-Trace-Analysis-master/workspace"

Vaihe 4: Tietojen käsittely

Tietojen käsittely
Tietojen käsittely
  • Kopioi TXT-tiedosto, joka alkaa "jäljittää" SD-kortilla, kansioon "/Project_Gps-Trace-Analysis-master".
  • Avaa Python -tiedosto muistilehtiöllä ja vaihda koodi.

#Tiedosto, jonka haluat analysoida

trace_file_name = "./trace4.txt"