Isi kandungan:

Penjejak GPS DIY --- Aplikasi Python: 5 Langkah (dengan Gambar)
Penjejak GPS DIY --- Aplikasi Python: 5 Langkah (dengan Gambar)

Video: Penjejak GPS DIY --- Aplikasi Python: 5 Langkah (dengan Gambar)

Video: Penjejak GPS DIY --- Aplikasi Python: 5 Langkah (dengan Gambar)
Video: Bikin Merinding! Detik-detik Dua Satpam Lari Terbirit-birit Usai Cek Ruangan Kosong 2024, Disember
Anonim
Penjejak GPS DIY --- Aplikasi Python
Penjejak GPS DIY --- Aplikasi Python

Saya mengambil bahagian dalam acara berbasikal dua minggu yang lalu. Setelah selesai, saya ingin memeriksa laluan dan kelajuan yang saya naiki ketika itu. Malangnya, ia tidak dapat dicapai. Sekarang saya menggunakan ESP32 untuk membuat pelacak GPS, dan saya akan mengambilnya untuk merakam laluan berbasikal saya lain kali. Penjejak GPS dapat menyimpan maklumat lokasi dan masa ke kad SD, dan maklumat ini dapat diproses dan melukis carta jarak dan kelajuan dengan perisian PC.

Bekalan:

Perkakasan:

  • MakePython ESP32 (dengan Wrover)
  • MakePython A9G

Papan MakePython A9G adalah papan pengembangan GPS / GPRS untuk MakePython.

  • Bateri
  • Kabel USB mikro

Perisian:

  • Python 3
  • uPyCraft_v1.1

Langkah 1: Sambungan

Sambungan
Sambungan
Sambungan
Sambungan

Sambungkan dua papan mengikut pin. Modul ini boleh dikuasakan dengan bateri atau kabel USB Mikro.

Langkah 2: Perisian pada PC

Perisian pada PC
Perisian pada PC
Perisian pada PC
Perisian pada PC

Python3:

  • Anda boleh memuat turunnya dari sini: Python3. Pilih versi 3.8.5, muat turun dan pasangnya.
  • Pilihan "Tambah Python 3.8 ke PATH" harus diperiksa selama proses pemasangan, seperti Gambar 1.
  • Sekiranya perpustakaan yang digunakan oleh program tidak dipasang, program akan diminta ketika dijalankan. Anda boleh menjalankan perintah berikut di cmd.exe untuk memasang perpustakaan, seperti Gambar 2.

memasang pip xxx // xxx adalah nama perpustakaan

uninstall pip xxx // xxx adalah nama perpustakaan senarai pip // cetak terpasang perpustakaan

Kod:

  • Anda boleh mendapatkan fail python dari sini: Kod. Fail python adalah "/Project_Gps-Trace-Analysis-master/Google_trace.py".
  • Lukis laluan di peta.

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

Lukiskan graf kelajuan berbanding masa, jarak berbanding masa

plt.subplot (2, 1, 1)

plt.plot (senarai_ waktu [0: -1], kelajuan) plt.title ("Purata Kelajuan:" + str (avg_speed)) # plt.xlabel ("Masa") plt.ylabel ("Kelajuan (m / s)") plt.subplot (2, 1, 2) plt.plot (senarai_ waktu [0: -1], jumlah_jarak) plt.title ("Total Distance:" + str (bulat (total_distance [- 1], 2))) plt.xlabel ("Time") plt.ylabel ("Jarak (m)") plt.draw () plt.pause (0) hantaran

Langkah 3: Perisian Firmware Mengenai ESP32

Firmware Mengenai ESP32
Firmware Mengenai ESP32
Firmware Mengenai ESP32
Firmware Mengenai ESP32

uPyCraft_v1.1

  • Anda boleh memuat turunnya dari sini: uPyCraft.
  • Sambungkan papan ke PC dengan kabel USB. Buka uPyCraft_v1.1, pilih alat: "Alat> papan> esp32" dan "Alat> port> com *", klik butang bersambung di sebelah kanan.
  • Sekiranya sambungan tidak berjaya, permintaan akan ditunjukkan sebagai "buka kesalahan bersiri, sila cuba lagi". Anda mesti mengemas kini firmware untuk menjanjikan sambungan dengan jayanya. Pautan muat turun firmware adalah LINK. Buka "Tools> BurnFirmware", tetapkan parameter, seperti Gambar 3, dan klik OK.
  • Buka fail Python, dan klik butang "DownloadAndRun" di sebelah kanan. Program ini telah dimuat turun ke papan, Anda dapat melihatnya di menu "peranti" di sebelah kiri, seperti Gambar 4.

Firmware dan Muat turun

Anda boleh mendapatkan firmware dari sini: Firmware.

Tetapkan sambungan dengan modul kad SD dalam fail: "/Project_Gps-Trace-Analysis-master/workspace/test.py"

# SD init

spi = SPI (1, baudrate = 400000, polarity = 1, phase = 0, sck = Pin (14), mosi = Pin (13), miso = Pin (12)) spi.init () # Pastikan lcd baudrate yang betul. teks ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Sesuai dengan PCB vfs = os. VfsFat (sd) os.mount (vfs, "/ SD") random.seed (len (os.listdir ("/ SD"))) cetak ("SD OK") lcd.text ('SPI OK', 0, 16)

Tetapkan sambungan dengan modul A9G dalam fail: “/ Projek_Gps-Trace-Analysis-master/workspace/test.py”

# A9G dibuka

A9G_RESET_PIN = Pin (33, Pin. OUT) A9G_RESET_PIN.value (0) # tetapkan pin ke masa rendah. Tidur (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_P.value (1) time.sleep (1) lcd.fill (0) lcd.text ('A9G open', 0, 0)

Perintah AT untuk modul A9G

AT + GPS = 1 # 1: Hidupkan GPS, 0: Matikan GPS

AT + LOKASI = 2 #Dapatkan maklumat alamat GPS, selagi GPS dapat melihat satelit sebelum kembali, jika tidak, ia akan mengembalikan GPS TIDAK TETAP SEKARANG AT + GPSRD = 0 #Hentikan pelaporan

Sambungkan papan ke PC dengan kabel USB, dan gunakan uPyCraft untuk memuat turun semua fail dalam folder "/ Project_Gps-Trace-Analysis-master / ruang kerja"

Langkah 4: Memproses Maklumat

Memproses Maklumat
Memproses Maklumat
  • Salin fail TXT dimulai dengan "jejak" dalam kad SD ke dalam folder "/ Project_Gps-Trace-Analysis-master".
  • Buka fail Python dengan notepad dan ubah kodnya.

#File yang anda mahukan analisis

trace_file_name = "./trace4.txt"