使用node-red快速构建物联网应用

一、什么是Node-Red?

Node-Red是由IBM创建的开源项目,它是一个用来实现物联网的可视化编辑器,它旨在让开发人员更加专注物与物的连接,避免纠缠于繁琐的代码,它可以运行在大多数linux平台上,包括但不局限于树莓派这样的廉价linux主机。

系统由一个一个的“NODE”构成,每个“NODE”可以提供不同的功能,你可以通过拖拽,连线来组成一个完整的流程。用来构建一个通常意义上的物联网应用。

下图演示了一个将cpu温度上传到IBM watson物联网平台的过程,是不是很简单呢?我们会在本文中介绍详细的实现过程。

 

二、安装

Node-Red是基于node.js的,可以运行在大多数linux平台上,最新的树莓派系统已经安装好了,我们演示是在别的linux主机上的安装过程:

我们首先安装node.js

sudo wget http://node-arm.herokuapp.com/node_latest_armhf.deb

sudo dpkg i node_latest_armhf.deb

node v

sudo aptget install git npm

git clone https://github.com/node-red/node-red.git

cd nodered

sudo npm install

三、连接入IBM 沃森物联网平台

如第一部分的图那样,第一个浅蓝色方框是用来触发的,它可以通过点击触发下一个方框,input那一栏里有很多触发条件,第二个方框是advance选项栏里的,它可以执行系统命令,并将执行结果传入下一个方框中( 在这是我们填入cat /sys/class/thermal/thermal_zone0/temp),黄色的方框是函数方框,你可以通过编写javascript代码来实现你想要的功能,绿色方框是debug方框,用来输出调试信息,蓝色方框用来连接IBM的IOT平台,如果没有注册IBM 的账户,会得到一个临时设备页面,我们可以通过双击蓝色方框,点击设备id后面的箭头进入设备页面,查看设备提交的数据,如果注册了IBM的账户,可以获得更多的功能。