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

下载本文档

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

文档简介

1、声控电子锁设计摘要随着科技的发展与进步,人们的生活习惯也逐渐受到新的科技技术的影响,而逐渐发生改变。 锁具作为生活中最常用的设备之一, 经过了几百年的发展, 其功能未发生重大变化, 但其结构设计随着科技的进步而进步。 本设计提出了一种声控电子锁的设计, 该设计利用声音作为控制锁具开关的钥匙, 实现了免钥匙开锁功能,方便人们的出行。本次设计使用声音传感器模块与单片机设计,声音传感器使用驻极体话筒与相关放大电路的设计,单片机采用速度较快的Atmel的 AVR系列单片机,实现了对整个锁具的控制功能。本次设计将对整个系统的硬件单元与软件程序进行设计, 硬件包括中央控制电路的设计, 显示单元设计, 声音

2、识别与传感系统的设计以及相关执行单元的设计。 而对软件程序的设计包括对显示程序的设计, 对声音识别控制程序的设计等。 系统的软件程序与硬件系统相互配合共同完成系统地工作, 实现声音控制的功能。 该声控电子锁设计能够实现声音控制开启,替代目前的机械锁设计,为未来的锁具实现形式之一。关键字:声控;电子锁; AVR;传感器AbstractWith the development and progress of science and technology, people'sliving habits are gradually affected by new technology and t

3、echnology,and gradually change. As one of the most commonly used devices in dailylife, the lock has not changed significantly in function after hundredsof years of development, butitsstructuraldesign has improved withtheprogressofscienceand technology.Thisdesignputs forwarda designofsound controlele

4、ctroniclock, which USESsound as the key tocontrolthelock switchand realizesthefunctionofkeylessopening and locking,soas to facilitate people's travel. This design USES sound sensor moduleand microcontroller design, sound sensor using the electret microphoneand therelatedthedesignoftheamplifyingc

5、ircuit,single chipmicrocomputer using fast AtmelAVR series MCU, realizes the controlfunction of the lock. Unit, the design will be for the whole systemhardware and softwaredesign,hardware includingthe designofthe centralcontrolcircuit,thedisplayunitdesign,voice recognitionisassociatedwith the design

6、 of the sensor system and the execution unit design. Thesoftware program design includes the display program design, the voicerecognitioncontrolprogram designand so on. The softwareprogram ofthesystem and the hardware system cooperate to complete the work of the system and realize the function of so

7、und control. This sound control electronic lock design can realize sound control opening, replacing the current mechanical lock design, as one of the future lock implementation forms.Key words: voice control; Electronic lock; AVR. The sensor目 录摘要2Abstract3第一章绪论51.1 本设计研究背景及意义51.2 国外研究现状51.3 本论文主要容6第

8、二章系统的结构与功能设计72.1 系统的功能设计72.2 系统的结构设计7第三章声控电子锁硬件设计93.1 中央控制器设计93.2 显示模块设计103.3 声音传感器设计14第四章软件程序设计164.1 显示程序设计164.2 密码识别程序设计194.3 系统总程序设计26第五章系统的组装与调试285.1 系统的组装285.2 系统的调试29参考文献31致32第一章绪论1.1本设计研究背景及意义随着科技的进步与社会的发展, 人们生活水平越来越高, 生活也越来越方便。我国乃至世界锁具的发展经历了几百年时间, 已经进化成相对完善的结构。 锁具经过了几百年的变化与发展, 其基本功能未发生根本性的变化

9、, 依旧为为人们的生命财产安全保驾护航。 但随着科技的进步与发展, 锁具的形式更加多样, 结构也更为复杂,更难被破解。发展至今,人们最常用的锁具依旧为机械结构,随着电子科技的进步与发展, 新式的电子锁逐渐发展起来, 最为常用的即为常见的楼宇门电磁锁,其为电子锁的一类代表, 其部采用电磁结构控制锁具的开启与关闭,利用射频识别技术或远程开锁功能, 能够将锁打开, 实现无钥匙开锁。 该锁并非真正意义上的电子锁。 其任然采用机械式设计, 配有钥匙开孔, 加密方式以机械式加密为主, 但能够实现一定的电子锁性能, 能够实现非接触式开锁功能。 随着电子技术的发展与加密技术的进步, 新式的智能门锁逐渐涌现出来

