You need to enable JavaScript to run this app.
导航
使用官方虚拟驱动
最近更新时间:2024.08.21 11:09:35首次发布时间:2024.03.18 20:29:01

边缘智能提供虚拟驱动程序。您可以使用虚拟驱动模拟边缘端设备生产数据,快速体验边缘智能设备管理模块的功能。本文介绍了虚拟驱动的使用方法。

虚拟驱动介绍

查看虚拟驱动

您可以在边缘智能控制台设备管理 > 驱动模板 页面,查看 虚拟驱动
图片

虚拟驱动点表配置

参数名称

说明

数据生成模式

生成数据的方法,支持:

  • 随机生成
  • 无:表示不生成数据。

采样周期

表示每隔多久采集一次数据。单位:毫秒。默认值:10000。

变化上报

用于控制节点进行数据上报的触发条件。

  • true:表示启用变化上报。节点仅在检测到连续两次采集的设备数据不一致时,才会执行数据上报操作。
  • false:表示禁用变化上报。节点将上报每次采集到的设备数据,不管该数据是否与前一次采集的数据相同。

默认值:true。

虚拟驱动支持的属性类型

数据类型

说明

int

整型

float

浮点型

double

双精度浮点型

enum

枚举型

bool

布尔型

text

文本型

struct

结构体类型

虚拟驱动内置服务

功能类型

支持的服务

标识符

功能说明

输入参数

输出参数

服务

加法

Add

调用该方法,计算两个数相加之和。

需要设置两个输入参数:

  • 第一个输入参数:
    • 标识符:设置为"x"。
    • 数据类型:设置为"float"。
  • 第二个输入参数:
    • 标识符:设置为"y"。
    • 数据类型:设置为"float"。

需要设置一个输出参数,参数类型为"float"。

减法

Sub

调用该方法,计算两个数之间的差值。

乘法

Multiply

调用该方法,计算两个数的乘积。

除法

Divide

调用该方法,计算一个数除以另一个数的商。

列出所有服务

ListAllServices

调用该方法,查询虚拟驱动支持的所有服务。

无。

需要设置一个输出参数,参数类型为"text"。

准备节点(一体机)

使用虚拟驱动前,您需要准备一台边缘智能节点,并完成以下工作:

步骤1:配置设备模板

创建设备模板

  1. 登录边缘智能控制台

  2. 在左侧导航栏顶部的 我的项目 区域,选择您的项目。

  3. 在左侧导航栏,选择 设备管理 > 设备模板

  4. 单击 创建设备模板

  5. 创建设备模板 对话框,完成以下配置,并单击 确定

    配置项

    说明

    名称

    为设备模板设置一个名称。

    本教程中使用 device-virtual-template。

    设备类型

    选择 其他设备

    描述

    为设备模板添加描述信息。

    图片

创建成功后,在 设备模板 页面可以看到新创建的设备模板。
图片

发布物模型

物模型定义了设备的功能,您可以通过物模型定义设备功能,并发布一个版本使其生效。

  1. 找到新创建的设备模板,单击模板名称。
  2. 模板详情 页面,单击 物模型定义 页签,然后单击 编辑
  3. 编辑物模型 页面,单击 添加自定义功能
  4. 添加自定义功能 面板,完成参数配置,并单击 确定
    1. 添加属性功能。
      根据虚拟驱动支持的属性类型,我们以 int 为例,分别添加只读、读写 int 类型数据的属性功能。

      • 添加只读 int 数据类型的属性功能。

        配置项

        说明

        功能类型

        选择 属性

        功能名称

        为功能设置一个名称。

        本教程中使用”只读int类型数据“作为该功能名称。

        标识符

        为功能设置一个标识符。

        本教程中使用 ro_int 作为该功能标识符。

        读写类型

        选择 只读

        数据类型

        选择 int

        取值范围

        设置数值取值范围。本教程中保持默认配置。

        步长

        设置数值步长。本教程中保持默认配置。

        描述

        为功能添加描述信息。

      • 添加读写 int 数据类型的属性功能。

        配置项

        说明

        功能类型

        选择 属性

        功能名称

        为功能设置一个名称。

        本教程中使用”读写int类型数据“作为该功能名称。

        标识符

        为功能设置一个标识符。

        本教程中使用 rw_int 作为该功能标识符。

        读写类型

        选择 读写

        数据类型

        选择 int

        取值范围

        设置数值取值范围。本教程中保持默认配置。

        步长

        设置数值步长。本教程中保持默认配置。

        描述

        为功能添加描述信息。

        您可以根据虚拟驱动支持的数据类型继续添加其他数据类型属性功能。本教程添加完成后,如下图所示。
        图片

    2. 根据虚拟驱动内置服务,添加虚拟驱动支持的服务功能。

      配置项

      说明

      功能类型

      选择 服务

      功能名称

      为功能设置一个名称。
      例如,本次添加加法功能,使用”加法“作为该功能名称。

      标识符

      输入虚拟驱动内置服务中定义的对应功能的标识符。
      例如,本次添加加法功能,必须使用对应功能的标识符"Add"。

      说明

      标识符必须使用虚拟驱动内置服务中定义的对应功能的标识符。

      调用方式

      默认为 同步

      输入参数

      设置调用服务的请求参数。

      说明

      当添加 ListAllServices 时不用设置输入参数。

      1. 添加第一个输入参数。单击 添加参数,然后在 添加参数 对话框完成以下配置,并单击 确定
        • 参数名称:自定义。本教程中设置为”加数x“。
        • 标识符:必须设置为”x“。

          说明

          输入参数标识符必须使用虚拟驱动内置服务中定义的对应标识符。

        • 数据类型:选择 float。
        • 取值范围:保持默认。
        • 步长:保持默认。
      2. 参考上述步骤,添加第二个输入参数。
        • 参数名称:自定义。本教程中设置为”加数y“。
        • 标识符:必须设置为"y"。
        • 数据类型:选择 float。
        • 取值范围:保持默认。
        • 步长:保持默认。

      输出参数

      设置调用服务的返回参数。
      单击 添加参数,然后在 添加参数 对话框完成以下配置,并单击 确定

      • 参数名称:自定义。本教程中设置为”和“。
      • 标识符:自定义。本教程中设置为"result"。
      • 数据类型:选择 float。

        说明

        ListAllServices 的输出参数类型需要设置为"text"。

      • 取值范围:自定义。本教程保持默认。

        说明

        当添加 ListAllServices 时不用设置该参数。

      • 步长:自定义。本教程保持默认。

        说明

        当添加 ListAllServices 时不用设置该参数。

      • 数据长度:自定义。本教程设置为"1024"。

        说明

        只有当添加 ListAllServices 时需要设置该参数。

      描述

      为功能添加描述信息。

      参考上述步骤,依次添加虚拟驱动内置服务中的其他服务。添加完成后,如下图所示。
      图片

  5. 添加完自定义功能后,单击右下角的 保存
  6. 发布新版本 对话框,设置 版本号描述,然后单击 确定
    图片

发布成功后,您将会得到如下图所示的物模型。
图片

创建点表

物模型定义完成后,需要为物模型属性创建点表。

  1. 模板详情 页面,单击 点表 页签,然后单击 创建点表

  2. 创建点表 页面,完成以下配置,并单击 确认

    类别

    配置项

    说明

    基本信息

    名称

    为点表设置一个名称。

    本教程中使用 device-virtual-dp 作为点表名称。

    驱动模板

    选择 虚拟驱动

    配置信息

    物模型中定义的属性

    • 数据生成模式:选择 随机生成
    • 采样周期:使用默认配置 10000 毫秒
    • 变化上报:设置为 False

创建成功后,您将得到一个如下图所示的点表。
图片

步骤2:部署虚拟驱动

您必须在节点上部署虚拟驱动,然后才可以添加设备到节点。

  1. 在左侧导航栏,单击 节点管理
  2. 节点管理 页面,找到要部署虚拟驱动的节点,单击节点名称。
  3. 单击 设备接入 页签。
  4. 驱动实例 右侧,单击 新建驱动实例,创建虚拟驱动实例。

    说明

    如果您是首次在当前节点上部署驱动实例,单击 立即部署

  5. 新建驱动实例 对话框,选择 虚拟驱动 的最新版本,然后单击 确定

提交部署请求后,系统将在节点上部署驱动实例。部署过程涉及到数据传输。根据现场网络环境不同,部署所需时间不同。请确保您的节点在线,并耐心等待部署完成。
驱动部署成功后,驱动实例状态 将变为 运行中
图片

步骤3:添加设备

  1. 驱动实例 列表选中 视频流驱动
  2. 基本信息 标签页,您可以选择以下方式添加设备:
    • 添加设备:一次添加一个设备实例。
    • 批量添加:一次添加一个或多个设备实例。最多可以同时添加 100 个设备实例,并批量设置一些设备参数。

添加设备

  1. 基本信息 标签页,单击 添加设备

  2. 添加设备 面板,完成以下配置,然后单击 确定

    配置项

    说明

    名称

    为设备设置一个名称。

    本教程中使用 deviceA 作为设备名称。

    标识符

    为设备设置一个标识符。

    本教程中使用 devicea 作为标识符。

    设备模板

    选择您在创建设备模板中创建的设备模板。

    本教程中选择 device-virtual-template。

    点表

    选择在创建点表中创建的点表。

    本教程中选择 device-virtual-dp。

    子协议名称

    选择 other

    标签

    为设备添加标签。如果需要创建新的标签,输入 keyvalue 后,单击 创建标签

    描述

    为设备添加描述信息。

完成以上操作后,您可以在设备列表查看新添加的设备。最初,设备的 状态添加中。当设备的状态变为 在线 后,表示设备已经添加成功。
图片

批量添加

  1. 基本信息 标签页,单击 批量添加

  2. 添加设备 页面,您可以在 驱动信息 区域查看驱动相关信息,并参考下表说明完成 设备配置,然后单击 确定

    配置项

    说明

    子协议类型

    选择 other

    设备模板

    选择您在创建设备模板中创建的设备模板。

    本教程中选择 device-virtual-template。

    点表

    选择在创建点表中创建的点表。

    本教程中选择 device-virtual-dp。

    设备名称

    为设备设置一个名称。

    本教程中使用 deviceA 作为设备名称。

    标识符

    为设备设置一个标识符。

    本教程中使用 devicea 作为标识符。

    标签

    为设备添加标签。如果需要创建新的标签,输入 keyvalue 后,单击 创建标签

    描述

    为设备添加描述信息。

  3. (可选)如果需要同时添加多个设备实例,在 添加设备 后的输入框中输入要添加的设备个数,然后单击 添加设备。系统会自动生成多个设备配置条目。

  4. (可选)如果需要批量设置一些设备参数,先勾选右上角的 批量编辑所有配置项,然后修改某个参数值,系统会同步修改所有设备的对应参数值。

    说明

    勾选 批量编辑所有配置项 后,如果参数配置框置灰,表示该参数不支持批量设置。

完成以上操作后,您可以在设备列表查看新添加的设备。最初,设备的 状态添加中。当设备的状态变为 在线 后,表示设备已经添加成功。

步骤4:在线调试

在节点中添加设备后,您可以对设备进行在线调试。在线调试包括 属性调试服务调用

  • 属性调试:获取、修改设备指定属性的值。
  • 服务调用:远程调用设备提供的服务。
  1. 回到节点的 设备接入 页面,定位到新添加的设备,单击设备名称。
    图片
  2. 单击 在线调试 页签,选择 属性调试服务调用,进行调试。

属性调试

  1. 单击 属性调试 页签,测试在发布物模型中定义的属性功能。
  2. 验证”读写int类型数据“功能支持获取并修改设备对应的属性值。
    1. 在”读写int类型数据“输入框右侧,单击 调试,然后选择 读取
      输入框中显示获取到的最新随机属性值,也可以在页面右侧 实时日志 中查看获取的内容。
      图片

      说明

      多次单击 读取,可以随机获取到不同的属性值。
      图片

    2. 在”读写int类型数据“输入框中输入一个 int 类型数据,单击 写入
      在右侧 实时日志 中,可以看到返回状态码为 200,表示写入成功。
      图片

      说明

      向属性写入指定值后,该属性便不会再产生随机值,后续的读取均为固定值。
      图片

  3. 验证”只读int类型数据“功能支持读取设备属性值,但不支持写入操作。
    1. 在”只读int类型数据“输入框右侧,单击 调试,然后选择 读取
      输入框中显示获取到的最新随机属性值,也可以在页面右侧 实时日志 中查看内容显示结果。
      图片
    2. 在”只读int类型数据“输入框中输入一个 int 类型数据,单击 写入
      可以看到,只读属性不支持写入操作,可以在日志内容中查看错误信息。
      图片

服务调用

  1. 单击 服务调用 页签。
  2. 调试功能 下拉列表的选项中,选择模块及待调试的服务。例如,我们这里选择”加法“。
    选择加法服务后,系统会自动生成在物模型中定义的输入参数的 JSON 格式模板{"x": 0,"y": 0}
    图片
  3. 在输入框中,设置调用服务的输入参数,单击 发送指令
    每一次服务调用执行完成后,可以在页面右侧 实时日志 中查看输出内容,确认服务调用结果是否符合预期。
    图片
    经调试,虚拟驱动内置的加、减、乘、除运算方法运行正常:
    图片
  4. 选择 ListAllServicess,单击 发送指令,可以在右侧 实时日志 输出内容中查看虚拟驱动支持的服务。
    图片