正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
集成ModuleSDK后,上报数据成功后,设备状态显示为未激活,如何上报子设备状态? 集成ModuleSDK后,目前边缘非直连设备,不能动态获取设备状态,只能根据自身业务是否正常,主动上报设备状态,来更新设备状态。 代码解析: 片段一:初始化构造函数,初始化设备状态数据。 public class
内部架构 模块SDK用于开发运行在边缘节点中的应用,包括数据处理应用(简称应用,例如数据清洗)和协议驱动(简称驱动,例如EdgeAccess)。 图1 边缘设备接入和应用开发能力架构图 部署在边缘节点中的第三方应用和第三方驱动使用模块SDK进行开发。 图2 模块SDK调用流程图 基本调用流程如图2所示。
自动升级 可选,开启后节点将自动升级系统应用模块。 注意: 升级过程中可能导致节点数据上传中断。 填写配置节点数据信息后,单击“立即创建”。 图2 配置节点数据 表2 专业版节点信息 参数名称 说明 数据存储路径 默认(允许修改存储路径)。 监控运维 默认勾选“监控运维工具”。 $edge_omagent应用
描述 201 Ok 401 Bad Request 500 Internal Server Error 错误码 请参见错误码。 父主题: 数据流转配置管理
注意: 升级过程中可能导致节点数据上传中断。 填写配置节点数据信息后,鸿蒙系统因为默认根目录为只读权限,避免数据读写问题,建议节点的根目录配置在/data目录下,单击“立即创建”。 图2 配置节点数据 表2 专业版节点信息 参数名称 说明 数据存储路径 默认(允许修改存储路径)
操作场景 使用ModuleSDK开发插件应用,接入其他协议设备(如HTTP请求数据),将其他协议的数据转化为MQTT协议JSON数据上报到IoTDA。 父主题: 集成ModuleSDK进行协议转换
重启。 原始数据校正:支持点位表达式,在边缘侧执行线性计算,对采集到的数据进行校正。 重复数据冗余清洗:在数据采集频率高,冗余数据过多时,自动筛选掉重复数据,对跳变的波动数据过滤清洗。 点位动态映射物模型:原始点位与物模型属性,支持动态配置其映射关系,即改即用;数据上行自动将点位
在节点部署集成了ModuleSDK应用驱动。 配置好数据源模板(可自定义)。 在平台进行数据源配置,以及点位配置下发。 集成ModuleSDK应用驱动对平台下发的配置进行处理。 通过下发信息获取数据源连接,以及点位信息进行数据周期采集。 最后运用ModuleSDK的客户端进行点位数据周期上报。 父主题: 集成ModuleSDK进行数据采集
时需要携带该参数。 最小长度:1 最大长度:36 space_id 否 String 资源空间ID。此参数为非必选参数,存在多资源空间的用户需要使用该接口时,可以携带该参数查询指定资源空间下的设备列表,不携带该参数则会查询该用户下所有设备列表。 最小长度:1 最大长度:36 node_ids
描述 200 Ok 401 Bad Request 500 Internal Server Error 错误码 请参见错误码。 父主题: 数据流转配置管理
description String 描述 最小长度:0 最大长度:128 datasource_meta Object 数据源元数据 point_meta Object 点位表元数据 create_time String 创建时间 最小长度:0 最大长度:256 update_time String
DeviceIoTDBPushInfo object 创建设备数据推送IoTDB 表11 DeviceIoTDBPushInfo 参数 是否必选 参数类型 描述 storage_group 是 String 数据存储的存储组 最小长度:1 最大长度:32 format 是 String 数据格式转换类型 缺省值:iotda_1
代码解析 Demo代码如下,具体实现的是模拟电机设备上报数据,SDK获取上报数据做进一步分析处理。如果遇到状态为error,则调用事先在产品模型定义好的设备命令。对于未指定MOTOR_PRODUCT_ID的产品上报的数据将继续上报给云端。 #include "edge.h" #include
点位清洗,在边侧提供对设备上报的点位进行数据去重、数据波动抑制的功能,适用于降低冗余数据、上云带宽的OT数采场景。 点位清洗规则是针对模块的每个点位,为可选项,使用前需要配置“静默时间窗”和“偏差”这两个参数。具体操作步骤请参见点位清洗。 概述 数据上报:当满足上报条件,数据才会上报。 上报条件有两种:
查看配置结果 当完成模块配置后,可以在已部署的应用模块中确定对应的配置数据是否下发至边缘。 登录网关节点,并打开自定义应用日志,进行观察: 图1 影子数据 数据详情: { "properties": { "default_values": {
推送信息 Topic MQTT Broker数据推送Topic,例:$oc/devices/gateway 服务质量 MQTT QOS,默认qos 0 描述 通道的描述信息 当节点的设备数据格式为“IoTDA1.0物模型”时,MQTT通道,推送的数据格式为IoTDA 1.0的物模型格式,报文格式如下:
log),触发子设备数据上报时,查看日志内容是否有异常信息。 若日志提示“No services”,为该设备上报的数据与设备产品的serviceId对应不上。当前边缘节点不感知产品的更新。若新建一个空白的设备产品,为边缘节点创建子设备,然后修改设备产品新增服务和属性,则此时设备上报数据中的服务属性在边缘节点无感知,即会出现“No
本实验将指导您使用边缘ModuleSDK开发一个数据处理插件以使您的设备发送的数据在IoT边缘预先处理后再上报数据到IoTDA。 通过本实验,您将能够: 了解并掌握IoT边缘ModuleSDK的使用。 掌握在边缘处理设备发送的数据。 父主题: 基于IoT边缘服务实现边缘插件的生态拓展
this);//设置收到设备数据的回调 appClient.open(); } appClient在接收到数据后的处理动作需要用户定义,具体操作是设置回调。 这里设置回调方法并传入输入端点后,appClient将会开启并启动一个监听器监听输入端点的数据传输,接收到设备经过hub发来的数据后会调用回调进行数据处理。
模块管理”,单击“部署应用”。 选择“数据处理”,选择应用$edge_push,选择版本,单击“确认”。 图1 数据处理 部署成功。 选择“数据流转配置”,查看默认数据流转规则。 图2 数据流转 删除或修改该默认数据流转规则会影响EdgePush接收到的设备数据,进而影响节点的路由转发功能,请谨慎操作。