10、。 智能门锁采用电子加密的方式, 采用全电子结构设计, 配合智能识别的方式, 能够实现人脸识别,指纹识别,虹膜识别等多种识别方式开启电子锁。 此类电子锁的设计大大方便了人们的出行, 人们出行不再需要携带大量的钥匙, 也不必再担心因钥匙丢失或忘记携带造成无法进门的情况发生。 本次设计提出了一种新式的声控电子锁的设计,该设计使用声音作为识别密码, 通过不同的声音组合形式组成一组声控密码,电子锁通过识别该密码, 控制锁的开启与关闭, 可以大大方便人们的生活与出行,实现无钥匙开锁的操作。1.2国外研究现状家庭防盗措施伴随着家庭概念的产生而产生。 最初的防盗措施仅仅为一扇门经过了几十上百年的发展。 才产

11、生了锁具, 锁具经过了几千年的发展。 到今天仍旧为家庭防盗最主要的措施。 从第一只锁具诞生到今天本所的发展已经经过了成百上千年的时间。 锁具的根本功能并未发生变化, 其主要作用依旧为保护居民财产安全。第一次锁具由中国人发明。 但随着时代的发展, 外国技术的不断进化使得国外防盗措施水平远远超过了我国, 尤其在近些年现在电子技术的发展以及人们创新能力的提高。 使得国外的防盗措施的防盗水平也越来越高。 随着时代的发展与科技的进步。国外科技依旧在不断发展之中, 国外的防盗水平也将越来越高。目前已出现了各种各样的新式防盗设施, 例如指纹锁, 密码锁,人脸识别等身份识别模式,使用红外探测等方式设计的防盗系

12、统也越来越多。随着外国技术的涌入中国的防盗系统也在跟随世界的变化而更新。 中国防盗技术的发展整体落后于世界的平均发展水平。 大部分家庭依旧使用传统的机械防盗锁作为自家的防盗系统而国外的电子系统尚未普及。 随着中国科学技术的进步, 国民素质的提高创新能力的增强我国在防盗系统的研究上。 将逐步追赶世界水平并不断进步达到跟世界水平相同的层次。1.3本论文主要容本论文旨在设计一款基于单片机的声控电子锁, 该电子锁能够实现声音控制的功能,能够通过输入一系列声音数据控制锁的开启与关闭, 该声控电子锁的主要功能依旧为实现锁具的基本功能, 保护人民的生命财产安全, 但本设计改变了以往的锁具的机械控制结构, 改

13、用电子控制结构, 实现了电子锁的设计。 本论文将对该声控电子锁的功能与实现结构进行分析, 分析实现声控电子锁应具有的结构。并依据结构与功能设计, 对系统的硬件单元进行设计。 系统的硬件单元包含中央控制器, 本设计将对中央控制器的控制电路, 电源电路,接口电路等电路进行设计。之后,本设计将对声音传感电路进行设计, 声音传感电路包含驻极体话筒,声音放大电路等电路设计,同时,本设计将对显示模块进行设计,对显示器件进行选型与设计,将完成整个系统地硬件电路设计。完成硬件电路设计之后,本设计将对系统地软件程序进行设计,软件程序包含声音传感程序,显示程序,密码判断程序, 系统加密程序等诸多程序组成, 本设计

14、将在完成系统的硬件电路设计与软件程序设计后, 购买相关实际电子元器件等, 对实际电路进行组装, 并对实物进行调试,完成本设计的所有设计功能。第二章系统的结构与功能设计2.1系统的功能设计本设计旨在设计一款声控电子锁, 替代传统的机械锁设计, 系统使用声音密码作为系统密码,系统具有声音密码控制,液晶显示,密码错误报警等功能,主要功能如下所示。( 1)声音密码控制功能:系统通过一定的声音密码对整个系统进行控制,系统能够识别声音数据, 并对声音密码进行记录, 通过有声与无声两种方式, 对密码进行录入,当录入的密码正确时,系统可将门锁打开,错误时,不打开门锁,以此来替代传统的机械结构。( 2)液晶显示

15、功能:能够通过液晶显示对系统的状态进行实时显示,并对用户的操作给与一定的指导, 例如,无密码输入时显示欢迎界面, 输入密码时提示用户输入密码, 密码输入正确显示输入正确, 输入错误时显示输入错误信息, 帮助用户完成整个操作,提供友好的人机交互功能。( 3)报警功能:当用户输入密码错误次数过多时,系统能够提供报警功能,报警功能包括声音报警与光报警, 报警存在的意义为若为外人闯入, 报警声能够震慑罪犯,阻止其闯入,同时能够吸引其他住户的注意,阻止罪犯犯罪。2.2系统的结构设计系统主要包含输入设备, 中央控制器, 输出设备几部分组成, 其组成结构如图 2-1 所示。图 2-1 系统结构框图其中输入设

