叶 楠
(福州理工学院 工学院,福建 福州 350506)
随着人们生活节奏的加快,掉落东西的情况也变得更加容易发生,人们平常担心掉手机,掉钱包,出远门的时候担心丢失行李,且很多的家长们经常会担心小孩走丢。在这种社会现状下,防丢报警定位器其实拥有非常好的发展远景[1-2]。本文主要设计与实现了一种在防丢报警器的基础上,增加了基于单片机的GPS-GSM定位器,这样既可以实现及时报警提醒人们丢失了物品,又能定位丢失物品的位置,从而全面地实现防丢功能。
防丢报警器母机由ST C89C51RC单片机、按键模块、声光报警模块、震动报警模块、nRF24L01无线模块、复位电路与晶振电路组成,如图1所示。
图1 防丢报警器母机系统框图
防丢报警器子机由STC89C51RC单片机、声光报警模块、nRF24L01无线模块、复位电路、灯光报警电路与晶振电路组成,如图2所示。
图2 防丢报警器子机系统框图
基于单片机的GPS-GSM定位器由STC89C51RC单片机、LCD1602液晶显示模块、GPS模块,GSM模块、复位电路、晶振电路组成,如图3所示。
图3 防丢报警器子机系统框图
本方案选用单片机STC89C51RC作为主控制器,nRF24L01作为无线射频信号收发器,选择GPS模块来完成定位功能。GPS模块是本文设计中定位器的关键模块,由核心CPU、基带CPU、RF射频芯片和相关的外围电路组成,通过接收天线获取卫星信号,并且加以处理,从而实现定位功能。此外,除了要在定位器的LCD1602液晶显示屏上显示定位信息,更重要的是要能把定位信息发送到手机上,从而可以在手机上显示出定位信息,在该设计中,选择通过GSM模块来完成此项功能。GSM模块可以实现语音通话,发送SMS短信与GPRS数据无线传输等。在防丢报警定位器的设计中,STC89C51RC与GSM模块实现通信,从而控制GSM模块实现无线通讯功能。
2.1.1 STC89C51RC主控模块设计
STC89C51RC单片机片内含ROM/EPROM,所以由这种芯片组成的最小系统简单而且稳定。用STC89C51RC单片机构成最小应用系统,仅需把单片机接上时钟电路、复位电路就可以了[3]。由于STC89C51RC单片机内有一个振荡电路,因此在XTAL1(18)与XTAL2(19)引脚外接晶振,就组成了自激振荡器,在单片机的内部即产生了时钟脉冲信号。
复位电路设计采用按键手动复位,分别是电平方式跟脉冲方式。其中,电平复位是通过RST跟VCC连接来完成的,RST引入高电平且保持两个机器周期时,单片机内部执行复位。
2.1.2 nRF24L01无线模块设计
在电路设计上,nRF24L01P的VCC因为要接的是3.3V的电压,所以接了一个三端可调输出的线性稳压器集成电路,输入5V电压,输出3.3V,接到nRF24L01P的VCC,而nRF24L01P的CSN、MOSI、IRQ、MISO、CLK和CE则依次分别接到STC89C51RC单片机的P3.1、P3.2、P3.3、P3.4、P3.5和P3.6引脚,另外,nRF24L01P的GND接地[4]。
2.1.3 报警模块设计
报警模块的形式主要有灯光提示、声音报警和震动报警。其中,震动模块采用振动电机来实现。
防丢报警器的母机和子机电路原理图如下所示(图4、图5):
图4 防丢报警器母机电路原理图
图5 防丢报警器子机电路原理图
2.2.1 GPS模块设计
GPS卫星不断地传达信号来显示自己的定位及时间,而GPS模块可以计算出它到相应卫星的距离,只要在同一时间接收到4个以上卫星的数据,并且对其进行处理,GPS模块就可以获取到自己的定位。GPS模块设计电路如图6中所示,GPS模块的VCC接到VCC电源,TXD口接100欧电阻,再接到STC89C51RC单片机的P3.0引脚,这样STC89C51RC单片机就可以接收到GPS模块的数据,进行处理,而那个100欧的电阻则可以起到降低干扰的作用,还有最后一点就是GPS模块的GND口接地[5-6]。
2.2.2 GSM模块设计
GSM模块设计电路如图6所示,GSM模块的TX口接到STC89C51RC的P3.0引脚,也就是RXD口,这样单片机就可以接收到GSM模块的数据,GSM模块的RX口接到STC89C51RC的P3.1引脚,也就是TXD口,这样GSM模块就可以接收到单片机的数据[7-8]。
图6 基于单片机的GPS-GSM定位器电路原理图
(1)母机开始工作后,首先是定时器变量初始化,然后进入while循环,查找按键按下,假如判断结果为“是”,就发送0和1进入查找模式,如果为“否”的话,就发送0和1进入连接模式,然后设置接收模式,接着判断是否接收到数据,如果判断结果是“是”,就表示未丢失,继续发送数据,而如果判断结果是“否”,就接着判断是否超过400ms无数据,如果是“是”的话,就表示已丢失,进行声光提示。其相应流程图如图7所示:
图7 母机流程图
(2)子机开始工作后,首先是定时器变量初始化,然后进入while循环,设置接收模式,判断是否接收到了数据,如果接收到了数据,就判断接收到的数据是否是0和1,如果是就进入查找模式并声光提示;如果接收到的数据不是0和1,则返回到上一个阶段,重新从是否接收到数据开始继续往下判断;而如果在判断是否接收到数据这个阶段判断是否,那么就进入判断是否超过一秒无数据这个阶段,如果判断结果是“是”,就声光提示已丢失;那么,如果在判断是否超过一秒无数据这个阶段,判断结果是“否”的话,就重新回到判断是否接收到数据这个阶段,开始继续往下判断。其相应流程图如图8所示:
图8 子机流程图
(3)基于单片机的GPS-GSM定位器开始工作后,先是液晶初始化,然后是串口初始化和GSM、GPS初始化,接着进入while循环,判断是否接收到短信,如果判断结果是“是”,就解析GPS信息,发送短信至手机,接着又回到判断是否接收到短信的阶段,开始循环;而如果在判断是否接收到短信这个阶段,判断结果为“否”的话,就不发送定位信息至手机,接着也是回到判断是否接收到短信的阶段,开始循环。其相应流程图如图9所示:
图9 定位显示流程图
本设计防丢报警定位器是防丢报警器与基于单片机的GPS-GSM定位器的结合体。其中,防丢报警器由母机跟子机组成,并且母机跟子机都采用nRF24L01无线模块进行通讯,同时具有发射与接收无线通信信号的功能,然后由STC89C51RC单片机处理模块间读取到的信息,而基于单片机的GPS-GSM定位器则采用GPS模块进行定位,GSM模块发送定位信息,STC89C51RC驱动各个模块正常工作。当使用时,启动开关,防丢报警器的母机放置在使用者身上,子机和定位器放置在行李、贵重物品或小孩身上,一旦母机和子机超过设定距离,母机震动同时声光报警,此时使用者就可以及时发现丢失情况,以便及时找回丢失物品,而如果因为种种原因,一时之间找不回丢失的物品,则可随意发送一条短信至定位器,定位器接收到短信后,会把定位信息发送到手机。本文所设计的无线防丢器功耗低、实用性强,具有很好的市场推广潜力。