关于Node-Red
关于Node-Red是一个基于流形式的编程工具,是一个开源的项目,由IBM的Emerging Technology Services负责开发,在物联网等流域有着广泛的应用。
基于流的编程
由J.Paul Morrison在20世纪70年代发明的基于流的编程是一种将应用程序的行为描述为黑匣子网络的方式,或者在Node RED中称为“节点”。每个节点都有明确的目的;它被赋予一些数据,它对这些数据做一些事情,然后将这些数据传递出去。网络负责节点之间的数据流。
这是一个非常适合视觉表现的模型,使其更容易被更广泛的用户访问。如果有人能把一个问题分解成离散的步骤,他们就能看到一个流程,并了解它在做什么;而不必理解每个节点内的各个代码行。
运行时/编辑器
Node RED由一个基于Node.js的运行时组成,您可以将web浏览器指向该运行时以访问流编辑器。在浏览器中,您可以通过将节点从选项板拖动到工作空间中并开始将它们连接在一起来创建应用程序。只需单击一下,应用程序就会部署回运行时。
通过安装社区创建的新节点,可以很容易地扩展节点的调色板,并且可以很容易将您创建的流作为JSON文件共享。
基于浏览器的流程编辑器
Node-RED提供了一个基于浏览器的编辑器,可以轻松地使用工具箱中的各种节点将流连接在一起,只需单击即可将其部署,非常方便。
建立在Node.js之上
Node-RED具有基于Node.js构建的轻量级运行时,充分利用了其事件驱动的非阻塞模型,这使得它的运行平常非常广泛,诸如:
低成本的硬件:Raspberry Pi(树莓派) 云端运行 本地运行
Node-RED的另一个优势在于,Node的软件包存储库中有225000个模块,可以轻松扩展面板节点的范围以添加新功能。
协同开发
在Node-RED中创建的流使用JSON数据存储,可以轻松导入和导出,多人协作起来非常方便。
历史
Node RED于2013年初开始运作,是IBM新兴技术服务集团的Nick O’Leary和Dave Conway Jones的一个附带项目。
最初作为可视化和操作MQTT主题之间映射的概念验证,很快就成为了一个更通用的工具,可以很容易地向任何方向扩展。
它于2013年9月开源,此后一直在公开开发,最终于2016年10月成为JS基金会的创始项目之一。
2019年,Node.js基金会与js基金会合并,成立了OpenJS基金会。
为什么它被称为Node RED?这个名字是对听起来像“红色代码”的单词的轻松模仿。它坚持了下来,与最初几天的说法相比有了很大的改进。“节点”部分反映了流/节点编程模型以及底层Node.JS运行时。我们从未就“红色”部分的含义得出结论。“快速事件开发人员”是一个建议,但我们从未觉得有必要将任何事情正式化。我们坚持使用“红色节点”。
关于上位机
在Nodered中可以安装社区版本的节点,社区多大4000多的免费开源节点,基本能够满足日常工业和物联网应用,如果没有合适的节点,还可以自己开发。
基于Nodered,我们可以实现基于uibuilder的前端,后端采用nodered,实现对PLC或者其他物联网设备的通讯和连接。
所以跟着本教程,我们可以完成以下上位机功能:
- PLC数据采集
- 采用MQTT推送订阅数据
- 采用uibuilder节点,结合vue和bootstrap完成前端界面
- 跨平台部署应用
我们主要是为了快速的做上位机项目,以及能够快速的做到符合工业控制的功能。
预备知识
- JavaScript语言的基础
- nodejs基础
- vue2基础
- html和css基础,熟练编制前端网页
当然,您也可以跟着本教程一步一步去做,在做的过程中学习,也是可以的,我们会适当的给与基础薄弱的人以指导。
原文地址:https://blog.csdn.net/weixin_40035502/article/details/130024675
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_22034.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!