16、备为拾音器与功率放大器, 拾音器作用为感知外界声音, 并转换为电信号,由于拾音器的转换功率较小, 输出功率不足以被中央控制器感知, 因此需要与功率放大器配合使用, 功率放大器负责对电信号进行放大, 放大至单片机能够识别的状态, 之后将声音数据传送至中央控制器, 中央控制器为系统的核心,负责整个系统的运行。 输出设备包括显示器件, 门锁控制器以及声光报警器组成,显示器件能够对相关信息进行显示, 辅助用户开锁, 门锁控制器负责对门锁进行控制,能够控制门锁的开启与关闭, 而声光报警单元作用是发出声光报警,在用户输入密码错误次数过多时, 发出声光报警, 提醒用户或起到震慑犯罪的功能,系统的各个模块共同

17、组建成该系统,各个模块缺一不可,相互配合,实现系统功能。第三章声控电子锁硬件设计3.1中央控制器设计中央控制电路是整个系统的核心,为保证系统的稳定运行,本设计选用 Arduino 控制器作为我们系统的核心,该控制器有众多分支,我们使用最常用的 Arduino Uno 作为我们的控制器设计,其引脚多,技术成熟,适合长时间运行。 Arduino Uno 控制器如下图所示:图3-1 Arduino Uno控制器其控制芯片为Atmel328p,为8 位单片机设计,置32K 程序存储器与2K 存存储器,最大时钟频率40MHz,带有 1K 容量的 EEPROM,该芯片共 32 枚引脚,含有 6 通道的 1

18、0 位 ADC,6枚 PWM输出引脚,其运行速度能够满足我们的要求,也可满足本论文的设计要求,因此,我们选择该控制器作为我们的控制器设计。该控制器共有 14 位数字引脚, 6 位模拟引脚,模拟引脚也具备数字信号输入输出功能, 同时具备 3.3V 与 5V 电压输出功能, 带有一个串口, 一个电源输入引脚,其采用的控制芯片速度是普通 51 单片机的几倍,拥有更加强大的控制能力。其各个引脚作用如表 3.1 所示:引脚名称0表3.1 Arduino Uno控制器引脚功能功能数字信号输入输出引脚0 号引脚,同时作为串口信号 RX端。1数字信号输入输出引脚 1 号引脚,同时作为串口信号 TX 端。2-1

19、3数字信号输入输出引脚, 带有 的引脚可作为 PWM脉冲宽度调制信号输出引脚。A0-A5模拟信号输入引脚,同时可兼用作数字信号输入输出引脚。AREF模拟输入信号,参考电压。IOREFIO 引脚接口信号参考电压。5V5V 电压输出3.3V3.3V 电压输出GND电源地VIN外部电源输入引脚,支持最大外部输入电压 12V。在编写程序对引脚进行操作时,需先定义引脚功能,之后对引脚进行操作。3.2显示模块设计显示模块的作用是显示设置的结果,显示数据较少, 因此,我们选择双行显示模块 LCD1602负责对测量结果进行显示。LCD1602是非常常用的显示器件,支持双行显示,每行16 个字符,共计 32个字

20、符,常见的1602 模块如图 3-2 所示:图 3-2 LCD1602 模块其支持 4 位传输模式与 8 位传输模式,可塑性大,通常 LCD1602模块都支持背光,其使用点阵液晶显示板,每个字符占据 5x11 个点阵,共可显示两行,其支持 ASCII 码显示,自带字库,可直接输送 ASCII 码序号。在 LCD1602启动时,需对其进行初始化设置,初始化命令如表 3.2 所示:表 3.2 LCD1602 控制命令表RR/DD6D5D4D3D2D1D0说明SW7清 显0000000001将 DDRAM填满 "20H",示并且设定 DDRAM的地址计数器(AC)到"0

21、0H"归位000000001*设定 DDRAM的地址计数器 (AC) 到 "00H", 并且将游标移到开头原点位置 ; 这个指令不改变 DDRAM的容显 示0000001DCBD=1: 整体显示开 关ON , C=1: 游 标控制ON,B=1: 游标位置反白允许 进 入00000001I/SI/D=1 ,光标或闪烁向模 式D右移动, AC增加 1。设置I/D=0 ,光标或闪烁向左移动,AC减少 1,S整个显示移动光 标000001S/R/*光标或显示移位指令或 显CL可使光标或显示在没示 移有读写数据的情况位 指下,向左或向右移动 ,令指令不改变 DDRAM的容功

