基于ATmega16的遥控密码锁系统的设计

来源:本站
导读:目前正在解读《基于ATmega16的遥控密码锁系统的设计》的相关信息,《基于ATmega16的遥控密码锁系统的设计》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《基于ATmega16的遥控密码锁系统的设计》的详细说明。
简介:本文介绍了基于atmega16单片机遥控密码锁的硬件及程序实现流程的具体设计,采用AVR 单片机ATMEGA16 作为控制器,在实现了电子锁的密码键盘输入开启控制,液晶串行显示,出错声光报警基础上,设计了通过串口控制GSM 模块GTM900B 进行短信收发和拨号,实现了远程开启控制,同时满足了多方式,高可靠性,高时效等要求,为智能家居提供了可靠的方案。

1.引言

在日常生活和现代办公中,住宅与办公室的安全防范多以加锁的办法来解决。为满足人们对锁的使用要求,增加其安全性,避免不必要时的钥匙外泄。本文从高效以及高实时性的角度出发,出于安全、方便等方面的需要,尤其为实现远程控制,介绍一种由ATMEGA16编程实现的控制电路,采用GSM 网络接收和发送命令,具有按键开锁,拨号开锁,短信开锁,三种开锁方式;同时具有声光报警等功能,可以在外泄密码的情况下及时修改密码,具有保密性,灵活度高,尤其避免了家庭以及私家车库定期清洁时钥匙外泄的情况。而短消息SMS作为GSM 网络的一种基本业务,具有:永远在线;不需拨号;价格较便宜;覆盖范围广等特点,特别适用于小流量的数据传输的应用。

2.系统硬件结构

硬件设计时采用了模块化思想,将电子锁终端分成四部分:电源、GSM 短信模块、人机界面(包括键盘和液晶显示)和控制模块。

控制模块使用的单片机是AVR出产的具有RISC 内核的8位低功耗CMOS微处理器ATMEGA16,它具有如下特点:16KB的系统内可编程Flash(具有同时读写的能力,即RWW);512B EEPROM;1KB SRAM;32个通用I/O口线;32个通用工作寄存器;3个具有比较模式的灵活的定时器/计数器(T/C);可编程串行接口;低功耗空闲和掉电方式等。节省了硬件资源,简化了程序代码。而短信模块选择的是华为公司的GSM/GPRS模块GTM900B;液晶显示模块则是选用了JHD162A,可显示两行,每行8个字母。

2.1 供电部分硬件设计

由于 GTM900B的工作电压范围是3.3-4.8V,当GTM900B 模块启动后,经过几秒的延时,模块开始搜索网络,这时需要超过2A 的驱动电流(时间很短微秒级),如果驱动不足,会引起模块的突然掉电;为了更好的给单片机和通信模块供电,选择宽输入DC-DC 模块PS12W24DC5D,输出电压稳定在5V 左右,最大提供电流为2.4A,只要加一个二极管降压就可以得到满足通讯模块要求的电压输出,可以避免当模块搜索网络时驱动电流不足的问题。并且在电压输出端并联一个大电容1000uF,起蓄流的作用,也能起到提高驱动电流的作用,解决了驱动不足时掉电的问题。

2.2 通信模块的外围设计

通信模块 GTM900B 模块有40 个引脚,通过一个ZIF(零阻力插座)连接器引出。这40 个引脚可以划分为5 类,即电源、数据输入/输出、SIM 卡、音频接口和控制。其中较为主要的电路有:

①、开启与关断电路:

在接通电源后,GTM900B 并不能自动启动,需要上电后在其15 引脚IGT 上提供100 ms

的低电平GTM900B 才能正常启动。为了保证在复位以及人为操作时都可以是模块激活,选择了加了三极管反相控制的由单片机PB0 控制的开启电路。至于关断在正常状态下采用软件AT 指令实现,故障期间硬件强制关断则是控制PD 引脚低电平时间大于3.5s。

②、串口通讯电路:

单片机与通信模块是通过串口通信的方式进行信息传输的,,通信模块GTM900B的16-23 引脚数据输入/输出端,实际中只用了RXDO,TXDO,选择默认的9600bps 作为数据传输的波特率。采用实际与理论相结合的方式,在硬件设计中GTM900B 与MCU 方向分别加了电平转换芯片MAX232,将电平统一为标准RS232 电平进行信息传输,方便了电脑调试工作,放宽了转换线路的距离要求。

