Sisällysluettelo:
- Vaihe 1: Yhteys
- Vaihe 2: Ohjelmisto PC: llä
- Vaihe 3: Laiteohjelmisto Tietoja ESP32: sta
- Vaihe 4: Tietojen käsittely
Video: DIY GPS -seuranta --- Python-sovellus: 5 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
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
Yhdistä kaksi levyä nastojen mukaan. Moduulia voidaan käyttää paristolla tai Micro USB -kaapelilla.
Vaihe 2: 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
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
- 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"