红外遥控密码锁的设计与实现 下载本文

内容发布更新时间 : 2024/5/18 8:37:14星期一 下面是文章的全部内容请认真阅读。

红外遥控密码锁

1 总体概述

目前大部分的锁采用的都是机械式的,其最大的缺点是利用简单工具就能很容易地把锁打开。针对这种情况,我们设计了一种红外遥控密码锁,而一般设备都采用专用的遥控编码及解码集成电路,其制作简单、容易,但由于特定功能的限制,只适用于专用的电器产品,其应用范围受到限制。

本设计由AT89C2051编程实现的发射电路和AT89C52控制的接收部分构成。采用单片机进行遥控系统的应用设计,具有编程灵活多样,电路结构清晰。整个设计具有遥控开锁,遥控的节能设计,本机控制开锁,密码修改,密码显示,工作状态显示,按键提示,密码错误报警等功能,可在密码外泄的情况下及时修改密码,具有保密性好、安全可靠、成本低廉、连接方便,简单易用,适用范围广等特点,而且特别适合家庭,宾馆,仓库,私家车库等场所。

2 系统方案设计

2.1 系统构成框图

基于单片机系统的红外遥控密码锁的系统构成框图如图1所示:

图1 红外遥控密码锁系统框图 该系统由发射模块和接收模块两部分构成,遥控器发射模块可以随身携带,只要在接收器附近,即可遥控开锁;接收器则集开锁、修改密码、报警和显示于一体。

2.2 设计思想

本系统采用单片机AT89C2051和AT89C52作为核心的元件,利用红外遥控原理和单片机相关功能设计的一款具有本机开锁,遥控开锁和可修改密码的电子密码锁。

发射模块和接收模块原理图如下:

JP1VCC12powerC110uFR110KR2200工作指示灯LED19012VCCU11R34.7K4.7K23678911C24520pFC312MHzRSTP3.0(RXD)P3.1(TXD)P3.2(INT0)P3.3(INT1)P3.4(T0)P3.5(T1)P3.7XTAL2XTAL1AT89C205112S1020pF8910111213147654321VCCGND2010P1.7P1.6P1.5P1.4P1.3P1.2(AIN1)P1.1(AIN0)P1.01918171615141312R410红外发射管12S112VCC12S7S43412S23412S334R534S6R734S9R834S12R9200200200200SE3039012VCCR63412S53412VCC3412S834123412S113412VCC74LS08

图2 发射模块

VCCR420012R320012R220012R1200S16S123412S15S83412S113412S1412S43412S73412S103412S133412S33412S63412S9343412S23412S5VCC34U11234567813121514C310K10K620pF5C220pFGND4VCCR6200C120uF12S17C4HS0038220uFR11R12R13R14R15R16a7b6c4d2e1f9g105R81K9171612MHz1918VCC31P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.3(INT1)P3.2(INT0)P3.5(T1)P3.4(T0)EA/VPPXTAL1XTAL2RSTP3.7(RD)P3.6(WR)AT89C5134VCC(AD0)P0.0(AD1)P0.1(AD2)P0.2(AD3)P0.3(AD4)P0.4(AD5)P0.5(AD6)P0.6(AD7)P0.7(A8)P2.0(A9)P2.1(A10)P2.2(A11)P2.3(A12)P2.4(A13)P2.5(A14)P2.6(A15)P2.7VCCGND(RXD)P3.0(TXD)P3.1ALE/PROGPSEN39383736353433322122232425262728VCC402010113029R101KLED2LED19012R172KR182K90123412S13434JP121POWERVCCVCCR91K蜂鸣器继电器VCCU31121321167310582494DINLOADCLKDIG0DIG1DIG2DIG3DIG4DIG5DIG6DIG7DOUTGNDGNDMAX7219EWGDS1abcdefgDPa7b6c4d2e1f9g105DS2abcdefgDPa7b6c4d2e1f9g105V+ISETSEG ASEG BSEG CSEG DSEG ESEG FSEG GSEG DP19181416202321151722R19C50.01uF47KabcdefgVCCU2R5R7VCC7321WPA2A1A0SCLSDA8AT24C02红外接收器[a..g]DS3abcdefgDPa7b6c4d2e1f9g105DS4abcdefgDPa7b6c4d2e1f9g105DS5abcdefgDPa7b6c4d2e1f9g105DS6abcdefgDP200200200200200200KKKKKKKKKKK838383838383K 图3 接收模块

3 基本功能设计

3.1 初始密码的设置

有些密码锁直接将编好的密码程序存储在EPROM中,但在实际应用中不易实现密码的修改。本设计为了方便密码的修改,扩展了EEPROM来存储密码。我们采用六位密码设置并分为用户密码和管理密码。用户密码初始设为123456,它用来开锁和修改用户密码,没有权限修改管理密码;管理密码初始设为778899,它是专门用来防止密码丢失而进行的特别密码设置,管理密码拥有最高的权限。

3.2 密码显示与开锁

键入密码时,有时并不能确认某一个按键是否被按下,故我们在电路中设置了模拟显示电路。同时考虑到密码显示出来有可能外泄的问题,在显示时用一个固定的字母“H”来提醒用户是否有键按下,这样既巧妙的提醒了用户又有效的保护了密码,这是本设计安全性的一个体现。除此之外,在一个键按下后,蜂鸣器机会发出“嘀”的一声,也用于提示此键已按下。在用户输入正确的六位密码后,再按“确认”键,便可开锁,在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。

3.3 密码的修改

当你设定的用户密码不小心外泄时,这时就要及时通过密码修改程序来更改密码了,我们可以选择管理密码和用户密码中的一种对其进行修改。

当选用用户密码修改时,首先要正确输入原用户密码,然后按“更改”键,如果原密码正确则进入密码修改程序。接下来输入六位新密码,接着新密码即被存入AT24C02中,至此用户密码修改成功。

当选用管理密码修改时,首先要正确输入管理密码,然后按“MAS”键, 如果管理密码正确则进入密码修改程序。接下来输入六位新密码,接着新密码即被存入存储器中并把原来的用户密码覆盖。当然在普通情况下不建议使用这种修改方法,只有在用户密码被非法修改时才使用。这是本设计安全性的重要体现。

3.4 密码错误报警

当用户键入错误密码并按下“确认”键时,系统会发出两秒连续的报警声同时密码错误指示灯亮;当连续三次出现密码错误时,则系统会长时间报警,并将密码锁锁定一段时间,此举可有效防止非法操作。这是本设计安全性的又一体现。

3.5 遥控开锁

当此锁用于私家车库或仓库时,用户可以直接在适当的距离输入正确密码并确认发送,接收端在收到相应信号便会自动开锁,这样便实现了遥控开锁。这是本设计方便灵活的重要体现。由于遥控器一般随身携带,所以遥控器采用电池供电。这就要求发射系统的功耗要很低,在本设计中将芯片设计为待机模式,只有当按键按下时才正常工作,这样可以起到降低功耗的目的。