构建一款基于ESP32的紧凑型GPS追踪器,通过多GNSS接收器实时显示当前位置、卫星数量及行程历史
REYAX RYS352A持续接收来自多个导航卫星星座(包括GPS、GLONASS、伽利略、北斗和QZSS)的位置数据。Heltec WiFi LoRa 32 V4模块处理接收到的NMEA数据,提取纬度、经度以及连接的卫星数量,并将这些信息显示在车载OLED屏幕上。
一旦连接到Wi-Fi热点,ESP32便会启动嵌入式Web服务器并生成本地IP地址。在同网络中的任意网页浏览器中打开该IP地址,即可查看交互式的OpenStreetMap界面,当前位置和行驶路径会实时自动更新。
由于整个应用直接运行在ESP32上,无需依赖云平台、API密钥或外部服务,因此该项目轻量便捷,适合初学者,是开发更高级物联网和定位追踪应用的理想起点。
项目特点
这款GPS追踪器具备多项功能,适用于学习和实际嵌入式应用:
•支持多种GNSS星座,包括GPS、GLONASS、伽利略、北斗和QZSS。
•在内置的OLED显示屏上实时显示纬度、经度以及已连接卫星数量。
•在ESP32上直接运行基于浏览器的追踪网页。
•利用OpenStreetMap可视化当前位置和行驶路径。
•无需依赖第三方云平台或订阅服务。
•仅需少量硬件连接,组装快速简便。
•为扩展项目添加更多物联网功能提供了优秀平台。
软件要求
固件使用Arduino IDE开发,并配合Heltec ESP32板卡包。项目还使用TinyGPS++库解析NMEA数据,内置的Wi-Fi和WebServer库提供网络连接并托管基于浏览器的追踪界面。
电路连接
该项目的一大优势在于其简单的接线设计。REYAX RYS352A 通过 UART 与 Heltec 板通信,仅需电源、地线和一个发送接口。模块的 VCC 引脚连接至 3.3V 电源,GND 引脚接地,TX 引脚连接到 Heltec WiFi LoRa 32V4 的 GPIO38。
为了实现更简洁的硬件连接,RYS352A 还可直接连接到 Heltec 板上专用的 GNSS Molex 接口,从而减少外部跳线数量。
在便携式户外测试中,搭配 12V 锂电池和面包板电源,可提供便捷的独立供电方案。
项目如何工作?
当系统启动时,Heltec 板首先连接到配置好的 Wi-Fi 热点,并启动嵌入式 Web 服务器。与此同时,REYAX RYS352A 开始搜索可用的导航卫星,并通过其 UART 接口持续传输标准 NMEA 数据。
运行在Heltec板上的固件使用TinyGPS++库解析接收到的NMEA语句,并提取出纬度、经度以及已连接卫星数量等有用信息。这些数据会立即显示在板载OLED显示屏上,使用户能够直接在设备上监控当前位置状态。
一旦连接到同一Wi-Fi网络,任何智能手机、平板电脑或计算机都可以通过在网页浏览器中输入OLED显示屏上显示的IP地址来访问该板子。浏览器将加载一个轻量级的追踪页面,通过交互式OpenStreetMap界面实时显示当前位置。当追踪器移动时,网页会自动更新标记位置,并实时记录其行进路径。
测试GPS追踪器
上传固件并确认硬件连接后,GPS追踪器在户外进行了测试,以评估其实际性能。由于GNSS接收器需要清晰的天空视野,系统在开始测试前允许几分钟时间获取足够的卫星信号。
在实地测试中,硬件由便携式电池供电,并安装在一辆行驶中的车辆内。车辆行驶过程中,REYAX RYS352A 持续更新其位置,而 Heltec 板卡则处理接收到的坐标信息,并自动刷新浏览器界面。
在整个测试期间,车载 OLED 显示当前的纬度、经度以及已连接的卫星数量,同时基于浏览器的地图准确追踪车辆的移动轨迹。行驶路线被持续记录,并以路径形式显示在 OpenStreetMap 界面上,充分证明了 GNSS 接收器、ESP32 和嵌入式 Web 服务器之间的通信稳定可靠。
本文编译自hackster.io





