0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

智能考勤系統(tǒng)的制作圖解

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:基本設(shè)置

將Edison與Arduino擴展板組裝在一起(英特爾指南)。

安裝所需的驅(qū)動程序(詳細信息在這里)

設(shè)置串行連接(詳細信息在這里)

最新的Flash刷新您的Edison Yocto圖像(在此處詳細信息)

將您的Edison與WiFi連接(在此處詳細信息)

升級Edison圖像

設(shè)置本地到Edison的時間(詳細的論壇帖子)

使用此命令(在串行終端中)設(shè)置設(shè)備名稱: configure_edison --name

使用此命令(在串行終端中)設(shè)置設(shè)備密碼: configure_edison --password

設(shè)備名稱將使您能夠從瀏覽器訪問設(shè)備(在連接到本地網(wǎng)絡(luò)的計算機上),無需輸入IP,只需輸入“ http://device_name.local/”(例如“ http://edison.local/”)即可。設(shè)備密碼將使您能夠?qū)⒃O(shè)備與STP客戶端(例如WinSCP)連接。

對于上述步驟,您還可以遵循

Sparkfun:edison-入門指南

Instructables:Intel Edison絕對入門指南

Sparkfun視頻指南:

組裝

更新Linux

WIFI設(shè)置

軟件包管理器

步驟3:軟件包更新

默認文件系統(tǒng)包含各種軟件包,應(yīng)使用以下命令進行更新(此處有更多詳細信息)。從串行終端執(zhí)行以下命令:

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

我們將與愛迪生一起開發(fā)數(shù)據(jù)庫應(yīng)用程序。為此需要幾種工具。 Node.js是其中的關(guān)鍵工具之一,并已與Edison預(yù)裝,但僅Node.js不足以構(gòu)建美觀的Web應(yīng)用程序。我們需要手動安裝Express Generator和mongoDB。

Express JS是一個輕量級的Web框架,可以在Node JS平臺中非常輕松,快速地開發(fā)Web應(yīng)用程序。 Express JS Framework的最新版本是:4.x。

MongoDB是最適合與Node.js配合使用的流行開源文檔NoSQL數(shù)據(jù)庫。

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

要在Edison中安裝express和emailjs節(jié)點軟件包,請在串行終端中鍵入以下內(nèi)容:

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

下一步。..

步驟5:安裝MongoDB

opkg無法安裝MongoDB軟件包。因此,您需要在Edison板上執(zhí)行以下操作以進行手動安裝:

首先,通過以下命令從終端上下載Edison工作目錄中的mongo linux軟件包:

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

然后,將tgz文件解壓縮到這樣的目錄名稱數(shù)據(jù)庫中:

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

最后,通過以下方法檢查安裝命令

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

您應(yīng)該看到以下輸出:

GNU-AGPL-3.0 README THIRD-PARTY-NOTICES

Step 6:在您的PC中開發(fā)應(yīng)用程序

首先,我們將在PC中開發(fā)該應(yīng)用,然后將其傳輸?shù)紼dison。我將使用Windows PC,但可以根據(jù)需要使用Mac或Linux。因此,讓我們開始工作。

從此處在PC中安裝Node.js。

啟動控制臺窗口,然后導(dǎo)航到存儲這些Web項目的位置。我正在使用C: node如果您將工作放在其他地方(例如/home或/Users),請進行相應(yīng)的調(diào)整。

3.在C驅(qū)動器中創(chuàng)建一個目錄,然后重命名它作為節(jié)點。

。4.打開命令提示符并瀏覽節(jié)點目錄。

5.這樣安裝Express生成器:

命令C: NODE

npm install -g express-generator

6。通過以下命令創(chuàng)建一個名為出勤的快遞項目

命令C: NODE

express attendance

如果成功,您將看到類似以下內(nèi)容:

通過此命令,僅表示在新的名為“出勤”的目錄中自動生成網(wǎng)站框架。因此,我們必須對此做更多的工作。您會注意到,express-generator例程在您的出勤目錄中創(chuàng)建了一個名為package.json的文件。在文本編輯器中將其打開,它將如下所示:

這是一個基本的JSON文件,描述了我們的應(yīng)用及其依賴項。我們需要添加一些內(nèi)容。具體來說,為我們的數(shù)據(jù)庫應(yīng)用程序調(diào)用MongoDB和Monk。讓我們使依賴對象看起來像這樣:

請注意,在serv-favicon行的末尾添加了一個逗號,最后一行和尚沒有

。7.切換回命令提示符,瀏覽考勤目錄,然后鍵入:

npm install

等待一會兒,如果您看到如下所示的最終輸出,那么恭喜您!您現(xiàn)在已經(jīng)擁有一個功能齊全的應(yīng)用程序,可以等待運行。

讓我們測試一下我們的Web服務(wù)器!鍵入以下內(nèi)容:

npm start

如果一切正常,您將看到以下結(jié)果:

一切正常嗎?真棒!打開瀏覽器,前往http://localhost:3000,您將在其中看到歡迎使用Express頁面,如下所示。

下一個

步驟7:項目修改

我們的項目文件夾僅包含基本框架。我們必須修改一些文件,還必須創(chuàng)建更多文件。

我們需要更改:

style.css 用于/public/stylesheets/style.css文件夾中的可視界面

index.jade 在用于創(chuàng)建表的views文件夾中。

app.js 項目的核心

用于數(shù)據(jù)庫連接的路由文件夾中的》 users.js

我們應(yīng)該在以下位置創(chuàng)建:

global.js public javascripts文件夾,用于從數(shù)據(jù)庫讀取數(shù)據(jù)并顯示在html表中

main.js ,用于讀取RFID卡并將數(shù)據(jù)插入數(shù)據(jù)庫

步驟8:使用Intel XDK IoT Edition

我們現(xiàn)在將為RFID閱讀器編寫一些代碼,以讀取RFID標簽并將數(shù)據(jù)插入數(shù)據(jù)庫。我正在使用Grove串行RFID閱讀器,為此,我將使用節(jié)點串行端口模塊。讓我們開始。..

在您的PC中安裝Intel XDK IoT Edition,然后使用UART讀/寫模板創(chuàng)建一個新項目。有關(guān)英特爾?XDK IoT Edition入門的詳細信息,請遵循英特爾指南。

相應(yīng)地修改 main.js 文件,或?qū)⑵涮鎿Q為下面所附的main.js文件。

打開 package.json 文件,然后從依賴項中復(fù)制文本,并將其添加到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”:“l(fā)atest”

}

}

main.js 文件應(yīng)該看起來像這樣:

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);

});

});

此處附帶的代碼只是基本代碼,并不那么優(yōu)雅。您可以用更優(yōu)雅的方式寫東西。我試圖展示這種思想是如何工作的。

第9步:將已開發(fā)的應(yīng)用程序上傳到您的設(shè)備

我們已經(jīng)完成了大部分工作?,F(xiàn)在,您應(yīng)該將開發(fā)的應(yīng)用程序從PC上載到設(shè)備中。對于上載,我使用了最受歡迎的FTP客戶端之一WinSCP。使用WinSCP非常容易:

運行程序并將文件協(xié)議設(shè)置為SCP

主機名是Edison的IP地址。將端口號保留為22。

用戶名是root,密碼是您之前選擇的密碼。

然后單擊登錄。

它將再次詢問您的密碼,輸入密碼,然后單擊“確定”。

完成。現(xiàn)在,您進入了Edison。

您可以按照此處附帶的視頻了解詳細信息。完整程序附在下面。

步驟10:從Edison運行應(yīng)用程序

我們的應(yīng)用程序在Edison中?,F(xiàn)在我們應(yīng)該運行它。為此,將您的Edison連接到PuTTY并按照以下步驟操作:

1。通過鍵入轉(zhuǎn)到項目目錄。

cd node cd attedance

2。通過鍵入

npm install

3來安裝依賴項。通過鍵入

npm start

運行應(yīng)用程序。如果一切正常,您應(yīng)該會看到類似

OK?然后在瀏覽器地址欄中輸入 http://edison-ip:3000 ,您應(yīng)該看到如圖2所示的頁面。

4。通過在另一個終端窗口中鍵入將數(shù)據(jù)庫連接到您的應(yīng)用程序(注意:以前創(chuàng)建的目錄名為data)

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

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

如果可行,您應(yīng)該找到結(jié)果如圖3。

5。再打開一個終端窗口,轉(zhuǎn)到項目目錄,然后鍵入以下內(nèi)容以運行main.js文件

node main.js

如果一切正確,則應(yīng)該看到以下消息。

