ዝርዝር ሁኔታ:

DIY GPS Tracker --- Python Application: 5 ደረጃዎች (ከስዕሎች ጋር)
DIY GPS Tracker --- Python Application: 5 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: DIY GPS Tracker --- Python Application: 5 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: DIY GPS Tracker --- Python Application: 5 ደረጃዎች (ከስዕሎች ጋር)
ቪዲዮ: Video To Anime - Generate An EPIC Animation From Your Phone Recording By Using Stable Diffusion AI 2024, ሰኔ
Anonim
DIY GPS Tracker --- Python መተግበሪያ
DIY GPS Tracker --- Python መተግበሪያ

ከሁለት ሳምንት በፊት በብስክሌት ውድድር ላይ ተሳትፌአለሁ። ከጨረስኩ በኋላ መንገዱን እና በዚያን ጊዜ የሄድኩበትን ፍጥነት መፈተሽ ፈለግሁ። እንደ አለመታደል ሆኖ አልተሳካም። አሁን የጂፒኤስ መከታተያ ለመሥራት ESP32 ን እጠቀማለሁ ፣ እና በሚቀጥለው ጊዜ የብስክሌት መንገዴን ለመመዝገብ እወስደዋለሁ። የጂፒኤስ መከታተያው የአካባቢውን እና የሰዓት መረጃን ወደ ኤስዲ ካርድ ሊያድን ይችላል ፣ እና ይህ መረጃ ሊሠራ እና ከፒሲ ሶፍትዌር ጋር የርቀት እና የፍጥነት ገበታ ሊሳል ይችላል።

አቅርቦቶች

ሃርድዌር

  • MakePython ESP32 W with Wrover (
  • MakePython A9G

MakePython A9G ቦርድ ለሜፒፒቶን ጂፒኤስ/ጂአርፒኤስ የማስፋፊያ ሰሌዳ ነው።

  • ባትሪ
  • የማይክሮ ዩኤስቢ ገመድ

ሶፍትዌር

  • ፓይዘን 3
  • uPyCraft_v1.1

ደረጃ 1: ግንኙነት

ግንኙነት
ግንኙነት
ግንኙነት
ግንኙነት

በፒንቹ መሠረት ሁለት ሰሌዳዎችን ያገናኙ። ሞጁሉ በባትሪ ወይም በማይክሮ ዩኤስቢ ገመድ ሊሠራ ይችላል።

ደረጃ 2 ሶፍትዌር በፒሲ ላይ

በፒሲ ላይ ሶፍትዌር
በፒሲ ላይ ሶፍትዌር
ሶፍትዌር በፒሲ ላይ
ሶፍትዌር በፒሲ ላይ

Python3:

  • ከዚህ ማውረድ ይችላሉ Python3. 3.8.5 ስሪቱን ይምረጡ ፣ ያውርዱ እና ይጫኑት።
  • እንደ ስዕል 1 በመጫን ሂደቱ ወቅት “ፓይዘን 3.8 ን ወደ PATH ያክሉ” ምርጫው መፈተሽ አለበት።
  • በፕሮግራሙ ጥቅም ላይ የዋለው ቤተ -መጽሐፍት ካልተጫነ ፕሮግራሙ በሚሠራበት ጊዜ ይጠየቃል። እንደ ስእል 2 ቤተ -ፍርግሞችን ለመጫን የሚከተለውን ትዕዛዝ በ cmd.exe ውስጥ ማስኬድ ይችላሉ።

pip install xxx // xxx የቤተመጽሐፍት ስም ነው

pip ማራገፍ xxx // xxx የቤተመጽሐፍት ስም pip ዝርዝር // የተጫኑ ቤተ -መጻሕፍት ያትሙ

ኮድ ፦

  • የፓይዘን ፋይልን ከዚህ ማግኘት ይችላሉ -ኮድ። የፓይዘን ፋይል “/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] ፣ ቀለም = ‘ሰማያዊ’) gmap.marker (lat_list [ስፋት - 1] ፣ lon_list [ስፋት - 1] ፣ ቀለም = 'ቀይ') gmap.draw ("./ map -trace.html")

የጊዜን ፣ የፍጥነትን እና የጊዜን ፍጥነቶች ግራፎችን ይሳሉ።

plt.subplot (2, 1, 1)

plt.plot (የጊዜ_ዝርዝር [0: -1] ፣ ፍጥነት) plt.title ("አማካይ ፍጥነት" + str (avg_speed)) # plt.xlabel ("ጊዜ") plt.ylabel ("ፍጥነት (ሜ/ሰ))") plt.subplot (2 ፣ 1 ፣ 2) plt.plot (የጊዜ_ዝርዝር [0: -1] ፣ አጠቃላይ_ዳስትነት) plt.title (“ጠቅላላ ርቀት” + str (ዙር (ጠቅላላ_ርቀት [- 1] ፣ 2))) plt.xlabel ("ጊዜ") plt.ylabel ("ርቀት (ሜ)") plt.draw () plt.pause (0) ማለፍ

