基于红外探测的ATM设备报警装置设计
2017-11-21
中国石油大学(华东)理学院,山东青岛 266580
一、前言
ATM设备自1937年问世以来发展迅速,人们已经习惯使用ATM设备转账、查询、提取现金。由于ATM设备具有分布地域复杂、犯罪诱惑性高、无固定人员值守等特点,在ATM服务区域,盗窃案件频繁发生[1]。
近年来,不法分子利用他人遗忘在ATM机中处于交易状态的银行卡进行取款、转账。此类案件的屡次发生,不仅给客户造成不可估量的经济损失,也给各地公安机关造成巨大的压力,同时给社会稳定蒙上阴影。
为防止此类案件的发生,目前各大银行ATM设备通常采用24小时监控系统。这种非智能的检测装备对ATM设备上发生的犯罪活动进行调查、追踪,需要耗费大量的人力物力,而且效果很不理想[2]。因此,需要一个能够实时提醒持卡人取卡的报警系统。
针对以上需求,设计出一套基于红外探测技术的ATM设备报警装置,在不改变ATM后台程序的前提下,当持卡人离开未取卡,此装置能够及时通过声音和灯光提醒持卡人取卡。
二、系统总体设计方案
为实现ATM遗卡报警功能,需要设计实现红外脉冲发射和接收、多路信号实时处理及声光报警。本装置主要由AT89C51中央控制芯片、持卡人检测模块(红外发射模块1、HS0038红外接收一体化接收头Q1、Q2)、银行卡检测模块(红外发射模块2、HS0038红外接收一体化探头Q3、Q4)和报警模块构成,如图1所示。
其中,将红外发射模块1 放置在银行门口处,接收头Q1Q2相邻放置,间隔在可检测范围内,Q1在外Q2在内,发射模块D4放置在ATM机插卡处上方,Q3Q4在插卡处下方相邻放置,Q3在外侧,Q4在内侧。
首先进行持卡人检测,先检测到Q1后Q2,则持卡人进入;然后进行银行卡检测,先Q3后Q4则银行卡插入;在持卡人操作结束之后,先Q4后Q3,表示银行卡已取出,再Q2Q1表示持卡人离开,若未检测到银行卡取出,检测到持卡人离开Q2Q1则报警。
为避免环境光干扰,提高可靠性,系统检测模块的工作频率采用38kHz,并且采用单片机控制,无需人为干预,具有操作性强、稳定性好、实时性突出等优点。
三、系统硬件电路设计
系统的原理图如图2所示。系统主要由红外发射模块、红外接收模块、控制芯片AT89C51 以及报警模块组成。
1、红外发射模块
红外发射模块由红外发光二极管、三极管和电阻构成。调整电阻阻值,可改变通过红外发光二极管的电流强度,为红外发光二极管提供(可承受的功率范围内)最合适、最佳的工作状态[3]。红外光的发射则通过红外发光二极管配合单片机、三极管实现,此装置具有体积小,灵敏度高,价格低廉等优点。
本系统需要的频率为38kHz的红外信号由单片机控制产生。单片机自带的两个定时器/计数器T0、T1有四种工作方式,在设计时选用计数器T0,并且选择工作方式1,编写程序产生38kHz的方波并加载到三极管的基极。三极管作为可控开关以一定的时间间隔重复导通和截止。当三级管导通时,红外发光二极管发射红外光。
2、红外接收模块
红外接收模块由红外一体接收头HS0038构成。接收头由黑色环氧树脂封装,不受日光、荧光灯等光源干扰,内附磁屏蔽,功率低,灵敏度高。HS0038接收38kHz的红外信号,周期约为26μs,同时能对信号进行放大、检波、整形,得到TTL电平的编码信号[4],在小功率发射管发射信号情况下,接收距离可达35m,其内部结构如图3所示。
HS0038用于接收来自红外发射模块的红外信号,处理后传输给AT89C51中央控制芯片。在VCC 和GND之间并入一个0.1μF的电容,用以改善信号质量[5]。
3、控制芯片AT89C51
由美国ATMEL公司生产的AT89C51单片机作为控制模块,该单片机是一种自带4k字节FLASH存储器的低电压、高性能COMS8位微处理器,采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容[6]。由于将多功能8位CPU和闪速存储器组合在单个芯片中,其工作效率非常高,并且可实现反复擦除1000次。它的工作电压范围为直流4.5~5.5V,全静态操作0~24MHz,通过RST实现重启和复位。
本设计中单片机的P1.0-P1.3接口分别与设置在银行卡检测区域和持卡人检测区域的红外一体化接收头HS0038的输出端连接,实现数据的接收。P2.7用于输出38kHz方波信号控制红外发射模块。P1.4-P1.6作为单片机的输出管脚,控制报警模块。
4、报警模块
报警模块由3个LED和三个电阻构成,共阳极相接,用来显示当前状态,D1判断用户的进出,D2判断银行卡的插拔,D3用来报警。当单片机相应管脚P1.4-P1.6输出低电平时,对应LED亮起。
当持卡人进入银行,P1.4输出低电平,D1亮;当银行卡插入ATM机,P1.5输出低电平,D2亮;当持卡人离开银行P1.4输出高电平,D1灭;当银行卡拔出ATM机,P1.5输出高电平,D2灭;当未拔卡(D2亮),持卡人离开银行(D1灭)时,P1.6输出低电平,D3亮,触发报警电路,报警持续30s。
四、系统软件设计
1、系统主程序流程
系统主程序流程图如图4所示。系统初始化后,单片机发送38kHz方波控制红外发射装置,持卡人检测模块与银行卡检测模块进入检测状态,检测模块实时向单片机传送解调后的数字信号。持卡人进入操作区插卡后,设备检测到银行卡进入插卡口,此时系统监控银行卡和持卡人状态,若判断到银行卡取出,则本次服务结束,返回初始化,等待下次执行;若判断到银行卡处于未取出状态,则转而进行持卡人状态判断,若持卡人离开,则触发报警装置,进行时长为30s的提醒,报警结束后,系统重新初始化;若持卡人未离开,则转而继续进行银行卡状态判断。
2、红外发射程序设计
本装置所需红外脉冲频率为38kHz,该频率可利用单片机定时器产生。在单片机工作方式1中,有:
其中,T=0.1μs,Max=216,f'表示中断频率。为输出 38kHz方 波,f' =72kHz,代入公式(1),得X=65523。故初始化TH0=0XFF,TL0=0XF4。方波产生关键程序代码如下:
3、红外检测程序设计
持卡人检测区的红外接收模块负责检测持卡人状态。当持卡人进入检测区,遮挡发射模块的红外信号,红外接收模块向单片机输出低电平。各接收头分别与单片机不同端口连接,单片机通过电平输入的端口号,获得红外接收头序号。当Q1、Q2依次被遮挡,即P1.0与P1.1先后检测到低电平,说明持卡人走进ATM设备区域;相反,如果Q2、Q1依次被遮挡,说明持卡人离开ATM设备区域。
五、系统仿真
将程序写入单片机运行,红外发光二极管两端检测到的方波如图5。从示波器可以读出,红外二极管的发光频率为38.4615kHz,处于误差可控范围内,且方波信号明显,占空比理想[7],完全符合HS0038红外信号接收条件。
利用Proteus软件验证电路设计的正确性。仿真电路图如图6所示。
模拟报警过程时,红外一体化接收头HS0038用开关代替,开关SW8、SW9、SW6、SW7的打开与闭合分别代表红外一体化接收头Q1、Q2、Q3、Q4接收到电平信号的高与低。LED灯亮,代表持卡人离开且忘记取出银行卡。按电路所示,开关打开电路断电平高,开关闭合接地电平为低。
图7所示,SW8、SW9依次闭合,模拟持卡人经过红外接收装置,进入ATM设备操作区。利用SW6、SW7先后闭合,模拟银行卡插入ATM设备。当SW6、SW7先后闭合后,在没有发生SW7、SW6依次闭合的情况下就发生SW9、SW8依次闭合,这代表持卡人离开且没有取卡,此时LED 亮,即系统报警。
以上仿真结果表明,报警装置设计正确,且达到预期要求。
六、结论及意义
本文所述是针对持卡人在ATM设备取款后遗忘银行卡问题的一种尝试。该装置是由红外发光二极管、红外一体化接收头和单片机构成的智能报警系统。该系统所采用的红外检测方式成熟稳定,可靠性高,检测灵敏,系统整体高度智能化,能够真正实现有效的自助安全守护。若其广泛使用,对防止相关金融案件发生、降低ATM自助存取款风险,必将起到积极作用。