kaiyun官方注册
您所在的位置: 首页> 嵌入式技术> 设计应用> 基于GSM的防盗密码锁系统设计与实现
基于GSM的防盗密码锁系统设计与实现
来源:电子技术应用2011年第9期
董庆贺
(桂林电子科技大学 电子工程与自动化学院,广西 桂林541004)
摘要:论述一种基于GSM的防盗报警密码锁系统,具有设置密码、修改密码、管理员权限设置、设置键盘锁定时间等功能,并采用红外装置监测是否正常开门。当用户输入密码错误次数超过规定值或监测到非正常开门时,蜂鸣器报警,同时以手机短消息SMS的形式通过GSM网络给用户发送报警信息。经测试,系统使用方便、安全可靠。
关键词: 密码锁 红外监测 GSM
中图分类号:TP273
文献标识码:A
文章编号: 0258-7998(2011)09-0064-03
Design and implementation of password lock security system based on GSM
Dong Qinghe
School of Electronic Engineering and Automation, Guilin University of Electronic Technology, Guilin 541004,China
Abstract:A password lock security system based on GSM is introduced, which can set password, modify password, set keyboard lock time and administrators. Whether the door is opened normally can be monitored by infrared ray device. In this case or when the wrong password is input continuously three times, buzzer alarm will be started. Simultaneously the alarm message will be transmitted to appointed consumer via short messaging service(SMS) of GSM network. The testing results show the system is convenient, stable and reliable.
Key words :password lock;infrared monitoring;GSM


 电子密码锁种类繁多,如指纹型[1]、红外遥控[2]、无线射频RFID[3]和GPS等。指纹密码锁是以人体指纹为识别载体和手段的智能锁具,其唯一性和不可复制性决定了其为最安全的锁种,但其价格昂贵、难以普及。红外遥控采用红外传输技术,只需在不远处手执遥控器,输入正确密码即可自动开锁,不易被人偷窥,使用方便、安全。但锁若被撬开时难以有效通知用户,缺乏远程报警功能。
为提高密码锁的防盗功能,本文设计了一种基于AVR32单片机的防盗报警密码锁,除具有设置密码、修改密码、设置键盘锁定时间、管理员权限设置等功能外,还具有红外监测是否正常开门的功能。当非法开门和输入密码错误超过3次时,蜂蜜器报警并通过短信的形式发送给指定的用户进行报警,从而达到了远程监控的目的。
1 系统功能及架构
系统功能:当锁关闭时,启动红外监视模块以监测是否出现非正常开门的情况。用户输入密码,按下“确认”键后,将其与设定密码进行比较,若一致则开锁,同时关闭红外监视装置;若不一致,则提示重新输入密码,重新输入的次数不能超过3次,若3次输入的密码均不正确则锁定键盘,发出声光报警,并通过GSM模块发送短信给指定的用户进行报警。在开锁状态下,用户可修改密码和设置键盘锁定时间。另外,当发生破门而入等非正常开锁的情况时,门被打开挡住了信号、红外接收器接收不到信号时,同样会发出报警信息。
系统由AVR32单片机、键盘电路、红外发射和接收电路、液晶显示、声光报警和GSM电路组成。其中键盘作为输入设备,用于用户输入和修改密码;液晶显示器LCD给出相应的提示信息;红外发射和接收电路分别放置在门两侧,由单片机发射38 kHz的方波信号,输送给红外发射电路。若接收器接收到该信号,则表明门处于关闭状态;若接收不到,则表明门已被打开。报警模块包括蜂鸣器报警和远程报警,远程报警采用GSM模块以短消息的方式向用户发送报警信息。系统框图如图1所示。

2 硬件设计
2.1 键盘电路

