24301浏览
查看: 24301|回复: 27

颠覆考勤方式之---扫码考勤

[复制链接]
本帖最后由 visionsl 于 2015-12-28 12:09 编辑

起因:      我们公司考勤模式经历过: 打卡->指纹->刷脸 三种方式(鉴于太容易互相帮打卡,所以没采用过刷卡方式); 从最原始的打卡(纸卡)到最先进的刷脸都使用了个遍! 就是没用过不打卡.......(一是BOSS不给, 二是自律性成迷)
      之前使用过和正在用的这些模式都有个大问题, 就是行政统计数据太麻烦, 费时费力, 后2种方案也需要用U盘定期把数据导出Excel再统计, 这不符合高科技公司的做风, 所以决定尝试.....改!

改造要求:
  - 方式要高大上, 跟得上潮流
  - 体验上要足够方便快捷,(不快的话你想急S差1秒钟就迟到的同学么!)
  - 考勤数据能与企业ERP打通,实现自动统计和查询
  - 造价要低!

制定方案:
      采用现在烂大街的方式: 扫码! (别告诉我你没试过支付宝/微信扫码支付喔)
      这方法牛X吧, 有手机的都会用, 有效防呆(不会用), 防帮(代打卡), 防盗.....这个防不了!

准备硬件材料:
      - Dreamer Nano V4.0 (兼容Arduino Leonardo)
      - Z1406 TTL接口一维条码扫描模块(不用二维码的原因主要是成本考虑)
      - ESP8266-01 WIFI模块
      - 人体热释电红外传感器
      - LED(红)+LED(绿)
      - 220欧电阻2只
      - 万能洞洞一块
      - 3D打印外壳

准备软件资源:
      - 微信公众号一枚
      - 公网服务器一台(需有域名,并与公众号绑定) - 用于公众号/接口数据传递
      - 企业ERP(需支持自定义开发) - 考勤模块数据接口/条码生成逻辑

模块接线
颠覆考勤方式之---扫码考勤图1

(注: 为了方便, Wifi的EN直接与3.3V并联)



流程设计 - Arduino工作流程
颠覆考勤方式之---扫码考勤图2




流程设计 - 系统框架流程
颠覆考勤方式之---扫码考勤图3



制作过程图解
颠覆考勤方式之---扫码考勤图4

先用洞洞板为Dreamer Nano V4.0和Wifi模块布好局

颠覆考勤方式之---扫码考勤图5

背面接线图
颠覆考勤方式之---扫码考勤图8

Z1406条码模块(上面是扫描头, 下面是开发板,引出的线中, 只有右边4条用得上, 从右至左分别是5V-/5V+/TX/RX)

颠覆考勤方式之---扫码考勤图7

正面来一张,可以看到扫描头

颠覆考勤方式之---扫码考勤图6

接线先测试一下
此处测试的关键代码:
  1. #include <SoftwareSerial.h>
  2. #define BAR_TX        10
  3. #define BAR_RX        11
  4. SoftwareSerial bar(BAR_RX, BAR_TX);      //RX, TX
  5. unsigned char cmd_r[4] = {0x02, 0x82, 0x03, 0x83};  //读码命令
  6. void setup() {
  7. bar.begin(9600);  while(!bar);
  8. bar.write(&cmd_r[0],4); //发送扫码命令
  9. }
  10. void loop() {}
复制代码


运行代码, 启动完成后, 如果扫描头两侧红灯会亮,表示控制成功

接下来准备装模块的模具, 这里用Maya做了简单建模
颠覆考勤方式之---扫码考勤图17

建好模后,在3D打印机打印.


颠覆考勤方式之---扫码考勤图9

底部结构(放置洞洞板)

颠覆考勤方式之---扫码考勤图11

装上底板(指示LED灯也装上了, 接线方法见前面的草图)

颠覆考勤方式之---扫码考勤图10

第二层结构, 放置扫描头和人体红外模块

颠覆考勤方式之---扫码考勤图12

第二层装好扫描头和人体红外

颠覆考勤方式之---扫码考勤图13

与第一层结合并

颠覆考勤方式之---扫码考勤图14

再来一张


颠覆考勤方式之---扫码考勤图15

底层特写

颠覆考勤方式之---扫码考勤图16

成品

颠覆考勤方式之---扫码考勤图19

微信(服务号)中打开自己开发的打卡功能, 出现每10s刷新一次的条码(否则A同事截个图给B同事帮代打卡怎么破)

颠覆考勤方式之---扫码考勤图18

扫描头扫条码成功,并验证通过时,指示LED亮绿灯(不成功时亮红灯), 并推送微信消息.完成打卡过程.



注意事项
      因同时使用了2个串口模块, 且走的是软串口方式, 需要用到一个与串口通讯相关的listen()函数, 如果不使用它, 大家在测试的时候会发现永远只有一个串口模块能工作,另一个处于不可用的状态.
      使用方法也很简单, 当你需要监听扫码模块时(假设扫码的软串口名称定义是 bar), 需要先执行 bar.listen(); 需要监听Wifi数据时也是同样道理(假设Wifi的软串口名称定义是 wifi), 需要先执行 wifi.listen().

实用视频演示
(未弄好, 录好再上传)

后期可拓展性

      - 增加蜂鸣器, 扫码成功与否用声音提示比用LED提示更直接
      - 增加小屏幕, 可以显示扫码信息(比如显示当前扫码成功的人名及有无迟到之类)
      - 增加Wifi可配置的功能, 这样成品拿到任何一个新的公司都能配置使用.