恭喜?。?!我們的申請已經(jīng)準備就緒?,F(xiàn)在,我們應(yīng)該將RFID閱讀器和Buzzer與Edison連接起來。拉特做到這一點并進行身體測試。

步驟11:最終的事情

連接格羅夫RFID閱讀器給Edison。 RFID閱讀器的RX引腳必須連接到Edison的TX引腳,RFID閱讀器的TX引腳必須連接到Edison的RX引腳。將蜂鳴器連接到Edison,當RFID閱讀器成功讀取標簽時,蜂鳴器會發(fā)出蜂鳴聲。

現(xiàn)在,運行程序并將RFID卡掃到閱讀器上,即可享受智能考勤系統(tǒng)的強大功能。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 考勤系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    40

    瀏覽量

    11215
收藏 人收藏

    評論

    相關(guān)推薦

    電腦制作私有云盤,電腦制作私有云盤的教程,個人云電腦是什么以及怎么連接

    遠程連接點亮智慧交通出行之光。公交、地鐵智能調(diào)度系統(tǒng)遠程監(jiān)控車輛運行、客流情況,實時優(yōu)化運營線路、發(fā)班間隔,乘客出行更高效;智能停車管理系統(tǒng)遠程引導(dǎo)車輛入場、計費,車主手機端即可查詢車
    的頭像 發(fā)表于 12-30 14:08 ?43次閱讀
    電腦<b class='flag-5'>制作</b>私有云盤,電腦<b class='flag-5'>制作</b>私有云盤的教程,個人云電腦是什么以及怎么連接

    ShiMeta鴻蒙門禁考勤解決方案

    方案介紹ShiMeta鴻蒙門禁考勤解決方案由ShiMeta智慧通行管理系統(tǒng)、鴻蒙人臉識別門禁設(shè)備等軟硬件組成,可提供穩(wěn)定可靠的門禁、考勤和訪客預(yù)約功能。方案架構(gòu)方案特點精準控制和管理人員進出、準確
    的頭像 發(fā)表于 12-13 16:45 ?134次閱讀
    ShiMeta鴻蒙門禁<b class='flag-5'>考勤</b>解決方案

    綠展科技指紋模組落地新應(yīng)用,助力企業(yè)高效考勤

    綠展科技聯(lián)合頭部考勤機廠商推出全新智能秒識別考勤機,采用指紋識別技術(shù),確保打卡考勤又快又準。綠展科技指紋模組采用全新增材制造工藝,在性能、算法、外觀設(shè)計上都有督導(dǎo)之處,能為
    的頭像 發(fā)表于 08-02 11:21 ?2046次閱讀
    綠展科技指紋模組落地新應(yīng)用,助力企業(yè)高效<b class='flag-5'>考勤</b>

    NNG宣布為Dacia汽車提供基于OpenStreetMap的地圖解決方案

    智能出行日益成為主流的今天,汽車導(dǎo)航系統(tǒng)的精準度與實時性成為了消費者購車時的重要考量因素之一。近日,全球領(lǐng)先的地圖解決方案提供商NNG正式宣布與知名汽車制造商Dacia達成戰(zhàn)略合作,共同推出
    的頭像 發(fā)表于 07-04 15:09 ?577次閱讀

    如何挑選理想的人臉識別考勤系統(tǒng)產(chǎn)品?人臉識別設(shè)備的選型

    如何挑選理想的人臉識別考勤系統(tǒng)產(chǎn)品?在挑選理想的人臉識別考勤系統(tǒng)產(chǎn)品時,需要綜合考慮多個方面,包括但不限于設(shè)備的性能、兼容性、數(shù)據(jù)存儲能力、環(huán)境適應(yīng)性以及售后服務(wù)等因素。以下是根據(jù)提供
    的頭像 發(fā)表于 06-05 14:59 ?497次閱讀
    如何挑選理想的人臉識別<b class='flag-5'>考勤</b><b class='flag-5'>系統(tǒng)</b>產(chǎn)品?人臉識別設(shè)備的選型

    遠景達無感智慧考勤解決方案讓考勤管理更智能

    在現(xiàn)代社會,人力資源管理的一個重要環(huán)節(jié)就是員工考勤。然而,傳統(tǒng)的考勤方式存在諸多問題,如效率低下、數(shù)據(jù)更新不及時等。因此,一種新的考勤解決方案——遠景達無感智慧考勤應(yīng)運而生。該方案利用
    的頭像 發(fā)表于 05-27 10:47 ?499次閱讀
    遠景達無感智慧<b class='flag-5'>考勤</b>解決方案讓<b class='flag-5'>考勤</b>管理更<b class='flag-5'>智能</b>

    無感考勤是什么意思

    系統(tǒng)通過使用智能設(shè)備,例如手機、智能手環(huán)等,自動記錄員工的出勤情況,并根據(jù)預(yù)設(shè)規(guī)則進行統(tǒng)計和計算,減少了人工干預(yù)和錯誤率。無感考勤系統(tǒng)可根據(jù)
    的頭像 發(fā)表于 05-17 10:59 ?776次閱讀
    無感<b class='flag-5'>考勤</b>是什么意思

    音箱制作過程圖解

    電子發(fā)燒友網(wǎng)站提供《音箱制作過程圖解.doc》資料免費下載
    發(fā)表于 04-28 09:27 ?10次下載

    智能人臉識別一體機+門禁考勤解決方案

    一、概述隨著物聯(lián)網(wǎng)和人工智能等技術(shù)的快速發(fā)展,“掃臉”跟掃碼開門逐漸走入寫字樓、智慧園區(qū)、智慧校園、智慧社區(qū)、景區(qū)人臉驗票、工地實名核驗等場所并賦能智慧場景,智能人臉識別一體機作為提供數(shù)字門禁考勤
    的頭像 發(fā)表于 04-02 14:18 ?1503次閱讀
    <b class='flag-5'>智能</b>人臉識別一體機+門禁<b class='flag-5'>考勤</b>解決方案

    SI24R2E:智能電子學(xué)生卡2.4GHz考勤方案

    家長青睞。智能電子學(xué)生卡2.4G考勤應(yīng)用 學(xué)生卡和讀頭之間采用2.4G無線射頻技術(shù)傳輸,通過485數(shù)據(jù)線傳輸?shù)胶笈_智能終端;然后智能終端利用GSM無線網(wǎng)絡(luò)或有限寬帶(包括短信)與
    發(fā)表于 03-29 16:26

    哪些場景要使用到人臉識別門禁考勤一體機

    伴隨著刷臉識別設(shè)備的不斷升溫,越來越多的人把刷臉進出當成了習(xí)慣。正因為它不僅方便智能,僅需刷臉就能夠完成門禁考勤,因此在很多項目場景中或多個領(lǐng)域中,人臉識別門禁考勤一體機的使用頻率很高,更新也比較
    的頭像 發(fā)表于 03-05 13:59 ?562次閱讀
    哪些場景要使用到人臉識別門禁<b class='flag-5'>考勤</b>一體機

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

    在這個項目中,我將向您展示如何使用Arduino制作智能垃圾箱,當您帶著垃圾接近時,垃圾箱的蓋子會自動打開。
    的頭像 發(fā)表于 02-11 12:22 ?3054次閱讀
    如何使用Arduino<b class='flag-5'>制作</b><b class='flag-5'>智能</b>垃圾箱

    TLT507-Linux系統(tǒng)啟動卡制作系統(tǒng)固化

    TLT507-Linux系統(tǒng)啟動卡制作系統(tǒng)固化
    的頭像 發(fā)表于 01-26 16:54 ?2155次閱讀
    TLT507-Linux<b class='flag-5'>系統(tǒng)</b>啟動卡<b class='flag-5'>制作</b>及<b class='flag-5'>系統(tǒng)</b>固化

    TL3588--系統(tǒng)啟動卡制作系統(tǒng)固化

    TL3588--系統(tǒng)啟動卡制作系統(tǒng)固化
    的頭像 發(fā)表于 01-25 09:50 ?1635次閱讀
    TL3588--<b class='flag-5'>系統(tǒng)</b>啟動卡<b class='flag-5'>制作</b>及<b class='flag-5'>系統(tǒng)</b>固化

    RK3568-Linux系統(tǒng)啟動卡制作系統(tǒng)固化

    RK3568-Linux系統(tǒng)啟動卡制作系統(tǒng)固化
    的頭像 發(fā)表于 01-22 11:06 ?1618次閱讀
    RK3568-Linux<b class='flag-5'>系統(tǒng)</b>啟動卡<b class='flag-5'>制作</b>及<b class='flag-5'>系統(tǒng)</b>固化