系统以AVR32单片机作为主控器,用于对按键等进行信号处理。选择AVR32单片机的原因主要是:(1)低功耗,ATMEG-A32运行电压范围在2.7 V~5.5 V之间,功耗在正常模式下为1.1 mA,空闲模式下为0.35 mA,掉电模式下<1 μA;(2)高速度,采用先进的哈佛结构,具有预取指令功能,数据处理速度快,可达到1 MIPS/MHz的高速运行处理能力;(3)片内Flash存储器有32 KB、2 KB的SRAM,1 024 B的EEPROM;(4)保密性好,具有不可破解的位加密锁Lock bit技术,可以对锁定位进行编程以实现用户程序的加密;(5)带有3个外部中断,32个可编程I/O接口,方便外接外围设备以及软件实现[4]。
选用AVR32单片机4条I/O线作为行线,4条I/O口作为列线设计为矩阵键盘形式,分别连接在PC口。连接在单片机外部中断PD3端口的控制键,通过5.1 k?赘的限流电阻连接在VCC上。当按下该键时,键盘开启,否则处于关闭状态,按键无效,以防止密码锁无人使用时单片机一直对键盘扫描,从而降低能耗。
16个按键分为功能键和数字健,分别是数字键0~9,确认键E,修改密码键C,重新输入键A,设置键盘锁定时间L,管理员权限G,开启键盘键O。
2.2 无线通信电路
采用西门子公司生产的TC35i模块,其功能是通过全球移动通信系统GSM网络向手机发送短信[5]。该模块支持Text和PDU格式的短消息SMS,用户可通过AT命令进行呼叫、短信、电话本等方面的控制,具有价格便宜、无需拨号连接和信号覆盖范围广等优点。
TC35i模块有40个引脚,通过一个连接器ZIF引出。单片机、TC35i模块与SIM卡之间的连接如图2所示。其中TC35I的1~5引脚连接正电压Vcc(推荐值4.2 V),6~10引脚接地,11和12脚为充电引脚,可以外接锂电池。15脚是启动脚IGT,系统上电后为使TC35i进入工作状态,必须给IGT加一个大于100 ms的低脉冲,电平下降持续时间不可超过1 ms。

TC35I采用外接SIM卡模式,其中ZIF连接座上的CCIN(24引脚)用于检测SIM卡是否插好,若连接正确,则CCIN引脚输出高电平,否则为低电平。SIM卡上的CCRST、CCIO、CCCL、CCVCC和CCGND通过SIM卡阅读器分别与TC35I的25~29引脚直接相连。
TC35i模块的数据输入/输出接口是串行异步收发器,符合ITU-RS232接口标准,硬件握手信号用RTS0/CTS0,软件流量控制用XON/XOFF、CMOS电平,支持标准的AT命令集。其中18脚RxD0、19脚TxD0为TTL的串口通信脚,需要与单片机或者PC通信,与单片机通信连接时,TxD0接TxD,RxD0接RxD。
TC35i的SYNC(32引脚)有两种工作模式,一种是指示发射状态时的功率增长情况,另一种是指示TC35i的工作状态,可用AT命令AT+SYNC进行切换,本系统采用指示TC35i的工作状态。当LED熄灭时,表明TC35i处于关闭或睡眠状态;当LED为600 ms亮/600 ms熄时,表明SIM卡没有插入或TC35i正在进行网络登录;当LED为75 ms亮、3 s熄时,表明TC35i已登录进网络,处于待机状态。
2.3 红外监测电路
为增强防盗功能,系统在门后的两侧安装了红外监测装置[6]。其中红外发射采用HS5100,通过单片机的PB4口控制三极管开或关,从而产生38 kHz频率的发射信号。红外接收选用HS0038,其只有3个引脚(1Out、2GND、3Vcc),脉冲信号输出Out脚可直接与单片机I/O相连。接收不到红外信号时输出为高电平,反之为低电平。系统采用外部中断接口PB2连接Out输出端。如图3所示。

3 软件设计
3.1 系统设计总流程

系统上电后,单片机I/O口、LCD、内存缓冲器初始化,同时打开定时器和外部中断。当O键被按下时,开始扫描键盘,输入密码,期间可进行重新输入操作,直至按下确认键E后,将其与EPROM内保存的密码比较,若一致则开门,而后可修改密码、设置允许输错次数和设置键盘锁定时间等操作;否则蜂鸣器响并在LCD上显示提示信息“密码错误,请重新输入”。当输错密码的次数超过3次时,蜂蜜器报警并发送手机短消息给指定用户报警,并锁定键盘。为提高安全性,锁定键盘后,必须启用管理员权限才可以开锁。此外,若在5 s内没有按键操作时就自动关闭键盘。
系统软件运行在AVR单片机上,包括主控制模块、键盘扫描模块、密码比较判断、修改密码、报警模块等。采用C语言作为编程语言,总流程框图如图4所示。

