车辆轨迹跟踪系统(光速教会你GPS车辆跟踪系统)
GPS车辆跟踪系统
本文主要介绍GPS车辆跟踪系统背后的思想和逻辑,通过手机进行远程监控和安全访问。GPS-GSM模块使用单个微控制器进行接口,并使用 SMS功能查询系统的实时 GPS位置。该系统旨在仅由注册用户操作。可以选择实时添加或删除用户。
汽车跟踪系统如何工作?
GSM模块用于通过 SMS功能手动与系统交互。要知道对象的 GPS位置,用户必须使用预定义的模板向系统发送 SMS。系统将读取消息并即时获取 GPS位置。然后,系统向用户发送一条带有 GPS数据(即纬度和经度)的短信。因此,跟踪对象或系统。
车辆跟踪系统如何工作?
要跟踪车辆,需要连续的数据流。因此,通过向带有跟踪模板的汽车发送短信,系统将通过短信不断更新物体的 GPS位置,直到发送停止指示。更新频率与跟踪模板一起发送。该频率以分钟为单位,例如,如果提到的频率为5,则系统将在每5分钟后更新数据(发送 SMS)。该值的范围从1到 10,并且可以在程序中更改为所需的范围。
基于 GPS的车辆跟踪系统是否安全?
是的,系统是安全的。系统将积极响应,仅对从授权联系人号码收到的消息。系统内置用户验证功能,过滤未经授权的联系号码,确保系统安全。因此,即使任何人获得了系统的联系电话,在您授权他们的联系电话之前,他们也无法与他们的手机通信。
是否可以实时添加新的联系电话?
是的,该系统旨在实时添加新用户(联系电话)。此外,可以删除授权用户。通过各自的消息模板,可以添加新的联系号码,并且可以从内存中删除现有的联系号码。所有这些联系号码都存储在微控制器的 EEPROM中(选择包含内置 EEPROM的微控制器)。
添加新用户
为了添加新用户,注册用户必须向系统发送3作为消息,系统将发送模板以添加用户。模板如下,
添加用户(用户名)(10位数字)
编辑用户名最多 10个字母编辑 10位手机号码并发送
不应删除大括号,因为它们在程序代码中用作标识符。新的用户详细信息也将在 EEPROM中更新。
删除用户
为了从系统中删除用户,注册用户必须向系统发送4作为消息,系统将发送模板以删除用户。模板如下,
用户列表1. User1 1234567890 2. User2 0123456789删除 user#1回复RU1
通过发送RU1用户号 1将从系统中永久删除。如果列表中只有一个用户,则系统不接受删除该用户的请求,因为之后系统将无法操作。然而,最好在程序代码中编写用户的联系号码。
同样,如果使用 SMS计划,可以选择了解账户余额和清除消息计数器。
微控制器应该有多少个UART端口?
一个UART端口就足够了。由于系统使用两个模块,即 GSM和 GPS,默认情况下通过每个模块上提供的 UART端口进行接口,因此微控制器中需要两个 UART端口。但是,通过使用基于 AND、OR逻辑门的输入选择器电路,两个模块都可以使用微控制器的一个 UART端口进行连接。
系统应通过 GSM模块监控用户的实时请求。因此,默认情况下,微控制器保持与 GSM模块的连接,即 GSM模块将成为微控制器的 UART终端,每当需要 GPS数据时,微控制器通过逻辑电路选择 GPS模块作为 UART终端。
或者,SIM908等模块同时具有 GSM和 GPS功能。该模块可以选择连接 GPS天线。通过使用这种类型的模块,可以消除逻辑电路。GSM和 GPS数据都可以使用 GSM端口进行处理,即使提供了单独的端口。
程序代码
使用 GPS和 GSM的车辆跟踪系统–下载程序
该程序是使用 C语言使用程序员的记事本“Winavr”软件开发的。在这里,使用的微控制器是 ATMEGA 32,但它可以很容易地修改为具有足够外设的任何其他微控制器。
GPS-GSM模块的初始化
GSM模块必须发送和接收 SMS,而 GPS模块必须提供 GPS位置信息。为此,使用了两个启动功能。这些函数在微控制器上电/复位后调用。以下是初创公司的代码及其操作。
接收和处理 UART数据
模块发送的数据由单片机的 UART端口接收,接收到每个字节后初始化定时器/计数器。当接收到一个字节后有很大的时间间隔时,定时器/计数器会产生一个中断,指示 RX数据结束。现在接收到的数据通过定义为的函数进行处理,
'无效进程_gsm_gps_data(无效);'。
此函数分析接收到的数据以执行特定操作。使用一些可能的选项验证接收数据的前几个字节,如果发生匹配,则执行相应的操作。下面是关键字验证部分,完整的代码在文末提供。
验证用户
收到的短信包含发件人详细信息,例如“联系人姓名”和“联系电话”。将此联系号码与注册用户进行比较,如果找到匹配项,则确认发件人为有效用户并处理消息。否则,系统会发送有关失效的通知。下面是验证用户的代码,
全球定位系统数据
GPS数据是通过特定的 AT命令从 GPS模块获取的。对于 SIM 908模块,可以使用以下命令获取 GPS位置:
AT CGPSINF = 2
命令中的“2”是请求 GGA协议中的 GPS数据。
该命令的响应如下所示。
如果使用单独的 GSM和 GPS模块,选择 GPS模块后,等待接收 GGA,然后获取纬度和经度详细信息。由于该项目的目的是找到系统的 GPS位置,因此只询问纬度和经度的详细信息。但是,通过选择不同的协议,可以获得GPS接收机提供的各种参数。这些命令可在您使用的相应模块的数据表中找到。
追踪与追踪
为了追踪系统,用户必须将T作为消息发送到系统,系统将回复 GPS位置。GPS位置以如下方式发送给请求的用户:
纬度:
1234.123456N经度:
12.123456E
为了跟踪系统,用户必须每隔指定的分钟数发送T以获取 GPS位置,即每 1分钟发送T1以接收 GPS数据。为此,使用了一个 16位定时器/计数器。设置为在 Clear Timer On Compare Match中运行的定时器和比较匹配寄存器加载了一个等于 1秒时间间隔的值。因此,每秒都会产生一个中断,并且 seconds变量会递增。当“秒”计数等于 60时,“分钟”变量递增,并将该值与用户发送的跟踪模板中的更新频率进行比较。如果再次找到匹配项,则请求 GPS数据并将 SMS发送给用户。
请记住,在请求的用户或其他用户停止跟踪之前,一次只有一个用户可以跟踪系统。为了停止跟踪,任何用户都可以发送 S作为消息,跟踪将停止。跟踪的程序代码如下所示,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com