|
在本篇文章中,我们将学习如何使用Arduino开发板制作基于GPS和GSM的车辆跟踪系统。市场上大多数车辆跟踪系统的价格都比较高。所以,我决定自制一套跟踪系统。车辆跟踪系统会将位置连同谷歌地图坐标一起发送到手机,您可以随时请求位置并在手机上的谷歌地图上查看具体位置。
与双向GPS通信系统相比,这是一种更便宜的解决方案,双向GPS通信系统通过GPS卫星进行双向通信。本文仅使用一个GPS设备,然后使用GSM调制解调器实现双向通信。GSM调制解调器使用2G网络,用于设备和手机之间的通信。
本文中我们使用了GSM/GPRS/GPS模块A9G。该设备非常小,可以安装在任何地方,并且可以使用3.7V锂离子电池进行操作。该电路板基于Atmel的32位ATSAMD21控制器,可以使用Arduino IDE进行编程。您还可以使用Arduino UNO开发板和Neo-6M GPS模块以及SIM800/900 GSM模块来制作这个项目。但这会使设备尺寸变大。如果您想使用4G连接,您可以使用SIM7600 4G LTE调制解调器模块。
所需的组件 基于Arduino的GPS跟踪器项目可以通过2种方式完成。第一种方法是使用集成GSM+GPS+微控制器的单个电路板。第二种方法是使用市场上的GSM和GPS模块以及Arduino开发板。
第一种方法使用的组件列表 ● Maduino Zero GPRS/GPS开发板 ● 3.7V、1000毫安锂离子电池
第二种方法使用的组件列表 ● Arduino UNO开发板 ● 1602 LCD显示屏 ● SIM800/900 GSM模块 ● Neo-6M GPS模块 ● 10K电位器 ● 连接跳线 ● 面包板
Maduino Zero A9G GPRS/GPSk开发板 这款低功耗A9G GSM+GPS+GPRS模块集成了32位Atmel的SAMD21微控制器。开发板的正面和背面如下图所示。
A9G GSM GPS开发板是由Ai-Thinker制造。该模块可通过Micro USB端口进行编程,并可通过3.7V锂离子电池供电。它有一个开关来打开和关闭。数字输入输出引脚可用于连接任何其他模块或传感器。
Arduino使用的是8位控制器,但该开发板使用的是32位Atmel ATSAMD21G18控制器,因此使得设备运行速度更快。它有一个电压调节器IC来调整电压。同样,有两根天线,一根是GSM天线,另一根是GPS天线。该模块一个2G调制解调器,因此根据频段只能使用2G的SIM卡。它还有一个Micro-SD端口。您还可以使用SD卡以文本格式保存数据。
该电路板使用3.7V锂离子电池供电。模块内有两个电池接口,一个为电池充电,一个为电池供电。连接电池后,您可以滑动开关以打开设备。有两个LED指示电源状态。
使用Arduino的基于GPS+GSM的车辆跟踪系统 除了连接电池外,您不需要任何外部硬件部件。上面解释了所有的理论部分,现在让我们设置Arduino IDE。
Arduino IDE没有预装对SAMD开发板的支持。因此,您需要先将开发板添加到Arduino IDE。所以,转到板管理器查询Arduino Zero。
然后安装32 bit ARM Cortex Board。在硬件部分,将Micro USB电缆连接到Maduino Zero开发板,电缆的另一端连接到计算机的USB端口。
现在转到Tools菜单,在这里你会找到Arduino SAMD开发板。然后从列表中选择对应的串口号。
GPS+GSM的车辆跟踪系统的代码 与其他GSM GPS模块的Arduino代码相比,它有点不同。AT命令AT+GPS=1打开电路板的GPS功能。AT+LOCATION =2命令检索GPS位置作为纬度和经度。
复制完整的代码并将其上传到Arduino Zero开发板。
Arduino GPS GSM.rar
(1.62 KB, 下载次数: 11)
测试Arduino GPS+GSM车辆跟踪系统的工作过程 上传代码后,打开串口监视器。串口监视器将显示初始化消息。如果定位成功,串口监视器将显示纬度和经度。如果仍未检索到该位置,串口监视器仍将显示检查模块中。
现在您可以发送短信以获取位置。因此,在您的手机上打开短信,然后输入Arduino Zero开发板中使用的SIM卡的电话号码。之后,输入“Location”一词,然后发送。
稍后,串口监视器将显示短信接收状态,并告知日期时间和手机号码。然后,您将在手机上收到一条带有纬度经度坐标的短信。同时您还将收到一个指向谷歌地图的链接。您可以单击该链接并使用谷歌地图打开。
可以看到它指向我现在所在的同一个位置。这确实是一个很棒的项目,可以在车辆中实施,用于车辆跟踪项目。它可用于防止车辆的丢失,或者它可用于查找正在使用您的车辆的人的位置。
使用SIM800/900和NEO-6M GPS模块的基于Arduino的GPS跟踪系统 使用Arduino UNO开发板、SIM900或SIM800 GSM模块以及NEO-6M GPS模块也可以完成相同的项目。电路中还新增了一个LCD用于显示状态。
以下是使用SIM800/900 GSM模块和NEO-6M GPS模块的跟踪系统的代码。这段代码稍微小一点,需要稍微修改一下,比如更换手机号。
SIM800 & NEO-6M.rar
(1.22 KB, 下载次数: 12)
以上就是使用Arduino开发板制作基于GPS的车辆跟踪系统的方法。如果有任何疑问,请随时在本帖下面回复。
|