Skip to content

9.3 节点类型详解 ​

左侧节点面板按三级分组,把节点拖到画布上即可使用。

事件触发的三类节点:触发条件、中间控制、输出动作,怎么从左往右串起来

9.3.1 触发条件 ​

流程的起点。一条流程可以放多个触发条件,任意一个成立就会把整条流程跑一遍, 它们之间怎么组合由「与 / 或 / 非」节点决定,详见 9.5 多个触发条件与与或非。

数据变化时启动

监听某个数据点,值发生变化时启动流程。

参数说明
数据点名称实时数据库里的点位名,可下拉选择,也可直接输入
变化方式任意变化 / 值变大 / 值变小
最小变化幅度死区。变化量小于这个值就不触发,0 表示不设死区

「值变大」「值变小」适合只关心单方向的场景,如水位只在上涨时报警。

浮点点位应填最小变化幅度

温度、液位这类点位每次上报都可能有小幅变化(23.40 → 23.41),不设死区时每跳动 0.01 都算一次变化。 填 0.5 表示变化小于 0.5 不触发。限频节点只能限制时间间隔,无法限制变化幅度,幅度需靠死区控制。

定时启动

按固定周期启动流程,不依赖数据变化。

参数说明
周期粒度每 N 秒 / 每 N 分钟 / 每 N 小时 / 每天定时
间隔配合前三种粒度使用,粒度为「每天定时」时自动隐藏
每天执行时刻仅「每天定时」生效,格式 HH:mm,如 08:00

设备离线时启动

设备掉线并持续超过设定时长后启动流程,设备恢复上线后可以再次触发。

参数默认值说明
设备—从本项目的设备清单里下拉选择,在线设备排在前面
离线判定时长300 秒连续离线超过这么久才算真离线

离线判定时长不要设太短

判定依据是服务器上的设备在线状态。4G / WiFi 设备网络抖动几秒是常事, 时长设成 10 秒会频繁误报。建议不小于 60 秒,一般用默认的 300 秒。

同一次掉线只报一次,不会每秒重复报;设备恢复上线后再掉线才会再报。

9.3.2 中间控制 ​

放在触发和输出之间做判断,可以串多个,也可以用与 / 或 / 非把多路条件组合起来。

数值比较

判断数据点或触发值是否满足条件,有满足 / 不满足两个出口,可以分别接不同的输出动作。

参数说明
比较左值可下拉选变量或数据点,也可直接输入常量。默认 $trigger.value,表示触发节点传过来的值
运算符大于 > / 大于等于 >= / 小于 < / 小于等于 <= / 等于 == / 不等于 != / 包含(文本)/ 不包含(文本)
比较右值常量(如 50),或下拉选另一个数据点

左值、右值的下拉里有三个可选变量:

变量含义
$trigger.value本次变化后的值
$trigger.old_value变化前的值
$trigger.point触发的点位名

「包含 / 不包含」是文本判断,用来判断状态字符串里有没有某个关键字,不要拿它比数值。

限频(防触发风暴)

距上次通过不足指定间隔时中断流程,避免抖动点位刷屏。

参数默认值说明
最小间隔300 秒两次通过之间至少间隔这么久
每小时上限20 次0 表示不限制

建议加上限频

在阈值附近波动的模拟量点位,短时间内可能产生多次变化。不加限频会发出大量重复邮件。任何「数据变化 → 发邮件」的流程都应在中间串一个限频节点。

与(全部满足)

把多个条件连到它的输入端,全部成立时才往下走,相当于梯形图里的串联触点。

或(任一满足)

连进来的输入有任意一个成立就往下走,相当于梯形图里的并联触点。

非(取反)

把输入的真假翻过来,相当于梯形图里的常闭触点。只连一个输入;连了多个会先按「或」合并再取反。

与 / 或 / 非 是按连线的输入端算的

这三个节点没有参数,结果完全取决于连到它输入端的连线:

  • 「与」「或」至少要连两个输入才有意义,只连一个等于直通。
  • 不要把两个触发条件直接连到「与」上,也不要对触发条件用「非」。 触发条件表示「这一刻发生了这件事」,一次只会有一个成立,这样接永远不满足。 要判断「另一路当前是什么状态」,应用「数值比较」去比那个点位的当前值。

详细说明和正确接法见 9.5 多个触发条件与与或非。

9.3.3 输出动作 ​

流程的终点,只有入口没有出口。同一个流程可以挂多个输出动作。

发送邮件

由服务器发出邮件通知。

参数说明
收件人输入后回车添加,可添加多个
邮件标题默认 【事件触发】{{event.name}}
邮件正文支持多行,默认带数据点、当前值和时间

设置数据值

向指定数据点写入一个值,可用于置位触发标志、联动控制。

参数说明
目标数据点要写入的点位
写入值常量,或 {{trigger.value}} 等占位符

生成触发记录

写入一条触发历史记录,可在列表页的「触发记录」中查询。

参数说明
触发等级提示 / 警告 / 严重
记录内容默认 {{trigger.point}} = {{trigger.value}}

发送短信(开发中)

节点面板中标记为「开发中」。现在可以正常编排和保存,命中时服务器只写一条「短信通道开发中,未发送」的触发记录,不会真的发出短信。通道接通后无需改动流程即可生效。

9.3.4 占位符变量 ​

邮件标题、邮件正文、写入值、记录内容都支持占位符,由服务器在触发时渲染:

占位符含义
{{event.name}}事件触发规则的名称
{{trigger.point}}触发这条流程的数据点名
{{trigger.value}}触发时该点位的值
{{time}}触发发生的时间

例如邮件正文写成:

数据点 {{trigger.point}} 当前值 {{trigger.value}}。
时间:{{time}}

收到的邮件就会是「数据点 长兴闸前水深 当前值 856。时间:2026-08-14 22:39:10」。

定时启动没有「触发数据点」

{{trigger.point}} 和 {{trigger.value}} 来自触发节点传过来的数据点。用 定时启动 作为起点时,流程不是由某个点位的变化引发的,这两个占位符会渲染成空白,正文里就会出现「数据点 当前值 。」这种缺字的句子。

定时场景的正文请改用固定文案,或者只用 {{event.name}} 和 {{time}}:

定时巡检提醒:规则 {{event.name}} 已执行。
时间:{{time}}

如果确实要在定时流程里带上某个点位的值,先用「数值比较」等节点显式指定数据点,不要依赖 {{trigger.*}}。


LPPLC 工业物联网云平台 · 软硬件与云平台全栈自研