INHOUDSOPGAWE:

DIY GPS Tracker --- Python-toepassing: 5 stappe (met foto's)
DIY GPS Tracker --- Python-toepassing: 5 stappe (met foto's)

Video: DIY GPS Tracker --- Python-toepassing: 5 stappe (met foto's)

Video: DIY GPS Tracker --- Python-toepassing: 5 stappe (met foto's)
Video: TICWATCH PRO 5 Review: The BEST Wear OS Watch Yet?! // A Complete Guide 2024, November
Anonim
DIY GPS Tracker --- Python-toepassing
DIY GPS Tracker --- Python-toepassing

Ek het twee weke gelede aan 'n fietsbyeenkoms deelgeneem. Nadat ek klaar was, wou ek die roete en die spoed wat ek destyds gery het, nagaan. Ongelukkig is dit nie bereik nie. Nou gebruik ek ESP32 om 'n GPS -spoorsnyer te maak, en ek sal dit volgende keer neem om my fietsroete op te neem. Die GPS -spoorsnyer kan die ligging- en tydinligting op die SD -kaart stoor, en hierdie inligting kan verwerk word en 'n kaart van afstand en spoed met die rekenaarprogrammatuur teken.

Benodighede:

Hardeware:

  • MakePython ESP32 (met Wrover)
  • Maak Python A9G

MakePython A9G -bord is GPS/GPRS -uitbreidingskaart vir MakePython.

  • Battery
  • Mikro USB kabel

Sagteware:

  • Python 3
  • uPyCraft_v1.1

Stap 1: verbinding

Verbinding
Verbinding
Verbinding
Verbinding

Verbind twee borde volgens die penne. Die module kan aangedryf word deur 'n battery of 'n mikro -USB -kabel.

Stap 2: sagteware op 'n rekenaar

Sagteware op 'n rekenaar
Sagteware op 'n rekenaar
Sagteware op 'n rekenaar
Sagteware op 'n rekenaar

Python3:

  • U kan dit hier aflaai: Python3. Kies die weergawe 3.8.5, laai dit af en installeer dit.
  • Die keuse van 'Voeg Python 3.8 by PATH' moet tydens die installasieproses nagegaan word, soos in figuur 1.
  • As die biblioteek wat deur die program gebruik word nie geïnstalleer is nie, sal die program vra wanneer dit aan die gang is. U kan die volgende opdrag in cmd.exe uitvoer om biblioteke te installeer, soos figuur 2.

pip install xxx // xxx is biblioteeknaam

pip verwyder xxx // xxx is biblioteeknaam pip lys // druk geïnstalleerde biblioteke

Kode:

  • U kan die python -lêer hier kry: Code. Die python-lêer is “/Project_Gps-Trace-Analysis-master/Google_trace.py”.
  • Teken 'n roete op die kaart.

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 [breedte - 1], lon_list [breedte - 1], kleur = 'rooi') gmap.draw ("./ map -trace.html")

Teken grafieke van spoed teenoor tyd, afstand teenoor tyd

subplot (2, 1, 1)

plt.plot (time_list [0: -1], spoed) plt.title ("Gemiddelde snelheid:" + 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 ("Tyd") plt.ylabel ("Afstand (m)") plt.draw () plt.pause (0) slaag

Stap 3: Firmware oor ESP32

Firmware oor ESP32
Firmware oor ESP32
Firmware oor ESP32
Firmware oor ESP32

uPyCraft_v1.1

  • U kan dit hier aflaai: uPyCraft.
  • Koppel die kaart met 'n USB -kabel aan die rekenaar. Maak uPyCraft_v1.1 oop, kies die gereedskap: "Tool> board> esp32" en "Tools> port> com*", klik op die gekoppelde knoppie regs.
  • As die verbinding nie slaag nie, word die aanwysing vertoon as "maak die reeksfout oop, probeer asseblief weer". U moet die firmware opdateer om verbindings suksesvol te belowe. Die skakel vir die aflaai van die firmware is LINK. Open "Tools> BurnFirmware", stel die parameter in figuur 3 en klik op OK.
  • Maak die Python -lêer oop en klik op die "DownloadAndRun" -knoppie regs. Die program is op die bord afgelaai; u kan dit sien in die menu "toestel" aan die linkerkant, soos in figuur 4.

Firmware en aflaai

U kan die firmware van hier af kry: Firmware.

Stel die verbinding met die SD-kaartmodule in die lêer: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# SD init

spi = SPI (1, baudrate = 400000, polariteit = 1, fase = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Verseker regter baudrate lcd. teks ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Versoenbaar met PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD"))) druk ("SD OK") lcd.text ('SPI OK', 0, 16)

Stel die verbinding met die A9G-module in die lêer: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# A9G oop

A9G_RESET_PIN = Speld (33, Pin. OUT) A9G_RESET_PIN.waarde (0) # stel pen op lae tyd in. Slaap (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.waarde (0) time.sleep (1) A9G_PW.waarde (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G open', 0, 0)

AT -opdrag vir die A9G -module

AT+GPS = 1 # 1: Skakel die GPS aan, 0: Skakel die GPS uit

AT+LOCATION = 2 #Kry die adresinligting van GPS, solank die GPS die satelliet kan sien voordat hy terugkeer, anders sal dit GPS terugstuur NIE NOU OP nie+GPSRD = 0 #Stop verslagdoening

Koppel die kaart met 'n USB-kabel aan die rekenaar en gebruik uPyCraft om alle lêers in die gids "/Project_Gps-Trace-Analysis-master/workspace" af te laai

Stap 4: Verwerking van inligting

Verwerking van inligting
Verwerking van inligting
  • Kopieer die TXT-lêer wat begin met "trace" op die SD-kaart in die gids "/Project_Gps-Trace-Analysis-master".
  • Maak die Python -lêer oop met die notaboek en verander die kode.

#Bestand wat u wil ontleed

trace_file_name = "./trace4.txt"