基于单片机的蓝牙无线密码锁设计和实现机械自动化专业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录
摘要 (Ⅰ)
Abstract (Ⅰ)
引言 (1)
1系统总体设计 (3)
1.1系统设计要求 (3)
1.2系统设计思路 (3)
2系统硬件设计 (5)
2.1设计原理 (5)
2.2 主控模块 (5)
2.3 芯片模块 (8)
2.4矩阵键盘模块 (9)
2.5液晶显示模块 (10)
2.6继电器驱动模块 (12)
2.7蜂鸣器模块 (13)
2.8蓝牙模块 (14)
3系统软件设计 (16)
3.1软件设计开发环境 (16)
3.2编程语言选择 (16)
3.3程序流程图 (17)
4系统调试 (20)
4.1硬件调试 (20)
4.2软件调试 (20)
4.3问题及解决方法 (21)
结论 (23)
参考文献 (24)
附录1 硬件原理图 (26)
附录2源程序清单 (27)
致谢 (34)
摘要
在我们的生活当中,处处都能看到锁的身影,小到家门上的锁,大到银行保险柜上的锁。

当人们想要保护贵重物品时,锁往往会被广泛使用。

随着时代的不断发展与进步,人们对锁的安全性越来越重视。

传统机械锁,由于其内部结构简单,使用安全性低,所以慢慢的淡出了人们的视野。

具有蓝牙功能的电子密码锁渐渐受到了大家的喜爱。

和传统机械锁相比,运用蓝牙技术的密码锁,能够成功地保障用户的安全信息,可以极大程度的解决旧锁具的不足,满足了人们对于锁的安全性的要求。

在基于单片机的蓝牙无线密码锁设计中,将蓝牙技术作为本次设计的核心内容,通过运用STC89C52单片机,加上LCD液晶显示器模块,以及多种类的相关零件,可以提供多种较为便利的设定,成功帮助用户解决开锁以及闭锁等诸多方面的内容,且将整个过程科学合理化,最大程度地保障人们的安全。

经实验验证,相比于传统机械锁,蓝牙无线密码锁具有安全便捷成本低等优点,可普遍应用于家庭、宾馆、办公大楼、银行等地方。

这样安全便捷的开锁方式给人们的日常生活和工作提供了保障,保护了人员和财产的安全,大大提高了安全系数。

关键词:单片机;蓝牙模块;LCD1602;密码锁
Abstract
In our life, everywhere can see the figure of the lock, small to the door on the lock, big to the bank safe on the lock. Locks are often widely used when people want to protect valuables. With the continuous development and progress of The Times, people pay more and more attention to the security of locks. Because of its simple internal structure and low safety, traditional mechanical locks gradually fade out of people's sight. The electronic password lock with bluetooth wireless function has gradually become popular. Compared with the traditional mechanical lock, the password lock of bluetooth technology can successfully guarantee the user's security information, and can greatly solve the shortage of the old lock, meeting people's requirements for the security of the lock.
In bluetooth wireless combination lock design based on single chip microcomputer, the bluetooth technology as the core content of this design, using STC89C52 single-chip computer, and LCD liquid crystal display template, and a variety of related parts, under the author's personal test, it can provide a variety of more convenient setting, success to help users solve the lock and closure of many aspects, such as content, and the whole process will be scientific and rational, to guarantee the safety of the people.
Verified by the experiment, compared with the traditional mechanical locks, bluetooth wireless combination lock has convenient safe low cost advantages, can be widely used in home, hotel, office buildings, Banks and other places, so safe and convenient way to open the lock has provided the safeguard for People's Daily life and work, to protect the safety of persons and property, has greatly increased the safety coefficient.
Keywords: single chip microcomputer; bluetooth module; LCD1602; combination lock
引言
在很久以前,锁就被广泛使用,人们大多数用它来防盗。

因此,锁对人们来说很重要。

人们的追求一直是锁匠的目标,最大程度上迎合人们的追求也是锁匠的心愿。

人们对锁的要求越高,对大小、形状、安全性就越苛刻,锁已经随着人们的需求而变化。

随着技术的飞速发展,人们对安全越来越重视,蓝牙密码锁越来越受欢迎。

它弥补了传统密码锁的安全性低、体积大、设置密码复杂等缺点。

使用单片机控制的蓝牙无线密码锁[1],不但在功能上远胜于传统密码锁,而且具有更高的灵活性和稳定性,并且蓝牙无线密码锁可以实现密码掉电保存的功能。

随着我国蓝牙技术的不断提升,蓝牙无线密码锁将越来越受到人们的喜爱。

在当今的网络时代,每个人在互联网进行相关浏览时,都会设定大量的密码,比如QQ账户的密码以及微信账户的密码等等,然而许多用户在使用完密码之后都会将其遗忘,亦或是被不法分子冒用,因此传统的安全密码依然不能够满足目前时代的需求。

如今在生活之中,钥匙分布在各个领域之中,例如汽车的钥匙以及大门的钥匙,随着科学技术的不断发展这些原有的锁具并不能提供足够的安全性,然而我们的生活又不能离开这些锁具,这是我们必须要直面的问题。

当今时代要求我们越来越重视深化和权威化,在这个信息时代之下,对于信息的保存也变得越来越重要。

为了解决这个存在已久的难题,在近些年来,有不少专家学者将视线瞄向了新兴的蓝牙技术。

该技术能够运用数据交换的方式来帮助用户实现信息以及设备的转移,并且通过加密算法来处理数据,极大的提高了安全性[2]。

在20世纪70年代之后,由于大规模集成电路出现,使得电子密码锁在体积上大大减小,重量减轻很多,但价格变得越来越高,这使得大多数人都不能接受,因此它使用的范围非常有限,难以普及。

此时电子密码锁的研究处于停滞不前的状态,技术一直没有进步。

到20世纪90年代后,由于一些发达国家的电子技术和蓝牙技术的不断发展,人们开始进一步研究电子密码锁,使得电子密码锁的技术进步了
很多,这也为蓝牙密码锁的出现提供了技术上的支持。

如今,随着蓝牙技术的应用不断扩大,蓝牙技术已相当成熟,蓝牙功能的密码锁越来越多。

智能电子密码锁已经发展到很高的水平,近年来单片机的应用也取得了全面的发展。

它在国外很早就发展起来,因此也被广泛使用,它主要用于昂贵的房屋,银行和保险箱。

在国内这方面发展也很迅速,无论是自行开发还是引入外来,它在重要的地方都很常见,因为价格比普通的锁贵,所以在早期仅仅拥有着较少的用户能够担负起高额的费用,然而目前随着科学技术的普及,越来越多的人群开始接受这一设计。

蓝牙技术的飞速发展得益于低成本设备的推出及其快速发展,以及可靠加密算法的研究与开发[3]。

另一方面,蓝牙技术与许多其他技术一样,也正从私有技术转变为公共技术,逐渐成为尖端高科技产品之一,现在它已成为各种高科技产品的标志。

跟传统密码锁相比,蓝牙无线密码锁组合量大,不易被破译,而且在密码不具有安全性的情况下还可以更换密码,比传统密码锁应用要灵活的多,而且还伴随报警机制,在密码连续输入错误3次的情况下可以发出报警声音。

本篇文章共分为四个章节,具体内容如下:
第一章着重于系统总体设计,主要阐述了系统设计要求和思路,并根据设计目的选择合适的主控系统。

第二章介绍了系统的硬件设计,其中包括每个模块的设计原理,并根据系统的设计要求选取单片机型号,选择最适合要求的蓝牙模块和液晶显示屏。

第三章讲述了系统的软件设计,简要介绍了系统的开发环境以及编程语言选择和系统流程图。

第四章是系统的调试部分,包括系统的硬件测试以及软件测试,并对设计中出现的问题进行了简单的讨论和解决。

1系统总体设计
为了实现远程开锁,保护人们财产和信息安全,本文设计了一个具有报警、远程控制、修改密码、虚假密码等功能于一体的基于单片机的蓝牙无线密码锁系统,以此来对锁的安全性进行改善。

1.1系统设计要求
(1)采用AT24C02芯片,用于储存设置的密码,并具有掉电之后保存密码功能;
(2)用户可以自行设定对应的密码,想要更换成新密码,必须要重新输入原有密码两次才可以通过系统的审核;
(3)密码输入错误3次,蜂鸣器响,报警锁死,屏幕显示ERROR;
(4)输入正确的密码继电器吸合,开锁指示灯亮,屏幕显示OPEN;
(5) 4×4矩阵键盘包括0~9的数字键和A~D的功能键以及*、#按键;
(6)液晶屏幕采用了新型的光学感应系统,能够成功地对应天气进行相应的屏幕转变,从而最大程度的节约电能;
(7)可以使用虚假密码,开锁时可以随意输入虚假密码掩人耳目,防止他人窃取密码;
(8)采用蓝牙模块,可以实现远程开锁。

1.2系统设计思路
在总体方案的选定上,最初考虑了两种方案,一种是利用数字电路来实现密码锁的功能,配合其他主控芯片,结合蓝牙模块来实现预期的功能,另一种是使用单片机作为主控芯片[4],利用其可编程性,来实现密码锁功能,同时兼顾了蓝牙模块的使用。

方案一:用数字电路控制系统
运用触发器构成的数字逻辑电路作为密码锁的核心控制,当用户想要避免自己的信息泄露时,只需要按下对应的干扰按键,就能够成功的终止当前的密码输入行为,而且如果该用户在进行密码输入时,使用了过长的时间那么系统会判定此次输入无效并发出警报,通过这种方式能够使整个系统的操作较为便捷,易操作,缺点就是灵活性太差,容易给用户带来不必要的麻烦,并且在加入蓝牙模块时,还要额
外加入主控芯片,实行起来复杂且成本高,使用效果也不是很好。

因此,这种方案没有得到实际的应用。

方案二:用单片机控制系统
运用单片机作为主要控制系统,单片机是一种虽然小但很完整的芯片,应用在集成电路中,也可以称之为微型计算机系统。

它很稳定并且能够对接收的数据进行实时反应,常运用在工业环境中。

再外接液晶显示器、蓝牙模块、矩阵键盘、存储芯片等器件,单片机通过I/O 口控制外接设备。

用户可以有两种方式输入密码,可以使用矩阵键盘输入密码也可以使用蓝牙APP输入密码。

如果成功的输入正确的密码,继电器就会吸合,开锁指示灯亮,屏幕会显示为打开状态。

如果并没有输入正确的密码,那么蜂鸣器会发出对应的警报。

如果输入三次错误内容,那么蜂器将会一直保持警报状态,整个体统进入锁死状态。

通过两种方案相比较,方案二比较好。

其最大的优点就是灵活度高、性能高、价格低廉,所以本设计采用单片机控制系统的方案。

2系统硬件设计
2.1设计原理
本设计的主要硬件由单片机[5]、显示模块、驱动模块等硬件组成。

在整个系统运转时,单片机会依照用户实际输入的对应内容,在此过程中,单片机判断用户输入密码的正确性。

如果成功的输入正确的密码,继电器就会吸合,开锁指示灯亮,屏幕会显示为打开状态。

如果并没有输入正确的密码,那么蜂鸣器会发出对应的警报。

如果多次回答错误内容,系统会根据这一情况,判定为他人盗用,整个体统进入锁死状态。

蓝牙无线密码锁硬件原理框图如图2.1所示。

图2.1 蓝牙无线密码锁硬件原理框图
2.2 主控模块
单片机在本次毕业设计中起到了至关重要的角色,它是整个设计方案的核心。

本项目拟采用单片机作为主要控制系统,拟采用STC89C52单片机和STM32单片机,两种单片机对比如下所示。

方案一:STC89C52单片机
STC89C52单片机拥有着诸多方面的优点,例如运转速度极快,而且对能源的需求不高,可以有效抵抗外部的干扰等诸多方面,而且其指令代码能够与传统的五一单片机进行很好的衔接。

