0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

智能考勤系统的制作图解

454398 来源:wv 2019-10-29 10:00 次阅读

步骤1:所需的组件和工具

硬件

具有Arduino Breakout(sparkfun)的Intel Edison

12V -2A直流电源适配器(ebay)

Grove-125KHz RFID阅读器(见工作室)

125KHz RFID标签(见工作室)

一些跳线

软件工具

Yocto完整映像(Intel)

SSH客户端(PuTTY)

FTP客户端(WinSCP)

英特尔®XDK IoT Edition(英特尔)

您准备好了吗?用你的工具?让我们开始工作。..

步骤2:基本设置

将Edison与Arduino扩展板组装在一起(英特尔指南)。

安装所需的驱动程序(详细信息在这里)

设置串行连接(详细信息在这里)

最新的Flash刷新您的Edison Yocto图像(在此处详细信息)

将您的Edison与WiFi连接(在此处详细信息)

升级Edison图像

设置本地到Edison的时间(详细的论坛帖子)

使用此命令(在串行终端中)设置设备名称: configure_edison --name

使用此命令(在串行终端中)设置设备密码: configure_edison --password

设备名称将使您能够从浏览器访问设备(在连接到本地网络的计算机上),无需输入IP,只需输入“ http://device_name.local/”(例如“ http://edison.local/”)即可。设备密码将使您能够将设备与STP客户端(例如WinSCP)连接。

对于上述步骤,您还可以遵循

Sparkfun:edison-入门指南

Instructables:Intel Edison绝对入门指南

Sparkfun视频指南:

组装

更新Linux

WIFI设置

软件包管理器

步骤3:软件包更新

默认文件系统包含各种软件包,应使用以下命令进行更新(此处有更多详细信息)。从串行终端执行以下命令:

echo “src/gz all http://repo.opkg.net/edison/repo/all” 》》 /etc/opkg/base-feeds.conf echo “src/gz edison http://repo.opkg.net/edison/repo/edison” 》》 /etc/opkg/base-feeds.conf echo “src/gz core2-32 http://repo.opkg.net/edison/repo/core2-32” 》》 /etc/opkg/base-feeds.conf opkg update

不要运行“ opkg upgrade “

第4步:安装Express Generator

我们将与爱迪生一起开发数据库应用程序。为此需要几种工具。 Node.js是其中的关键工具之一,并已与Edison预装,但仅Node.js不足以构建美观的Web应用程序。我们需要手动安装Express Generator和mongoDB。

Express JS是一个轻量级的Web框架,可以在Node JS平台中非常轻松,快速地开发Web应用程序。 Express JS Framework的最新版本是:4.x。

MongoDB是最适合与Node.js配合使用的流行开源文档NoSQL数据库。

Node.js,Express和MongoDB是好朋友。

要在Edison中安装express和emailjs节点软件包,请在串行终端中键入以下内容:

npm install -g express@4.12.4 express-generator mongoskin emailjs mraa opkg install git

下一步。..

步骤5:安装MongoDB

opkg无法安装MongoDB软件包。因此,您需要在Edison板上执行以下操作以进行手动安装:

首先,通过以下命令从终端上下载Edison工作目录中的mongo linux软件包:

wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.6.8.tgz

然后,将tgz文件解压缩到这样的目录名称数据库中:

mkdir database cd database tar -xv*** 。./mongodb-linux-i686-2.6.8.tgz

最后,通过以下方法检查安装命令

ls ~/database/mongodb-linux-i686-2.6.8/

您应该看到以下输出:

GNU-AGPL-3.0 README THIRD-PARTY-NOTICES

Step 6:在您的PC中开发应用程序

首先,我们将在PC中开发该应用,然后将其传输到Edison。我将使用Windows PC,但可以根据需要使用Mac或Linux。因此,让我们开始工作。

从此处在PC中安装Node.js。

启动控制台窗口,然后导航到存储这些Web项目的位置。我正在使用C: node如果您将工作放在其他地方(例如/home或/Users),请进行相应的调整。

3.在C驱动器中创建一个目录,然后重命名它作为节点。

。4.打开命令提示符并浏览节点目录。

5.这样安装Express生成器:

命令C: NODE

npm install -g express-generator

6。通过以下命令创建一个名为出勤的快递项目

命令C: NODE

express attendance

