By 李双庆 on Wednesday, 03 February 2021
Category: 卫生活

GPS跟踪

通过MQTT使用ESP32和IoT平台进行GPS跟踪

GPS是全球定位系统 (Global Positioning System)的缩写形式,它是一种基于卫星的定位系统,用于获得地理位置信息以及准确的通用协调时间。 
本篇文章介绍了如何将NEO-6M GPS模块与ESP32开发板连接,如何获取GPS数据以及如何通过MQTT协议将经纬度位置实时发布到AskSensors IoT云中

配件清单: 

NEO-6M GPS模块

ESP32开发板

面包板

杜邦线 

开发环境: 

Arduino IDE 1.8.9

运行Arduino IDE软件的计算机

配件介绍: 

ESP32: ESP32 集成了天线开关、射频 balun、功率放大器、低噪放大器、过滤器和电源管理模块,整个解决方案占用了最少的印刷电路板面积。2.4 GHz Wi-Fi 加蓝牙双模芯片采用 TSMC 低功耗 40nm 技术,功耗性能和射频性能最佳,安全可靠,易于扩展至各种应用。

NEO-6M GPS:NEO-6M GPS模块如下图所示。它带有一个外部天线,并没有附带插头引脚。所以,你需要自备以及焊接

硬件连线图: 

源代码 

在Arduino IDE中安装ESP32

从Arduino IDE打开"首选项"窗口:"文件"---"首选项"。

在附加开发板管理器网址一栏,输入以下链接:

https://dl.espressif.com/dl/package_esp32_index.json

如果您已经拥有ESP8266板子连接,请用逗号分隔,如下所示:

https://dl.espressif.com/dl/package_esp32_index.jsonhttp://arduino.esp8266.com/stable/package_esp8266com_index.jso

打开开发板管理器(工具>电路板>开发板管理器),搜索ESP32,然后单击" Espressif Systems的ESP32"的安装按钮。

下载需要的库文件

TinyGPS ++库:

https://blog.asksensors.com/iot-cloud-based-gps-tracking-esp32-gps-neo-6m-module/

EspSoftwareSerial库:

https://github.com/plerup/espsoftwareserial/

PubSubClient库:

https://github.com/asksensors/pubsubclient

运行代码:

首先,请确保您的WiFi热点已打开。

通过micro-USB电缆将ESP32开发板连接到计算机。确保模块上的电源LED变高,以确保供电。

打开Arduino IDE并为您的ESP32电路板类型和连接端口选择工具选项,然后单击上载。重置后,代码将自动运行。

打开串行终端以逐步监控ESP32软件的时序。

现在,我们将返回到AskSensors Web应用程序,以监视ESP32开发板根据从GPS NEO-M6模块解析的数据更新的GPS跟踪器地图。您应该得到一个显示您最新的GPS位置的地图图形,如下所示。 

另外,您可以通过启用"显示线"和"显示位置历史记录"在地图上显示您的轨迹。您还可以根据需要自定义颜色 

下面的地图提供了一个示例的位置数据示例,该位置数据是在街道上散步时记录的。

源代码

以上教程参考:

https://blog.asksensors.com/iot-cloud-based-gps-tracking-esp32-gps-neo-6m-module/

 淘宝产品

 卫水士店铺:https://shop141440422.taobao.com/?spm=a23or.7195193.1997079397.2.360a5920krjUI1

相关产品:

GPS定位套装:

Leave Comments