用于控制自动化系统的通信参与者之间的消息传送的概念的制作方法

文档序号:18095442发布日期:2019-07-06 11:00阅读:227来源:国知局
用于控制自动化系统的通信参与者之间的消息传送的概念的制作方法

本专利申请要求德国专利申请de102016122384.0的优先权,其公开内容通过引用结合于此。

自动化系统通常包括多个通信参与者。在这种情况下,例如可以规定一个通信参与者为其他通信参与者提供一个或多个服务。

需要以有效地方式通知其他通信参与者:所述一个通信参与者提供一个或多个服务。

公开文献de112010005499t5公开了一种用于控制一个或多个发布者应用程序与一个或多个用户应用程序之间的消息传送的方法。

专利文献ep2566281b1公开了一种物联网(iot)架构。

本发明的目的是提供一种用于有效控制自动化系统的通信参与者之间的消息传送的概念。

该目的借助于独立权利要求的相应主题解决。本发明的有利实施方式分别是从属权利要求的主题。

根据一个方面,提供了一种用于控制自动化系统的通信参与者之间的消息传送的方法,其中,在通信参与者上分别执行一个或多个发布者应用程序和/或一个或多个用户应用程序,其中,自动化系统包括消息交换器,所述消息交换器被构造为将针对指定用户应用程序的指定主题的订阅录入到主题树中,该方法包括以下步骤:

-响应于由多个通信参与者中的第一通信参与者的发布者应用程序发布的关于主题树的指定主题的消息,该第一通信参与者提供一个或多个服务,

-借助于消息交换器判断是否已录入多个通信参与者中的第二通信参与者的针对指定主题的用户应用程序,

-如果已录入针对指定主题的用户应用程序,则借助于消息交换器向第二通信参与者的已录入用户应用程序传送将提供一个或多个服务的消息。

根据另一方面,提供了一种用于自动化系统的消息交换器,其中消息交换器被构造为执行用于控制自动化系统中的通信参与者之间的消息传送的方法。

根据再一方面,提供了一种自动化系统,其包括多个通信参与者和用于自动化系统的消息交换器。

根据另一方面,提供了一种计算机程序,其包括程序代码,该程序代码用于当在计算机上、特别是在消息交换器上执行计算机程序时,执行用于控制自动化系统的通信参与者之间的消息传送的方法。

本发明基于以下认识:可以通过由提供一个或多个服务的通信参与者发布针对指定主题的这些服务来解决上述任务。因此,通过消息交换器通知其他通信参与者的已针对相应主题录入的用户应用程序,该用户应用程序将提供相应的服务。在此情况下,应该注意,消息交换器向已录入的用户应用程序仅仅传送一个消息,即通知将提供一个或多个服务。特别地,由消息交换器传送的消息不包括由哪些通信参与者提供所述一个或多个服务的信息。因此第一通信参与者保持匿名。

另一个优点特别是自动化系统的通信参与者不需要彼此了解。例如,第一通信参与者发布关于指定主题的消息。第二通信参与者已订阅该主题。然后第二通信参与者经由消息交换器接收该消息,而无需知道该消息最初来自第一通信参与者。

因此存在匿名性。

因此,在本发明的自动化系统中,不提供、特别是不可能提供:直接从一个通信参与者向另一个通信参与者发送消息。原则上,通信参与者的针对指定主题录入的所有用户应用程序可以访问针对该指定主题的所有消息。这也意味着通信参与者彼此不了解。消息交换器对消息传输解耦,从而解耦通信参与者之间的数据传输。

所有消息以及由此所有数据都由消息交换器专门处理。

由此,特别是实现了以下技术优势:可以有效地通知自动化系统的通信参与者将提供一个或多个服务。

在本说明书意义下的消息交换器特别是也可以称为“消息代理器”。

因此,本发明特别是基于使用大部分已知的消息传送机制,即发布-订阅-消息传送机制。“发布”代表“公布”(publish)。订购代表订阅(subscribe)。借助于发布-订阅-消息传送机制,用户应用程序可以以消息的形式从发布者应用程序接收信息。在这方面,本说明书意义下的消息是例如用于在应用程序之间交换的数据单元。

特别地,发布者应用程序也可以称为“公布者”。

特别地,用户应用程序可以称为“参与者”。

根据本发明的构思特别是在于,如果通信参与者之一提供一个或多个服务,经由消息交换器通知通信参与者:,其中仅通知将提供一个或多个服务,而不通知由所述通信参与者之一提供一个或多个服务的附加信息。有利的是,一旦录入了通信参与者的针对指定主题的用户应用程序之一,就由消息交换器自动通知通信参与者就自动通过消息交换器获得将提供所述一个或多个服务。因此,该通信参与者不需要由自身获得该信息。

因此,相应的通信参与者知道将提供一个或多个服务,就此而言该通信参与者可以特别利用这些服务。

根据该方法的一种实施方式规定,来自第一通信参与者的发布者应用程序的消息包括要在主题树的哪个主题中发布针对一个或多个服务的任务的信息,其中该方法还包括以下步骤:

借助于消息交换器录入由第一通信参与者的用户应用程序产生的针对以下主题的订阅,在主题树的该主题中应当发布针对一个或多个服务的任务,

响应于关于主题树的以下主题的消息由第二通信参与者的发布者应用程序发布:其中在该主题中应当发布针对一个或多个服务的任务,以及应当执行与所述一个或多个服务对应的任务,借助于消息交换器向第一通信参与者的已录入用户应用程序传送所发布的消息,即应当执行与所述一个或多个服务对应的任务。

由此,特别是实现了以下技术优点,即第二通信参与者的任务可以被有效地传送给第一通信参与者。因此在这种情况下,足够的是,第二通信参与者的发布者应用程序发布关于以下主题的消息,在该主题中要发布与所述一个或多个服务对应的任务,使得第一通信参与者自动接收相应的任务——这是因为第一通信参与者的用户应用程序已录入主题树的相应主题中。

例如,要针对一个或多个服务发布任务的主题是例如与以下指定主题相同的主题,关于所述指定主题第一通信参与者已发布了其提供一个或多个服务的消息,或者是例如不同的主题。

根据该方法的另一个实施方式规定,该任务表示要借助于一个或多个服务处理来自主题树的指定主题的消息,该方法还包括以下步骤:

-响应于借助于第一通信参与者的用户应用程序产生针对指定主题的订阅,

-借助于消息交换器录入第一通信参与者的针对指定主题的用户应用程序,

-借助于消息交换器将关于指定主题的消息传送到第一通信参与者的用户应用程序。

由此,例如实现以下技术优点,即可以有效地借助于第一通信参与者响应于任务的服务来处理来自指定主题的数据。

这意味着第二通信参与者可以借助于由消息交换器的传送的相应消息来使第一通信参与者处理来自主题树的指定主题的数据。

根据该方法的另一个实施方式规定,该任务说明应该发布借助于借助于第一通信参与者处理的、针对主题树的预给定主题的数据,其中该方法包括以下步骤:

-响应于包括已处理数据的关于预给定主题的消息已由第一通信参与者的发布者应用程序发布,借助于所述消息交换器将包括已处理数据的消息传送到第二通信参与者针对所述预给定主题录入的用户应用程序。

由此例如实现以下技术优点,即已处理的数据可以有效地传送给第二通信参与者。因此,这特别是意味着:在这种情况下,第二通信参与者通过使用消息交换器指示第一通信参与者,第一通信参与者发送(即,发布)已处理数据。针对指定主题录入第二通信参与者的用户应用程序,从而借助于消息交换器将已处理数据自动传送给第二通信参与者的用户应用程序。

根据该方法的一种实施方式规定,第一通信参与者提供一个或多个服务的消息包括说明所述一个或多个服务期望哪些命令的命令描述,和/或包括说明所述一个或多个服务期望哪些参数的参数描述,其中该方法包括以下步骤:

-借助于消息交换器将命令描述和/或参数描述传送到第二通信参与者的已录入用户应用程序。

由此例如实现以下技术优点,即可以通过使用消息交换器有效地通知其他通信参与者,所述一个和/或多个服务期望哪些命令或哪些参数。

命令描述和/或参数描述特别是提供命令语法和/或参数语法。

由于第二通信参与者的已录入用户应用程序基于该录入自动接收命令描述和/或参数描述,所以可以以有利和有效的方式向第二通信参与者有效地通知命令描述更新和/或参数描述更新。

因此例如如果命令语法和/或参数语法应该改变,则可以有效地将该改变通知给第二通信参与者。

根据一种实施方式,该方法包括以下步骤:响应于由通信参与者之一的发布者应用程序发布的关于主题的消息,其中该消息包括必须如何解释所述通信参与者之一的数据的数据描述,借助于消息交换器来储存数据描述。

由此例如实现了以下技术优点,即可以向通信参与者有效地通知必须如何解释提供给所述通信参与者之一的数据。

因此,例如响应于接收与新用户应用程序相关的主题订阅的稍后命令,可以在稍后的时刻将数据描述传送到新的用户应用程序。

此外,通过数据描述被传送到相应已录入的用户应用程序,特别是实现以下技术优点,即数据描述的更新或改变也被自动地通知到已录入的用户应用程序。

在一种实施方式中,数据描述储存在保留主题中。

保留主题是指即使当前没有录入针对该主题的用户应用程序也仍然保留其中储存的消息的主题。主题在这里是主题的同义词。

根据该方法的一种实施方式规定,主题树的指定主题对应于与所述通信参与者之一的与消息相对应的主题,其中该方法包括以下步骤:

-借助于消息交换器将数据描述传送到第一通信参与者的用户应用程序。

由此例如实现了以下技术优点,即第一通信参与者可以被有效地告知必须如何解释根据任务处理的数据。

由此特别是实现了元信息(数据描述)的有效发布。

根据该方法的一种实施方式规定,消息以二进制格式存在。

由此例如实现了以下技术优点,即有效和快速的数据传送和/或数据交换是可能的。

根据该方法的一种实施方式规定,从以下服务组中选择所述一个或多个服务:存档、数据分析、状态监视(condition-monitoring)。

由此例如实现了以下技术优点,即自动化系统使得能够有效地存档和/或分析数据。

状态监视的概念基于通过测量和分析物理量(例如振动、温度、位置/近似)来定期或永久地检测机器状态。

根据该方法的一种实施方式规定,从以下通信参与者的组中选择多个通信参与者:致动器设备(特别是驱动设备)、传感器设备、控制设备、机器控制设备、数据库服务器、数据储存服务器。

由此例如实现了以下技术优点,即可以以各种方式使用自动化系统。

致动器设备特别是包括一个或多个马达和/或驱动器。

消息交换器和/或自动化系统的技术功能类似于该方法的相应技术功能,反之亦然。

措辞“和/或”特别包括措辞“以及/或者”。

根据一种实施方式,一个或多个通信参与者被构造为物联网客户端。措辞“物联网”可以缩写为“iot”。

根据一种实施方式,本说明书意义下的任务包括关于一个或多个服务应该执行该任务多长时间的时间信息。

例如,任务表示应该将数据存档指定的时间段。例如在该时间段结束后,存档过程将结束。

特别地,在本说明书的意义下的数据处理包括数据分析和/或数据存档。特别是,存档数据包括数据储存。

在下文中,将基于优选实施例更详细地解释本发明其中:

图1示出了用于控制自动化系统的通信参与者之间的消息传送的方法的流程图,

图2示出了自动化系统,

图3至图8分别示出了框图,所述框图示出了用于控制自动化系统的通信参与者之间的消息传送的方法中的各个步骤,以及

图9至图13分别示出了框图,所述框图示出了用于控制自动化系统的通信参与者之间的消息传送的另一方法中的各个步骤。

在下文中,相同的附图标记可以用于相同的特征。

图1示出了用于控制自动化系统的通信参与者之间的消息传送的方法的流程图,其中对通信参与者分别执行一个或多个发布者应用程序和/或一个或多个用户应用程序,其中自动化系统包括消息交换器,所述消息交换器被构造为将用于指定用户应用程序的针对指定主题的订阅录入主题树中,所述方法包括以下步骤:

-响应于由多个通信参与者中的第一通信参与者的发布者应用程序发布的关于主题树的指定主题的消息,该消息表示第一通信参与者提供一个或多个服务,

-借助于消息交换器判断101是否已录入多个通信参与者中的第二通信参与者针对指定主题的用户应用程序,

-如果已录入针对指定主题的用户应用程序,则借助于消息交换器向第二通信参与者的已录入用户应用程序传送103将提供一个或多个服务的消息。

图2示出了自动化系统201。

自动化系统201包括多个通信参与者203和消息交换器209。

下面将通信参与者203中的一个称为第一通信参与者,并且另外由附图标记205来表示。

下面将多个通信参与者203中的另一个称为第二通信参与者,并且另外由附图标记207来表示。

在多个通信参与者203中的每一个上执行一个或多个发布者应用程序和/或一个或多个用户应用程序。消息交换器209被构造为将用于指定用户应用程序的针对指定主题的订阅录入到主题树中。

例如,消息交换器209被构造为响应于由第一通信参与者205的发布者应用程序发布的关于主题树的指定主题的消息,该消息表示第一通信参与者205提供一个或多个服务,判断是否已录入第二通信参与者207的针对指定主题的用户应用程序。

例如,消息交换器209被构造为,当已录入针对指定主题的用户应用程序时,经由第二通信参与者207的已录入用户应用程序传送将提供一个或多个服务的消息。

例如,多个通信参与者203被构造为iot客户端。

例如,第一通信参与者205被构造为数据处理设备。在这种情况下,相应的服务是例如数据分析。

例如,第二通信参与者207被构造为传感器设备。在这种情况下,传感器设备207的传感器数据例如在使用消息交换器209的情况下或在消息交换器209的转接下被传送到数据处理设备205,从而数据处理设备205可以例如分析传感器数据,也就是评估传感器数据。

图3至图8分别示出了自动化系统301的框图,其示出了用于控制自动化系统的通信参与者之间的消息传送的方法中的步骤。

自动化系统301包括主题树303,该主题树具有分层结构。这意味着主题树303包括多个主题305至327,例如这些主题被布置为例如部分或完全分层的树结构。

本说明书意义下的主题也可以通过英语术语“topic(主题)”代替或用其表示。

各个主题特别是取决于实际的自动化系统。下面列举的是根据示例性实施方式使用的可能主题的示例,其中该列举不应被理解为限制性的,而应仅仅被理解为示例性的:“机器制造商的名称”、“客户名称”、“机器名称”、“传输系统”、“故障消息”、“状态报告”、“服务名称”、“服务描述”、“数据描述”、“命令描述”、“参数描述”。

例如,机器制造商是自动化组件的制造商,例如硬件或软件制造商。机器制造商例如是各个机器的制造商,其中机器例如由多个自动化组件形成。

例如,客户是机器制造商的产品的使用者。

机器例如是以下机器之一:机床、锻压机、注塑机、装填机、工业机器人。

传输系统例如是机器制造商的机器的组件。

致动器设备包括例如一个或多个致动器。致动器例如是以下致动器之一:继电器、阀门。

传感器设备包括例如以下元件中的一个或多个:温度传感器、压力传感器、光传感器、自动发送器。

传输系统包括例如一个或多个驱动设备。驱动设备包括例如以下元件中的一个或多个:步进马达、线性马达、同步电机、异步电机、变频器、伺服放大器。

传输系统例如除了至少一个驱动设备之外还包括致动器设备和/或传感器设备。

本发明的意义上的消息包括例如数据。数据包括例如故障消息,例如机器的故障消息。因此,可以例如以有利的方式有效地订阅表示在特定机器/设备中的故障事件的消息。通常,特定事件也可以作为单独的主题存在,例如装填机达到特定产量。以这种方式,有利地可以相对快速地确定机器的可能磨损。因为通常高产量与高负荷相关联,这通常导致更高的磨损。

在所描述的实施例中,主题319代表“服务”。在主题树303的该部分中,录入由通信参与者提供的服务。

自动化系统301包括第一通信参与者329和第二通信参与者331。自动化系统301例如还包括为了清楚起见未示出的其他通信参与者。

由于存在主题319,通信参与者知道一般可以在自动化系统301中提供服务。通过搜索相对于主题319产生的子主题,通信参与者可以获得关于如何能够使用服务的信息。在下文中,这将通过示例更详细地解释。

第一通信参与者329为自动化系统301的通信参与者提供存档服务。

第一通信参与者329发布关于指定主题325的消息339,即,关于如何使用存档服务的消息329。因此,主题325可以被称为“服务描述”和/或“命令描述和/或参数描述”。该发布过程借助于带有附图标记335的箭头象征性地示出。

自动化系统301包括未在这里示出的消息交换器,该消息交换器响应于消息339的发布而重新设计主题325。该主题是主题321的子主题,该子主题代表“存档”,即,指由第一通信参与者329提供的服务的类型。在此方面,主题321本身是主题319“服务”的子主题。

主题的子主题是该主题下面的一级。

第二通信参与者331例如在主题307中发布消息337。该发布过程由带有附图标记333的箭头象征性地示出。

第一通信参与者329连接到数据存档器341,以便在那里储存数据。

消息交换器产生主题327,在该主题中应当发布存档服务的任务。应当在主题327中发布任务的信息例如被包括在消息339中。

针对主题319录入第二通信参与者331。该录入过程在图4中由带有附图标记401的箭头象征性地示出。

由于第二通信参与者331已经订阅了上级主题319,因此第二通信参与者自动接收从消息交换器传送的针对主题325录入的消息339。这在图5中由带有附图标记503的箭头象征性地示出。

第一通信参与者329继续订阅主题“任务”327。所述订阅过程由带有附图标记501的箭头象征性地示出(参见图5)。

因此,在主题327中由通信参与者发布的任务借助于消息交换器自动传送到第一通信参与者329。

图6示例性地示出了第二通信参与者331如何在主题327中发布任务603。例如,该任务表示来自主题307的数据要被存档特定的时间段,例如一小时。

在主题307中,例如发布传感器设备的测量数据。

该任务由第一通信参与者329接收,因为第一通信参与者已经订阅了主题327。这在图7中通过具有附图标记701的箭头象征性示出。

图8示例性地示出了第一通信参与者329如何根据任务603而订阅主题307,以便第一通信参与者329从主题307获得相应数据。因此,消息交换器然后相应地将主题307的相应数据传送到第一通信参与者329。来自主题307的这些数据由图8中的附图标记803来表示。

第一通信参与者329将所述数据803存档在数据存档器341中,这由带有附图标记805的箭头象征性地示出。

例如,只要在任务中加以说明,存档就在特定的时间段之后结束。

图9至图13分别示出了自动化系统301的框图,其分别示出了用于控制自动化系统的通信参与者之间的消息传送的另一方法中的步骤。

第一通信参与者329提供另外的服务,所述服务能够将数据存档器341中的存档数据提供给其他通信参与者。例如,所述另外的服务可以被称为数据提供服务。

第一通信参与者329发布关于指定主题909的消息905,即,关于如何使用数据提供服务的消息905。因此,主题909可以被称为“服务描述”和/或“命令描述和/或参数描述”。该发布过程由带有附图标记903的箭头象征性地示出。

消息交换器响应于消息905的发布而重新设计主题909。这个主题表示主题907的子主题,其代表“数据提供”,即,指由第一通信参与者329提供的服务的类型。在此方面,主题907本身是主题319“服务”的子主题。

消息交换器产生主题911,在该主题中应当发布数据提供服务的任务。应当在主题911中发布任务的信息例如被包括在消息905中。

第二通信参与者331继续订阅主题319“服务”,这由带有附图标记901的箭头象征性地示出。

由于第二通信参与者331订阅了主题319,因此第二通信参与者自动从消息交换器接收消息905。

除了主题327之外,第一通信参与者329还订阅了主题911,在该主题911中公布了相应的任务,以便自动地获得这些任务。

该订阅过程在图10中由带有附图标记1001和1003的箭头象征性地示出。

在图10中由带有附图标记503和/或1005的箭头分别象征性地示出将消息339和/或905传送到第二通信参与者331。

例如,第二通信参与者331在主题911中公布任务1103。例如,该任务表示应当在主题1203中发布在数据存档器341中存档的所有关于主题315(其具有特定时间段内的数据)的数据,其中主题1203由消息交换器来产生(参见图11和12)。

任务1103的发布在图11中由带有附图标记1101的箭头象征性地示出。

第一通信用户329由于相应的订阅而自动接收已在主题327和911中发布的任务。借助于消息交换器向第一通信参与者329的这种传送过程在图11中由带有附图标记1105和1107的箭头象征性地示出。

图12示出了第二通信参与者331已订阅主题1203,以便接收第一通信参与者已在那里发布的数据。

该订阅在图12中由带有附图标记1201的箭头象征性地示出。

根据任务1103,第一通信参与者329从数据存档器341中读出相应的数据1301并将其公布在主题1203中,数据1301借助于消息交换器从该主题1203传送到第二通信参与者331。

在图13中由带有附图标记1303的箭头象征性地示出了主题1203中的数据1301的发布。

在图13中由带有附图标记1305的箭头象征性地示出了从主题1203到第二通信参与者331的数据传送。

对于发布和/或录入的各个步骤,在相应的通信参与者上执行一个或多个发布者应用程序和/或一个或多个用户应用程序。

下面将基于由自动化系统的几个通信参与者访问的邮件站进一步解释根据本发明的概念。

对于以下描述,iot客户端表示通信参与者。根据本说明书,提供服务的iot客户端是第一通信参与者。根据本说明书,使用服务的iot客户端是第二通信参与者。消息代理器对应于消息交换器。

此外,英语术语“publish”在下文中用于德语术语“veroeffentlichen”的解释。对于德语术语“abonnieren”,下面使用英语术语“subscribe”。

根据本说明书,术语“topic”对应于术语“thema”。存储器供应商描述了存档服务。

服务也可以称为“service”。

对于经由消息交换器进行的各种iot客户端的通信,以如下方式定义了主题结构(树结构或主题树):该主题结构可以作为中央通信管理结构用于自动化技术。从而iot客户端不仅可以发送和接收数据,还可以提供任何期望的服务,例如为其他iot客户端长期存档数据,所述其他iot客户端例如分析数据(例如,这也可以是服务)。

例如,主题“服务”具有主题“命令描述”和主题“结果”作为子主题。在“命令描述”主题中发布如下信息,即,该服务期望什么命令(以及例如附加地期望什么参数)。在主题“结果”中公布服务的结果,即,服务的输出。主题“命令描述”例如可以称为“命令”主题。主题“结果”例如可以称为“结果”主题。

提供服务的iot客户端已将潜在的服务及其描述发布到由消息交换器上的例如关键字(keyword)定义的主题。同时,提供服务的iot客户端知道使用服务的iot客户端将发布执行服务的命令的主题(同样由于关键字)。提供服务的iot客户端自动订阅此命令主题。例如,命令主题也可以是服务主题的子主题,然而不必是服务主题的子主题。例如在命令主题中还可以说明结果主题,在所述结果主题中可以储存所执行的服务的结果。通常,经由关键字或在主题体系结构内的嵌套关键字来识别任何期望的消息交换器上的相关主题。

例如,关键字事先被传送到iot客户端。特别地,iot客户端能够订阅消息交换器的所有主题,因此iot客户端可以以有利的方式搜索关键字和主题结构。

例如,使用服务的iot客户端会自动订阅其上提供服务的主题。结果,使用服务的iot客户端知道将提供什么服务、如何构建服务以及他们期望的什么命令和参数。此外,使用服务的iot客户端知道其必须在什么主题上发布其命令以执行服务(如已经描述的,提供服务的iot客户端已自动订阅了该主题)。

通过确定这些通信结构,iot客户端可以经由中央消息交换器交换数据、服务以及还有命令。这是一个特别的优点,因为最初在发布者/参与者通信的情况下没有为iot的客户端之间的直接通信定义规则。

由于在自动化技术中数据通常以快速周期进行交换,因此对于物联网通信来说即使没有必要,以二进制格式交换数据也是有意义的。当使用其他数据格式时,主题的上述体系结构和通过它实现的对各种iot客户端的服务的访问也是有效的。

然而,如果对于最高性能要求而选择二进制字符串,则例如规定使用自动化系统的消息交换器的保留主题,因为在这种情况下必须使二进制字符串的数据描述可访问。

保留主题表示一种主题,即使当前没有用户应用程序订阅该主题,也在该主题中保留消息。

只有这样,每个iot客户端才能正确地解释数据。数据描述由数据发生器发布到保留主题中。通过相应的线索将这是保留主题的消息通知给消息交换器。与其他正常主题的数据相反,即使当前没有其他iot客户端对所述数据感兴趣,即已经订阅该数据,保留主题的数据也由消息交换器进一步保留。因此,连接到正常主题的iot客户端(数据接收者)总是订阅针对二进制字符串的当前有效数据描述。保留主题也可以是正常主题的子主题,这意味着数据的描述也可以位于实际的数据主题下,但也可以与实际的数据主题分离。

如果数据描述位于保留主题中,则可以有利地显著减少通信中耗费的时间和效能。数据发生器只需发送一次描述并且数据接收器只需查看一次,以便能够连续解释数据。然而,只有在数据发生器(例如,控制单元或控制设备)上发生数据描述的相应改变,数据描述才是有效的。

在自动化系统中,在控制单元的情况下,这可以是例如新的代码下载或其它所谓的在线改变。例如,在线改变是在控制单元的操作期间执行的控制程序的改变。通过这些动作,产生新的数据描述,产生数据的iot客户端将所述新的数据描述直接发布到保留主题上。然后在那里更新数据描述,并且相应地通知先前已订阅了数据描述的每个iot客户端。由此即使数据描述被改变,也可以确保对数据的正确解释。

下面将以数据存档器供应商为例进一步解释根据本发明的概念。数据存档器供应商在下面由英文术语“storageprovider(存储器供应商)”表示。

机器控制设备被配置为iot客户端。在激活自动化系统之后,开始与网络中的iot消息交换器进行通信。机器控制设备以二进制格式循环地将数据发布到消息交换器处的正常主题。例如,该主题可以看作:“机器制造商/客户5/机器l8/传输系统/数据”。为此,机器控制设备首先将有效的一次性数据描述发布到保留主题。该描述是必要的,以便允许其他iot客户端解释二进制数据。

存储器供应商是iot客户端,其充当至各种存储器(数据存档器)的网关。存储器供应商还连接到消息交换器,并在那里提供其在预定的服务主题中指示的服务,例如:“csp_机器制造商/客户5/存储器/服务”。在另外的子主题中,该存储器供应商可以储存服务的描述,或从其他iot客户端接收命令。从而其他iot客户端不必事先知道将提供哪些服务,而是可以在没有事先了解的情况下读出这些服务。在这个示例中,存储器供应商提供服务—recorddata(数据存档)和gethistoricaldata(提供存档数据)。

第三iot客户端是用于分析的个人计算机pc。这种分析pc也连接到消息交换器。基于主题体系结构中预定的关键字,分析pc可以在其他事情中找到存储器供应商的数据和描述主题以及机器控制设备的数据和描述主题。因此分析pc在其他事情中识别存储器供应商提供recorddata服务。通过这种方式,分析pc现在可以读出服务描述以及该服务期望什么命令和参数。例如,对于recorddata,该服务期望两个参数:用于开始记录的startrecord和要被记录的数据的主题。

在“描述”主题中,例如发布了服务期望使用的命令(也就是命令描述)和/或参数(也就是参数描述)。因此,“描述”主题可以被称为组合的“命令”/“参数”主题。

因此,这意味着分析pc将startrecord(用于“开始存档”的命令)和机器控制设备的主题“机器制造商/客户5/机器l8/传输系统/数据”发送到主题“csp_机器制造商/客户5/存储器/服务/recorddata/命令”。由于其服务描述,存储器供应商期望所述命令恰好在该主题上并已自动订阅它。由于关键字,存储器供应商可以自动在数据主题的子主题中识别数据描述。

可替换地或另外地,这可以是在所接收的命令中的第三参数。现在存储器供应商订阅从机器控制设备发布到消息交换器的数据,并且将数据例如连续地储存在后接的存储器中,一直到接收到stoprecord命令为止,在后接的存储器中存储器供应商还一次性储存了数据描述。

如果分析pc想要评估历史数据,则它可以将命令发送到服务“gethistoricaldata”(用于“提供存档数据”的命令)和/或存储器供应商的相应命令主题。例如,这里也单独存在可以移交的潜在参数。对于gethistoricaldata服务,这些可以是:

-数据(例如,先前记录的变量的选择)

-时间段(例如2016年1月5日的上午12点至2016年1月7日的上午12点)

-结果主题,存储器供应商应该将来自存储器的数据发布到该主题中。

分析pc发布了命令,并且立即订阅由其自己在命令中提到的结果主题,以便在那里从存储器供应商接收数据。在存储器供应商中,发生与在recorddata服务那里相同的机制,但这次存储器供应商从存储器中提取数据以便将该数据发布到结果主题中,而不是将数据写入存储器中。

如果机器控制设备上的数据描述现在在没有任何信息交换的情况下发生改变,则利用机器控制设备的数据操作的所有其他iot客户端从改变的时间点起将无法完美地解释所述数据或甚至不能再解释所述数据。因此规定,在改变的情况下更新关于保留主题的数据描述。例如,如果执行在自动化系统中常见的控制程序在线改变,则数据描述改变。然后,机器控制设备将更新的描述发布到保留主题中,该保留主题仍然由消息交换器保留,并且其他iot客户端仍然订阅该主题。在保留主题中将覆盖该数据描述,所有订阅的iot客户端都将收到新描述的副本。例如,存储器供应商将识别这一点并从相应的时间点开始将新数据描述储存在其存储器中。以这种方式,可以始终正确地解释数据并且即使在数据描述改变之后,也可以经由中央消息交换器将历史数据无错误地传送到分析pc。

基于邮件站更详细地进一步示例性地描述本发明的概念,其中分别结合邮件站描述的主题和/或消息分别代表用于主题和/或消息的占位符,如它们在与自动化系统及其元件结合使用的那样,也就是例如:机器、故障消息、数据存档(参见上面的描述)。

例如规定,邮件站的用户(iot客户端)想要向其他用户提供服务。例如设置邮件存档服务“存档(archive)”。因此,用户提供根据需要对特定主题的所有邮件进行存档。由于用户彼此不了解并且不可能直接进行用户对用户通信,因此该服务创建了一封信件,在该信件中它描述了其服务并将该信件放置(发布)在显式服务邮箱(主题“服务”)中。在该服务邮箱中,其他用户可以通过订阅邮箱来收集关于所提供的服务的信息,从而接收更新的服务描述信件。当然,其他用户知道该服务邮箱存在,他们可以在哪个主题或定义的主题结构下找到该服务邮箱以及如何使用它。

例如,服务供应商描述其存档服务的信件包括与潜在用户相关的所有信息,从而该潜在用户可以在事先不知道的情况下使用该服务。不可或缺的部分是关于可以分配任务的邮箱的名称和位置的信息(即,主题),以及关于执行该任务所需要的参数(例如,开始时间、存档的时间段、要存档的主题)。例如,如果用户希望使用存档服务,以对关于动物主题的所有信件进行存档,则该用户会在指定的任务分配邮箱中创建具有所需信息的任务信件。出于实际原因,这个邮箱是存档服务邮箱的“子邮箱”(子主题),因此具有诸如邮件站/服务/存档/任务的地址。

服务供应商已订阅这个任务邮箱,以便随时了解任务的位置。然后,在指定的时间点,服务供应商将开始对指定主题进行存档。用户不知道存档服务在何处以何种方式进行存档。在任何情况下,存档服务现在都订阅关于指定主题的所有信件,并将它们的副本存放在其存档器(数据库)中。

例如规定,用户想要停止服务。用户也经由任务邮箱这样做。在这种情况下,当然是有意义的是:服务供应商提供允许用户访问存档数据或存档数据的选定部分的另一服务。但是,仍然无法直接进行这样的访问:用户既不能直接访问存档数据库,也不能直接与用户通信—这只能经由中心节点、即邮件站进行。

因此,服务供应商提供服务getarchived。服务供应商必须从用户收集如下信息:要请求来自哪个时间段的哪封信件以及要将数据储存在哪个(新)邮箱中。例如,用户在其任务信件中表明他们希望收到从2016年7月11日上午0点到2016年7月12日上午9点的关于主题—邮件站/自然/动物/蝴蝶的所有信件。应该注意的是,先前所有关于主题——邮件站/自然/动物的信件都被存档,因此存档管理器必须将其存档器建立为,使得该存档管理器能提取各个子主题并输出它们。

作为目标邮箱,用户将邮箱命名为“邮件站/我的旧信件”并同时订阅此邮箱。getarchived服务接收任务信件,并立即开始找出匹配的存档信件,并将它们的副本储存在“我的旧信件”邮箱中。

例如现在规定,getarchived服务以正确的顺序将信件逐个储存“我的旧信件”邮箱中,并且必要时以高速储存。更快的实施方式是,getarchived服务以捆绑包的方式将多个信件发送到该邮箱,从而可以将速度提高数倍。

另一个用户还可以从存档服务中搜索存档的信件。

在另一实施方式中,假定服务供应商不在服务邮箱中提供其服务,而是直接“附加”到邮箱,针对所述邮箱该服务供应商可以提供其服务。因此在存档服务的情况下,用户定期将与主题相关的信件储存在相应的邮箱中,并在相应的邮箱中搜索服务。然后该用户可以以上述方式使用该服务,其中该用户必须指定更少的参数。所描述的两个实施方式中的哪一个更合适特别是取决于服务的类型。

总之,本发明提出了如下概念:基于发布者/参与者通信来为自动化系统有效提供和有效利用在自动化技术中的iot客户端的服务。

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