目录
目录
一、Node-RED简介
Node-RED是IBM公司开发的一个可视化的编程工具,以满足他们快速连接硬件和设备到Web服务和其他软件的需求,很快发展成为一种通用的物联网编程工具。Node-RED是一种基于“流”(Flows) 的编程工具,它有一个可视化编辑器,允许将预定义的代码块(称为“节点”,Node)连接起来执行任务。连接的节点,通常是输入节点、处理节点和输出节点的组合,当它们连接在一起时,构成一个“流”(Flows)。
二、Node-RED安装
1. 常规安装
1)Node.js安装
Node-RED是基于Node.js开发的一款可视化流编程工具,安装Node-RED首先需要安装Node.js
在Node.js官网 https://nodejs.org/en/ 下载LTS(Long Term Support)版。
npm 是一个包管理工具,但由于其服务器在国外访问速度慢。可以用淘宝镜像 cnpm 代替官方版本,以加快访问速度,其同步频率为10分钟一次,以保证尽量与官方服务同步。
在CMD中输入 npm install -g cnpm --registry=https://registry.npm.taobao.org
进行安装
3)Node-RED安装
在CMD中输入 cnpm install -g node-red
进行安装2. 常规安装
2. Docker安装
docker pull nodered/node-red-docker
docker run -it -p 1880:1880 nodered/node-red
三、基本操作
1. 启动
在CMD中输入 node-red
就可以启动Node-RED后台程序,
在浏览器中打开 http://localhost:1880 就可以访问Node-RED的前台界面,进行编程。
2. 编程和部署
打开Node-RED界面,可以看主要到由三个工作区域组成,节点板(左)、流编程界面(中)、输出调试窗格(右)。
流编程工作区位于界面中间,在这里可以通过拖拽的方式将左侧窗格的节点构建在相应位置,并且通过线连接,双击节点打开编辑界面可对节点进行具体的编程操作。窗格的顶部是一组选项卡,可以方便的切换或添加新的流程,双击打开编辑界面可对当前流程添加描述、重命名或删除。
节点板位于界面的左侧,包含所有内置的Node-RED实例支持的节点,以及自定义开发的节点,在下一节会做详细的介绍。
右侧是输出调试窗格,程序编辑好后,点击右上方红色的按钮进行部署,调试窗格将显示调试的输出信息、错误和警告。
3. Node常用节点
1) 基本节点类型
(1) 输入节点
输入节点(例如inject),右侧会有输出端点,可以将数据输入到当前Node-RED流中。
(2) 输出节点
输出节点(例如debug),左侧会有输入端点,允许输出数据到Node-RED流外。
(3) 功能节点
功能节点(例如function),用来执行特定的功能,一般至少包含一个输入节点和一个输出节点。
除了上述三种基本节点外,Node-RED还包含网络、序列、解析、存储等节点。
2) 节点的查询
点击右侧的帮助,在搜索栏输入要查询的节点名称,就可以看到官方提供的详细节点信息
3) 节点的导入
点击右上角的菜单按钮,选择 -> 节点管理
弹出用户设置窗框,可实现对节点的搜索、安装、启用和禁用
4. 流程的导入导出
1) 流程的导出
点击右上角的菜单按钮,选择 -> 导入,可选择将流程导出到剪切板或库。
(1) 导出到剪切板
(2) 导出到库
2) 流程的导入
流程导入同样也包含三种方式:从剪切板导入、从库导入、从例子导入
四、HelloWorld示例程序
(1)启动Node-RED,浏览器打开编程界面
(2)从左侧拖拽一个inject节点到流编程区域
(3)双击修改inject节点属性,将msg.payload的类型改为文字列,添加内容”Hello world”,勾选中“立即执行“
(4)从左侧拖拽一个debug节点到流编程区域,并通过线连接
(5)点击右上方”部署”按钮,这时可以看到右侧调试窗口输出了”Hello world”