用于修订功能或向自动化设备添加功能的方法与流程

文档序号:16989816发布日期:2019-03-02 00:52阅读:163来源:国知局
用于修订功能或向自动化设备添加功能的方法与流程

所公开的实施例涉及用于在自动化设备上修订功能或用于向自动化设备添加功能的方法和计算机程序产品。具体地,所公开的实施例涉及用于表示、发现和执行专用于自动化目的的功能的方法。



背景技术:

可由通过各种联网接口进行通信的电子设备发现、监视、控制或与其交互的物理对象的系统通常被称为“物联网(webofthings)”。

在工业领域中,具体地在自动化设施的领域中,物联网技术被认为推出了革命性的概念,其常常被称为“工业4.0”。

根据物联网概念,设备或“物”连接到web,并且它们自主地能够通过安装一款软件来扩展或更新它们的功能。由于自动化设施不可避免地比一般的“物”更复杂,因此用于标示自动化设施的术语“系统网(webofsystem)”与常见的“物联网”范例相比是优选的。

常常在自动化设施中找到的未充分使用的设备资源可以提供增强的或新的利用机会,只要该设备资源支持模块化软件的创建、发现和部署的直接可能性即可。

自动化设施在工业领域中通常包括一个或多个设备,特别地,嵌入式设备。这种嵌入式设备被配置成执行下述软件:其连续地收集与输入设备的状态有关的数据,以便控制输出设备的状态。嵌入式设备典型地包括:处理器,包括易失性存储器;非易失性存储器,包括应用程序;以及输入/输出端口,用于连接到其他设备或自动化设施。

在下文中,自动化设施和自动化设施的部分被称为自动化设备或自动化系统领域中的设备。

尽管模块化软件(根据移动app的常见理解,其常被称为“app”)在移动通信设备(诸如,智能电话和平板计算机)的领域中是已知的,但是这种模块化软件概念在自动化系统领域中仍是缺乏的。

以与当前已知的移动app相同的方式在自动化设备上启用新功能遇到了相当大的挑战。首先,设备或“物”典型地是明显具有比智能电话更高的复杂度的更大系统的部分。当提供新功能时,需要考虑大量的性质、能力和现有功能:

-因此,最初的挑战是发现新功能将基于的现有功能。

-第二个挑战是利用最小的人为努力来创建新功能,从而提供关于目标设备是否具有就所要求的性质、硬件等而言部署新功能的能力的自动检查。

-更进一步地,功能必须在嵌入式自动化设备上利用最小的努力加以管理。管理功能可以包括相应模块化软件的部署、重新配置和移除的过程。

根据当前采用的方法,在自动化设备上实现新功能的任务是由基于模型驱动的设计的软件工程来实现的。根据该模型驱动的设计,工程师指定模型中的字段函数或数据点。随后,用于定义功能的代码生成阶段的长期阶段出现,其中代码设计要求遵守已经嵌入在设备中的运行时环境。在代码的编译和实例化的过程之后,提供服务框架,由此,服务框架应当实现函数或数据点。最后,工程师必须在设备的运行时环境中部署服务框架并启动该框架,以便实施广泛的测试。

尽管这些方法能够实现新功能,但是它们耗时、繁琐且关于它们的灵活性尤其受限制,这是因为它们不提供基于机器的能力发现。

相应地,在本领域中存在对于在嵌入式自动化设备上以自动化方式可部署且可执行的软件模块(其在概念上与模块化app有关)的需要。例如,自动化函数或服务可能需要基于其自身的功能性或非功能性的性质(包括这种设备的能力、可用性时间或位置)而被识别和发现。

更进一步地,在本领域中存在对于针对嵌入式自动化设备提供增强的或新的利用机会的软件模块的需要,所述软件模块支持针对所述模块化软件的创建、发现和部署的直接可能性。

再进一步地,在本领域中存在对于针对软件模块的数字分布平台的需要,该数字分布平台通常被称为“市场”。



技术实现要素:

本发明涉及一种用于在自动化系统领域中修订功能或向自动化设备添加功能的方法,所述方法包括下述步骤:

1)在所述自动化设备上提供至少一个第一语义模型,所述第一语义模型在语义上表示所述设备;

2)提供用于在语义上表示所述功能的至少一个第二语义模型,所述第二语义模型包括事件部分和语义部分;

3)在所述设备内部署所述第二语义模型;

4)由语义推理器解释所述第二语义模型的语义部分,并且将所述第二语义模型的要求与所述第一语义模型的设备能力进行匹配;以及

5)由事件处理引擎执行所述第二语义模型的事件部分。

根据本发明,提供语义表示作为用于表示要修订或添加的功能的基础。甚至进一步地,用于在语义上表示功能的语义模型不仅是可解释的而且是可执行的。语义方案实现了能够进行基于机器的功能发现的形式表示,且同时实现了由设备自身进行的机器解释和执行。

根据本发明,所述机器解释和执行分别由语义推理器和事件处理引擎实施,所述语义推理器和所述事件处理引擎两者都是在所述设备上实现的运行时环境的一部分。发明方案有利地消除了由工程师实现代码框架的需要。取而代之,所述语义模型可以直接地在具有嵌入式运行时间的设备中利用推理能力执行。

有利地,以下述这样的方式在语义上描述自动化系统中的设备或自动化函数和服务:机器或其他设备能够理解并解释语义描述,以便自主地分配适当的自动化资源。借助于语义推理器,设备能够基于其语义来发现功能并动态地安装功能。随着设计与部署阶段之间的人类作用减少,这提高了自动化系统的自主性。

本发明允许附加值功能或app的更快开发。尽管有新语义方案,但本发明仍与模型驱动的设计兼容。换言之,本发明扩展了实践的当前状态。

附图说明

本发明的目的以及进一步优势将从结合附图做出的优选实施例的以下描述中变得更加显而易见且容易领会,在附图中:

图1示出了根据一实施例的用于表示设备的语义模型的框图;

图2示出了针对温度传感器的示例性设备描述的框图;

图3示出了根据一实施例的用于在语义上表示功能的语义模型的框图;

图4示出了根据一实施例的用于在语义上表示功能的语义模型的事件部分的框图;

图5示出了根据一实施例的用于在语义上表示用于递送平均温度的功能的语义模型的框图;

图6示出了设备的构建块的框图;

图7示出了用于在新功能的动态添加之前和之后表征设备功能的资源树;以及

图8示出了市场的基本构建块的框图。

具体实施方式

在下文中,本发明的实施例由示例性使用情况说明。根据该示例性使用情况,自动化系统包括每10秒提供温度测量结果的设备。出于定期操作或测试目的,现在要求该设备提供递送平均温度的功能,该平均温度是温度测量结果的平均值的结果,例如在30分钟时间段内平均的结果。

尽管设备不能提供平均温度,但是它应当能够安装模块化软件(还被称为app)以用于扩展由递送温度测量结果的平均值的功能递送离散温度测量结果的当前可用的功能。安装实现期望功能的模块化软件的该能力是本发明的目的。

另一个目的是提供快速app环境,其中可以利用最小的努力(即,在不需要手动实现、安装、配置和测试每个设备上的功能的情况下)开发、验证和使用该新功能。

使用所提出的实施例,工程师创建语义模型,其满足关于函数、时间窗口、位置和其他性质的期望功能要求。在所选的设备中部署语义模型,从而立即提供新功能。

根据本发明的第一特征,提供了在语义上表示设备的至少一个语义模型。语义模型一般被理解为与特定领域(这里,自动化系统领域)有关的术语和概念的形式规范以及这些概念之间的关系。语义模型提供了对特定于给定领域的信息的本质的见解,且对达成对相关概念的共享理解的任何尝试来说是必需的。取决于领域,可以以各种级别的复杂度和形式指定它们。

图1示出了用于表示设备的语义模型的结构。语义模型包括以升序的层级(其在图1中由箭头图示)排序的四个层101、102、103、104。遵循箭头方向的上层具有更高程度的语义丰富性和领域依赖性。

