利用IOT-Tree消息流【标签读写】功能详细说明

news/2025/10/2 16:45:18/文章来源:https://www.cnblogs.com/ljbguanli/p/19123738

利用IOT-Tree消息流【标签读写】功能详细说明

IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了各种设备接入、数据组织管理、数据分享使用、消息流控制逻辑和人机交互多个方面的功能。当然,你也可以仅仅使用这个软件作为数据采集终端或边缘计算的软件。

这是IOT-Tree Server相关的系列文章,你可以参考其他文章更多了解IOT-Tree能给你带来的好处:

使用IOT-Tree Server通过MC协议连接三菱Q系列PLC

使用IOT-Tree Server连接西门子PLC S7-300/1200/1500

使用IOT-Tree Server通过PPI(RS485)连接西门子PLC S7-200

系列文章还包含IOT-Tree完成一个具体项目的过程,非常详细,如下:

机房自动化监控手把手分享给你 - 10 项目完成总结

IOT-Tree无论现场接入是哪种设备或哪种系统,最终配置组织完成之后,都形成了项目中的标签Tag。很明显,我们后续对数据的使用、处理等最基本的都应该先围绕标签进行。

而IOT-Tree对这些后续处理支持都通过消息流(MsgNet)进行,因此专门为项目中的标签提供了专门的处理节点。这些节点可以说是数据处理的基础,本文针对我们可能的数据处理需求,结合IOT-Tree提供的标签进行一个列表说明,以方便你对IOT-Tree在项目中的更好利用。

在任意一个消息流中,都可以在左边看到支持的功能节点。我们只需要展开“接入与设备”这个分类,可以看到如下标签:

我们对此进行封闭说明

1 标签数据读取

此节点允许你选择项目中的一些标签,并且为每个标签做个var命名。节点运行过程中,有消息触发此节点时,会在输出消息的负载(payload)中输出基于var名称作为成员的JSON对象,每个成员值由对应的标签提供。

这是最基本的标签读取——JSON对象转换支持。

2 标签数据写入

此节点在有输入消息触发时,会对内部选定的若干标签进行赋值操作,这些值可以是常数,也可以是输入消息中的payload成员值,也可以是流程上下文中的变量等。

3 标签读取过滤器

此节点对输入的消息不做任何处理,输入消息仅仅是一个触发运行的作用。这是通过过滤批量获取多标签数据的支持节点。

在项目数据组织中,所有的标签(Tags)都在一颗项目树中。如果我们要提取利用里面的部分数据,最简单的是以这棵树为基础,使用过滤的方式获取一颗子树,并发送到数据使用端。这也是IOT-Tree应用的典型场景。

4 标签写入过滤器

这也是批量写入多个标签节点支持

  •  写单个标签命令格
"payload":{"tag":"ch1.gg1.tag11","value":true,"cmd_ts":12312445345,"cmd_to":20000
}

"cmd":"write_tag" 代表了单个标签写入

"cmd_ts":123124453 代表了这个指令创建时间戳

"cmd_to":20000 代表了这个指令的过期时间(毫秒),如果当前时间和创建指令的时间戳跨度超过这个过期时间,则消息不被处理

"tag":"ch1.gg1.tag11" 标签路径

"value":true 写入值

  • 写多个标签命 令格式
"payload":{"cmd":"write_tags","cmd_ts":12312445345,"cmd_to":20000,"tags":[{"delay":0,   "tag":"ch1.gg1.tag11","value":true},{"delay":2000,"tag":"ch1.gg1.tag11","value":false}]
}

"cmd":"write_tags" 代表了多个标签写入

"cmd_ts":123124453 代表了这个指令创建时间戳

"cmd_to":20000 代表了这个指令的过期时间(毫秒),如果当前时间和创建指令的时间戳跨度超过这个过期时间,则消息不被处理

"tags":[] 具体按顺序写入标签内容,每个写入标签有如下内容:

  "delay":2000 写入前延迟毫秒

  "tag":"ch1.gg1.tag11" 标签路径

  "value":true 写入值

5 实时数据表同步

此节点专门支持项目中全部标签数据同步到关系数据库表,以支持基于传统关系数据的数据共享。

请参考:使用IOT-Tree消息流实现实时数据同步:标签实时数据--关系数据库表

6 标签变化触发器

通过选择的标签,监听标签在运行过程中更新变化,并根据一定策略产生消息输出

每个标签变化就会触发一个输出消息,每个消息payload格式如下:

"payload": {"valid": true,"chgdt": 1752453543170,"tag_title": "TotalV","tag_id": "r25","tag_path": "dlb1.d1.eng","updt": 1752462618027,"tag_val": 12407.9,"vt": "float"}

你可以选择监听标签只需要更新就会触发(而不考虑值是否变化)。同时,也可以选择只有在标签值变化时才会触发。

7 标签事件/报警触发器

在标签编辑界面中,可以设定是否要支持触发事件/报警,如下图:

只有设置了事件/报警的标签才会被此消息流节点选择使用。如下图:

此节点在参数配置时,会列举出项目中所有配置了事件/报警信息的标签。只需要选择需要监听的相关标签即可。

节点有3个输出端子,第一个是标签触发了事件/报警,就会产生一个消息输出;第二个是解除了这个事件/报警时输出;第三个是关系表资源关联,必须和关系数据库模块包含的数据库表资源节点配合使用——用来支持事件/报警的自动数据库表记录。

8 标签过滤存入时序数据库

这是在项目中支持对选定的标签往时序数据库中写入(记录)的支持节点。当有效性输入时,就会触发一次记录。目前支持InfluxDB实现数据库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/925093.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025.10.2 2024CCPC重庆

施工中…… vp 5/13(B E I J K) 补题: A D H M

二分图判定,染色法