22、 能00001DLNF*DL=0/1 : 4/8位数设定据,N=0/1, 单行 / 双行显示 ,F=0/1,5*8/5*10 点阵显示模式 设 置0001ACACACACACACCGRAM地址设置指令CGRA543210设置 CGRAM地址指M 地针,址设 定0010ACACACACACACDDRAM地址设置指令DDRA543210设置 DDRAM地址。一M 地行地 址围 00H4FH,址两行 DDRAM地址第一行 00H27H,第二行40H67H,读 忙01BACACACACACACACBF:忙标志位 ,BF=1,标 志F 6543210模块正在进行部操和 地作,此时模块不接受址任何外部指令

23、和数据。 BF=0,模块可以接受外部的指令和数据;写10DD6D5D4D3D2D1 D0 将数据 D7-D0写入到RAM7部的 RAM,将用户自指令定义的字符写入CGRAM中, D7D5为000,D4D0为 5 点的字模数据读11DD6D5D4D3D2D1 D0 从部 RAM读取数据RAM7D7 D0指令其引脚图如图 3-3 所示:图 3-3 LCD1602 引脚图LCD1602共有 16 枚引脚组成,其中 1 号脚为电源地脚, 2 号脚为电源正极引脚, VCOM脚为对比度调节引脚, RS 引脚为命令数据标志位, 0 为写入指令, 1 为写入数据, RW引脚为读写标志位, 0 为写入, 1 为

24、读取, E 为使能引脚,高电平有效, P00-P07 为数据命令复用引脚,共计 8 根,其运行在 8 位模式下需 8 位引脚,运行在 4 位模式下需 P04-P07 四位引脚,BLA为背光引脚, BLA+为背光正,BLA-为背光负。在使用 LCD1602需先对其进行初始化设置,才能对其进行读写操作。3.3声音传感器设计声控电路通常采用驻极体话筒与相关检测放大电路相结合的形式进行设计, 驻极体话筒是一类声音传感器, 负责感知外界声音, 并转换成电信号, 检测电路在接收到该电信号后进行响应, 打开开关,实现声音传感, 声控开关总体结构图如图3-4 所示:图 3-4 声控电路结构首先,声音经过驻极体

25、话筒的转化变成声电信号,该声电信号被送至下一级的放大电路中。 放大电路将对该声电信号进行放大, 经过放大的信号被送入下一句声电转换电路中, 该电路会将该信号转换成相应的电信号, 在电电信号超过设定阈值时,便会启动电路,接通开关,实现声音控制的功能。驻极体话筒是一类声音传感器,其部有两片相互间隔较近的金属薄片组成,通常,其中一枚薄片为金属制作,另一层为塑料膜状片,片上涂有金属涂料,在一枚金属薄片上加有一高电压,正电荷会在薄片上积累, 因此,在薄膜上将会感应出一低电压, 电子在薄膜上积累, 当外界存在声音时, 声音传导至薄膜引起薄膜的震动,薄膜与金属薄片之间的距离随声音的震动而发生不断地变化,由于

26、金属薄片之间距离的变化, 引起两金属片之间电容的改变,电容的变化引起薄片上存储电荷的改变, 由此产生一个变化的电压, 该电压与声音变化同步, 实现了对声音信号的采集。被采集的声音以电压的方式传入下一级的放大电路中, 放大电路通常采用电压放大电路设计, 能够实现对电压的放大, 由于由声音引起的电压信号较小, 因此,对该放大电路要求其放大倍数较高, 为实现较高的放大倍数, 该放大电路通常采用运算放大器进行设计, 运算放大器是一类放大元件, 本身由于理想运算放大器的放大倍数为无穷大, 但由于在现实条件下无法达到理想状态, 因此,通常所用的运算放大器的放大倍数为 1 万倍或更低,由于运算放大器的放大倍

27、数较高,直接使用运算放大器放大将导致声音微弱的变化将会触碰到运算放大器的峰值输出,造成声音信号的失真, 因此,需选用一定的运算放大器放发电路设计对声音信号进行放大。常见的运算放大器组成的放大电路如下图所示。图 3-5 电压放大电路输入电压通过一 10K限流电阻输入运算放大器的同相输入端, 运算放大器的反向输入端通过 10K 电阻接地,运算放大器的输出信号通过一 100K电阻接入运算放大器的反向输入端, 组成负反馈电路。 由于输出电压与同相输入端输入电压相位相同,与反向输入端输入相位相反,因此,输出由反相端输入时,输出端变回产生一个与原电压电位相反的电压,阻碍原电压的放大,形成负反馈。依据运算放

