之前花了很多时间在这个项目上,很幸运的在为当地公司设计考勤记录器的时候突然发现了这种简单记录器的潜力。第一个原型是基于Arduino并且只是一个概念产物,用的系统正是长大版的Arduino的表演,并且也集成了许多当代特征,射频识别模块在开发初期使用,现在可以用NFC模块来代替,下面介绍详细的制作过程,供读者参考。
第一步:你需要什么?
我们需要:
- Arduino Mega 2560
-带有SD卡槽的以太网盾W5100($3.2375)
-微RTC模块
-带有标记的RFID- RC522模块
-9V电源
-以太电缆,线路板和一些连接线。
- 带220欧姆电阻的(绿色和红色或双色)LED灯
-阻抗为8欧姆的扬声器
第二步:计划
在开始设计之前先设置一些需求:
每个员工必须能够有自己的标识,并能够识别它。能浏览每位员工的历史记录,小时或到达和离开工作必须保存。此外工作时间必须计算从到达时间和离开时间。
确定问题
我们可以把问题分为三个子问题:识别员工,保存历史记录并计算工作时间,浏览历史记录。第一个子问题可以用带一些标签的射频识别读写器来解决。第二个问题,保存历史记录可以用某种外部记忆模块来解决,比如SD卡。第三个问题是由通信和图形用户界面组成,这些可以用简单的网络服务器解决。
第三步:硬件配备
上图是模块间的连接。SPI通信,我们使用硬件SPI(MISO,MOSI和CLK是所有相同,SS引脚以太网对应引脚10,SD卡对应引脚4和RFID阅读器是引脚6,RFID RST引脚对引脚7)。发光二极管连接到2和3,扬声器连接到引脚。微小的RTC模块通过I2C模块的引脚20和21连接。9V 电源连接到Arduino的外部电源连接器。以太网屏蔽连接到计算机(或路由器)通过双绞线电缆。
第四步:Arduino 代码
以上的流程图展示了代码应该如何工作。我们用以太网库实例写了网络服务器。剩下的代码是从RFID库的例子,SD库的例子和RTC库示例。
我们在记事本中使用HTML和CSS代码一些网页界面。代码是有记录的,因此我不会再这样做了。
第五步:与Web服务器的RFID数据采集器测试
我们测试了所有三个期望的功能:我们现在可以读标签,识别它,记录员工的到达时间,离开时间和一天的工作时间。我们做了一个简短的系统运行视频。
第六步:总结
上面图片是我们的解决方案:中央部分是arduino mega 2560平台。RFID读写器,以太网盾和microSD卡是通过SPI通信连接到Arduino。微RTC模块通过I2C通信接口连接。另外,当成功读卡后利用指示灯和小喇叭来显示。
最后,我们做了一个验证我们的要求。这里是结果:可以通过RFID标签识别每位员工,可以显示每位员工的历史记录。可以记录并存储一个月内每位员工的到达时间,下班时间,和一天的工作时间。从验证的结果,我们可以得出结论,项目成功完成。项目为我们提供了一个在当地公司日常使用的应用平台。
本文选自《无线通信特刊》,更多优质内容,马上下载阅览
评 论
请勿进行人身攻击,谩骂以及任何违法国家相关法律法规的言论。
正在加载评论...