CN110598280A - 一种设备仿真系统和方法、计算机可读存储介质 - Google Patents
一种设备仿真系统和方法、计算机可读存储介质 Download PDFInfo
- Publication number
- CN110598280A CN110598280A CN201910801079.0A CN201910801079A CN110598280A CN 110598280 A CN110598280 A CN 110598280A CN 201910801079 A CN201910801079 A CN 201910801079A CN 110598280 A CN110598280 A CN 110598280A
- Authority
- CN
- China
- Prior art keywords
- data
- equipment
- simulation
- instruction
- object model
- 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.)
- Granted
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种设备仿真系统和方法、计算机可读存储介质,所述方法包括根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,已有物理设备数据包括物理设备的行为分析数据及基础数据,行为分析数据从收集的物理设备的行为数据中提取,行为数据包括下发指令和响应数据;接收运行仿真设备的指令,根据仿真设备数据与云端进行网络连接及主动上报;接收云端的下发指令,根据仿真设备数据向云端发送对应的响应数据。本申请通过创建仿真设备,云端开发者可以快速进入开发过程,完成应用调试,无需等待硬件开发者完成硬件开发。
Description
技术领域
本申请涉及但不限于物联网技术领域,尤其涉及一种设备仿真系统和方法、计算机可读存储介质。
背景技术
物联网(The Internet of Things,IOT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。
在物联网场景中,正常的开发流程是:设备端开发完成,设备上报数据,云端接收数据,云端开始开发工作。然而,这样的开发流程战线较长,耗时较久。
发明内容
本申请提供了一种设备仿真系统和方法、计算机可读存储介质,能够使云端开发者快速进入开发过程。
本申请实施例提供了一种设备仿真方法,包括:
根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,所述属性定义数据用于描述设备运行的状态数据,所述服务定义数据用于描述设备提供给外部调用的能力或方法,所述事件定义数据用于描述设备运行时,需要被外部感知和处理的通知消息;所述已有物理设备数据包括物理设备的行为分析数据及基础数据,所述行为分析数据从收集的物理设备的行为数据中提取,所述行为数据包括下发指令和响应数据;
接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报;
接收云端的下发指令,根据所述仿真设备数据向云端发送对应的响应数据。
在一种示例性实施例中,所述根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据之前,所述方法还包括:
接收创建仿真设备的指令;
当所述创建仿真设备的指令中携带物模型标识,触发所述根据物模型数据创建仿真设备,生成仿真设备数据的操作;
当所述创建仿真设备的指令中携带已有物理设备标识,触发所述根据已有物理设备数据创建仿真设备,生成仿真设备数据的操作。
在一种示例性实施例中,当根据所述物模型数据创建仿真设备时,生成的所述仿真设备数据包括所述仿真设备的基础数据和所述基础数据对应的物模型数据;
当根据所述已有物理设备数据创建仿真设备时,生成的所述仿真设备数据包括所述仿真设备的基础数据、所述基础数据对应的物模型数据和行为分析数据,其中,所述仿真设备的基础数据包括设备标识、设备状态,还包括以下一种或多种数据:设备类型、固件类型及数量、各个固件类型对应的固件版本、信号强度、通信方式、通信信息加解密数据、运行数据。
在一种示例性实施例中,所述根据所述已有物理设备数据创建仿真设备,生成仿真设备数据,包括:
获取所述已有物理设备标识对应的基础数据、行为分析数据和物模型数据;
随机生成所述仿真设备的设备标识;
使用随机生成的设备标识替换已有物理设备的基础数据中的设备标识,使用替换后的基础数据、行为分析数据和物模型数据合并得到所述仿真设备数据,并初始化所述基础数据中的设备状态为未开机状态;
将所述仿真设备数据进行持久化。
在一种示例性实施例中,所述下发指令包括指令时间、指令ID、指令参数和链路跟踪ID;
所述响应数据包括:应答时间、对应的指令ID、对应的指令执行结果、指令执行返回参数和链路跟踪ID,其中,所述链路跟踪ID用于唯一的指示所述下发指令及其对应的所述响应数据。
在一种示例性实施例中,所述行为分析数据的存储结构为树状结构,所述树状结构的第一级为设备标识,第二级为所述设备标识关联的指令中的指令ID,第三级为所述设备标识关联的指令中的指令参数,第四级为所述设备标识关联的指令中的指令时间,第五级为所述设备标识关联的指令对应的响应数据。
在一种示例性实施例中,所述根据仿真设备数据向云端发送对应的响应数据,包括:
查询所述仿真设备数据是否包括行为分析数据,若有,则转入第一级查询,若无,则根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第一级查询:解析所述下发指令中的仿真设备所属设备类型,查询行为分析数据树状结构的第一级中是否存在属于相同设备类型的设备标识;若有,继续进行第二级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第二级查询:解析所述下发指令中的指令ID,查询行为分析数据树状结构的第二级中是否存在该指令ID,若有,继续进行第三级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第三级查询:解析所述下发指令中的指令参数,查询行为分析数据树状结构的第三级中是否存在该指令参数,若有,继续进行第四级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第四级查询:解析所述下发指令中的指令时间,查询行为分析数据树状结构的第四级中最接近该指令时间的节点,并进行第五级查询;
第五级查询:获取最接近该指令时间的节点下的响应数据,将其作为最终的响应数据进行上报。
在一种示例性实施例中,所述接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报之后,所述方法还包括:
接收设备交互指令,根据所述仿真设备数据,执行以下至少一项:向云端发送对应的响应数据、向用户反馈交互结果。
本申请实施例还提供了一种设备仿真系统,包括:设备创建模块、设备运行模块和云端通讯模块,其中:
设备创建模块,用于根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,所述属性定义数据用于描述设备运行的状态数据,所述服务定义数据用于描述设备提供给外部调用的能力或方法,所述事件定义数据用于描述设备运行时,需要被外部感知和处理的通知消息;所述已有物理设备数据包括物理设备的行为分析数据及基础数据,所述行为分析数据从收集的物理设备的行为数据中提取,所述行为数据包括下发指令和响应数据;
设备运行模块,用于接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报;
云端通讯模块,用于接收云端的下发指令,根据所述仿真设备数据向云端发送对应的响应数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如以上任一项所述的设备仿真方法的步骤。
本申请的设备仿真系统和方法、计算机可读存储介质,通过创建仿真设备,模拟真实设备与物联网平台建立连接、上报事件及属性,云端开发者可以根据仿真设备快速进入开发过程,完成应用调试,无需等待硬件开发者完成硬件开发。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书、权利要求书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本申请实施例提供的设备仿真装系统的一种示例性结构示意图;
图2为本申请实施例提供的行为分析数据的存储结构示意图;
图3为本申请实施例提供的设备仿真装系统的另一种示例性结构示意图;
图4为本申请实施例提供的设备仿真方法的一种示例性流程示意图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
如图1所示,本申请提供了一种设备仿真系统,包括设备创建模块101、设备运行模块102和云端通讯模块103,其中:
设备创建模块101,用于根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,所述属性定义数据用于描述设备运行的状态数据,所述服务定义数据用于描述设备提供给外部调用的能力或方法,所述事件定义数据用于描述设备运行时,需要被外部感知和处理的通知消息;所述已有物理设备数据包括物理设备的行为分析数据及基础数据,所述行为分析数据从收集的物理设备的行为数据中提取,所述行为数据包括下发指令和响应数据;
设备运行模块102,用于接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报;
云端通讯模块103,用于接收云端的下发指令,根据所述仿真设备数据向云端发送对应的响应数据。
需要说明的是,物模型是对设备在云端的功能描述。物联网平台通过定义一种物的描述语言来描述物模型,称之为TSL(Thing Specification Language),采用JavaScript对象简谱(JavaScript Object Notation,JSON)格式,可以根据TSL组装上报设备的数据。
物联网平台支持为某一类产品抽象并定义出统一的物模型,将实际产品抽象成由属性、服务、事件所组成的数据模型,便于云端管理和数据交互。产品创建完成后,可以为它定义物模型,属于某一类产品下的设备将自动继承物模型内容。
所述物模型数据包括设备的属性、服务和事件定义数据。所述物模型数据可以通过以下任意一种方式进行持久化:持久化到关系型数据库、持久化到非关系型数据库、持久化到服务器缓存、持久化到文件系统。
属性定义数据用于描述设备运行的状态数据,如假设仿真设备为共享充电宝,则属性定义数据包括共享充电宝的信号强度、电量等信息。属性定义数据包括属性名称、别名(标识符)、属性数据类型、属性数据取值范围、属性数据单位、属性描述、属性初始值等;
服务定义数据用于描述设备可提供给外部调用的能力或者方法,可设置输入参数和输出参数,如共享充电宝的充电宝弹出功能。服务定义数据包括服务名称、别名(标识符)、输入参数定义、输出参数定义、服务描述等;
事件定义数据用于描述设备运行时,需要被外部感知和处理的通知信息,可包括多个输出参数。如共享充电宝的定时上报、充电宝取走上报等。事件定义数据包括事件名称、别名(标识符)、输出参数定义、事件描述等。
本申请中,仿真设备的创建方式有两种:一种是根据物联网平台定义的物模型数据创建仿真设备;一种是根据已有物理设备数据克隆其行为特性创建仿真设备。通过根据物模型创建仿真设备,能够在硬件产品产出之前开始进行设备联网、设备业务逻辑相关的联调测试,节省开发周期;在硬件结构及生产计划确定之前,通过物模型创建仿真设备进行业务联调测试能够及时发现硬件产品设计不合理之处,进行修改并再次验证。有效减小了研发成本及设备损耗。通过根据已有物理设备数据克隆其行为特性创建仿真设备,能够在不回收设备影响正常业务的情况下,模拟该物理设备创建仿真设备进行调试,降低对市场业务的侵入;此外,针对某些偶现的问题,其他设备无法稳定复现的情况,可以通过直接对该问题设备创建仿真设备,进行问题的稳定复现及测试。
在所述设备创建模块101接收到创建仿真设备的指令时,首先检查所述创建仿真设备的指令中携带的是选择的物模型标识还是选择的已有物理设备的设备标识,所述设备标识可以为设备名称或设备唯一识别号,如果携带的是选择的物模型标识,则根据物模型数据创建仿真设备,如果携带的是选择的已有物理设备的设备标识,则根据已有物理设备数据创建仿真设备;
在设备运行模块102接收到运行仿真设备的指令时,优先选择根据所述仿真设备的基础数据和所述基础数据对应的行为分析数据与云端进行网络连接及主动上报,当没有行为分析数据时,选择根据所述仿真设备的基础数据和物模型数据与云端进行网络连接及主动上报;
在云端通讯模块103接收到云端的下发指令时,优先选择根据所述仿真设备的基础数据和所述基础数据对应的行为分析数据向云端发送对应的响应数据,当没有行为分析数据时,选择根据所述仿真设备的基础数据和物模型数据向云端发送对应的响应数据。
在一种示例性实施例中,所述设备创建模块101具体用于:
接收创建仿真设备的指令,所述创建仿真设备的指令携带物模型标识或已有物理设备标识,所述物模型标识为物模型名称或物模型唯一识别号;
当所述创建仿真设备的指令中携带物模型标识,则根据物模型数据创建仿真设备,生成仿真设备数据;
当所述创建仿真设备的指令中携带已有物理设备标识,则根据已有物理设备数据创建仿真设备,生成仿真设备数据。
在一种示例性实施例中,当根据所述物模型数据创建仿真设备时,设备创建模块101生成的仿真设备数据包括所述仿真设备的基础数据和所述基础数据对应的物模型数据;
当根据所述已有物理设备数据创建仿真设备时,设备创建模块101生成的仿真设备数据包括所述仿真设备的基础数据、所述基础数据对应的物模型数据和行为分析数据,其中,所述仿真设备的基础数据包括设备标识、设备状态,还包括以下一种或多种数据:设备类型、固件类型及数量、各个固件类型对应的固件版本、信号强度、通信方式、通信信息加解密数据、运行数据。
在一种示例性实施例中,当根据所述已有物理设备数据创建仿真设备,生成仿真设备数据之后,所述设备运行模块102根据所述仿真设备数据与云端进行网络连接及主动上报,包括:根据所述仿真设备的基础数据和所述基础数据对应的行为分析数据,与云端进行网络连接及主动上报;
所述云端通讯模块103根据所述仿真设备数据向云端发送对应的响应数据,包括:根据所述仿真设备的基础数据和所述基础数据对应行为分析数据向云端发送对应的响应数据。
在一种示例性实施例中,所述设备创建模块101根据物模型数据创建仿真设备,生成仿真设备数据,包括:
根据创建仿真设备的指令中携带的物模型标识获取对应的基础数据和物模型数据,所述基础数据包括设备标识数据、设备信号数据、设备状态数据、固件信息数据、通信方式数据、通信信息加解密数据、运行数据等,所述固件信息数据包括固件类型、固件版本及固件数量等;
置除设备标识之外的基础数据和属性定义数据的初始值(例如,初始化所述基础数据中的设备状态为未开机状态);
随机生成仿真设备的设备标识,使用随机生成的设备标识以及包含所述初始值的基础数据和物模型数据合并得到所述仿真设备数据;
将所述仿真设备数据进行持久化;
提示仿真设备的创建结果。
在本实施例的一示例中,所述持久化可以使用以下任意一种方式:持久化到关系型数据库、持久化到非关系型数据库、持久化到服务器缓存、持久化到文件系统。
在一种示例性实施例中,所述设备创建模块101根据所述已有物理设备数据创建仿真设备,生成仿真设备数据,包括:
获取所述已有物理设备标识对应的基础数据、行为分析数据和物模型数据;
随机生成所述仿真设备的设备标识;
使用随机生成的设备标识替换已有物理设备的基础数据中的设备标识,使用替换后的基础数据、行为分析数据和物模型数据合并得到所述仿真设备数据,并初始化所述基础数据中的设备状态为未开机状态;
将所述仿真设备数据进行持久化。
在一种示例性实施例中,所述获取所述已有物理设备标识对应的行为分析数据,包括:
根据创建仿真设备的指令中携带的已有物理设备的设备标识,查询物理设备信息及物理设备的行为数据,所述行为数据为该物理设备对每个下发指令的响应数据或在无下发指令情况下主动上报的数据。具体的查询可以包括以下手段:从关系数据库中查询;从非关系数据库中查询;从服务器缓存中查询;从文件系统中查询;
对该物理设备的行为数据进行分析提取,得到物理设备的行为分析数据。具体的分析提取方法可以为:对不同的下发指令事件值进行第一级归类,并以下发指令事件值作为索引;对同一个下发指令事件值的不同响应结果进行第二级归类,并以响应时间作为索引。
在一种示例性实施例中,所述下发指令包括指令时间、指令ID、指令参数和链路跟踪ID;
所述响应数据包括:应答时间、对应的指令ID、对应的指令执行结果、指令执行返回参数和链路跟踪ID,其中,所述链路跟踪ID用于唯一的指示所述下发指令及其对应的所述响应数据。
在该实施例中,指令时间可以用于设备接收到指令后校验时间,以判断该指令是否下发超时,并决定是否还要执行超时指令;链路跟踪ID可以用于追溯一个设备动作的所有相关指令数据、响应数据等,用于分析设备行为。
在一种示例性实施例中,所述行为分析数据的存储结构为树状结构,所述树状结构的第一级为设备标识,第二级为所述设备标识关联的指令中的指令ID,第三级为所述设备标识关联的指令中的指令参数,第四级为所述设备标识关联的指令中的指令时间,第五级为所述设备标识关联的指令对应的响应数据。
通过采用树状存储结构,能够简单有效划分指令数据层级关系,有利于快速根据指令数据查询到对应的响应数据。需要说明的是,在收集物理设备的行为数据时,可以通过ELK(Elasticsearch Logstash Kibana)收集该物理设备近期所有的下发指令日志及响应数据日志,日志格式为JSON,下发指令格式为指令时间、指令ID、指令参数、链路跟踪ID(TraceID);响应数据格式为应答时间、对应的指令ID、对应的指令执行结果、指令执行返回参数、TraceID。同一个下发指令对应的响应数据TraceID一致,日志分析平台通过TraceID关联同一个物理设备下发指令对应的响应数据,为后面提取物理设备行为分析数据提供数据源。
ELK是一组开源软件的简称,其包括Elasticsearch、Logstash和Kibana。ELK最近几年发展迅速,已经成为目前最流行的集中式日志解决方案。
在提取物理设备的行为分析数据时,查询同一个物理设备下的所有下发指令日志及响应数据日志,并将这些数据用5级的树状结构进行归类,如图2所示,其中:
1)将物理设备的设备唯一识别号作为树状结构的第一级;
2)获取该物理设备的所有下发指令日志,该日志结构如上所述为JSON,提取指令日志中的指令ID,作为树状结构的第二级;
3)获取指令日志中的指令参数,作为树状结构的第三级;
4)获取指令日志中的指令时间,作为树状结构的第四级;
5)如上所述,每一个设备应答数据有一个TraceID将其与对应的下发指令关联,通过TraceID查询到该下发指令对应的响应数据,用对应的响应数据作为树状结构的第五级。
在一种示例性实施例中,所述设备运行模块102具体用于:
接收运行仿真设备的指令,所述运行仿真设备的指令携带选择的仿真设备的设备唯一识别号;
根据运行仿真设备的指令中携带的仿真设备的设备唯一识别号查询对应的仿真设备基础数据及物理设备的行为分析数据;
根据查询到的仿真设备基础数据及物理设备的行为分析数据进行网络连接及主动上报。
在一种示例性实施例中,所述云端通讯模块103具体用于:
接收云端的下发指令,所述下发指令符合物模型协议定义;
查询物理设备的行为分析数据中是否存在关于该下发指令的响应数据,若有,则提取所述响应数据;
若无,则根据物模型数据生成对应于所述下发指令的响应数据;
向云端发送响应数据。
在一种示例性实施例中,所述根据仿真设备数据向云端发送对应的响应数据,包括:
查询所述仿真设备数据是否包括行为分析数据,若有,则转入第一级查询,若无,则根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第一级查询:解析所述下发指令中的仿真设备所属设备类型,查询行为分析数据树状结构的第一级中是否存在属于相同设备类型的设备标识;若有,继续进行第二级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第二级查询:解析所述下发指令中的指令ID,查询行为分析数据树状结构的第二级中是否存在该指令ID,若有,继续进行第三级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第三级查询:解析所述下发指令中的指令参数,查询行为分析数据树状结构的第三级中是否存在该指令参数,若有,继续进行第四级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第四级查询:解析所述下发指令中的指令时间,查询行为分析数据树状结构的第四级中最接近该指令时间的节点,并进行第五级查询;
第五级查询:获取最接近该指令时间的节点下的响应数据,将其作为最终的响应数据进行上报。
在一种示例性实施例中,所述根据物模型数据生成对应于所述下发指令的响应数据,包括:
解析下发指令中的指令ID,查询物模型中对应该指令的服务定义,校验该指令中的指令参数是否符合服务定义的输入参数标准;
根据所述仿真设备的基础数据,与该指令对应的服务定义的输出参数格式标准,生成对应于该下发指令的响应数据。
在一种示例性实施例中,如图3所示,所述设备仿真系统还包括用户交互模块104,其中:
用户交互模块104,用于接收设备交互指令,根据所述仿真设备数据,执行以下至少一项:向云端发送对应的响应数据、向用户反馈交互结果。
在该实施例中,所述设备交互指令包含仿真设备的设备标识,所述用户交互模块104还用于:
更新所述设备标识对应的仿真设备的基础数据及物模型数据。
如图4所示,本申请还提供了一种设备仿真方法,包括:
步骤401:根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,所述属性定义数据用于描述设备运行的状态数据,所述服务定义数据用于描述设备提供给外部调用的能力或方法,所述事件定义数据用于描述设备运行时,需要被外部感知和处理的通知消息;所述已有物理设备数据包括物理设备的行为分析数据及基础数据,所述行为分析数据从收集的物理设备的行为数据中提取,所述行为数据包括下发指令和响应数据;
在一种示例性实施例中,所述根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据之前,所述方法还包括:
接收创建仿真设备的指令;
当所述创建仿真设备的指令中携带物模型标识,触发所述根据物模型数据创建仿真设备,生成仿真设备数据的操作;
当所述创建仿真设备的指令中携带已有物理设备标识,触发所述根据已有物理设备数据创建仿真设备,生成仿真设备数据的操作。
需要说明的是,理论上不存在创建仿真设备的指令中既携带物模型标识也携带已有物理设备标识的情况。如果存在,优先根据已有物理设备标识来处理,创建已有物理设备的克隆仿真设备。
在一种示例性实施例中,当根据所述物模型数据创建仿真设备时,生成的仿真设备数据包括仿真设备的基础数据和基础数据对应的物模型数据;
当根据已有物理设备数据创建仿真设备时,生成的仿真设备数据包括仿真设备的基础数据、基础数据对应的物模型数据和行为分析数据,其中,仿真设备的基础数据包括设备标识、设备状态,还包括以下一种或多种数据:设备类型、固件类型及数量、各个固件类型对应的固件版本、信号强度、通信方式、通信信息加解密数据、运行数据。
在一种示例性实施例中,所述根据物模型数据创建仿真设备,包括:
接收创建仿真设备的指令,所述创建仿真设备的指令携带选择的物模型标识;
根据创建仿真设备的指令中携带的物模型标识查询对应的物模型数据;
根据物模型数据生成仿真设备数据,所述仿真设备数据包括仿真设备的基础数据(所述基础数据包括唯一识别号数据、信号数据、状态数据、通信方式数据、通信信息加解密数据、运行数据等)、仿真设备对应的物模型值数据(物模型协议对设计的可拓展字段对应的值);
提示仿真设备的创建结果。
在一种示例性实施例中,所述根据物模型数据生成仿真设备数据,包括:
根据仿真设备信息获取设备类型信息、固件类型及数量,并置为初始值;
根据属性定义数据获取仿真设备的属性信息并置为属性定义数据中的初始值,将其关联到该仿真设备数据下,成为该仿真设备的属性数据;
根据产品定义随机生成仿真设备的设备标识;
初始化仿真设备的状态为未开机状态;
将所述仿真设备数据进行持久化。
在本实施例的一示例中,所述持久化可以使用以下任意一种方式:持久化到关系型数据库、持久化到非关系型数据库、持久化到服务器缓存、持久化到文件系统。
在一种示例性实施例中,所述根据已有物理设备数据创建仿真设备,包括:
接收创建仿真设备的指令,所述创建仿真设备的指令携带选择的已有物理设备的设备标识;
根据创建仿真设备的指令中携带的已有物理设备的设备标识查询对应物理设备近期的行为数据以及设备基础数据;
根据物理设备行为数据提取物理设备行为分析数据;
根据物理设备行为分析数据以及设备基础数据,生成仿真设备数据,所述仿真设备数据包括设备基础数据(唯一识别号数据、被克隆设备信号数据、被克隆设备状态数据、被克隆设备通信方式数据、被克隆设备通信信息加解密数据、被克隆设备运行数据等)、仿真设备对应的指令回复数据;
提示仿真设备的创建结果。
在一种示例性实施例中,所述根据物理设备行为数据提取物理设备行为分析数据,包括:
根据创建仿真设备的指令中携带的已有物理设备的设备标识,查询物理设备信息及物理设备的行为数据,所述行为数据为该物理设备对每个下发指令的响应数据或在无下发指令情况下主动上报的数据。具体的查询可以包括以下手段:从关系数据库中查询;从非关系数据库中查询;从服务器缓存中查询;从文件系统中查询;
对该物理设备的行为数据进行分析提取,得到物理设备的行为分析数据。具体的分析提取方法可以为:对不同的下发指令事件值进行第一级归类,并以下发指令事件值作为索引;对同一个下发指令事件值的不同响应结果进行第二级归类,并以响应时间作为索引。
在一种示例性实施例中,所述根据物理设备的行为数据以及设备基础数据,生成仿真设备数据,包括:
获取所述已有物理设备的基础数据,所述基础数据包括以下一种或多种数据:设备类型、固件版本、信号强度、物模型属性数据;
根据产品定义随机生成所述仿真设备的设备标识;
将所述行为分析数据及基础数据关联到所述仿真设备数据上;
初始化所述仿真设备的状态为未开机状态;
将所述仿真设备数据进行持久化。
在一种示例性实施例中,所述根据所述已有物理设备数据创建仿真设备,生成仿真设备数据,包括:
获取所述已有物理设备标识对应的基础数据、行为分析数据和物模型数据;
随机生成所述仿真设备的设备标识;
使用随机生成的设备标识替换已有物理设备的基础数据中的设备标识,使用替换后的基础数据、行为分析数据和物模型数据合并得到所述仿真设备数据,并初始化所述基础数据中的设备状态为未开机状态;
将所述仿真设备数据进行持久化。
在一种示例性实施例中,所述下发指令包括指令时间、指令ID、指令参数、链路跟踪ID;
所述响应数据包括:应答时间、对应的指令ID、对应的指令执行结果、指令执行返回参数和链路跟踪ID,所述链路跟踪ID用于唯一的指示下发指令及其对应的响应数据。
在一种示例性实施例中,所述行为分析数据的存储结构为树状结构,所述树状结构的第一级为设备标识,第二级为所述设备标识关联的指令中的指令ID,第三级为所述设备标识关联的指令中的指令参数,第四级为所述设备标识关联的指令中的指令时间,第五级为所述设备标识关联的指令对应的响应数据。
需要说明的是,在收集物理设备的行为数据时,可以通过ELK收集该物理设备近期所有的下发指令日志及响应数据日志,日志格式为JSON,下发指令格式为指令时间、指令ID、指令参数、链路跟踪ID(TraceID);响应数据格式为应答时间、对应的指令ID、对应的指令执行结果、指令执行返回参数、TraceID。同一个下发指令对应的响应数据TraceID一致,日志分析平台通过TraceID关联同一个物理设备下发指令对应的响应数据,为后面提取物理设备行为分析数据提供数据源。
在提取物理设备的行为分析数据时,查询同一个物理设备下的所有下发指令日志及响应数据日志。将这些数据用5级的树状结构进行归类,其中:
1)将物理设备的设备标识作为树状结构的第一级;
2)获取该物理设备的所有下发指令日志,该日志结构如上所述为JSON,提取指令日志中的指令ID,作为树状结构的第二级;
3)获取指令日志中的指令参数,作为树状结构的第三级;
4)获取指令日志中的指令时间,作为树状结构的第四级;
5)如上所述,每一个设备应答数据有一个TraceID将其与对应的下发指令关联,通过TraceID查询到该下发指令对应的响应数据,用对应的响应数据作为树状结构的第五级。
步骤402:接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报;
在一种示例性实施例中,当根据所述已有物理设备数据创建仿真设备,生成仿真设备数据之后,所述根据所述仿真设备数据与云端进行网络连接及主动上报,包括:根据所述仿真设备的基础数据和所述基础数据对应的行为分析数据,与云端进行网络连接及主动上报;
所述根据所述仿真设备数据向云端发送对应的响应数据,包括:根据所述仿真设备的基础数据和所述基础数据对应行为分析数据向云端发送对应的响应数据。
在接收到运行仿真设备的指令时,优先选择根据已有物理设备数据与云端进行网络连接及主动上报,当没有已有物理设备数据时,选择根据物模型数据与云端进行网络连接及主动上报。
步骤403:接收云端的下发指令,根据所述仿真设备数据向云端发送对应的响应数据。
在一种示例性实施例中,当根据所述已有物理设备数据创建仿真设备,生成仿真设备数据之后,所述根据所述仿真设备数据向云端发送对应的响应数据,包括:根据所述仿真设备的基础数据和所述基础数据对应行为分析数据向云端发送对应的响应数据。
在接收到云端的下发指令时,优先选择根据已有物理设备数据向云端发送对应的响应数据,当没有已有物理设备数据时,选择根据物模型数据向云端发送对应的响应数据。
在一种示例性实施例中,所述步骤403具体包括:
接收云端的下发指令,所述下发指令符合物模型协议定义;
查询物理设备的行为分析数据中是否存在关于该下发指令的响应数据,若有,则提取所述响应数据;
若无,则根据物模型数据生成对应于所述下发指令的响应数据;
向云端发送响应数据。
在一种示例性实施例中,所述根据仿真设备数据向云端发送对应的响应数据,包括:
查询所述仿真设备数据是否包括行为分析数据,若有,则转入第一级查询,若无,则根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第一级查询:解析所述下发指令中的仿真设备所属设备类型,查询行为分析数据树状结构的第一级中是否存在属于相同设备类型的设备标识;若有,继续进行第二级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第二级查询:解析所述下发指令中的指令ID,查询行为分析数据树状结构的第二级中是否存在该指令ID,若有,继续进行第三级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第三级查询:解析所述下发指令中的指令参数,查询行为分析数据树状结构的第三级中是否存在该指令参数,若有,继续进行第四级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第四级查询:解析所述下发指令中的指令时间,查询行为分析数据树状结构的第四级中最接近该指令时间的节点,并进行第五级查询;
第五级查询:获取最接近该指令时间的节点下的响应数据,将其作为最终的响应数据进行上报。
在一种示例性实施例中,所述根据物模型数据生成对应于所述下发指令的响应数据,包括:
解析下发指令中的指令ID,查询物模型中对应该指令的服务定义,校验该指令中的指令参数是否符合服务定义的输入参数标准;
根据所述仿真设备的基础数据,与该指令对应的服务定义的输出参数格式标准,生成对应于该下发指令的响应数据。
在一种示例性实施例中,所述方法还包括:
接收设备交互指令,所述设备交互指令包含仿真设备的设备标识,根据所述仿真设备数据,执行以下至少一项:向云端发送对应的响应数据、向用户反馈交互结果。
在该实施例中,所述方法还包括:
更新所述设备标识对应的仿真设备的基础数据及物模型数据。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如以上任一项所述的设备仿真方法的步骤。
本申请还提供了一种设备仿真系统,包括处理器及存储器,其中:所述处理器用于执行存储器中存储的程序,以实现如以上任一项所述的设备仿真方法的步骤。
具体实施例一:
根据本申请的一种根据物模型数据创建仿真设备的方法及系统,具体包括以下步骤:
用户打开网页查看所有用户权限允许的物模型列表信息;或用户通过手机客户端查看所有用户权限允许的物模型列表信息;
在用户查看所有物模型前,还包括:用户登录,用户权限校验;
用户选择某个物模型,点击某个物模型详情页上的创建仿真设备按钮;或者点击创建仿真设备按钮后,提示用户选择仿真设备创建方式,用户选择根据物模型创建后,提示用户选择某个物模型,用户选择完成后,点击确认;
根据用户的唯一识别号判断用户是否有该仿真设备的创建权限,若没有权限,则返回客户端用户没有权限创建此仿真设备,若有权限,则继续处理创建仿真设备的指令;
根据物模型的唯一识别号查询物模型信息,具体的查询可以包括以下手段:从关系数据库中查询;从非关系数据库中查询;从服务器缓存中查询;从文件系统中查询;
执行仿真设备的创建,初始化仿真设备的基础属性,根据物模型协议模版填充初始化模版数据,并进行持久化,持久化可以包括以下手段:持久化到关系型数据库、持久化到非关系型数据库、持久化到服务器缓存、持久化到文件系统;
客户端在接收到创建结果后,可以通过以下手段提示用户:弹窗提示创建成功;直接跳转到新创建的仿真设备详情页面。
用户选择某个仿真设备信息,点击某个仿真设备详情页上的仿真设备启动按钮;
根据仿真设备的基础数据及物模型定义的协议数据进行网络连接及交互通讯;
进行网络连接的手段可以包括:通过消息队列遥测传输(Message QueuingTelemetry Transport,MQTT)与物联网云端建立连接;通过套接字(Socket)与物联网云端建立连接。连接所需的目标服务器地址及连接密码包含在仿真设备基础数据中;
进行交互通讯的手段可以包括:通过网络心跳保持仿真设备在线;通过接收下发事件并进行数据响应;通过主动上报数据;
完成仿真设备的运行工作后,可以通过以下手段提示用户:弹窗提示创建成功;改变仿真设备状态标识。
假设该仿真设备为仿真的共享充电宝设备。那么用户通过手机共享充电宝租借客户端扫描仿真共享充电宝设备详情页上的设备唯一二维码,进行充电宝租借;
共享充电宝仿真设备运行系统接收到来自云端的下发指令,并判断该共享充电宝仿真设备是否为根据物模型创建;
根据共享充电宝设备的物模型协议解析下发指令,根据共享充电宝仿真设备基础数据及共享充电宝仿真设备的物模型数据生成对应于下发指令的响应数据;
具体可以包括:查询物模型数据中设备仓位是否有充电宝,若无则直接生成租借失败的响应数据。若有,则继续查询物模型数据中设备仓位中充电宝的电量,若电量低则直接生成租借失败的响应数据,若电量高,修改物模型数据中该仓位的充电宝状态为待取走,并生成解锁成功的响应数据;
云端在接收到仿真设备系统发送的上述响应数据,提示用户租借结果。可以包括以下手段:弹窗提示用户某个仓位解锁成功,等待取走;页面动画展示或者声音提示仿真共享充电宝设备某个仓位解锁成功。
用户根据页面提示,点击页面的共享充电宝取走按钮;
仿真共享充电宝设备接收到用户充电宝取走指令,修改仿真共享充电宝的数据,并向云端发送用户取走结果;
云端接收到仿真共享充电宝用户取走的结果,进行用户订单处理,并向用户手机客户端发送取走结果,手机客户端提示用户租借成功。
具体实施例二:
根据本申请的一种根据已有物理设备创建仿真设备的方法及系统,具体包括以下步骤:
用户打开网页查看所有用户权限允许的物理设备列表信息;或用户通过手机客户端查看所有用户权限允许的物理设备列表信息;
在用户查看所有设备信息前,还包括:用户登录,用户权限校验;
用户选择某个物理设备信息,点击某个物理设备详情页上的创建仿真设备按钮;或者点击创建仿真设备按钮后,提示用户选择仿真设备创建方式,用户选择根据物理设备创建后,提示用户选择实际设备,用户选择完成后,点击确认;
根据用户的唯一识别号判断用户是否有该仿真设备的创建权限,若没有权限,则返回客户端用户没有权限创建此仿真设备,若有权限,则继续处理创建仿真设备的指令;
根据创建仿真设备的指令中携带的已有物理设备的设备标识,查询物理设备信息及物理设备的近期行为数据,所述的行为数据为该物理设备对每个下发指令的响应数据或在无下发指令情况下主动上报的数据。具体的查询可以包括以下手段:从关系数据库中查询;从非关系数据库中查询;从服务器缓存中查询;从文件系统中查询;
对该物理设备的近期行为数据进行分析提取,具体的提取方法可以为:对不同的下发指令事件值进行第一级归类,并以下发指令事件值作为索引;对同一个下发指令事件值的不同响应结果进行第二级归类,并以响应时间作为索引;
执行仿真设备的创建,初始化仿真设备的基础属性,根据物理设备所属的物模型协议模版填充初始化模版数据,初始化设备行为分析数据,并进行持久化,持久化可以包括以下手段:持久化到关系型数据库、持久化到非关系型数据库、持久化到服务器缓存、持久化到文件系统;
客户端在接收到创建结果后,可以通过以下手段提示用户:弹窗提示创建成功;直接跳转到新创建的仿真设备详情页面。
用户选择某个仿真设备信息,点击某个仿真设备详情页上的仿真设备启动按钮;
根据仿真设备的基础数据及物理设备的行为分析数据进行网络连接及交互通讯;
进行网络连接的手段可以包括:通过MQTT与物联网云端建立连接;通过Socket与物联网云端建立连接。连接所需的目标服务器地址及连接密码包含在仿真设备基础数据中;
进行交互通讯的手段可以包括:通过网络心跳保持仿真设备在线;通过接收下发事件并进行数据响应;通过主动上报数据;
完成仿真设备的运行工作后,可以通过以下手段提示用户:弹窗提示创建成功;改变仿真设备状态标识。
假设该仿真设备为仿真的共享充电宝设备。那么用户通过手机共享充电宝租借客户端扫描仿真共享充电宝设备详情页上的设备唯一二维码,进行充电宝租借;
共享充电宝仿真设备运行系统接收到来自云端的下发指令,并判断该共享充电宝仿真设备是否为根据已有物理设备创建;
根据共享充电宝仿真设备基础数据、物理设备行为分析数据、物模型数据生成与下发指令对应的响应数据。
具体可以包括:首先判断行为分析数据中是否存在该下发指令对应的响应数据。若不存在,则按照实施例一的处理方式直接根据物模型生成响应数据。若存在,则根据行为分析数据的第一级索引查询所有关于该下发指令的响应数据,若所有响应数据都为充电宝解锁成功,则直接获取该响应数据。若所有响应数据都为充电宝解锁失败,则直接获取该响应数据。若响应数据中既有解锁成功也有解锁失败,则继续根据行为分析数据的第二级索引查询出离当前时间最接近的响应数据;
云端在接收到仿真设备系统发送的上述响应数据,提示用户租借结果。可以包括以下手段:弹窗提示用户某个仓位解锁成功,等待取走;页面动画展示或者声音提示仿真共享充电宝设备某个仓位解锁成功。
用户根据页面提示,点击页面的共享充电宝取走按钮;
仿真共享充电宝设备接收到用户充电宝取走指令,修改仿真共享充电宝的数据,并向云端发送用户取走结果;
云端接收到仿真共享充电宝用户取走的结果,进行用户订单处理,并向用户手机客户端发送取走结果,手机客户端提示用户租借成功。
本申请提供了一种物联网平台的通用设备仿真方法及系统,解决了由于现有技术没有提供物联网设备研发、上线过程中硬件与云端对接周期长、无法在硬件设计过程中及时暴露业务缺陷的问题。通过仿真设备模拟真实设备与物联网平台建立连接、上报事件及属性,云端开发者可以根据仿真设备快速进入开发过程,完成应用调试,无需等待硬件开发者完成硬件开发。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (10)
1.一种设备仿真方法,其特征在于,包括:
根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,所述属性定义数据用于描述设备运行的状态数据,所述服务定义数据用于描述设备提供给外部调用的能力或方法,所述事件定义数据用于描述设备运行时,需要被外部感知和处理的通知消息;所述已有物理设备数据包括物理设备的行为分析数据及基础数据,所述行为分析数据从收集的物理设备的行为数据中提取,所述行为数据包括下发指令和响应数据;
接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报;
接收云端的下发指令,根据所述仿真设备数据向云端发送对应的响应数据。
2.根据权利要求1所述的设备仿真方法,其特征在于,所述根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据之前,所述方法还包括:
接收创建仿真设备的指令;
当所述创建仿真设备的指令中携带物模型标识,触发所述根据物模型数据创建仿真设备,生成仿真设备数据的操作;
当所述创建仿真设备的指令中携带已有物理设备标识,触发所述根据已有物理设备数据创建仿真设备,生成仿真设备数据的操作。
3.根据权利要求2所述的设备仿真方法,其特征在于,当根据所述物模型数据创建仿真设备时,生成的所述仿真设备数据包括所述仿真设备的基础数据和所述基础数据对应的物模型数据;
当根据所述已有物理设备数据创建仿真设备时,生成的所述仿真设备数据包括所述仿真设备的基础数据、所述基础数据对应的物模型数据和行为分析数据,其中,所述仿真设备的基础数据包括设备标识、设备状态,还包括以下一种或多种数据:设备类型、固件类型及数量、各个固件类型对应的固件版本、信号强度、通信方式、通信信息加解密数据、运行数据。
4.根据权利要求3所述的设备仿真方法,其特征在于,所述根据所述已有物理设备数据创建仿真设备,生成仿真设备数据,包括:
获取所述已有物理设备标识对应的基础数据、行为分析数据和物模型数据;
随机生成所述仿真设备的设备标识;
使用随机生成的设备标识替换已有物理设备的基础数据中的设备标识,使用替换后的基础数据、行为分析数据和物模型数据合并得到所述仿真设备数据,并初始化所述基础数据中的设备状态为未开机状态;
将所述仿真设备数据进行持久化。
5.根据权利要求1所述的设备仿真方法,其特征在于,所述下发指令包括指令时间、指令ID、指令参数和链路跟踪ID;
所述响应数据包括:应答时间、对应的指令ID、对应的指令执行结果、指令执行返回参数和链路跟踪ID,其中,所述链路跟踪ID用于唯一的指示所述下发指令及其对应的所述响应数据。
6.根据权利要求5所述的设备仿真方法,其特征在于,所述行为分析数据的存储结构为树状结构,所述树状结构的第一级为设备标识,第二级为所述设备标识关联的指令中的指令ID,第三级为所述设备标识关联的指令中的指令参数,第四级为所述设备标识关联的指令中的指令时间,第五级为所述设备标识关联的指令对应的响应数据。
7.根据权利要求6所述的设备仿真方法,其特征在于,所述根据仿真设备数据向云端发送对应的响应数据,包括:
查询所述仿真设备数据是否包括行为分析数据,若有,则转入第一级查询,若无,则根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第一级查询:解析所述下发指令中的仿真设备所属设备类型,查询行为分析数据树状结构的第一级中是否存在属于相同设备类型的设备标识;若有,继续进行第二级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第二级查询:解析所述下发指令中的指令ID,查询行为分析数据树状结构的第二级中是否存在该指令ID,若有,继续进行第三级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第三级查询:解析所述下发指令中的指令参数,查询行为分析数据树状结构的第三级中是否存在该指令参数,若有,继续进行第四级查询,若无,直接根据所述物模型数据生成对应于所述下发指令的响应数据并发送;
第四级查询:解析所述下发指令中的指令时间,查询行为分析数据树状结构的第四级中最接近该指令时间的节点,并进行第五级查询;
第五级查询:获取最接近该指令时间的节点下的响应数据,将其作为最终的响应数据进行上报。
8.根据权利要求1至7任一所述的设备仿真方法,其特征在于,所述接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报之后,所述方法还包括:
接收设备交互指令,根据所述仿真设备数据,执行以下至少一项:向云端发送对应的响应数据、向用户反馈交互结果。
9.一种设备仿真系统,其特征在于,包括:设备创建模块、设备运行模块和云端通讯模块,其中:
设备创建模块,用于根据物模型数据或已有物理设备数据创建仿真设备,生成仿真设备数据,其中:所述物模型数据包括设备的属性、服务和事件定义数据,所述属性定义数据用于描述设备运行的状态数据,所述服务定义数据用于描述设备提供给外部调用的能力或方法,所述事件定义数据用于描述设备运行时,需要被外部感知和处理的通知消息;所述已有物理设备数据包括物理设备的行为分析数据及基础数据,所述行为分析数据从收集的物理设备的行为数据中提取,所述行为数据包括下发指令和响应数据;
设备运行模块,用于接收运行仿真设备的指令,根据所述仿真设备数据与云端进行网络连接及主动上报;
云端通讯模块,用于接收云端的下发指令,根据所述仿真设备数据向云端发送对应的响应数据。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至权利要求8中任一项所述的设备仿真方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910801079.0A CN110598280B (zh) | 2019-08-28 | 2019-08-28 | 一种设备仿真系统和方法、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910801079.0A CN110598280B (zh) | 2019-08-28 | 2019-08-28 | 一种设备仿真系统和方法、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110598280A true CN110598280A (zh) | 2019-12-20 |
CN110598280B CN110598280B (zh) | 2023-06-16 |
Family
ID=68855944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910801079.0A Active CN110598280B (zh) | 2019-08-28 | 2019-08-28 | 一种设备仿真系统和方法、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110598280B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112612475A (zh) * | 2020-12-25 | 2021-04-06 | 四川长虹电器股份有限公司 | 一种实现物联设备仿真的方法 |
CN112614403A (zh) * | 2020-12-25 | 2021-04-06 | 深圳市小喵科技有限公司 | 硬件仿真方法及装置 |
CN112714193A (zh) * | 2021-03-26 | 2021-04-27 | 深圳佳兆业科技集团有限公司 | 基于物联网平台的社区数据处理系统、方法、装置和设备 |
CN112783717A (zh) * | 2020-12-25 | 2021-05-11 | 三盟科技股份有限公司 | 一种物模型管理方法、系统、计算机设备及存储介质 |
CN113206763A (zh) * | 2021-05-26 | 2021-08-03 | 国网山东省电力公司电力科学研究院 | 一种适应于物联管理平台的仿真测试系统及方法 |
CN113407533A (zh) * | 2021-05-31 | 2021-09-17 | 江闻文 | 仿真数据的存储方法、装置、电子设备及存储介质 |
CN113904944A (zh) * | 2021-09-28 | 2022-01-07 | 中通服创立信息科技有限责任公司 | 一种基于规则引擎实现物联网仿真数据生成的系统及方法 |
CN114338800A (zh) * | 2022-03-08 | 2022-04-12 | 杭州义益钛迪信息技术有限公司 | 数据流组态方法、装置、电子设备及存储介质 |
CN114936062A (zh) * | 2021-12-09 | 2022-08-23 | 腾讯科技(深圳)有限公司 | 一种设备自动调试的方法、装置、设备、系统及存储介质 |
CN116069673A (zh) * | 2023-04-06 | 2023-05-05 | 禾多科技(北京)有限公司 | 仿真应用运行控制方法、装置、电子设备和介质 |
CN116662298A (zh) * | 2023-05-23 | 2023-08-29 | 中船奥蓝托无锡软件技术有限公司 | 一种多学科协同仿真数据管理方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440384A (zh) * | 2013-09-04 | 2013-12-11 | 上海东方申信科技发展有限公司 | 支持船舶建造过程仿真的树形目录结构数据及仿真系统 |
CN103714214A (zh) * | 2013-12-30 | 2014-04-09 | 上海市机械施工集团有限公司 | 盾构机组合仿真设备和仿真方法 |
CN105045650A (zh) * | 2015-07-17 | 2015-11-11 | 中国电子科技集团公司电子科学研究院 | 一种基于元数据的仿真资源构建方法及装置 |
US20170364612A1 (en) * | 2016-06-15 | 2017-12-21 | International Business Machines Corporation | Simulation of internet of things environment |
CN107671857A (zh) * | 2017-10-11 | 2018-02-09 | 上海交通大学 | 用于服务机器人操作演示与算法验证的三维仿真平台 |
CN109326003A (zh) * | 2018-11-28 | 2019-02-12 | 哈工大机器人(合肥)国际创新研究院 | 一种基于虚拟仿真的工厂三维监控系统 |
-
2019
- 2019-08-28 CN CN201910801079.0A patent/CN110598280B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440384A (zh) * | 2013-09-04 | 2013-12-11 | 上海东方申信科技发展有限公司 | 支持船舶建造过程仿真的树形目录结构数据及仿真系统 |
CN103714214A (zh) * | 2013-12-30 | 2014-04-09 | 上海市机械施工集团有限公司 | 盾构机组合仿真设备和仿真方法 |
CN105045650A (zh) * | 2015-07-17 | 2015-11-11 | 中国电子科技集团公司电子科学研究院 | 一种基于元数据的仿真资源构建方法及装置 |
US20170364612A1 (en) * | 2016-06-15 | 2017-12-21 | International Business Machines Corporation | Simulation of internet of things environment |
CN107671857A (zh) * | 2017-10-11 | 2018-02-09 | 上海交通大学 | 用于服务机器人操作演示与算法验证的三维仿真平台 |
CN109326003A (zh) * | 2018-11-28 | 2019-02-12 | 哈工大机器人(合肥)国际创新研究院 | 一种基于虚拟仿真的工厂三维监控系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112612475A (zh) * | 2020-12-25 | 2021-04-06 | 四川长虹电器股份有限公司 | 一种实现物联设备仿真的方法 |
CN112614403A (zh) * | 2020-12-25 | 2021-04-06 | 深圳市小喵科技有限公司 | 硬件仿真方法及装置 |
CN112612475B (zh) * | 2020-12-25 | 2022-03-15 | 四川长虹电器股份有限公司 | 一种实现物联设备仿真的方法 |
CN112783717A (zh) * | 2020-12-25 | 2021-05-11 | 三盟科技股份有限公司 | 一种物模型管理方法、系统、计算机设备及存储介质 |
CN112714193B (zh) * | 2021-03-26 | 2021-07-13 | 深圳佳兆业科技集团有限公司 | 基于物联网平台的社区数据处理系统、方法、装置和设备 |
CN112714193A (zh) * | 2021-03-26 | 2021-04-27 | 深圳佳兆业科技集团有限公司 | 基于物联网平台的社区数据处理系统、方法、装置和设备 |
CN113206763A (zh) * | 2021-05-26 | 2021-08-03 | 国网山东省电力公司电力科学研究院 | 一种适应于物联管理平台的仿真测试系统及方法 |
CN113407533A (zh) * | 2021-05-31 | 2021-09-17 | 江闻文 | 仿真数据的存储方法、装置、电子设备及存储介质 |
CN113904944A (zh) * | 2021-09-28 | 2022-01-07 | 中通服创立信息科技有限责任公司 | 一种基于规则引擎实现物联网仿真数据生成的系统及方法 |
CN114936062A (zh) * | 2021-12-09 | 2022-08-23 | 腾讯科技(深圳)有限公司 | 一种设备自动调试的方法、装置、设备、系统及存储介质 |
WO2023103248A1 (zh) * | 2021-12-09 | 2023-06-15 | 腾讯科技(深圳)有限公司 | 一种设备自动调试的方法、装置、设备、系统及存储介质 |
CN114936062B (zh) * | 2021-12-09 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 一种设备自动调试的方法、装置、设备、系统及存储介质 |
CN114338800A (zh) * | 2022-03-08 | 2022-04-12 | 杭州义益钛迪信息技术有限公司 | 数据流组态方法、装置、电子设备及存储介质 |
CN116069673A (zh) * | 2023-04-06 | 2023-05-05 | 禾多科技(北京)有限公司 | 仿真应用运行控制方法、装置、电子设备和介质 |
CN116662298A (zh) * | 2023-05-23 | 2023-08-29 | 中船奥蓝托无锡软件技术有限公司 | 一种多学科协同仿真数据管理方法 |
CN116662298B (zh) * | 2023-05-23 | 2024-01-02 | 中船奥蓝托无锡软件技术有限公司 | 一种多学科协同仿真数据管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110598280B (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110598280B (zh) | 一种设备仿真系统和方法、计算机可读存储介质 | |
US11150874B2 (en) | API specification generation | |
CA3091405A1 (en) | Model training system and method, and storage medium | |
CN110162976B (zh) | 风险评估方法、装置及终端 | |
CN105827683A (zh) | 一种数据同步的方法、服务器及电子设备 | |
CN114791846B (zh) | 一种针对云原生混沌工程实验实现可观测性的方法 | |
CN111177483A (zh) | 终端设备的识别方法、设备及计算机可读存储介质 | |
CN107784068A (zh) | 数据变化的获取方法、装置、存储介质、处理器及服务端 | |
CN116107589B (zh) | 软件代码的自动编译方法、装置、设备及存储介质 | |
CN112925757A (zh) | 一种追踪智能设备操作日志的方法、设备、存储介质 | |
CN110716743A (zh) | 一种适合多方协作开发的聚合api开发方法及系统 | |
CN111177481B (zh) | 用户标识映射方法及装置 | |
CN106251114A (zh) | 应用中实现审批的方法和装置 | |
CN109711656B (zh) | 多系统关联预警方法、装置、设备及计算机可读存储介质 | |
CN106257520A (zh) | 解析应答方法及系统 | |
CN102932239B (zh) | 即时通信平台中的通讯方法和系统 | |
CN113971191A (zh) | 一种数据导入方法、装置和计算机可读存储介质 | |
CN111144987A (zh) | 异常购物行为的限制方法、限制组件及购物系统 | |
CN110300371B (zh) | 一种基于物联网设备行为的计算机设备管理方法 | |
CN116451191A (zh) | 信息审核方法、装置、电子设备和计算机可读存储介质 | |
CN112436969A (zh) | 一种物联网设备管理方法、系统、设备及介质 | |
CN112948804A (zh) | 一种程序控制方法、装置和计算机可读存储介质 | |
CN110515905A (zh) | 一种路由的配置的方法、装置以及服务器 | |
CN114816965A (zh) | 一种数据验证方法及装置 | |
CN106775629B (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 |