Πίνακας περιεχομένων:
- Βήμα 1: Σύνδεση
- Βήμα 2: Λογισμικό στον υπολογιστή
- Βήμα 3: Firmware About ESP32
- Βήμα 4: Επεξεργασία πληροφοριών
Βίντεο: DIY GPS Tracker --- Εφαρμογή Python: 5 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:31
Συμμετείχα σε μια ποδηλατική εκδήλωση πριν από δύο εβδομάδες. Αφού τελείωσα, ήθελα να ελέγξω τη διαδρομή και την ταχύτητα που οδηγούσα εκείνη τη στιγμή. Δυστυχώς, δεν επιτεύχθηκε. Τώρα χρησιμοποιώ το ESP32 για να φτιάξω ένα tracker GPS και θα το χρησιμοποιήσω για να καταγράψω την ποδηλατική διαδρομή μου την επόμενη φορά. Το GPS tracker μπορεί να αποθηκεύσει τις πληροφορίες τοποθεσίας και ώρας στην κάρτα SD και αυτές οι πληροφορίες μπορούν να υποβληθούν σε επεξεργασία και να σχεδιάσουν ένα διάγραμμα απόστασης και ταχύτητας με το λογισμικό του υπολογιστή.
Προμήθειες:
Σκεύη, εξαρτήματα:
- MakePython ESP32 (με Wrover
- MakePython A9G
Ο πίνακας MakePython A9G είναι πίνακας επέκτασης GPS/GPRS για το MakePython.
- Μπαταρία
- Καλώδιο Micro USB
Λογισμικό:
- Python 3
- uPyCraft_v1.1
Βήμα 1: Σύνδεση
Συνδέστε δύο σανίδες σύμφωνα με τις ακίδες. Η μονάδα μπορεί να τροφοδοτηθεί με μπαταρία ή καλώδιο Micro USB.
Βήμα 2: Λογισμικό στον υπολογιστή
Python3:
- Μπορείτε να το κατεβάσετε από εδώ: Python3. Επιλέξτε την έκδοση 3.8.5, κατεβάστε και εγκαταστήστε την.
- Η επιλογή "Προσθήκη Python 3.8 στο PATH" πρέπει να ελεγχθεί κατά τη διαδικασία εγκατάστασης, όπως στο Σχήμα 1.
- Εάν η βιβλιοθήκη που χρησιμοποιείται από το πρόγραμμα δεν είναι εγκατεστημένη, το πρόγραμμα θα σας ζητήσει όταν λειτουργεί. Μπορείτε να εκτελέσετε την ακόλουθη εντολή στο cmd.exe για να εγκαταστήσετε βιβλιοθήκες, όπως στο Σχήμα 2.
pip install xxx // xxx είναι το όνομα της βιβλιοθήκης
pip απεγκατάσταση xxx // xxx είναι όνομα βιβλιοθήκης pip λίστα // εκτύπωση εγκατεστημένων βιβλιοθηκών
Κώδικας:
- Μπορείτε να λάβετε το αρχείο python από εδώ: Κωδικός. Το αρχείο python είναι "/Project_Gps-Trace-Analysis-master/Google_trace.py".
- Σχεδιάστε μια διαδρομή στο χάρτη.
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")
Σχεδιάστε γραφήματα ταχύτητας έναντι χρόνου, απόστασης έναντι χρόνου
plt.subplot (2, 1, 1)
plt.plot (time_list [0: -1], speed) plt.title ("Μέση ταχύτητα:" + 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 ("Time") plt.ylabel ("Distance (m)") plt.draw () plt.pause (0) pass
Βήμα 3: Firmware About ESP32
uPyCraft_v1.1
- Μπορείτε να το κατεβάσετε από εδώ: uPyCraft.
- Συνδέστε την πλακέτα στον υπολογιστή μέσω καλωδίου USB. Ανοίξτε το uPyCraft_v1.1, επιλέξτε τα εργαλεία:”Εργαλείο> πίνακας> esp32” και “Εργαλεία> θύρα> com*”, κάντε κλικ στο συνδεδεμένο κουμπί στα δεξιά.
- Εάν η σύνδεση δεν είναι επιτυχής, η προτροπή θα εμφανιστεί ως "ανοίξτε το σειριακό σφάλμα, δοκιμάστε ξανά". Πρέπει να ενημερώσετε το υλικολογισμικό για να υποσχεθείτε επιτυχώς τις συνδέσεις. Ο σύνδεσμος λήψης υλικολογισμικού είναι LINK. Ανοίξτε το "Εργαλεία> BurnFirmware", ορίστε την παράμετρο, όπως το Σχήμα 3 και κάντε κλικ στο OK.
- Ανοίξτε το αρχείο Python και κάντε κλικ στο κουμπί "DownloadAndRun" στα δεξιά. Το πρόγραμμα έχει μεταφορτωθεί στον πίνακα, μπορείτε να το δείτε στο μενού "συσκευή" στα αριστερά, όπως στο σχήμα 4.
Υλικολογισμικό και Λήψη
Μπορείτε να αποκτήσετε το υλικολογισμικό από εδώ: Firmware.
Ορίστε τη σύνδεση με τη μονάδα κάρτας SD στο αρχείο: "/Project_Gps-Trace-Analysis-master/workspace/test.py"
# SD init
spi = SPI (1, baudrate = 400000, πολικότητα = 1, φάση = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Βεβαιωθείτε ότι το σωστό baudrate lcd κείμενο ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Συμβατό με PCB vfs = os. VfsFat (sd) os.mount (vfs, "/SD") random.seed (len (os.listdir ("/SD"))) print ("SD OK") lcd.text ("SPI OK", 0, 16)
Ορίστε τη σύνδεση με τη μονάδα A9G στο αρχείο: "/Project_Gps-Trace-Analysis-master/workspace/test.py"
# A9G ανοιχτό
A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # set pin in low time.sleep (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_P.αξία (1) χρόνος
AT εντολή για την ενότητα A9G
AT+GPS = 1 # 1: Ενεργοποιήστε το GPS, 0: Απενεργοποιήστε το GPS
AT+LOCATION = 2 #Λάβετε τις πληροφορίες διεύθυνσης του GPS, εφόσον το GPS μπορεί να δει τον δορυφόρο πριν επιστρέψει, αλλιώς θα επιστρέψει GPS ΟΧΙ ΔΙΟΡΘΩΣΗ ΤΩΡΑ+GPSRD = 0 #Διακοπή αναφοράς
Συνδέστε την πλακέτα στον υπολογιστή μέσω καλωδίου USB και χρησιμοποιήστε το uPyCraft για λήψη όλων των αρχείων στο φάκελο "/Project_Gps-Trace-Analysis-master/workspace"
Βήμα 4: Επεξεργασία πληροφοριών
- Αντιγράψτε το αρχείο TXT που ξεκινά με "ίχνος" στην κάρτα SD στο φάκελο "/Project_Gps-Trace-Analysis-master".
- Ανοίξτε το αρχείο Python με το σημειωματάριο και αλλάξτε τον κωδικό.
#Αρχείο που θέλετε ανάλυση
trace_file_name = "./trace4.txt"