Taula de continguts:

Rastrejador GPS de bricolatge --- Aplicació Python: 5 passos (amb imatges)
Rastrejador GPS de bricolatge --- Aplicació Python: 5 passos (amb imatges)

Vídeo: Rastrejador GPS de bricolatge --- Aplicació Python: 5 passos (amb imatges)

Vídeo: Rastrejador GPS de bricolatge --- Aplicació Python: 5 passos (amb imatges)
Vídeo: Orbit Glasses - Find your glasses 2024, Desembre
Anonim
Rastrejador GPS de bricolatge --- Aplicació Python
Rastrejador GPS de bricolatge --- Aplicació Python

Vaig participar en un esdeveniment ciclista fa dues setmanes. Un cop acabat, volia comprovar la ruta i la velocitat que feia en aquell moment. Malauradament, no es va aconseguir. Ara faig servir ESP32 per fer un rastrejador GPS i la pròxima vegada em gravaré la meva ruta en bicicleta. El rastrejador GPS pot desar la informació d’ubicació i ubicació a la targeta SD i aquesta informació es pot processar i dibuixar un gràfic de distància i velocitat amb el programari del PC.

Subministraments:

Maquinari:

  • MakePython ESP32 (amb Wrover)
  • MakePython A9G

La placa MakePython A9G és una placa d’expansió GPS / GPRS per a MakePython.

  • Pila
  • Cable micro USB

Programari:

  • Python 3
  • uPyCraft_v1.1

Pas 1: connexió

Connexió
Connexió
Connexió
Connexió

Connecteu dues taules segons els pins. El mòdul es pot alimentar amb bateria o cable micro USB.

Pas 2: programari a l'ordinador

Programari a PC
Programari a PC
Programari a PC
Programari a PC

Python3:

  • Podeu descarregar-lo des d’aquí: Python3. Trieu la versió 3.8.5, descarregueu-la i instal·leu-la.
  • La selecció "Afegeix Python 3.8 a PATH" s'ha de comprovar durant el procés d'instal·lació, tal com es mostra a la figura 1.
  • Si la biblioteca que utilitza el programa no està instal·lada, el programa us demanarà quan s’executi. Podeu executar l'ordre següent a cmd.exe per instal·lar biblioteques, tal com es mostra a la figura 2.

pip install xxx // xxx és el nom de la biblioteca

pip uninstall xxx // xxx és el nom de la llista pip list // imprimeix les biblioteques instal·lades

Codi:

  • Podeu obtenir el fitxer python des d’aquí: Code. El fitxer python és "/Project_Gps-Trace-Analysis-master/Google_trace.py".
  • Dibuixa una ruta al mapa.

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

Dibuixa gràfics de velocitat vs temps, distància vs. temps

subtrama plt (2, 1, 1)

plt.plot (time_list [0: -1], velocitat) plt.title ("Velocitat mitjana:" + str (avg_speed)) # plt.xlabel ("Temps") plt.ylabel ("Velocitat (m / s)") plt.subplot (2, 1, 2) plt.plot (time_list [0: -1], total_distance) plt.title ("Distància total:" + str (round (total_distance [- 1], 2))) plt.xlabel ("Time") plt.ylabel ("Distance (m)") plt.draw () plt.pause (0) pass

Pas 3: Firmware sobre ESP32

Firmware Quant a ESP32
Firmware Quant a ESP32
Firmware Quant a ESP32
Firmware Quant a ESP32

uPyCraft_v1.1

  • Podeu descarregar-lo des d’aquí: uPyCraft.
  • Connecteu la placa al PC mitjançant un cable USB. Obriu uPyCraft_v1.1, seleccioneu les eines: "Eina> tauler> esp32" i "Eines> port> com *", feu clic al botó connectat de la dreta.
  • Si la connexió no funciona, la sol·licitud es mostrarà com a "obre l'error de sèrie, torneu-ho a provar". Cal actualitzar el firmware per prometre connexions amb èxit. L’enllaç de descàrrega del firmware és LINK. Obriu "Eines> BurnFirmware", configureu el paràmetre com es mostra a la figura 3 i feu clic a D'acord.
  • Obriu el fitxer Python i feu clic al botó "DownloadAndRun" a la dreta. El programa s’ha descarregat al tauler, el podeu veure al menú “dispositiu” de l’esquerra, com es mostra a la figura 4.

Firmware i descàrrega

Podeu obtenir el firmware des d’aquí: Firmware.

Configureu la connexió amb el mòdul de la targeta SD al fitxer: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# SD init

spi = SPI (1, velocitat de transmissió = 400000, polaritat = 1, fase = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Assegureu la velocitat de transmissió correcta lcd. text ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Compatible amb PCB vfs = os. VfsFat (sd) os.mount (vfs, "/ SD") random.seed (len (os.listdir ("/ SD"))) print ("SD OK") lcd.text ('SPI OK', 0, 16)

Configureu la connexió amb el mòdul A9G al fitxer: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# A9G obert

A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # estableix el pin a low time.sleep (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_.value (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G obert', 0, 0)

Comanda AT per al mòdul A9G

AT + GPS = 1 # 1: activeu el GPS, 0: apagueu el GPS

AT + LOCATION = 2 # Obtén la informació de l'adreça del GPS, sempre que el GPS pugui veure el satèl·lit abans de tornar, en cas contrari retornarà el GPS NO FIXAR-SE ARA A + GPSRD = 0 # Deixar d'informes

Connecteu la placa al PC mitjançant un cable USB i utilitzeu uPyCraft per descarregar tots els fitxers de la carpeta “/ Project_Gps-Trace-Analysis-master / workspace”

Pas 4: processament de la informació

Tractament de la informació
Tractament de la informació
  • Copieu el fitxer TXT començant per "trace" a la targeta SD a la carpeta “/ Project_Gps-Trace-Analysis-master”.
  • Obriu el fitxer Python amb el bloc de notes i canvieu el codi.

#Fitxer que voleu analitzar

trace_file_name = "./trace4.txt"