littlebot
Published on 2025-04-14 / 0 Visits
0

【源码】基于C和React的GPS运动追踪系统

项目简介

本项目是一个GPS运动追踪系统,目标是记录用户的体育活动和路线。它借助微控制器(MSP432和ESP32)与GPS模块收集数据,将数据发送至服务器存储,并在网站上进行展示。系统由硬件(MSP432、ESP32、GPS模块)和软件(后端NodeJS服务器、前端基于React的网站)两部分构成,支持离线查看统计信息和在线数据可视化。

项目的主要特性和功能

  1. 数据采集:利用GPS模块连接卫星,MSP432每10秒对GPS数据进行一次采样。
  2. 数据处理:MSP432处理采集的数据,提取持续时间、距离、平均速度等有用统计信息。
  3. 数据传输:ESP32接收MSP432处理后的数据,将其格式化为JSON并发送到服务器。
  4. 数据存储:服务器把接收到的数据存储在MongoDB数据库中。
  5. 离线使用:系统支持离线使用,可在LCD屏幕上显示运动统计信息。
  6. 在线可视化:通过网站展示运动数据,包括在地图上绘制运动路线和在仪表盘上显示统计信息。

安装使用步骤

基础部分

  1. 硬件准备:准备好MSP432p401r及其扩展板BOOSTXL - EDUMKIIESP32 - WROOM - 32模块、GPS Mini NEO - 6M GPS模块。
  2. 软件安装:安装Code Composer Studio,创建新的CCS项目,选择目标系统MSP432P401R,将MSP_Code/GPS_Sport_Tracker文件夹中的所有文件复制到项目中。添加driverlib库到链接器和编译器选项。
  3. 硬件连接:按照电路图连接GPS模块和微控制器。
  4. 程序烧录:使用CCS的闪存命令将程序烧录到MSP上。等待GPS数据有效,出现“IDLE”屏幕后即可开始运动。

IoT集成部分

  1. 硬件准备:准备一个ESP32(ESP - WROOM - 32)。
  2. 软件安装:
    • 安装NodeJSnpm,参考指南。在node_server文件夹的终端中运行npm install安装所需的NodeJS包。
    • 官方网站下载并安装Arduino IDE(推荐版本1.8.19),在Arduino IDE中安装ESP32相关库。
    • 安装MongoDBMongoDBCompass,可在本地或云端创建集群和数据库,数据库需包含一个名为positions的集合。
  3. 驱动安装:安装ESP32的Windows驱动,参考指南
  4. 配置文件创建:在webServer文件夹中创建.env文件,写入数据库URL:DATABASE_URL = mongodb+srv://<username>:<password>@<clusterName>.[randomCharacter].mongodb.net
  5. 代码配置:在ESP32 Forwarding文件夹中打开ESP32.ino,填写Wi - Fi网络的ssidpwd,以及服务器的IP地址。

前端部分

  1. 安装依赖:确保已安装Node.jsnpm,复制项目到本地,进入ESIT/FrontEnd目录,运行npm install安装依赖。
  2. 启动应用:运行npm run dev启动开发服务器,在浏览器中访问http://localhost:4000查看应用。
  3. 修改数据源(可选):若要更改数据来源,修改MyDashboard.jsx中的fetch请求URL。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】