Përmbajtje:
- Hapi 1: Lidhja
- Hapi 2: Softuer në PC
- Hapi 3: Firmware Rreth ESP32
- Hapi 4: Përpunimi i informacionit
- Hapi 5: Le të Provojmë
Video: DIY GPS Tracker --- Aplikimi Python: 5 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:10
Kam marrë pjesë në një ngjarje çiklizmi dy javë më parë. Pasi mbarova, doja të kontrolloja itinerarin dhe shpejtësinë që ecja në atë kohë. Fatkeqësisht, nuk u arrit. Tani unë përdor ESP32 për të bërë një gjurmues GPS dhe do ta marr atë për të regjistruar rrugën time të çiklizmit herën tjetër. Gjurmuesi GPS mund të ruajë informacionin e vendndodhjes dhe kohës në kartën SD, dhe ky informacion mund të përpunohet dhe të vizatojë një tabelë të distancës dhe shpejtësisë me programin kompjuterik.
Furnizimet:
Hardware:
- MakePython ESP32 (me Wrover
- MakePython A9G
Bordi MakePython A9G është bordi i zgjerimit GPS/GPRS për MakePython.
- Bateri
- Kabllo mikro USB
Softuer:
- Python 3
- uPyCraft_v1.1
Hapi 1: Lidhja
Lidhni dy dërrasa sipas kunjave. Moduli mund të mundësohet nga bateria ose kabllo Micro USB.
Hapi 2: Softuer në PC
Python3:
- Mund ta shkarkoni nga këtu: Python3. Zgjidhni versionin 3.8.5, shkarkoni dhe instaloni atë.
- Zgjedhja "Shto Python 3.8 në PATH" duhet të kontrollohet gjatë procesit të instalimit, siç është Figura 1.
- Nëse biblioteka e përdorur nga programi nuk është e instaluar, programi do të kërkojë kur të funksionojë. Ju mund të ekzekutoni komandën e mëposhtme në cmd.exe për të instaluar bibliotekat, si Figura 2.
pip install xxx // xxx është emri i bibliotekës
pip uninstall xxx // xxx është emri i bibliotekës pip list // printoni bibliotekat e instaluara
Kodi:
- Ju mund të merrni skedarin python nga këtu: Kodi. Skedari python është "/Project_Gps-Trace-Analysis-master/Google_trace.py".
- Vizatoni një rrugë në hartë.
def create_html_map ():
gmap = gmplot. GoogleMapPlotter (lista lat_ [0], lista lon [0], 16) gmap.plot (list_ lat, lista lon] lista gmap.marker (list_ lat [0], lista lon [0], ngjyra = 'blu') gmap.marker (list_ lat [gjerësia - 1], lista lon [gjerësia - 1], ngjyra = 'e kuqe') gmap.draw ("./ map -trace.html")
Vizatoni grafikët e shpejtësisë kundrejt kohës, distancës kundrejt kohës
plt. nënplot (2, 1, 1)
plt.plot (lista e kohës [0: -1], shpejtësia) plt.title ("Shpejtësia mesatare:" + str (avg_speed)) # plt.xlabel ("Koha") plt.ylabel ("Shpejtësia (m/s)") plt.subplot (2, 1, 2) plt.plot (lista kohore [0: -1], distanca totale) plt.title ("Distanca totale:" + str (e rrumbullakët (distanca totale [- 1], 2)))) plt.xlabel ("Koha") plt.ylabel ("Distanca (m)") plt.draw () plt. pauzë (0) kalim
Hapi 3: Firmware Rreth ESP32
uPyCraft_v1.1
- Mund ta shkarkoni nga këtu: uPyCraft.
- Lidheni bordin me kompjuterin me kabllo USB. Hapni uPyCraft_v1.1, zgjidhni mjetet:”Tool> board> esp32” dhe “Tools> port> com*”, klikoni butonin e lidhur në të djathtë.
- Nëse lidhja nuk është e suksesshme, kërkesa do të shfaqet si "hap gabimin serik, provo përsëri". Ju duhet të azhurnoni firmware -in për të premtuar lidhje me sukses. Lidhja e shkarkimit të firmuerit është LINK. Hapni "Tools> BurnFirmware", vendosni parametrin, si Figura 3, dhe klikoni OK.
-
Hapni skedarin Python dhe klikoni butonin "DownloadAndRun" në të djathtë. Programi është shkarkuar në tabelë, mund ta shihni në menunë "pajisje" në të majtë, si Figura 4.
Firmware dhe Shkarkim
Firmware -in mund ta merrni nga këtu: Firmware.
Vendosni lidhjen me modulin e kartës SD në skedarin: "/Project_Gps-Trace-Analysis-master/workspace/test.py"
# SD inic
spi = SPI (1, baudrate = 400000, polariteti = 1, faza = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Siguroni baudratin e duhur LCD. tekst ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # E pajtueshme me PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD"))) print ("SD OK") lcd.text ('SPI OK', 0, 16)
Vendosni lidhjen me modulin A9G në skedar: "/Project_Gps-Trace-Analysis-master/workspace/test.py"
# A9G hapur
A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.vlera (0) # vendosni pin në kohën e ulët. Gjumë (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.vlera (0) koha. Gjumë (1) A9G_P.vlera (1) koha. gjumi (1) lcd.mbush (0) lcd.text ('A9G hapur', 0, 0)
Komanda AT për modulin A9G
AT+GPS = 1 # 1: Ndizni GPS, 0: Fikni GPS
AT+LOKACION = 2 #Merrni informacionin e adresës së GPS, për aq kohë sa GPS mund të shohë satelitin para se të kthehet, përndryshe do të kthejë GPS NUK FIKS TANI+GPSRD = 0 #Ndalo raportimin
Lidhni bordin me kompjuterin me kabllo USB dhe përdorni uPyCraft për të shkarkuar të gjithë skedarët në dosjen "/Project_Gps-Trace-Analysis-master/workpace"
Hapi 4: Përpunimi i informacionit
- Kopjoni skedarin TXT duke filluar me "gjurmë" në kartën SD në dosjen "/Project_Gps-Trace-Analysis-master".
- Hapni skedarin Python me fletoren dhe ndryshoni kodin.
#Skedar të cilin dëshironi ta analizoni
gjurmë_file_name = "./trace4.txt"