Indholdsfortegnelse:

DIY GPS Tracker --- Python-applikation: 5 trin (med billeder)
DIY GPS Tracker --- Python-applikation: 5 trin (med billeder)

Video: DIY GPS Tracker --- Python-applikation: 5 trin (med billeder)

Video: DIY GPS Tracker --- Python-applikation: 5 trin (med billeder)
Video: How to use MPU-9250 Gyroscope, Accelerometer, Magnetometer for Arduino 2024, September
Anonim
DIY GPS Tracker --- Python-applikation
DIY GPS Tracker --- Python-applikation

Jeg deltog i et cykelarrangement for to uger siden. Efter endt ville jeg kontrollere ruten og den hastighed, jeg kørte på det tidspunkt. Desværre blev det ikke opnået. Nu bruger jeg ESP32 til at lave en GPS -tracker, og jeg vil tage den til at registrere min cykelrute næste gang. GPS -trackeren kan gemme oplysninger om placering og tid på SD -kortet, og disse oplysninger kan behandles og tegne et diagram over afstand og hastighed med pc -softwaren.

Tilbehør:

Hardware:

  • MakePython ESP32 (med Wrover)
  • MakePython A9G

MakePython A9G -kort er GPS/GPRS -udvidelseskort til MakePython.

  • Batteri
  • Micro USB kabel

Software:

  • Python 3
  • uPyCraft_v1.1

Trin 1: Tilslutning

Forbindelse
Forbindelse
Forbindelse
Forbindelse

Forbind to brædder i henhold til stifterne. Modulet kan drives af batteri eller Micro USB -kabel.

Trin 2: Software på pc

Software på pc
Software på pc
Software på pc
Software på pc

Python3:

  • Du kan downloade den herfra: Python3. Vælg 3.8.5 -versionen, download og installer den.
  • Valget "Tilføj Python 3.8 til PATH" skal kontrolleres under installationsprocessen, som figur 1.
  • Hvis biblioteket, der bruges af programmet, ikke er installeret, vil programmet spørge, når det kører. Du kan køre følgende kommando i cmd.exe for at installere biblioteker, som figur 2.

pip install xxx // xxx er biblioteksnavn

pip afinstaller xxx // xxx er biblioteksnavn pip liste // udskriv installerede biblioteker

Kode:

  • Du kan hente python -filen herfra: Kode. Python-filen er "/Project_Gps-Trace-Analysis-master/Google_trace.py".
  • Tegn en rute på kortet.

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 [bredde - 1], lon_list [bredde - 1], farve = 'rød') gmap.draw ("./ map -trace.html")

Tegn grafer over hastighed vs. tid, afstand vs. tid

plt. delplot (2, 1, 1)

plt.plot (time_list [0: -1], hastighed) plt.title ("Gennemsnitlig hastighed:" + 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 ("Time") plt.ylabel ("Distance (m)") plt.draw () plt.pause (0) pass

Trin 3: Firmware om ESP32

Firmware om ESP32
Firmware om ESP32
Firmware om ESP32
Firmware om ESP32

uPyCraft_v1.1

  • Du kan downloade den her: uPyCraft.
  • Slut kortet til pc'en med et USB -kabel. Åbn uPyCraft_v1.1, vælg værktøjerne:”Tool> board> esp32” og “Tools> port> com*”, klik på den tilsluttede knap til højre.
  • Hvis forbindelsen ikke lykkedes, vises prompten som "åbn den serielle fejl, prøv venligst igen". Du skal opdatere firmwaren for at love forbindelser. Firmware -downloadlinket er LINK. Åbn "Værktøjer> BurnFirmware", indstil parameteren som figur 3, og klik på OK.
  • Åbn Python -filen, og klik på knappen "DownloadAndRun" til højre. Programmet er blevet downloadet til tavlen, du kan se det i menuen "enhed" til venstre, som figur 4.

Firmware og download

Du kan hente firmwaren herfra: Firmware.

Indstil forbindelsen med SD-kortmodulet i filen: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# SD init

spi = SPI (1, baudrate = 400000, polaritet = 1, fase = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Sørg for højre baudrate lcd. tekst ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Kompatibel med PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD"))) print ("SD OK") lcd.text ('SPI OK', 0, 16)

Indstil forbindelsen med A9G-modulet i filen: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# A9G åben

A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.værdi (0) # sæt pin til lav tid. Søvn (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.værdi (0) time.sleep (1) A9G_PW.værdi (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G åben', 0, 0)

AT -kommando for A9G -modulet

AT+GPS = 1 # 1: Tænd for GPS'en, 0: Sluk for GPS'en

AT+LOCATION = 2 #Få adresseoplysningerne for GPS, så længe GPS'en kan se satellitten, før den vender tilbage, ellers returnerer den GPS NOT FIX NOW AT+GPSRD = 0 #Stop rapportering

Tilslut kortet til pc'en med USB-kabel, og brug uPyCraft til at downloade alle filer i mappen "/Project_Gps-Trace-Analysis-master/workspace"

Trin 4: Behandler oplysninger

Behandler oplysninger
Behandler oplysninger
  • Kopier TXT-filen, der begynder med "trace" på SD-kortet, til mappen "/Project_Gps-Trace-Analysis-master".
  • Åbn Python -filen med notesblokken, og skift koden.

#Fil, som du ønsker analyse

trace_file_name = "./trace4.txt"