基于Arduino的实验室智能门禁系统设计
扫描二维码
随时随地手机看文章
引言
随着地方高校建设的不断发展,一种为学生提供自由实践场所的创新性实验室开始出现并普及,相关的课程设计环节中实验教学所占比重越来越大。为了提高此类实验室的利用率,很有必要对实验室进行智能化管理升级,智能门禁系统的应用,可以成为提高管理效率的一个重要手段。本文设计了一款基于ArduinoUNO开源平台的多功能智能门禁系统,通过AS608光学指纹模块、门禁卡感应模块、按键模块、显示模块等,实现指纹的录入与验证,密码与门禁卡开锁,OLED显示屏交互等功能,该系统设计方案较为简单易行,可以为相关设计人员提供参考。
1系统总方案设计
系统总体方案设计如图1所示,本系统主要由ArduinoUNO单片机电路主板、电源模块、指纹模块、门禁卡模块、按键模块、显示模块、继电器以及12V电磁锁组成。系统由外接5V/12V双路电源模块供电,一路为系统主板供电,另一路为电磁锁提供输入电源。通过主板与3种传感器模块相连,实现指纹的录入与验证、密码设置修改与验证、门禁卡识别解锁等功能,当工作人员需要进入实验室时,可以灵活选择3种不同的解锁方式。该系统同时采用了OLED屏来实时显示设备的基本信息与解锁状态,便于使用人员判断门禁系统是否正常工作。
2硬件设计选型
2.1ArduinoUNO主板及扩展板
本文使用ArduinoUNO开源平台为核心控制组件,相较于其他的开发平台,其主要优势在于性价比高、便捷灵活、方便上手,主控板具有丰富的I/o接口,其中A0~A5端口可进行模拟量的输入、输出,0~13端口可以进行数字量的输入、输出(其中6个端口还可以进行PwM控制设置),同时可外接各式各样的扩展板,连接多种功能的传感器,具有强大的可拓展性,只需要通过配套数据线连接电脑端就可以快速进行程序的烧录。ArduinoUNo的主控制芯片为ATmega328P,存储空间为32字节,另外具有1字节的EEPRoM存储器空间,有着很好的兼容性、更快的处理速度以及更好的稳定性。
为了简化硬件连线,使用了配套的V5.0基础扩展板,如图2所示,扩展板对应引脚可直接插在控制板上,有效地增加了VCC电源端口以及GND接地端口数量,大部分传感器及元器件可直接与扩展板连接,避免了使用传统的面包板进行电源配置,理线更为清晰明确。
图2本系统使用的Arduino扩展板
2.2AS608指纹模块
系统的指纹识别部分采用的是AS608指纹模块,该模块具备高性能的光学指纹芯片,内置DSP运算单元,集成了稳定的识别算法,能高效快速地采集指纹图像并识别指纹特征。指纹模块主要用到4个端口,V+端口通过连接开发板的+5V电压输出口给指纹模块供电,+GN端口接入扩展板+GN端口接地,DT与XT端口和RAduino开发板的串口R2、串口R3相连,分别控制串行数据的输出与输入,以此进行指纹信息的收集和比对。
2.3门禁卡模块
门禁卡解锁部分采用的是MFXC-522射频卡感应模块,该模块成本低、体积小,集成了在13.56MHz下所有类型的通信方式和协议,通信采用SP1模式,有利于减少连线,目前已经得到了较为广泛的应用。在门禁系统工作时,可以使用片状1C卡或水滴状芯片卡进行数据的对比。
2.4按键模块
按键解锁部分,在保证基本功能实现的前提下,采用的是成本更低的4×4薄膜矩阵键盘,只占用8个标准I/0接口,分别连接RAduino主板的4~11数字串口,实现按键模块与开发板之间的通信,完成密码解锁、密码修改等相关功能。
2.50LED显示模块
屏幕显示部分选用的是基于12C模式的0.96寸0LEN显示屏模块,该显示屏显示清晰,占用引脚少,成本较低,可以进行中文字符的准确显示,便于使用。其对应的库文件较为成熟,常用的有u8glib库、u8g2库以及RdafAuit库,在程序中调用库函数后,可以非常方便地编写显示文字的大小、位置,也可以利用图形转码软件,将图形或汉字转为代码,进而通过程序显示在0LEN屏幕上。
3软件设计
系统软件设计流程图如图3所示,控制板上电开机后,首先进行一次初始化,然后进入待机状态,系统会在0LEN显示屏上提示"等待解锁"字样,当用户需要解锁时,可以选取3种解锁方式中的任意一种,系统会自动对应,启动相关解锁程序,若任一模块采集到的信息与控制板中所存储的信息一致,则通过控制板程序控制继电器工作,接通锁体连接电路,完成开锁,同时0LEN显示屏上显示"欢迎进入"字样:若信息比对失败,则显示器显示"解锁失败"字样,继电器状态保持不工作,电磁锁不开锁。
4结语
门禁系统搭建完毕后进行解锁测试,系统上电后的整体效果如图4所示。经过实际测试,本文设计的多合一解锁方式的实验室智能门禁系统可以正常工作使用,测试效果良好。设计所使用的各类硬件模块性价比高,占用的I/0口较少,可以在后续开发中继续加入各类功能模块进一步升级系统。
本文完成了系统的基本硬件选型、连接及软件功能设计,对硬件选型进行了详细说明,提供了清晰的软件设计思路,可以为相关设计人员设计其他类似产品提供参考。