node-red:环境搭建及使用

Node-RED是一个基于Node.js的物联网应用开发工具,提供图形化编程界面,用于连接硬件设备和Web服务。文章详细介绍了Node-RED的安装、使用,包括Windows和Linux环境的安装步骤,以及节点管理、缓存清理、后台运行等操作。此外,还涉及到了Node-RED的上下文变量、全局变量的使用和Modbus节点的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


[回到目录]  [回到末尾]

一、node-red简介

  Node-RED是一个构建物联网应用的开源可视化界面开发工具,提供了一个基于浏览器的流程编辑器,通过拖拽连接节点的编程方式,快速连接硬件和设备到Web服务和其他软件,可以一键部署运行,创建好的流程还可以通过导出导入JSON文件轻松实现程序移植。
  它是基于Node.js构建的轻量级开源工具,非常适合运行在Raspberry Pi等低成本边缘设备以及云端。兼容的运行环境如下:

  • 本地服务器:包括任何基于 Debian 的操作系统(Ubuntu、Diet-Pi)、RedHat、Fedora 、CentOS、Windows、Docker、KylinOS(国产银河麒麟)等
  • 设备:Raspberry Pi、BeagleBone Boards、Arduino、Android
  • 云环境:IBM Cloud、SenseTecnic FRED、Amazon Web Services、Microsoft Azure、阿里云等
      Node-RED特点:图形化编程、丰富的API库(更多内容:https://nodered.org/docs/api/)、高度扩充性,已存在大量的Library\Flow\Node可下载使用(更多内容:https://flows.nodered.org/
    node-red所在层:

1
 Node-RED通过安装存储库中的模块,可以获取数据层或者设备层的采集数据,同时可以对采集数据进行处理加工转化为自定义json格式,进行页面展示或入库存储。

参考链接
1、Node.js官网
2、nodered官网
3、Node-RED实现OPC DA数据采集

二、准备工作 - 安装node.js

  1. node验证
      由于node-red是基于node.js的,首先要确保机器上是否安装,使用指令查询node版本:node -v
    1
    如果没有版本信息,请先安装:node.js卸载、安装、配置详解
    如果已经安装,可点击跳转到下一步

三、 nodered安装


nodered官网

  • 跳过SSL证书检查,执行命令:npm set strict-ssl=false

如果不先执行上述命令的话,可能会出现证书认证错误的异常,如下图所示:
1

  • 清除npm缓存,执行命令:npm cache clean --force
03-08
### Node-RED简介 Node-RED 是一种用于简化物联网(IoT)应用程序开发的工具,允许用户通过拖放图形化界面来创建复杂的流程自动化逻辑[^3]。该平台基于事件驱动架构设计,支持多种协议的数据交换,并能快速集成各类硬件设备和服务。 #### 主要特点: - **可视化编程环境**:无需编写大量代码即可构建应用; - **丰富的节点库**:内置众多预定义的功能模块(即“节点”),并可通过 npm 安装更多第三方贡献的插件; - **灵活的消息传递机制**:采用消息流的方式处理数据传输与转换操作; --- ### Windows环境下安装指南 对于希望在Windows操作系统上部署Node-RED的开发者而言,需遵循如下步骤完成初步设置工作[^5]: 1. 访问 [Node.js官方网站](https://nodejs.org/en/) 并下载适合当前系统的长期支持版本(LTS),这一步骤会自动附带安装必要的 `npm` 工具。 2. 打开命令提示符窗口作为管理员权限运行以下指令以全局方式安装最新稳定版Node-RED: ```bash npm install -g --unsafe-perm node-red ``` 3. 启动服务端程序: ```bash node-red ``` 此时,默认情况下浏览器应能够连接至本地服务器实例(`http://localhost:1880`)查看编辑器页面,在这里可以开始搭建自己的第一个项目! --- ### 创建简单的仪表板示例 为了展示如何利用官方提供的Dashboard扩展实现交互式前端显示效果,下面给出一段具体的实践案例说明[^1]: 假设想要监控温度传感器采集到的信息,则可以在左侧资源面板找到相应类型的输入元件以及图表控件加入画布区域形成关联关系。具体来说就是将Temperature Sensor模拟产生的数值经过Function节点加工后送入ui_chart组件内呈现出来供远程客户端实时观察变化趋势。 ```json [ { "id": "temperature-sensor", "type": "inject", "z": "", "name": "", "props": [ {"p":"payload"} ], "repeat": "5", // 每隔五秒触发一次 "crontab":"", "once":false, "topic":"","x":90,"y":60,"wires":[["data-processing"]] }, { "id": "data-processing", "type": "function", "z": "", "name": "Process Data", "func": "msg.payload += Math.random();\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs":[], "x":270,"y":60,"wires":[["display-chart"]] }, { "id": "display-chart", "type": "ui_chart", "z": "", "name": "Temperature Chart", "group": "default", "order": 0, "width": 0, "height": 0, "label": "Temperature (°C)", "chartType": "line", "legend": "always", "xformat": "HH:mm:ss", "interpolate": "linear", "nodata": "", "dotsize": 2, "datasource": "none", "showTimestamps": false, "colors":["#FFDD00","#D5E8D4"], "updateInterval": "never", "properties":[],"x":450,"y":60,"wires":[] } ] ``` 上述JSON配置片段描述了一个完整的从获取原始信号到最后渲染可视化的全过程链路结构图样。其中涉及到的关键部件有Inject定时注入源、自定义计算逻辑封装体(Function)还有最终负责绘图展现层(ui_chart)三大部分组成。 ---
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值