用于联网的控制系统的设备的制作方法

文档序号:6476420阅读:210来源:国知局
专利名称:用于联网的控制系统的设备的制作方法
技术领域
本发明总地涉及诸如复合照明系统之类的联网的控制系统,并且具体地 涉及这样的联网的控制系统中的通信。
背景技术
在商业、工业以及机构企业市场中、以及在消费者市场中,联网的控制 系统是普遍存在的趋势。联网的控制系统的示例是例如用于照明、供暖、通 风或者安全的建筑物自动化系统。联网的控制系统可以由像光镇流器、开关、
日光或占用传感器(occupancy sensor)、致动器或者测量计那样的设备构成。 所述设备优选地以无线方式、即经由RF (射频)模块连接。联网的控制系统 的功能典型地通过由设备的状态和功能构成的设备逻辑、以及由与设备逻辑
准化的。控制应用可以是卖方定义的,而有时是用户定义的。控制应用通常 通过将命令发给不同的设备或者通过将多个设备的信息或者来自多个设备的 信息当作输入来与所述多个设备交互。总的来说,在考虑设备以及被分配给 所述设备的一个控制应用软件时,控制与设备逻辑之间的某些交互对于所述 设备是本地的,而其它交互需要依赖通过本领域已知的通信协议或者其它机 制进行的设备之间的信息通信。
US 2003/0040813Al涉及用于提供家庭自动化系统的分布式控制的方法 和装置,并且描述了用于分布式控制应用的操作原理。在US 2003/0040813Al 中,为各个设备定义逻辑片段(piece ),并且为所述逻辑片段分配标识符(场 景标识符),可以通过将所述标识符发送到所有有关的设备来使用所述标识 符以同时激活所述逻辑片段。由于在所述设备之间仅传送标识符,因此可能 的功能是有限的
发明内容
本发明的一个目的是提供一种用于联网的控制系统的改进设备,其特别 允许改进联网的控制系统中的通信。
所述目的通过独立权利要求解决。另外的实施例通过从属权利要求示出。 本发明的基本思想是对控制应用透明地执行联网的控制系统中的与控制 有关的信息的通信。这允许联网的控制系统的用户或者逻辑设计者对于目标 系统中特定的或者所有的设备的集合定义控制逻辑,而不指定执行有关运行 时间代码的一个或者多个设备,由此不需要用户来指定任何通信方面
(communication aspects )。控制逻辑及其设计过程显著地变得更简单、更紧 凑,并且例如在添加新的功能时允许更大的灵活性。另外,由于本发明允许 将控制逻辑分配给目标系统的任何设备,因此可以使目标控制系统能够对例 如设备能力或者资源进行计算机控制的优化以及自动的优化。
根据本发明的实施例,使得能够不依赖分发方面来开发和建立控制应用, 这允许减少用户看到的控制逻辑的复杂程度、以及逻辑设计过程的复杂程度。 另外,可以使得能够将控制逻辑自由地分派给设备,其允许应用开发后的计 算机控制的和自动的系统优化。由于本发明,非技术熟练用户同样可以容易 地且以最佳方式定义和设置控制逻辑。此外,为运行的系统添加新的控制功 能变得更加容易。
下面解释这里使用的一些重要术语。
术语"联网的控制系统"意味着包括多个连接着的节点或者设备的系统。 可以通过通信系统、例如无线通信系统连接所述设备。联网的控制系统可以 是具有占用和日光传感器以及预定义规则(例如用于平日和周末、工作时间 和下班时间)的复合照明控制系统、建筑物自动化系统、家庭控制系统、气 氛(atmosphere)照明系统、或者包括工业、零售、机构以及住宅的任何其它 的控制和自动化环境。
术语"设备"意味着"联网的控制系统"的任意节点。设备逻辑可以包 括关于对应设备的能力和资源的信息。取决于系统的类型,设备可以包括光 镇流器、开关、日光或占用传感器、致动器或者测量计。可以经由射频模块 连接所述设备。可以通过对应的设备逻辑指定每个设备。
术语"设备逻辑,,意味着由设备提供的可能的控制参数和功能。设备逻 辑可以表示对应设备的硬件或者软件状态的属性,并且定义设备状态和本地 设备功能。可以通过表示设备硬件和软件状态的属性的设备"状态变量"来表示设备逻辑。
术语设备的"运行时间行为"意味着联网的控制系统正常操作期间设备 的功能。
术语"控制逻辑程序"指不依赖设备的程序,其描述一个或多个设备的 运行时间行为。控制逻辑程序(除设备状态变量之外)还可以包括用户定义 的"系统"状态变量。控制逻辑程序可以基本上由关于以编程语言表达的状 态变量的操作组成。
术语"控制逻辑代码"指作为对应控制逻辑程序的转换的设备专用软件 程序。将控制逻辑代码分配给所选择的设备。可以优化控制逻辑代码,以便 在所选择的设备上执行,而不在其它设备上运行。控制逻辑代码可以是可解 释的字节代码。
根据本发明的一个实施例,提供一种设备,其用于包括多个设备的联网
的控制系统,该设备包括
-接收器,用于接收允许控制多个设备中的至少一个设备的运行时间行 为的控制逻辑代码;
-运行时间环境,用于执行控制逻辑代码;以及
-支持逻辑,其可适配于控制逻辑代码,其中支持逻辑提供用于交换执 行控制逻辑代码所必需的状态变量的通信链路。
可以将控制联网的控制系统的多个设备中的至少一个设备的运行时间行 为的控制逻辑代码分配给联网的控制系统的任何所选择的设备,并且在该设 备上执行该控制逻辑代码。
根据本发明的一个实施例,该至少一个设备可以包括所选择的执行控制 逻辑代码的设备。这意味着,所选择的设备可以通过执行控制逻辑代码来控 制其自身的运行时间行为。
根据一个替代实施例,该至少一个设备可以不包括所选择的设备。
根据本发明的一个实施例,该至少一个设备除了包括执行控制逻辑的设 备之外、还可以包括至少另外一个设备,并且控制逻辑可以包括用于存储来 自并非所选择设备的设备的状态变量的存储器。该存储器具有以下优点在 控制逻辑执行期间,控制逻辑代码所需要的状态变量不一定从外部设备传送, 而是可以从内部存储器读取。
根据本发明的一个实施例,通信链路可以允许读取定义所述至少一个设备的实际状态的实际状态变量,并且可以允许将改变后的状态变量传送到所 述至少一个设备,从而执行控制逻辑代码。根据本发明的另一个实施例,通 信链路对于控制逻辑代码可以是透明的。
根据本发明的另 一实施例,支持逻辑可以包括用于接收实例化
(instantiation)消息的装置,并且可以将该支持逻辑配置为基于实例化消息 使其自身适配控制逻辑代码。
根据本发明的另一个实施例,可以将接收器配置为接收另外的控制逻辑 代码,该代码允许控制所述多个设备中的至少一个第二设备的运行时间行为, 其中可以将运行时间环境配置为执行该另外的控制逻辑代码,并且其中支持 逻辑可适配于该另外的控制逻辑代码。
根据本发明的一个实施例,可以将接收器配置为经由通信链路接收控制 逻辑代码。
根据本发明的另 一 实施例,运行时间环境可以是虛拟机。
根据本发明的一个实施例,提供用于初始化根据本发明的具有多个设备
的联网的控制系统的装置,其包括
-用于将定义所述多个设备中至少一个设备的运行时间行为的、不依赖
设备的控制逻辑程序转换为可在多个设备中所选择的设备上执行的控制逻辑
代码的部件;
-用于将控制逻辑代码传送到所选择的设备的部件;以及
-用于适配所选择设备的支持逻辑以及具有在控制逻辑程序中使用的状 态变量的所有设备的支持逻辑的部件,其中支持逻辑提供用于交换控制所述 至少 一个设备的运行时间行为所必需的状态变量的通信链路。
具有在控制逻辑程序中使用的状态变量的所有设备可以为控制逻辑程序 提供输入状态变量。对于被分配给一个所选择设备的控制逻辑代码,不仅必 须适配所选择的设备的支持逻辑,而且必须适配利用在控制程序中使用的状 态变量输入的所有(主)设备的支持逻辑。具体地,适配预订表条目。
根据本发明的一个实施例,可以通过对应的设备逻辑指定所述多个设备 中的每个设备,并且可以配置用于转换的部件以考虑与所选择的设备相对应 的设备逻辑,使得转换后的控制逻辑代码适于所选择的设备。这允许将控制 逻辑代码适配于所选择的设备。
根据本发明的另一实施例,可以将用于转换的部件配置为基于与所选择的设备相对应的设备逻辑选择所选择的设备。这允许选择联网的控制系统的 所述多个设备中最适于执行控制逻辑代码的设备。
设备逻辑可以包括有关根据本发明实施例的所选择设备的能力和资源的 信息。
根据本发明的另一实施例,可以将用于转换的部件配置为将定义所述 多个设备中至少 一个另外的设备的运行时间行为的、另外的不依赖设备的控 制逻辑程序转换为可在所述多个设备中的另外所选择的设备上执行的另外的 控制逻辑程序代码。
可以将用于传送的部件配置为将该另外的控制逻辑代码传送到该另外所 选择的设备的运行时间环境,以便执行该另外的控制逻辑代码,并且
可以将用于适配的部件配置为适配该另外所选择的设备的支持逻辑。
根据本发明的另一实施例,可以将用于转换的部件配置为从定义联网的 控制系统的所述多个设备的运行时间行为的控制逻辑程序的池(pool)中接 收不依赖设备的控制逻辑程序以及另外的不依赖设备的控制逻辑程序。
根据本发明的实施例,可以将所述装置配置为转换并且传送该另外的控 制逻辑代码,以便在操作期间更新联网的控制系统。
根据本发明的另 一实施例,该另外所选择的设备可以是该所选择的设备, 该另外的不依赖设备的控制逻辑程序可以是在该所选择的设备上执行的控制 逻辑程序的替代者。
根据本发明的另一实施例,提供联网的控制系统,其包括
-根据本发明的多个设备,其中通过对应的设备逻辑指定每个设备;
-用于收集所述多个设备的设备逻辑、并且基于与所述多个设备中至少 一个设备相对应的设备逻辑来指定该至少一个设备的运行时间行为的部件;
-用于生成定义该至少一个设备的运行时间行为的、至少一个不依赖设 备的控制逻辑程序的部件;以及
-根据本发明的用于初始化的装置。
根据本发明的实施例,设备逻辑表示对应设备的硬件或者软件状态的属性。
根据本发明的另 一实施例,用于收集的部件可以包括允许用户指定该至 少一个设备的运行时间4亍为的4妄口 。
根据本发明的实施例,该接口可以允许用户定义所选择的设备。根据本发明的实施例,该接口可以是图形4妄口。
根据本发明的另一实施例,可以将用于收集的部件配置为基于与该至
指定该至少 一个设备的运行时间行为。
根据本发明的另一实施例,可以将用于收集的部件配置为基于所有设备 逻辑指定所述多个设备中所有设备的运行时间行为,并且可以将用于生成的 部件配置为提供多个不依赖设备的控制逻辑程序以定义所述多个设备中所有 设备的运行时间行为。
根据本发明的实施例,联网的控制系统还可以包括至少一个应用,该应 用用于通过对于设备组的共同状态变量或者对于设备组的值的集合的操作来 控制设备组。组是逻辑设计和维护的基本概念,并且允许对于设备集合的共
同状态变量的操作、例如"将所有灯的明暗等级设置为值X",或者对于值
的集合的操作、例如"对通过传感器组测量的日光值求平均"。可以从抽象
设计(abstract design)、例如"客厅中的所有灯,,中获得组,其导致类型组、 例如类型灯的组。还可以在直接设计中通过对物理设备、例如房间中的所有 灯任意地分组("任意组"不具有类型)来手动地定义组。
根据本发明的另 一实施例,提供了用于初始化根据本发明的具有多个设 备的联网的控制系统的方法,其包括
-将定义多个设备中至少一个设备的运行时间行为的、不依赖设备的控 制逻辑程序转换为在该多个设备中所选择的设备上可执行的控制逻辑代码;
-将控制逻辑代码传送到所选择的设备;以及
-适配所选择设备的支持逻辑以及具有被用作控制逻辑程序中的输入的 状态变量的、所有设备的支持逻辑,其中支持逻辑提供用于交换执行控制逻 辑代码所必需的状态变量的通信链路。
根据一个实施例,还可以有在控制逻辑程序中使用作为输出的状态变量, 即,通过控制逻辑程序改变的状态变量。这些设备的(外部)主设备的支持 逻辑不需要改变,这是因为与例如预订相比较,这些设备将仅接收作为所有 设备的固有支持逻辑的、针对那些(输出)状态变量的改变通知。
根据本发明的另一实施例,提供用于建立联网的控制系统的方法,其包

-提供根据本发明的多个设备,其中通过设备逻辑指定每个设备;-收集该多个设备的设备逻辑,并且基于与该多个设备中至少一个设备
相对应的设备逻辑指定该至少 一个设备的运行时间行为;
-生成定义该至少一个设备的运行时间行为的、至少一个不依赖设备的 控制逻辑程序;以及
-初始化根据本发明的联网的控制系统。
根据实施例,用于建立联网的控制系统的方法还包括生成定义该至少 一个设备的运行时间行为的、至少一个新的不依赖设备的控制逻辑程序的步 骤,将该至少一个新的不依赖设备的控制逻辑程序转换为在所述多个设备中 所选择的设备上可执行的新的控制逻辑代码,将该新的控制逻辑代码传送到 所选择的设备的步骤,以及适配所选择设备的支持逻辑、以及具有被用作该 至少 一个新的不依赖设备的控制逻辑程序中的输入的状态变量的、所有设备 的支持逻辑的步骤,其在此情况下是增量操作。
增量操作可以意味着将信息添加到现有的支持逻辑。
另外,在执行涉及该至少一个新的不依赖设备的控制逻辑程序的步骤时, 联网的控制系统可以处于操作中。
根据本发明的另 一实施例,提供用于将新的功能添加到根据本发明实施 例的联网的控制系统的方法,其包括
-生成定义该至少一个设备的运行时间行为的、至少一个新的不依赖设 备的控制逻辑程序;
-将该至少 一个新的不依赖设备的控制逻辑程序转换为在所述多个设备 中所选择的设备上可执行的新的控制逻辑代码;
-将该新的控制逻辑代码传送到所选择的设备;以及
-适配所选择设备的支持逻辑、以及具有被用作该至少一个新的不依赖 设备的控制逻辑程序中的输入的状态变量的、所有设备的支持逻辑,其在此 情况下是增量操作。
增量操作可以意味着将信息添加到现有的支持逻辑。
在执行用于添加新功能的方法的同时,联网的控制系统可以处于操作中。
根据本发明的实施例,可以提供计算机程序,该计算机程序在被计算机 执行时能够执行根据本发明的上述方法。
根据本发明的另 一 实施例,可以提供存储根据本发明的计算机程序的记 录载体,例如CD-ROM、 DVD、存储卡、磁盘、或者适于存储计算机程序以便电子存取的类似数据载体。
参照下文中描述的一个或多个实施例,本发明的这些方面以及其它方面 将显而易见且得到阐明。
在下文中将参照示例实施例更具体地描述本发明。然而,本发明不限于 这些示例实施例。