如果成功,您将看到类似以下内容:

通过此命令,仅表示在新的名为“出勤”的目录中自动生成网站框架。因此,我们必须对此做更多的工作。您会注意到,express-generator例程在您的出勤目录中创建了一个名为package.json的文件。在文本编辑器中将其打开,它将如下所示:

这是一个基本的JSON文件,描述了我们的应用及其依赖项。我们需要添加一些内容。具体来说,为我们的数据库应用程序调用MongoDB和Monk。让我们使依赖对象看起来像这样:

请注意,在serv-favicon行的末尾添加了一个逗号,最后一行和尚没有

。7.切换回命令提示符,浏览考勤目录,然后键入:

npm install

等待一会儿,如果您看到如下所示的最终输出,那么恭喜您!您现在已经拥有一个功能齐全的应用程序,可以等待运行。

让我们测试一下我们的Web服务器!键入以下内容:

npm start

如果一切正常,您将看到以下结果:

一切正常吗?真棒!打开浏览器,前往http://localhost:3000,您将在其中看到欢迎使用Express页面,如下所示。

下一个

步骤7:项目修改

我们的项目文件夹仅包含基本框架。我们必须修改一些文件,还必须创建更多文件。

我们需要更改:

style.css 用于/public/stylesheets/style.css文件夹中的可视界面

index.jade 在用于创建表的views文件夹中。

app.js 项目的核心

用于数据库连接的路由文件夹中的》 users.js

我们应该在以下位置创建:

global.js public javascripts文件夹,用于从数据库读取数据并显示在html表中

main.js ,用于读取RFID卡并将数据插入数据库

步骤8:使用Intel XDK IoT Edition

我们现在将为RFID阅读器编写一些代码,以读取RFID标签并将数据插入数据库。我正在使用Grove串行RFID阅读器,为此,我将使用节点串行端口模块。让我们开始。..

在您的PC中安装Intel XDK IoT Edition,然后使用UART读/写模板创建一个新项目。有关英特尔®XDK IoT Edition入门的详细信息,请遵循英特尔指南。

相应地修改 main.js 文件,或将其替换为下面所附的main.js文件。

打开 package.json 文件,然后从依赖项中复制文本,并将其添加到C: node attendance文件夹中的先前的 package.json 文件中。

您的 package.json 文件如下所示:

{

“name”: “nodetest”,

“version”: “0.0.0”,

“private”: true,

“scripts”: {

“start”: “node 。/bin/www”

},

“dependencies”: {

“body-parser”: “~1.13.2”,

“cookie-parser”: “~1.3.5”,

“debug”: “~2.2.0”,

“express”: “~4.13.1”,

“jade”: “~1.11.0”,

“morgan”: “~1.6.1”,

“serve-favicon”: “~2.3.0”,

“mongodb” : “~2.0.33”,

“monk” : “~1.0.1”,

“serialport”:“latest”

}

}

main.js 文件应该看起来像这样:

var mraa = require(‘mraa’); //require mraa

console.log(‘MRAA Version: ’ + mraa.getVersion()); //print out the mraa version in IoT XDK console

u = new mraa.Uart(0); //Default

var MongoClient = require(‘mongodb’).MongoClient

, format = require(‘util’).format;

var serialPath = u.getDevicePath(); //Default general purpose port “/dev/ttyMFD1” - Intel(R) Edison; “/dev/ttyS0” - Intel(R) Galileo

var document;

//Serialport NodeJS module declared in package.json

var SerialPort = require(“serialport”).SerialPort;

var serialPort = new SerialPort(serialPath, {

baudrate: 9600

});

serialPort.on(“open”,function() {

console.log(“open”);

console.log(“Connected to ”+serialPath);

serialPort.on(“data”, function(data) { //Read available data from serial port

console.log(“data received: ” + data);

switch(data){

case “123456ABCD” : // your RFID Tag number

document = {“username” : “test”,

“regno” : “12345678”,

“email” : “test@test.com”,

“datetime” : new Date().toUTCString()};

break;

case “325456ABCD”:

document = {“username” : “test1”,

“regno” : “12345678”,

“email” : “test1@test.com”,

“datetime” : new Date().toUTCString()};

break;

case “223456A23D”:

document = {“username” : “test2”,

“regno” : “12345687”,

“email” : “test2@test.com”,

“datetime” : new Date().toUTCString()};

break;

}

MongoClient.connect(‘mongodb://localhost:27017/nodetest’, function(err, db) {

if (err) throw err;

console.log(“Connected to Database”);

//insert record

db.collection(‘userlist’).insert(document, function(err, records) {

if (err) throw err;

console.log(“Record added as ”);

});

});

});

serialPort.write(“This is a test. ”, function(err, results) { //Write data

console.log(“err ” + err);

console.log(“results ” + results);

});

});

