תוכן עניינים:

גשש GPS DIY --- יישום פייתון: 5 שלבים (עם תמונות)
גשש GPS DIY --- יישום פייתון: 5 שלבים (עם תמונות)

וִידֵאוֹ: גשש GPS DIY --- יישום פייתון: 5 שלבים (עם תמונות)

וִידֵאוֹ: גשש GPS DIY --- יישום פייתון: 5 שלבים (עם תמונות)
וִידֵאוֹ: How To Create Location Tracking App in MIT App Inventor 2024, נוֹבֶמבֶּר
Anonim
גשש GPS DIY --- יישום פייתון
גשש GPS DIY --- יישום פייתון

השתתפתי באירוע רכיבה על אופניים לפני שבועיים. לאחר סיום, רציתי לבדוק את המסלול ואת המהירות שבה רכבתי באותו זמן. לרוע המזל, זה לא הושג. עכשיו אני משתמש ב- ESP32 כדי ליצור גשש GPS, ואקח אותו להקליט את מסלול הרכיבה שלי בפעם הבאה. גשש ה- GPS יכול לשמור את פרטי המיקום והזמן בכרטיס ה- SD, וניתן לעבד מידע זה ולצייר תרשים של מרחק ומהירות בעזרת תוכנת המחשב האישי.

אספקה:

חוּמרָה:

  • MakePython ESP32 (עם Wrover)
  • MakePython A9G

לוח MakePython A9G הוא לוח הרחבה של GPS/GPRS עבור MakePython.

  • סוֹלְלָה
  • כבל מיקרו USB

תוֹכנָה:

  • פייתון 3
  • uPyCraft_v1.1

שלב 1: חיבור

חיבור
חיבור
חיבור
חיבור

חבר שני לוחות לפי הסיכות. המודול יכול להיות מופעל באמצעות סוללה או כבל מיקרו USB.

שלב 2: תוכנה במחשב

תוכנה במחשב
תוכנה במחשב
תוכנה במחשב
תוכנה במחשב

Python3:

  • אתה יכול להוריד אותו מכאן: Python3. בחר את גרסת 3.8.5, הורד והתקן אותה.
  • בחירת "הוסף Python 3.8 ל- PATH" חייבת להיבדק במהלך תהליך ההתקנה, כמו איור 1.
  • אם הספרייה המשמשת את התוכנית אינה מותקנת, התוכנית תבקש כאשר היא פועלת. אתה יכול להריץ את הפקודה הבאה ב- cmd.exe כדי להתקין ספריות, כמו איור 2.

pip install xxx // xxx הוא שם הספרייה

pip להסיר xxx // xxx היא רשימת pip של שם הספרייה // להדפיס ספריות מותקנות

קוד:

  • אתה יכול לקבל את קובץ הפייתון מכאן: Code. קובץ ה- 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")

צייר גרפים של מהירות מול זמן, מרחק מול זמן

חלקת משנה (2, 1, 1)

plt.plot (time_list [0: -1], מהירות) plt.title ("מהירות ממוצעת:" + str (avg_speed)) # plt.xlabel ("זמן") plt.ylabel ("מהירות (m/s)") plt.splplot (2, 1, 2) plt.plot (time_list [0: -1], total_distance) plt.title ("מרחק כולל:" + str (עגול (total_distance [- 1], 2))) plt.xlabel ("זמן") plt.ylabel ("מרחק (m)") plt.draw () plt.pause (0) לעבור

שלב 3: קושחה אודות ESP32

קושחה אודות ESP32
קושחה אודות ESP32
קושחה אודות ESP32
קושחה אודות ESP32

uPyCraft_v1.1

  • אתה יכול להוריד אותו מכאן: uPyCraft.
  • חבר את הלוח למחשב באמצעות כבל USB. פתח את uPyCraft_v1.1, בחר את הכלים: "כלי> לוח> esp32" ו- "כלים> יציאה> com*", לחץ על הלחצן המחובר מימין.
  • אם החיבור אינו מוצלח, ההנחיה תוצג כ"פתח את השגיאה הטורית, אנא נסה שוב ". עליך לעדכן את הקושחה כדי להבטיח חיבורים בהצלחה. הקישור להורדת הקושחה הוא LINK. פתח את "כלים> BurnFirmware", הגדר את הפרמטר כאיור 3 ולחץ על אישור.
  • פתח את קובץ ה- Python ולחץ על הלחצן "DownloadAndRun" בצד ימין. התוכנית הורדה ללוח, אתה יכול לראות אותה בתפריט "מכשיר" בצד שמאל, כמו איור 4.

קושחה והורדה

אתה יכול לקבל את הקושחה מכאן: קושחה.

הגדר את החיבור עם מודול כרטיס 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. text ('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"))) הדפס ("SD אישור") 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 to low time.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 פתוח', 0, 0)

פקודת AT עבור מודול A9G

AT+GPS = 1 # 1: הפעל את ה- GPS, 0: כבה את ה- GPS

AT+LOCATION = 2 #קבל את פרטי הכתובת של ה- GPS, כל עוד ה- GPS יכול לראות את הלוויין לפני החזרה, אחרת הוא יחזיר את ה- GPS NOT FIX NOW AT+GPSRD = 0 #עצור דיווח

חבר את הלוח למחשב באמצעות כבל USB והשתמש ב- uPyCraft כדי להוריד את כל הקבצים בתיקייה "/Project_Gps-Trace-Analysis-master/workspace"

שלב 4: עיבוד מידע

מעבד מידע
מעבד מידע
  • העתק את קובץ ה- TXT המתחיל ב- "trace" בכרטיס ה- SD לתיקייה "/Project_Gps-Trace-Analysis-master".
  • פתח את קובץ ה- Python עם פנקס הרשימות ושנה את הקוד.

#קובץ שאתה רוצה ניתוח

trace_file_name = "./trace4.txt"