边缘规则实例

智能边缘 BIE

  • 产品描述
    • 名词解释
    • 使用限制
    • 产品概述
    • 产品优势
    • 应用场景
  • 配置文件说明
    • baetyl-rule
    • baetyl-remote-object
    • baetyl-function
    • baetyl-broker
  • 快速入门
    • 融合模式节点安装
    • 快速入门指南
    • 离线安装k3s+docker
    • 进程模式节点安装
      • 在linux上安装
      • 在windows上安装
  • 典型实践
    • OPC-UA使用
    • 使用BIE函数计算调用文心一言
    • 边缘规则引擎实战
      • 集成Kuiper流式计算引擎
      • 边缘规则实例
    • 将AI中台模型部署至边缘节点
      • 获取AI中台模型部署包进行应用部署
      • 部署模型SDK至Atlas200DK
      • 模型中心1.0
        • 通过AI中台转换模型并下发至边缘
        • 通过AI中台直接将模型下发至边缘
      • 模型中心2.0
        • 将物体检测模型部署至边缘
        • 将图像分类模型部署至边缘
    • 部署PaddleServing模型
      • 使用BIE下发PaddleOCR模型
      • 制作GPU版本Paddle Serving推理镜像
      • 通过BIE部署Paddle Serving
    • Modbus协议采集温湿度传感器
      • 连接边缘baetyl-broker
      • 使用内置modbus驱动采集数据并进行边缘函数计算
      • 数据从baetyl-broker上传至IoTCore
    • 部署EasyDL模型SDK
      • 部署EasyDL烟火检测模型至ARM64节点
    • 部署EasyEdge模型SDK
      • 进程模式下发python SDK模型
      • 使用EasyEdge模型转换获取边缘模型
      • 部署模型SDK至Windows设备
      • 部署模型SDK至Intel Movidius设备
      • 部署模型SDK至Jetson Xavier
    • 部署自定义容器镜像模型
      • 部署mnist手写数字识别模型
      • 部署物体检测模型
    • video-infer实现边缘视频AI推断
      • 使用Movidius VPU加速边缘视频推断
      • 使用CPU实现边缘视频推断
  • 操作指南
    • 主子用户鉴权
    • 设备管理
      • 设备模拟器
      • 子设备数据云边交互方式
      • 进程模式软网关设备接入指南
      • 子设备数据云边交互方式-v2
      • 视频流管理
        • IPC子设备和驱动
        • 边缘转发RTSP视频流
      • 设备接入
        • 设备模型管理
        • 接入模板
        • 设备管理
        • 子设备绑定
      • 驱动管理
        • 进程模式软网关自定义驱动开发
        • 驱动管理
        • GO语言实现示例
        • 自定义驱动开发指南
      • 不同协议设备接入
        • BACnet设备接入
        • OPC-UA设备接入
        • Modbus 设备接入
        • IEC104设备接入
        • OPC-DA设备接入
    • 节点管理
      • 边缘应用获取云端STS鉴权
      • 进程模式节点
      • 远程MQTT消息下发
      • 节点运行模式说明
      • 节点影子
      • 远程调用
      • 容器模式节点
      • 远程调试
      • 远程SSH边缘节点
      • 边缘节点OpenAPI
      • 证书管理
      • 节点预配
    • 业务编排
      • 单元管理
      • 技能管理
      • 常见技能
    • 应用管理
      • 业务模版
      • 应用部署
        • 应用运行模式与分类说明
        • 函数应用
          • 自定义函数与依赖包解耦下发
          • 从CFC引入多个函数下发
          • 典型使用说明
          • 使用函数调用边缘AI模型
          • 自定义函数与依赖包整体下发
        • 容器应用
          • subpath子路径使用说明
          • workdir工作目录使用说明
          • Job类型容器应用
          • 容器应用状态说明
          • 原生yaml接入使用说明
          • 端口映射说明
          • 容器应用工作负载类型说明
          • Deployment类型容器应用
          • DaemonSet类型容器应用
          • QPS监控
          • emptyDir卷使用说明
          • 边缘服务调用
        • 进程应用
          • 进程应用概述
          • 可执行二进制程序类型进程应用
          • 可执行脚本类型进程应用
      • 配置管理
        • 证书
        • 函数
        • 镜像仓库凭证
        • 配置项
        • 密文
        • 镜像
        • 进程程序包
    • AI加速卡
      • AI加速卡通用资源调度方法
      • 自定义加速卡算力指标采集
      • 华为昇腾
        • 昇腾310资源监控
      • 英伟达
        • GPU资源调度-显存隔离
        • Jetson资源监控
        • GPU资源调度-显存共享
        • Jetson依赖说明
        • NVIDIA GPU资源监控
      • 寒武纪
        • MLU270资源监控
      • 百度昆仑
        • 昆仑芯片资源监控
      • 比特大陆
        • 挂载比特大陆边缘计算盒子tpu资源
        • BM-SE5资源监控
  • 服务等级协议SLA
    • 服务等级协议SLA(V1.0)
  • 备份
    • 进程模式应用
    • 部署通用CPU模型
    • 部署模型SDK至Atlas200DK
    • 适配列表
    • 连接边缘节点本地baetyl-broker
    • 使用自定义modbus应用采集
    • NVIDIA GPU资源管理
    • FAQ
    • NVIDIA Jetson专用模型部署-进程模式
    • 容器模式应用
    • 连接边缘节点本地baetyl-broker服务
    • DaemonSet类型和job类型服务部署
    • 通用CPU模型部署-容器模式
    • NVIDIA Jetson专用模型部署-容器模式
    • 功能发布记录
    • 在BIE控制台部署从AI中台下载的模型
    • EasyEdge概述
    • Nvidia_Jetson
      • 使用NVIDIA官方镜像运行模型-容器模式
      • 二进制程序运行模型-进程模式
      • 使用edgekit镜像运行模型-容器模式
    • 下载专区
      • 相关资源下载
  • 产品定价
    • 产品定价
所有文档
menu
没有找到结果,请重新输入

智能边缘 BIE

  • 产品描述
    • 名词解释
    • 使用限制
    • 产品概述
    • 产品优势
    • 应用场景
  • 配置文件说明
    • baetyl-rule
    • baetyl-remote-object
    • baetyl-function
    • baetyl-broker
  • 快速入门
    • 融合模式节点安装
    • 快速入门指南
    • 离线安装k3s+docker
    • 进程模式节点安装
      • 在linux上安装
      • 在windows上安装
  • 典型实践
    • OPC-UA使用
    • 使用BIE函数计算调用文心一言
    • 边缘规则引擎实战
      • 集成Kuiper流式计算引擎
      • 边缘规则实例
    • 将AI中台模型部署至边缘节点
      • 获取AI中台模型部署包进行应用部署
      • 部署模型SDK至Atlas200DK
      • 模型中心1.0
        • 通过AI中台转换模型并下发至边缘
        • 通过AI中台直接将模型下发至边缘
      • 模型中心2.0
        • 将物体检测模型部署至边缘
        • 将图像分类模型部署至边缘
    • 部署PaddleServing模型
      • 使用BIE下发PaddleOCR模型
      • 制作GPU版本Paddle Serving推理镜像
      • 通过BIE部署Paddle Serving
    • Modbus协议采集温湿度传感器
      • 连接边缘baetyl-broker
      • 使用内置modbus驱动采集数据并进行边缘函数计算
      • 数据从baetyl-broker上传至IoTCore
    • 部署EasyDL模型SDK
      • 部署EasyDL烟火检测模型至ARM64节点
    • 部署EasyEdge模型SDK
      • 进程模式下发python SDK模型
      • 使用EasyEdge模型转换获取边缘模型
      • 部署模型SDK至Windows设备
      • 部署模型SDK至Intel Movidius设备
      • 部署模型SDK至Jetson Xavier
    • 部署自定义容器镜像模型
      • 部署mnist手写数字识别模型
      • 部署物体检测模型
    • video-infer实现边缘视频AI推断
      • 使用Movidius VPU加速边缘视频推断
      • 使用CPU实现边缘视频推断
  • 操作指南
    • 主子用户鉴权
    • 设备管理
      • 设备模拟器
      • 子设备数据云边交互方式
      • 进程模式软网关设备接入指南
      • 子设备数据云边交互方式-v2
      • 视频流管理
        • IPC子设备和驱动
        • 边缘转发RTSP视频流
      • 设备接入
        • 设备模型管理
        • 接入模板
        • 设备管理
        • 子设备绑定
      • 驱动管理
        • 进程模式软网关自定义驱动开发
        • 驱动管理
        • GO语言实现示例
        • 自定义驱动开发指南
      • 不同协议设备接入
        • BACnet设备接入
        • OPC-UA设备接入
        • Modbus 设备接入
        • IEC104设备接入
        • OPC-DA设备接入
    • 节点管理
      • 边缘应用获取云端STS鉴权
      • 进程模式节点
      • 远程MQTT消息下发
      • 节点运行模式说明
      • 节点影子
      • 远程调用
      • 容器模式节点
      • 远程调试
      • 远程SSH边缘节点
      • 边缘节点OpenAPI
      • 证书管理
      • 节点预配
    • 业务编排
      • 单元管理
      • 技能管理
      • 常见技能
    • 应用管理
      • 业务模版
      • 应用部署
        • 应用运行模式与分类说明
        • 函数应用
          • 自定义函数与依赖包解耦下发
          • 从CFC引入多个函数下发
          • 典型使用说明
          • 使用函数调用边缘AI模型
          • 自定义函数与依赖包整体下发
        • 容器应用
          • subpath子路径使用说明
          • workdir工作目录使用说明
          • Job类型容器应用
          • 容器应用状态说明
          • 原生yaml接入使用说明
          • 端口映射说明
          • 容器应用工作负载类型说明
          • Deployment类型容器应用
          • DaemonSet类型容器应用
          • QPS监控
          • emptyDir卷使用说明
          • 边缘服务调用
        • 进程应用
          • 进程应用概述
          • 可执行二进制程序类型进程应用
          • 可执行脚本类型进程应用
      • 配置管理
        • 证书
        • 函数
        • 镜像仓库凭证
        • 配置项
        • 密文
        • 镜像
        • 进程程序包
    • AI加速卡
      • AI加速卡通用资源调度方法
      • 自定义加速卡算力指标采集
      • 华为昇腾
        • 昇腾310资源监控
      • 英伟达
        • GPU资源调度-显存隔离
        • Jetson资源监控
        • GPU资源调度-显存共享
        • Jetson依赖说明
        • NVIDIA GPU资源监控
      • 寒武纪
        • MLU270资源监控
      • 百度昆仑
        • 昆仑芯片资源监控
      • 比特大陆
        • 挂载比特大陆边缘计算盒子tpu资源
        • BM-SE5资源监控
  • 服务等级协议SLA
    • 服务等级协议SLA(V1.0)
  • 备份
    • 进程模式应用
    • 部署通用CPU模型
    • 部署模型SDK至Atlas200DK
    • 适配列表
    • 连接边缘节点本地baetyl-broker
    • 使用自定义modbus应用采集
    • NVIDIA GPU资源管理
    • FAQ
    • NVIDIA Jetson专用模型部署-进程模式
    • 容器模式应用
    • 连接边缘节点本地baetyl-broker服务
    • DaemonSet类型和job类型服务部署
    • 通用CPU模型部署-容器模式
    • NVIDIA Jetson专用模型部署-容器模式
    • 功能发布记录
    • 在BIE控制台部署从AI中台下载的模型
    • EasyEdge概述
    • Nvidia_Jetson
      • 使用NVIDIA官方镜像运行模型-容器模式
      • 二进制程序运行模型-进程模式
      • 使用edgekit镜像运行模型-容器模式
    • 下载专区
      • 相关资源下载
  • 产品定价
    • 产品定价
  • 文档中心
  • arrow
  • 智能边缘BIE
  • arrow
  • 典型实践
  • arrow
  • 边缘规则引擎实战
  • arrow
  • 边缘规则实例
