Оглавление:

DIY GPS Tracker --- Приложение Python: 5 шагов (с изображениями)
DIY GPS Tracker --- Приложение Python: 5 шагов (с изображениями)

Видео: DIY GPS Tracker --- Приложение Python: 5 шагов (с изображениями)

Видео: DIY GPS Tracker --- Приложение Python: 5 шагов (с изображениями)
Видео: Создаем свое ANDROID приложение на PYTHON 2024, Июнь
Anonim
DIY GPS Tracker --- Приложение Python
DIY GPS Tracker --- Приложение Python

Две недели назад я участвовал в велоспорте. После того, как я закончил, я хотел проверить маршрут и скорость, на которой я ехал в то время. К сожалению, этого не произошло. Теперь я использую ESP32, чтобы сделать GPS-трекер, и в следующий раз возьму его, чтобы записать свой велосипедный маршрут. GPS-трекер может сохранять информацию о местоположении и времени на 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 uninstall xxx // xxx - имя библиотеки pip list // распечатать установленные библиотеки

Код:

  • Вы можете получить файл 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 [ширина - 1], lon_list [ширина - 1], color = 'красный') gmap.draw ("./ map-trace.html")

Нарисуйте графики зависимости скорости от времени, расстояния от времени

plt.subplot (2, 1, 1)

plt.plot (time_list [0: -1], скорость) plt.title ("Средняя скорость:" + str (avg_speed)) # plt.xlabel ("Время") plt.ylabel ("Скорость (м / с)") plt.subplot (2, 1, 2) plt.plot (time_list [0: -1], total_distance) plt.title ("Общее расстояние:" + str (round (total_distance [- 1], 2))) plt.xlabel ("Время") plt.ylabel ("Расстояние (м)") plt.draw () plt.pause (0) pass

Шаг 3: Прошивка ESP32

Прошивка про ESP32
Прошивка про ESP32
Прошивка про ESP32
Прошивка про ESP32

uPyCraft_v1.1

  • Вы можете скачать его отсюда: uPyCraft.
  • Подключите плату к ПК с помощью USB-кабеля. Откройте uPyCraft_v1.1, выберите инструменты: «Инструмент> доска> esp32» и «Инструменты> порт> com *», нажмите кнопку подключения справа.
  • Если подключение не было успешным, отобразится запрос «откройте последовательную ошибку, попробуйте еще раз». Вы должны обновить прошивку, чтобы обещать успешное соединение. Ссылка для загрузки прошивки - ССЫЛКА. Откройте «Инструменты»> «Записать прошивку», установите параметр, как показано на рисунке 3, и нажмите «ОК».
  • Откройте файл Python и нажмите кнопку «DownloadAndRun» справа. Программа загружена на плату, вы можете увидеть ее в меню «устройство» слева, как на рисунке 4.

Прошивка и загрузка

Получить прошивку можно отсюда: Прошивка.

Установите соединение с модулем SD-карты в файле: «/Project_Gps-Trace-Analysis-master/workspace/test.py»

# SD init

spi = SPI (1, скорость передачи = 400000, полярность = 1, фаза = 0, sck = контакт (14), mosi = контакт (13), miso = контакт (12)) spi.init () # Обеспечьте правильную скорость передачи данных lcd. text ('SPI OK', 0, 8) sd = sdcard. SDCard (spi, Pin (32)) # Совместимость с печатной платой 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) # установить низкий уровень для вывода time.sleep (1) A9G_PWR_KEY = Pin (27, Pin. OUT) A9G_PWR_KEY.value (0) time.sleep (1) A9G_PWR_.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"