杨雪梅, 王民慧
(贵州大学 电气工程学院, 贵阳 550025)
包包是人们的生活必需品,男女老少皆会用到,因为出门携带的所有物品人们基本上都会装入其中,诸如各种证件、工作文件、衣物等。出门在外都希望将物品防护周全,然而目前市场上的包包(双肩包或者单肩包)90%以上都是拉链锁和机械密码锁,这些锁件却都存在被破译、轻易破解的风险,安全性能较弱[1]。因此设计一款高安全性的智能包包很有必要。基于此,提出了以GSM通信,BD+GPS双模全球定位和指纹识别为核心技术的智能包包设计方案。该包通过刷指纹唯一生物特征认证开锁,提高物品防盗安全性,全球实时定位,包一旦丢失,还可迅速找回,若主人失联,警方也可以根据包包定位信息找到一些破案的线索,保障了用户出游的生命财产安全。如发生被盗行为,背包也可以通过GSM进行自动远程报警。
本系统主要由STM32芯片、GSM模块、BD+GPS双模定位模块、指纹识别模块、独立按键模块、显示屏模块及必要的外围电路构成,系统总体框图如图1所示。由图1可知,控制器 STM32 模块在设计上可分为如下部分:STM32 微控制器、数据存储器、晶振电路和复位电路等,主要用于实现控制系统所有信息的处理[2]。GSM模块主要用于自动远程报警。指纹模块主要用于删录指纹和刷指纹开锁。BD+GPS主要用于实时位置定位,显示屏主要用于显示相关操作信息。独立按键主要用于功能选择。
本系统采用STM32F767IGTb为主控芯片,主要负责整个系统数据信息处理。芯片采用ARM Cortex-M7内核,采用ST独有的自适应实时加速技术,拥有高达512 KB的片内SRAM,并支持SDRAM,带有TFTLCD控制器和图形加速器,运行频率可达216 MHz,自带双精度硬件浮点单元(DFFPU),在做DSP处理的时候具有更好的性能[3]。
图1 系统硬件结构框图
生物识别技术就是利用人体生物特征对人体进行身份识别[4]。指纹识别因其唯一性和不变性的独特优势而备受研究开发人员青睐,因此为提高防盗性能,设计时选择了指纹识别来控制智能包的开关。本设计选择AS608指纹识别芯片,芯片内置 DSP 运算单元,集成了指纹识别算法,能高效快速采集图像并识别指纹特征,最多可以存储300个指纹特征。模块配备了串口、USB 通讯接口,在设计中用串口(串口2)与主控芯片通讯。模块内置了手指探测电路,可读取状态引脚(WAK)判断有无手指按下。芯片引脚图由图2所示,引脚描述见表 1。
图2 指纹模块电路图
表1 指纹模块引脚描述
GPS导航定位时至少需要4颗以上的可视卫星,山林深谷或楼宇较密集地其信号易受阻挡,GPS系统单独定位的质量就会大大下降[5]。中国自主研发的北斗卫星导航系统在中国范围定位精准度较高,还具有惯导性能,即使在隧道也能实时连续精准导航。考虑到用户出游安全,智能包采用BD+GPS双模定位,BD+GPS双系统联合导航收到的卫星数较多,卫星座构成的几何图形最佳,减小误差因子,从而提高定位精度。本设计中采用SkyTraq 公司的 S1216F8-BD 模组,具有 167 个通道,追踪灵敏度高达-165 dBm,测量输出频率可达 20 Hz。可通过串口进行各种参数设置,并可保存在内部 FLASH,使用方便,自带可充电后备电池,可以掉电保持星历数据,定位速度快,且准确。本实验中,模块通过串口与主控芯片连接,通过显示屏显示定位模块的经纬度及海拔信息。定位模块电路原理图如图3所示。
图3 定位模块电路原理图
因GSM模块具有不受地域影响,覆盖面积广,可靠性强等优点[6],在本设计中的通信都采用GSM模块。研究选择了SIM800C型号。该款型具有工业标准接口,工作频率范围广,内嵌 TCP/IP 协议,可以低功耗实现语音、SMS(短信)、MMS(彩信)、蓝牙数据信息的传输。模块板载了 RTC 后备电池,能维持 RTC的长时间掉电运行。该模块与主控连接支持串口连接方式和TTL电平直接连接方式,智能包选择TTL直接连接方式通信,主要用于实现该系统的打电话、接电话和发信息功能。
触摸屏主要有:电阻式触控屏、电容式触控屏和声波式触控屏[7]。其中,电容式触摸屏是所有触摸屏种类中唯一具备高分辨率、超薄、可手写等特点,同时实现多点触控功能的触摸屏[8]。电容触摸屏幕的基本结构分为3层,即:保护玻璃、触控层和显示面板。本设计中选用了4.3寸RGB接口电容触摸显示屏,屏幕分辨率为480*272,最高支持24位真彩显示,支持5点同时触摸,具有很好的操控效果,提供背光控制功能。显示屏主要用来加载、删录指纹的虚拟键盘,显示定位信息。
警报模块主要由蜂鸣器和放大电路构成。当指纹刷错3次时,蜂鸣器响起。警报模块电路图如图4所示。
图4 警报模块电路原理图
本实验用的模拟锁是12 V小型电磁阀锁,电子锁门禁电路主要包括继电器驱动电路和电子锁开关电路,当电子锁线圈两端电压达到 12 V 时就会上电开锁[9],主控芯片通过继电器控制锁的开启和关闭。当指纹刷对时,锁线圈得电,锁开启,反之,锁关闭。锁模块电路图如图5所示。
系统要实现的主要功能包括如下内容:按下按键WK-UP,显示屏上加载虚拟键盘,此时可以删录指纹,并保存。当刷指纹3次错误后,蜂鸣器报警,GSM发送GPS定位信息和打电话给包包主人,当刷指纹正确时,锁开启。按下按键0时,在显示屏上显示定位信息。按下紧急按键时,GSM发送定位信息和打电话给主人的家人。包包落下时,主人打电话给包包,显示屏上会显示主人的联系方式,以便拾主找到主人。在设计时,主程序的整体功能可解析为3个部分,即:指纹模块子程序,GSM子程序,按键子程序。对此可做概述如下。
图5 锁模块电路原理图
(1)指纹模块子程序。判断是否有手指按下,如是则执行相应程序。
(2)GSM子程序。判断GSM是否收到用户的信息,如是则执行相应程序。
(3)按键子程序。按键扫描,判断哪个按键按下,确定后执行相应功能程序。
主程序设计流程如图6所示。
图6 主程序流程图
指纹识别模块在系统中主要实现录指纹、删指纹、刷指纹功能,录入指纹时。指纹识别模块与单片机通过串口2通信。录指纹时,先把手指放到指纹输入传感器上,手指离开1 s后再次识别同一手指的指纹,指纹模块会再次进行录入,只有2次指纹都成功录入,才可称作成功录入了一个指纹模板[10],此后输入存储ID号就可以了。删指纹时,先选中将要删除指纹的ID号,再进行删除。刷指纹就是输入指纹与指纹库中已有的指纹进行匹配,若能匹配则刷指纹成功,反之失败。刷指纹程序设计流程如图7所示。
图7 刷指纹程序流程图
GSM模块与主控芯片两者之间的通信数据采用的是AT指令。AT 指令集是从终端设备或数据终端设备向终端适配器或数据电路终端设备发送的一种指令方式。AT指令是以AT这两个字符为开始,后带通信设备之间的协议,并以字符作为结束[11]。每个TA命令行中只能包含一条AT指令。该设计中GSM模块主要用来发送信息、打电话和接听电话。发送信息设计流程如图8所示。
图8 发送信息流程图
本系统采用的是机械按键,当有按键按下时,会有抖动,这时就需要消抖,研究采用延时消抖法进行消抖,接下来再判断是否有按键按下,在此基础上判断是哪个按键按下,返回按键值。程序设计流程如图9所示。
图9 按键程序流程图
系统上电后,开始按主程序设计执行,本次研发设计的各项功能均能实现,系统运行稳定,GSM模块通讯良好,BD+GPS双模定位精准,指纹识别准确,按键反应灵敏,供电稳定,显示屏清晰。包包给主人打电话效果图如图10(a)所示,包包给主人发送定位信息效果图如图10(b)所示。
(a)包包给主人打电话 (b)包包给主人发送定位信息
(a) The bag calls the owner (b) The bag sends the location information to the owner
图10 系统设计效果展示
Fig. 10 System design effect
本文所设计的智能包包可防止贵重物品被盗,即使被盗,也可根据包包自动定位信息迅速帮助主人找回贵重物品;紧急情况下,包包可成为主人的呼救工具,主人出游更方便安全。此系统应用领域很广,适用于各类包包,设计简单,易于实现和推广。