ደረጃ 3 - ስለ ESP32 የጽኑ ትዕዛዝ

Firmware ስለ ESP32
Firmware ስለ ESP32
Firmware ስለ ESP32
Firmware ስለ ESP32

uPyCraft_v1.1

  • ከዚህ ማውረድ ይችላሉ: uPyCraft.
  • በዩኤስቢ ገመድ ሰሌዳውን ከፒሲው ጋር ያገናኙ። UPyCraft_v1.1 ን ይክፈቱ ፣ መሣሪያዎቹን ይምረጡ - መሣሪያ> ሰሌዳ> esp32”እና“መሳሪያዎች> ወደብ> com*”፣ በቀኝ በኩል የተገናኘውን ቁልፍ ጠቅ ያድርጉ።
  • ግንኙነቱ ካልተሳካ ጥያቄው “ተከታታይ ስህተቱን ይክፈቱ ፣ እባክዎ እንደገና ይሞክሩ” ተብሎ ይታያል። ግንኙነቶችን በተሳካ ሁኔታ ቃል ለመግባት firmware ን ማዘመን አለብዎት። የጽኑዌር ማውረድ አገናኝ LINK ነው። “መሣሪያዎች> BurnFirmware” ን ይክፈቱ ፣ ግቤቱን እንደ ምስል 3 ያዘጋጁ እና እሺን ጠቅ ያድርጉ።
  • የ Python ፋይልን ይክፈቱ እና በቀኝ በኩል ያለውን “አውርድAndRun” ቁልፍን ጠቅ ያድርጉ። ፕሮግራሙ ወደ ቦርዱ ወርዷል ፣ እንደ ስእል 4 በግራ በኩል ባለው “መሣሪያ” ምናሌ ውስጥ ሊያዩት ይችላሉ።

Firmware እና ያውርዱ

Firmware ን ከዚህ ማግኘት ይችላሉ - firmware።

በፋይሉ ውስጥ ከ ‹ኤስዲ ካርድ ሞዱል› ጋር ያለውን ግንኙነት ያዘጋጁ//Project_Gps-Trace-Analysis-master/workspace/test.py »።

# ኤስዲ init

spi = SPI (1 ፣ baudrate = 400000 ፣ polarity = 1 ፣ phase = 0 ፣ sck = Pin (14) ፣ mosi = Pin (13) ፣ miso = Pin (12)) spi.init () # ትክክለኛውን ባውዲድ ኤልሲዲ ያረጋግጡ። ጽሑፍ ('SPI እሺ' ፣ 0 ፣ 8) sd = sdcard. SDCard (spi ፣ Pin (32)) # ከ PCB vfs = os. VfsFat (sd) os.mount (vfs ፣ "/SD") random.seed ጋር ተኳሃኝ (ሌን (os.listdir ("/SD")))) ህትመት ("ኤስዲ እሺ") lcd.text ('SPI እሺ' ፣ 0 ፣ 16)

በፋይሉ ውስጥ ከ “A9G” ሞዱል ጋር ያለውን ግንኙነት ያዘጋጁ//Project_Gps-Trace-Analysis-master/workspace/test.py”።

# A9G ክፍት ነው

A9G_RESET_PIN = ፒን (33 ፣ ፒን). እሴት (1) ጊዜ። እንቅልፍ (1) lcd.fill (0) lcd.text ('A9G ክፍት' ፣ 0 ፣ 0)

ለ A9G ሞዱል በ AT ትእዛዝ።

AT+GPS = 1 # 1 ፦ ጂፒኤስን ያብሩ ፣ 0 ፦ ጂፒኤስን ያጥፉ

AT+LOCATION = 2 #ጂፒኤስ ከመመለሱ በፊት ሳተላይቱን እስኪያይ ድረስ የጂፒኤስ አድራሻ አድራሻ ያግኙ ፣ ያለበለዚያ ጂፒኤስ አሁን አይስተካከልም AT+GPSRD = 0 #ሪፖርት አቁም

በዩኤስቢ ገመድ ቦርዱን ከፒሲው ጋር ያገናኙ እና “/Project_Gps-Trace-Analysis-master/workspace” ውስጥ ሁሉንም ፋይሎች ለማውረድ uPyCraft ን ይጠቀሙ።

ደረጃ 4 መረጃን ማስኬድ

የሂደት መረጃ
የሂደት መረጃ
  • በኤስዲ ካርድ ውስጥ በ “ዱካ” የሚጀምረውን TXT ፋይል ወደ አቃፊው “/Project_Gps-Trace-Analysis-master” ይቅዱ።
  • የፓይዘን ፋይልን በማስታወሻ ደብተር ይክፈቱ እና ኮዱን ይለውጡ።

#እርስዎ የሚፈልጉትን ትንታኔ ፋይል ያድርጉ

trace_file_name = "./trace4.txt"