Node-red基础知识教程与实例

881 阅读5分钟

从2000年起,我们有了运行网络和桌面应用程序的电脑和台式机。 几年前,手机和平板电脑出现了,而且还在继续流行。该行业开始开发在这些设备上运行的移动应用程序。总体而言,程序员为网络、桌面和移动应用程序编写软件代码。随着最近技术的进步,很多设备出现了。不同的设备是汽车/电机/家庭和电子设备中的传感器。物联网是一个概念,这些设备组连接到互联网,以交换数据。我们必须在这些硬件设备上编写程序/嵌入代码,以便在云和数据库服务器上共享数据。

有很多设备类型被引入,也有很多数据。有很多事情需要处理设备。

写一个嵌入的程序或代码并在每个设备类型上进行测试是非常困难的,因为它需要太多的时间来运行,这些设备产生/消耗大量的数据,需要与外部服务进行服务API交互。为了简化这一点,我们需要快速应用开发来处理设备。由于所有这些事情,Node-red可视化流程工具编辑器被引入,以链接/整合不同的服务,而不需要复杂的编码知识。它只需要在编辑器中连接电线/流程节点点,并轻松部署代码。主要是Node-red对设计、开发和测试物联网应用非常有用。

这些设备已经支持通过不同的设备进行编程服务,如基于Raspberry Pi、Android Arduino的设备

有许多物联网的样本应用类型

1.一个电动马达可以使用安卓设备来控制启动/停止。

2.家庭应用,如门锁和风扇传感器,通过移动端进行开/关。

3.天气传感器

从所有这些设备中,产生了大量的数据并存储在云端,我们可以利用这些数据进行分析处理,为未来做出更好的决定。

节点红是一个基于流程的编辑器,它是一个开源的应用程序。

它提供了基于浏览器的可视化流程编辑器,对于开发者/设计师来说,非常容易连接不同的节点和服务。这里的节点是硬件设备。

Node-red的安装和设置

要配置node-red工具,需要安装node.js。请看Npm和node安装中记录的步骤。

一旦NPM和node命令设置完毕并成功运行,下一步就是 安装node-red软件

在windows下的设置

-g选项用于全局安装node-red

npm install -g -unsafe-perm node-red

在基于Linux的操作系统上设置

sudo npm install -g -unsafe-perm node-red

这样就成功安装了node red,运行 node-red命令,在你的机器上启动node-red服务器,并在控制台记录以下信息:

17 Jul 22:28:41 - [info] 启动流量

17 Jul 22:28:41 - [info] 启动流量

17 Jul 22:28:41 - [info] 服务器现在运行于http://127.0.0.1:1880/

然后在你的浏览器中访问http://127.0.0.1:1880/,管理界面打开。默认情况下不需要用户的登录信息。

node red dashboard

仪表板管理教程

这个屏幕有三栏。左边一栏是节点部分,中间一栏是流程编辑器,节点在这里拖放,使用API端点进行布线。
右侧栏有信息和调试标签,以测试流程
右侧顶部有一个生产部署的选项。

不同类型的节点可用

注入节点是在预定的时间间隔内手动触发一个节点。时间将被配置。
调试节点用于将有效载荷和对象信息记录到控制台。
模板节点支持基于mustache的模板
仪表板部分有不同的HTML表单组件节点
社交部分有支持社交媒体供应商的节点。
存储部分的节点支持文件存储。

有支持TCP/WebSocket协议的节点,用于与服务通信。

  • 它是建立在Nodejs架构上的
  • 简单易用的图形化流程编辑器
  • 非常容易设置本地环境
  • 有很多云供应商,如微软Bluemix、Bluemix和亚马逊网络服务
  • 支持对第三方服务的访问
  • 很容易保存并从数据库中获取数据。
  • 为物联网快速开发应用
  • 创建的流程被存储为JSON对象。所以你可以做导入/导出流量
  • 支持Docker

节点红MQTT协议支持

MQTT是消息队列遥测传输的缩写。这是基于使用发布和订阅模式的消息传递模型的协议。这是在HTTP协议的基础上实现的。这被用于物联网--物理设备或移动设备,以有限的网络带宽通过该协议通信消息。

节点红提供了MQTT输入节点MQTT输出节点,MQTT配置节点连接到MQTT经纪人,允许发布和订阅消息。

要有发布-订阅模式,需要服务器/经纪商接受发布的消息并向订阅者发送通知。

MQTT输入节点

这个节点在node-red管理面板的输入部分中可用。它连接并订阅服务器的消息通知。这个节点充当订阅者。

MQTT输出节点

这个节点在node-red管理面板的输出部分下可用。 它允许向服务器发布消息,并充当发布者。

消息传递协议
MQTT Broker - Eclipse Mosquitto
Mosquitto是一个开源的消息传递服务器,用于支持MQTT协议。它是轻量级的,支持所有设备。你可以安装在运行node red工具的同一台主机上。在Node-red中,你需要在MQTT配置节点中提供一个配置

Nodered是流程级编程工具。

还有另一个替代流工具nodered是一个可用于物联网(IOT)的total.js平台和Apache Nifi框架,用于与不同的设备通信。这也是基于nodejs框架的。