Skip to main content

第二个流程

本节主要展示如何让流程编辑器与网关所创建的设备进行交互,实现对设备数据的读写交互。

1. 监听设备数据

在节点库中找到 网关 分类,将 标签变化 节点拖拽到流程编辑区。双击打开节点配置对话框,配置节点的属性,选择需要监听的设备标签,点击 完成 保存配置。

监听设备数据

添加 调试 节点,将 标签变化 节点的输出连接到 调试 节点的输入,点击 部署 按钮,使流程生效。部署完成后,当设备标签数据发生变化时,可以在侧边栏的调试页签中看到相应的输出。

监听设备数据

如果需要同时监听多个标签,可以在 标签变化 节点中使用左下角的 添加 按钮新增监听标签。此时,标签变化 节点的输出会根据不同的标签数据数量产生多个输出。

流程代码如下:

[{"id":"1dd528bf64bdd36e","type":"tag value changed","z":"acf6f515f77d2f9f","name":"","checkall":false,"broker":"4c1025e7981b4046","tags":[{"t":"modbus_A2"}],"outputs":1,"x":160,"y":140,"wires":[["018d070c545bcaf5"]]},{"id":"018d070c545bcaf5","type":"debug","z":"acf6f515f77d2f9f","name":"调试 10","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":440,"y":140,"wires":[]},{"id":"4c1025e7981b4046","type":"gateway-broker","name":"当前网关","host":"localhost","port":"62000","username":"admin"}]

2. 向设备写入数据

在节点库中找到 网关 分类,将 动态写入 节点拖拽到流程编辑区。双击打开节点配置对话框,配置节点的属性,点击 完成 保存配置。

向设备写入数据

动态写入 节点的输入需要接收来自其它节点的数据,消息的payload的格式分为如下两种:

  • 写入单个标签: 数据格式为 {"n": "modbus_A1", "v": "100"},其中 n 为需要写入的标签名,v 为需要写入的值
  • 写入多个标签: 数据格式为 [{"n": "modbus_A1", "v": "100"},{"n": "modbus_A2", "v": "100"}],传入一个数组,数组中每个元素为一个对象,对象中 n 为需要写入的标签名,v 为需要写入的值

可以通过 注入 节点来模拟数据输入。在节点库中找到 通用 分类,将 注入 节点拖拽到流程编辑区,双击打开节点配置对话框,选择payload的格式未JSON,并输入需要写入标签的参数,点击 完成 保存配置。

将两个节点进行连接,点击 部署 按钮,使流程生效。部署完成后,点击 注入 节点的按钮,可以在侧边栏的调试页签中看到相应的输出。

向设备写入数据

流程代码如下:

[{"id":"c8e2f32e31ea0edf","type":"dynamic tag write","z":"acf6f515f77d2f9f","name":"","broker":"4c1025e7981b4046","x":420,"y":280,"wires":[["b2f185a46503f9ab"],[]]},{"id":"acaaf9070fbf3975","type":"inject","z":"acf6f515f77d2f9f","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"[{\"n\":\"modbus_A1\",\"v\":\"100\"},{\"n\":\"modbus_A2\",\"v\":\"100\"}]","payloadType":"json","x":150,"y":280,"wires":[["c8e2f32e31ea0edf"]]},{"id":"b2f185a46503f9ab","type":"debug","z":"acf6f515f77d2f9f","name":"调试 11","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":620,"y":280,"wires":[]},{"id":"4c1025e7981b4046","type":"gateway-broker","name":"当前网关","host":"localhost","port":"62000","username":"admin"}]

3. 总结

至此,您已经完成了第二个流程的创建,通过这个简单的流程,您可以了解到如何在流程编辑器中监听设备数据,向设备写入数据等操作。在后续的章节中,我们将会介绍更多的节点类型,更多的流程设计技巧,帮助您更好的使用流程编辑器。