3.2 键盘处理设计
键盘处理模块包括密码输入、修改密码、重新输入和管理员权限。输入密码采用循环扫描的方式确定按键值,将值存储起来,输入完毕按下确认键E后,将其与原来保存的密码进行比较,相等则开锁;否则报警。密码输入子流程如图5所示,期间可重新输入操作。

在开锁状态下,按下修改密码键C,输入密码,按下确认键E后,提示“请再次输入”,当两次输入的密码一样时,该密码替换原来储存的密码值,并提示“密码修改成功”。
为增加系统的安全性和人性化,设置了管理员权限。当因密码输入错误而致使键盘被锁时,在一定的时间内不允许再输入密码,避免非法侵入,之后只有使用管理员密码才能开锁。
3.3 GSM软件设计
首先将单片机的串口接收端设置成输入,发送端设置成输出。GSM模块使用前需先激活,首先置PD2端口为高电平(约10 ms),再置其为低电平(约100 ms),后再置其为高电平(约10 ms)。延时约10 s等待GSM网络登录,之后发送连机命令,当网络登录成功后设置ATE0(不回显)、波特率、信息中心号码、短信收发模式(此处选用txt文本模式)等,然后发送消息。
单片机和GSM模块之间用AT[7]指令实现相互之间的通信,通信数据是ASCII码。AT指令集几乎所有的指令都以AT(Attention)开始,如下是主要AT指令的设置程序。
char TC35_AWAKE[]="AT+SYNC";
char TC35_AT[]="AT";//{0x41,0x54,0x0D};
char TC35_ATE0[]="ATE0";//关闭字符回显
char TC35_IPR[]="AT+IPR=9600";//设置波特率为9 600
char TC35_CSCA[]="AT+CSCA=";//短信服务中心地址
char TC35_CMGF[]="AT+CMGF=1";//短信格式,1为文本,
//0为PDU
char TC35_CMGS[]="AT+CMGS=";//发送短消息
char TC35_CMGR[]="AT+CMGR=";//读短信
char TC35_CMGD[]="AT+CMGD=";//删除短信息
char TC35_ATOK[]="OK";
char TC35_MSGASK[]=">";
char TC35_NOMSG[]="+CMGR:0,,0";
char TC35_MSGOK[]="+CMGR:";
char TC35_SENDOK[]="+CMGS:";
char TC35_CSCAnumber[]="+8613800773500";
char TC35_ERROR[]="ERROR";
char TC35_READ[]="REC READ";
char TC35_UNREAD[]="REC UNREAD";
char TC35_SMSO[]="AT^SMSO";//正常退出网络并关机
发送实例:某短消息服务中心向号码为“13737743139”的手机发送一条报警信息,内容为“Password lock alarm”。
首先TC35i初始化和串口缓冲区清零,而后发送短信服务中心地址AT+CSCA=''+8613800138500'',以回车\r(0x0d)结束。等待回应,若设置成功则返回“OK”,否则为“ERROR”。之后发送信息,格式为:AT+CMGS=<手机号码><短信内容><0x0d><0x1A>。即AT+CMGS=''13737743139'',回车结束,等待回应。若设置成功则发送“Password lock alarm”信息,并以0x0d和0x1A结束。若发送成功则返回“OK”,否则为“ERROR”。这样该短消息便成功发送。
经实验测试,系统除具有普通密码锁的功能外,还增添了管理员权限和红外检测是否非正常开门的功能,并能及时通过手机短信发送报警信息,方便快捷,且不需要支付其他费用,提高了系统的安全性和远程监控能力。
参考文献
[1] 何军.指纹识别技术的研究与应用[D].北京:首都经济贸易大学,2004.
[2] 李芳,高焕芝.红外遥控密码锁的设计与实现[J].微计算机信息,2008,24(2):253-254.
[3] 李勇.基于RFID与人脸识别技术的智能门禁系统研究与设计[D].重庆:重庆大学,2009.
[4] 丁华成,耿德根.AVR单片机应用设计[M].北京:北京航空航天大学出版社,2002.
[5] 孙儒石.GSM数字移动通信工程[M].北京:人民邮电出版社,1998.
[6] 周功明.基于AT89C2051单片机的防盗自动报警电子密码锁系统的设计[J].锦阳师范学院学报,2007,5(26):112-115.
[7] 赵春云,陈敏.基于GSM短消息的水情遥测终端通信系统设计[J].中国测试技术,2005,31(1):66-68.

此内容为AET网站原创,未经授权禁止转载。
Baidu
map