一、什么是Node-red
Node-RED 是一个基于浏览器的可视化编程工具,它用于将不同的API和硬件连接在一起,以帮助快速构建新型的物联网(IoT)应用和服务。它允许用户通过拖拽和连接节点来创建应用程序逻辑或工作流,而不需要编写大量代码。Node-RED最初是由IBM新兴技术团队开发,并且现在是一个活跃的开源项目。
以下是关于Node-RED的一些关键点:
特性
可视化编程:通过图形界面,使用预定义的节点(nodes)进行连线编程。
事件驱动:支持事件触发的工作流,非常适合IoT场景。
灵活的数据处理:可以轻松地过滤、转换和操作数据。
丰富的节点库:有大量官方和社区贡献的节点,涵盖从HTTP请求到社交媒体交互等众多功能。
可扩展性:用户可以创建自己的自定义节点来满足特定需求。
易于部署:可以运行在多种平台上,包括树莓派等小型设备上。
工作原理
Node-RED 的核心是节点(nodes)和流(flows)。节点代表了具体的功能或服务,比如读取传感器数据、发送邮件或者调用Web API。流则是由一系列节点组成的线性或非线性的程序逻辑,描述了信息如何在网络中流动。当某个事件发生时,如接收到传感器输入,相应的流就会被激活并开始执行。
使用场景
物联网:连接各种智能设备,实现自动化控制。
数据分析:收集来自不同来源的数据,进行实时分析。
云集成:与云端服务无缝对接,
二、树莓派安装Node-Red
执行: sudo apt install build-essential git curl 指令(如下图)
二 访问Node-RED官网,找搭配树莓派安装Node-RED应该执行的命令:
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
这条命令将会执行一系列操作,包括更新系统软件包、安装 Node.js 和 npm、移除旧版本的 Node-RED 和 Node.js、安装最新的 Node-RED 核心组件以及配置为服务等。请注意,在执行此命令前,系统会询问您是否继续安装,输入 Y 并按回车键确认。
三、在树莓派是上面执行 这段命令如下图:
四、在树莓派中启动 Node-RED
Node-RED 安装完成后,可以通过命令行来启动它。打开树莓派的终端窗口,输入以下命令以启动 Node-RED:Node-red start
请注意,这里推荐使用 node-red-start 而不是直接使用 node-red 命令。node-red-start 是一个方便的脚本,它不仅会启动 Node-RED,还会在后台运行,并提供日志输出到终端,这样您就可以监控启动过程并查看任何可能发生的错误信息。
如果您是首次启动 Node-RED,系统可能会自动下载一些必要的依赖项,这可能需要几分钟时间,具体取决于您的网络速度。
五. 访问 Node-RED 用户界面
一旦 Node-RED 成功启动,您可以在浏览器中访问它的图形化用户界面 (GUI)。只需在浏览器地址栏输入如下URL:http://<树莓派IP地址>:1880
六. 使用 Node-RED
通过浏览器中的 Node-RED 界面,您可以开始创建流(flows),即连接不同的节点来构建应用程序逻辑。Node-RED 提供了大量的内置节点以及社区贡献的额外节点,可以帮助您快速地集成各种服务和技术
七. 关闭 Node-RED
当您完成工作后,可以安全地关闭 Node-RED。要停止正在运行的 Node-RED 实例,回到启动 Node-RED 的终端窗口,并按下 Ctrl+C 两次。第一次按键会尝试优雅地关闭 Node-RED;如果未响应,则第二次按键将强制终止进程。
sudo systemctl start node-red.service # 启动 Node-RED
sudo systemctl stop node-red.service # 停止 Node-RED
sudo systemctl restart node-red.service # 重启 Node-RED
八:在同一网络中跨设备访问树莓派上的 Node-RED
一旦知道了树莓派的IP地址,就可以从其他设备上访问 Node-RED 用户界面了。请根据您使用的设备类型选择合适的方法:
电脑端: 打开您的网页浏览器,并在地址栏中输入如下URL:http://<树莓派IP地址>:1880
将 <树莓派IP地址> 替换为实际的IP地址。例如,如果树莓派的IP地址是 192.168.3.105,那么完整的URL应该是 http://192.168.3.105:1880。
手机端:
使用智能手机上的浏览器,按照与电脑端相同的方式输入URL。大多数现代移动浏览器都支持这种方式直接访问。
常见问题
如果遇到无法连接的问题,请检查以下几点:
确认所有设备确实处于同一网络。
检查是否有防火墙阻止了对树莓派的访问;如果是这种情况,您可能需要调整防火墙规则。
确保 Node-RED 已正确启动并且正在监听正确的端口(默认为1880)。
如果您更改过 Node-RED 的默认端口号,请记得使用更新后的端口号进行访问。
通过上述步骤,您应该能够在同一网络内的不同设备上轻松地访问和管理运行在树莓派上的 Node-RED 实例。