用于提供物联网平台服务的方法和服务器装置与流程

文档序号:20890566发布日期:2020-05-26 17:53阅读:204来源:国知局
本公开在一些实施方式中涉及一种用于提供物联网平台服务的方法和服务器装置。
背景技术
::此部分中的声明仅提供与本公开有关的背景信息,而未必构成现有技术。iot平台服务是提供物联网(iot)服务的开发或操作所需的公共功能的服务。利用平台所提供的功能,iot服务开发者可更快速和容易地开发和操作其服务。另外,iot服务用户可管理事物的连接并监测平台上的状态,从而允许稳定的服务利用。iot平台聚焦于管理iot装置与应用服务器之间的连接并在iot装置与应用服务器之间稳定地发送数据,以实现稳定的iot服务操作。在传统开发的iot平台中,由于仅同步提供iot装置的当前状态并且仅执行使用当前状态的简单规则处理,所以对平台上使用iot装置开发服务存在限制。为了提供涉及多个装置的数据或过去数据的复杂且实用的服务,应用服务器需要存储和处理数据,这需要附加开发过程。技术实现要素:技术问题本公开在一些实施方式中寻求提供一种能够通过在平台中管理iot装置的数据来提供各种数据处理功能的iot平台服务方法和设备。本公开的另一实施方式在于提供一种可通过使用装置描述符定义和管理iot装置的数据来提供各种便利功能和数据处理功能的iot平台服务方法和设备。技术方案本公开的至少一个方面提供一种提供物联网(iot)平台服务的方法,该方法包括以下步骤:生成与一个或更多个iot装置中的每一个对应的影子装置(shadowdevice);接收iot装置的状态信息并且每次状态信息更新时将状态信息存储在影子装置中;以及基于影子装置中存储的状态信息来执行预定操作。本公开的另一方面提供一种iot平台服务服务器设备,该iot平台服务服务器设备包括通信单元、影子装置管理器和规则引擎。通信单元被配置为与一个或更多个iot装置通信。影子装置管理器被配置为执行控制以生成与各个iot装置对应的影子装置,并且接收iot装置的状态信息并且每次状态信息更新时将状态信息存储在影子装置中。规则引擎被配置为使用影子装置中存储的状态信息来确定是否满足预定规则条件。本公开的另一方面提供一种提供物联网(iot)平台服务的方法,该方法包括以下步骤:注册多个装置的共同特征的规范(以下,称为“装置描述符”);从一个或更多个iot装置接收连接请求;生成与各个iot装置对应的影子装置;从iot装置接收数据;以及基于从iot装置接收的数据来更新影子装置的状态。本公开的另一方面提供一种iot平台服务服务器设备,该iot平台服务服务器设备包括注册单元、通信单元和虚拟化单元。注册单元被配置为注册多个装置的共同特征的规范(以下,称为“装置描述符”)。通信单元被配置为与一个或更多个iot装置通信。虚拟化单元被配置为在iot平台服务服务器设备的服务器上生成与各个iot装置对应的影子装置,并且基于从iot装置接收的数据来更新影子装置的状态。有益效果如上所述,根据本公开的一些实施方式,可在iot平台内管理和处理iot装置的数据,从而提供各种iot服务。另外,根据本公开的一些实施方式,可定义并提供各种规则以能够在iot平台内执行,由此在不涉及应用服务器的情况下容易且快速地提供实时数据处理。另外,根据本公开的实施方式,即使iot装置暂时与互联网断开,仍可检索iot装置的状态信息,存储要发送给iot装置的命令,并且一旦连接恢复就将该同一命令传送至iot装置,由此提供iot服务的稳定操作。另外,根据本公开的实施方式,可使用iot平台的装置描述符来确定从iot装置接收的数据的语义,从而方便连接到各种规则。另外,根据本公开的实施方式,可使用iot平台的装置描述符来确定从iot装置接收的数据的语义,从而方便与外部分析服务的链接。另外,根据本公开的实施方式,可使用iot平台的装置描述符来容易地确定是否错过从iot装置接收的数据。另外,根据本公开的实施方式,可使用iot平台的装置描述符来容易地确定从iot装置接收的数据中是否存在错误。另外,根据本公开的实施方式,可使用iot平台的装置描述符来统一管理从iot装置接收的数据,从而在针对具有共同性质或特征的装置开发iot服务时减少开发时间。附图说明图1是根据本公开的一些实施方式的iot平台系统的结构的示意性框图。图2是根据本公开的至少一个方面的iot装置的配置的框图。图3是根据本公开的至少一个方面的iot平台服务器的配置的框图。图4是示出根据本公开的至少一个方面的在iot平台系统中基于规则引擎的iot装置控制方法的流程图。图5是示出根据本公开的至少一个方面的在iot平台系统中由应用服务器控制iot装置的方法的流程图。图6是根据本公开的另一方面的iot平台服务器的框图。图7是详细示出根据本公开的另一方面的iot系统的结构的框图。图8是示出根据本公开的另一方面的提供iot平台服务的方法的流程图。具体实施方式以下,将参照附图详细描述本公开的一些实施方式。在以下描述中,尽管元件示出于不同的图中,相似的标号指代相似的元件。此外,在一些实施方式的以下描述中,为了清晰并且为了简明,将省略包含在其中的已知功能和配置的详细描述。另外,使用诸如第一、第二、a、b、(a)、(b)等的各种术语仅是为了将一个组件与另一组件相区分,而非暗指或暗示组件的物质、次序或顺序。贯穿本说明书,当部件“包括”或“包含”组件时,除非具体地相反说明,否则该部件意在还包括其它组件,而非排除其它组件。诸如“单元”、“模块”等的术语表示可由硬件、软件或其组合实现的用于处理至少一个功能或操作的一个或更多个单元。下面将参照附图给出的详细描述旨在说明本公开的示例性实施方式,而非旨在表示可实践本公开的仅有实施方式。图1是根据本公开的一些实施方式的iot平台系统的结构的示意性框图。如图1所示,根据一些实施方式的iot平台系统100包括通过通信网络彼此互通(interwork)的至少一个iot装置110、iot平台服务器130和应用服务器150。在这种情况下,iot装置110到通信网络的连接包括iot装置110使用短距离无线通信技术连接到无线接入装置(未示出)并连接到通信网络的情况。短距离无线通信技术可包括诸如wi-fi、zigbee、蓝牙和nfc(近场通信)方案的通信技术。无线接入装置被设置为根据对应短距离无线通信标准搜索存在于通信覆盖范围内的iot装置110,与发现的iot装置110建立连接,然后与iot平台服务器130执行连接建立以及数据发送和接收。在一些实施方式中,iot平台系统100的各个组件通过其彼此互通的通信网络总体上指各种类型的已建立通信网络,例如包括局域网(lan)、广域网(wan)等的封闭网络、诸如互联网的开放网络以及包括码分多址(cdma)、宽带码分多址(wcdma)、全球移动通信系统(gsm)、长期演进(lte)等的移动通信网络和wi-fi网络,更不用说其它当前可用或即将到来的下一代网络和计算网络实现方式。iot装置110是具有传感器功能和通信功能并连接到通信网络以发送和接收数据的装置。iot装置110可被实现为诸如家用电器、移动设备和可穿戴计算机的各种嵌入式系统。iot装置110通过通信网络连接到iot平台服务器130,并将诸如状态信息或感测信息的数据发送到iot平台服务器130以应来自iot平台服务器130的控制命令执行预定功能。在这种情况下,iot装置110可访问执行短距离无线通信的无线接入装置(未示出)以建立连接,然后通过无线接入装置访问iot平台服务器130。iot平台服务器130是用于提供基于iot的服务的平台设备。iot平台服务器130提供注册和认证iot装置110、收集和管理iot装置110的数据以及控制iot装置110的功能以及其它功能。iot服务的开发者可利用iot平台服务器130所提供的这些功能来开发各种基于iot的服务。另外,通过iot平台服务器130,用户可管理和监测iot装置110的连接和操作控制以用于物联网服务。应用服务器150连接到iot平台服务器130,并且用于使用经由iot平台服务器130发送的iot装置110的各种类型的信息来管理和控制各个应用程序的独特服务。可存在多个应用服务器150,并且它们可通过各个服务器提供用于智能家居、智能汽车和其它智能服务的各种应用服务。具体地,本公开的应用服务器150通过iot平台服务器130收集iot装置110的各种信息,并通过iot平台服务器130将对应控制信息发送到iot装置110。图2是根据本公开的至少一个方面的iot装置的配置的框图。如图2所示,iot装置110可包括存储单元210、控制单元230和无线通信单元250。图2所示的组件可被分别实现为硬件芯片,或者它们可实现于软件中以使得微处理器执行与各个组件对应的软件功能。存储单元210存储iot装置110的操作所需的程序和数据。存储单元210可存储由iot装置110以预定间隔收集的诸如感测信息或状态信息的数据。另外,存储单元210可存储用于在iot装置110中执行处理(例如,感测信息或状态信息的收集和传输)的程序。控制单元230是用于控制iot装置110的装置。控制单元230包括用于执行被设计为实现根据本公开的一些实施方式的特征的计算机程序的处理器,从而通过与iot平台服务器130的互通和远程控制命令的执行来处理感测信息和状态信息的收集和传输。无线通信单元250被配置为通过通信网络发送和接收数据,并且它可通过各种通信方案以及有线方法和无线方法来发送和接收数据。无线通信单元250可通过通信网络与iot平台服务器130建立通信会话,由此发送和接收iot服务所需的数据。在本公开的至少一个实施方式中,为了使iot装置110连接到通信网络,无线通信单元250可按短距离无线通信方法连接到无线接入装置以发送和接收数据。例如,一旦无线通信单元250根据诸如wi-fi、zigbee和蓝牙的短距离无线通信标准经过发现、认证和组合处理之后连接到无线接入装置,它就可向无线接入装置发送数据以及从其接收数据。图3是根据本公开的至少一个方面的iot平台服务器的配置的框图。如图3所示,iot平台服务器130可包括通信单元310、控制单元320、影子装置管理器330、影子装置340、规则引擎350和用户接口360。如图3所示的组件可被分别实现为硬件芯片,或者它们可实现于软件中以使得微处理器执行与各个组件对应的软件功能。通信单元310被配置为通过通信网络发送和接收数据,并且可通过各种通信方法以及有线和无线方法来发送和接收数据。通信单元310可与通过通信网络访问的iot装置110或应用服务器150建立通信会话,由此向iot装置110或用户应用服务器150发送数据/从其接收数据。控制单元320是用于控制总体iot平台服务的配置,其可根据服务算法来注册多个iot装置110,并且可管理和处理从注册的iot装置110发送的数据。另外,应应用服务器150的请求,控制单元320搜索并提供数据,或者它控制影子装置管理器330发送/接收数据以使得所接收的命令可被发送到相关iot装置110。为了安全起见,控制单元320检查iot装置110和应用服务器150对认证和请求的权限,并且根据所确认的权限,控制单元320处理从iot装置110和应用服务器150发送的请求或数据。影子装置管理器330可管理iot装置110与一个或更多个影子装置340之间的匹配信息,并且它可存储和管理分别与iot装置110对应的影子装置340的数据。应iot装置110对iot平台服务器130作出的连接请求,影子装置管理器330生成对应影子装置340。影子装置管理器330将从iot装置110发送的数据存储在对应影子装置340中,并且根据应用服务器150的请求检索并提供数据。另外,当存在通过应用服务器150对iot装置110的控制命令时,影子装置管理器330将控制命令信息存储在影子装置340中并使得存储在影子装置340中的控制命令信息被发送到iot装置110。作为将数据存储在影子装置340中的准备,影子装置管理器330可首先根据规则引擎350中定义的规则来处理先前存储在影子装置340中的数据和新存储在其中的数据(历史数据)。影子装置管理器330可根据用户所指定的规则通过对历史数据的数据聚合处理来减少或缩减并存储数据。例如,影子装置管理器330可将预定时间的状态信息聚合以在影子装置340中存储诸如数据组的最大值、最小值、平均值、计数值、方差、各个时区的平均值和代表值的统计值。考虑到影子装置340中以其未删节原始数据形式存储历史数据的大量存储空间以及数据传送的高处理成本,影子装置管理器330可通过规则引擎350处理数据,然后将所处理的数据存储在影子装置340中。影子装置340是服务器上的逻辑实体,其与物理装置或虚拟装置一对一映射并且与注册的iot装置110一一对应地存在。在这种情况下,iot装置110可不仅包括物理装置,而且包括虚拟装置,因此,影子装置340可在平台上单独存在而没有物理装置。影子装置340始终与iot装置110的当前状态同步存在,并且它可存储基于历史的信息以及iot装置110的当前状态信息。影子装置340可接收并存储iot装置110的状态信息。此外,每次状态信息更新时,影子装置340可在维持先前存储的信息的同时累积并存储更新的状态信息。另外,影子装置340存储关于发送到iot装置110的控制命令的信息。应来自应用服务器150的请求或者当满足规则引擎350中定义的规则条件时,iot平台服务器130可向iot装置110发送控制命令。在这种情况下,影子装置340存储发送到iot装置110的控制命令信息以及由iot装置110执行的控制命令的结果。当存在经由iot装置110来自应用服务器150的控制请求时,影子装置340可同样存储控制命令信息和控制结果。换言之,影子装置340是与iot平台服务器130中实现的iot装置110对应的逻辑iot装置。影子装置340被配置为存储iot装置110的当前状态信息和过去状态信息以及由iot装置110接收或执行的所有控制命令。通过iot平台开发iot服务的开发者或者使用iot服务的用户应该通过iot装置110或应用服务器150监测和控制iot服务。此时,iot平台服务器130不仅用于在iot装置110和应用服务器150之间传送数据,而且将真实iot装置110的状态信息和控制信息存储在其匹配的影子装置340中并进行管理。另外,即使当iot装置110暂时与互联网断开时,影子装置340存储iot装置110的状态信息,并且它能够在应用服务器150请求时提供数据并且在存在iot装置110的控制命令时保持数据,直至iot装置110重新连接到互联网,此时影子装置340可向iot装置110提供数据。这使得即使互联网连接不稳定iot服务也能够可靠操作。规则引擎350提供根据预定义的规则自动地处理数据的功能。规则引擎350提供基于存储在影子装置340中的数据设定各种规则的功能,并且可根据用户所设定的规则来自己执行各种操作而无需特殊输入。例如,当低于特定值的数据重复自己特定时间段时,规则引擎350可使得如规则中设定那样自动地执行操作。这种操作可包括向用户提供警报或给予重启装置的控制命令。在一些实施方式中,规则引擎350可使用iot装置110的历史数据以及当前状态数据,由此允许使用各种数据来设定规则并使得iot平台服务器130能够自主地实时提供广泛数据处理。例如,规则引擎350可使用iot装置110的历史数据来设定响应于过去一小时偏离平均值的传入数据而给予警报的规则,或者对关于一组组织的iot装置110中的iot装置110在过去一天落在最大值的10%之外的传入数据发出特定控制命令的设定规则。传统iot平台系统使得iot平台服务器仅获得并存储iot装置的当前状态信息,从而允许内置规则引擎最多使用当前状态信息执行简单数据处理。为了提供复杂和多样化的服务,常见的是在应用服务器中向各个复杂和多样化的服务实现存储和处理数据的专用功能。利用根据本公开的一些实施方式的iot平台系统,iot装置的历史数据可用于在规则引擎中设定规则,由此允许iot平台服务器自主地执行各种类型的数据处理,而不再需要在应用服务器中实现那些专用功能。用户接口单元360向用户或开发者提供用于输入或选择iot服务的基本信息和协议信息的接口。用户接口360提供用户界面(ui)画面,用户或开发者可通过其定义通信服务器或协议。一般非程序员用户可使用这种用户界面画面通过复选框和清单来驱动通信服务器模块并生成iot终端与服务器之间的接口。此时,ui画面被配置为允许用户利用简单的点击进行针对服务器和协议的所有设置。图4是示出根据本公开的至少一个方面的在iot平台系统中基于规则引擎的iot装置控制方法的流程图。如图4所示,当存在iot装置的连接请求时(s401),iot平台服务器生成对应影子装置(s402)。在这种情况下,iot装置可包括虚拟装置以及物理装置。影子装置是通过与物理装置或虚拟装置一对一映射而存在于服务器上的逻辑实体,并且它与iot装置一一对应地存在。在本公开的一些实施方式中,影子装置接收并存储iot装置的状态信息,并且优选地每当状态信息更新时在维持先前存储的信息的同时累积并存储更新的状态信息。步骤s402中的生成影子装置的处理仅应iot装置的首次访问请求执行一次。iot服务的开发者或用户通过应用服务器来设定操作服务的规则条件(s403)。规则引擎是提供在这些预定义的规则条件下自动地处理数据的功能的配置。iot平台服务器的规则引擎可使用存储在影子装置中的状态信息来确定是否满足规则条件。例如,规则引擎可使用iot装置的历史数据来设定响应于过去一小时在平均值之外的传入数据而报警的规则,或者设定对关于一组组织的iot装置中的iot装置在过去一天落在最大值的10%之外的传入数据发出特定控制命令的规则。由于规则引擎可使用iot装置的历史数据,所以可使用各种数据来设定规则。通过该规则引擎,开发者可提供各种服务而无需通过应用服务器处理数据。当数据从iot装置发送(s404)并由iot平台服务器接收时,iot平台服务器将所接收的数据存储在影子装置上(s405)。在步骤s405中,可根据规则引擎中定义的规则来处理和存储先前存储的数据和要存储的新数据。可根据用户指定的规则通过历史数据的数据聚合处理来减少或缩减并存储数据。例如,预定时间的状态信息可被聚合以在影子装置中存储诸如数据组的最大值、最小值、平均值、计数值、方差、各个时区的平均值和代表值的统计值。考虑到影子装置中以其未删节原始数据形式存储历史数据的大量存储空间以及数据传送的高处理成本,影子装置管理器可通过规则引擎来处理数据并将所处理的数据存储在影子装置中。iot平台服务器中的规则引擎确定存储在影子装置中的数据是否满足预定规则条件(s406),如果是,则它执行诸如向iot装置发出控制命令的预定操作(s407)。iot装置遵循控制命令,并且当它将控制结果发送到iot平台服务器(s408)时,iot平台服务器将控制结果存储在影子装置中(s409)。影子装置被配置为存储iot装置的当前状态信息、过去状态信息和控制命令,并且每当存在从iot装置的数据传输或对iot装置的控制命令时,重复地执行步骤s405和s409。通过这些步骤,iot装置及其影子装置可始终同步存在,并且影子装置可存储历史数据以及关于迄今为止生成的控制命令的信息。当应用服务器请求关于iot装置的信息(s410)时,iot平台服务器将存储在影子装置中的iot装置相关信息发送到应用服务器(s411)。iot平台服务器发送存储在影子装置中的信息,而不必接收或请求iot装置的当前状态信息。在现有iot平台系统中,嵌入式规则引擎可仅使用当前状态信息执行简单数据处理,并且常见的是在应用服务器中实现,以便提供复杂和各种的服务。利用根据本实施方式的iot平台系统,平台上的影子装置存储iot装置的历史数据直至可使用它为止,从而允许历史数据可用于规则引擎中的规则设定,从而使得iot平台服务器能够自主地处理各种类型的数据,而不经过应用服务器。图5是示出根据本公开的至少一个方面的在iot平台系统中由应用服务器控制iot装置的方法的流程图。在下文中,将省略图4的重复描述以避免冗余。如图5所示,当存在iot装置的连接请求(s501)时,iot服务服务器生成对应影子装置(s502)。步骤s502中影子装置的生成仅应iot装置的首次连接请求执行一次。当数据从iot装置发送(s503)并由iot平台服务器接收时,平台服务器将其所接收的数据存储在影子装置中(s504)。影子装置可通过步骤s503和步骤s504始终与iot装置同步存在,并且可存储历史数据。应用服务器基于在iot平台服务器中接收的数据来请求iot平台服务器向iot装置发送控制命令(s507)。iot平台服务器将控制命令存储在影子装置中(s508)并将控制命令发送到iot装置(s509)。当iot装置遵循控制命令执行命令并将控制结果发送到iot平台服务器(s510)时,iot平台服务器将控制结果存储在影子装置中(s511)。当应用服务器查询或请求发送控制结果(s512)时,它按照与步骤s505的数据查询处理相同的方式从影子装置中接收所发送的数据(s513)。即使iot装置暂时与互联网断开,每当存在来自应用服务器的数据请求时,存储iot装置的状态信息的影子装置使得该信息可用。影子装置还在iot装置上发出控制命令时保持该控制命令,直至在重新连接到互联网时它可将该控制命令传送到iot装置,因此不管iot装置是否连接到互联网,使得iot服务能够稳定操作。图6是根据本公开的另一方面的iot平台服务器的配置的框图。如图6所示,根据本公开的另一方面的iot平台服务器130包括通信单元610、注册单元630和虚拟化单元650。通信单元610可通过通信网络以有线、无线或其它各种通信方法发送/接收数据。通信单元610可被配置为与通过通信网络访问的iot装置110或应用服务器150建立通信会话,并通过该通信会话与iot装置110或应用服务器150发送和接收数据。注册单元630可执行iot装置110的注册和认证,并且注册和管理共同特征iot装置110的共同性质或特征的规范。在这种情况下,共同特征iot装置110的共同特征的规范将被称为装置描述符631。虚拟化单元650可在iot平台服务器130上生成与各个iot装置110对应的影子装置,并基于从iot装置110接收的数据来更新影子装置的状态。虚拟化单元650可管理iot装置110与其影子装置之间的匹配信息并且存储和管理与其iot装置110对应的多个影子装置中的每一个的数据。应iot装置110相对于iot平台服务器130的访问请求,虚拟化单元650生成与该iot装置110对应的影子装置。虚拟化单元650将从iot装置110发送的数据存储在对应影子装置中,并且根据应用服务器150的请求检索并提供数据。另外,在通过应用服务器150接收到对iot装置110的控制命令时,虚拟化单元650将关于该控制命令的信息存储在影子装置中并使得存储在影子装置中的控制命令信息被发送到iot装置110。根据本实施方式的另一方面的iot平台服务器130还可包括检查单元670。检查单元670可基于装置描述符631来检查从iot装置110接收的数据的有效性。装置描述符(1)装置描述符的配置装置描述符631可包括关于共同特征iot装置110共同的传感器的信息、关于共同特征iot装置110共同的可控模块的信息以及关于由共同特征iot装置110发送到iot平台服务器130的共同数据的语义、格式、周期性、传输循环、数值范围和变化范围的信息中的一个或更多个。装置描述符631能够不仅指定装置所发送的数据的语义,而且指定格式,以使得用户可按期望的格式发送数据。具体地,考虑到重视传输数据的大小减小的iot服务性质,装置描述符631可不仅以json格式,而且以大小减小的csv或基于偏移的格式发送数据。尽管大小减小,保持数据的内容的装置描述符使得相关iot平台能够基于数据的语义来提供服务。iot装置110可包括一个或更多个传感器和一个或更多个可控模块。传感器可以是温度传感器、湿度传感器、全球定位系统(gps)等,可控模块可以是电机、致动器、冷却风扇、加热丝等。由于共同特征iot装置110的传感器类型和可控模块类型彼此相似,所以具有根据本公开的共同特征iot装置110共同定义的特征的平台级允许iot服务开发者容易地开发提供给共同特征iot装置110的服务。装置描述符631是表示共同特征iot装置110的逻辑框架,并且不仅具有iot装置110的规范,而且具有关于诸如链接到iot装置110的传感器和致动器的对象、所发送的数据的语义、其格式和传输循环的所有信息,并且是共同特征iot装置110的逻辑代表。iot服务开发者可编写关于符合iot平台所提供的装置描述符631的格式的iot服务中要使用的装置的信息。装置描述符631可包括name、deviceinformation、attributes、telemetries等。name意指装置描述符631的名称。deviceinformation关于iot装置110本身,并且可包括关于制造商、存储器、型号、版本、网关、连接的传感器和可控模块的信息。attributes意指iot装置110所发送的信息当中没有周期性的最新状态信息。attributes可由iot服务开发者自己根据其服务特征或特性定义,并且可定义名称、类型、语义(此信息实际意指什么的定义)、可控性、数据传输格式等。telemetries意指iot装置110所发送的信息当中具有周期性的数据。类似attributes,telemetries可由iot服务开发者根据其服务特性定义,并且可定义名称、类型、语义、传输循环等。建议针对不重视历史,而是重视最新信息的数据定义attributes。例如,由于建议将iot装置110的位置信息设定为attributes以使用,因为仅装置的最新位置是重要信息。当然,当需要iot装置110的位置改变的历史时,iot装置110所发送的位置信息可被设定为telemetries。例如,在跟踪服务的情况下,重要性在于位置信息,那么需要周期性地发送位置信息,其中,位置信息优选地被定义为telemetries,而非attributes。具有周期性或被认为重要的历史记录的数据更适合被定义为telemetries。例如,当通过iot装置110的温度传感器测量的温度信息被周期性地发送到iot平台服务器130时,该信息变为telemetries信息。相反,当要提供的一些iot服务不需要iot装置110的温度改变的历史时,iot装置110所发送的温度信息可被设定为attributes。(2)示例装置描述符根据本公开的至少一个实施方式,iot服务开发者可根据iot平台所定义的规则来编写描述关于iot装置110的详细信息的装置描述符631。以下是装置描述符631的示例。{“name”:“airconditioner”,“title”:“空调描述符”,“description”:“此装置描述符631是包含空调的规范的描述符。”,“info”:{“memory”:1024,“model”:“au1024zu17”,“manufacturer”:“sktelecom”,“type”:“airconditioner”},“data”:{“format”:“csv”,“delimiter”:“|”,“attributes”:[{“name”:“switch”,“semantic”:“power”,“writable”:true,“writablevalues”:[“on”,“off”],},{“name”:“temp”,“semantic”:“temperature”,“writable”:true,“writablevalues”:[15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30],“type”:“number”}],“telemetries”:[{“name”:“ts”,“semantic”:“timestamp”,“interval”:60,“type”:“posix”},{“name”:“temp”,“semantic”:“temperature”,“interval”:60,“type”:“number”},{“name”:“h”,“semantic”:“humidity”,“interval”:60,“type”:“number”}]}}(3)设定装置描述符iot服务开发者可在注册作为所开发的iot服务的目标的iot装置110的同时选择装置描述符631。具体地,当向iot平台服务器130注册特定iot装置110时,iot服务开发者可设定iot装置110属于哪一类型的装置描述符631。装置描述符631包含装置的所有定义,例如装置是什么类型、它具有哪些传感器和致动器、哪些规则与可执行的动作关联以及所发送的数据的语义、格式和传输循环是什么。相同类型的装置将参考共同规范。(4)利用装置描述符的数据验证由于装置描述符631包括数据格式的定义,所以本公开还能够提供确定和立即处理实际数据值的功能。当根据本公开的至少一个实施方式向iot平台服务器130注册现实iot装置110时,它们应该被定义为与特定装置描述符631相关,由此使得根据本公开的至少一个实施方式的iot平台能够解释实际iot装置110的信息及其发送的数据,并在平台级相应地提供各种功能。作为示例,根据本公开的至少一个实施方式的iot平台服务器130还包括检查单元670,其可检查从iot装置110接收的数据的有效性。当数据的传输没有如装置描述符631中定义的每一传输循环发生一次时,检查单元670可确定从iot装置110接收的数据具有错误或一些错过的数据。另外,当数据的值在如装置描述符631中定义的数值范围之外时,检查单元670可确定从iot装置110接收的数据具有错误。此外,当数据以与装置描述符631中定义的格式不同的格式发送时,检查单元670可确定从iot装置110接收的数据具有错误。另外,当数据改变超过如装置描述符631中定义的变化范围时,检查单元670可确定从iot装置110接收的数据具有错误。图7是详细示出根据本公开的另一方面的iot系统的结构的框图。如图7所示,根据本公开的另一方面的iot系统700包括一个或更多个iot装置710、iot平台服务器730和应用服务器750。iot装置710意指物联网(iot)中的thing,在本公开的一个实施方式中,iot装置710是指具有传感器、致动器等的节点以及多个节点连接至的网关。iot平台服务器730是实现有iot平台的服务器,并且提供用于开发和操作iot服务的各种功能。装置描述符631是指如上所述的共同特征iot装置710的共同特征的规范。装置描述符631是表示共同特征装置的逻辑框架。装置描述符631不仅保持装置规范,而且保持诸如规范、连接的传感器和致动器以及所发送的数据的语义、其格式和传输循环的所有信息。装置描述符631是所连接的装置的逻辑代表因子。在装置描述符631表示共同特征装置的情况下,影子装置与物理装置1:1映射,以使得各个装置逻辑存在于iot平台服务器730上。影子装置可不仅映射到物理装置,而且映射到虚拟装置。iot服务用户是指实际使用iot服务的人,并且可拥有iot装置710或使用iot服务。iot服务开发者表示使用iot平台开发iot服务的人,并且可与iot服务用户相同或不同。iot平台的基本功能是在良好状态下接收iot装置710的数据并将其传递给应用服务器750。iot平台被设置为首先提供用于将从应用服务器750的应用程序或“应用”发出的控制命令发送到iot装置710的功能,并进一步提供进行各种iot服务所需的各种特色功能(例如,api功能、ui编辑功能等)。传统iot平台聚焦于管理iot装置710的连接并将数据传送至应用服务器750而不丢失数据。尽管适于提供用于可靠数据传送的基本功能,但现有技术还没有为了分析iot数据和提供附加有意义的信息而提出数据规范。由于该缺点,执行诸如数据传送、一致性检查和数据分析的任务需要在应用级别在那些方面进行附加工作。相比之下,使用根据本公开的至少一个实施方式的iot平台,iot服务开发者可利用装置描述符631容易地处理和管理iot服务所需的信息。由于装置描述符631不仅具有iot装置710的规范,而且具有要发送的数据的类型和格式以及甚至语义,所以iot服务开发者现在可使用这种装置描述符来提供各种服务。除了简单地传递数据和给出控制命令之外,装置描述符631充当提供收集数据并在数据语义的上下文中采取动作的基本信息。这使得iot服务开发者能够利用装置描述符631容易地访问iot服务所需的各种服务,并且允许开发者不仅容易地更新各种装置的性质和功能,而且简化其管理和服务访问。iot服务开发者可将多个服务连接到单个装置描述符631。例如,可定义一个装置描述符631,并且可为其中的特定传感器值设定期望的规则,或者整个数据可通过规则引擎来处理并被发送到数据分析工具。还可基于装置描述符631通过配置在特定时段内将数据发送出去。例如,假设iot服务开发者正在创建与燃气高级计量基础设施(ami)有关的iot服务并安装具有共同特征的一百个燃气表,则开发者可首先编写用于描述燃气表的装置描述符631。然后,当将实际仪表注册到iot平台时,建议开发者指定仪表属于哪一装置描述符631。当期望将需要共同应用于抄表数据或特定数据的规则发送给分析系统时,iot服务开发者可基于装置描述符631执行期望的配置,而无需指定各个仪表。例如,当从属于特定装置描述符631的仪表发送信息时,可基于该装置描述符631中定义的传感器信息来分析和处理数据。以下,将描述使用装置描述符631的示例。装置描述符的使用(1)链接到各种规则引擎利用装置描述符631,开发者可知道从iot装置710发送的数据的语义,从而将数据容易地链接到各种规则。例如,当期望在不适指数上升超过70时自动操作空调时,开发者可通过将湿度传感器所提交的信息与温度传感器所提交的信息合成来计算不适指数并设置给予控制命令的规则。利用包括关于语义的信息的装置描述符631,以任何形式提交的数据可容易地链接到规则引擎以设定规则。下面将描述此操作的详细方式。①iot服务开发者描述并注册装置描述符631。②当注册iot装置710时,开发者定义iot装置710属于哪些装置描述符631。③当实际iot装置710发送数据时,开发者使iot平台通过装置描述符631来解释数据。④当期望根据特定传感器值采取动作时,iot服务开发者或用户定义对应规则。在上述示例中,开发者将温度和湿度数据合成以计算不适指数并定义执行响应动作的规则。⑤当定义规则时,开发者通过指定装置描述符631中定义的传感器来确定要组合以计算不适指数的一组传感器。⑥当发送数据时,iot平台基于装置描述符631来解释数据,根据规则来计算不适指数,然后按规则继续处理。(2)链接到外部iot数据分析服务大多数数据分析服务仅可用于定义的架构。在iot服务布置方式中,常见的是数据中没有定义架构,因为由于类似传感器装置功率、价格和通信费用的问题而需要尽可能减少数据。然而,利用装置描述符631,本公开告知从装置发送的数据的语义以允许容易地与外部分析服务互通。(3)故障检查从iot服务周期性发送的传感器数据的偶尔遗漏可能根据服务性质而造成严重问题。由于根据本公开的至少一个实施方式的iot平台的装置描述符631包括传感器的数据传输循环,所以可在平台级检查传感器数据,因此可容易地确认数据遗漏或故障。(4)数据一致性检查利用保持关于数据的语义和格式二者的信息的装置描述符631,可在平台级检查数据一致性。例如,在以摄氏度定义语义的情况下从iot装置710发送的数据为“-300”(这是不可能的值)时,立即知道该数据是错误的,对此平台级响应变得可用。类似地,当以预先约定的格式以外的格式发送数据时,立即知道该数据是错误的,对此平台级响应变得可用。(5)链接到可用于装置集合的服务具有相同装置描述符631的装置可链接到相同服务,这准许iot服务开发者使用该平台来更容易地开发iot服务。图8是示出根据本公开的另一方面的提供iot平台服务的方法的流程图。如图8所示,根据本实施方式的另一方面的提供iot平台服务的方法可包括以下步骤:注册多个装置的共同特征的规范(“装置描述符631”)(s810);从一个或更多个iot装置710接收连接请求(s820);生成与各个iot装置710对应的影子装置(s830);从iot装置710接收数据(s840);以及基于从iot装置710接收的数据来更新影子装置的状态(s850)。根据本公开的至少一个实施方式,提供iot平台服务的方法还包括步骤s840:在从iot装置710接收数据和更新影子装置的状态之间,基于装置描述符631来确定从iot装置710接收的数据的有效性。将详细描述确定有效性的处理。当没有每一传输循环发送具有装置描述符631中定义的传输循环的数据时,当具有装置描述符631中定义的数值范围的数据具有所定义的数值范围之外的值时,当具有装置描述符631中定义的格式的数据以与所定义的格式不同的格式发送时,或者当具有装置描述符631中定义的变化范围的数据波动超出所定义的变化范围时,数据可被确定为具有错误。为了避免冗余,将省略与以上描述重复的细节。如上所述,图4、图5和图8被示出为其处理依次执行,但本公开未必限于此。换言之,图4、图5和图8不限于所示的时间顺序,因为它们可在本公开的实践中修改,或者使得图4、图5和图8的那些处理中的一个或更多个并行执行。根据图4、图5和图8所示的一些实施方式的提供iot平台服务的方法可被实现为应用(或程序)并记录在可由终端装置(或计算机)读取的记录介质上。可提供非暂时性计算机可读(或终端可读)记录介质以用于记录用于实现根据一些实施方式的iot平台服务提供方法的应用(或程序),并且包括可记录可由计算机系统读取的数据的任何类型的记录装置。尽管出于例示性目的描述了本公开的示例性实施方式,但本领域技术人员将理解,在不脱离要求保护的发明的构思和范围的情况下,可进行各种修改、添加和替代。因此,为了简明和清晰起见描述了本公开的示例性实施方式。本发明的实施方式的技术构思的范围不由例示限制。因此,本领域普通技术人员将理解,要求保护的发明的范围不由上面明确描述的实施方式限制,而是由权利要求书及其等同物限制。相关申请的交叉引用本申请要求2017年10月19日提交的韩国专利申请no.10-2017-0135919和2017年10月27日提交的韩国专利申请no.10-2017-0141491的优先权,其公开整体通过引用并入本文。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1