③、状态检测电路:

调试阶段,采用三极管驱动发光二极管,通过二极管明灭状态及时间来查表获得工作组态;成品设计中的下位机使用液晶显示,从液晶上直接简化显示各种工作状态,简化了硬件,只需加一个上拉电阻,采用双向口PB2 与之相连,通过软件读取引脚状态来判断GTM900B的工作组态。

2.3 单片机外围电路设计

①、电磁锁控制与报警电路硬件设计

AVR 单片机的I/O 接口具有很强的驱动能力,灌入电流可直接驱动继电器、LED 等元件,从而简化驱动电路,可节约系统成本。对于报警电路部分,针对开关式传感器信号(开为高电平,关为低电平),开锁标志位(OP)以及单片机信号端口(PD4)采用逻辑分析后满足以下逻辑:

②、串口通讯调试电路

虽然 AVR 单片机的串行通讯口可以直接与GSM 模块相连,不需电平调整,但为了将来扩展需要,以及程序调试方便,使用MAX232 芯片进行RS232 电平转换,扩大了传输可行距离。

③、ISP 在线编程

USB 供电接口,为编程器提供工作电压。使用Codevision 软件编程,AVRfighter 软件实现程序加载运行。硬件上则是与单片机引脚(MOSI,REST,SCK,MISO)直接相连。

④、按键与显示电路

液晶显示器选用 1602,按键方式采用独立式按键结构,共设置了8 个按键。其中三个为功能选择键,分别为:确认,远程开锁选择,按键开锁选择,每个独立按键单独占有一根I/O 口线,每根I/O 口线上的按键工作状态不会影响其他I/O 口线的工作状态。它的电路配置灵活,软件结构简单。

3.软件结构

系统软件结构同样本着模块化和功能最小实现的原则,主要由串口通信模块、管理模块、用户操作界面和后台数据四部分组成。可以实现的功能有:短消息的提取与存储,拨号信息的提取与存储,数据的分析处理和液晶显示,对异常数据的声光报警等。

(1)键盘开锁工作特点:

(a)当手动选择使用键盘开锁时,这时由键盘输入密码,当位有效密码输入正确时按“确认”键确认,PB3 口输出高电平使电磁锁动作,完成开锁,同时电路进入延时状态,延时5秒后,电路将自动恢复到初始的闭锁状态。

(b)输入密码错误时,将发出5 秒的报警信号,用以提醒用户。输入密码错误超过三次,电子锁自动锁定,同时发出拨号报警。

(c)输入密码时,首位密码正确输入后,电路将开始计时每位密码数之间的输入间隔应在3 秒内。否则将作为输入超时处理,系统自动放弃,恢复到初始状态。

(2)远程开锁(包括拨号与短信开锁)的工作原理

当手动选择远程开锁时,键盘便会被封锁。这时,电子锁GSM 模块启动,并发给用户手机一条询问信息,用户收到信息后,可通过拨号确认,或短信回复指定信息确认,单片机采集接收短信进行处理,从而实现开锁或报警,同时数字锁系统回复已开锁短信(open )。

其中软件编程主要针对串口通讯,使用 GSM 模块标准AT 指令的编写,其中最重要的指令有:

AT //检测模块状态

AT+CMGF=1 //设置短信模式为文本格式

AT+CMGS="1516xxxxxx"//设置短信接收方号码

> OPEN THE DOOR OR NOT//发送短信内容

AT+CMGR=index //读存储区第n 条短信

AT+CMGD=index //删除第n 条短信

ATD 151xxxxxxx //拨打电话

ATH //挂断电话

4.总结

本文将有线传输的低廉与无线传输的便利有机结合了起来,有效降低了运营成本;同时由于GSM 通信稳定可靠,也在一定程度上减少了系统出错的概率。因此,该电子锁在安全防卫领域具有一定的实用价值。

虽然 SMS 的费用及传输的缺点局限:容量限制(每条短信内容最多140 个字节);网络繁忙时短信延迟长等。但对于建立在GSM 基础上的电子锁却都已经已经足够,而且又恰恰具备了实时性强、快速性等等优点,必定会得到更为广泛的应用。

提醒:《基于ATmega16的遥控密码锁系统的设计》最后刷新时间 2024-03-14 01:07:39,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《基于ATmega16的遥控密码锁系统的设计》该内容的真实性请自行鉴别。