Мазмұны:
- 1 -қадам: Қосылу
- 2 -қадам: ДК -де бағдарламалық қамтамасыз ету
- 3 -қадам: ESP32 туралы микробағдарлама
- 4 -қадам: ақпаратты өңдеу
Бейне: DIY GPS Tracker --- Python қосымшасы: 5 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Мен екі апта бұрын веложарысқа қатыстым. Аяқтағаннан кейін мен маршрут пен сол кездегі жылдамдықты тексергім келді. Өкінішке орай, оған қол жеткізілмеді. Енді мен GPS трекерін жасау үшін ESP32 қолданамын және келесі жолы велосипед маршрутын жазып алу үшін аламын. GPS трекері орналасқан жері мен уақыты туралы ақпаратты SD картасына сақтай алады, және бұл ақпаратты өңдеуге және ДК бағдарламалық жасақтамасымен қашықтық пен жылдамдық диаграммасын салуға болады.
Жабдықтар:
Жабдық:
- MakePython ESP32, Wrover көмегімен.
- MakePython A9G
MakePython A9G тақтасы - бұл MakePython үшін GPS/GPRS кеңейту тақтасы.
- Батарея
- Микро 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 файлын мына жерден ала аласыз: Код. Питон файлы-«/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], жылдамдық) plt.title («Орташа жылдамдық:» + str (орташа жылдамдық)) # plt.xlabel («Уақыт») plt.ylabel («Жылдамдық (м/с)») 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 («Уақыт») plt.ylabel («Қашықтық (м)») plt.draw () plt.кідірту (0) өту
3 -қадам: ESP32 туралы микробағдарлама
uPyCraft_v1.1
- Сіз оны мына жерден жүктей аласыз: uPyCraft.
- Тақтаны компьютерге USB кабелі арқылы қосыңыз. UPyCraft_v1.1 ашыңыз, құралдарды таңдаңыз: «Құрал> тақта> esp32» және «Құралдар> порт> com*», оң жақтағы қосылған түймені басыңыз.
- Егер қосылым сәтсіз болса, шақыру «сериялық қатені ашу, қайталап көріңіз» ретінде көрсетіледі. Қосылымды сәтті өткізу үшін микробағдарламаны жаңарту қажет. Микробағдарламаны жүктеу сілтемесі - LINK. «Құралдар> BurnFirmware» ашыңыз, 3 -суреттегідей параметрді орнатыңыз және OK түймесін басыңыз.
-
Python файлын ашып, оң жақтағы «DownloadAndRun» түймесін басыңыз. Бағдарлама тақтаға жүктелді, оны сол жақтағы «құрылғы» мәзірінен көруге болады, 4 -сурет.
Микробағдарлама және жүктеу
Микробағдарламаны мына жерден алуға болады: микробағдарлама.
SD картасы модулімен байланысты файлға орнатыңыз: “/Project_Gps-Trace-Analysis-master/workspace/test.py”
# SD бастамасы
spi = SPI (1, baudrate = 400000, полярлық = 1, фаза = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Оң жақтағы жылдамдықтың 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 OK») lcd.text ('SPI OK', 0, 16)
A9G модулімен байланысты файлға орнатыңыз: “/Project_Gps-Trace-Analysis-master/workspace/test.py”
# A9G ашық
A9G_RESET_PIN = түйреуіш (33, PIN. OUT) A9G_RESET_PIN.мәні (0) # түйреуішті аз уақытқа орнату.value (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G open', 0, 0)
A9G модуліне арналған AT командасы
AT+GPS = 1 # 1: GPS қосу, 0: GPS өшіру
AT+LOCATION = 2 #GPS -тің мекен -жай ақпаратын алыңыз, GPS қайтып келмес бұрын спутникті көре алады, әйтпесе ол GPS -ті қазір қайтармайды AT+GPSRD = 0 #Есеп беруді тоқтату
Тақтаны компьютерге USB кабелі арқылы қосыңыз және uPyCraft көмегімен барлық файлдарды «/Project_Gps-Trace-Analysis-master/workpace» қалтасына жүктеңіз
4 -қадам: ақпаратты өңдеу
- SD картасындағы «із» деп басталатын TXT файлын «/Project_Gps-Trace-Analysis-master» қалтасына көшіріңіз.
- Блокнотпен Python файлын ашып, кодты өзгертіңіз.
#Сізге талдау қажет файл
trace_file_name = «./trace4.txt»