在标题为“设备描述”的第一层101中,特定设备是基于其性质和功能来描述的。例如,由万维网联盟(w3c)的物联网(wot)组提出的物描述(td)是可以用于该目的的示例模型。物描述就设备(包括传感器、促动器、控制器等)的元数据和性质以及由设备引起的事件或可由设备触发的动作而言提供针对该设备的模型。设备描述层101中使用的词汇(出于对事件、性质、动作等进行命名的目的)是由来自更高层的语义模型提供的。

在标题为“领域独立模型”的第二层102中,设备描述101由领域独立上下文信息扩展。独立上下文信息可以示例性地包括该特定设备是传感器连同其基本测量能力(例如,范围、操作条件、单位等)的语义描述。出于该目的,可以使用包括但不限于ssn(语义传感器网络)、qudt(数量、单位、尺寸和类型)或类似物的本体。

在标题为“领域依赖模型”的第三层103中,设备描述101由领域依赖上下文信息(例如,指代特定领域,像建筑物自动化、工业自动化、能源领域等)扩展。依赖上下文信息可以示例性地包括通过指派由具体传感器设备的制造商提供的性质和能力的完整集合表征该具体设备的语义描述。依赖上下文信息可以进一步包括诸如设备位置的定义之类的上下文信息。领域依赖模型的示例包括ecl@ass、haystack、baas(建筑物即服务(buildingasaservice))本体等。在一些情况下,不需要在第二层102与第三层103之间进行区分。因此,第二层102和第三层103可以被合并成一个公共层。

在标题为“应用模型”的第四层104中,利用与特定应用有关的信息来扩展根据前三个层101、102、103的先前描述的模型。例如,该层可以定义针对与建筑物自动化系统的诊断有关的应用或制造中的条件监视应用的模型。

图2示出了用于表示温度传感器的语义模型的示例。在图1的上部分中,描绘了根据图1的第三层103的领域依赖模型,下部的框部分包括根据图1的第一层101的设备描述。框部分中的设备描述基于物描述或td(用前缀“td:”标示)上的万维网联盟的当前版本,且利用作为上面的领域依赖模型中的领域依赖模型的baas本体加以扩展。物描述和baas本体两者都可以用类似的语义模型替换。

现在转到图3,其中示出了用于在语义上表示功能的第二语义模型的框图。与图1中示出的第一语义模型类似,根据图3的第二语义模型包括标题为“设备描述”的第一层301、标题为“领域独立模型”的第二层302、标题为“领域依赖模型”的第三层303和标题为“应用模型”的第四层304。除了图1中示出的第一语义模型之外,根据图3的第二语义模型还包括标题为“app词汇”的附加层300,其被分层地定位在设备描述层301下面。

app词汇层300是描述函数的事件部分,换言之,语义模型的函数部分。另一方面,app词汇300服务于在语义上描述自动化函数或字段分析函数,例如,计算在30分钟时间窗口内测量的平均温度的最初提到的功能。

利用app词汇300创建用于在语义上表示功能的第二语义模型。app词汇层300可以进一步是设备描述层301的部分,且可以利用根据图3的其他语义层302、303、304加以扩展。这是重要的方面,这是由于它实现了功能要求或app要求与设备能力的语义配对,其在本说明书中稍后描述。

随着利用根据图3的第二语义模型描述app要求并且利用根据图1的第一语义模型表示设备能力,从相应的设备描述级别101、301开始,语义配对可以在层堆叠的每个级别处发生。

尽管由物描述(td)上的万维网联盟或“w3c”发布的标准化规范wot(物联网)提供了用于描述设备的最小模型,但是该级别处的配对是有限的。根据本发明的实施例,由指定设备能力和app要求的进一步的模型对设备描述的有利丰富提供了改进的配对的充足细节。

现在转到图4,其中示出了第二语义模型的示例性事件部分或app词汇。该功能或app被表示为下述规则,其包括:

-模式,包括事件上的一个或多个操作符。例如,操作符包括:序列、结合、分离、否定、克莱尼(kleene)操作符等等。