28、大器虚短路与虚断路的特点,放大倍数A 的计算公式如下:?3 = 1 + ?1(3-1 )R3为 100K 电阻, R2 为 10K 电阻,由此可得,该电路的放大倍数为11 倍。如果实现更高的放大倍数,则需适当改变两电阻的阻值。声电转换电路实际为一高倍数放大器,其放大倍数较声音放大电路的放大倍数更高。因此,在经过上级放大之后,声音信号已经达到了一个较高的电压,在经过该给放大电路的放大, 输出电压很容易触碰到该电路的峰值输出电压,造成电路输出一稳定的高电压,实现声音的控制电路开启。第四章软件程序设计4.1显示程序设计显示程序分为 LCD1602初始化程序与数据显示程序, 依据 LCD1602命令表

29、, LCD1602初始化程序如下int LCD1602_RS=12;int LCD1602_RW=11;int LCD1602_EN=10;int DB = 6, 7, 8, 9;/采用 4 线制接法,系统数据接口地址void LCD_Command_Write(int command)/写命令函数int i,temp;digitalWrite( LCD1602_RS,LOW);/拉低 rs 引脚digitalWrite( LCD1602_RW,LOW);/拉低 rw 引脚digitalWrite( LCD1602_EN,LOW);/拉低使能引脚,进入写指令模式temp=command &am

30、p; 0xf0;/取命令高 16 位for (i=DB0; 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=DB0; i <= 9; i+)/依次写入命令digit

31、alWrite(i,temp & 0x80); / temp <<= 1; /取指令低 8 位写入复位 temp 变量LCD1602digitalWrite( LCD1602_EN,HIGH);delayMicroseconds(1);digitalWrite( LCD1602_EN,LOW);void LCD_Data_Write(int dat)/LCD1602int i=0,temp;digitalWrite( LCD1602_RS,HIGH); /digitalWrite( LCD1602_RW,LOW);/digitalWrite( LCD1602_EN,LOW)

32、;拉高拉低数据写入函数RS引脚,写入数据RW,进入写模式temp=dat & 0xf0;/取数据高8 位写入for (i=DB0; 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=DB0; i <= 9; i+)digitalWr

33、ite(i,temp & 0x80);/temp <<= 1;依次写入数据digitalWrite( LCD1602_EN,HIGH); / delayMicroseconds(1); / digitalWrite( LCD1602_EN,LOW); /拉高系统使能延时 1us拉低系统使能LCD_Command_Write(address);LCD_Command_Write(0x28); / 设置光标自动 +1 delay(50);LCD_Command_Write(0x06);/设置关光标显示,屏幕不移动delay(50);LCD_Command_Write(0x0c)

34、;/关屏幕显示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 为设置显示起始位置为第一行第一个字符,

35、写指令0x01为清屏,光标复位,完成初始化的操作,之后,可向LCD1602中写入需显示的数据,并使其显示。4.2密码识别程序设计密码识别程序需调用系统中断功能, 并通过系统中断实现对声音密码的识别,由于每次声音密码产生将会产生一定的抖动,信号上升沿不稳定, 因此,需先对信号进行消抖,再对信号进行识别,密码识别程序如下。int n=0;long m,m1;int a,c,q;int b=4;int d=1;int starts;int f8;int i;int j;int st;int err;int spe=0;void setup()pinMode(4,INPUT);pinMode(3,OU

36、TPUT);pinMode(5,OUTPUT);pinMode(6,OUTPUT);pinMode(13,OUTPUT);Serial.begin(9600);attachInterrupt(0,blinkA,CHANGE);f0=1;digitalWrite(3,LOW);delay(20);lcd.begin(16, 2);lcd.setCursor(0, 0);lcd.print("Welcome!");void blinkA()if(starts)if(b>0&&b<4)fd=1;d+;b=4;elsem1=millis();c=m1-m

37、;if(c<1000)b=4;else if(c>1000&&c<2000)fd+1=0;d=d+1;b=1;else if(c>2000&&c<3000)fd+1=0;fd+2=0;d=d+2;b=2;else if(c>3000&&c<4000)fd+1=0;fd+2=0;fd+3=0;d=d+3;b=3;else if(b=4)else if(c>4000)b=4;err=1;d=1;lcd.clear();lcd.setCursor(0, 0);lcd.print("ERROR!&

38、quot;);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(fi);Serial.println("");elselcd.clear();lcd.setCursor(0, 0);lcd.print("Welcome!");void loop()st=digita

39、lRead(4);if(st)starts=starts;delay(80);if(starts)lcd.clear();delay(20);lcd.setCursor(0, 0);lcd.print("Please Input");if(d>1)for(j=0;j<d+1;j+)lcd.setCursor(j, 1);lcd.print('*');delay(10);if(spe<5)if(f1=0&&f2=0&&f3=1&&f4=0&&f5=0&&f6=1)

40、digitalWrite(13,HIGH);lcd.clear();delay(20);lcd.setCursor(0, 0);lcd.print("The Key Right!");delay(10000);digitalWrite(13,LOW);for(i=0;i<8;i+)fi=0;starts=0;spe=0;b=4;err=0;d=1;else if(d>8)digitalWrite(13,LOW);lcd.clear();lcd.setCursor(0, 0);lcd.print("ERROR!");delay(1000);er

41、r=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+)fi=0;声音识别程序调用了系统中断,当有声音超过设定阈值时,声音信号的高电平将触发系统中断, 中断子程序为密码识别程序, 密码识别程序同时调用了系统的定时器中断,定时器将对声音信号进行计时,计时时长为 1s,即每个声音脉冲持续时间约 1s,系统预设

42、密码为响、 响、空、空、响,每个声音持续 1s 时间,若密码输入错误次数超过 3 次,系统将强行关闭声控开锁功能, 此时,用户只能通过钥匙将门锁打开。整个声音识别程序通过声音开启,系统开机时,将向显示屏发送数据,显示屏显示“ welcome”字符。当系统检测到声音输入后,声控系统将开启,而开启声音不算作系统密码。声控系统开启后,将向现实屏发送数据,显示屏将显示“ Please Input ”,提示用户输入声音密码,用户可向系统输入声音密码,用户输入密码时,每输入一个密码,显示屏将显示一个“ * ”作为提示,用户可根据显示的“ * ”的多少判断输入的密码个数。当用户输入的密码数据正确时,系统将显

43、示“ Key The Key Right! ”同时开启门锁,门锁开启时间为 10s,若用于于 10s 未打开房门,则门锁自动关闭,需要用户重新输入密码。若用户输入的声音密码错误,系统将显示“ ERROR!”提醒用户再次输入,用户连续输错 3 次密码后,该门锁将锁死, 用户只能通过钥匙开启门锁, 无法再通过声控密码开启门锁。 用户进屋后,可按下系统复位按钮为系统复位, 系统复位后,声控密码将重新开启。由此完成声控开锁的控制。4.3系统总程序设计系统总程序主要由显示程序,声音传感器响应程序,门锁控制程序等几个部分组成,系统将首先对声音进行响应,判断启动开锁信号, 之后对声音密码进行响应,处理声音密

44、码,密码输入成功后,将启动开锁程序打开门锁。在整个程序执行过程中, 始终配合显示程序共同执行,完成系统的所有功能, 系统工作流程如图 4-1 所示。图 4-1 系统流程图系统启动后, 首先运行 LCD1602初始化程序, 等待系统初始化完成后, 中央控制器向 LCD写入显示数据, LCD1602显示 welcome!之后,系统将循环运行声音判断程序,判断是否有声音信号启动开锁, 若无,则持续显示 welcome!若有,则启动密码判断程序。密码判断程序将同时启动外部输入中断以及定时器中断,定时器中断用于设定密码输入频率, 外部中断用于控制声音密码输入, 在密码输入完成之后,系统将对输入密码的正确性进行判断, 若系统密码输入错误次数超过 3 次,则启动门锁抱死系统,将门锁锁死,此时声音解锁程序失效,无法通过声音控制程序对系统进行解锁, 只能通过钥匙打开门锁。 若输入密码错误此时不超过 3 次,系统则会重置,用户可再次输入声音密码。若用户密码输入正确,则门锁自动打开,并保持开启状态 10s,等待用户进入室,用户进入室后,门锁会自动关闭,由此完成一次开锁。系统的运行依赖与各个模块的相互配合, 依据系统运行流程设计, 对相关程序进行设计,

温馨提示

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

评论

0/150

提交评论