#include <iostream> #include <cstring> #include <algorithm> using namespace std;const int N=100010,M=2*N; int n,m; struct edge{int v,ne;}e[M]; int h[N],idx; int color[N];void add(int …

命令行实用技巧

键盘上下键调出历史命令 Ctrl + c:废弃当前命令行中的命令,取消当前执行的命令,例如ping Ctrl + l,clear:清屏 tab键自动补齐:可补齐命令、参数、文件路径、软件名 esc + . :将上一条命令参数变成当前命令的执行…

网站代码多彩外卖小程序怎么制作

文章目录 参考文章PGO是什么使用PGO的好处PGO做了什么热函数内联什么是内联内联的好处Go默认的内联策略查看内联预算PGO的热函数内联 去虚拟化调用指令高速缓存 PGO有什么缺点可执行程序变大构建时间变长 PGO怎么使用典型的工作流程收集CPU配置文件生产环境启动PGO代码改动重新…

廊坊企业做网站做企业官网的公司

wav文件格式分析详解 作者&#xff1a;曹京日期&#xff1a;2006年7月17日 一、综述 WAVE文件作为多媒体中使用的声波文件格式之一&#xff0c;它是以RIFF格式为标准的。RIFF是英文Resource Interchange File Format的缩写&#xff0c;每个WAVE文件的头四个字节便是“RIFF…

农家乐网站 建设绍兴以往网站招工做

​一、前言 上一篇给牛奶做直播之二 主要讲用RTMP搭建点播服务器&#xff0c;整了半天直播还没上场&#xff0c;今天不讲太多理论的玩意&#xff0c;奶牛今天放假了也不出场&#xff0c;就由本人亲自上场来个直播首秀&#xff0c;见下图&#xff0c;如果有兴趣的话&#xff0…

菏泽哪里有做网站的因酷网站建设

转载自公众号&#xff1a;工匠小猪猪的技术世界 摘要: 本文非原创&#xff0c;是笔者搜集了一些HikariCP相关的资料整理给大家的介绍&#xff0c;主要讲解了为什么sb2选择了HikariCP以及HikariCP为什么这么快。 Springboot2默认数据库连接池选择了HikariCP为何选择HikariCP理由…

设备沉睡的“心跳”难题:BLE休眠后无法被手机唤醒的分析与优化 - 详解

设备沉睡的“心跳”难题:BLE休眠后无法被手机唤醒的分析与优化 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &…

CPU温度查看(Core Temp)

前言 原因很简单,用到Core Temp这个软件是因为想查看CPU的温度,现在从任务管理器中已经看不到CPU温度了,所以需要其他方式来查看为什么需要看CPU的温度呢,因为在某天,我发现刚开机,基本没跑什么任务,风扇就开始…

实用指南:Python虚拟环境管理工具virtualenv详解

实用指南:Python虚拟环境管理工具virtualenv详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas",…

博罗网站设计公司网站服务搭建

sys模块 与操作系统交互的一个接口 文件夹相关 os.makedirs(dirname1/dirname2) 可生成多层递归目录os.removedirs(dirname1) 若目录为空&#xff0c;则删除&#xff0c;并递归到上一级目录&#xff0c;如若也为空&#xff0c;则删除&#xff0c;依此类推os.mkdir(dirnam…

负载均衡式的在线OJ项目编写(三) - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

云校网站建设wordpress缓存清除

BLE服务器与客户端通信 文章目录 BLE服务器与客户端通信1、软件准备2、硬件准备3、代码实现3.1 BLE服务器实现3.2 Android手机测试BLE服务器3.3 ESP32 BLE客户端在本文中,我们将介绍如何使用低功耗蓝牙在两个 ESP32 开发板之间执行 BLE 服务器客户端通信。 换句话说,将介绍如…

织梦菜谱网站模板免费下载有些网页打不开是什么原因

一、二次利用风险 电动汽车的当前电池信息&#xff0c;如年份、容量和制造商&#xff0c;通常是相互关联和不完整的。再加上电池内部的电化学变化&#xff0c;SLB在包括安全和环境在内的一些领域存在很大的风险&#xff0c;这表明短期内梯次利用仍然是一个不成熟的方案。 1.1 安…

网站建设推广型百度网址大全导航首页

822.翻转卡片游戏 在桌子上有 n 张卡片&#xff0c;每张卡片的正面和背面都写着一个正数&#xff08;正面与背面上的数有可能不一样&#xff09;。 我们可以先翻转任意张卡片&#xff0c;然后选择其中一张卡片。 如果选中的那张卡片背面的数字 x 与任意一张卡片的正面的数字都…

深入解析:python学智能算法(三十九)|使用PyTorch模块的normal()函数绘制正态分布函数图

深入解析:python学智能算法(三十九)|使用PyTorch模块的normal()函数绘制正态分布函数图pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importa…

2025污水处理设备厂家 TOP 企业品牌推荐排行榜,一体化,生活,工业,养殖,医疗,农村,学校,餐厨,隧洞,高速污水处理设备公司推荐!

在环保意识日益增强、政策法规持续趋严的当下,污水处理行业正面临着前所未有的挑战与机遇。随着工业化和城市化进程的加速,污水排放量不断攀升,污水成分也愈发复杂多样。传统的污水处理设备在处理效率、能耗控制以及…

会议网站定制广州网站建设定制方案

文章目录 一、介绍1. 支付2. 支付结果 二、前提准备1. 支付宝开放平台2. 内网穿透3. 局域网 三、order微服务1. 依赖、配置2. 工具类1. 二维码生成2. AlipayConfig 3. 端点代码1. /generatepaycode2. /requestpay3. /payresult4. /receivenotify 环境如下 Version手机安卓支付…

详细介绍:网络安全常见敏感目录字典

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …