CN103858409A - 使用设备注册器和连线代理的传感器设备聚合 - Google Patents

使用设备注册器和连线代理的传感器设备聚合 Download PDF

Info

Publication number
CN103858409A
CN103858409A CN201280049366.7A CN201280049366A CN103858409A CN 103858409 A CN103858409 A CN 103858409A CN 201280049366 A CN201280049366 A CN 201280049366A CN 103858409 A CN103858409 A CN 103858409A
Authority
CN
China
Prior art keywords
network
computer system
equipment
abstraction
parameter
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
Application number
CN201280049366.7A
Other languages
English (en)
Other versions
CN103858409B (zh
Inventor
T·斯托博
M·韦尔施
S·维尔德特
S·利尔施
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103858409A publication Critical patent/CN103858409A/zh
Application granted granted Critical
Publication of CN103858409B publication Critical patent/CN103858409B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0226Mapping or translating multiple network management protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种计算机系统(300、400),包括用于创建和注册一个或多个设备对象(322、324、326、412)的设备注册器(320、410)。所述一个或多个设备对象中的至少一个设备对象被配置为通过网络连接(312、414)与传感器设备(306、308、310、402)的网络连接器(404)通信。设备对象被配置为通过声明其能力而暴露传感器设备的至少一个参数。计算机系统还包括聚合模型(334、422),用于聚合至少一个设备对象的至少一个参数;连线定义集合(340、416),描述由至少一个参数的变化或更新所创建的触发的事件;连线代理器(328、420),用于根据触发的事件来更新聚合模型。

Description

使用设备注册器和连线代理的传感器设备聚合
技术领域
本发明涉及传感器和/或致动器的聚合,特别涉及通过使用设备注册器(device register)和连线代理(wiring broker)的传感器和/或致动器的聚合。
背景技术
连接各种设备或传感器元件涉及以下步骤:1.定义将被交换的各种数据;2.合适的协议的规定和协议;3.在两边都实施协议;以及4.可建立通信。
现在建立的通信严格受限于步骤1定义的限制。在这种情况下,在设计时已知哪些元件将和哪些其他元件连接,并预期什么特定的想要的操作模式或贡献。系统设计人员可明确地在低层从语义和语法上计划预期的信息交换。在许多情况下,这样的设计甚至是基于对等(peer-to-peer)而进行的。控制器明确地以双边定义的方式来寻址其目标元件。为了实现至少某些抽象并建立某些可再用性,有时候若干不同的、几乎总是不兼容的协议被定义以一般化可寻址性和相互连接性。
家庭自动化领域的例子有:EnOCean、KNX、Modbus、M-Bus。有时候另一个更高层的协议于是试图将这些较低层的协议映射到公分母(common denominator)。在前述例子中,这是Obix(对象构建交换)。Obix试图将四个较低层的协议抽象为良好定义的共同XML语法。
于是使用Obix有可能例如打开建筑物里的灯,而不需要知道任何较低层协议的细节,并且与这些协议中的哪一个实际被用于当前特定建筑物实例无关。但是,为了使得这种情况发生,Obix协议需要所有控制元件的在语义和语法上被良好地定义的、严格的、低层的映射。在该例子中,它必须明确地了解“开灯”的动作,以及这是如何被映射到较低层协议。每个可能的动作及其意义必须被具体指出,以使得系统能正确工作。对于不同传感器/致动器/设备的连接,需要明确的语义。
这种方法最严重的缺陷之一是缺乏可扩展性。对于每个新设备和每个新的可能的连接和传感器或致动器控制,系统需要对于与新元件可能连接的所有其他已存在的元件的交互模式的明确的定义。这迟早会导致产生不易管理的NxM关系问题。
发明内容
本发明在独立权利要求中提供了一种通过用户界面来连接网络可连接设备的计算机系统和方法。在从属权利要求中给出了实施例。
本发明的实施例通过使用设备注册器来集成传感器设备以解决上述和其他问题。设备注册器为每个传感器设备创建了设备对象,并暴露传感器设备的至少一个参数。这使得聚合模型能够聚合来自每个传感器设备的暴露的参数。传感器的聚合可以是,例如,通过将设备对象实施为Java门户组件而完成的。连线代理可随后被用来更新聚合模型,且聚合模型可被用来创建基于web的用户界面。除了聚合传感器,这使得能够将软件表面(software surface)结合到聚合模型中。这可具有创建可容易地扩展、并集成传感器设备、软件服务和/或web服务的系统的优势。
在此使用的“计算机可读存储介质”包括任何有形存储介质,其可存储可被计算设备的处理器执行的指令。计算机可读存储介质可称为计算机可读非临时存储介质。计算机可读存储介质也可称为有形计算机可读介质。在一些实施例中,计算机可读存储介质也能存储可被计算设备的处理器访问的数据。计算机可读存储介质的例子包括但不限于:软盘、穿孔带、穿孔卡、磁性硬盘驱动器、固态硬盘、闪存存储器、USB姆指存储器、随机存取存储器(RAN)、只读存储器(ROM)、光盘、磁光盘以及处理器的寄存器文件。光盘的例子包括紧致盘(CD)和数字多用光盘(DVD),例如CD-ROM、CD-RW、CD-R、DVD-ROM、DVD-RW或者DVD-R盘。术语计算机可读存储介质也指可通过网络或通信链路被计算机设备访问的各种类型的记录介质。例如,数据可通过调制解调器、互联网或局域网被检索。提及计算机可读存储介质应当被解释为可能是多个计算机可读存储介质。一个或多个程序的各种可执行组件可被存储在不同的位置。计算机可读存储介质可以是例如同一个计算机系统中的多个计算机可读存储介质。计算机可读存储介质也可以是在多个计算机系统或计算设备中分布的计算机可读存储介质。
“计算机存储器”或“存储器”是计算机可读存储介质的例子。计算机存储器是可被处理器直接访问的任意存储器。计算机存储器的例子包括但不限于:RAM存储器、寄存器和寄存器文件。提及“计算机存储器”或“存储器”,应当被解释为可能是多个存储器。存储器可例如是同一个计算机系统内的多个存储器。存储器也可以是在多个计算机系统或计算设备中分布的多个存储器。
“计算机存储设备”或“存储设备”是计算机可读存储介质的例子。计算机存储设备是任何非易失性计算机可读存储介质。计算机存储设备的例子包括但不限于硬盘驱动器、USB姆指驱动器、软盘、智能卡、DVD、CD-ROM以及固态硬驱动器。在一些实施例中,计算机存储设备可以是计算机存储器或反之亦然。提及“计算机存储设备”或“存储设备”,应当解释为可能是多个存储设备。存储设备可例如是同一个计算机系统或计算设备中的多个存储设备。存储设备也可以是在多个计算机系统或计算设备中分布的多个存储设备。
在此使用的“计算机系统”包括含有处理器的任何设备。在此使用“处理器”包括电子组件,其能执行程序或机器可执行指令。提及计算设备包括“处理器”,应当被解释为可能含有多于一个的处理器或处理核。处理器可例如是多核处理器。处理器也可指单个计算机系统中的或分布在多个计算机系统中的处理器的集合。术语计算设备也应当被解释为可能指计算设备的集合或网络,每个所述计算设备包括一个或多个处理器。许多程序具有其自己的由多个处理器执行的指令,所述处理器可位于相同的计算设备内或甚至可分布在多个计算设备中。
在此使用的“显示器”或“显示设备”包括用于显示图像或数据的外部设备或用户界面。显示器可输出视频、音频和/或触觉数据。
在一方面,本发明提供了一种计算机系统,其包括用于创建和注册一个或多个设备对象的设备注册器。一个或多个设备对象中的至少一个设备对象被配置为通过网络连接与传感器设备的网络连接器通信。设备对象被配置为通过声明其能力而暴露传感器设备的至少一个参数。这里使用的传感器设备包括被配置为进行物理测量和/或控制与物理世界交互的设备或装置的任意设备。例如传感器设备可以包括进行测量的传感器。例子可以是温度传感器。传感器设备还可以包括控制物理装置或机器的东西。例如传感器设备可以控制太阳能电池板或窗户系统上的致动器。计算机系统还包括聚合模型,其用于聚合至少一个设备对象的至少一个参数。
聚合模型可以聚合来自其他设备对象和/或软件服务的参数。计算机系统还包括连线定义的集合,所述连线定义描述至少一个参数中的变化或更新所创建的触发的事件。例如,如果参数的值改变,该参数改变会触发事件。例如,温度值可高于或低于特定的值。这触发了引起连线定义所定义的响应的事件。计算机系统还包括连线代理,其用于根据所述触发的事件来更新聚合模型。在某些实施例中,设备注册器通过设备对象来提供门户组件,所述设备对象可使用连线连接在一起。例如,在某些实施例中IBMWeb Sphere门户系统可被用于提供连线、聚合模型和连线代理。该实施例可以是有益的,因为它提供了一种将传感器设备集成到系统中的方法,所述系统典型地用于集成web服务。因此可以通过用户界面例如在web浏览器中显示的用户界面来控制网络设备。
在另一实施例中,计算机系统是门户服务器。
在另一实施例中,通过声明其能力来暴露至少一个参数。这可以包括诸如设备类型以及抽象层中的输入和/或输出参数等参数。
在另一实施例中,计算机系统还包括由设备对象表示的设备,该设备对象可以提供基于硬件的传感器信息。它们可以作为基于硬件的致动器来反应,并且它们还可以表示物理多功能设备或甚至设置基于软件的互联网服务。
在另一实施例中,抽象层提供了基础设施来接收和/或轮询传感器的状态改变并触发致动器的状态改变。
在另一实施例中,连线代理被配置为将不同设备的设备能力互相连接,以建立场景应用。例如,场景应用(situational application)可以是混搭(mashup)。
在另一实施例中,计算机系统还包括用于存储机器可读指令的存储器。指令的执行使得处理器使用网络连接将网络可连接设备连接到网络。网络可连接设备可以是传感器设备。指令的执行还使得处理器使用抽象层在用户界面上可视化网络可连接设备。使用抽象层在用户界面上可视化网络可连接设备可以等价于在显示器的图形用户界面上显示从网络可连接设备聚合的数据。在用户界面上可视化网络可连接设备还可等价于在由web浏览器呈现的图形用户界面上显示聚合的数据。网络可连接设备是下列中的任一个:传感器、致动器、多功能设备和互联网服务。
指令的执行还使得处理器用抽象层来注册设备并通过使用抽象层连接设备和用户界面而使用设备注册器来声明其能力。在某些实施例中,抽象层可以等价于由设备注册器所创建的设备对象。
指令的执行还使得处理器使用抽象层来连线网络可连接设备,以用解耦设备的一致性(coherent)系统来实现用户定义的控制器逻辑。该抽象层提供基础设施来接收/轮询传感器的状态改变并触发施动器(actor)的状态改变。所述抽象层是通过使用软件抽象层而独立的设备和/或服务。
在另一实施例中,网络例如是互联网。
在另一实施例中,用户界面例如可以是用作平台的网页。这在某些实施例中可以通过web服务来执行。
在另一实施例中,用抽象层来注册的每个设备声明其能力。这可以包括设备类型以及输入和输出参数。
在另一实施例中,计算机系统还包括存储器,其用于存储机器可执行指令。指令的执行使得处理器通过网络连接器将传感器设备连接到网络。指令的执行还使得处理器用设备注册器来注册传感器设备。指令的执行还使得处理器使用设备注册器来创建用于注册的传感器设备的设备对象。指令的执行还使得处理器通过设备对象来提供传感器设备的至少一个参数。该实施例可以是有益的,因为它提供了容易的方式将传感器设备集成到用户界面中。在将传感器集成到门户服务器时,这尤其有益。
在另一实施例中,传感器设备通过web服务连接到网络。
在另一实施例中,指令的执行还使得处理器通过设备对象来接收更新的值,其中,设备提供更新的值。指令的执行还使得处理器根据该更新的值来更新至少一个参数。设备对象可以更新至少一个参数。指令的执行还使得处理器触发由更新至少一个参数所引起的至少一个事件。指令的执行还使得处理器根据该至少一个触发的事件来更新聚合模型。
指令的执行还使得处理器根据聚合模型来创建网页数据。这里使用的网页数据包括可以由web浏览器显示或使用以提供图形用户界面的数据。这可以包括HTML、XML以及小应用程序例如Java Applet。指令的执行还使得处理器响应于网页请求来提供网页数据。计算机系统还可以用作web服务器,并且响应于网页请求来提供网页数据。该实施例可以是有益的,因为它提供了有效的方式将传感器集成到图形用户界面中,该用户界面可以在web浏览器上显示。web浏览器可被用于显示来自传感器设备的数据并且发送数据来控制传感器设备的控制和操作。
在另一实施例中,计算机系统是门户服务器或web服务器。
在另一实施例中,设备对象被配置为用于传感器设备的至少一个被暴露的参数的语义映射。例如,计算机系统可包括用于实现语义映射器的计算机可执行代码。这里使用的语义映射器是帮助数据元素从一个名称空间变换到另一个名称空间的工具或软件服务。这可能是特别有益的,因为它可帮助以有意义的方式将传感器设备集成到用户界面。
在另一实施例中,计算机系统还包括网页聚合器,其用于供应根据所述聚合模型而构建的网页。网页聚合器可以是计算机可执行的代码,其用于构建页面数据,该页面数据可响应于网页请求来发送。网页聚合器使用聚合模型来聚合数据以构建网页。
在另一实施例中,网页被配置为展示设备对象的暴露参数的聚合。该实施例可以特别有益,因为它提供了用户界面,用户可以用它来共同地使用信息和/或控制各个传感器设备。
在另一实施例中,设备注册器被配置为使用身份验证服务来验证一个或多个设备对象的访问权限。这可以是有益的,因为一个或多个设备对象可以通过互联网来连接并且可以在多个位置。身份验证服务的使用使得能够通过设备对象来集成传感器设备。单独的传感器设备可被授予单独的用户身份,其可以使得设备能获取用户简档数据来进行合适的决策。这还可以使得设备能修改用户简档数据或某类状态信息,以代表用户来设置特定的状态信息或条件。这还使得设备能互相交互。这还使得设备能自主地行动,以通过这些设备来触发特定的动作。
在另一实施例中,传感器设备是传感器。
在另一实施例中,传感器设备是致动器。
在另一实施例中,传感器设备是控制器。
在另一实施例中,传感器设备是多功能设备。多功能设备可以包括传感器、致动器和控制的特征。
在另一实施例中,传感器设备是互联网服务。
在另一实施例中,设备对象被配置为用于以下各项中的任一个:发送属性值的状态更新、接收状态改变请求、声明要暴露的传感器或致动器参数值、以及其组合。
在另一实施例中,暴露的参数是以下各项中的任一个:要接收的数据、要设置的致动器参数、要设置的数据值以及要设置的配置值。
在另一实施例中,设备注册器还适于为软件服务注册和创建设备对象。该实施例尤其有利,因为传感器设备和软件服务可作为等价物被集成。这允许容易地集成传感器设备和软件服务以便可互操作并使用合作功能。
在另一实施例中,服务系统还包括连线编辑器,用于修改和/或创建连线定义的集合。
在另一实施例中,门户服务系统包括设备注册器(device registry)的多个实例。这尤其有利,因为不同类型的设备可以使用各种不同设备注册器。例如,如果有人有被集成为传感器设备的智能电话,则电信供应商可以提供用于该设备的设备注册器。告警系统或家庭控制系统可以使用告警系统或家庭控制系统的服务公司提供的设备注册器。使用多个设备注册器使得能够集成更多种类的传感器设备的网络。
另一方面,本发明提供了一种通过用户界面来连接网络可连接独立设备的方法,包括将传感器或致动器设备连接到网络。该方法还包括通过抽象层在用户界面上可视化每个网络可连接设备。网络可连接设备属于类型传感器和/或施动器。该方法还包括用所述抽象层注册每个设备、并通过将其与包括抽象层的用户界面连接而声明其能力的步骤。该方法还包括使用抽象层将选中的网络可连接设备与选中的其他设备连线、以便用解耦设备的一致性系统来实现用户定义的可控制逻辑的步骤。抽象层提供基础设施来轮询传感器的状态改变并触发施动器的状态改变。抽象层是通过使用软件抽象层而独立的设备和/或服务。
另一方面,本发明提供了一种将传感器设备连接到门户服务器系统的方法。该方法包括通过web服务将传感器设备连接到网络的步骤。该方法还包括使用web服务用设备注册器来注册传感器设备的步骤。该方法还包括创建用于被注册的传感器设备的设备对象的步骤。该方法还包括通过设备对象来提供传感器设备的至少一个参数的步骤。
在另一实施例中,该方法还包括由设备发送更新的值的步骤。该方法还包括根据更新的值来更新至少一个参数的步骤。该方法还包括触发由更新至少一个参数而引起的至少一个事件的步骤。该方法还包括根据至少一个触发的事件来更新聚合模型的步骤。该方法还包括根据聚合模型来创建网页数据的步骤。该方法还包括响应于网页请求而提供网页数据的步骤。
另一方面,本发明提供了一种非临时的计算机可读存储介质,其包含可被处理器执行的机器可执行指令。指令的执行使得处理器通过web服务将服务器设备连接到网络。指令的执行还使得处理器通过使用web服务用设备注册器注册传感器设备。指令的执行还使得处理器创建用于被注册的传感器设备的设备对象。指令的执行还使得处理器使用设备对象来暴露传感器设备的至少一个参数。
附图说明
下面,仅参考附图通过示例的方式来更详细地描述本发明的优选实施例,在附图中:
图1示出的流程图描述了根据本发明实施例的方法,
图2示出的流程图描述了根据本发明的另一实施例的方法,
图3示出了根据本发明实施例的计算机系统,
图4示出了根据本发明实施例的计算机系统的功能图,
图5示出的流程图描述了设备或传感器设备到计算机系统的连接,
图6示出的流程图描述了连线编辑器的操作,
图7示出的流程图描述了连线代理的操作,
图8示出的流程图描述了页面聚合器的使用,并且
图9示出了根据本发明实施例使用计算机系统的图形用户界面的使用。
具体实施方式
下面,这些图中的相同编号的元件是类似的元件或执行等价的功能。先前已经讨论过的元件将不一定在后面的图中讨论,如果其功能是等价的话。
图1示出的流程图描述了根据本发明的实施例的方法。在步骤100中,传感器设备连接到网络。接下来在步骤102中,用设备注册器来注册传感器设备。在步骤104中,设备注册器创建用于被注册的传感器设备的设备对象。最后在步骤106中,设备对象提供传感器设备的至少一个参数。
图2示出的流程图描述了根据本发明的另一实施例的方法。首先,在步骤200中传感器设备连接到网络。接下来在步骤202中,用设备注册器来注册传感器设备。接下来在步骤204中,设备注册器创建用于被注册的传感器设备的设备对象。在步骤206中,设备对象提供传感器设备的至少一个参数。接下来在步骤208中,设备对象从传感器设备接收更新的值。在步骤210中,设备对象然后根据该更新的值来更新至少一个参数。接下来在步骤212中,由于至少一个参数的更新而触发至少一个事件。
接下来在步骤214中,根据至少一个触发的事件来更新聚集模型。触发的事件可以包括如何更新聚合模型的指令。在步骤216中,根据聚合模型来创建网页数据。最后在步骤218中,响应于网页请求来提供网页数据。这例如可以是经过互联网将网页数据发送到不同的计算机系统。
图3示出了根据本发明的实施例的计算机系统。示出了计算机系统300。存在第二计算机系统302,其通过网络连接304连接到计算机系统300。网络连接304例如可以是互联网连接或其他类型的网络连接,例如以太网连接。存在若干网络设备,第一网络设备306、第二网络设备308和第三网络设备310,其中每个通过网络连接312连接到计算机系统300。
计算机系统300包括处理器314,其连接到计算机存储设备316和计算机存储器318。在计算机存储器318中存在设备注册器320。设备注册器320包括用于实现能够创建设备对象322、324、326的设备注册器的机器可执行代码。计算机存储器318包含用于连接第一设备对象306的第一设备对象322、用于连接第二设备对象308的第二设备对象324以及用于连接第三设备对象310的设备对象326。存储器318还包含连线代理328。计算机存储器318还包含从第一设备对象306接收的更新值330。更新值330引起事件332,其在被触发时被显示为包含在存储器318中。触发的事件332使得聚合模型更新模块334更新在计算机存储设备316中存储的聚合模型338。计算机存储器318还包含网页聚合器336,其用于使用聚合模型338来生成网页数据342。网页数据342被显示为存储在计算机存储设备316中。计算机存储设备316还包含连线定义的集合340,所述连线定义被用于确定更新值330是否触发事件332。
第二计算机系统302被显示为包含处理器350,其连接到计算机存储设备352和计算机存储器354。处理器还连接到显示器356。处理器350将请求发送到计算机系统300来供应网页。网页数据342通过网络连接304从所述计算机系统传输到第二计算机系统302。网页数据342被显示在计算机存储设备352中。计算机存储器342被显示为包含web浏览器360。在显示器356上是由web浏览器360用网页数据342呈现的图形用户界面362。在该图形用户界面中,存在若干个数据显示和控制区域。参数364显示传感器数据364。参数366示出了致动器控制。区域368示出了例如用于控制智能电话的设备控制368。控制370示出了服务控制370。这些可以是提供的用于为操作者执行任务或功能的软件服务。
与用户界面362相邻的是示出ID验证服务372的云,该服务寄放有用户账户和简档374。第一设备对象322可以使用汽车简档376,以使用和验证第一传感器设备306的连接。传感器简档378可以使用第二设备对象324,且第三设备对象326可以使用电话简档380以用于连接第三传感器设备310。在该例子中,存在单个处理器314和单个计算机系统300,其实现了计算机系统的所有组件。但是,可以存在在任何数量的计算机系统上分布的任何数量的处理器314。特别地,可以在与网页聚合器336分离的计算机系统上实现设备对象322、324、326和设备注册器320。
图4示出了根据本发明的实施例的计算机系统400的功能图。存在若干个设备或传感器设备402,其中每个具有其自己的网络连接器404。网络连接器404通过网络连接408连接到设备注册器410。在传感器设备402用设备注册器410注册时,设备注册器410为每个设备402创建设备对象412。网络连接器404然后能够使用网络连接414直接连接到设备对象412。设备注册器注册并创建设备对象412。通过网络连接414,设备对象和相关网络连接器404可以通过web或REST服务来发送例如用于传感器的属性值的状态更新,它可以通过web/REST服务来接收例如用于致动器的属性值的状态更新请求。
在某些实施例中,网络连接器404可以声明要暴露的传感器或致动器参数。设备对象412保存并/或获取被暴露的参数的状态。设备对象412暴露各个参数。连线定义集合416被用于控制改变或更新暴露参数的影响。存在连线编辑器418,其可被用于修改连线定义416,以及连线代理420,其使用连线定义416以造成设置的值被改变或者已被暴露的被改变或更新的属性值的影响。存在聚合模型422,其被用于获取被暴露参数的状态或设置被暴露参数的状态。聚合模型422能够用设备简档信息进行页面聚合424。存在web浏览器426,其可被用于控制连线编辑器418和/或用于请求页面聚合,以使用聚合的设备简档信息来呈现用户界面。
图5示出的流程图描述了根据本发明的实施例的将设备或传感器设备连接到计算机系统的方法。在步骤500中,设备或传感器设备通过web服务连接到网络。在步骤502中,设备通过web服务在设备注册器中注册自己。接下来在步骤504中,设备注册器创建设备对象。接下来在步骤506中,设备通过web服务声明其偏好以及其可以接收(如果其是致动器)和/或发送(如果其是传感器)。
图6示出了由连线编辑器418执行的各个步骤。在步骤600中,在连线编辑器中用户从设备对象选择属性作为事件或连线的源。接下来在步骤602中,用户从设备对象选择属性作为事件或连线的目标。接下来在步骤604中改变的连线被保存。
图7示出的流程图说明了根据本发明的实施例的连线代理的功能。在步骤700中,设备通过web服务将传感器属性的更新值发送到服务器。接下来在步骤702中,设备对象被更新以反映新的值。在步骤704中连线代理监听改变并通过识别连线到该属性的所有目标属性来对改变进行适当的反应。接下来在步骤706中,连线代理更新被连线的设备对象中的目标属性。然后在步骤708中,连线代理更新被连线的设备对象中的目标属性。最后在步骤710中,设备对象将新的值通知给设备或传感器设备。该通知可以通过推送服务或通过使设备轮询更新来实现。
图8示出的流程图描述了页面聚合器的使用。在步骤800中用户使用用户界面来登录到其设备简档。接下来在步骤802中,页面聚合器列出所有注册的设备并显示声明的属性的当前值。
图9被用于描述整个系统的功能。示出了用于控制连线编辑器的用户界面900。在一个区域中存在致动器连线界面902。在第二区域中存在传感器连线界面904。
示出了图形用户界面906,其示出了由图形用户界面900中的连线指定的页面聚合的例子。示出了传感器聚合908和致动器聚合910。
图形用户界面900和906示出了汽车导航系统如何被用于控制桑拿加热温度。如果汽车正在接近家里并且离家小于7km,则桑拿温度被设置为80摄氏度的温度。这是使用界面900使用连线来设置的。界面906示出了这些连线规则的效果。汽车被显示为7km的距离并且桑拿被设置为80摄氏度的温度906。
Java门户组件被用于实现本发明的实施例。门户组件事件为门户组件之间的通信提供了强大和灵活的发布/订阅机制。它们可被用于在门户组件之间交换复杂的数据以触发门户组件活动,例如更新到后端系统。在门户中,它们也可以与其他通信机制例如合作(Cooperative)门户组件以及点击即行动(click-to-action)进行互操作。
Java门户组件规范2.0的概念:
在Java门户组件规范2.0中定义了门户组件事件的编程细节。门户组件可以使用response.setEvent()调用来发布事件并在processEvent()方法中接收事件。GenericPortlet类提供默认的事件处理机制,其基于@ProcessEvent注释来分发事件。
作为门户组件程序员,在portlet.xml部署描述中声明门户组件可以发布或接收的所有事件。
门户中的事件分发可被控制。Java门户组件规范有意地未解决事件如何在门户组件之间传递,而只是规定了它们如何被发布和接收。在IBMWebSphere Portal版本7.0中,事件发布基于用于连接合作门户组件的相同的事件代理和连线技术。这意味着在将门户组件置于页面上时,它初始地不能发布或接收任何事件。必须使用门户组件连线工具链路将门户组件声明的事件连接到其他门户组件的输出或输入。
门户组件可以在应用资源束中声明本地化显示名以及对门户组件事件的描述。至少提供显示名,因为门户组件连线工具需要该信息来适当地显示事件源和目标。
可以在两个门户组件之间创建连线。为了在两个门户组件之间创建连线,源门户组件声明的输出必须与目标门户组件声明的输入匹配。该匹配可以在下列两个级别中的任一个上:
1.描述数据的语义内容的XML名称:
a.对于JSR286事件,这由portlet.xml中声明的事件名称来表示。
b.对于协作门户组件,这由协作门户组件WSDL中声明的属性类型的XML名称来表示。
2.数据的实际Java类表示。
默认地,连线工具需要语义XML名称的匹配。为了避免对协调的全局命名空间的需求,JSR286门户组件可以为事件声明多个别名。这允许门户组件连接到使用不同命名约定的多个其他的门户组件。如果portlet.xml的门户组件部分的语义XML名称以句号(.)结束,它作为通配符来使用。可以用它来匹配在portlet.xml的门户组件应用部分中定义的具有相同前缀的其他语义XML名称。该匹配机制可以用于以统一方式处理具有相同净载荷格式的一组类似的门户组件事件。
在已知两个门户组件使用相同数据格式但已声明不同XML名称(例如,对于共同格式例如电子邮件地址)的情形下,可以切换为匹配净载荷类型,这允许在源和目标之间创建连线而不管XML语义名称。这还可用于能接收任何字符串作为输入的非常一般的目标门户组件。
本发明的实施例以新的方式解决了两方面:通过连接传感器和致动器(其都可以是物理和/或逻辑(服务)实例),通过在非常高的语义级别指定想要和需要的,而不用关心低级别的细节,用户以上述步骤4基本上直接在最顶层开始。通过在用户定义/请求特定场景应用以及去往和来自所有参与元件的简单连接时由用户定义的语义的组合,可以应付复杂情况。本说明书出现的方式利用了来自连线门户组件的概念,并将它应用于物理设备和/或服务的更一般的情形。
让MyCollect成为云中的个性化中心聚焦点,在此用户可以注册/注销以及维护他的所有设备/传感器/致动器。
本发明中建议的方法仍需要向MyCollect注册(且因此连接)我的传感器和致动器。但是,界面的定义可以在语义上非常高级和抽象。例如,可以使我的智能手机作为位置传感器为MyCollect所知(等)。可以使我家里的桑拿为MyCollect所知道,作为可以开启/关闭的致动器,并且还可选地作为其状态开启/关闭的传感器。所有情形下的界面在技术上仅是平的(flat)字符串类型(或其他基本类型,如用于开启/关闭的布尔值),而不需要关于其预期用途或附属的任何其他东西的语义。
参考图9,使用智能电话位置和桑拿致动器以及日期/时间服务(作为总是可用的传感器),用户可以简单地“连线”下列场景应用。在星期五17:00之后且我正在接近家里大于30km时,我想要桑拿被自动开启,从而在我最后到家时可以准备好使用。
不管是桑拿还是智能电话还是时间服务都不需要知道它们所涉及于其中的场景应用的语义。连接由智能用户语义地建立。用户不需要知道桑拿或智能电话使用的协议的任何事情。桑拿和智能电话仅需要实现非常简单的高级别界面。系统原则上是开放和可扩展的。MyCollect知道越多元件,则更多可能性和能力变得可用。不需要因为其他元件加到系统而对现有元件进行任何改变。“智能”由用户表示他的愿望/需要而提供。隐私方面可被适当地处理,因为每个元件经过注册显式绑定到用户,并且在所有可能的信息流/动作方面在他的控制下。

Claims (15)

1.计算机系统(300,400),包括:
-设备注册器(320,410),用于创建和注册一个或多个设备对象(322、324、326、412),其中所述一个或多个设备对象中的至少一个设备对象被配置为通过网络连接(312、414)与传感器设备(306、308、310、402)的网络连接器(404)通信,其中所述设备对象被配置为通过声明其能力而暴露传感器设备的至少一个参数(364、366、368、908、910);
-聚合模型(334、422),用于聚合至少一个设备对象的至少一个参数;
-连线定义的集合(340、416),描述由至少一个参数中的变化或更新所创建的触发的事件;以及
-连线代理(328、420),用于根据所述触发的事件来更新聚合模型。
2.如权利要求1所述的计算机系统,其中所述计算机系统还包括存储器(318),用于存储机器可执行指令,其中指令的执行使得处理器:
a.使用网络连接将网络可连接设备(306、308、310、312)连接(100、200、500)到网络(312、314);
b.使用抽象层(322、324、326、412)在用户界面(362)上可视化网络可连接设备,其中,该网络可连接设备是下列各项中的任一个:传感器、施动器、多功能设备和互联网服务;
c.用抽象层来注册(102、202、502)设备,并通过使用抽象层来连接设备和用户界面,使用设备注册器来声明其能力;
d.使用抽象层来连线网络可连接设备,以用解耦设备的一致性系统来实现用户定义的控制器逻辑,其中,所述抽象层提供基础设施来接收/轮询传感器的状态改变并触发施动器的状态改变,其中所述抽象层是通过使用软件抽象层而独立的设备和/或服务。
3.如权利要求1或2所述的计算机系统,其中所述计算机系统还包括存储器(318),用于存储机器可执行指令,其中指令的执行使得处理器:
-通过网络连接器将传感器设备连接(100、200)到网络(312);
-利用设备注册器来注册(102、202)传感器设备;
-使用设备注册器来创建(104、204)用于注册的传感器设备的设备对象;以及
-通过设备对象提供(106、206)传感器设备的至少一个参数。
4.如权利要求3所述的计算机系统,其中指令的执行还使得处理器:
-由设备对象从设备接收(208)更新的值;
-根据所述更新的值,更新(210)至少一个参数;
-触发(212)由更新所述至少一个参数引起的至少一个事件;
-根据所述至少一个触发的事件更新(214)聚合模型;
-根据所述聚合模型创建(216)网页数据;
-响应于网页请求提供(218)所述网页数据。
5.如前述任一项权利要求所述的计算机系统,其中所述计算机系统是门户服务器或web服务器。
6.如前述任一项权利要求所述的计算机系统,其中所述设备对象被配置用于传感器设备的至少一个被暴露的参数的语义映射。
7.如前述任一项权利要求所述的计算机系统,其中所述计算机系统还包括网页聚合器(336、424),用于供应根据所述聚合模型而构建的网页(362、906)。
8.如权利要求7所述的计算机系统,其中所述网页被配置为显示设备对象的暴露参数的聚合(362、906)。
9.如前述任一项权利要求所述的计算机系统,其中所述设备注册器被配置为使用身份验证服务(372)来验证一个或多个设备对象的访问授权。
10.如前述任一项权利要求所述的计算机系统,其中所述传感器设备是以下各项中的任一个:传感器(364)、致动器(366)、多功能设备和web服务(368)。
11.如前述任一项权利要求所述的计算机系统,其中设备对象被配置为用于以下各项中的任一个:发送属性值的状态更新、接收状态改变请求、声明要暴露的传感器或致动器参数值、以及其组合。
12.如前述任一项权利要求所述的计算机系统,所述暴露的参数是以下各项中的任一个:要获取的数据、要设置的致动器参数、要设置的数据值、以及要设置的配置值。
13.如前述任一项权利要求所述的计算机系统,其中所述设备注册器还适于为软件服务注册和创建设备对象。
14.如前述任一项权利要求所述的计算机系统,其中所述门户系统服务器包括设备注册器的多个实例。
15.一种用于通过用户界面(362、906)连接网络可连接独立设备(306、308、310、402)的方法,包括:
a.将传感器或致动器设备连接(100、200、500)到网络(312);
b.通过抽象层(322、324、326、412)在所述用户界面上可视化每个网络可连接设备,其中所述网络可连接设备属于类型“传感器”和/或“施动器”;
c.用所述抽象层注册(102、202、502)每个设备,并通过将其与包括抽象层的用户界面连接而声明其能力;
d.通过所述抽象层将选中的网络可连接设备与选中的其他设备连线,以便用解耦设备的一致性系统来实现用户定义的控制器逻辑,其中所述抽象层提供基础设施来轮询传感器的状态改变并触发施动器的状态改变,
其中所述抽象层是通过使用软件抽象层而独立的设备和/或服务。
CN201280049366.7A 2011-10-12 2012-10-04 使用设备注册器和连线代理的传感器设备聚合 Active CN103858409B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP11184788 2011-10-12
EP11184788.5 2011-10-12
PCT/IB2012/055321 WO2013054237A1 (en) 2011-10-12 2012-10-04 Aggregation of sensor appliances using device registers and wiring brokers

Publications (2)

Publication Number Publication Date
CN103858409A true CN103858409A (zh) 2014-06-11
CN103858409B CN103858409B (zh) 2016-08-24

Family

ID=48081444

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280049366.7A Active CN103858409B (zh) 2011-10-12 2012-10-04 使用设备注册器和连线代理的传感器设备聚合

Country Status (6)

Country Link
US (1) US9692794B2 (zh)
JP (1) JP2015501473A (zh)
CN (1) CN103858409B (zh)
DE (1) DE112012003979T5 (zh)
GB (1) GB2507933B (zh)
WO (1) WO2013054237A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107005445A (zh) * 2014-09-11 2017-08-01 森特理克联网家居有限公司 用于连接和控制多个设备的系统
CN108415380A (zh) * 2017-02-06 2018-08-17 横河电机株式会社 传感器的登记方法、传感器的登记系统及中继装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10375171B2 (en) 2013-06-27 2019-08-06 International Business Machines Corporation Iterative learning for reliable sensor sourcing systems
IN2014CH01483A (zh) * 2014-03-20 2015-09-25 Infosys Ltd
CN107534658B (zh) * 2015-03-16 2020-11-17 康维达无线有限责任公司 使用公钥机制在服务层的端对端认证
ITUB20154945A1 (it) * 2015-10-29 2017-04-29 Freedompro Srl Sistema domotico multiprotocollo configurabile da utente.
WO2018004642A1 (en) * 2016-07-01 2018-01-04 Intel Corporation Dynamic user interface in machine-to-machine systems
US10951431B1 (en) * 2016-09-30 2021-03-16 Amazon Technologies, Inc. Device registry service
US11341274B2 (en) 2018-12-19 2022-05-24 Elasticsearch B.V. Methods and systems for access controlled spaces for data analytics and visualization
US11477207B2 (en) * 2019-03-12 2022-10-18 Elasticsearch B.V. Configurable feature level controls for data
US11240126B2 (en) 2019-04-11 2022-02-01 Elasticsearch B.V. Distributed tracing for application performance monitoring
US11397516B2 (en) 2019-10-24 2022-07-26 Elasticsearch B.V. Systems and method for a customizable layered map for visualizing and analyzing geospatial data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101063884A (zh) * 2006-04-04 2007-10-31 泛达公司 建筑自动化系统控制器
US20100299615A1 (en) * 2007-09-28 2010-11-25 The Trustees Of Dartmouth College System And Method For Injecting Sensed Presence Into Social Networking Applications
US20110022733A1 (en) * 2009-07-24 2011-01-27 Jeyhan Karaoguz Customized data delivery and network configuration via aggregation of device attributes
CN102087593A (zh) * 2009-12-08 2011-06-08 手持产品公司 远程设备管理界面

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6741855B1 (en) 2000-03-24 2004-05-25 Sun Microsystems, Inc. Method and apparatus for remotely managing data via a mobile device
US8489769B2 (en) 2003-10-02 2013-07-16 Accenture Global Services Limited Intelligent collaborative expression in support of socialization of devices
US7787869B2 (en) 2007-02-26 2010-08-31 Sony Ericsson Mobile Communications Ab Device, method, and computer program product for providing enhanced blogging features on a mobile phone

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101063884A (zh) * 2006-04-04 2007-10-31 泛达公司 建筑自动化系统控制器
US20100299615A1 (en) * 2007-09-28 2010-11-25 The Trustees Of Dartmouth College System And Method For Injecting Sensed Presence Into Social Networking Applications
US20110022733A1 (en) * 2009-07-24 2011-01-27 Jeyhan Karaoguz Customized data delivery and network configuration via aggregation of device attributes
CN102087593A (zh) * 2009-12-08 2011-06-08 手持产品公司 远程设备管理界面

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107005445A (zh) * 2014-09-11 2017-08-01 森特理克联网家居有限公司 用于连接和控制多个设备的系统
US10985973B2 (en) 2014-09-11 2021-04-20 Centrica Hive Limited System for connecting and controlling multiple devices
CN108415380A (zh) * 2017-02-06 2018-08-17 横河电机株式会社 传感器的登记方法、传感器的登记系统及中继装置

Also Published As

Publication number Publication date
GB201404277D0 (en) 2014-04-23
CN103858409B (zh) 2016-08-24
US9692794B2 (en) 2017-06-27
JP2015501473A (ja) 2015-01-15
DE112012003979T5 (de) 2014-06-12
US20140250234A1 (en) 2014-09-04
GB2507933A (en) 2014-05-14
WO2013054237A1 (en) 2013-04-18
GB2507933B (en) 2015-08-05

Similar Documents

Publication Publication Date Title
CN103858409A (zh) 使用设备注册器和连线代理的传感器设备聚合
Dustdar et al. Smart cities
US8832576B2 (en) Methods, apparatus and systems for authenticating users and user devices to receive secure information via multiple authorized channels
CN104238503B (zh) 用于过程控制系统的面向服务的架构
US7756905B2 (en) System and method for building mixed mode execution environment for component applications
CA3126149A1 (en) Systems, devices, and methods for internet of things integrated automation and control architectures
JP6201917B2 (ja) フィールドデバイスを設定するためのシステムおよび方法
US20200226615A1 (en) Customer service representative dashboard application
US9805083B1 (en) Method and computer program product for allowing a software application to interact with a product
WO2015138524A1 (en) Run-time experimentation with user interface configurations
Verborgh et al. A Web API ecosystem through feature-based reuse
CN104735111B (zh) 采用webservice作统一接口实现esb的方法
CN103425483A (zh) 菜单的用户定制
CA2864056A1 (en) Customer-specific configuration and parameterisation of level measurement devices during the ordering process
CN104270403A (zh) 基于struts2框架的云平台信息web监控系统
Lee et al. Blueprint flow: a declarative service composition framework for cloud applications
Wagner et al. Developing self-adaptive automotive systems: On the integration of service-orientation into automotive development processes
Cavallaro et al. Satisfying requirements for pervasive service compositions
CN108804088A (zh) 协议处理方法和装置
CN112527331A (zh) 基于fabric链码的线上管理方法、系统及存储介质
CN101896884B (zh) 用于传递数据的方法和系统
KR20190061733A (ko) 디바이스 관리 시스템 및 방법
Venu et al. Azure IoT Central
Viitanen Integrating two digital signage management systems: case: FirstView MediaCloud and Samsung MagicINFO
CN107209674B (zh) 管理资产的方法以及应用该方法的资产管理系统与机器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant