Orodha ya maudhui:

DIY GPS Tracker --- Maombi ya Python: Hatua 5 (na Picha)
DIY GPS Tracker --- Maombi ya Python: Hatua 5 (na Picha)

Video: DIY GPS Tracker --- Maombi ya Python: Hatua 5 (na Picha)

Video: DIY GPS Tracker --- Maombi ya Python: Hatua 5 (na Picha)
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Novemba
Anonim
DIY GPS Tracker --- Maombi ya Python
DIY GPS Tracker --- Maombi ya Python

Nilishiriki katika hafla ya baiskeli wiki mbili zilizopita. Baada ya kumaliza, nilitaka kuangalia njia na kasi niliyopanda wakati huo. Kwa bahati mbaya, haikufanikiwa. Sasa ninatumia ESP32 kutengeneza tracker ya GPS, na nitaichukua ili kurekodi njia yangu ya baiskeli wakati mwingine. Kifuatiliaji cha GPS kinaweza kuhifadhi maelezo ya mahali na wakati kwenye kadi ya SD, na habari hii inaweza kusindika na kuchora chati ya umbali na kasi na programu ya PC.

Ugavi:

Vifaa:

  • MakePython ESP32 (na Wrover)
  • MakePython A9G

Bodi ya MakePython A9G ni bodi ya upanuzi wa GPS / GPRS ya MakePython.

  • Betri
  • Cable ndogo ya USB

Programu:

  • Python 3
  • uPyCraft_v1.1

Hatua ya 1: Uunganisho

Uhusiano
Uhusiano
Uhusiano
Uhusiano

Unganisha bodi mbili kulingana na pini. Moduli inaweza kutumiwa na betri au kebo ndogo ya USB.

Hatua ya 2: Programu kwenye PC

Programu kwenye PC
Programu kwenye PC
Programu kwenye PC
Programu kwenye PC

Python3:

  • Unaweza kuipakua kutoka hapa: Python3. Chagua toleo la 3.8.5, pakua na usakinishe.
  • Chaguo la "Ongeza Python 3.8 kwa PATH" lazima lichunguzwe wakati wa mchakato wa usanikishaji, kama Kielelezo 1.
  • Ikiwa maktaba inayotumiwa na programu haijasakinishwa, programu hiyo itahimiza wakati inafanya kazi. Unaweza kutekeleza amri ifuatayo katika cmd.exe kusanikisha maktaba, kama Kielelezo 2.

pip install xxx // xxx ni jina la maktaba

pip ondoa xxx // xxx ni jina la maktaba orodha ya bomba // kuchapisha maktaba zilizowekwa

Nambari:

  • Unaweza kupata faili ya chatu kutoka hapa: Msimbo. Faili ya chatu ni "/Project_Gps-Trace-Analysis-master/Google_trace.py".
  • Chora njia kwenye ramani.

def kuunda_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], rangi = 'bluu') gmap.marker (lat_list [upana - 1], lon_list [upana - 1], rangi = 'nyekundu') gmap.draw ("./ map-trace.html")

Chora grafu za kasi dhidi ya wakati, umbali dhidi ya wakati

njama ya plt (2, 1, 1)

plt.plot (orodha_ya wakati [0: -1], kasi) plt.title ("Kasi ya Wastani:" + str (avg_speed)) # plt.xlabel ("Wakati") plt.subplot (2, 1, 2) plt.plot (orodha ya muda [0: -1], jumla_distance) plt.title ("Jumla ya Umbali:" + str (round (total_distance [- 1], 2))) plt.label ("Wakati") plt.ylabel ("Umbali (m)") plt.draw () plt.pause (0) kupita

Hatua ya 3: Firmware Kuhusu ESP32

Programu dhibiti kuhusu ESP32
Programu dhibiti kuhusu ESP32
Programu dhibiti kuhusu ESP32
Programu dhibiti kuhusu ESP32

uPyCraft_v1.1

  • Unaweza kuipakua kutoka hapa: uPyCraft.
  • Unganisha bodi kwenye PC kwa kebo ya USB. Fungua uPyCraft_v1.1, chagua zana: "Zana> bodi> esp32" na "Zana> bandari> com *", bonyeza kitufe kilichounganishwa upande wa kulia.
  • Ikiwa muunganisho haukufaulu, kidokezo kitaonyeshwa kama "fungua kosa la serial, tafadhali jaribu tena". Lazima usasishe firmware kuahidi unganisho kwa mafanikio. Kiungo cha kupakua firmware ni LINK. Fungua "Zana> BurnFirmware", weka parameter, kama Kielelezo 3, na bonyeza OK.
  • Fungua faili ya Python, na bonyeza kitufe cha "PakuaAndRun" upande wa kulia. Programu imepakuliwa kwenye ubao, unaweza kuiona kwenye menyu ya "kifaa" upande wa kushoto, kama Kielelezo 4.

Programu dhibiti na Pakua

Unaweza kupata firmware kutoka hapa: Firmware.

Weka unganisho na moduli ya kadi ya SD kwenye faili: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# Init ya SD

spi = SPI (1, baudrate = 400000, polarity = 1, phase = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Hakikisha baudrate lcd ya kulia. maandishi ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Sambamba na PCB vfs = os. VfsFat (sd) os.mount (vfs, "/ SD") random.seed (len (os.listdir ("/ SD"))) chapa ("SD OK") lcd.text ('SPI OK', 0, 16)

Weka unganisho na moduli ya A9G kwenye faili: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# A9G wazi

A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.thamani (0) # kuweka pini kwa wakati wa chini. Kulala (1) A9G_PWR_KEY = Pini (27, Pin. OUT) A9G_PWR_KEY.thamani (0) wakati. Kulala (1) A9G_PWR_KEY Thamani (1) wakati. kulala (1) lcd kujaza (0) lcd.text ('A9G open', 0, 0)

Amri ya AT ya moduli ya A9G

AT + GPS = 1 # 1: Washa GPS, 0: Zima GPS

MAHALI + 2 = Pata habari ya anwani ya GPS, maadamu GPS inaweza kuona setilaiti kabla ya kurudi, vinginevyo itarudi GPS SIYO REKEBISHA SASA KWA + GPSRD = 0 #Acha kuripoti

Unganisha bodi kwenye PC kwa kebo ya USB, na utumie uPyCraft kupakua faili zote kwenye folda "/ Project_Gps-Trace-Analysis-master / workspace"

Hatua ya 4: Inasindika Habari

Inasindika Habari
Inasindika Habari
  • Nakili faili ya TXT ukianza na "trace" kwenye kadi ya SD kwenye folda "/ Project_Gps-Trace-Analysis-master".
  • Fungua faili ya Python na kijitabu na ubadilishe nambari.

#File ambayo unataka uchambuzi

trace_file_name = "./trace4.txt"

Tumia laini ya amri kuendesha faili ya Python, utapata takwimu ya kasi na umbali, kama Kielelezo 5

Hatua ya 5: Wacha tujaribu