电子说
步骤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条评论
快来发表一下你的评论吧 !