-条件,包括一个或多个函数。例如,函数一般包括算数运算或任何函数。典型地,在由设备产生的数据(例如,温度传感器数据)上评估函数。它们可以以各种编程语言(例如,java、lua、c/c++等)实现。无论以其实现函数的语言如何,这里都提供语义表示。

-范围,其定义一时间间隔,在该时间间隔内评估事件操作符并且应用条件函数。例如,当计算30分钟时间窗口内的平均温度时,该范围是30分钟。来自传感器的每个温度读数是一事件,操作符是事件的序列,并且条件函数是计算出于单个温度读数的平均值的函数。

图5示出了用于递送平均温度的第二语义模型,包括下部框中的事件部分或app词汇和上部框中的设备描述。

图6示出了能够执行第二语义模型的设备601的基本构建块。除了其他功能性部分之外,设备601还包括运行时环境602,运行时环境602包括事件处理引擎和语义推理器,这两者被描绘在单元603中。

在一般情况下,第二语义模型由事件部分和语义部分组成。事件部分(模式、事件条件和范围)由事件处理引擎603执行,而语义部分(语义条件)由语义推理器603解释。后面的语义推理器将用于在语义上表示功能的第二语义模型的要求与第一语义模型的设备能力进行匹配。

图7在restful图示中示出了用于在新功能的动态添加之前和之后表征设备功能的资源树。

有利地,使执行用于在语义上表示功能的第二语义模型的运行时环境602能够动态地注册新资源,例如,如在用于在语义上表示功能的第二语义模型中定义的字段函数。

例如,具有如图2中示出的设备描述的设备最初仅具有两个资源,也就是:

-资源“temperature”(见图2的设备描述中的标题为“td:name-temperature”的性质),用于递送温度测量结果;以及

-事件通知器“temperaturechanged”(见图2的设备描述中的事件“td:name-seetemperaturechanged”)。

在图7的左部分中,在用于在新字段函数的动态添加之前表征设备功能的资源树的restful图示中描绘了这两个资源。在添加用于将平均温度递送到设备的新字段函数之后,在没有明确或人为干预的情况下动态地更新设备的资源树(见图7的右侧)。

在下文中,描述了根据一实施例的基于语义的发现。根据本发明的实施例的语义模型实现了由提供app的设备或功能提供的相关资源的基于语义的发现。用于发现目的的查询可以由人类或机器(例如,设备)提出。在针对用于由功能“avgtemp”读出平均温度的功能的介绍性示例的后续部分中,进一步的实施例的目的是发现该avgtemp功能或app的资源。

假定avgtemp的功能由设备描述级别301处的物描述和领域依赖模型的级别303处的baas本体在语义上表示,那么以下查询返回来自td条目的app名称以及该app的特征,诸如由app暴露的数据的类型、测量单位以及数据的最小和最大范围:

还可以通过由具体值替换某些变量(例如,

来缩窄该查询,例如用于发现实现特定函数或者以某个单位或在某个范围内提供数据的app。

针对每个所发现的app,基于其语义描述,提取针对该app的要求是可能的。例如,avgtempapp与温度数据点相关联,即,该app应对温度数据。因此,该app要求温度传感器在其中app运行的设备上可用。此外,该app要求温度传感器以某个单位(例如,摄氏度)且在某个范围(例如,从-10℃直到+100℃)内提供数据。

在下文中,描述了根据一实施例的语义配对。尽管app的发现旨在针对期望特性和要求的查询,但是配对遵循将app要求与该app被部署或安装在其上的设备的能力进行匹配的目标。

app要求和设备能力两者优选地被描述为领域依赖模型103、303的级别处的baas本体中的数据点。因此,配对相当于找到在语义上具有与app数据点等效的描述的设备数据点的问题。基于app的第二语义模型的语义部分,针对合适设备的查询是可能的。

例如,如果发现查询取回能够暴露温度数据的app,则能够提供温度测量结果的设备是必需的。以下的sparql查询将搜索这种设备:

与上面描述的基于语义的发现类似,随着从app描述中提取了具体单位(例如,摄氏度),还可以通过由该单位替换某些变量(例如,通过替换变量)来缩窄该语义配对查询。类似地,可以指定满足app的要求的设备的其他性质和能力。

如果通过查询取回了结果,则找到了匹配,这意味着:如果存在满足app要求的设备数据点,则该设备递送确切地能够递送app所预期的数据。该数据由预期的单位、范围和其他测量能力提供。更进一步地,可以满足设备的其他可指定的特性和性质,诸如预期位置。成功的匹配意味着可以在设备上部署或安装app。

在下文中,参考图8描述了app市场的基本构建块。

设备802能够执行app的语义模型。它动态地创建新资源,该新资源实质上是由语义模型表示的新字段函数。该特征由包括处理引擎和语义推理器811的运行时环境提供。设备802可选地提供标准设备运行时环境820,以便执行用于传统自动化系统的软件。

用于设备和app的语义储存库801存储如前面描述的语义模型。它还提供如对于发现和配对而言所需的查询和推理能力。可以由设备802经由接口806下载和安装app。

代码库803提供了用于传统自动化环境或传统自动化函数的软件库,其在常规或传统执行环境中(即,基于模型驱动的设计和代码生成)更方便地执行。可以由设备802经由接口850下载和安装传统自动化函数。

语义储存库801提供面向设备的接口870以用于操控其设备描述。更进一步地,语义储存库801被配置成添加、更新、删除或查询设备描述。设备802还能够经由接口870查询语义储存库801,以便搜索app。

一旦被公开,app就可以经由接口870从语义储存库下载到设备802并被安装。这些app可以直接经由语义模型而定义或由代码库803提供。对于后一种情况,代码库803的传统自动化函数需要经由接口830利用由语义储存库提供的语义词汇而在语义上注释。语义储存库801还经由接口840注册代码库803的传统自动化函数,以便使它们可发现。

在下文中,描述了根据一实施例的与app市场的构建块有关的方法的基本工作流程。

在自动化系统的开发阶段中,典型的目的是创建新功能,例如已经参考的avgtemp。工程师首先通过在语义储存库801中探索语义模型来启动该任务。特别地,正在探索领域依赖模型303和领域依赖模型303下面的层。

以该方式,工程师检查新app相对于感兴趣的领域的位置,并识别与描述该app相关的本体实体。一旦在语义上描述了该app,就将其表示存储在语义储存库中。

在工程阶段中,工程师可以在语义储存库801中搜索现有app。可以对感兴趣的app进行实例化、配置和定位。该附加信息也被存储在语义储存库中,作为在开发阶段中提供的app语义表示的部分。一旦创建了app的语义模型,该app就准备好被部署或安装在设备上。

在工程过程期间,工程师继续配对的过程,以便识别针对所发现的app的适当设备。值得注意的是,还可以在操作阶段中或在维护阶段中采取该步骤。

人类或设备修改正在进行的自动化过程可以是期望的。例如,机器人请求app使用来自另一个设备(例如,机器或机器人)的未充分使用的资源。因此,在操作阶段期间可以在设备上动态地安装app。

对于技术故障在需要被替换的设备上发生的情况,新设备需要安装app,包括它们的功能和配置。

配置和功能的包括有利地由下述实施例提供:其中功能或app的语义模型包括与配置和功能有关的作为功能的组成部分的所有相关信息,连同直接在设备上直接执行这些语义模型的创造性条款。

要理解的是,可以以不同方式组合所附权利要求中记载的元素和特征,以产生同样落在本发明的范围内的新权利要求。因此,尽管下面所附的从属权利要求从属于仅单个独立或从属权利要求,但是要理解的是,可以可替换地使这些从属权利要求在可替换方案中从属于任何前述或以下权利要求,无论是独立权利要求还是从属权利要求,并且这种新组合要被理解为形成本说明书的部分。

尽管上面已经通过参考各种实施例描述了本发明,但是应当理解的是,可以对所描述的实施例做出许多改变和修改。因此所意图的是,前述的描述应被认为是说明性的而不是进行限制,并且应理解,实施例的所有等同物和/或组合意图被包括在本说明书中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1