STC89C52单片机内部存在完整操作处理器,处理的对象单位并非字或者字节,而是位。

采用51Core内核,拥有64KB空间。

同时由于自带的双地址区间,使得STC89C52单片机使用方式更加多样化。

方案二:STM32单片机
STM32单片机主要服务于Cortex-M内核,含有1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,但由于性能优异,使用起来比STC89C52单片机复杂的多,因此本次设计不准备使用STM32单片机。

通过两种方案相比较,方案一比较好。

其要求低、功能齐全,在较小的范围内可以实现全方面的功能,所以本设计选择STC89C52单片机作为主控芯片。

STC89C52单片机在进入工作后能够一直保持稳定的工作状态,对于电压的需求需要在5.5V到2.0V之间,进入工作状态后,它的工作频率始终保持在48Hz以下,对于STC89C52单片机而言,它拥有以下几个特征:首先它拥有着把给自己的内部程序储存空间,其次它拥有着三个定时器帮助其工作,最后它拥有着较强的抗干扰性,能够成功地显示当前的工作状态。

STC89C52单片机原理图如图2.2所示。

图2.2 STC89C52单片机原理图
本设计运用最少的零部件组成的单片机可以工作的系统,可以被称为最小系统[6]。

对于STC89C52单片机而言,最小系统必须要拥有单片机、晶振电路、复位电路。

晶振电路和复位电路是单片机运行的必要条件,并且能使单片机一直处于正常工作状态。

通常情况下,最小系统往往是整个系统中最重要的部分。

通过对其进行相应的操作以
及改善,能够帮助我们完成许多复杂的工作。

单片机最小系统原理图如图2.3所示。

图2.3 单片机最小系统原理图
(1)晶振电路
晶振电路是晶体振荡器的简写,它能够在实际的系统工作之中提供信号,单片机可以依赖该信号发出对应的指令,从而进行恰当的命令。

晶振在整个系统之中拥有着极为重要的意义,它能够成功的保证单片机能够正常工作,振荡频率范围通常在1.2~12MHz之间。

晶振电路原理图如图2.4所示。

图2.4 STC89C52晶振电路原理图
(2)复位电路
复位电路能够成功地帮助单片机进行复位工作,它对于单片机的作用,就像计算机的重启按键。

一旦单片机陷入了混乱之中,没有办法进入下一步的工作流程,那么在此时我们可以选择开启复位电路,从而帮助单片机恢复到原有的设定之中,从而重新开始程序的设定。

本次单片机的复位工作必须要在第9引脚接高电平持续2μs才可以实现。

复位电路原理图如图2.5所示。

图2.5 STC89C52复位电路原理图
2.3芯片模块
AT24C02芯片是一个2K位的串行CMOS EEPROM存储设备,对比于传统的芯片,它拥有较大存储空间,目前使用的是I2C技术,拥有较高的可使用性。

现今我们使用的CMOS技术,可以最大成度的减少能源的耗损,AT24C02芯片具有16字节的页写缓冲器,并且于I2C接口处进行工作,可以提供极强的保护能力[7]。

A T24C02芯片已经在许多实验中出现过,它的主要功能是存储一些断电后需要保存的数据,上一次运行中保存的数据可以在下一次运行中调出。

AT24C02芯片管脚描述和可靠参数见表2.1和表2.2。

表2.1 AT24C02芯片管脚描述
管脚名称功能
A0、A1、A2器件地址选择
SDA串行数据/地址
SCL串行时钟
WP写保护
Vcc+1.8V~6.0V工作电压
Vss地
表2.2 AT24C02芯片可靠参数
符号参数最小单位参考测试模式
N END耐久性1,000,000周期/字节MIL-STD-883,测试方法1033
T DR数据保存时间100年MIL-STD-883,测试方法1008
V ZAP ESD2000V MIL-STD-883,测试方法3015
I LTH上拉电流100mA JEDEC标准17
通常情况下,芯片用来传输信号的零件是通过发送器的方式,与之相结合的所有设备都可以成功通过这种方式来接收其发送的对应信号,而整个信号传输的工作都可以在总设备上进行相应的控制,从而最大程度的解决问题,可以在主设备上对开关信号进行相应的控制,并且在主设备以及辅助设备上都能够进行对应的操作工作。

