Obsah:
- Krok 1: Pripojenie
- Krok 2: Softvér na počítači
- Krok 3: Firmvér o ESP32
- Krok 4: Spracovanie informácií
- Krok 5: Skúsme to
Video: DIY GPS Tracker --- Aplikácia Python: 5 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:55
Pred dvoma týždňami som sa zúčastnil cyklistickej akcie. Po skončení som si chcel skontrolovať trasu a rýchlosť, ktorou som vtedy išiel. Žiaľ, nebolo to dosiahnuté. Teraz používam ESP32 na výrobu sledovača GPS a nabudúce si ho vezmem na zaznamenanie svojej cyklistickej trasy. Zariadenie na sledovanie polohy GPS môže uložiť informácie o polohe a čase na kartu SD a tieto informácie je možné spracovať a pomocou softvéru PC nakresliť graf vzdialenosti a rýchlosti.
Zásoby:
Hardvér:
- MakePython ESP32 (s Wroverom)
- MakePython A9G
Doska MakePython A9G je rozširujúca doska GPS/GPRS pre aplikáciu MakePython.
- Batéria
- Micro USB kábel
Softvér:
- Python 3
- uPyCraft_v1.1
Krok 1: Pripojenie
Pripojte dve dosky podľa kolíkov. Modul je možné napájať batériou alebo káblom Micro USB.
Krok 2: Softvér na počítači
Python3:
- Môžete si ho stiahnuť tu: Python3. Vyberte verziu 3.8.5, stiahnite si ju a nainštalujte.
- Počas procesu inštalácie je potrebné zaškrtnúť výber „Pridať Python 3.8 do PATH“, ako na obrázku 1.
- Ak nie je nainštalovaná knižnica, ktorú program používa, program sa pri spustení zobrazí výzva. Na inštaláciu knižníc môžete spustiť nasledujúci príkaz v cmd.exe, ako na obrázku 2.
pip install xxx // xxx je názov knižnice
pip uninstall xxx // xxx je názov knižnice pip list // vytlačí nainštalované knižnice
Kód:
- Súbor python môžete získať tu: Kód. Súbor pythonu je „/Project_Gps-Trace-Analysis-master/Google_trace.py“.
- Nakreslite trasu na mapu.
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 [šírka - 1], lon_list [šírka - 1], farba = 'červená') gmap.draw ("./ map -trace.html")
Nakreslite grafy rýchlosť vs. čas, vzdialenosť vs. čas
plt.subplot (2, 1, 1)
plt.plot (time_list [0: -1], speed) plt.title ("Priemerná rýchlosť:" + str (avg_speed)) # plt.xlabel ("Time") plt.ylabel ("Speed (m/s)") plt.subplot (2, 1, 2) plt.plot (time_list [0: -1], total_distance) plt.title ("Total Distance:" + str (round (total_distance [- 1], 2))) plt.xlabel ("čas") plt.ylabel ("vzdialenosť (m)") plt.draw () plt.pause (0) prejsť
Krok 3: Firmvér o ESP32
uPyCraft_v1.1
- Môžete si ho stiahnuť tu: uPyCraft.
- Pripojte dosku k počítaču káblom USB. Otvorte uPyCraft_v1.1, vyberte nástroje: „Nástroj> doska> esp32“a „Nástroje> port> com*“, kliknite na pripojené tlačidlo vpravo.
- Ak pripojenie nie je úspešné, zobrazí sa výzva „otvorte sériovú chybu, skúste to znova“. Ak chcete úspešne sľúbiť pripojenia, musíte aktualizovať firmvér. Odkaz na stiahnutie firmvéru je LINK. Otvorte „Nástroje> BurnFirmware“, nastavte parameter podľa obrázku 3 a kliknite na tlačidlo OK.
-
Otvorte súbor Python a vpravo kliknite na tlačidlo „DownloadAndRun“. Program bol stiahnutý na dosku, môžete ho vidieť v ponuke „zariadenie“vľavo, ako na obrázku 4.
Firmvér a sťahovanie
Firmvér môžete získať tu: Firmvér.
Pripojenie k modulu karty SD nastavte v súbore: „/Project_Gps-Trace-Analysis-master/workspace/test.py“
# SD inic
spi = SPI (1, prenosová rýchlosť = 400000, polarita = 1, fáza = 0, sck = kolík (14), mosi = kolík (13), miso = kolík (12)) spi.init () # Zaistite správnu prenosovú rýchlosť 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"))) vytlačiť ("SD OK") lcd.text ('SPI OK', 0, 16)
Pripojenie k modulu A9G nastavte v súbore „/Project_Gps-Trace-Analysis-master/workspace/test.py“
# A9G otvorené
A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # nastaviť pin na nízky time.sleep (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_.hodnota (1) čas.spánok (1) lcd.fill (0) lcd.text ('A9G otvorený', 0, 0)
AT príkaz pre modul A9G
AT+GPS = 1 # 1: Zapnite GPS, 0: Vypnite GPS
AT+LOCATION = 2 #Získajte informácie o adrese GPS, pokiaľ GPS dokáže vidieť satelit pred návratom, inak vráti GPS NEPRIPRAVIŤ TERAZ AT+GPSRD = 0 #Zastaviť nahlasovanie
Pripojte dosku k počítaču pomocou USB kábla a pomocou uPyCraft stiahnite všetky súbory v priečinku „/Project_Gps-Trace-Analysis-master/workspace“
Krok 4: Spracovanie informácií
- Skopírujte súbor TXT začínajúci „stopou“na kartu SD do priečinka „/Project_Gps-Trace-Analysis-master“.
- Otvorte súbor Python pomocou poznámkového bloku a zmeňte kód.
#Súbor, ktorý chcete analyzovať
trace_file_name = "./trace4.txt"