CN117555810B - 物联网应用的虚拟调试方法、装置、设备和存储介质 - Google Patents

物联网应用的虚拟调试方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN117555810B
CN117555810B CN202410032393.8A CN202410032393A CN117555810B CN 117555810 B CN117555810 B CN 117555810B CN 202410032393 A CN202410032393 A CN 202410032393A CN 117555810 B CN117555810 B CN 117555810B
Authority
CN
China
Prior art keywords
internet
capability
things
equipment
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202410032393.8A
Other languages
English (en)
Other versions
CN117555810A (zh
Inventor
严式弘
周科诺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongke Wuqi Nanjing Technology Co ltd
Original Assignee
Zhongke Wuqi Nanjing Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongke Wuqi Nanjing Technology Co ltd filed Critical Zhongke Wuqi Nanjing Technology Co ltd
Priority to CN202410032393.8A priority Critical patent/CN117555810B/zh
Publication of CN117555810A publication Critical patent/CN117555810A/zh
Application granted granted Critical
Publication of CN117555810B publication Critical patent/CN117555810B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer And Data Communications (AREA)

Abstract

本公开提供了一种物联网应用的虚拟调试方法、装置、设备和存储介质,该方法包括:获取物联网应用,并基于物联网应用渲染出物联网设备的控制界面;基于控制界面的触发,由物联网应用中获取相应的控制指令,并将控制指令发送至预先配置的虚拟设备,以使虚拟设备根据控制指令执行相应的操作;该虚拟设备根据预先配置的标准能力接口文档实现;标准能力接口文档中包括各种类物联网设备的各种能力,针对每种能力分别配置有标准能力接口信息,标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。由于虚拟设备是基于标准能力接口文档实现,因此可以实现对不同品牌不同型号的同一种物联网设备的模拟。

Description

物联网应用的虚拟调试方法、装置、设备和存储介质
技术领域
本公开涉及软件测试技术领域,尤其涉及一种物联网应用的虚拟调试方法、装置、设备和存储介质。
背景技术
目前,在物联网应用开发阶段,通常都需要对开发出的物联网应用进行调试,以确保所开发出的物联网应用上线后的良好的用户体验。其中,在对物联网应用开发时,一般都是将所开发出的物联网应用连接到其对应的实际设备上,然后通过调试该应用来确定其使用是否流畅准确。而通过采用实际设备进行应用的开发调试,对物联网应用的调试带来了很大的不便,基于此目前会采用虚拟技术,构建出该实际设备所对应的虚拟设备,从而通过模拟仿真的方式来实现应用的虚拟调试。
但是,由于对于同种类的物联网设备,不同的开发商所开发出的设备的型号不同,其所具备的功能和通信方式也有可能不同,因此,在进行虚拟调试时,需要针对不同品牌不同型号的同一种物联网设备分别构建虚拟设备,从而增加了虚拟调试的复杂性。
发明内容
有鉴于此,本公开提出了一种物联网应用的虚拟调试方法、装置、设备和存贮介质,在本公开中不同品牌不同型号的同一种物联网设备均可以采用同一虚拟设备进行模拟,从而可以降低虚拟调试的复杂性。
根据本公开的第一方面,提供了一种物联网应用的虚拟调试方法,包括:
获取物联网应用,并基于所述物联网应用渲染出物联设备的控制界面;
基于所述控制界面的触发,由所述物联网应用中获取相应的控制指令,并将所述控制指令发送至预先配置的虚拟设备,以使所述虚拟设备根据所述控制指令执行相应的操作;
其中,所述虚拟设备根据预先配置的标准能力接口文档实现;所述标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。
在一种可能的实现方式中,在配置所述虚拟设备时,包括:
对所述物联网应用进行解析,确定所述物联网应用需要控制的物联网设备的设备标识;
将所述设备标识发送至云端服务器,以使所述云端服务器根据所述设备标识由预先构建的虚拟设备库中筛选出所述虚拟设备;
接收并显示所述云端服务器发送的所述虚拟设备的初始设备参数。
在一种可能的实现方式中,在将所述控制指令发送至所述虚拟设备后,还包括:接收并显示所述虚拟设备根据所述控制指令执行相应操作后的更新设备参数。
在一种可能的实现方式中,在将所述控制指令发送至所述虚拟设备后,还包括:接收并显示所述虚拟设备执行所述控制指令时生成的操作日志。
在一种可能的实现方式中,在基于预先配置的标准能力接口文档构建所述虚拟设备时,包括:
确定当前种类物联网设备具有的所有能力;
针对所述当前种类物联网设备的每种能力,由所述标准能力接口文档中提取与每种能力对应的标准能力接口信息;
根据每种所述能力对应的标准能力接口信息,生成实现每种所述能力的SDK开发工具包以及所述每种能力的SDK开发工具包的调取指令;
基于所述每种能力的SDK开发工具包和每种所述能力的SDK开发工具包的调取指令,构建当前种类物联网设备的虚拟设备。
在一种可能的实现方式中,在构建所述虚拟设备之后,还包括将所述虚拟设备发布至虚拟设备库的操作。
在一种可能的实现方式中,所述方法还包括:
将所述控制指令发送至预先配置的真实的物联网设备,以使所述真实的物联网设备根据所述控制指令执行相应的操作。
根据本公开的第二方面,提供了一种物联网应用的虚拟调试装置,包括:
控制界面渲染模块,用于获取物联网应用,并基于所述物联网应用渲染出物联网设备的控制界面;
调试模块,用于基于所述控制界面的触发,由所述物联网应用中获取相应的控制指令,并将所述控制指令发送至预先配置的虚拟设备,以使所述虚拟设备根据所述控制指令执行相应的操作;
其中,所述虚拟设备根据预先配置标准能力接口文档实现;所述标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。
根据本公开的第三方面,提供了一种物联网应用的虚拟调试设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行本公开第一方面所述的方法。
根据本公开的第四方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现本公开第一方面所述的方法。
本公开提供了一种物联网应用的虚拟调试方法,包括:获取物联网应用,并基于物联网应用渲染出物联网设备的控制界面;基于控制界面的触发,由物联网应用中获取相应的控制指令,并将控制指令发送至预先配置的虚拟设备,以使虚拟设备根据控制指令执行相应的操作;其中,虚拟设备根据预先配置的标准能力接口文档实现;该标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。由于虚拟设备是基于标准能力接口文档中当前种类物联网设备的所有能力的标准能力接口信息构建的,因此,可以适配不同品牌不同型号的同一种物联网设备,进而仅通过一个虚拟设备便可以实现对不同品牌不同型号的同一种物联网设备的模拟,从而降低虚拟调试的复杂性。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的物联网应用的虚拟调试方法的流程图;
图2示出根据本公开一实施例的第一调试界面的界面展示图;
图3示出根据本公开一实施例的新增应用界面的界面展示图;
图4示出根据本公开一实施例的第二调试界面的界面展示图;
图5示出根据本公开一实施例的物联网应用的虚拟调试装置的示意性框图;
图6示出根据本公开一实施例的物联网应用的虚拟调试设备的示意性框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
<方法实施例>
图1示出根据本公开一实施例的物联网应用的虚拟调试方法的流程图。该调试方法由调试系统实施。如图1所示,该方法包括步骤1-步骤2。
步骤1,获取物联网应用,并基于物联网应用渲染出物联网设备的控制界面。其中,该物联网应用是指用于对物联网设备进行控制的应用程序。
在一种可能的实现方式中,在获取物联网应用时,基于调试系统的第一调试界面实现。具体地,该第一调试界面可以如图2所示,包括新增应用控件,在该新增应用控件被触发的情况下,将推送如图3所示的新增应用界面。通过该新增应用界面即可以获取到用户可以上传的待调试的物联网应用,即上传应用包处上传的应用程序包。同时,通过该新增应用界面还可以获取到用户配置的物联网应用的基本信息,这样,在调试完成后,便可以基于配置的基本信息创建如图2中所示的应用调试列表,以方便用户查看已调试的物联网应用。其中,物联网应用的基本信息可以包括应用名称、应用图标以及应用描述中的至少一种。
此处需要说明的是,在物联网应用中包括需要控制的物联网设备的控制界面代码,因此,在获取到物联网应用后便可以基于该控制界面代码渲染出需要控制的物联网设备的控制界面,该控制界面中包括物联网设备可以调节的所有能力的能力调节控件。举例来说,获取的物联网应用,用于对家居灯的开关,光照模式(即色温模式)和相对亮度进行控制,则该待调试物联网应用中包括家居灯的控制界面代码,因此,在获取到该物联网应用后,便可以根据家居灯的控制界面代码在如图4所示的第二调试界面中的应用预览区域(即图4中应用调试区的中间区域)渲染出家居灯的控制界面,其中,该家居灯的控制界面中,包括用于控制家居灯开关能力的开关调节控件,用于控制家居灯光照模式的光照模式调节控件以及用于控制家居灯相对亮度的相对亮度调节控件。
步骤2,基于控制界面的触发,由物联网应用中获取相应的控制指令,并将控制指令发送至预先配置的虚拟设备,使虚拟设备根据控制指令执行相应的操作。
此处需要说明的是,在执行本公开的虚拟调试方法之前,需要先构建虚拟设备库,该虚拟设备库中包括预先构建出的各种物联网设备所对应的虚拟设备,这样,便可以基于虚拟设备库进行虚拟设备的配置。
在一种可能的实现方式中,该虚拟设备库中各虚拟设备均是基于预先构建的标准能力接口文档(即API文档)实现。其中,该标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。比如:在标准能力接口文档中包含有种类A设备、种类B设备、种类C设备;其中,对于种类A设备,则关联有该种类A设备所具备的所有各项能力对应的标准能力接口信息;对于种类B设备,则关联有该种类B设备所具备的所有各项能力对应的标准能力接口信息;对于种类C设备,则关联有该种类C设备所具备的所有各项能力对应的标准能力接口信息。
此处,本领域技术人员可以理解的是,种类A设备、种类B设备、种类C设备所具备的基本能力各不相同,即三者的基本功能是不同的。即,各种类物联网设备可以根据其基本功能进行划分,比如:可以将智能家居中所有具备照亮功能的照亮设备统称为种类A设备(如:将市场上各种类型或型号的台灯、各种类型或型号的顶灯以及各种类型或型号的墙壁灯等都统称为家居灯)。可以将智能家居中所有具备温度调节的温控设备统称为种类B设备(如:将市场上各种类型或者型号的空调统称为种类B设备。可以将智能家居中所有具备清理功能的清洁设备统称为种类C设备(如:将市场上各种类型或型号的扫地机、各种类型或型号的新风机等等都统称为种类C设备)。
也就是说,在本申请所预先构建的标准能力接口文档中,对于其所包含的设备种类的划分,可以按照上文所述的按照基本能力(或功能)的方式进行划分,也可以按照其他方式划分,在本申请中不对其进行具体限定。
此外,还需要解释说明的是,对于设备的基本功能的确定,可以结合其在使用时具体的应用场景确定,如:对于上述照亮设备,温控设备和清洁设备等,其均可以对应为智能家居应用场景。并且,对于设备的基本功能的确定,也可以直接基于设备的说明书或上市时所定位的功能来确定。同时,上述设备种类信息和各设备所具备的能力信息等这些数据的收集都可以通过大数据的方式采集获取得到,此处不对其进行赘述。
在构建虚拟设备库中各虚拟设备之前,需要先构建标准能力接口文档,在构建该标准能力接口文档时,可以包括以下步骤:
第一,针对市场上的各种类的物联网设备,分别确定同种类物联网设备可能具备的所有能力。举例来说,针对家居灯这个种类的物联网设备,通过调研发现,市场上一些家居灯仅具有开关能力,一些家居灯既具有开关能力又具有相对亮度调节能力,还有一些家居灯同时具备开关能力、相对亮度调节能力、绝对亮度调节能力以及色温调节能力,则可以确定家居灯这个种类的物联网设备具备的所有能力包括开关能力、相对亮度调节能力、绝对亮度调节能力以及色温调节能力。
第二,针对同种类物联网设备的每种能力,分别设置各能力对应的标准能力接口信息。该标准能力接口信息中包括能力接口的调用函数以及调用函数的参数值信息,该参数值信息包括参数值名称、数据类型、取值范围、步长、示例以及示例描述中的至少一种。
下面以具有开关能力、相对亮度调节能力、绝对亮度调节能力、色温调节能力的家居灯为例,对针对其各种能力设置的标准能力接口信息进行说明。具体地:
针对家居灯的开关能力,将其标准能力接口信息中用于设定家居灯开关状态的调用函数设置为light.setOnOff(value),并将调用函数的参数值信息中的参数值名称设置为value,数据类型设置为bool,取值范围设置为false或者true,示例false的示例描述设置为关,示例true的示例描述设置为开。
针对家居灯的相对亮度调节能力,将其标准能力接口信息中用于设定家居灯相对亮度的调用函数设置为light.setRelativeBrightness(value),并将调用函数的参数值信息中的参数值名称设置为value,数据类型设置为int,取值范围设置为0-100,单位设置为%,步长设置为1,示例67的示例描述设置为将家居灯的相对亮度调整到亮度最大值的67%。
针对家居灯的绝对亮度调节能力,将其标准能力接口信息中用于设定家居灯绝对亮度的调用函数设置为light.setAbsoluteBrightness(value),并将调用函数的参数值信息中的参数值名称设置为value,数据类型设置为int,取值范围设置为0-20000,单位设置为nit,步长设置为1,示例400的示例描述设置为将家居灯的绝对亮度调整到400nit。
针对家居灯的色温调节能力,将其标准能力接口信息中用于设定家居灯色温的调用函数设置为light.setColorTemperature(value),并将调用函数的参数值信息中的参数值名称设置value,数据类型设置为int,取值范围设置为1700-7000,单位设置为K,步长设置为1,示例3700的示例描述设置为将家居灯的色温调整到3700K。
通过重复上述第一步骤和第二步骤,便可以得到各种类物联网设备的各种能力以及针对每种能力配置的标准能力接口信息,从而将这些信息进行汇总以得到标准能力接口文档。
在完成标准能力接口文档的创建后,便可以基于标准能力接口文档构建虚拟设备库中各虚拟设备。下面以一种虚拟设备构建过程为例,对虚拟设备库中各虚拟设备的构建过程进行说明。
针对当前种类的物联网设备,在基于标准能力接口文档构建其对应的虚拟设备时,包括以下步骤:
第一,确定当前种类物联网设备具有的所有能力。具体方法参见标准能力接口文档构建的第一步骤。
第二,针对当前种类物联网设备的每种能力,由标准能力接口文档中提取与每种能力对应的标准能力接口信息。举例来说,当前种类为家居灯,该家居灯具的所有能力包括开关能力、相对亮度调节能力、绝对亮度调节能力、色温调节能力,则依次由标准能力接口文档中提取家居灯开关能力对应的标准能力接口信息、家居灯相对亮度调节能力对应的标准能力接口信息、家居灯绝对亮度调节能力对应的标准能力接口信息以及家居灯色温调节能力对应的标准能力接口信息。
第三,根据每种能力对应的标准能力接口信息,生成实现每种能力的SDK开发工具包以及每种能力的SDK开发工具包的调取指令。
续上实施例,针对家居灯的开关能力,根据家居灯开关能力对应标准能力接口信息,创建用于实现家居灯开关控制的第一SDK开发工具包,并根据标准能力接口信息中的调取函数将第一SDK开发工具包的调取指令设置为light.setOnOff(value)。针对家居灯的相对亮度调节能力,根据家居灯相对亮度调节能力对应标准能力接口信息,创建用于实现家居灯相对亮度调节的第二SDK开发工具包,并根据标准能力接口信息中的调取函数将第二SDK开发工具包的调取指令设置为light.setRelativeBrightness(value)。针对家居灯的绝对亮度调节能力,根据家居灯绝对亮度调节能力对应标准能力接口信息,创建用于实现家居灯绝对亮度调节的第三SDK开发工具包,并根据标准能力接口信息中的调取函数将第三SDK开发工具包的调取指令设置为light.setAbsoluteBrightness(value)。针对家居灯的色温调节能力,根据家居灯色温调节能力对应标准能力接口信息,创建用于实现家居灯色温调节的第四SDK开发工具包,并根据标准能力接口信息中的调取函数将第四SDK开发工具包的调取指令设置为light.setColorTemperature(value)。此处需要说明的是,如何根据标准能力接口信息创建实现对应能力的SDK开发工具包是本领域的公知常识,在此不再赘述。
第四,基于每种能力的SDK开发工具包和调取指令,构建当前种类物联网设备的虚拟设备。如何根据当前种类物联网设备的每种能力的SDK开发工具包和调取指令构建当前种类物联网设备的虚拟设备是本领域的公知常识,在此不再赘述。
此处需要说明的是,由于当前种类的物联网设备对应的虚拟设备是基于预先构建的标准能力接口文档中当前种类物联网设备的所有能力的标准能力接口信息构建的,因此,构建出的虚拟设备可以具有市场上不同品牌不同型号的同一种物联网设备的所有功能,进而仅通过一个虚拟设备便可以实现对不同品牌不同型号的同一种物联网设备的模拟,从而降低虚拟调试的复杂性。
参照当前种类物联网设备对应的虚拟设备的构建过程,可以完成市场上各种类物联网设备对应的虚拟设备的构建,并将构建出的所有虚拟设备存储至虚拟设备库中。
进一步地,针对虚拟设备库中存储的每个虚拟设备,还配置对应的虚拟设备信息,所有的虚拟设备的设备信息被汇总至设备列表中,并将该设备列表也存储在虚拟设备库中,即构建好的虚拟设备库中不仅包括各种类型的物联网设备对应的虚拟设备,还包括记录有虚拟设备库中所有虚拟设备的设备信息的设备列表。其中,虚拟设备信息可以包括虚拟设备的设备标识、种类、设备图、设备名、设备英文名和设备功能描述中的至少一种。
在完成虚拟设备库的构建后,可以将虚拟设备库配置在本地服务器中,也可以将虚拟设备库配置在云端服务器中,在此不作具体限定。
在将虚拟设备库配置在本地服务器的实施例中,在基于虚拟设备库进行虚拟设备的配置,可以包括以下步骤:
第一,根据第二调试界面中设备管理控件的触发,推送显示虚拟设备库中存储的设备列表。
第二,根据设备列表中选择的虚拟设备信息,由虚拟设备库中筛选出对应的虚拟设备作为所需控制的物联网设备所对应的虚拟设备。具体地,在推送显示出设备列表后,用户根据在设备列表中选择与所需控制的物联网设备相匹配的设备信息,这样,调试系统便可以根据用户选中的设备信息由虚拟设备库中筛选出对应的虚拟设备作为需要控制的物联网设备所对应的虚拟设备。
第三,对筛选出的虚拟设备进行初始化,得到虚拟设备的初始设备参数,并将初始设备参数推送显示至如图4所示的第二调试界面中的设备模拟器区域(即图4中应用调试区的左侧区域),以完成需要控制的物联网设备所对应的虚拟设备的配置。
此处需要说明的是,针对虚拟设备的每种能力,均预先配置有初始设备参数,这样,在对虚拟设备进行初始化时,便可以获取到虚拟设备每种能力对应的初始设备参数,并将虚拟设备每种能力对应的初始设备参数推送显示至如图4所示的第二调试界面中的设备模拟器区域。
举例来说,对于具有开关能力、相对亮度调节能力,绝对亮度调节能力、色温调节能力、光照模式调节能力、睡眠模式调节能力以及夜间模式调节能力的家居灯虚拟设备来说,针对其开关能力配置的初始设备参数可以是false(关),针对其相对亮度调节能力配置的初始设备参数可以是67%,针对其绝对亮度调节能力配置的初始设备参数可以是500nit,针对其色温调节能力配置的初始设备参数可是3500K,针对其光照模式调节能力配置的初始设备参数可以是冷光模式,针对其睡眠模式调节能力配置的初始设备参数可以是false(关),针对其夜间模式调节能力配置的初始设备参数可以是false(关),在筛选出该家居灯虚拟设备作为配置的虚拟设备的情况下,将对家居灯虚拟设备别进行初始化,并将针对家居灯上述各能力配置的初始设备参数显示至如图4所示的第二调试界面中的设备模拟器区域。
在将虚拟设备库配置在云端服务器的实施例中,在基于虚拟设备库进行虚拟设备的配置时,包括以下步骤:
第一,对物联网应用进行解析,确定物联网应用需要控制的物联网设备的设备标识。具体地,物联网应用中包括需要控制的物联网设备的设备标识,因此,通过解析该物联网应用便可以确定出物联网应用需要控制的物联网设备的设备标识。
第二,将物联网设备的设备标识发送至云端服务器,以使云端服务器根据设备标识由预先构建的虚拟设备库中筛选出虚拟设备,对虚拟设备进行初始化得到虚设备的初始设备参数,并将初始设备参数发送至调试系统。具体地,云端服务器在接收到物联网设备的设备标识后,将由云端服务器的虚拟设备库中筛选出具有同样设备标识的虚拟设备作为需要控制的物联网设备所对应的虚拟设备,并对筛选出的虚拟设备进行初始化,得到虚拟设备的各能力的初始设备参数,并将其发送至调试系统。对筛选出的虚拟设备进行初始化,得到虚拟设备的各能力的初始设备参数的过程与将虚拟设备库配置在本地服务器的实施例中第三步相同,在此不再赘述。
第三,接收并显示云端服务器发送的虚拟设备的初始设备参数,并将接收到的初始设备参数推送显示至如图4所示的第二调试界面中的设备模拟器区域,以完成需要控制的物联网设备所对应的虚拟设备的配置。具体步骤与将虚拟设备库配置在本地服务器的实施例中第三步相同,在此不再赘述。
在完成虚拟设备的配置后,便可以执行步骤2,基于控制界面的触发,由物联网应用中获取相应的控制指令,并将控制指令发送至预先配置的虚拟设备,使虚拟设备根据控制指令执行相应的操作。
具体地,在步骤1渲染出的物联网设备的控制界面中,包括多种能力控件,在任一能力控件被触发的情况下,将由物联网应用中获取相应的控制指令,并将获取到的控制指令发送至对应的虚拟设备,虚拟设备在接收到该控制指令以后,将根据控制指令对相应能力的初始能力参数进行调整,并将调整后的能力参数(即更新设备参数)发送至调试系统。调试系统在接收到更新设备参数后,将更新设备参数显示在如图4所示的第二调试界面中的设备模拟器区域。这样,用户便可以根据调试前后能力参数的变化情况确定物联网应用编写逻辑是否准确。
举例来说,在如图4所示的第二调试界面中,用户通过点击将家居灯的开关能力控件,将其状态由开启变为关闭,此时,将生成用于控制家居灯关闭的控制指令,并将该控制指令发送至家居灯虚拟设备,家居灯虚拟设备在接收到该控制指令后,将开关能力的初始设备参数false(关)调整为true(开),并将更新后的设备参数发送至调试系统,从而在调试系统中将家居灯的开关能力参数由false(关)调整为true(开),这样,用户便可以判断物联网应用中控制家居灯开关的控制逻辑是正确的。否则,判断物联网应用中用于控制家居灯开关的控制逻辑是错误的。
进一步地,在将控制指令发送至虚拟设备后,还包括:接收并显示虚拟设备执行控制指令时生成的操作日志。具体地,当虚拟设备收到并执行了控制指令之后,除了将其初始设备参数进行更新并发送至调试系统进行显示之外,还会生成相应的操作日志,并将生成的操作日志发送至调试系统,调试系统在接收到操作日志以后,将接收到的操作日志显示在如图4所示的第二调试界面中的实时日志区域(即应用调试区的右侧区域)。这样,用户便可以通过查看这些操作日志,更加详细、清晰地了解到虚拟设备在接收和执行控制指令时的具体流程和情况,有助于在调试过程中更加精确地定位和解决可能出现的问题。其中,操作日志包括了控制指令的接收时间、执行时间、指令内容、执行结果等详细信息。举例来说,如果某一指令未能正确执行,用户可以通过查看操作日志来判断是虚拟设备接收指令延迟,还是在执行指令过程中发生了某些错误。此外,操作日志还可以为用户提供更为详细的调试历史记录,便于用户在后续的开发和优化中进行参考和对比,从而更加高效地进行物联网应用的调试和优化工作。
在本公开中,除了可以通过虚拟设备对物联网应用进行调试外,还可以通过真实的物联网设备进行调试,其中,真实的物联网设备为与虚拟调试平台兼容的物联网设备。
在对真实的物联网设备进行调试时,可以包括以下步骤:将控制指令发送至预先配置的真实的物联网设备,以使真实的物联网设备根据控制指令执行相应的操作。具体地,在步骤1渲染出的物联网设备的控制界面中,选择相应的能力控件进行触控,在能力控件被触发的情况下,将由物联网应用中获取相应的控制指令,并将获取到的控制指令发送至接入调试系统的真实的物联网设备,真实的物联网设备在接收到控制指令后,将执行相应的操作,这样,用户便可以根据真实的物联网设备的操作结果确定物联网应用编写逻辑是否准确。
进一步地,在将控制指令发送至真实物联网设备后,还包括:接收并显示真实物联网设备执行控制指令时生成的操作日志。具体的步骤参见虚拟调试过程的操作日志生成步骤,在此不再赘述。
在一种可能的实现方式中,本公开中获取的物联网应用也是基于标准能力接口文档(即API文档)进行开发的,因此,在生成物联网应用时,也不需要考虑物联网设备的品牌和型号,从而简化了物联网应用构建的复杂度。在基于标准能力接口文档开发物联网应用时,包括以下步骤:
第一,确定物联网应用需要调用的物联网设备的种类和能力。
例如,当前构建的物联网应用为控制家居灯打开的物联网应用,此时,待使用物联网应用需要调用的物联网设备的种类为家居灯,需要调用的家居灯的能力为开关能力。
又如,当前构建的物联网应用为控制家居灯开关和控制加湿器开关的物联网应用,此时,待使用物联网应用需要调用的物联网设备的种类为家居灯和加湿器,针对家具等其需要调用的是家居灯的开关能力,针对加湿器需要调用的是加湿器的开关能力。
第二,根据标准能力接口文档,确定与物联网设备的种类和能力相匹配的标准能力接口信息。
例如,在确定待使用物联网应用需要调用的物联网设备的种类为家居灯,需要调用的家居灯的能力为开关能力时,便可以通过查询标准能力接口文档,查询到家居灯的开关能力的标准接口信息。其中,家居灯开关能力的标准接口信息中,调用函数为light.setOnOff(value),参数值名称为value,数据类型为bool,取值范围为false或者true,示例false的示例描述为关,示例true的示例描述为开。
又如,在确定待使用物联网应用需要调用的物联网设备的种类为家居灯和加湿器,针对家居灯需要调用的是家居灯的开关能力,针对加湿器需要调用的是加湿器的开关能力时,便可以通过查询标准能力接口文档,查询到家居灯的开关能力的标准接口信息和加湿器的开关能力的标准接口信息。其中,家居灯的家居灯开关能力的标准接口信息如上所述,在此不再赘述。加湿器的开关能力的标准接口信息中,调用函数为humidifier.setOnOff(value),参数值名称为value,数据类型为bool,取值范围为false或者true,示例false的示例描述为关,示例true的示例描述为开。
第三,基于与物联网设备的种类和能力相匹配的标准能力接口信息,生成调取实现其能力的SDK开发工具包的调取指令。
例如,在确定待使用物联网应用需要调用的物联网设备的种类为家居灯,需要调用的家居灯的能力为开关能力的实施例,将获取到家居灯的能力为开关能力的标准接口信息,并基于家居灯开关能力的标准接口信息生成调取实现家居灯开关控制能力的第一SDK开发工具包的调取指令light.setOnOff(value)。其中,在value值为true时,通过调取第一SDK开发工具包可以控制家居灯进行打开的操作,在value值为false时,通过调取第一SDK开发工具包可以控制家居灯进行关闭的操作。
又如,在确定待使用物联网应用需要调用的物联网设备的种类为家居灯和加湿器,针对家具等其需要调用的是家居灯的开关能力,针对加湿器需要调用的是加湿器的开关能力的实施例中,参照上述示例生成调取实现家居灯开关控制能力的第一SDK开发工具包的调取指令。进一步地,获取加湿器开关能力的标准接口信息,并基于加湿器开关能力的标准接口信息生成调取实现加湿器开关控制能力的SDK开发工具包的调取指令humidifier.setOnOff(value),其中,在value值为true时,通过调取该SDK开发工具包可以控制加湿器进行打开的操作,在value值为false时,通过调取该SDK开发工具包可以控制加湿器进行关闭的操作。
第四,基于调取指令以及实现其能力的SDK开发工具包,生成待使用物联网应用。其中,如何基于调取指令以及实现其能力的SDK开发工具包,生成待使用物联网应用是本领域的公知常识,在此不再赘述。
本公开提供了一种物联网应用的虚拟调试方法,包括:获取物联网应用,并基于物联网应用渲染出物联网设备的控制界面;基于控制界面的触发,由物联网应用中获取相应的控制指令,并将控制指令发送至预先配置的虚拟设备,以使虚拟设备根据控制指令执行相应的操作;其中,虚拟设备根据预先配置的标准能力接口文档实现;其中,标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。由于虚拟设备是基于标准能力接口文档实现的,因此,可以适配不同品牌不同型号的同一种物联网设备,进而仅通过一个虚拟设备便可以实现对不同品牌不同型号的同一种物联网设备的模拟,从而降低虚拟调试的复杂性。
<装置实施例>
图5示出根据本公开一实施例物联网应用的虚拟调试装置的示意性框图。如图5所示,物联网应用的虚拟调试装置100包括:
控制界面渲染模块110,用于获取物联网应用,并基于所述物联网应用渲染出物联网设备的控制界面;
调试模块120,用于基于所述控制界面的触发,由所述物联网应用中获取相应的控制指令,并将所述控制指令发送至预先配置的虚拟设备,以使所述虚拟设备根据所述控制指令执行相应的操作;
其中,虚拟设备根据预先配置标准能力接口文档实现;标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息。
<设备实施例>
图6示出根据本公开一实施例物联网应用的虚拟调试设备的示意性框图。如图6所示,物联网应用的虚拟调试设备200包括:处理器210以及用于存储处理器210可执行指令的存储器220。其中,处理器210被配置为执行可执行指令时实现前面任一所述的物联网应用的虚拟调试方法。
此处,应当指出的是,处理器210的个数可以为一个或多个。同时,在本公开实施例的物联网应用的虚拟调试设备200中,还可以包括输入装置230和输出装置240。其中,处理器210、存储器220、输入装置230和输出装置240之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。
存储器220作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本公开实施例的物联网应用的虚拟调试方法所对应的程序或模块。处理器210通过运行存储在存储器220中的软件程序或模块,从而执行物联网应用的虚拟调试设备200的各种功能应用及数据处理。
输入装置230可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置240可以包括显示屏等显示设备。
<存储介质实施例>
根据本公开的第四方面,还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,计算机程序指令被处理器210执行时实现前面任一所述的物联网应用的虚拟调试方法。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (9)

1.一种物联网应用的虚拟调试方法,其特征在于,包括:
获取物联网应用,并基于所述物联网应用渲染出物联设备的控制界面;
基于所述控制界面的触发,由所述物联网应用中获取相应的控制指令,并将所述控制指令发送至预先配置的虚拟设备,以使所述虚拟设备根据所述控制指令执行相应的操作;
其中,所述虚拟设备根据预先配置标准能力接口文档实现;所述标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息,所述参数值信息包括参数值名称、数据类型、取值范围、步长、示例以及示例描述中的至少一种;
在构建所述标准能力接口文档时,包括:
针对市场上的各种类的物联网设备,分别确定同种类物联网设备可能具备的所有能力;
针对同种类物联网设备的每种能力,分别设置各能力对应的标准能力接口信息;
通过重复构建所述标准能力接口文档时的两个步骤,得到各种类物联网设备的各种能力以及针对每种能力配置的标准能力接口信息,从而将这些信息进行汇总以得到标准能力接口文档;
在基于预先配置的标准能力接口文档构建所述虚拟设备时,包括:
确定当前种类物联网设备具有的所有能力;
针对所述当前种类物联网设备的每种能力,由所述标准能力接口文档中提取与每种能力对应的标准能力接口信息;
根据每种所述能力对应的标准能力接口信息,生成实现每种所述能力的SDK开发工具包以及每种所述能力的SDK开发工具包的调取指令;
基于每种所述能力的SDK开发工具包和每种所述能力的SDK开发工具包的调取指令,构建当前种类物联网设备的虚拟设备;
所述物联网应用也是基于所述标准能力接口文档开发实现,在基于所述标准能力接口文档开发所述物联网应用时,包括:
确定所述物联网应用需要调用的物联网设备的种类和能力;
根据所述标准能力接口文档,确定与所述物联网设备的种类和能力相匹配的标准能力接口信息;
基于与所述物联网设备的种类和能力相匹配的标准能力接口信息,生成调取实现其能力的SDK开发工具包的调取指令;
基于调取指令以及实现其能力的SDK开发工具包,生成待使用物联网应用。
2.根据权利要求1所述的方法,其特征在于,在配置所述虚拟设备时,包括:
对所述物联网应用进行解析,确定所述物联网应用需要控制的物联网设备的设备标识;
将所述设备标识发送至云端服务器,以使所述云端服务器根据所述设备标识由预先构建的虚拟设备库中筛选出所述虚拟设备;
接收并显示所述云端服务器发送的所述虚拟设备的初始设备参数。
3.根据权利要求2所述的方法,其特征在于,在将所述控制指令发送至所述虚拟设备后,还包括:接收并显示所述虚拟设备根据所述控制指令执行相应操作后的更新设备参数。
4.根据权利要求1所述的方法,其特征在于,在将所述控制指令发送至所述虚拟设备后,还包括:接收并显示所述虚拟设备执行所述控制指令时生成的操作日志。
5.根据权利要求1所述的方法,其特征在于,在构建所述虚拟设备之后,还包括将所述虚拟设备发布至虚拟设备库的操作。
6.根据权利要求1所述的方法,其特征在于,还包括:
将所述控制指令发送至预先配置的真实的物联网设备,以使所述真实的物联网设备根据所述控制指令执行相应的操作。
7.一种物联网应用的虚拟调试装置,其特征在于,包括:
控制界面渲染模块,用于获取物联网应用,并基于所述物联网应用渲染出物联网设备的控制界面;
调制模块,用于基于所述控制界面的触发,由所述物联网应用中获取相应的控制指令,并将所述控制指令发送至预先配置的虚拟设备,以使所述虚拟设备根据所述控制指令执行相应的操作;
其中,所述虚拟设备根据预先配置标准能力接口文档实现;所述标准能力接口文档中包括各种类物联网设备的各种能力,并针对每种能力分别配置有标准能力接口信息,该标准能力接口信息包括能力的调用函数以及调用函数的参数值信息,所述参数值信息包括参数值名称、数据类型、取值范围、步长、示例以及示例描述中的至少一种;
所述虚拟调试装置还包括标准能力接口文档构建模块,所述标准能力接口文档构建模块在构建所述标准能力接口文档时,具体用于:
针对市场上的各种类的物联网设备,分别确定同种类物联网设备可能具备的所有能力;
针对同种类物联网设备的每种能力,分别设置各能力对应的标准能力接口信息;
通过重复构建所述标准能力接口文档时的两个步骤,得到各种类物联网设备的各种能力以及针对每种能力配置的标准能力接口信息,从而将这些信息进行汇总以得到标准能力接口文档;
所述虚拟调试装置还包括虚拟设备构建模块,所述虚拟设备构建模块在基于预先配置的标准能力接口文档构建所述虚拟设备时,具体用于:
确定当前种类物联网设备具有的所有能力;
针对所述当前种类物联网设备的每种能力,由所述标准能力接口文档中提取与每种能力对应的标准能力接口信息;
根据每种所述能力对应的标准能力接口信息,生成实现每种所述能力的SDK开发工具包以及每种所述能力的SDK开发工具包的调取指令;
基于每种所述能力的SDK开发工具包和每种所述能力的SDK开发工具包的调取指令,构建当前种类物联网设备的虚拟设备;
所述物联网应用也是基于所述标准能力接口文档开发实现,在基于所述标准能力接口文档开发所述物联网应用时,包括:
确定所述物联网应用需要调用的物联网设备的种类和能力;
根据所述标准能力接口文档,确定与所述物联网设备的种类和能力相匹配的标准能力接口信息;
基于与所述物联网设备的种类和能力相匹配的标准能力接口信息,生成调取实现其能力的SDK开发工具包的调取指令;
基于调取指令以及实现其能力的SDK开发工具包,生成待使用物联网应用。
8.一种物联网应用的虚拟调试设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令时实现权利要求1至6中任意一项所述的方法。
9.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法。
CN202410032393.8A 2024-01-09 2024-01-09 物联网应用的虚拟调试方法、装置、设备和存储介质 Active CN117555810B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410032393.8A CN117555810B (zh) 2024-01-09 2024-01-09 物联网应用的虚拟调试方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410032393.8A CN117555810B (zh) 2024-01-09 2024-01-09 物联网应用的虚拟调试方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN117555810A CN117555810A (zh) 2024-02-13
CN117555810B true CN117555810B (zh) 2024-04-05

Family

ID=89823460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410032393.8A Active CN117555810B (zh) 2024-01-09 2024-01-09 物联网应用的虚拟调试方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN117555810B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528289A (zh) * 2015-09-15 2017-03-22 中兴通讯股份有限公司 资源的操作处理方法及装置
CN111865708A (zh) * 2019-12-30 2020-10-30 北京嘀嘀无限科技发展有限公司 物联网系统的性能测试方法、平台、设备及存储介质
CN112637271A (zh) * 2020-12-04 2021-04-09 西安理工大学 基于物联网的开放实验教学平台
WO2022016998A1 (zh) * 2020-07-23 2022-01-27 平安科技(深圳)有限公司 物联网控制系统的处理方法、系统、服务器、终端及介质
CN114928565A (zh) * 2022-01-29 2022-08-19 浙江浩瀚能源科技有限公司 一种模拟硬件设备的物联网测试方法及系统
CN116170481A (zh) * 2023-02-03 2023-05-26 武汉慧联无限科技有限公司 接入方法、装置、设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528289A (zh) * 2015-09-15 2017-03-22 中兴通讯股份有限公司 资源的操作处理方法及装置
CN111865708A (zh) * 2019-12-30 2020-10-30 北京嘀嘀无限科技发展有限公司 物联网系统的性能测试方法、平台、设备及存储介质
WO2022016998A1 (zh) * 2020-07-23 2022-01-27 平安科技(深圳)有限公司 物联网控制系统的处理方法、系统、服务器、终端及介质
CN112637271A (zh) * 2020-12-04 2021-04-09 西安理工大学 基于物联网的开放实验教学平台
CN114928565A (zh) * 2022-01-29 2022-08-19 浙江浩瀚能源科技有限公司 一种模拟硬件设备的物联网测试方法及系统
CN116170481A (zh) * 2023-02-03 2023-05-26 武汉慧联无限科技有限公司 接入方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN117555810A (zh) 2024-02-13

Similar Documents

Publication Publication Date Title
CN113412469B (zh) 设备配网方法、装置、电子设备及存储介质
EP3016318A1 (en) Method and apparatus for customizing scene mode of intelligent device
CN112292664B (zh) 用于设计分布式异构计算和控制系统的方法和系统
CN111104341A (zh) 智能家居设备自动化测试方法、装置、设备及存储介质
CN112199093B (zh) 资源检查方法、装置、设备及计算机可读存储介质
CN110688172B (zh) 设备功能互斥逻辑配置方法、装置、电子设备及存储介质
CN116628791B (zh) 灯具安装引导方法、装置、设备及介质
CN114385287B (zh) 展示内容确定方法、装置、电子设备及存储介质
CN110794773A (zh) 一种点击式场景创建的方法及装置
CN112148241B (zh) 灯光处理方法、装置、计算设备和存储介质
CN117555810B (zh) 物联网应用的虚拟调试方法、装置、设备和存储介质
CN114285688A (zh) 设备替换方法、装置、网关、系统及介质
CN113961622A (zh) 物联网设备的数据融合方法、装置、智能终端及存储介质
CN116719969B (zh) 基于物联网的智能家居交互数据分析方法及系统
CN113032267A (zh) 智能场景测试方法、装置、电子设备及存储介质
US20200059798A1 (en) Configuration method of wireless network system, configuration terminal and configuration system
CN116027937A (zh) 待编辑组件的渲染方法和装置、存储介质及电子装置
CN114861773A (zh) 模型训练可视化方法、装置以及云平台
CN114327709A (zh) 一种控制页面生成方法、装置、智能设备及存储介质
CN111964222B (zh) 空调控制方法和装置、设备及存储介质
CN117812113A (zh) 物联网设备的推荐方法、装置、设备和存储介质
RU2689436C1 (ru) Способ и система интеграции оборудования в средства автоматизированного управления и учета
CN117555527B (zh) 物联网应用的开发方法、装置、设备和存储介质
RU2651142C1 (ru) Способ и система автоматизированного программирования при помощи экспертной системы, интеллектуальных систем асу, основанных на программно-логических контроллерах (плк) и микроконтроллерах
CN114398693B (zh) 物联网系统搭建方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant