新闻中心
PRESS CENTERNode-RED作为一种基于流式编程的开源工具,为开发者提供灵活的可视化编程方式,使得纵横智控的EG边缘计算网关能够轻松连接各种数据源,进行数据处理和转换。EG边缘计算网关能够在数据生成的边缘处对数据进行实时采集和初步分析,减少了带宽需求,提高了数据处理效率。还能通过各种协议(如Modbus、MQTT、OPC UA等)收集数据,并对数据进行必要的转换和存储。
(一、EG边缘计算网关的基本功能)
EG边缘计算网关在系统中起到数据采集和处理的中间层作用,灵活处理多个传感器和设备的数据,实时过滤和初步分析。EG边缘计算网关具有以下功能:
协议转换:支持不同设备之间的数据传输协议,如Modbus、OPC UA、MQTT等。
本地处理与分析:提供计算能力对数据进行过滤、转换和简单分析。
数据存储与传输:将处理后的数据通过网络传输至云端或本地服务器中的数据库。
(二、Node-RED的工作机制)
Node-RED提供了基于浏览器的流编辑器,用户可以通过拖放节点来创建数据处理流程。每个节点具有输入和输出的特性,并能够执行特定的数据处理任务。Node-RED具有丰富的插件支持,如Modbus、MQTT、OPC UA等,使得它能够集成多种数据源。
(三、数据采集与处理)
参考流程:通过EG网关定时采集从设备数据,并将采集到的数据格式化为Mysql数据库可识别的格式,上传用户自己的Mysql数据库。这里以采集modbus rtu从机数据上传为例,操作流程如下:
1.连接Mysql数据库
首先确保安装Msql节点,然后在Node-RED编辑器中,添加MySQL节点,并配置数据库连接参数,包括主机、端口、用户名、密码和数据库名称。
使用Mysql节点配置用户的Mysql数据库连接参数,配置完成部署,显示connected即连接成功。
2.采集从机数据
使用Modbus RTU数据采集
配置Modbus节点的主机地址和端口,并指定需要采集的数据寄存器。
创建一个数据采集流程,将Modbus节点连接到MySQL节点。设置定时器节点以定期触发数据采集任务,确保数据的实时性和准确性。
3.数据格式化
数据上传至 MySQL 数据库时,需要根据 MySQL 的要求将数据格式化为正确的 SQL 语句。使用函数计算节点进行数据格式化处理,本次要转换的数据格式如下:
Modbus节点输出数据格式 | 描述 | Mysql上传数据的SQL格式 |
{ "temp": 31.0, "hum": 45.5 } | 将左侧 Modbus 节点输出的对象数据转换为右侧 MySQL 所需的 SQL 语句 | INSERT INTO my_table (temp, hum) VALUES (25.55, 45.5); |
示例代码:
var data = msg.payload var sql = `INSERT INTO my_table (temp, hum) VALUES(${data.temp},${data.hum});` msg.topic = sql return msg;
4.数据上传
数据格式化完成后,连接函数计算节点和Mysql节点,点击注入节点即可实现数据采集上传。测试成功可以设置注入节点周期性执行,即可实现数据定时采集上传Mysql数据库。
EG边缘计算网关定时采集数据并转换成MySQL支持的格式,这一方法实现对大量现场设备数据的实时处理和长期存储。提高了数据处理效率,能为后续的数据分析和决策提供了基础。边缘计算的引入,使数据的初步处理可以在靠近数据源的地方完成,减少了对云端计算的依赖,降低了数据传输的延迟和成本。
注意:如需从Mysql数据库获取数据,也可以通过传参SQL语句给msg.topic属性上传Mysql节点,进行数据的请求。