备注:本文原自2021年答主本科毕业设计
第五章 智能门锁系统测试
经过前几章对各个模块功能的设计,本章将对低功耗无线智能门锁进行系统测试,以确保门锁具备安全、便携、低功耗、实用的功能特性。测试内容主要包括对OLED模块和解锁模块进行测试。
5.1 基本流程
在对各个模块测试之前,首先使用USB线把智能门锁与电脑连接,通过Keil5软件打开智能门锁的主程序,点击左上角的“Rebuild”,如图5-1所示,此时会生成一个Hex文件。
接着通过普中科技提供的PZ-ISP下载器,打开对应的Hex文件,如图5-2所示,配置好恰当的波特率,点击“程序下载”,即可把Hex文件烧入到智能门锁系统中。
第一次使用指纹模块时,可以通过AS608上位机测试软件来录入指纹。使用USB转TTL—CH340模块下载线,把AS608指纹模块直接与电脑连接,打开上位机软件,点击录入指纹,如图5-3所示,就能把用户指纹录入指纹模块中。
图5-1 Keil软件
图5-2 普中科技下载器
图5-3 AS608上位机软件
除此之外的如果有多个用户需要使用智能门锁,可以通过OLED的菜单页面,录入多个用户的指纹。首先解锁智能门锁,进入菜单界面。当菜单页面的光标指向“1、录入指纹”时,如图5-4所示,点击矩阵键盘的S16按键,对应菜单中的“确定”。此时OLED会提示把手指放在指纹模块上面。当不同的用户把手指放在指纹模块上面后,模块会把这些新用户的指纹存储到指纹库中,并以一串数字对新的指纹进行命名。以后新用户使用指纹进行解锁时,就能自动从指纹库中查找是否有匹配的指纹,如果存在匹配的指纹,则执行解锁操作。
图5-4 OLED菜单录入指纹
5.2 OELD模块测试
OLED模块测试有关OLED开机时的显示界面、外设加载时的提示界面、锁屏时的显示画面和进入菜单后的操作界面。
STM32芯片上通电后,OLED屏幕首先展示了通过取模软件获取的图片,作为开机界面,如图5-5所示。用户可以自己挑选大小合适的黑白图片,作为自己的个性开机界面。
之后低功耗智能门锁软件会对各个外设模块的GPIO执行初始化,当指纹模块与STM32芯片连接正常时,可以正常执行初始化,OLED会展示初始化成功的信息,如图5-6所示。当指纹模块管脚连接错误,无法正常初始化时,则会显示连接失败信息,如图5-7所示,OLED屏幕停留在加载失败界面。
当初始化成功后,OLED显示锁屏界面,锁屏界面的内容包括当前的时间、日期和星期,如图5-8所示。如果需要修改时间和日期,可以通过菜单栏的选项修改。
输入正确的密码后,则可以进入到菜单界面,如图5-9所示。菜单的内容包括“录入指纹”、“删除指纹”、“修改密码”、“修改时间”、“录入卡片”、“查看信息”,用户可以通过操作矩阵按键来移动光标,从而指向不同的序号,执行对应功能。用户如果没有其他操作需要执行,可以点击按键S15,对应着锁定功能;用户也可以等待30秒,门锁系统将自动锁定。
本次OLED模块测试中,设备工作正常,屏幕能完整显示取模软件中的图案,初始化中提示的单词字母符合代码中的设定,即使初始化失败也能给用户做出恰当的提示,OLED模块的测试结果达到了预期的要求。
图5-5 开机界面
图5-6 外设初始化成功
图5-7 外设初始化失败
图5-8 锁屏界面
图5-9 菜单界面
5.2 解锁模块测试
5.2.1 射频模块测试
当把匹配的IC卡放上射频模块后,解锁成功,OLED屏幕提示“卡片匹配”,同时LED显示绿灯,蜂鸣器鸣叫,持续1s,如图5-10所示。
图5-10 射频模块解锁成功
5.2.2 蓝牙模块测试
打开蓝牙调试器APP,点击HC-05进行连接,如图5-11所示。接着选择对话模式,在对话框内输入正确的8位密码,点击发送,手机端朝着HC-05发送密码,如图5-12所示。HC-05模块接收到正确的密码后,OLED提示“蓝牙匹配”,电机转动,同时LED显示绿灯,蜂鸣器鸣叫,持续1s,如图5-13所示。
图5-11 蓝牙调试器初始界面
图5-12 蓝牙调试器发送密码
图5-13 蓝牙模块解锁成功
5.2.3 指纹模块测试
用户把手指放在指纹模块的采集面板上,当指纹模块检测到用户手指时,OLED提示“正在检测指纹”,如图5-14所示。
当用户指纹匹配时,OLED提示“指纹匹配”,电机转动,LED显示绿灯,蜂鸣器鸣叫,持续1s,如图5-15所示。
如果用户指纹不匹配,则OLED提示“指纹不匹配”,如图5-16所示。指纹解锁成功后,OLED提示“已解锁!”,同时显示匹配分,匹配分越高,指纹识别的匹配程度越高,如图5-17所示。
如果用户多次尝试解锁都失败,可能是指纹模块被手指上的灰层所干扰,影响了模块的识别成功率,此时可以用水清洗下手指,用纸巾擦干后,再进行尝试。
图5-14 检测指纹界面
图5-15 指纹解锁成功
图5-16 指纹解锁失败
图5-17 匹配分
5.2.4 红外模块测试
当用户未使用红外遥控器时,系统不会对红外遥控器执行数值获取操作,红外模块处于较低的功耗状态;当按下红外遥控的案件后,触发了中断服务程序,此时红外模块才能获取红外遥控按键按下的具体数值。
用户使用红外遥控器输入密码,每输入一个数字,蜂鸣器短暂鸣叫作为输入提醒。输入正确的密码后,OLED提示“密码正确!”,LED显示绿灯,蜂鸣器鸣叫,持续1s,如图5-18所示。当用户输入密码错误,OLED提示“密码错误!”,LED显示红灯,蜂鸣器鸣叫,持续5s,如图5-19所示。
图5-18 红外解锁成功
图5-19 红外解锁失败
5.2.5 按键模块测试
用户使用矩阵按键输入密码,操作步骤与红外遥控输入密码的步骤大致相同。用户每按下一个按键时,蜂鸣器短暂鸣叫作为输入提醒。提示音的实现依靠按键输入模块代码,每次按下一个按键,输出一个数字,当执行完输出数字时,之后的代码令蜂鸣器引脚为低电平,延时500毫秒,再令其引脚为高电平,从而实现短暂鸣叫的效果。
输入正确的密码后,OLED提示“密码正确!”,LED显示绿灯,蜂鸣器鸣叫,持续1s,如图5-20所示。当用户输入密码错误,OLED提示“密码错误!”,LED显示红灯,蜂鸣器鸣叫,持续5s,如图5-21所示。
当用户输入密码的过程,OLED会对矩阵键盘各个数字的方位进行提示,包含0~9、Dis(显示数字或用“*”代替)、DEL(删除一个字符)、Clr(清空全部)、Bck(返回锁屏界面)、Ok(确定),在OLED中显示。同时用户通过按键输入的全部数字,OLED也会进行显示,如图5-22所示。
每个矩阵按键的下方也对应的数字提示,如图5-23所示。用户也可以参照该提示,按下不同的按键,如S12代表Dis,S14代表Clr。
图5-20 按键模块解锁成功
图5-21 按键模块解锁失败
图5-22 键盘和密码提示
图5-23 矩阵键盘上的数字提示
在以上射频模块、蓝牙模块、指纹模块、红外模块和按键模块的测试中,各个模块均能正常地工作。用户执行不同的开锁方式时,都能正确地判断用户输入的验证密钥是否正确,从而执行开锁或报警操作。本次解锁模块的测试达到了预期要求。
5.3 本章小结
本章对低功耗无线智能门锁系统的主要模块进行了测试。经过测试,OLED模块和解锁模块都正常运行。在不同的解锁环境下,智能门锁都能准确地根据接收到的信息,做出准确的判断,执行解锁操作,或进行声光报警,达到了预期的效果。各个外设具备的低功耗特性,使得低功耗智能门锁整体的功耗不高,符合系统的设计要求。
参考文献
[1] 化作尘.STM32项目设计:基于stm32f4的智能门锁[EB/OL].https://blog.csdn.net/mbs520/article/details/106987758,2020-06-27.
[2] 玉士蒙.基于云平台的智能门锁开发[D].北京建筑大学,2018.
[3] 胡栋辉.基于MSA和NB-IoT的高校寝室智能门锁系统的设计与实现[D].安徽大学,2020.
[4] 陆思茗.物联网Lora智能电子锁产品设计与开发[D].华南理工大学,2019.
[5] 陈丹.公寓智能门锁管理系统的设计和实现[D].中国科学院大学(工程管理与信息技术学院),2016.
[6] 聂凡杰.基于Reactor模式的高性能服务端框架技术的研究与实例分析[D].浙江理工大学,2020.