基于Linux的考勤机设计方案V1.1(终端软件部分)
来源:互联网 发布:查mac地址 编辑:程序博客网 时间:2024/06/10 05:56
Designed by Qtchen001&lcy
E-mail:qtchen001@qq.com
技术交流群 184564382
考勤机作为终端,主动向服务器发送连接请求,服务器可以使用VPN的方式。作为VPN服务器的计算机有两个网卡,一个连接在局域网中,一个连接在广域网中。考勤机采用主动方式连接网络,这样在一个局域网中可以安装多台考勤机。
1、考勤机终端:
终端具有的功能除基本的考勤功能外,还需要留足扩展接口,以便日后扩展。考勤机的扩展主要是这样的扩展:
人脸识别,采用摄像头拍摄照片来进行识别
指纹识别,使用专门的指纹识别模块
2、门禁考勤机主要功能需求:
考勤卡识别功能,读取考勤卡信息,检验考勤卡合格性,如果合格则记录考勤、语音提示成功并显示姓名;如果失败则语音提示不成功。
对于待考勤人员的识别,需要两方面做保证:一方面本地记录了待考勤人员的信息,姓名和卡号对应,在刷卡时查询数据库,验证;另一方面,在本地验证失败时,需要通过网络向服务器验证,验证成功时将验证信息下载到本地考勤机并提示成功,失败时则考勤机提示验证失败。
考勤记录可以存放在本地终端上,也可以通过网络上传到VPN服务器上,可以即时上传或者定时上传。考勤记录和卡号-人员对应表等信息存储在本地SD卡中。
语音提示,真人发声提示
通过U盘上传用户姓名列表,下载门禁考勤记录以及照片(当考勤机支持人脸识别时)
考勤机可以独立使用,无需连接电脑即可以设置考勤机参数,包括人员登记、人脸考勤、存储记录等。
支持考勤机本地信息和服务器信息的同步,同步协议需详细制定。
3、 考勤机软件总体方案:
(1)按键设计
图1按键设计
(2)液晶显示
图2 上班界面
图3下班界面
图4设置界面
(3)设置主机IP
如图4中所示设置服务器IP和端口(PORT)
该流程对应的软件流程为
图5设置IP软件流程图
(4)导入批量信息到终端
新的考勤机结构
图6考勤机结构
图7上位机批量导入信息
(5)终端机输入卡号
通过按键设置开始输入新的卡号
图8终端输入卡号信息
(6)网线供电(POE,Power Over Ethernet)
这部分与软件无关主要是硬件方面的设计
图9 POE
(7)上班/下班刷卡
我们假设公司设定的上班刷卡时间为7:00—9:00,则在这个时间段内刷卡时不需要按“上班”按钮,系统默认为将刷卡的员工开始上班,在此时间段之外要刷卡上班时需要先按“上班”按钮。下班时也是同理。
图10刷卡上班/下班流程图
4、底层开发方案:
基于linux的嵌入式系统开发是一个层次化的结构。Linux操作系统负责嵌入式系统硬件资源的管理,而应用层软件则负责实现具体功能。Linux系统本身就是一个层次化的系统结构,它由硬件层、设备驱动层、虚拟文件系统VFS层和应用层组成。虚拟文件系统层和设备驱动层完成底层硬件的抽象。Linux将所有的设备都当作文件处理,被称为设备文件。设备又可以细分为网络设备、字符设备和块设备。
设备驱动层需求:
根据应用的需要,系统需要的模块包括如下部分:
USB接口模块
Ethernet模块
SD卡模块
UART模块
MFRC500模块
RTC模块
NandFlash模块
SDRAM接口模块
LCD接口模块
上述这些模块在freesacale提供的支持中很多驱动已经完成,开发需要做的重点是相应模块对应于具体电路板的裁剪、UART接口模块的驱动程序和MFRC500模块的驱动程序。
图11整体软硬件框架图
(1)USB扩展接口
Linux的USB具有热插拔功能,在检测到有设备接入USB设备时,linux的hub驱动就会为插入的设备查找驱动;如果在系统中有符合的驱动,则正确配置;否则需要将相应的驱动以模块的形式加载到系统中,使用insmod命令即可加载模块
(2)UART接口
I.mx289有6个UART接口,5个高速接口和1个低速接口,低速接口可以用于调试;采用宿主机-终端机的模式,终端机linux系统的调试是用串口连接到宿主机进行的。
另外有些指纹识别模块的扩展接口也是uart接口的,所以需要预留uart接口以备扩展。
(3)Ethernet接口
Ethernet接口用于考勤终端机和远程服务器进行通信,i.mx系列芯片有1~2个10/100M的Ethernet接口,以太网接口驱动程序可以移植官方驱动,稍作修改。使用linux的网络协议栈可以实现网络通信任务。系统采用C/S结构,终端机作为客户,需要向服务器发送请求,进行连接、数据交互等
(4)IIS接口
基于扩展的功能,考勤机需要扩展音频调试接口。I.mx系列芯片包含IIS音频解码接口,其驱动程序只需稍作修改即可。
(5)LCD接口
LCD可以作为地址设备接在系统的数据和地址总线上,这样系统可以统一寻址。LCD接口驱动需要移植linux的带framebuffer的platform类型的驱动程序。
(6)RTC
RTC集成在芯片内部,直接移植官方驱动即可
(7)NandFlash
移植官方驱动
(8)SD/MMC
i.mx有3个SD/MMC/SDIO接口,demo板包含linux驱动程序。
(9)MFRC500接口
MFRC500是并行接口,建议将其连接在数据和地址总线内,使处理器能够直接寻址。它属于字符设备,只要实现其字符设备驱动程序就可以了,基本的操作是open,close,read,write,ioctl,此外还有中断处理程序。它的编解码协议运行在用户权限下。
找项目、找人才、买卖软件/方案,请到同城软件外包网 www.58witkey.com
- 基于Linux的考勤机设计方案V1.1(终端软件部分)
- 基于GPS和3G的智能公交终端设计方案
- 基于角色的权限设计方案(PHP)
- 基于微信的考勤
- 基于 树莓派&opencv&face++开发考勤机(一)
- 基于Linux的软件化和网络化雷达终端系统的实现
- Linux终端部分快捷方式
- 基于安卓的测绘计算软件V1.0使用说明
- 科密指纹考勤机软件配置
- 矿井人员定位考勤系统设计方案
- 基于Android移动终端的控制系统监控软件开发
- 一种基于透明计算的智能终端软件更新方法
- 基于嵌入式Linux的视频采集系统4-----采集模块的设计方案
- 中控指纹考勤机软件登录用户名和密码忘记的解决办法
- 基于超级电容的太阳能草坪灯设计方案
- 权限管理之基于RBAC的设计方案
- 基于OpenCV的人脸识别设计方案
- 基于XMPP的Android即时通讯应用设计方案。
- java通过反射机制取类的属性和方法
- JAVA面试题荟萃
- 批量转发邮件(备份邮件)
- java.lang.OutOfMemoryError: Java heap space 解决办法
- 一个有用的Oracle函数partition by
- 基于Linux的考勤机设计方案V1.1(终端软件部分)
- 十道海量数据处理面试题与十个方法大总结
- Android 特效 应用列表之圆角ListView
- Sonar Eclipse
- Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!
- Windows Phone 7 LongListSelector控件实现分类列表和字母索引
- ARP/RARP协议报文格式
- hdoj 3711 Binary Number
- 基于.NET的企业级软件开发