本页目录
  • 1、名词解释
  • 2、新建IoT Core云端实例
  • 3、BIE侧配置
  • 3.1、BIE云端纳管边缘节点
  • 3.2、配置 baetyl-broker
  • 3.3、安装 process SQL处理函数
  • 3.4、配置 baetyl-rule 边缘规则
  • 4、测试边缘规则与边缘SQL函数
  • 5、测试边缘消息缓存与断线续传

边缘规则实例

更新时间:2025-08-21

规则引擎最先被应用在物联网云平台中。针对大量的物联网设备数据,规则引擎通过支持灵活的规则设置,对设备传上云端的设备时序数据、进行过滤、丰富、变换、动作、推送至不同的数据目的地(如时序数据库TSDB、Kafka、对象存储BOS等)以达到不同的业务目标。物联网规则引擎是基于事件驱动的数据流处理引擎,支持多种规则定义方式和描述方式。

在边缘计算场景下,要求边缘框架具有一定的自治能力,其中也包括对于端侧消息流具有一定的处理能力,可以实现消息的本地过滤、统计,再上传云端。边缘规则引擎可以实现端侧的消息路由能力,您可以设置边缘消息规则,控制本地消息在边缘计算节点中的流转,从而实现数据的安全可控。

1、名词解释

baetyl-broker: 单机版消息订阅和发布中心,采用 MQTT3.1.1 协议,是 Baetyl 框架端侧的消息中间件,为所有服务提供消息驱动的互联能力。

Iot Core: 云端 MQTT Broker,具体指一个具体的 Endpoint, 可以使用域名以及用户凭证进行连接,收发 MQTT 消息。

函数:Baetyl 框架的 Node、Python、Sql运行时,可以通过编写相应脚本进行消息的过滤、处理、转换以及丰富,可参考相关资料 baetyl-function 。

本文将以 Sql 运行时为例进行说明。

2、新建IoT Core云端实例

参考百度云IotCore文档 新建Iot Core实例并进行相关的设备模板配置。配置成功后,使用 MQTT Box 进行连接,其中 $iot/test/user/# 主题是我们自定义的具有收发权限的用户主题。

image.png

image.png

3、BIE侧配置

3.1、BIE云端纳管边缘节点

在云端新建边缘节点并安装到边缘设备,需要安装baetyl-rule和baetyl-function两个系统应用。

image.png

image.png

安装成功后如下所示:

image.png

在端侧节点运行如下命令,可看到:

image.png

3.2、配置 baetyl-broker

编辑 baetyl-broker 配置,暴露一个外部端口供测试使用。

image.png

image.png

image.png

然后编辑配置文件,配置文件如下:

YAML
1listeners:
2  - address: tcp://0.0.0.0:8003
3principals:
4  - username: test
5    password: hahaha
6    permissions:
7      - action: pub
8        permit: ["#"]
9      - action: sub
10        permit: ["#"]
11
12session:
13  sysTopics:
14    - $link
15    - $baetyl
16logger:
17  level: debug
18  encoding: console

新增 8003 端口供测试使用,并且需要设置映射宿主机端口以供连接。

image.png

然后在本地使用MqttBox连接baetyl-broker,测试连通性。

image.png

image.png

3.3、安装 process SQL处理函数

一段 process 处理函数如下:

Plain Text
1select * where uid > 7

新建相关的配置项,注意添加运行时标签 SQL。

image.png

然后新建函数应用,并添加服务 process,引用上述配置项,并通过标签匹配到我们实现创建的节点上。

image.png

image.png

image.png

3.4、配置 baetyl-rule 边缘规则

数据的流转规则我们要配置在 baetyl-rule 模块中,所以这一步要修改 baetyl-rule 相关的配置。

image.png

image.png

image.png

配置文件如下:

Plain Text
1clients:
2  - name: iotcore
3    kind: mqtt
4    address: 'tcp://arncpan.iot.gz.baidubce.com:1883'
5    username: arncpan/test
6    password: xxx
7rules:
8  - name: rule1
9    source:
10      topic: broker/user/a
11      qos: 1
12    target:
13      client: iotcore
14      topic: $iot/test/user/a
15      qos: 1
16    function:
17      name: process
18logger:
19  level: debug
20  encoding: console

密码根据实际场景进行替换。

4、测试边缘规则与边缘SQL函数

我们向 baetyl-broker 发消息,测试 iotcore 的主题是否能收到消息,并且测试 Sql 函数是否起到数据过滤作用。

baetyl-broker

image.png

iotcore

image.png

可以看到 iotcore 收到了消息。

接下来测试 uid < 7 的场景。

baetyl-broker

image.png

iotcore

image.png

可以看到 uid < 7 的消息没有被发送到 iotcore,而是被 Sql 函数过滤掉了。

5、测试边缘消息缓存与断线续传

边缘 baetyl-broker 具有离线缓存消息,端点续传的能力,对于 QoS1 的消息,baetyl-broker 会先持久化,再给订阅方发送消息,当订阅方回复 ACK 的时候,baetyl-broker 会删除这条持久化消息。接下来我们来测试这一能力。

首先我们断开本地网络,然后往边缘 baetyl-broker 发送 QoS1 的消息:

image.png

可以看到发送到边缘 baetyl-broker 成功。

在正常联网情况下,该条消息将经过 baetyl-rule 被转发到云端 Iot Core,但是此时处于断网环境,baetyl-rule 无法把消息转发到 Iot Core。观察 mqttbox 中 Iot Core 的连接,因为网络处于断开状态。

image.png

此时恢复网络,可以观察到 mqttbox 中 Iot Core 的连接恢复,订阅 $iot/test/user/a 主题可以收到之前边缘断网情况下发送的消息,证明本地 baetyl-broker 具有消息缓存、断点续传的能力。

image.png

上一篇
集成Kuiper流式计算引擎
下一篇
将AI中台模型部署至边缘节点