当前位置:首页 期刊杂志

基于ATmega16单片机的红外遥控电子密码锁设计

时间:2024-09-03

廖栏椿,施小宇,王 星,袁育东

基于安全、方便等方面的需要,许多电子密码锁相继问世,如磁卡锁、声控锁、指纹识别、IC卡识别等.但这类产品的特点是针对特定场合有效,且不能实现远程控制,只适合于保密要求高且仅供个人使用的箱、柜、房间等.加上其成本一般较高,一定程度上限制了这类产品的普及和推广.

红外线遥控是目前使用最广泛的一种通信和遥控手段.由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调机以及玩具等也纷纷采用红外线遥控.工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠,而且能有效地隔离电气干扰[1].

本文利用AVR单片机具有驱动能力强、处理能力强、最小系统外围电路简单等优点,探讨一种由ATmega16单片机编程实现的控制电路,采用红外发送和接收,具有按键指示,输入错误提示,密码有效指示,控制开锁、控制报警、遥控开锁等功能,可以在外泄密码的情况下及时修改密码,保密性好,灵活度高,特别适合家庭、宾馆、私家车库等[2].它具有安全可靠、成本低廉、连接方便、使用简单、结构紧凑等特点.

1 系统结构图

该控制系统主要由红外发射与接收装置、ATmega16单片机、继电器、蜂鸣器和 LCD1602等部件组成,如图1所示.本文采用1838一体化万能接收头来对红外解码;单片机主要负责将接收到的红外信号处理、分析,并将信号处理的结果在LCD1602上显示,同时控制继电器的通断达到间接控制电磁锁的目的;蜂鸣器的作用是提示每个按键是否已经按下和声音报警.系统具有按键提示、密码有效与否提示、修改密码、控制报警、遥控控制电磁锁等功能,可以在泄密后及时更改密码,具有保密性,灵活度高.

图1 系统结构图

2 系统硬件电路设计

2.1 单片机最小系统

单片机最小系统由ATmega16及5 V电源组成,可以用单片机内部RC振荡器产生1 MHz的工作频率,而不需外加振荡电路和复位电路.该单片机有16 K字节的Flash程序空间,能够满足设计要求.如图2所示.

图2 单片机最小系统

2.2 红外接收电路

用1838一体化万能接收头来对红外解码,1838的1脚接ATmega16单片机的PD2脚(16脚),2脚接地,3脚接VCC,如图3所示.

图3 红外接收模块接口

一体化红外线接收器集红外线接收和放大调理于一体,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通三极管的大小一样.它适合于各种红外线遥控和红外线数据传输[3].其外形如图4所示.

图4 红外接收头

红外发射器一开始发送一段13.5 ms的引导码,引导码由9 ms的高电平和4.5 ms的低电平组成,跟着引导码是系统码,系统反码,按键码,按键反码.如果按着键不放,则遥控器发送一段重复码,重复码是9 ms的高电平,4.5 ms的低电平,跟着是一个短脉冲.经过红外接收头后,所有的码都经过反码,然后单片机通过中断及定时器定时加算法把这些码接收到后进行相应的处理[4].单片机接收到的红外码如图5所示.

图5 单片机接收到的红外码

遥控端发出以脉宽为0.565 ms、间隔0.56 ms、周期为1.125 ms的组合表示二进制的“0”;以脉宽为0.565 ms、间隔1.685 ms、周期为2.25 ms的组合表示二进制的“1”,其波形如图6所示.红外接收头将38 K载波信号过滤,得到与发射代码反向的接收代码[5].

图6 红外接收功能码

2.3 LCD1602液晶显示电路和继电器与电磁锁工作电路

考虑到本系统只需要显示英文提示语和密码数字,因此选用 LCD1602就可达到要求.ATmega16单片机的PA口与LCD的数据接口并行连接,单片机的PC5、PC6和PC7为3根控制线与LCD相连接,这样可以大大提高显示速度.LCD接口电路如图7所示.

由于该系统采用的电磁锁是+12 V直流供电,而单片机采用的是+5 V直流供电,所以引入继电器以达到ATmega16单片机间接控制电磁锁的目的.图8是继电器的工作电路.图9为电磁锁与继电器的连接电路.当ATmega16单片机的引脚PB4为高电平的时候就控制继电器的常开触点闭合,当为低电平的时候继电器的常开触点断开.这样继电器就起到了作为电磁锁的开关作用,从而达到了ATmega16控制电磁锁开关的设计目的.图10为系统总体电路图.

图7 LCD液晶模块电路

图8 继电器工作电路

图9 电磁锁接口电路

图10 系统总体电路图

2 系统软件设计

本系统软件采用C语言程序设计,程序流程如图11所示.开机上电后,ATmega16单片机首先完成初始化工作,并打开外部中断(INT0),初始化后进入循环处理.在循环过程中,单片机从INT0获得红外信号数据,并且显示处理后的结果和执行相应的操作,即当用红外遥控器输入密码并按下“确定”或者“EC”键后,单片机处理接收到的红外码,识别密码输入是否正确;如果输入正确且此时按下“确定”键,则单片机控制继电器打开电磁锁.相反,当输入密码错误,则LCD显示“error”,连续输错3次密码,蜂鸣器报警;如果输入密码正确且按下“EC”键,则下一次输入的是6位新密码(按“确定”键确认输入完毕),若LCD1602显示“success”,则密码修改成功.

图11 主程序流程图

3 结语

本文用ATmega16单片机对红外信号进行处理并结合密码程序设计思想,设计了一款可应用的红外遥控电子密码锁.经测试,系统运行正常,工作稳定可靠,完全可以满足一般应用场合.

[1]咸俊伟,陈波,梁书旺.基于AT89C51的红外遥控电子密码锁的设计[J].科技信息(学术研究),2008(29):567-569.

[2]曹开田.基于单片机的红外遥控密码锁的设计与实现[J].中国仪器仪表,2006(3):93-94.

[3]赵海兰,赵之赫.基于单片机的红外遥控智能小车的设计[J].电子世界,2013(3):31-32.

[4]汪毅.基于AVR单片机的红外遥控仿真设计[J].科技创新导报,2011(16):69.

[5]郭海英.基于单片机的电子安全密码锁的设计[J].现代电子技术,2005(13):13.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!