# 智能刷卡考勤系统设计与制作
# 1、设计总览(总)
- 智能刷卡考勤系统是以 RFID 射频卡为信息识别载体的适用于企业单位或学校的考勤管理系统。本系统可使人摆脱繁琐、低效的签到模式。识别工作不受环境影响,操作方便快捷,具有防污、防水、加密存储等优点。结合网络通信技术和单片机技术,实现了企业和学校的自动考勤的数据的分析处理,节约了考勤时间,提高了考勤效率并提高了考勤的准确率,促进了企业学校的考勤管理信息化水平的发展。
- 硬件部分我们采用 DRM6300 构成的射频卡读卡电路。该芯片具有成本低,工作稳定,精确的采样点等优点。单片机采用 STC12 单片机。读卡输出信号有单片机识别出卡号通过 JDY-40 模块实现无线传输,实时上传数据到 PC 段进行处理。
- 软件部分分为读卡识别、数据存储和查询、图形界面设计、数据库设计与组织。
![](https://www.writebug.com/myres/static/uploads/2021/11/10/5be6859b6354de50ce8c3386ad67740b.writebug)
# 2、设计思想(方向三:PC 端数据存取、操控软件设计)
图 2.1 软件流程与数据库结构图
PC 端通过串口无线通信接收学生卡信息,进入开始默认界面,等待接受来自于串口的学生刷卡信息,收到后在多个表中交叉校验,确保刷卡课程正确、不重复刷卡。也可直接通过账号登陆查询/管理系统,根据不同账号权限,进入相应界面,管理员账号可进行添加删除账号,添加删除课程,改变刷卡记录等操作;教师账号可对所授课程考勤情况进行查询和修改;学生可查询已选课程考勤情况。
## 2.1 系统界面设计
系统设计分为编码设计和 UI 设计两部分。
界面主要有默认界面、登陆界面、用户界面(管理人员界面、教师界面、学生界面)和若干管理子界面。
## 2.2 PC 端远程控制及 LCD 显示
设计 PC 端控制界面,通过 JDY-40 无线模块控制 STC 单片机进入低功耗模式,关闭读卡串口数据扫描,达到类似于休眠的低功耗状态。或从低功耗模式下(定时)唤醒,进入正常工作模式。或可对单片机发送单条定长数据并经由 LCD 显示,实现两侧用户可视化通信。
# 3、功能实现(方向三:PC 端数据存取、操控软件设计)
## 3.1 系统界面设计
分为默认界面,登录界面,管理界面,教师界面,学生界面,关于界面,共六个界面,工作流程如图 2.1 所示。
### 3.1.1 默认界面
![](https://www.writebug.com/myres/static/uploads/2021/11/10/8c6a32adf9e0d98fbe1308f107aa7729.writebug)
图 3.1.1 默认界面
默认界面通过 timer 实现时间显示,串口输入扫描。通过 button 实现刷新串口列表与向其他窗体的跳转。
![](https://www.writebug.com/myres/static/uploads/2021/11/10/851455a65c856ed63eab7d7423f453f8.writebug)
图 3.1.2 默认界面刷卡成功
## 3.1.2 登录界面
![](https://www.writebug.com/myres/static/uploads/2021/11/10/8d95540af8647678ac7cb3c95d079cd5.writebug)
图 3.1.3 登录界面
登录界面通过默认窗体点击登录账号按钮进入,进入后默认界面自动隐藏,通过返回键可唤回默认界面。通过 textbox 输入账号密码后点击登录,通过账号类型自动进入不同管理页面。
### 3.1.3 管理员管理界面
可通过下拉菜单选择账号管理、课程管理、刷卡记录管理,进行操作。
#### 3.1.3.1 账号信息管理
![](https://www.writebug.com/myres/static/uploads/2021/11/10/7c624e065a01343a37ab31a933827eed.writebug)
图 3.1.4 账号信息管理
#### 3.1.3.2 课程管理
![](https://www.writebug.com/myres/static/uploads/2021/11/10/008eb15d9d4ba6b7e0b50db23d535c0a.writebug)
图 3.1.5 课程信息管理
#### 3.1.3.3 刷卡记录管理
![](https://www.writebug.com/myres/static/uploads/2021/11/10/65e7c0c11bd9c6467f222682355cc298.writebug)
### 3.1.4 教师界面
![](https://www.writebug.com/myres/static/uploads/2021/11/10/f1ede3db508b6d87b5d06f4c6b2f6c0e.writebug)
图 3.1.7 教师管理界面
### 3.1.5 学生界面
![](https://www.writebug.com/myres/static/uploads/2021/11/10/830f90dda3c59d32d8cb848cf1d5361a.writebug)
图 3.1.8 学生界面
### 3.1.6 “关于”界面
![](https://www.writebug.com/myres/static/uploads/2021/11/10/497013b7e91104015174a626c1de50d8.writebug)
图 3.1.9 “关于”界面
## 3.2 远程操控界面
由于时间紧张未能实现,将会在以后的版本添加此功能。
## 3.3 现存设计缺陷
详见软件内“关于”页面。
## 4 心得体会
初期与同组同学一起研究了 JDY-40 的工作原理,并根据每个人的工作经验与兴趣方向制订了个人的攻关方向。本人由于对高级语言编程与数据结构、系统架构设计有浓厚兴趣,故选择 PC 端软件设计方向。开始时设计整体系统,体量较大、功能较多,后来由于时间有限与技术限制略去了部分功能实现,但主题功能均已实现。由于水平优先,部分数据库方面的操作较不优美,可能会产生数据冗余,对整体运行速度与后期维护造成影响。由于个人审美水平有限,用户界面十分简陋。虽未经稳定性安全性测试,但整体代码结构较为严谨,在正常使用情况下表现较为稳定。由于数据库编码经验有限,在工作过程中遇到了各种问题,借助搜索引擎与相关书籍得到基本解决,其余问题也通过其他方式等价实现。串口通信部分是需要与其他方向的同学协作完成的,与同学一同研究了串口通信方式与 JDY-40 使用方式后利用 JDY-40 与 USB to TTL 模块实现了单片机与 PC 端的通信。收获了大量单片机硬件与 PC 端软件编程知识与经验,收获颇丰。但硬件系统与软件系统仍均有较多已知缺陷,以后还需学习相关知识与经验,不断完善此系统。