Turinys:
- 1 žingsnis: prijungimas
- 2 veiksmas: programinė įranga kompiuteryje
- 3 veiksmas: programinė įranga apie ESP32
- 4 žingsnis: informacijos apdorojimas
Video: „Pasidaryk pats“GPS sekiklis --- „Python“programa: 5 žingsniai (su paveikslėliais)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Prieš dvi savaites dalyvavau dviračių renginyje. Baigęs norėjau patikrinti maršrutą ir greitį, kuriuo tuo metu važiavau. Deja, to pasiekti nepavyko. Dabar naudoju ESP32 GPS sekimo įrankiui kurti ir kitą kartą imsiuosi jo įrašyti savo dviračių maršrutą. GPS sekimo priemonė gali išsaugoti vietos ir laiko informaciją SD kortelėje, o šią informaciją galima apdoroti ir nubrėžti atstumo ir greičio diagramą naudojant kompiuterio programinę įrangą.
Priedai:
Techninė įranga:
- „MakePython ESP32“su „Wrover“
- „MakePython A9G“
„MakePython A9G“plokštė yra „MakePython“GPS/GPRS išplėtimo plokštė.
- Baterija
- Mikro USB kabelis
Programinė įranga:
- Python 3
- uPyCraft_v1.1
1 žingsnis: prijungimas
Prijunkite dvi plokštes pagal kaiščius. Modulis gali būti maitinamas iš baterijos arba „Micro USB“kabelio.
2 veiksmas: programinė įranga kompiuteryje
Python3:
- Galite atsisiųsti iš čia: Python3. Pasirinkite 3.8.5 versiją, atsisiųskite ir įdiekite.
- Diegimo metu turi būti patikrinta parinktis „Pridėti Python 3.8 prie PATH“, kaip parodyta 1 paveiksle.
- Jei programoje naudojama biblioteka neįdiegta, programa paragins ją paleisti. Norėdami įdiegti bibliotekas, galite paleisti šią komandą cmd.exe, kaip parodyta 2 paveiksle.
pip install xxx // xxx yra bibliotekos pavadinimas
pip uninstall xxx // xxx yra bibliotekos pavadinimas pip list // spausdinti įdiegtas bibliotekas
Kodas:
- Python failą galite gauti čia: Kodas. „Python“failas yra „/Project_Gps-Trace-Analysis-master/Google_trace.py“.
- Nubrėžkite maršrutą žemėlapyje.
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 [plotis - 1], lon_list [plotis - 1], spalva = 'raudona') gmap.draw ("./ map -trace.html")
Nubraižykite greičio ir laiko grafikus, atstumą ir laiką
plt. (2, 1, 1)
plt.plot (laiko sąrašas [0: -1], greitis) plt.title ("Vidutinis greitis:" + str (vid. greitis)) # plt.xlabel ("Laikas") plt.ylabel ("Greitis (m/s)") plt.subplot (2, 1, 2) plt.plot (time_list [0: -1], total_distance) plt.title ("Bendras atstumas:" + str (apvalus (total_distance [- 1], 2))) plt.xlabel ("Laikas") plt.ylabel ("Atstumas (m)") plt.draw () plt.pause (0) praeiti
3 veiksmas: programinė įranga apie ESP32
uPyCraft_v1.1
- Galite atsisiųsti iš čia: uPyCraft.
- Prijunkite plokštę prie kompiuterio USB kabeliu. Atidarykite „uPyCraft_v1.1“, pasirinkite įrankius: „Įrankiai> lenta> esp32“ir „Įrankiai> prievadas> com*“, spustelėkite prijungtą mygtuką dešinėje.
- Jei ryšys nepavyksta, raginimas bus rodomas kaip „atidaryti serijos klaidą, bandykite dar kartą“. Norėdami sėkmingai pažadėti ryšius, turite atnaujinti programinę -aparatinę įrangą. Programinės aparatinės įrangos atsisiuntimo nuoroda yra LINK. Atidarykite „Įrankiai>„ BurnFirmware “, nustatykite parametrą, kaip parodyta 3 paveiksle, ir spustelėkite Gerai.
- Atidarykite „Python“failą ir dešinėje spustelėkite mygtuką „DownloadAndRun“. Programa buvo atsisiųsta į lentą, ją galite pamatyti kairėje esančiame meniu „prietaisas“, kaip parodyta 4 paveiksle.
Firmware ir atsisiųsti
Firmware galite gauti čia: Firmware.
Nustatykite ryšį su SD kortelės moduliu faile: „/Project_Gps-Trace-Analysis-master/workspace/test.py“
# SD iniciatyva
spi = SPI (1, baudrate = 400000, poliškumas = 1, fazė = 0, sck = kaištis (14), mosi = kaištis (13), miso = kaištis (12)) spi.init () # Užtikrinkite teisingą baudos spartą LCD. text ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Suderinamas su PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD")))) print ("SD OK") lcd.text ('SPI OK', 0, 16)
Nustatykite ryšį su A9G moduliu faile: „/Project_Gps-Trace-Analysis-master/workspace/test.py“
# A9G atidarytas
A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # nustatykite kaištį į žemą laiką.sleep (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_PW.value (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G open', 0, 0)
AT komanda A9G moduliui
AT+GPS = 1 # 1: įjunkite GPS, 0: išjunkite GPS
AT+LOCATION = 2 #Gaukite GPS adreso informaciją, kol GPS gali matyti palydovą prieš grįždamas, priešingu atveju jis grąžins GPS NETIKSIAU DABAR AT+GPSRD = 0 #Nustokite pranešti
Prijunkite plokštę prie kompiuterio USB kabeliu ir naudokite „uPyCraft“, kad atsisiųstumėte visus failus į aplanką „/Project_Gps-Trace-Analysis-master/workspace“
4 žingsnis: informacijos apdorojimas
- Nukopijuokite TXT failą, prasidedantį „pėdsaku“SD kortelėje, į aplanką „/Project_Gps-Trace-Analysis-master“.
- Atidarykite „Python“failą naudodami bloknotą ir pakeiskite kodą.
#Failas, kurį norite analizuoti
pėdsakų_failo_pavadinimas = "./trase4.txt"