树莓派+nfc模块+显示屏实现员工考勤


nfc(near field communication,近场通信),属于高频,读距为2cm左右,协议为14443a,15693,android/ios均支持nfc,目前在移动支付等场景得到一定的应用。树莓派可以跟nfc模块结合起来再挂个显示屏(接hdmi接口),就可以做一个简易的员工考勤机(员工考勤卡须含有高频标签)。

一、硬件接线
nfc模块选用RC522,树莓派跟nfc模块通信方式采用SPI接口(SPI,Serial Peripheral Interface,串行外设接口,是一种主从式接口)。

接线示意图:

实际接线图:

二、软件编程

  1. 安装SPI-Py库
    开始编写代码之前,首先通过sudo raspi-config进入配置界面,打开SPI接口。
    有个Python库SPI-Py,可以操作SPI。通过git或者打开网页下载zip包进行安装。
    git clone https://github.com/lthiery/SPI-Py.git
    然后安装
    sudo python3 setup.py install
    如果你配置了python3为默认python环境,则sudo python setup.py install

  2. 安装RC522的Python库
    git clone https://github.com/kangaroo711/MFRC522-python.git
    这个库依赖于SPI-Py库,请保证正确安装。

  3. 运行RC522的Python库中的示例代码
    cd MFRC522-python
    python Read.py

当将nfc卡片靠近nfc模块时,打印读取到的nfc卡片的uid(只读,唯一id)。程序中就可以根据这个uid到数据库中检索比对员工信息,完成打卡动作。

参考资料:
https://blog.csdn.net/qq_40259641/article/details/108749501

IoT