图1示出了根据本发明的设备;
图2示出了用于初始化根据本发明的联网的控制系统的装置;以及 图3示出了根据本发明的联网的控制系统。
具体实施例方式
下文中,功能类似或者相同的元件可以具有相同的参考标号。
图1示出了根据本发明一个实施例的设备100。该设备适合用于由多个 设备构成的联网的控制系统。该设备100包括接收器102、运行时间环境104、 支持逻辑106以及设备逻辑108。
将设备100配置为经由接收器102接收控制逻辑代码。将所接收的控制 逻辑代码分配给特定的设备100。将接收器102配置为向运行时间环境104 提供控制逻辑代码。将运行时间环境104配置为执行控制逻辑代码(执行器)。 控制逻辑代码的执行允许控制联网的控制系统的该多个设备中至少一个设备 的运行时间行为。该至少一个设备可以是执行控制逻辑代码的设备100,或 者可以是联网的控制系统的任何其它设备。控制逻辑代码可以控制联网的控 制系统的多个设备的运行时间行为。在此情况下,执行控制逻辑代码的设备 100可以是或者不是由控制逻辑代码控制的设备的部分。换言之,控制逻辑 代码可以控制联网的控制系统的任何设备(包括执行该控制逻辑代码的设备 100)的运行时间行为。
为了控制运行时间行为,控制逻辑代码需要接收要被控制的设备的实际 状态变量,并且需要将改变后的状态变量传送到要被控制的设备。状态变量 可以是执行控制逻辑代码所必需的。通过支持逻辑106执行在运行时间环境 104中执行的控制逻辑代码与要被控制的设备之间的状态变量的传送。支持 逻辑106可适配于控制逻辑代码,并且被配置为提供用于交换状态变量的通信链路。
根据本发明的实施例,支持逻辑106可以包括用于接收实例化消息的部 件。可以从外部与控制逻辑代码一起接收实例化消息,或者可以在接收到控 制逻辑代码之后在内部生成实例化消息。实例化消息可以使支持逻辑106适 配控制逻辑代码的要求,并且具体地建立通信链路,使得可以从将由控制逻 辑代码控制的设备接收状态变量,以及将状态变量传送到该设备。
可以将设备100配置为多于一个控制逻辑代码的主机。由此,可以将接
收器102配置为接收另外的控制逻辑代码,该代码允许控制另外设备的运行 时间行为。可以将运行时间环境104配置为执行该另外的控制逻辑代码,以 及支持逻辑106可适配为支持该另外的控制逻辑代码。
联网的控制系统由通过通信子系统连接的节点或者设备构成(图3中所 示)。联网的控制系统的节点或者设备100通过其设备逻辑108容易地描述。 设备逻辑108定义设备状态以及本地设备功能。可以通过表示设备100的硬 件和软件状态的属性的设备状态变量(例如灯的明暗等级)来专门地表示由 设备100容易地提供的设备逻辑108、即可能的控制参数和功能。由此,状 态变量属于目标系统中的一个并且仅仅一个设备100。换言之,特定的状态 变量属于该特定状态变量表示其状态的特定设备100。该设备100被称为状 态变量的主设备。状态变量值的改变反映了主设备硬件或者软件中属性值的 改变,反之亦然。
设备100配备有用于执行控制逻辑代码的运行时间环境104。联网的控 制系统中的控制应用通常对于一个或者典型的多个设备的设备逻辑进行操 作。运行时间环境104可以是解释字节代码的虚拟机,所述字节代码包括对 内部设备逻辑108以及内部状态变量的存取才几制。
设备100还包括负责传输与控制有关的信息的支持逻辑106,这允许仅 仅基于设备逻辑以及与控制有关信息的透明通信的控制应用设计。支持逻辑 106的实现取决于运行时间联网的控制系统的实施。支持逻辑确保即使状态 变量值为外部的情况下支持逻辑也以正确的状态变量值运行。如果状态变量 属于与执行控制逻辑代码的设备100不同的设备,则该状态变量是外部的。 将设备100的支持逻辑106配置为处理外部的输入状态变量以及外部的输出 状态变量。外部的输入状态变量是设备100经由通信链路接收并且提供给运 行时间环境104的状态变量。外部输出状态变量是所执行的控制逻辑代码产生的状态变量,该状态变量将被传送到其运行时间行为被所执行的控制逻辑 代码控制的外部设备。
根据一个实施例,持有(host)控制逻辑代码的设备100存储了持有的 控制逻辑代码所需的所有或者特定的外部输入状态变量的本地副本。可以将
该本地副本存储在像设备100的存储器那样的存储部件(在附图中未示出)
中。在执行期间,控制逻辑代码可以使用所存储的本地状态变量值来代替外 部状态变量。为了确保所存储的外部状态变量副本的值是最新的,支持逻辑
106可以实现预订机制。可以通过使用每个主设备中的预订表来将该预订机 制添加到系统。主设备是状态变量所属的设备。主设备存储具有每内部状态 变量的条目的预订表。每个条目列出设置有控制逻辑代码的、联网的控制系 统的所有设备,该控制逻辑代码把此状态变量作为输入状态变量。如果在主 设备处内部状态变量的值改变,例如由于硬件状态已经改变,则检查预订表 并且将改变通知发送到此状态变量的条目中列出的所有设备。在接收到改变 通知时,如果已经为控制逻辑代码指定了有关的定义,意味着该状态变量是 "触发状态变量",则可以触发控制逻辑代码。
处理外部输出状态变量,使得持有控制逻辑代码的设备100为所有持有 的控制逻辑代码的所有外部输出状态变量存储主设备地址。在控制逻辑代码 改变外部状态变量的值时,改变通知被发送到主设备。
根据此实施例,在操作阶段中联网的控制系统的设备之间的整个通信由 状态变量改变通知的交换构成,其使得有关的支持逻辑非常紧凑,并且允许 非常有效的、不依赖应用控制逻辑的实施。
在要将新的控制功能添加到已经在操作中的联网的控制系统的情况下, 不新定义预定表,而是添加新功能所需的条目,以防由于已经存在的控制功 能,在联网的控制系统中尚未有所述条目。
在联网的控制系统的初始化之前,可以通过不依赖设备的控制逻辑程序 来定义联网的控制系统的所述多个设备的运行时间行为。在联网的控制系统 的初始化期间,将不依赖设备的控制逻辑程序转换为设备专用的控制逻辑代 码,并且将其分配给所选择的设备。可以通过用于初始化的装置来执行逻辑 程序的转换以及控制逻辑代码到所选择的设备的分配。
图2示出了根据本发明实施例的、用于初始化具有多个设备的联网的控 制系统的装置200。将装置200配置为接收不依赖设备的控制逻辑程序作为
1输入,并且将装置200配置为输出可被分配给所选择的设备并且由其执行的 控制逻辑代码。所选择的设备可以是图1中所描述的设备100。装置200还 可以输出可适配所选择设备的支持逻辑的实例化消息。
装置200包括用于转换不依赖设备的控制逻辑程序的部件222,该不依 赖设备的控制逻辑程序定义联网的控制系统的所述多个设备中至少 一个设备 的运行时间行为。将用于转换的部件222配置为接收不依赖设备的控制逻辑 程序并且将控制逻辑程序转换为可在所指定的或者所选择的设备上执行的设 备专用的控制逻辑程序代码。将用于转换的部件222配置为将控制逻辑程序 提供给用于传送的部件224。将用于传送的部件224配置为将控制逻辑代码 传送给所选择的设备。装置200还包括用于适配所选择设备的支持逻辑的部 件226。可以将用于适配的部件226配置为将实例化消息提供给所选择的设 备,以实例化所选择设备的支持逻辑。
用于转换的部件222可以考虑所选择设备的设备逻辑,从而鉴于分配有 控制逻辑代码的所选择设备来优化控制逻辑代码。因此,可以将装置200配 置为接收所选择设备的设备逻辑。另外,可以将用于转换的部件222配置为 基于与所选择设备相对应的设备逻辑来选择所选择的设备。因此,用于转换 的部件222可以包括另外的用于选择的部件,其定义用于执行控制逻辑代码 的所选择设备。优选地在控制逻辑程序的转换之前或者期间执行选择所选择 的设备,从而允许将控制逻辑代码适配于所选择的设备。
可以通过多个控制逻辑程序来控制联网的控制系统的所述多个设备的运 行时间行为。由此,可以将装置200配置为接收并且转换所述多个控制逻辑 程序,并且输出该多个控制逻辑代码。可以将该多个控制逻辑代码分配给联 网的控制系统的多个设备中的不同设备。或者,可以将该多个控制逻辑代码 或者许多控制逻辑代码分配给相同的设备。用于转换的部件222可以在选择 用于特定的逻辑程序代码的所选择设备时考虑不同的控制逻辑程序。将用于 适配的部件226配置为对分配有控制逻辑代码的不同设备的支持逻辑进行适 配。
根据实施例,可以将装置200配置为在联网的控制系统的初始化之后接 收并且转换另外的控制逻辑程序、或者输出另外的控制逻辑代码。由此,在 操作期间该另外的控制逻辑代码可以更新联网的控制系统。该另外的控制逻 辑代码可以替换已经在所选择的设备上执行的控制逻辑代码。在要将新的控制功能添加到已经在操作中的联网的控制系统的情况下, 逻辑设计可以是如上所述的那样。然后,编译器功能将新的控制逻辑转换为 运行时间代码。为了将新的逻辑分配给设备,可以考虑现有的逻辑的分发。 此外,实例化支持逻辑可以是对已经在系统中的支持逻辑的添加。
根据一个实施例,设计控制逻辑并且初始化或者设置联网的控制系统的 过程可以包括逻辑设计、编译、系统设置和维护的步骤。
可以由联网的控制系统的用户或者设计者执行逻辑设计,并且该逻辑设 计包括对于联网的控制系统中的所有设备逻辑的集合来开发控制逻辑程序。 在运行时间系统中,在不指定将执行有关的运行时间控制逻辑代码的设备的 情况下执行此"设计视图"。在优选的实施例中,使用图形工具来进行逻辑设 计。
可以自动地执行在逻辑设计中创建的控制逻辑程序的编译。对于运行时 间系统,将控制逻辑程序转换为可执行的控制逻辑代码(例如字节代码)包 括在操作期间将控制逻辑代码分配给将执行控制逻辑代码的设备。编译步骤 还包括支持逻辑的实例化,该支持逻辑实现运行控制逻辑代码所必需的信息 的通信。
系统设置除了典型的网络和应用配置步骤之外,还包括将控制逻辑代码 上传到所分配的设备。
系统维护允许通过利用新的逻辑来简单地重复上述步骤并且相应地下载 新的逻辑,在启动之后将新的控制逻辑容易地添加到联网的控制系统,而不 需要改变已经在系统中的控制逻辑。
在运行时间,通过在所分配的设备上执行控制逻辑代码,来实现定义设 备的运行时间行为以及设备之间关系的控制应用,所述所分配的设备在需要
时为设备之间的信息通信部署(deploy)支持逻辑。
通过重复从逻辑设计到执行器上传和支持逻辑实例化的步骤,在稍后添 加控制功能是容易的,而不需要改变已经在系统中的控制逻辑。
根据实施例,编译过程步骤包含将控制逻辑程序转换为可执行的控制逻 辑代码的步骤、将所选择的执行设备分配给控制逻辑的步骤、将主设备分配 给系统状态变量的步骤、以及自动实例化支持逻辑的步骤。
可以如在本领域已知的那样、取决于编程语言的详情而对于运行时间系 统进行将控制逻辑程序转换为可执行控制逻辑代码、例如字节代码的步骤。将执行设备分配给控制逻辑的步骤包括将每一份控制逻辑代码分配给将 要(即,通过设备的处理单元)执行控制逻辑的目标系统的设备。可以例如 按照用户将控制逻辑程序分配给将最终运行有关控制逻辑代码的设备的方 式、手动地进行控制逻辑代码的分配。为了帮助此过程,可以指定默认规则, 例如,默认执行设备是控制逻辑代码的一个或多个输出状态变量的主设备。
在优选的实施例中,控制逻辑的分配是计算机控制的或者通过编译器程 序自动地进行。可以通过分析控制逻辑程序中设备的参与以及在考虑设备的 能力或者资源的情况下执行分配。例如,可以将从控制逻辑"通过开关Y调 节灯X明暗"产生的控制逻辑代码分配给灯X,如果灯X关闭,则该开关Y 不具有非易失性存储器。存储器仅为可被逻辑分配过程考虑的设备能力或资 源的一个示例。在运行时间,将在所分配设备的运行时间环境中执行可执行 的控制逻辑代码。
将主设备分配给系统状态变量的步骤包括将任意用户定义的系统状态变 量分配给目标系统的设备。此设备则是与设备状态变量相似的此状态变量的 主设备,这意味着在运行时间系统中此设备保持状态变量的实例,并且此实 例的值将被视为该状态变量的"主"值。可以由用户手动地将系统状态变量 分配给主设备。在优选实施例中,此分配是计算机控制的,或者通过在考虑 设备的能力或者资源的情况下通过分析控制逻辑程序中设备的参与来自动进 行。
实现运行控制逻辑代码所必需的信息通信的支持逻辑的自动实例化的步 骤允许设计不依赖执行设备的控制逻辑。根据本发明,在一个自由可选的、 所分配的设备处执行每个控制逻辑代码。
如果状态变量被控制逻辑代码读取或者状态变量被控制逻辑代码改变, 则该状态变量被称为在控制逻辑代码中"参与"。通过控制逻辑读取的状态变 量是还包含在与控制逻辑代码有关的例如启动或者停止的事件中使用的状态 变量的输入状态变量。通过控制逻辑代码改变的状态变量是输出状态变量。 状态变量可以是控制逻辑代码的输入和输出状态变量两者。每个状态变量属 于一个并且仅仅一个主设备。
考虑一个控制逻辑代码,在该设备是针对此状态变量的主设备的情况下, 每个参与的状态变量是设备内部的,或者在另 一个设备是针对此状态变量的
主设备的情况下是设备外部的。如果状态变量是内部的,则可以将状态变量的当前值直接通过设备的硬件或者软件容易地提供给控制逻辑代码的运行时 间环境。对于所有外部的状态变量,支持逻辑被实例化,其确保总是利用正 确的状态变量值执行控制逻辑代码。
例如,在将从控制逻辑"通过开关Y调节灯X明暗"产生的控制逻辑代
码分配给灯X之后,支持逻辑必须保证在运行时间开关Y设置的明暗等级对 于灯X可用。
图3示出了根据本发明实施例的联网的控制系统。该联网的控制系统包 括多个设备100a、 100b、 100c、用于收集的部件332、用于生成的部件334、 以及装置200。通过通信系统连接联网的控制系统的设备100a、 100b、 100c 以及部件332、 334、 200。
设备100a、 100b、 100c可以是图1所描述的类型。通过对应的设备逻辑 指定每个设备。设备逻辑表示对应设备的硬件或者软件状态的属性。
将用于收集的部件332配置为收集多个设备100a、 100b、 100c的设备逻 辑。另外,将部件332配置为指定多个设备100a、 100b、 100c中至少一个设 备100b的运行时间行为。通过考虑对应于该至少一个设备100b的设备逻辑 来指定该至少一个设备100b的运行时间行为。将用于收集的部件332配置为 将所指定的运行时间行为提供给用于生成的部件334。将用于生成的部件334 配置为创建至少一个不依赖设备的控制逻辑程序,该程序表示用于收集的部 件332提供的运行时间行为。该至少一个不依赖设备的控制逻辑程序定义该 至少一个设备100b的运行时间行为。将用于生成的部件334配置为将该至少 一个不依赖设备的控制逻辑程序提供给装置200。
装置200可以是如图2所描述的装置。将装置200配置为接收该至少一 个不依赖设备的控制逻辑程序并且将该至少一个不依赖设备的控制逻辑程序 转换为至少一个设备专用的控制逻辑代码。根据此实施例,装置200将控制 逻辑代码分配给第三设备100c。将第三设备100c配置为执行控制第二设备 100b的运行时间行为的控制逻辑代码。
选择第三设备100c作为用于执行控制逻辑代码的设备以及选择第二设 备100b作为其运行时间行为被控制逻辑代码控制的设备仅为示例性的。
根据实施例,用于收集的部件332包括允许用户指定至少一个设备100b 的运行时间行为的接口 。该接口还可以允许用户定义所选择的设备100c。该 接口可以是图形接口。可以将用于收集的部件332配置为基于另外的设备逻辑(其对应于至少 一个设备的运行时间行为所依赖的另外设备)来指定至少一个设备100b的运 行时间行为。例如,如果第二设备100b的运行时间行为依赖于第一设备100a 的状态,则用于收集的部件332可以考虑第一和第二设备100a、 100b的设备 逻辑,以便指定第二设备100b的运行时间行为。
可以将用于收集的部件332配置为基于所有设备逻辑指定所有设备 100a、 100b、 100c的运行时间行为。为了定义所有设备100a、 100b、 100c的 运行时间行为,可以将用于生成的部件334配置为提供多个不同的不依赖设 备的控制逻辑程序。逻辑设计是根据本发明的联网的控制系统的实例化的第一步骤。逻辑设 计包括对于联网的控制系统中所有设备逻辑的集合("设计视图")开发控制 逻辑。
可以对物理设备的表征直接指定控制逻辑。或者,可以不对物理设备的 表征指定控制逻辑。逻辑设计过程可以覆盖若干抽象层。覆盖若干抽象层的 示例是如下定义"在所有房间中,通过房间中的开关使调节房间中的所有灯 明暗"。逻辑设计过程可以包括图形工具的使用。
根据优选实施例,根据本发明的设计过程将总是考虑不依赖设备的控制 逻辑,在运行时间系统中,将在该设备上执行该控制逻辑。例如,用户通常 仅对于指定像"通过开关Y调节灯X明暗"这样的控制逻辑感兴趣。在运行 时间系统中,可以取决于设备能力或者资源,在灯X上、在开关Y上、或者 在系统中的任何其它设备上执行此份逻辑,而不改变对于用户可见的设备X 和Y的行为。
系统的设计视图。根据优选的实施例,通过人类可读的脚本来表示可编译的 逻辑程序。该可编译的逻辑程序是逻辑设计过程的输出。可以以多种方式生 成此输出,例如对于所有或者一些物理设备的设备逻辑的集合直接指定、或 者在从标准化类型的虚拟设备上的抽象逻辑通过这些虚拟设备的分配到目标 系统中真实的物理设备的转换过程中生成此输出。
对于属于目标系统的所有设备的设备逻辑的统一表征、即对于属于联网 的控制系统的设备的所有设备状态变量来定义可编译的逻辑程序。此外,用 户可以定义不依赖设备的、表示全局状态信息的系统状态变量,例如平均值或者总值、或者表示像"没人在家,,这样的全局系统状态的状态变量。控制 逻辑则将基本上由对于以某种编程语言表达的状态变量的操作构成。控制逻 辑程序的语法可以是如用于最新脚本语言的语法那样的语法。
控制逻辑程序规范还包含事件的定义。事件可以是触发或者停止某一控 制逻辑程序的方式。
在优选的实施例中,默认地在由控制逻辑程序表示的控制逻辑中所涉及 的状态变量中任何状态变量发生任何改变时触发此控制逻辑程序。用户或者 逻辑设计者还可以通过以下方式对此进行改进即,通过在触发控制逻辑程 序的状态变量的值改变的情况下限制或者扩展该状态变量的集合,或者通过 在触发控制逻辑程序之前需要满足的状态变量值的条件。绝对或者相对时间 可以是考虑的触发器之一。
默认地,某一控制逻辑程序将在已经执行此控制逻辑程序中的所有指令 之后停止。但是用户也可以定义在状态变量值改变的情况下触发停止运行的 控制逻辑程序的状态变量。可以定义与用于开始触发类似的可选的改进。
所公开的发明的若干扩展实施例是可能的。例如,用户可以在设计视图 中指定针对事件的条件。可以将这些条件包括在实施预订机制的支持逻辑中。
此包括可以是以下方式如果满足有关的条件,则仅发送改变通知和/或仅触
发执行器。所述条件可以例如与绝对或者相对状态变量值改变有关,和/或与 改变通知的最小或者最大频率有关。
上面描述了 一种系统,其使得能够开发和建立不依赖分发方面的控制应 用,由此减少控制逻辑(如用户看到的)以及逻辑设计过程的复杂程度,并 且使得能够将控制逻辑自由地分派给设备,这允许在应用开发之后的计算机 控制的/自动的系统优化。最后,这样的系统也将允许非技术用户容易地并且 以最佳方式定义和设置控制逻辑。
根据本发明,可以在以下步骤中进行设计控制逻辑以及设置联网的控制
系统的过程
(用户/设计者的)逻辑设计对于目标系统中的所有设备逻辑的集合 ("设计视图")开发控制逻辑,而不指定在运行时间系统中将执行有关的运 行时间代码的设备。在一个实施例中,可以使用图形工具进行逻辑设计。
(自动的)编译将控制逻辑程序转换为用于运行时间系统的可执行 (控制逻辑)代码(被称为执行器)(例如,字节代码),包括将执行器分配给在操作期间将执行该执行器的设备。对实现运行执行器所必需的信息通信 的支持逻辑进行实例化。
系统设置除了网络和应用配置的典型步骤之外,此步骤还可以包括 将执行器上传到所分配的设备。
系统维护在启动后还可以通过利用新的逻辑简单地重复上述步骤并 且相应地下载新的控制逻辑,将新的控制逻辑容易地添加到目标系统,而不 需要改变已经在系统中的控制逻辑。
根据本发明的系统的灵活性可以通过用于定义被称为控制逻辑程序 (CLP)的应用逻辑的部件的定制的限制来具体地实现。对于所有设备的设 备逻辑的统一表征-设备状态变量(SV)来定义CLP。另外,用户可以定 义表征(不依赖设备的)全局状态信息的"系统状态变量"。则控制逻辑可以 基本上由对以(具有例如如对于现代技术的正本语言的语法那样的语法的) 某种编程语言表达的状态变量的操作构成。
用于更复杂应用的专用概念、例如控制和管理设备组可以有另外的优点, 特别是在用于逻辑编程的受限制的部件连同像小占位面积、低带宽实施那样 的针对控制系统的典型要求的情况下。下面,描述本发明的另一个实施例, 其使得能够有效实现联网的控制系统中的组功能。所述目标系统是如上所述 的联网的控制系统,其可以包含控制设备组的应用。组是用于逻辑设计和维 护的基本概念。在设计视图中,设备组允许对设备集合的共同状态变量的操 作(例如"将所有灯的明暗等级设置为值X")进行定义或者对值的集合的 操作(例如"对传感器组测量的日光值求平均")进行定义。
可以从抽象设计(例如"客厅中的所有灯")中获得组,其导致类型组、 例如类型灯的组。还可以在直接设计中通过对物理设备、例如房间中的所有 灯任意地分组("任意组"不具有类型)来手动地定义组。
设计视图
设计视图中组的定义可以包含属于该组的成员设备的列表,并且还可以 具有类似于以下设备定义的元素 组ID:组的。舉一标识符。
组状态变量(SV):组SV表示相同类型(名称)的成组设备的设备 SV的集合。在设计视图中,组SV被称为组-ID.SV-名称。
o 示例组SV "组.明暗等级,,指属于该组的所有设备的设备SV "设备X.明暗等级,,的集合。
o 可以指定对于组SV的命令的语义、即含义,但是其将是简单 明了的。例如,改变组.SVx将导致改变每个成员设备处有关的设备 SVx。除了命令之外,组SV还将允许像(对组.SVx)求平均那样 的设计视图操作,其返回所有成员设备的所有有关的设备SVx值的 平均值。
o 在类型组中,可以通过有关设备类型的设备SV来给出组SV。 注意仅在CLP中使用的那些组SV可能是相关的。
o 在任意组中,可以通过组中设备的所有设备SV给出组SV。 继而对于任意组的组SV的命令仅指(组SV类型的)有关的设备 SV的集合。
组位置可选地,组可以具有位置信息,其意味着组中的所有设备具 有相同的位置信息。 编译
编译器可以将地址分配给组(类似于设备地址)以及在CLP中使用的每 组SV,编译器生成上至2个系统SV (取决于在系统中使用哪种类型的组逻 辑)
G.SV-ID表示赋予组G (的设备的有关状态变量)的值。 此SV用于将命令(即,改变对应的设备SV)给予组中的所有设备。对
于此用途,在CLP语句GSVk:《值〉中使用G.SV-ID,其将导致将所有的成 员SV的D.SV-ID设置为〈值〉。注意此SV是一种"标称值"SV,因为其 包含改变成组的设备SV的最后请求,而所述成组的设备SV的实际值也可以 独立地改变(例如通过真实世界事件)。
G.SV-ID.tab表示所有有关的设备SV的列表。此SV用于实现像对成组 的设备SV的集合的读取和估计"求平均"那样的功能。
然后,编译器将这些系统SV分配给如上所述的主设备。在下一步骤中, 编译器(除由CLP生成的执行器之外)还生成支持执行器,作为上面定义和 描述的支持逻辑的部分。
改变组SV值如果存在包含语句G,SVk,〈值〉的CLP (该语句将导致 所有的成员SV的D.SV-ID被设置为〈值〉),则以以下方式实现这点
o组G(具有相同类型的有关的设备SV )的每个设备D得到(编译器生成的)执行器,该执行器具有作为触发SV(仅触发,不需
要复制)的G.SV-ID,以及逻辑D.SV-ID:=G.SV-ID(即,如果G.SV-ID 改变,则D.SV-ID相应改变)。
oGSV-ID的主设备得到相关的预订信息。在实施例中,组IA地 址G (仅)用作预订目的地。所有的成员设备存储地址并且(还) 监听以组地址作为目的地的消息。在此情况下,网络抽象层将发送 改变通知作为广播或者多播消息。或者,GSV-ID的主设备以成员 设备的列表作为预订者。
此方法的优点是稍后可以将设备添加到组,而不改变现有的执行器(参 见下文)。在任意组中,仅具有有关的兼容SV的设备将得到支持执行器。
组SV的替换的(非优选的)处理
oGSV-ID的主设备得到针对所有成员设备的(编译器生成的) 执行器,该执行器具有作为触发SV的G.SV-ID以及逻辑语句 D.SV-ID:-G.SV-ID,即具有输出状态变量D.SV-ID。 o 为此,GSV-ID的主设备得到有关的参考信息。
可以通过编译器进行选项之间的选择。
用于(作为输入)的组SV的读取/估计功能如果CLP包含对于所有 成员值的操作(例如"求平均"),则定义系统SV G.SV-ID.tab并将其分配给 主设备。
oG.SV-ID.tab是具有所有的成员设备SV (实际上是分发的SV
储存库中的一份)的值的动态表((Di,Di.SV-ID), i-l..n)。
o组G的每个设备D得到针对G.SV-ID.tab的主参考信息以及具
有作为触发因素SV的G.SV-ID以及以下逻辑的(编译器生成的)
支持执行器
o GSV-ID.tab:={(D,D.SV-ID)}(具有一个元素[D,D.SV-ID]的表)。 o 在G.SV-ID.tab的主设备处,将新的值解释如下如果D已经 在表中,则改写值;否则添加到表。
然后,可以将像average(G.SV-ID)那样的函数转换为以G.SV-ID.tab
作为输入的执行器代码。
o 扩展G.SV-ID.tab也可以仅为被用于按需得到(抽出)D.SV-ID 值的、成员设备的参考列表。再次注意仅建立#_用于CLP中的那些组SV。如果例如不存在#>对所 有成员值求平均那样的CLP部署函数,则将不生成G.SV-ID.tab SV。
设置和维护
如上所述,所公开的组逻辑的实现还具有像向组添加设备或者从组移除 设备那样的维护过程的优,* 。
添加仅由组逻辑控制的设备(例如将灯添加到已经存在的灯组)。 为了将设备D添加到组,组定义必须(例如,从系统储存库)已知。 o如果存在组SVG.SV-ID,则在新的设备上安装此SV的有关的 外部实例以及如上所述的支持执行器(D.SV-ID:=G.SV-ID)。此外, 将组地址G添加到设备D所监听的地址的列表。 o 如果G.SV-ID的主设备使用预订者列表,则新的设备必须宣告 其作为成员存在。
o如果存在组SV G.SV-ID.tab以及有关的逻辑,则新的设备需要 建立主参考(主设备的地址)并且安装支持执行器 (G.SV-ID.tab:={(D,D.SV-ID)})。 较大的优点是可以在新的设备上进行集成新设备的所有步骤,即,不需 要改变已经存在的设备上的任何东西。
移除仅具有组逻辑的设备
可以简单地移除仅具有组逻辑的设备,而不需要改变系统剩余部分中的 任何东西(系统仍然全部起作用)。
在另一实施例中,可以应用垃圾收集机制以移除G.SV-ID.tab表中已不用 的条目。
作为总结,本发明描述了
一种联网的控制系统,其中
-由用户在关于系统的特定或者所有设备逻辑的集合的"设计视图"中 指定定义设备的运行时间行为以及设备之间关系的控制逻辑程序,而不指示 要在那些设备中的哪一个上运行最终可执行的代码,因此不依赖任何与通信 有关的方面;
-编译器程序自动将所指定的控制逻辑程序转换为可执行代码,例如通 该可执行代码的设备,并且自动实例化设备处的支持逻辑,使得在运行时间此支持逻辑提供在控制逻辑中所涉及的设备之间的所有必需的信息通信。
-准备所有的设备以运行从编译器功能上传的可执行控制逻辑代码并且 持有支持逻辑,该支持逻辑例如在通过编译器程序的适当实例化之后、以对 于控制逻辑透明的方式提供对于纟皮持有的控制逻辑必需的所有信息通信。 一种联网的控制系统的设备,其
-实施运行时间环境,以执行从"设计视图"中指定的控制逻辑获得的 可执行代码。
-实施控制逻辑,该支持逻辑例如在通过编译器程序的适当实例化之后、 以对于控制逻辑透明的方式提供对于所有被持有的控制逻辑必需的所有信息通信。
一种用于联网的控制系统的编译器程序,其
-将提供系统的所有设备逻辑的集合的"设计视图"中指定的控制逻辑 程序转换为可执行代码,
-例如通过考虑设备能力或者资源,以优化的方式将可执行代码分配给 在运行时间执行该可执行代码的设备,并且
-自动配置设备的支持逻辑,使得在运行时间,此支持逻辑提供在控制 逻辑中所涉及的设备之间的所有必需的信息通信。
一种如上所述的联网的控制系统,通过重复从逻辑设计到控制逻辑代码 (执行器)上传以及支持逻辑实例化的相同步骤,在系统启动后也可以对该 联网的控制系统添加控制逻辑,而不需要改变已经在系统中的控制逻辑。
一种用于将新的功能添加到操作中的联网的控制系统的方法,包括 -生成根据本发明的至少 一个新的不依赖设备的控制逻辑程序; -将新的控制逻辑程序转换为在多个设备中所选择的设备上可执行的控 制逻辑代码;
-将控制逻辑代码传送到所选择的设备;以及
-适配所选择设备的支持逻辑以及具有状态变量(该状态变量被用作根 据本发明的控制逻辑程序的输入)的所有设备的支持逻辑,其在此情况下是 增量操作,即,将信息添加到现有的支持逻辑的手段。
一种联网的控制系统,其中对于组状态变量定义组逻辑。 一种联网的控制系统,其中,编译器程序自动地将组逻辑转换为状态变 量G.SV-ID和G.SV-ID.tab以及如上所述的支持执行器。其中将组SV设置为值的联网的控制系统导致通过以下方式将所有有关
的成员设备SV设置为相同的值 将组SV的主实例改变为该值; 发送组SV的所有预订者的有关改变通知;
所有的预订者具有将有关的设备SV改变为组SV的新值的执行器。
一种如上所述的^:网的控制系统,其中改变通知^f吏用组地址作为目的地, 并且所有的组成员也监听去往此地址的消息。
一种联网的控制系统,其中可以在不对已经属于该系统的设备执行任何 改变的情况下进行添加仅通过组逻辑控制的设备。
一种联网的控制系统,其中通过将组地址添加到设备必须监听的地址的 列表并且建立组SV实例以及如上所述的支持执行器,来进行将设备添加到 系统。
可以通过硬件或者软件来执行本发明的功能中的至少 一些功能。在以软 件实施的情况下,可以使用单个或者多个标准微处理器或者微控制器以处理 实施本发明的单个或者多个算法。
应注意词语"包括"不排除其它元件或者步骤,词语"一"或"一个" 不排除多个。此外,权利要求中的任何参考标记不应被解释为限制本发明的 范围。
权利要求
1.一种用于包括多个设备的联网的控制系统的设备(100;100a,100b,100c),其包括-接收器(102),用于接收允许控制多个设备中的至少一个设备的运行时间行为的控制逻辑代码;-运行时间环境(104),用于执行该控制逻辑代码;以及-支持逻辑(106),可适配于该控制逻辑代码,其中该支持逻辑提供用于交换执行该控制逻辑代码所必需的状态变量的通信链路。
2. 根据权利要求1所述的设备,其中该支持逻辑(106)包括用于接收 使该支持逻辑适配于该控制逻辑代码的实例化消息的部件。
3. 根据权利要求1或2所述的设备,其中该接收器(102 )被配置为接 收另外的控制逻辑代码,该代码允许控制所述多个设备中至少一个第二设备 的运行时间行为,其中该运行时间环境(104)被配置为执行所述另外的控制 逻辑代码,并且其中该支持逻辑(106)可适配于所述另外的控制逻辑代码。
4. 一种用于初始化具有根据上述权利要求中任一项所述的多个设备 (100a, 100b, 100c)的联网的控制系统的装置(200),其包括-用于将定义所述多个设备中至少一个设备(100b)的运行时间行为的、 不依赖设备的控制逻辑程序转换为在所述多个设备中所选择的设备(100c) 上可执行的控制逻辑代码的部件(222 );-用于将该控制逻辑代码传送到该所选择的设备的部件(224);以及 -用于适配该所选择的设备的支持逻辑以及具有^^皮用作该控制逻辑程序 的输入的状态变量的所有设备的支持逻辑的部件(226),其中支持逻辑提供 用于交换执行该控制逻辑代码所必需的状态变量的通信链路。
5. —种联网的控制系统,包括-根据权利要求1到3之一所述的多个设备(100a, 100b, 100c),其 中每个设备由对应的设备逻辑指定;-用于收集所述多个设备的设备逻辑、并且基于与所述多个设备中至少 一个设备(100b)相对应的设备逻辑来指定该至少一个设备的运行时间行为 的部件(332 );-用于生成定义该至少一个设备的运行时间行为的、至少一个不依赖设备的控制逻辑程序的部件(334 );以及-根据权利要求4的用于初始化的装置(200)。
6. 根据权利要求5所述的联网的控制系统,其中用于收集的部件(332 ) 被配置为基于所有的设备逻辑来指定所述多个设备(100a, 100b, 100c)中 所有设备的运行时间行为,并且其中用于生成的部件(334 )被配置为提供多 个不依赖设备的控制逻辑程序。
7. 根据权利要求5或6所述的联网的控制系统,还包括至少一个应用, 该应用被适配为通过对于设备组的共同状态变量或者对于设备组的值的集合 的操作来控制该设备组。
8. —种用于初始化具有根据权利要求1到3之一所述的多个设备的联网 的控制系统的方法,包括-将定义所述多个设备中至少一个设备的运行时间行为的、不依赖设备 的控制逻辑程序转换为在多个设备中所选择的设备上可执行的控制逻辑代 码;-将该控制逻辑代码传送到所选择的设备;以及-适配该所选择的设备的支持逻辑以及具有被用作控制逻辑程序中的输 入的状态变量的所有设备的支持逻辑,其中支持逻辑提供用于交换执行该控 制逻辑代码所必需的状态变量的通信链路。
9. 一种用于建立联网的控制系统的方法,包括-提供根据权利要求1到3之一所述的多个设备(100a, 100b, 100c), 其中通过设备逻辑指定每个设备;-收集所述多个设备的设备逻辑,并且基于与所述多个设备中至少一个 设备U00b)相对应的设备逻辑来指定该至少一个设备的运行时间行为;-生成定义该至少一个设备的运行时间行为的、至少一个不依赖设备的 控制逻辑程序;以及-初始化根据权利要求5所述的联网的控制系统。
10. 根据权利要求9所述的用于建立联网的控制系统的方法,还包括-生成定义该至少 一个设备的运行时间行为的、至少 一个新的不依赖设 备的控制逻辑程序;-将该至少一个新的、不依赖设备的控制逻辑程序转换为在所述多个设 备中所选择的设备上可执行的、新的控制逻辑代码;-将该新的控制逻辑代码传送到所选择的设备;以及-适配所选择的设备的支持逻辑以及具有被用作该至少一个新的不依赖 设备的控制逻辑程序的输入的状态变量的、所有设备的支持逻辑,其在此情 况下是增量操作。
11. 一种用于将新功能添加到根据权利要求5到7之一所述的联网的控 制系统的方法,包括-生成定义该至少一个设备的运行时间行为的、至少一个新的不依赖设 备的控制逻辑程序;-将该至少一个新的不依赖设备的控制逻辑程序转换为在所述多个设备 中所选择的设备上可执行的新的控制逻辑代码;-将该新的控制逻辑代码传送到所选择的设备;以及-适配所选择的设备的支持逻辑以及具有被用作该至少 一个新的不依赖 设备的控制逻辑程序的输入的状态变量的、所有设备的支持逻辑,其在此情 况下是增量操作。
12. —种在被计算机执行时、能够执行根据权利要求8到11所述方法的 计算机程序。
13. —种存储根据权利要求12所述的计算机程序的记录载体。
全文摘要
本发明涉及一种联网的控制系统,其包括多个设备(100a,100b,100c)、以及用于收集多个设备(100a,100b,100c)的设备逻辑并且基于与多个设备中的至少一个设备(100b)相对应的设备逻辑来指定该至少一个设备(100b)的运行时间行为的部件(332),其中通过对应的设备逻辑指定每个设备(100a,100b,100c)。该联网的控制系统还包括用于生成定义该至少一个设备(100b)的运行时间行为的至少一个不依赖设备的控制逻辑程序的部件(334)、以及用于将该至少一个不依赖设备的控制逻辑程序转换为被分配给所选择设备(100c)的设备专用控制逻辑代码的装置。
文档编号G06F9/46GK101606129SQ200880004715
公开日2009年12月16日 申请日期2008年2月7日 优先权日2007年2月12日
发明者A·M·M·莱尔肯斯, B·埃尔德曼, E·J·尼比, M·H·弗伯克特, O·施雷页, R·范赫克 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1