原文传送门>>>>>>博客

IMG_1524.JPG
IMG_1582.JPG
IMG_1583.JPG
IMG_1584.JPG
QQ图片20151224102347.jpg

visionsl  初级技匠
 楼主|

发表于 2016-1-5 11:56:41

tyyx 发表于 2016-1-4 22:45
请问能分享下除02 82 03 83以为的其他指令吗?
淘宝上买的扫描模块貌似一通电就是连续扫描的设置。。。。 ...

我用的这款, 发送02 82 03 83就是开启扫描模式, 再发送一次就是关闭
没有其它指令了
扫描头的工作模式都是用附带的手册(上面有不同功能的条码给你扫描)来完成的
回复

使用道具 举报

tyyx  初级技师

发表于 2016-1-4 22:45:20

visionsl 发表于 2015-12-30 16:40
这个扫描头是我找做扫码枪设备的朋友帮拿的, 所以没淘宝链接
其它同类型的应该道理是通用的. ...

请问能分享下除02 82 03 83以为的其他指令吗?
淘宝上买的扫描模块貌似一通电就是连续扫描的设置。。。。。那家店提供的技术资料看不太懂。。。。
回复

使用道具 举报

visionsl  初级技匠
 楼主|

发表于 2015-12-29 10:12:29

yoyojacky 发表于 2015-12-29 01:31
这么拼你同事知道么?不过想法还是不错的,我觉得同事截图打卡也不是没有可能。 ...

同事正在小范围测试中 ;P
截图打卡已经考虑过, 条码生成只有5秒有效, so,基本没可能截图打卡
回复

使用道具 举报

丄帝De咗臂  高级技匠

发表于 2015-12-28 12:56:24

搞死。。。哈哈
回复

使用道具 举报

孙毅  初级技匠

发表于 2015-12-28 13:33:23

这个有想法!就是考勤时,手机还必须走流量。。。。。这个要求不低啊。
回复

使用道具 举报

visionsl  初级技匠
 楼主|

发表于 2015-12-28 13:43:51

孙毅 发表于 2015-12-28 13:33
这个有想法!就是考勤时,手机还必须走流量。。。。。这个要求不低啊。

进入办公区域时, 已经有Wifi啦:lol
回复

使用道具 举报

dsweiliang  初级技神

发表于 2015-12-28 13:57:36

visionsl 发表于 2015-12-28 13:43
进入办公区域时, 已经有Wifi啦

阿~公司有wifi,那找网管查一下日志就能知道员工的上班情况啦,都不用打卡机了
回复

使用道具 举报

visionsl  初级技匠
 楼主|

发表于 2015-12-28 14:50:06

dsweiliang 发表于 2015-12-28 13:57
阿~公司有wifi,那找网管查一下日志就能知道员工的上班情况啦,都不用打卡机了 ...

一来不是100%的人会入Wifi
二来这种日志不便于统计
回复

使用道具 举报

iooops  中级技匠

发表于 2015-12-28 21:25:23

考个勤也是个技术活 = =
回复

使用道具 举报

yoyojacky  初级技匠

发表于 2015-12-29 01:31:45

这么拼你同事知道么?不过想法还是不错的,我觉得同事截图打卡也不是没有可能。
回复

使用道具 举报

何处不江南  初级技匠

发表于 2015-12-29 09:53:13

你是不是给自己留了后门。。
回复

使用道具 举报

virtualwiz  中级技匠

发表于 2015-12-29 12:15:09

大赞~~纯DIY呀:lol~

万一手机没电了会怎么样:loveliness:
回复

使用道具 举报

kevinzhang19701  高级技匠

发表于 2015-12-29 15:37:10

有意思,有启发。
回复

使用道具 举报

tyyx  初级技师

发表于 2015-12-29 23:01:46

淘宝上没搜到Z1406条码模块怎么办?
能直接扫屏幕哦。。。。
回复

使用道具 举报

visionsl  初级技匠
 楼主|

发表于 2015-12-30 16:40:28

tyyx 发表于 2015-12-29 23:01
淘宝上没搜到Z1406条码模块怎么办?
能直接扫屏幕哦。。。。

这个扫描头是我找做扫码枪设备的朋友帮拿的, 所以没淘宝链接
其它同类型的应该道理是通用的.
回复

使用道具 举报

Geemi  初级技匠

发表于 2015-12-30 17:56:39

不错不错…………白膜一下
回复

使用道具 举报

tyyx  初级技师

发表于 2015-12-30 23:27:46

楼主快点公布源程序啊。。。。
今天在淘宝上买了2个条码扫描模块哦。

另外,考虑过微信退出后,用同事账号登陆帮同事签到没?
回复

使用道具 举报

visionsl  初级技匠
 楼主|

发表于 2016-1-4 18:51:24

tyyx 发表于 2015-12-30 23:27
楼主快点公布源程序啊。。。。
今天在淘宝上买了2个条码扫描模块哦。

目前不少人微信绑定了银行卡, 也有红包等功能
账号不会轻易给别人吧?
回复

使用道具 举报

visionsl  初级技匠
 楼主|

发表于 2016-1-5 12:01:04

附上条码手册说明

CHAMP.pdf

3.8 MB, 下载次数: 5441

条码手册说明

回复

使用道具 举报

tyyx  初级技师

发表于 2016-1-5 14:39:49

@visionsl 谢谢!

回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail