声控电子锁设计方案_第1页
声控电子锁设计方案_第2页
声控电子锁设计方案_第3页
声控电子锁设计方案_第4页
声控电子锁设计方案_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

声控电子锁设计摘要叹错吹随着宝科技糕的发炊展与元进步嘉,人锈们的肝生活忌习惯测也逐辅渐受嫁到新始的科等技技任术的色影响鞋,而脉逐渐师发生野改变烘。锁喝具作驾为生示活中乱最常形用的轨设备剥之一辽,经晕过了悔几百待年的妄发展录,其奔功能赵未发含生重歪大变雕化,小但其暑结构掀设计墙随着留科技计的进因步而削进步纹。本芹设计症提出叫了一牌种声驴控电妥子锁忌的设较计,勤该设吩计利酬用声士音作歌为控哨制锁霉具开找关的后钥匙屠,实计现了滥免钥地匙开肥锁功筑能,中方便幸人们南的出蹄行。横本次庙设计泛使用环声音吉传运感器户模块删与单打片机筒设计猾,声伶音传励感器顶使用临驻极粪体话号筒与俩相关附放大威电路博的设桨计,努单片愿机采和用速邻度较描快的物At俘me匙l的滥AV剖R系损列单逃片机徐,实未现了职对整英个锁岩具的忍控制往功能侍。逗本次疯设计叨将对共整个垃系统晋的硬种件单躲元与哀软件端程序潜进行历设计咽,硬逝件包要括中默央控粉制电哈路的哀设计奏,显阅示单浴元设茎计,摧声音股识别绝与传滩感系僵统的偿设计晒以及驶相关条执行拜单元吹的设运计。越而对粮软件已程序惯的设收计包赔括对吓显示易程序杨的设娃计,稼对声世音识首别控犬制程泪序的馒设计晴等。获系统雷的软健件程践序与汽硬件激系统尖相互北配合葡共同词完成日系统歇地工企作,施实现糠声音昼控制兰的功钥能。受该声壶控电冻子锁犯设计陈能够余实现茫声音俯控制痰开启剃,替疲代目捷前的伯机械宿锁设显计,晌为未喷来的虽锁具蜓实现纺形式乱之一疗。鞭关键解字:伴声控旨;电贺子锁送;A哪VR伍;传锐感器丘Ab内st记ra买ct赢Wi特th涌t趋he形d漫ev箭el介op壤me样nt工a虏nd茅p曲ro贸gr徐es罢s包of检s棵ci知en岸ce默a比nd唉t四ec梁hn遭ol拔og汪y,末p虚eo县pl拾e'坟s蜂li把vi距ng迅h浇ab绣it袜s后ar涝e遮gr蒸ad羞ua嘉ll带y茂af伶fe箭ct败ed葵b增y运ne卸w锦te星ch炒no竖lo唐gy崖a华nd励t旗ec批hn磨ol尺og躺y,瞎a碍nd幻g允ra泰du责al捏ly面c蔽ha旦ng拜e.抢A垒s历on挪e忌of症t栋he刷m况os裕t衣co捐mm兵on套ly助u燃se族d对de絮vi赛ce匠s过in个d咐ai累ly近l工if否e,使t钢he苹l书oc氏k家ha玉s矮no萄t滥ch旺an椒ge丢d边si池gn融if青ic捡an披tl玉y赌in据f办un晶ct篮io朴n岁af辛te赴r售hu斩nd浸re建ds乘o津f耐ye筝ar复s屿of格d润ev凶el谅op喊me截nt鲁,世bu弟t沸it茧s甲st引ru裳ct刷ur缓al璃d醉es吊ig怠n阶ha围s悠im鲜pr呢ov副ed役w铁it扭h刻th紧e弦pr夜og皱re员ss骨o浩f监sc广ie熊nc派e幸an庙d三te使ch号no今lo蜻gy友.滑Th熔is玉d步es腰ig植n渴pu尘ts聋f希or剩wa搬rd固a庙d域es波ig脾n仰of汇s谣ou茫nd授c隙on子tr朋ol挪e辩le叶ct蒸ro胳ni翁c胜lo考ck毅,俱wh甲ic个h吵US柔ES商s瓜ou漏nd枪a指s尤th若e懒ke忍y畏to蒸c工on崖tr姨ol爪t耀he胡l飞oc右k钩sw某it疯ch僚a电nd午r圈ea慨li汗ze枣s常th乓e角fu然nc愚ti悄on傻o甚f邪ke酬yl付es跳s塑op俗en千in翠g被an卧d顷lo鸡ck纱in拥g,否s冶o龙as细t夜o糕fa服ci胃li纵ta幼te弄p罪eo锅pl咳e'黑s谅tr乌av滚el些.妙Th惹is秀d味es绞ig罩n暮US缠ES省s蚀ou无nd踪s饱en坊so狭r凉mo占du复le锻a绕nd来m谎ic榴ro考co拾nt持ro葬ll宝er榴d性es决ig帜n,附s雪ou剃nd渣s置en忠so振r昌us影in抗g光th饱e织el绝ec拳tr烫et护m闸ic扮ro骗ph学on弄e勾an游d牺th夺e犁re厌la医te龄d过th称e嫌de药si疫gn气o蜂f毫th化e评am态pl画if趁yi牢ng夏c迷ir兵cu伏it盐,尸si沙ng今le犬c禾hi储p猾mi着cr注oc班om裳pu涂te慕r桶us盘in怨g廊fa愿st萌A偏tm折el剧A胖VR挤s呀er滴ie李s互MC悲U,围r壮ea尺li乖ze乏s辣th殊e竞co轮nt蛮ro虫l旱fu秃nc费ti呈on钥o觉f灶th都e遗lo只ck滋.常Un责it前,倒th聪e罩de职si依gn蔑w德il正l爆be稻f锈or注t迅he奸w龟ho施le柴s起ys躬te上m吵ha渡rd俯wa胁re匠a臭nd摆s阴of处tw厨ar驰e缴de殃si统gn足,纪ha台rd歼wa酸re巷i刚nc拜lu仔di朵ng胶t躬he仿d邪es裁ig煤n鉴of仇t控he植c们en酬tr丢al耀c鼻on社tr图ol对c贺ir生cu压it封,互th昂e述di斤sp该la皆y积un驳it硬d丧es辅ig斯n,肤v幻oi酷ce抗r环ec浮og暗ni枪ti居on侮i裳s格as员so洲ci啄at浇ed绩w演it善h敞th趟e子de培si电gn咐o叹f险th液e爬se永ns辛or丸s巷ys炕te洞m浆an童d共th订e肺ex错ec归ut南io悠n垮un票it再d融es址ig覆n.询T古he齿s则of齐tw酷ar副e深pr轰og秆ra片m谜de宗si跟gn抓i呢nc闷lu径de脉s裳th养e产di亿sp产la缩y场pr竭og乳ra阔m啄de柄si烈gn鬼,量th蹈e侮vo版ic廊e椒re币co贺gn肾it忍io末n蚕co猾nt纤ro昏l闪pr含og法ra根m蚕de笛si厦gn泪a栽nd鸽s简o箭on黎.告Th务e浴so驼ft钳wa获re候p坐ro抽gr胳am著o毅f卡th症e纺sy哥st壶em群a尊nd失t意he病h貌ar呢dw遥ar她e田sy宝st告em奥c寸oo刷pe惕ra丝te寻t读o新co剖mp是le润te牢t灿he粗w收or越k贵of趁t跌he买s窄ys肥te象m纲an银d且re挪al替iz退e东th旦e两fu截nc除ti允on就o枯f拾so裙un帮d弯co听nt熟ro饿l.毕T喝hi嘴s叹so营un墙d熟co冷nt坦ro披l锅el罪ec道tr罪on尽ic稼l脏oc产k早de铁si它gn喷c瓜an但r蛮ea腾li绢ze括s乏ou母nd洪c点on谷tr绒ol宅o缝pe什ni且ng撒,菠re推pl灯ac互in万g税th催e偶cu存rr傻en腰t姥me分ch偿an李ic设al取l唱oc尸k似de效si啊gn烟,耐as齿o茄ne俱o趋f昼th义e由fu摄tu米re芹l槐oc遍k灵im场pl帽em岛en镰ta洪ti弃on瓜f贸or点ms概.毯Ke瞎y角wo怀rd虹s:聋v腥oi司ce平c图on晃tr兰ol用;游El廉ec灵tr赔on能ic溜l私oc怠k;仿A洞VR亡.赠Th煌e宰se津ns律or滋目置录TOC\o"1-3"\u使摘要购侧2胸Ab羽st瓦ra呀ct想3印第一联章懒绪论辨造4心1.读1奴本设闪计研去究背淘景及论意义撇主4粗1.掠2询国内僵外研益究现变状慕里5帮1.组3驳本论迷文主该要内验容尚壶6量第二茅章白系统肢的结糟构与哄功能解设计帽烤7肌2.塔1距系统鼠的功迷能设册计盏紧7凳2.棋2古系统晒的结战构设查计扣拢7纲第三绩章鸭声控损电子娘锁硬犯件设脂计单输9办3.禽1勤中央扒控制论器设投计灵该9拳3.黄2批显示速模块摸设计贩魂10痒3.氏3糊声音餐传感宇器设违计串截14扛第四两章砖软件缴程序刑设计炸民16祝4.沿1轻显示折程序板设计颜云16膜4.眯2婆密码泡识别浆程序伴设计吩凝19泼4.败3降系统汗总程壁序设圈计涨昆26暖第五撞章宰系统议的组珠装与佳调试雨逼28耀5.吧1简系统卧的组馆装腊呼28述5.锻2墨系统岔的调购试医志29妄参考尤文献局绑31狂致谢砖旨33营第一丹章思绪论型1.裙1印本设歇计研既究背姻景及害意义耀随着忌科技厨的进厚步与祸社会刻的发座展,血人们乞生活纲水平内越来讯越高郊,生广活也猴越来攻越方态便。应我国繁乃至处世界棕锁具拐的发郊展经跪历了林几百旦年时狐间,药已经谊进化碰成相股对完释善的肚结构峰。锁鞠具经蜜过了货几百饮年的冰变化特与发翁展,赢其基歪本功昆能未辟发生晓根本质性的纠变化讨,依圾旧为输为人旗们的改生命虎财产盒安全燃保驾里护航仿。但着随着豪科技勺的进近步与丢发展竖,锁扇具的谱形式累更加期多样臣,结敲构也或更为坝复杂坝,更忧难被带破解狭。发张展至凉今,仁人们布最常夕用的闹锁具您依旧腔为机枪械结方构,替随着凝电子舍科技孕的进愚步与笼发展牲,新备式的滥电子且锁逐侮渐发琴展起嚼来,趣最为陶常用胁的即迹为常装见的撞楼宇形门电辫磁锁扑,其苹为电宁子锁匆的一纠类代嗓表,苏其内抱部采璃用电厕磁结浩构控杨制锁容具的像开启采与关血闭,烘利用隆射频沟识别届技术纤或远畅程开植锁功透能,盲能够隐将锁酿打开陈,实柜现无纷钥匙末开锁界。该捏锁并笼非真浩正意岩义上袄的电绿子锁狸。下其任蔽然采柴用机私械式蒸设计边,配仰有钥逮匙开赖孔,衡加密悉方式善以机腥械式孤加密葱为主眯,但偷能够营实现涛一定蓄的电惜子锁锯性能吓,能弊够实舟现非纪接触趋式开底锁功视能。宿随着鸣电子遥技术界的发烛展与银加密欢技术静的进北步,畏新式役的智但能门胜锁逐喘渐涌甚现出秀来。界智能肝门锁旷采用潜电子页加密河的方盘式,奏采用旱全电序子结敏构设母计,叙配合茎智能枪识别所的方录式,身能够被实现妹人脸燃识别忍,指任纹识剥别,渗虹膜慨识别共等多宜种识叨别方立式开车启电鸭子锁住。降此类信电子突锁的因设计储大大掉方便该了人厦们的鉴出行棍,人鹅们出贪行不槽再需情要携买带大解量的虏钥匙咏,也恢不必单再担圈心因堆钥匙膨丢失筐或忘饲记携厦带造堡成无装法进独门的忍情况五发生仪。市本次去设计钉提出浑了一克种新毫式的椅声控喉电子世锁的邪设计读,该弟设计醒使用示声音济作为涨识别震密码僚,通饲过不芝同的考声音虚组合茂形式描组成牛一组裁声控锡密码蚊,电峡子锁缸通过管识别洲该密古码,椒控制挪锁的骨开启浅与关传闭,御可以液大大钩方便宽人们头的生仍活与岭出行已,实格现无岛钥匙周开锁忌的操表作。1.2国内外研究现状家庭防盗措施伴随着家庭概念的产生而产生。最初的防盗措施仅仅为一扇门经过了几十上百年的发展。才产生了锁具,锁具经过了几千年的发展。到今天仍旧为家庭防盗最主要的措施。从第一只锁具诞生到今天本所的发展已经经过了成百上千年的时间。锁具的根本功能并未发生变化,其主要作用依旧为保护居民财产安全。第一次锁具由中国人发明。但随着时代的发展,外国技术的不断进化使得国外防盗措施水平远远超过了我国,尤其在近些年现在电子技术的发展以及人们创新能力的提高。使得国外的防盗措施的防盗水平也越来越高。随着时代的发展与科技的进步。国外科技依旧在不断发展之中,国外的防盗水平也将越来越高。目前已出现了各种各样的新式防盗设施,例如指纹锁,密码锁,人脸识别等身份识别模式,使用红外探测等方式设计的防盗系统也越来越多。随着外国技术的涌入中国的防盗系统也在跟随世界的变化而更新。中国防盗技术的发展整体落后于世界的平均发展水平。大部分家庭依旧使用传统的机械防盗锁作为自家的防盗系统而国外的电子系统尚未普及。随着中国科学技术的进步,国民素质的提高创新能力的增强我国在防盗系统的研究上。将逐步追赶世界水平并不断进步达到跟世界水平相同的层次。1.3本论文主要内容本论文旨在设计一款基于单片机的声控电子锁,该电子锁能够实现声音控制的功能,能够通过输入一系列声音数据控制锁的开启与关闭,该声控电子锁的主要功能依旧为实现锁具的基本功能,保护人民的生命财产安全,但本设计改变了以往的锁具的机械控制结构,改用电子控制结构,实现了电子锁的设计。本论文将对该声控电子锁的功能与实现结构进行分析,分析实现声控电子锁应具有的结构。并依据结构与功能设计,对系统的硬件单元进行设计。系统的硬件单元包含中央控制器,本设计将对中央控制器的控制电路,电源电路,接口电路等电路进行设计。之后,本设计将对声音传感电路进行设计,声音传感电路包含驻极体话筒,声音放大电路等电路设计,同时,本设计将对显示模块进行设计,对显示器件进行选型与设计,将完成整个系统地硬件电路设计。完成硬件电路设计之后,本设计将对系统地软件程序进行设计,软件程序包含声音传感程序,显示程序,密码判断程序,系统加密程序等诸多程序组成,本设计将在完成系统的硬件电路设计与软件程序设计后,购买相关实际电子元器件等,对实际电路进行组装,并对实物进行调试,完成本设计的所有设计功能。第二章系统的结构与功能设计2.1系统的功能设计本设计旨在设计一款声控电子锁,替代传统的机械锁设计,系统使用声音密码作为系统密码,系统具有声音密码控制,液晶显示,密码错误报警等功能,主要功能如下所示。(1)声音密码控制功能:系统通过一定的声音密码对整个系统进行控制,系统能够识别声音数据,并对声音密码进行记录,通过有声与无声两种方式,对密码进行录入,当录入的密码正确时,系统可将门锁打开,错误时,不打开门锁,以此来替代传统的机械结构。(2)液晶显示功能:能够通过液晶显示对系统的状态进行实时显示,并对用户的操作给与一定的指导,例如,无密码输入时显示欢迎界面,输入密码时提示用户输入密码,密码输入正确显示输入正确,输入错误时显示输入错误信息,帮助用户完成整个操作,提供友好的人机交互功能。(3)报警功能:当用户输入密码错误次数过多时,系统能够提供报警功能,报警功能包括声音报警与光报警,报警存在的意义为若为外人闯入,报警声能够震慑罪犯,阻止其闯入,同时能够吸引其他住户的注意,阻止罪犯犯罪。2.2系统的结构设计系统主要包含输入设备,中央控制器,输出设备几部分组成,其组成结构如图2-1所示。图2-1系统结构框图其中输入设备为拾音器与功率放大器,拾音器作用为感知外界声音,并转换为电信号,由于拾音器的转换功率较小,输出功率不足以被中央控制器感知,因此需要与功率放大器配合使用,功率放大器负责对电信号进行放大,放大至单片机能够识别的状态,之后将声音数据传送至中央控制器,中央控制器为系统的核心,负责整个系统的运行。输出设备包括显示器件,门锁控制器以及声光报警器组成,显示器件能够对相关信息进行显示,辅助用户开锁,门锁控制器负责对门锁进行控制,能够控制门锁的开启与关闭,而声光报警单元作用是发出声光报警,在用户输入密码错误次数过多时,发出声光报警,提醒用户或起到震慑犯罪的功能,系统的各个模块共同组建成该系统,各个模块缺一不可,相互配合,实现系统功能。第三章声控电子锁硬件设计3.1中央控制器设计中央控制电路是整个系统的核心,为保证系统的稳定运行,本设计选用Arduino控制器作为我们系统的核心,该控制器有众多分支,我们使用最常用的ArduinoUno作为我们的控制器设计,其引脚多,技术成熟,适合长时间运行。ArduinoUno控制器如下图所示:图3-1ArduinoUno控制器其控制芯片为Atmel328p,为8位单片机设计,内置32K程序存储器与2K内存存储器,最大时钟频率40MHz,带有1K容量的EEPROM,该芯片共32枚引脚,含有6通道的10位ADC,6枚PWM输出引脚,其运行速度能够满足我们的要求,也可满足本论文的设计要求,因此,我们选择该控制器作为我们的控制器设计。该控制器共有14位数字引脚,6位模拟引脚,模拟引脚也具备数字信号输入输出功能,同时具备3.3V与5V电压输出功能,带有一个串口,一个电源输入引脚,其采用的控制芯片速度是普通51单片机的几倍,拥有更加强大的控制能力。其各个引脚作用如表3.1所示:表3.1ArduinoUno控制器引脚功能引脚名称功能0数字信号输入输出引脚0号引脚,同时作为串口信号RX端。1数字信号输入输出引脚1号引脚,同时作为串口信号TX端。2-13数字信号输入输出引脚,带有~的引脚可作为PWM脉冲宽度调制信号输出引脚。A0-A5模拟信号输入引脚,同时可兼用作数字信号输入输出引脚。AREF模拟输入信号,参考电压。IOREFIO引脚接口信号参考电压。5V5V电压输出3.3V3.3V电压输出GND电源地VIN外部电源输入引脚,支持最大外部输入电压12V。在编写程序对引脚进行操作时,需先定义引脚功能,之后对引脚进行操作。3.2显示模块设计显示模块的作用是显示设置的结果,显示数据较少,因此,我们选择双行显示模块LCD1602负责对测量结果进行显示。LCD1602是非常常用的显示器件,支持双行显示,每行16个字符,共计32个字符,常见的1602模块如图3-2所示:图3-2LCD1602模块其支持4位传输模式与8位传输模式,可塑性大,通常LCD1602模块都支持背光,其使用点阵液晶显示板,每个字符占据5x11个点阵,共可显示两行,其支持ASCII码显示,自带字库,可直接输送ASCII码序号。在LCD1602启动时,需对其进行初始化设置,初始化命令如表3.2所示:表3.2LCD1602控制命令表RSR/WD7D6D5D4D3D2D1D0说明清显示0000000001将DDRAM填满"20H",并且设定DDRAM的地址计数器(AC)到"00H"归位000000001*设定DDRAM的地址计数器(AC)到"00H",并且将游标移到开头原点位置;这个指令不改变DDRAM的内容显示开关控制0000001DCB[D=1:整体显示ON],[C=1:游标ON],[B=1:游标位置反白允许]进入模式设置00000001I/DSI/D=1,光标或闪烁向右移动,AC增加1。I/D=0,光标或闪烁向左移动,AC减少1,S整个显示移动光标或显示移位指令000001S/CR/L**光标或显示移位指令可使光标或显示在没有读写数据的情况下,向左或向右移动,指令不改变DDRAM的内容功能设定00001DLNF**[DL=0/1:4/8位数据],[N=0/1,单行/双行显示],[F=0/1,5*8/5*10点阵显示模式]设置CGRAM地址0001AC5AC4AC3AC2AC1AC0CGRAM地址设置指令设置CGRAM地址指针,设定DDRAM地址0010AC5AC4AC3AC2AC1AC0DDRAM地址设置指令设置DDRAM地址。一行地址范围00H~4FH,两行DDRAM地址第一行00H~27H,第二行40H~67H,读忙标志和地址01BFAC6AC5AC4AC3AC2AC1AC0BF:忙标志位,BF=1,模块正在进行内部操作,此时模块不接受任何外部指令和数据。BF=0,模块可以接受外部的指令和数据;写RAM指令10D7D6D5D4D3D2D1D0将数据D7-D0写入到内部的RAM,将用户自定义的字符写入CGRAM中,D7~D5为000,D4~D0为5点的字模数据读RAM指令11D7D6D5D4D3D2D1D0从内部RAM读取数据D7——D0其引脚图如图3-3所示:图3-3LCD1602引脚图LCD1602共有16枚引脚组成,其中1号脚为电源地脚,2号脚为电源正极引脚,VCOM脚为对比度调节引脚,RS引脚为命令数据标志位,0为写入指令,1为写入数据,RW引脚为读写标志位,0为写入,1为读取,E为使能引脚,高电平有效,P00-P07为数据命令复用引脚,共计8根,其运行在8位模式下需8位引脚,运行在4位模式下需P04-P07四位引脚,BLA为背光引脚,BLA+为背光正,BLA-为背光负。在使用LCD1602需先对其进行初始化设置,才能对其进行读写操作。3.3声音传感器设计声控电路通常采用驻极体话筒与相关检测放大电路相结合的形式进行设计,驻极体话筒是一类声音传感器,负责感知外界声音,并转换成电信号,检测电路在接收到该电信号后进行响应,打开开关,实现声音传感,声控开关总体结构图如图3-4所示:图3-4声控电路结构首先,声音经过驻极体话筒的转化变成声电信号,该声电信号被送至下一级的放大电路中。放大电路将对该声电信号进行放大,经过放大的信号被送入下一句声电转换电路中,该电路会将该信号转换成相应的电信号,在电电信号超过设定阈值时,便会启动电路,接通开关,实现声音控制的功能。驻极体话筒是一类声音传感器,其内部有两片相互间隔较近的金属薄片组成,通常,其中一枚薄片为金属制作,另一层为塑料膜状片,片上涂有金属涂料,在一枚金属薄片上加有一高电压,正电荷会在薄片上积累,因此,在薄膜上将会感应出一低电压,电子在薄膜上积累,当外界存在声音时,声音传导至薄膜引起薄膜的震动,薄膜与金属薄片之间的距离随声音的震动而发生不断地变化,由于金属薄片之间距离的变化,引起两金属片之间电容的改变,电容的变化引起薄片上存储电荷的改变,由此产生一个变化的电压,该电压与声音变化同步,实现了对声音信号的采集。被采集的声音以电压的方式传入下一级的放大电路中,放大电路通常采用电压放大电路设计,能够实现对电压的放大,由于由声音引起的电压信号较小,因此,对该放大电路要求其放大倍数较高,为实现较高的放大倍数,该放大电路通常采用运算放大器进行设计,运算放大器是一类放大元件,本身由于理想运算放大器的放大倍数为无穷大,但由于在现实条件下无法达到理想状态,因此,通常所用的运算放大器的放大倍数为1万倍或更低,由于运算放大器的放大倍数较高,直接使用运算放大器放大将导致声音微弱的变化将会触碰到运算放大器的峰值输出,造成声音信号的失真,因此,需选用一定的运算放大器放发电路设计对声音信号进行放大。常见的运算放大器组成的放大电路如下图所示。图3-5电压放大电路输入电压通过一10K限流电阻输入运算放大器的同相输入端,运算放大器的反向输入端通过10K电阻接地,运算放大器的输出信号通过一100K电阻接入运算放大器的反向输入端,组成负反馈电路。由于输出电压与同相输入端输入电压相位相同,与反向输入端输入相位相反,因此,输出由反相端输入时,输出端变回产生一个与原电压电位相反的电压,阻碍原电压的放大,形成负反馈。依据运算放大器虚短路与虚断路的特点,放大倍数A的计算公式如下:β=1+R3R3为100K电阻,R2为10K电阻,由此可得,该电路的放大倍数为11倍。如果实现更高的放大倍数,则需适当改变两电阻的阻值。声电转换电路实际为一高倍数放大器,其放大倍数较声音放大电路的放大倍数更高。因此,在经过上级放大之后,声音信号已经达到了一个较高的电压,在经过该给放大电路的放大,输出电压很容易触碰到该电路的峰值输出电压,造成电路输出一稳定的高电压,实现声音的控制电路开启。第四章软件程序设计4.1显示程序设计显示程序分为LCD1602初始化程序与数据显示程序,依据LCD1602命令表,LCD1602初始化程序如下intLCD1602_RS=12;intLCD1602_RW=11;intLCD1602_EN=10;intDB[]={6,7,8,9};//采用4线制接法,系统数据接口地址voidLCD_Command_Write(intcommand)//写命令函数{inti,temp;digitalWrite(LCD1602_RS,LOW);//拉低rs引脚digitalWrite(LCD1602_RW,LOW);//拉低rw引脚digitalWrite(LCD1602_EN,LOW);//拉低使能引脚,进入写指令模式temp=command&0xf0;//取命令高16位for(i=DB[0];i<=9;i++)//依次写入命令{digitalWrite(i,temp&0x80);//取命令高8位写入temp<<=1;}digitalWrite(LCD1602_EN,HIGH);//拉高EN脚delayMicroseconds(1);//延时1usdigitalWrite(LCD1602_EN,LOW);//拉低EN脚temp=(command&0x0f)<<4;//取命令低16位for(i=DB[0];i<=9;i++)//依次写入命令{digitalWrite(i,temp&0x80);//取指令低8位写入LCD1602temp<<=1;//复位temp变量}digitalWrite(LCD1602_EN,HIGH);delayMicroseconds(1);digitalWrite(LCD1602_EN,LOW);}voidLCD_Data_Write(intdat)//LCD1602数据写入函数{inti=0,temp;digitalWrite(LCD1602_RS,HIGH);//拉高RS引脚,写入数据digitalWrite(LCD1602_RW,LOW);//拉低RW,进入写模式digitalWrite(LCD1602_EN,LOW);temp=dat&0xf0;//取数据高8位写入for(i=DB[0];i<=9;i++){digitalWrite(i,temp&0x80);//依次写入数据temp<<=1;}digitalWrite(LCD1602_EN,HIGH);delayMicroseconds(1);digitalWrite(LCD1602_EN,LOW);temp=(dat&0x0f)<<4;//写入数据低8位for(i=DB[0];i<=9;i++){digitalWrite(i,temp&0x80);//依次写入数据temp<<=1;}digitalWrite(LCD1602_EN,HIGH);//拉高系统使能delayMicroseconds(1);//延时1usdigitalWrite(LCD1602_EN,LOW);//拉低系统使能}LCD_Command_Write(address);}LCD_Command_Write(0x28);//设置光标自动+1delay(50);LCD_Command_Write(0x06);//设置关光标显示,屏幕不移动delay(50);LCD_Command_Write(0x0c);//关屏幕显示delay(50);LCD_Command_Write(0x80);//开屏幕显示delay(50);LCD_Command_Write(0x01);//清屏delay(50);}LCD_Command_Write函数为写指令函数,其能够将指令写入LCD1602中,delay函数为延时函数,写入指令后需给1602一定时间相应,写指令0x28是设置LCD1602显示为两行显示,4线输入模式,每个字符为5x7点阵。写指令0x06是设置LCD1602向右自动增量显示。写指令0x0C是设置LCD1602开启显示,光标关闭。写指令0x80为设置显示起始位置为第一行第一个字符,写指令0x01为清屏,光标复位,完成初始化的操作,之后,可向LCD1602中写入需显示的数据,并使其显示。4.2密码识别程序设计密码识别程序需调用系统中断功能,并通过系统中断实现对声音密码的识别,由于每次声音密码产生将会产生一定的抖动,信号上升沿不稳定,因此,需先对信号进行消抖,再对信号进行识别,密码识别程序如下。intn=0;longm,m1;inta,c,q;intb=4;intd=1;intstarts;intf[8];inti;intj;intst;interr;intspe=0;voidsetup(){pinMode(4,INPUT);pinMode(3,OUTPUT);pinMode(5,OUTPUT);pinMode(6,OUTPUT);pinMode(13,OUTPUT);Serial.begin(9600);attachInterrupt(0,blinkA,CHANGE);f[0]=1;digitalWrite(3,LOW);delay(20);lcd.begin(16,2);lcd.setCursor(0,0);lcd.print("Welcome!");}voidblinkA(){if(starts){if(b>0&&b<4){f[d]=1;d++;b=4;}else{}m1=millis();c=m1-m;if(c<1000){b=4;}elseif(c>1000&&c<2000){f[d+1]=0;d=d+1;b=1;}elseif(c>2000&&c<3000){f[d+1]=0;f[d+2]=0;d=d+2;b=2;}elseif(c>3000&&c<4000){f[d+1]=0;f[d+2]=0;f[d+3]=0;d=d+3;b=3;}elseif(b==4){}elseif(c>4000){b=4;err=1;d=1;lcd.clear();lcd.setCursor(0,0);lcd.print("ERROR!");spe++;delay(1000);err=0;}m=millis();Serial.println(c);Serial.println(d);Serial.println(err);Serial.println(spe);Serial.println("f=");for(i=0;i<8;i++){Serial.print(f[i]);}Serial.println("");}else{lcd.clear();lcd.setCursor(0,0);lcd.print("Welcome!");}}voidloop(){st=digitalRead(4);if(st)starts=~starts;delay(80);if(starts){lcd.clear();delay(20);lcd.setCursor(0,0);lcd.print("PleaseInput");if(d>1){for(j=0;j<d+1;j++){lcd.setCursor(j,1);lcd.print('*');delay(10);}}}if(spe<5){if(f[1]==0&&f[2]==0&&f[3]==1&&f[4]==0&&f[5]==0&&f[6]==1){digitalWrite(13,HIGH);lcd.clear();delay(20);lcd.setCursor(0,0);lcd.print("TheKeyRight!");delay(10000);digitalWrite(13,LOW);for(i=0;i<8;i++)f[i]=0;starts=0;spe=0;b=4;err=0;d=1;}elseif(d>8){digitalWrite(13,LOW);lcd.clear();lcd.setCursor(0,0);lcd.print("ERROR!");delay(1000);err=1;spe++;if(spe==3){spe++;while(1){d=1;spe=7;lcd.clear();lcd.setCursor(0,0);lcd.print("Warring!");digitalWrite(6,HIGH);digitalWrite(5,HIGH);}}err=0;d=1;for(i=2;i<8;i++){f[i]=0;}}}}声音识别程序调用了系统中断,当有声音超过设定阈值时,声音信号的高电平将触发系统中断,中断子程序为密码识别程序,密码识别程序同时调用了系统的定时器中断,定时器将对声音信号进行计时,计时时长为1s,即每个声音脉冲持续时间约1s,系统预设密码为响、响、空、空、响,每个声音持续1s时间,若密码输入错误次数超过3次,系统将强行关闭声控开锁功能,此时,用户只能通过钥匙将门锁打开。整个声音识别程序通过声音开启,系统开机时,将向显示屏发送数据,显示屏显示“welcome”字符。当系统检测到声音输入后,声控系统将开启,而开启声音不算作系统密码。声控系统开启后,将向现实屏发送数据,显示屏将显示“PleaseInput”,提示用户输入声音密码,用户可向系统输入声音密码,用户输入密码时,每输入一个密码,显示屏将显示一个“*”作为提示,用户可根据显示的“*”的多少判断输入的密码个数。当用户输入的密码数据正确时,系统将显示“KeyTheKeyRight!”同时开启门锁,门锁开启时间为10s,若用于于10s内未打开房门,则门锁自动关闭,需要用户重新输入密码。若用户输入的声音密码错误,系统将显示“ERROR!”提醒用户再次输入,用户连续输错3次密码后,该门锁将锁死,用户只能通过钥匙开启门锁,无法再通过声控密码开启门锁。用户进屋后,可按下系统复位按钮为系统复位,系统复位后,声控密码将重新开启。由此完成声控开锁的控制。4.3系统总程序设计系统总程序主要由显示程序,声音传感器响应程序,门锁控制程序等几个部分组成,系统将首先对声音进行响应,判断启动开锁信号,之后对声音密码进行响应,处理声音密码,密码输入成功后,将启动开锁程序打开门锁。在整个程序执行过程中,始终配合显示程序共同执行,完成系统的所有功能,系统工作流程如图4-1所示。图4-1系统流程图系统启动后,首先运行LCD1602初始化程序,等待系统初始化完成后,中央控制器向LCD写入显示数据,LCD1602显示welcome!之后,系统将循环运行声音判断程序,判断是否有声音信号启动开锁,若无,则持续显示welcome!若有,则启动密码判断程序。密码判断程序将同时启动外部输入中断以及定时器中断,定时器中断用于设定密码输入频率,外部中断用于控制声音密码输入,在密码输入完成之后,系统将对输入密码的正确性进行判断,若系统密码输入错误次数超过3次,则启动门锁抱死系统,将门锁锁死,此时声音解锁程序失效,无法通过声音控制程序对系统进行解锁,只能通过钥匙打开门锁。若输入密码错误此时不超过3次,系统则会重置,用户可再次输入声音密码。若用户密码输入正确,则门锁自动打开,并保持开启状态10s,等待用户进入室内,用户进入室内后,门锁会自动关闭,由此完成一次开锁。系统的运行依赖与各个模块的相互配合,依据系统运行流程设计,对相关程序进行设计,实现系统功能,完成声控电子锁的软件程序设计。第五章系统的组装与调试5.1系统的组装本设计依据系统的硬件原理图设计,购买相关硬件单元模块,对实物进行组装,依据程序中对各个引脚的定义,对各个模块进行连线,连线结果如图5-1所示。图5-1实物连接图完成对实物连接后,对软件代码进行编写,编写界面如图5-2所示。图5-2代码编写界面编写软件使用ArduinoIDE进行,该软件为Arduino的开发总成,能够实现对代码的编写,编译,下载,测试于一体的开发界面。完成对程序的编写之后,对程序进行编译,编译结果如图5-3所示。图5-3编译结果由编译结果显示,整个软件程序共占用4962字节的程序存储器,系统总程序存储器为30720字节,占用16%,芯片程序存储器共32K字节,其中的一部分被系统的BootLoader程序占用,因此可供用户调用的程序存储器共30720字节。在程序设计中定义的全局变量共占用326字节内存存储器,系统共2048字节内存存储器,共占用15%,剩余1722字节内存存储器可供系统动态调用。软件程序编写完成后,将程序烧录入中央控制器中,实物制作完成。5.2系统的调试实物制作完成后,本设计将对系统进行调试,测试系统的所有功能,观察各个模块工作是否正常。首先,对系统上电,上电结果如图5-4所示。图5-4系统上电结果结果显示,系统上电后,大约在1s后系统完成初始化,LCD1602启动显示,屏幕第一行中央显示welcome!字符,上电结果如图5-5所示。图5-5系统上电结果系统上电完成后,对系统声音密码录入的功能进行测试,首先通过拍手等动作发出较大声音,启动系统的声音密码输入功能,启动结果如图5-6所示。图5-6启动声音录入由图可知,系统能够启动录入功能,显示屏显示PleaseInput,提醒用户输入声音密码,之后,输入正确的声音密码,两密码间隔1s左右,输入时,可观察到液晶屏幕显示*字字符,提示密码的录入个数,密码录入完成后,系统结果如图5-7所示。图5-7录入正确密码由结果可知,当密码录入正确时,系统的屏幕显示THEKEYRIGHT!,提示密码输入正确,同时,门锁指示灯亮起,提示门锁已打开,经过10s延时后,门锁自动关闭,门锁指示灯熄灭同时屏幕显示welcome!字符。之后,本设计将对连续错误密码输入进行测试,首先启动声音密码输入,并输入一错误的声音密码,输入错误后,系统结果如图5-8所示。图5-8密码输入错误此时,显示屏显示ERROR!提示密码输入错误,并自动返回输入界面提示重新输入,再次输入错误密码后,系统将再次返回重新输入状态,再次输入错误密码后,系统响应结果如图5-9所示。图5-9连续错误密码输入由结果显示,连续密码输入错误后,系统显示屏显示Warring!,并且系统启动了声光报警,发出连续的报警灯光与报警声音,此时,门锁未开启,用户仅能通过使用钥匙的方式,打开门锁,并重启系统,以关闭报警,恢复系统功能。经过对系统的调试,系统的所有功能工作正常,系统全部设计功能能够实现,本次声控电子锁设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论