历史上的今天
返回首页

历史上的今天

今天是:2025年03月09日(星期日)

正在发生

2020年03月09日 | 基于ATmega16的遥控密码锁系统的设计

2020-03-09 来源:eefocus

简介:本文介绍了基于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 基础上的电子锁却都已经已经足够,而且又恰恰具备了实时性强、快速性等等优点,必定会得到更为广泛的应用。

推荐阅读

史海拾趣

品赞(G-Switch)公司的发展小趣事
检查控制回路中的接线是否正确,各元件是否损坏。
Ametherm公司的发展小趣事

随着技术的不断进步,Ametherm公司始终保持着对技术创新的追求。他们不断研发新的材料、优化生产工艺,以提高产品的性能和稳定性。同时,公司还密切关注市场需求的变化,根据客户需求进行产品升级和改进。这些努力使得Ametherm的功率热敏电阻在行业中逐渐脱颖而出,赢得了客户的信赖和好评。

Block USA Inc.公司的发展小趣事

除了支付业务外,Block USA Inc.还积极投身于软件SAAS服务的研发与创新。公司推出了一系列针对餐厅、薪资发放和预约等领域的软件解决方案,帮助商家提升运营效率和管理水平。这些软件服务的推出,不仅进一步丰富了Block的产品线,也为其在电子行业中树立了创新者的形象。

Diodes公司的发展小趣事

在竞争激烈的电子行业中,合作共赢是企业发展的重要途径。Diodes公司始终坚持合作共赢的理念,与众多上下游企业建立了紧密的合作关系。例如,在供应链方面,Diodes与多家原材料供应商建立了长期稳定的合作关系,确保原材料的稳定供应和质量保障;在销售方面,Diodes与多家分销商建立了战略合作伙伴关系,共同开拓市场、推广产品。这些合作关系不仅为Diodes带来了更多的商业机会和市场份额,也促进了整个产业链的健康发展。

北京人民电器厂公司的发展小趣事

北京人民电器厂有限公司,作为北方地区最大的低压电器制造企业,于1995年成功研发出全球首台高分断微型直流断路器。这一创新成果不仅填补了国内空白,更在国际上展现了中国在低压电器领域的研发实力。该断路器的诞生,标志着北京人民电器在直流断路器技术领域迈出了坚实的一步,为后续的产品研发和市场拓展奠定了坚实的基础。

Cermetek Microelectronics公司的发展小趣事

随着产品的推出,Cermetek Microelectronics公司开始注重品质管理。公司建立了严格的质量控制体系,从原材料采购到生产流程,再到最终的产品测试,都经过严格的把控。这种对品质的执着追求,使得公司的产品在市场上获得了良好的口碑。同时,公司还积极拓展市场,与多家知名企业建立了合作关系,进一步提升了品牌影响力。

问答坊 | AI 解惑

写给DSP初学者:轻松入门,快速精通

随着3G技术的发展,要求处理器的速度越来越高,体积越来越小,DSP的发展正好能满足这一发展的要求。因为,传统的其它处理器都有不同的缺陷:MCU的速度较慢;CPU体积较大,功耗较高;嵌入CPU的成本较高。 DSP的发展,使得在许多速度要求较高,算法较 ...…

查看全部问答>

电动车用电机控制器原理

车用电机控制器近年来的发展速度之快,使人难以想象,操作上越来越“傻瓜”化,而显示则越来越复杂化。比如,车速的控制已经发展到“巡航锁定”;驱动方面,有的同时具有电动性能和助力功能,如果转换到助力状态,借助链条张力测力器,或中轴扭力传 ...…

查看全部问答>

MSP430register_guide常用模块原理

MSP430register_guide常用模块原理.…

查看全部问答>

【藏书阁】51 常用子程序

自动往返小汽车 中断应用 在线下载器源程序 源程序 应用类 音乐 移位除 延时 显示子程序 通讯 数字频率计 数字多用表 实用子程序 软件工程 频率计 排序类 排序 滤波 抗干扰 交通灯 键盘与显示类 键盘扫描程序 汇编与C的衔接 ...…

查看全部问答>

走嵌入式开发,应该学习哪方面的知识

本人对嵌入式不是很了解,但是身边有些朋友想做嵌入式方面的开发,于是来问问,如果学习嵌入式开发,具体应该学习哪方面的知识?…

查看全部问答>

VS编译环境的构建

我按照网上的资料按顺序 安装了   1、安装ActiveSync同步工具,我安装的是ActiveSync 4.5     2、安装VS2005(中文)     3、安装vs2005 SP1(431M),(中文补丁)     4、安装。NET CF 2.0SP2   ...…

查看全部问答>

怎样在winCE里用socket通信给FTP上传文件?

如题:小弟想在winCE里用socket通信给远程主机服务器FTP上传文件(现在是上传的bmp文件),现在连接远程FTP正常,上传的文件却大小都为零,打不开,为什么?是不是要设置为二进制传输模式呢???主要代码如下:         in ...…

查看全部问答>

关于一些wifi网络测试软件问题

一、如何测试wifi的信号强度? 二、如何测试wifi的丢包情况? 有没有这样现成的软件,从未做过应用,请各位老兄提示一下,最好有现成的了。…

查看全部问答>

在wince上做phone功能,难度大不大?有无现成方案?

如题!现成方案不是指smartphone 我是新手,刚接触wince,不是很熟 如果要做phone功能,需要做些什么工作,难度大不大? 有哪些现成方案可以选择或者参考的…

查看全部问答>

智能手机成电子病毒新猎物

本帖最后由 jameswangsynnex 于 2015-3-3 19:59 编辑 不少手机论坛上出现了许多奇特的手机故障求助帖,虽然求助者的手机型号和出现的问题各不相同,但却有两个共同点:首先,出现故障的手机全都是智能手机;其次,检修之后,均发现手机硬件毫无问 ...…

查看全部问答>