Table des matières:

DIY GPS Tracker --- Application Python : 5 étapes (avec photos)
DIY GPS Tracker --- Application Python : 5 étapes (avec photos)

Vidéo: DIY GPS Tracker --- Application Python : 5 étapes (avec photos)

Vidéo: DIY GPS Tracker --- Application Python : 5 étapes (avec photos)
Vidéo: Python Project | How to track someone location with phone number - Google Map 2024, Décembre
Anonim
Traqueur GPS DIY --- Application Python
Traqueur GPS DIY --- Application Python

J'ai participé à une épreuve cycliste il y a deux semaines. Après avoir terminé, je voulais vérifier l'itinéraire et la vitesse à laquelle j'ai roulé à ce moment-là. Malheureusement, il n'a pas été atteint. Maintenant, j'utilise ESP32 pour faire un tracker GPS, et je l'utiliserai pour enregistrer mon itinéraire à vélo la prochaine fois. Le traceur GPS peut enregistrer les informations de localisation et d'heure sur la carte SD, et ces informations peuvent être traitées et dessiner un tableau de distance et de vitesse avec le logiciel PC.

Fournitures:

Matériel:

  • MakePython ESP32 avec Wrover)
  • MarquePython A9G

La carte MakePython A9G est une carte d'extension GPS/GPRS pour MakePython.

  • Batterie
  • Câble micro-USB

Logiciel:

  • Python 3
  • uPyCraft_v1.1

Étape 1: Connexion

Lien
Lien
Lien
Lien

Connectez deux cartes en fonction des broches. Le module peut être alimenté par batterie ou câble Micro USB.

Étape 2: Logiciel sur PC

Logiciel sur PC
Logiciel sur PC
Logiciel sur PC
Logiciel sur PC

Python3:

  • Vous pouvez le télécharger ici: Python3. Choisissez la version 3.8.5, téléchargez-la et installez-la.
  • La sélection « Ajouter Python 3.8 au CHEMIN » doit être cochée pendant le processus d'installation, comme illustré à la figure 1.
  • Si la bibliothèque utilisée par le programme n'est pas installée, le programme vous le demandera lors de son exécution. Vous pouvez exécuter la commande suivante dans cmd.exe pour installer les bibliothèques, comme la figure 2.

pip install xxx // xxx est le nom de la bibliothèque

pip uninstall xxx // xxx est le nom de la bibliothèque pip list // imprime les bibliothèques installées

Code:

  • Vous pouvez obtenir le fichier python à partir d'ici: Code. Le fichier python est "/Project_Gps-Trace-Analysis-master/Google_trace.py".
  • Tracez un itinéraire sur la carte.

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")

Tracez des graphiques de la vitesse par rapport au temps, de la distance par rapport au temps

plt.sous-intrigue(2, 1, 1)

plt.plot(time_list[0:-1], vitesse) plt.title("Vitesse moyenne:" + str(avg_speed)) # plt.xlabel("Time") plt.ylabel("Vitesse(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("Heure") plt.ylabel("Distance(m)") plt.draw() plt.pause(0) pass

Étape 3: Firmware À propos d'ESP32

Micrologiciel À propos de ESP32
Micrologiciel À propos de ESP32
Micrologiciel À propos de ESP32
Micrologiciel À propos de ESP32

uPyCraft_v1.1

  • Vous pouvez le télécharger ici: uPyCraft.
  • Connectez la carte au PC par câble USB. Ouvrez uPyCraft_v1.1, sélectionnez les outils: « Tool > board > esp32 » et « Tools > port > com* », cliquez sur le bouton connecté à droite.
  • Si la connexion échoue, l'invite s'affichera sous la forme « ouvrez l'erreur série, veuillez réessayer ». Vous devez mettre à jour le firmware pour promettre des connexions réussies. Le lien de téléchargement du micrologiciel est LINK. Ouvrez « Outils > BurnFirmware », définissez le paramètre, comme la figure 3, et cliquez sur OK.
  • Ouvrez le fichier Python et cliquez sur le bouton "DownloadAndRun" à droite. Le programme a été téléchargé sur la carte, vous pouvez le voir dans le menu « appareil » sur la gauche, comme sur la figure 4.

Micrologiciel et téléchargement

Vous pouvez obtenir le firmware à partir d'ici: Firmware.

Configurez la connexion avec le module de carte SD dans le fichier: « /Project_Gps-Trace-Analysis-master/workspace/test.py »

# initialisation SD

spi = SPI(1, baudrate=400000, polarity=1, phase=0, sck=Pin(14), mosi=Pin(13), miso=Pin(12)) spi.init() # Assurez-vous de la bonne vitesse de transmission lcd. text('SPI OK', 0, 8) sd = sdcard. SDCard(spi, Pin(32)) # Compatible avec PCB vfs = os. VfsFat(sd) os.mount(vfs, "/SD") random.seed (len(os.listdir("/SD"))) print("SD OK") lcd.text('SPI OK', 0, 16)

Paramétrez la connexion avec le module A9G dans le fichier: « /Project_Gps-Trace-Analysis-master/workspace/test.py »

# A9G ouvert

A9G_RESET_PIN = Pin(33, Pin. OUT) A9G_RESET_PIN.value(0) # définir la broche sur time.sleep(1) A9G_PWR_KEY = Pin(27, Pin. OUT) A9G_PWR_KEY.value(0) time.sleep(1) A9G_PWR_KEY.value(1) time.sleep(1) lcd.fill(0) lcd.text('A9G ouvert', 0, 0)

Commande AT pour le module A9G

AT+GPS=1 # 1: allumer le GPS, 0: éteindre le GPS

AT+LOCATION=2 #Obtenir les informations d'adresse du GPS, tant que le GPS peut voir le satellite avant de revenir, sinon il renverra GPS NOT FIX NOW AT+GPSRD=0 #Arrêtez de signaler

Connectez la carte au PC via un câble USB et utilisez uPyCraft pour télécharger tous les fichiers dans le dossier "/Project_Gps-Trace-Analysis-master/workspace"

Étape 4: Traitement des informations

Traitement des informations
Traitement des informations
  • Copiez le fichier TXT commençant par "trace" dans la carte SD dans le dossier "/Project_Gps-Trace-Analysis-master".
  • Ouvrez le fichier Python avec le bloc-notes et modifiez le code.

#Fichier que vous souhaitez analyser

trace_file_name = "./trace4.txt"