此处附带的代码只是基本代码,并不那么优雅。您可以用更优雅的方式写东西。我试图展示这种思想是如何工作的。

第9步:将已开发的应用程序上传到您的设备

我们已经完成了大部分工作。现在,您应该将开发的应用程序从PC上载到设备中。对于上载,我使用了最受欢迎的FTP客户端之一WinSCP。使用WinSCP非常容易:

运行程序并将文件协议设置为SCP

主机名是Edison的IP地址。将端口号保留为22。

用户名是root,密码是您之前选择的密码。

然后单击登录。

它将再次询问您的密码,输入密码,然后单击“确定”。

完成。现在,您进入了Edison。

您可以按照此处附带的视频了解详细信息。完整程序附在下面。

步骤10:从Edison运行应用程序

我们的应用程序在Edison中。现在我们应该运行它。为此,将您的Edison连接到PuTTY并按照以下步骤操作:

1。通过键入转到项目目录。

cd node cd attedance

2。通过键入

npm install

3来安装依赖项。通过键入

npm start

运行应用程序。如果一切正常,您应该会看到类似

OK?然后在浏览器地址栏中输入 http://edison-ip:3000 ,您应该看到如图2所示的页面。

4。通过在另一个终端窗口中键入将数据库连接到您的应用程序(注意:以前创建的目录名为data)

rm -rf /home/root/node/attendance/data/*

mongod --dbpath /home/root/node/attendance/data &

如果可行,您应该找到结果如图3。

5。再打开一个终端窗口,转到项目目录,然后键入以下内容以运行main.js文件

node main.js

如果一切正确,则应该看到以下消息。

恭喜!!!我们的申请已经准备就绪。现在,我们应该将RFID阅读器和Buzzer与Edison连接起来。拉特做到这一点并进行身体测试。

步骤11:最终的事情

连接格罗夫RFID阅读器给Edison。 RFID阅读器的RX引脚必须连接到Edison的TX引脚,RFID阅读器的TX引脚必须连接到Edison的RX引脚。将蜂鸣器连接到Edison,当RFID阅读器成功读取标签时,蜂鸣器会发出蜂鸣声。

现在,运行程序并将RFID卡扫到阅读器上,即可享受智能考勤系统的强大功能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 考勤系统
    +关注

    关注

    0

    文章

    40

    浏览量

    11204
收藏 人收藏

    评论

    相关推荐

    绿展科技指纹模组落地新应用,助力企业高效考勤

    绿展科技联合头部考勤机厂商推出全新智能秒识别考勤机,采用指纹识别技术,确保打卡考勤又快又准。绿展科技指纹模组采用全新增材制造工艺,在性能、算法、外观设计上都有督导之处,能为
    的头像 发表于 08-02 11:21 1999次阅读
    绿展科技指纹模组落地新应用,助力企业高效<b class='flag-5'>考勤</b>

    NNG宣布为Dacia汽车提供基于OpenStreetMap的地图解决方案

    智能出行日益成为主流的今天,汽车导航系统的精准度与实时性成为了消费者购车时的重要考量因素之一。近日,全球领先的地图解决方案提供商NNG正式宣布与知名汽车制造商Dacia达成战略合作,共同推出
    的头像 发表于 07-04 15:09 537次阅读

    煤矿人员定位系统——基于UWB技术带电子围栏功能

    和回放  ◆ 轨迹储存:可长期存储人员运动轨迹,为事件处理提供决策依据;  ◆ 轨迹回放:可按卡号、区域回放指定时间段内的人员活动轨迹。  3.5可配合智能考勤等  根据输出数据记录,可以自定义绘制考勤
    发表于 06-27 15:11

    如何挑选理想的人脸识别考勤系统产品?人脸识别设备的选型

    如何挑选理想的人脸识别考勤系统产品?在挑选理想的人脸识别考勤系统产品时,需要综合考虑多个方面,包括但不限于设备的性能、兼容性、数据存储能力、环境适应性以及售后服务等因素。以下是根据提供
    的头像 发表于 06-05 14:59 438次阅读
    如何挑选理想的人脸识别<b class='flag-5'>考勤</b><b class='flag-5'>系统</b>产品?人脸识别设备的选型

    远景达无感智慧考勤解决方案让考勤管理更智能

    在现代社会,人力资源管理的一个重要环节就是员工考勤。然而,传统的考勤方式存在诸多问题,如效率低下、数据更新不及时等。因此,一种新的考勤解决方案——远景达无感智慧考勤应运而生。该方案利用
    的头像 发表于 05-27 10:47 441次阅读
    远景达无感智慧<b class='flag-5'>考勤</b>解决方案让<b class='flag-5'>考勤</b>管理更<b class='flag-5'>智能</b>

    无感考勤是什么意思

    系统通过使用智能设备,例如手机、智能手环等,自动记录员工的出勤情况,并根据预设规则进行统计和计算,减少了人工干预和错误率。无感考勤系统可根据
    的头像 发表于 05-17 10:59 680次阅读
    无感<b class='flag-5'>考勤</b>是什么意思

    音箱制作过程图解

    电子发烧友网站提供《音箱制作过程图解.doc》资料免费下载
    发表于 04-28 09:27 10次下载

    智能人脸识别一体机+门禁考勤解决方案

    一、概述随着物联网和人工智能等技术的快速发展,“扫脸”跟扫码开门逐渐走入写字楼、智慧园区、智慧校园、智慧社区、景区人脸验票、工地实名核验等场所并赋能智慧场景,智能人脸识别一体机作为提供数字门禁考勤
    的头像 发表于 04-02 14:18 1396次阅读
    <b class='flag-5'>智能</b>人脸识别一体机+门禁<b class='flag-5'>考勤</b>解决方案

    SI24R2E:智能电子学生卡2.4GHz考勤方案

    家长青睐。智能电子学生卡2.4G考勤应用 学生卡和读头之间采用2.4G无线射频技术传输,通过485数据线传输到后台智能终端;然后智能终端利用GSM无线网络或有限宽带(包括短信)与
    发表于 03-29 16:26

    哪些场景要使用到人脸识别门禁考勤一体机

    伴随着刷脸识别设备的不断升温,越来越多的人把刷脸进出当成了习惯。正因为它不仅方便智能,仅需刷脸就能够完成门禁考勤,因此在很多项目场景中或多个领域中,人脸识别门禁考勤一体机的使用频率很高,更新也比较
    的头像 发表于 03-05 13:59 508次阅读
    哪些场景要使用到人脸识别门禁<b class='flag-5'>考勤</b>一体机

    如何使用Arduino制作智能垃圾箱

    在这个项目中,我将向您展示如何使用Arduino制作智能垃圾箱,当您带着垃圾接近时,垃圾箱的盖子会自动打开。
    的头像 发表于 02-11 12:22 2854次阅读
    如何使用Arduino<b class='flag-5'>制作</b><b class='flag-5'>智能</b>垃圾箱

    TLT507-Linux系统启动卡制作系统固化

    TLT507-Linux系统启动卡制作系统固化
    的头像 发表于 01-26 16:54 2043次阅读
    TLT507-Linux<b class='flag-5'>系统</b>启动卡<b class='flag-5'>制作</b>及<b class='flag-5'>系统</b>固化

    TL3588--系统启动卡制作系统固化

    TL3588--系统启动卡制作系统固化
    的头像 发表于 01-25 09:50 1579次阅读
    TL3588--<b class='flag-5'>系统</b>启动卡<b class='flag-5'>制作</b>及<b class='flag-5'>系统</b>固化

    RK3568-Linux系统启动卡制作系统固化

    RK3568-Linux系统启动卡制作系统固化
    的头像 发表于 01-22 11:06 1538次阅读
    RK3568-Linux<b class='flag-5'>系统</b>启动卡<b class='flag-5'>制作</b>及<b class='flag-5'>系统</b>固化

    断路器控制回路接线图解

    断路器控制回路接线图解
    的头像 发表于 12-16 09:37 1934次阅读
    断路器控制回路接线<b class='flag-5'>图解</b>