AT24C02芯片原理图如图2.6所示。

图2.6 AT24C02芯片原理图
2.4矩阵键盘模块
接入数字键盘作用是用来输入数字密码和进行基本操作,本作品采用的是矩阵键盘模块。

因为要实现数字密码的输入,所以在按键的设计上,首先要有0~9这十个数字按键,其次为了控制继电器的闭合和流程中确认的操作,还要有*和#两个按键,而且因为蓝牙模块的加入,与之对应的操作也随之变多,所以还要有ABCD四个按键,AB键备用,C键删除密码,D键重置密码。

矩阵键盘作为本次试验中的重要硬件,它本身是由两条行线以及两条列线共同组成的键盘。

在两条线的彼此交接处都拥有对应的按钮,因此在整个系统之中的中按钮为4×4个,这样的排列方式能够很好地将端口的利用率达到最高水准,因此能够在实际的设计之中将端口的数量降低为最小值,一般情况下我们都可以将按钮排列成一定的形状。

在矩阵键盘中,每条线并不是绝对会用垂直的方法互相连接,而是通
过一个按钮进行相应的连接。

单片机共拥有着8个端口,在这种情况下能形成16个按钮,这比上面提到的,要整整多出一倍,而多出的按钮也使得它的功能更为强大。

如果添加额外的行,则可以形成20个按键的键盘,但是独立按键连接只能再有一个按键。

可以看出,当所需按键的数量相对较大时,使用矩阵方法连接键盘是非常合理的[8]。

矩阵键盘原理图如图2.7所示。

图2.7 矩阵键盘原理图
2.5液晶显示模块
显示模块主要功能是显示英文以及特殊符号,显示模块能够在实际工作中同时显示两行字符,针对显示模块我拟设计了两种方案,对比如下。

方案一:LED数码管
LED数码管侧重于对数字的显示,当采用动态扫描法与单片机连接时,虽然占用的单片机口线少,电路简单,性价比较高。

但由于本设计显示数据较多,采用数码管不能完全实现显示功能,故未采纳本方案。

方案二:LCD1602液晶显示器
LCD1602液晶显示器可由单片机驱动,它可以显示英文以及特殊符号等信息,整体结构美观,同时LCD1602液晶显示器的编写程
序简单,价格便宜,重量较轻而且体积也偏小,能够成功地降低能源的耗损。

经比较发现,LCD1602液晶显示器成本低、易开发且能大量显示字符,符合本设计要求,故选用方案二。

LCD1602液晶显示器实物图如图2.8所示。

图2.8 LCD1602液晶显示器实物图
液晶显示的原理是运用了液晶这一物质在其受到对应电压之后,各粒子之间会产生对应的工作,从而显示对应的图形,这种图形只有在液晶被通电之后,才可以被显现,相较于传统的显示器,液晶显示器普遍拥有着较薄的厚度,而且还拥有着较为丰富的图案显示,目前已被运用于各个领域之中,例如家庭电视以及超薄计算机。

在市场上拥有着诸多类型的液晶显示器,我们可以通过其显示方法将它分为许多种类,尤其类型的判断还可以根据色彩显示以及灰度等方面进行甄别。

LCD1602液晶显示器原理图如图2.9所示。

图2.9 LCD1602液晶显示器原理图
液晶显示屏上显示字符通常都拥有着极为复杂的情况,因为字符
之间是由不同的矩阵共同排列进行组成,因此在实际工作之中,我们需要对字节进行相应的确认,将并不显示的字节设定为零,将可以显示的,直接显示为1,那么我们就可以在实际工作中对直接是否能够显示进行实际的检查,如果对应区域出现了问题,我们可以按照排列号和实际列数来对其直接进行相应的查找[9]。

LCD1602引脚接口说明和控制命令见表2.3和表2.4。

表2.3 引脚接口说明表
编号符号引脚说明编号符号引脚说明
1 VSS 电源地9 D
2 数据
2 VDD 电源正极10 D
3 数据
3 VL 液晶显示偏压11 D
4 数据
4 RS 数据/命令选择12 D
5 数据
5 R/W 读/写选择13 D
6 数据
6 E 使能信号14 D
7 数据
7 D0 数据15 BLA 背光源正极
8 D1 数据16 BLK 背光源负极
表2.4 控制命令表
2.6继电器驱动模块
在本次系统设计里,我们采用了继电器来帮助我们成功的认知锁的开关状态。

为了更加明确具体的开关信息,本次设计还另外增加了电磁锁。

继电器通常情况下由铁芯以及线圈等硬件共同组成。

当我们
在线圈的对应位置施加相应的电压,在电流通过线圈之后,能够成功地产生电磁效应,从而帮助整个继电器成功地进入到工作状态,电磁锁就会打开。

一旦我们将电源关闭,那么对应的电磁效应会随之消失,与此同时整个继电器就会停止目前的工作,电磁锁就会关闭[10]。

单片机在实际工作中的电平状态并不是不变的,随着电平状态的变化,在对继电器进行通电之后,继电器能够成功的进行工作,此时继电器充当驱动负载的开关。

继电器的线圈和端子是分开且互补的,其触点就相当于开关。

当我们对线圈进行通电时,那么就会产生对应的触点,来帮助继电器进入到工作状态。

继电器往往存在两种工作状态,一种是高压状态,一种是低压状态,高压状态下继电器能够在高压下工作,低压状态下继电器能够在低压下工作。

继电器原理图如图2.10所示。

图2.10 继电器原理图
2.7蜂鸣器模块
在本次设计中接入声音报警器是为了在输入密码时可以得到按键声音的反馈,从而实现人机交互,同时还用于实现连续三次密码输入错误系统报警功能,当连续三次密码输入错误时,声音报警器将始终发出短促的警报声[11]。

针对报警器我拟设计了两种方案,对比如下。

方案一:ISD4004集成芯片
ISD4004是一种语音集成芯片,它需要扩充喇叭驱动电路且其本身控制比较繁琐、电路比较复杂,稳定性差。

基于以上考虑,所以放弃了此方案。

方案二:蜂鸣器
蜂鸣器具有电路简单,性能可靠、稳定等优点,最重要的是成本较低,效果较好。

通过两种方案相比较,方案二比较好。

其成本低廉、操作便捷,所以本设计选择蜂鸣器作为报警器。

目前国际上大多数的蜂鸣器都采用了驱动的方式来进行工作,如果蜂鸣器成功地接收到震荡源,那么,此时蜂鸣器就会进入工作之中,如果并没有收到对应的震荡源,那么将不会发出对应的命令信息,因此想要蜂鸣器进入工作,必须要提供对应的方波来促进帮助其进入工作。

通常情况下,拥有震荡源的蜂鸣器往往比没有震荡源的蜂鸣机价格更为昂贵,因为拥有震荡源的蜂鸣器能够减少整个工作的流程,从而帮助程序的控制以及设计进行更加便捷的操作。

由于蜂鸣器的工作电流通常较大,因此在实际工作之中必须要运用放大电路的方式来帮助其进入正常的工作之中,在一般情况下我们都会选择三极管来辅助工作,在整个设计的运作流程之中,三极管对于蜂鸣器的重要性不言而喻。

蜂鸣器原理图如图2.11所示。

图2.11 蜂鸣器原理图
2.8蓝牙模块
蓝牙模块的主要功能是实现远程开锁,运用蓝牙模块能够成功的帮助设备进行无线连接,而且能够很好的与单片机系统兼容,从而帮助系统编写。

针对蓝牙模块我拟设计了两种方案,对比如下。

方案一:HC-05蓝牙模块
HC-05蓝牙模块是高性能的蓝牙串行端口模块[12],主从可指令切换,指令丰富齐全,蓝牙模块的名字和密码可以进行更改。

方案二:HC-06蓝牙模块。

相关文档
最新文档