CN110140096B - 用于分布式边缘装置的在线、离线和混合许可的建筑物自动化系统 - Google Patents

用于分布式边缘装置的在线、离线和混合许可的建筑物自动化系统 Download PDF

Info

Publication number
CN110140096B
CN110140096B CN201780081701.4A CN201780081701A CN110140096B CN 110140096 B CN110140096 B CN 110140096B CN 201780081701 A CN201780081701 A CN 201780081701A CN 110140096 B CN110140096 B CN 110140096B
Authority
CN
China
Prior art keywords
hvac
manifest
hvac device
authentication server
entities
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.)
Active
Application number
CN201780081701.4A
Other languages
English (en)
Other versions
CN110140096A (zh
Inventor
朴永灿
贾斯丁·J·普罗格特
埃里克·S·保尔森
苏迪哈·R·辛哈
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.)
Johnson Controls Technology Co
Original Assignee
Johnson Controls Technology Co
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 Johnson Controls Technology Co filed Critical Johnson Controls Technology Co
Publication of CN110140096A publication Critical patent/CN110140096A/zh
Application granted granted Critical
Publication of CN110140096B publication Critical patent/CN110140096B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/30Control or safety arrangements for purposes related to the operation of the system, e.g. for safety or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/06Energy or water supply
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/30Control or safety arrangements for purposes related to the operation of the system, e.g. for safety or monitoring
    • F24F11/41Defrosting; Preventing freezing
    • F24F11/42Defrosting; Preventing freezing of outdoor units
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/50Control or safety arrangements characterised by user interfaces or communication
    • F24F11/54Control or safety arrangements characterised by user interfaces or communication using one central controller connected to several sub-controllers
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/62Control or safety arrangements characterised by the type of control or by internal processing, e.g. using fuzzy logic, adaptive control or estimation of values

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Public Health (AREA)
  • Water Supply & Treatment (AREA)
  • Primary Health Care (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Air Conditioning Control Device (AREA)

Abstract

一种用于建筑物空间的暖通空调(HVAC)系统包括HVAC装置,所述HVAC装置包括处理电路。所述处理电路被配置用于基于存储在所述装置上的清单生成经加密动态密钥。所述清单包括所述HVAC装置的基于所述HVAC装置与实体之间的关系的一组权利。所述处理电路进一步被配置用于通过将所述经加密动态密钥发送至认证服务器并且基于所述经加密动态密钥从所述认证服务器接收已更新清单来将所存储的清单传输至所述认证服务器。所述处理电路进一步被配置用于基于所述已更新清单将有效载荷请求发送至所述认证服务器,所述有效载荷请求包括软件更新请求。

Description

用于分布式边缘装置的在线、离线和混合许可的建筑物自动 化系统
相关专利申请的交叉引用
本申请要求于2016年10月31日提交的美国临时专利申请号62/415,447的权益和优先权。本申请还要求于2017年6月30日提交的美国专利申请号15/639,880的权益和优先权,所述美国专利申请号要求于2016年10月31日提交的美国临时专利申请号62/415,447的权益和优先权。这些专利申请均通过引用以其全部内容并入本文。
背景技术
暖通空调(HVAC)系统网络中的装置不具有用于认证和软件许可的安全、易使用的方法。传统登录可能需要用户记住与各种装置相关联的登录凭证,并且因此依赖于用户记住凭证来向装置认证用户。关于许可,装置可能仅依赖于网络连接性以许可软件,并且因此网络连接对许可软件来说是强制性的。这可能是不期望的,因为在HVAC网络中,装置并不总是在线的,并且在一些情况下,装置从不在线。
发明内容
本披露内容的一种实施方式是用于建筑物空间的HVAC系统,所述HVAC系统包括HVAC装置。所述HVAC装置包括处理电路,所述处理电路被配置用于基于存储在所述装置上的清单生成经加密动态密钥。所述清单包括所述HVAC装置的基于所述HVAC装置与实体之间的关系的一组权利。所述处理电路被配置用于通过将所述经加密动态密钥发送至认证服务器来将所存储的清单传输至所述认证服务器并且基于所述经加密动态密钥从所述认证服务器接收已更新清单。所述处理电路被配置用于基于所述已更新清单将有效载荷请求发送至所述认证服务器。所述有效载荷请求包括软件更新请求。
在一些实施例中,所述HVAC装置的所述处理电路被配置用于从所述认证服务器接收有效载荷并根据所述有效载荷更新所述HVAC装置的存储模块并提示用户确认所述有效载荷的安装。
在一些实施例中,所述清单指示所述有效载荷的位置。所述HVAC装置的所述处理电路可以被配置用于基于由所述清单指示的所述位置来检索所述有效载荷。
在一些实施例中,所述HVAC的所述一组权利至少包括所述HVAC装置获得软件操作版本的权利、所述HVAC装置获得软件附加组件的权利、以及配置所述HVAC装置从第二装置采集数据并向所述第二装置发送使得所述第二装置影响所述建筑物空间中的环境变化的命令的权利。
在一些实施例中,所述一组权利是所述HVAC装置获得软件操作版本或软件附加组件的权利。所述清单可以指示HVAC装置具有基于HVAC装置与特定组实体之间的关系的特定权利。在一些实施例中,所述特定组实体是特定建筑物的一组HVAC装置,并且所述特定权利是获得特定软件版本的权利。所述特定组实体可以具有所述特定权利,并且所述HVAC装置从所述特定组实体继承所述特定权利。
在一些实施例中,所述一组权利是所述HVAC装置获得软件操作版本或软件附加组件的权利。所述清单可以指示所述HVAC装置具有基于所述HVAC装置与特定组实体之间的关系以及所述特定组实体与特定用户实体之间的关系的获得特定软件版本的权利。在一些实施例中,所述特定用户实体与特定建筑物相关联并且具有所述特定权利,所述特定组实体是所述特定建筑物的一组HVAC装置,并且所述特定权利是特定软件操作版本。所述特定组实体可以从所述用户实体继承所述特定权利,并且所述HVAC装置从所述特定组实体继承所述特定权利。
在一些实施例中,所述清单包括实体之间的一组关系,所述一组关系包括组实体、用户实体、以及装置实体之间的一种或多种关系。
在一些实施例中,所述装置的所述一组权利基于所述装置与所述实体之间的关系并且进一步基于每个实体的所述权利。所述装置与所述实体之间的所述关系可以包括组实体与所述装置、用户实体与所述装置、以及装置实体与所述装置之间的关系。
在一些实施例中,所述HVAC的所述一组权利至少包括所述HVAC装置获得软件操作版本的权利、所述HVAC装置获得软件附加组件的权利、以及配置所述HVAC装置从第二装置采集数据并向所述第二装置发送使得所述第二装置影响所述建筑物空间中的环境变化的命令的权利。
所述装置与所述实体之间的所述关系进一步包括每个实体与其他实体之间的关系。在一些实施例中,每个实体与所述其他实体之间的所述关系包括所述组实体、所述用户实体、以及所述装置实体与其他组实体、其他用户实体、以及其他装置实体之间的关系。
在一些实施例中,所述HVAC装置的所述处理电路被配置用于基于所述清单或所述已更新清单将有效载荷请求发送至所述认证服务器。所述有效载荷请求可以包括软件更新请求。
在一些实施例中,所述HVAC装置的所述处理电路进一步基于装置密钥和装置ID值生成所述经加密动态密钥。
在一些实施例中,所述系统包括所述认证服务器,所述认证服务器包括处理电路。所述处理电路可以被配置用于从所述HVAC装置接收所述经加密动态密钥,并基于所述经加密动态密钥、所述装置密钥和所述装置ID值生成存储在所述装置上的所述清单。所述处理电路可以进一步被配置用于将所生成的清单与存储在所述认证服务器上的清单进行比较,并且响应于确定所述所生成的清单与存储在所述认证服务器上的所述清单不匹配而将所述已更新清单发送至所述HVAC装置。
在一些实施例中,所述认证服务器的所述处理电路被配置用于响应于接收针对特定有效载荷的有效载荷请求并且响应于存储在所述认证服务器上的指示所述HVAC装置有权获得所请求的有效载荷的所述清单而将有效载荷发送至所述HVAC装置。
在一些实施例中,所述有效载荷请求进一步包括定时密钥。所述定时密钥可以在预定量的时间内激活所述有效载荷请求。在一些实施例中,所述认证服务器的所述处理电路被配置用于在所述预定量的时间到期之前将所述有效载荷发送至所述装置。
本披露内容的另一种实施方式是用于在建筑物空间中许可装置的方法。所述方法包括由HVAC装置基于存储在所述HVAC装置上的清单生成经加密动态密钥。所述清单包括所述HVAC装置的基于所述装置与实体之间的关系的一组权利。所述方法进一步包括由所述HVAC装置通过将所述经加密动态密钥发送至认证服务器来将所存储的清单传输至所述认证服务器并且由所述HVAC装置基于所述经加密动态密钥从所述认证服务器接收已更新清单。所述方法包括由所述HVAC装置基于所述已更新清单将有效载荷请求发送至所述认证服务器。所述有效载荷请求包括软件更新请求。
在一些实施例中,所述清单包括实体之间的一组关系,所述一组关系包括组实体、用户实体、以及装置实体之间的一种或多种关系。
在一些实施例中,所述HVAC装置的所述一组权利基于所述HVAC装置与所述实体之间的关系以及每个实体的所述权利。在一些实施例中,所述HVAC装置与所述实体之间的所述关系包括组实体与所述HVAC装置、用户实体与所述HVAC装置、以及装置实体与所述HVAC装置之间的关系。
在一些实施例中,所述HVAC装置与所述实体之间的所述关系进一步包括每个实体与其他实体之间的关系。在一些实施例中,每个实体与所述其他实体之间的所述关系包括所述组实体、所述用户实体、以及所述装置实体与其他组实体、其他用户实体、以及其他装置实体之间的关系。
在一些实施例中,所述方法进一步包括由所述HVAC装置进一步基于装置密钥和装置ID值生成所述经加密动态密钥。
在一些实施例中,所述方法进一步包括:由所述认证服务器从所述HVAC装置接收所述经加密动态密钥;由所述认证服务器基于所述经加密动态密钥、所述装置密钥和所述装置ID值生成存储在所述HVAC装置上的所述清单;由所述认证服务器将所生成的清单与存储在所述认证服务器上的清单进行比较;以及响应于确定所述所生成的清单与存储在所述认证服务器上的所述清单不匹配而由所述认证服务器将所述已更新清单发送至所述HVAC装置。
在一些实施例中,所述清单指示所述有效载荷的位置。在一些实施例中,所述方法进一步包括基于由所述清单指示的位置而由所述HVAC装置检索所述有效载荷。
本披露内容的另一种实施方式是用于建筑物空间的暖通空调(HVAC)装置。所述装置包括处理电路,所述处理电路被配置用于基于存储在所述HVAC装置上的清单生成经加密动态密钥。所述清单包括所述HVAC装置的基于所述HVAC装置与一个或多个实体之间的关系的一组权利。所述HVAC与所述实体之间的所述关系包括一个或多个装置组实体与所述HVAC装置、用户实体与所述HVAC装置、以及装置实体与所述HVAC装置之间的关系。所述处理电路可以进一步被配置用于通过将所述经加密动态密钥发送至认证服务器来将所存储的清单传输至所述认证服务器并且基于所述经加密动态密钥从所述认证服务器接收已更新清单。所述处理电路被配置用于基于所述已更新清单将有效载荷请求发送至所述认证服务器。所述有效载荷请求包括软件更新请求。
在一些实施例中,所述HVAC装置的所述处理电路被配置用于从所述认证服务器接收所述有效载荷并根据所述有效载荷更新所述HVAC装置的存储模块并提示用户确认所述有效载荷的安装。
在一些实施例中,所述HVAC装置与所述实体之间的所述关系进一步包括每个实体与其他实体之间的关系。每个实体与所述其他实体之间的所述关系可以包括所述组实体、所述用户实体、以及所述装置实体与其他组实体、其他用户实体、以及其他装置实体之间的关系。
在一些实施例中,所述处理电路被配置用于基于所述清单将有效载荷请求发送至认证服务器。所述有效载荷请求可以包括软件更新请求和软件许可请求中的至少一个请求。
在一些实施例中,所述有效载荷请求进一步包括定时密钥。所述定时密钥可以在预定量的时间内激活所述有效载荷请求。在一些实施例中,所述认证服务器被配置用于在所述预定量的时间到期之前将所述有效载荷发送至所述装置。
在一些实施例中,所述HVAC装置的所述处理电路进一步基于装置密钥和装置ID值生成所述经加密动态密钥。
附图说明
通过参照结合附图进行的详细说明,本披露内容的各个对象、方面、特征和优点将变得更加明显并且更好理解,其中,贯穿全文相同的参考符号标识相应的元件。在附图中,相同的附图标记通常指示完全相同的、功能相似的和/或结构相似的元件。
图1是根据示例性实施例的配备有HVAC系统的建筑物的示意图。
图2是根据示例性实施例的可以结合图1的建筑物使用的水侧系统的框图。
图3是根据示例性实施例的可以结合图1的建筑物使用的空气侧系统的框图。
图4A是根据一些实施例的通过定位于图1的建筑物中的网络连接至认证服务器的多个HVAC装置的系统图。
图4B是根据一些实施例的经由数据采集器与云服务器通信的多个建筑物的图示。
图5是根据一些实施例的图4A的HVAC装置的更详细图示。
图6是根据一些实施例的图4A的认证服务器的更详细图示。
图7是图表,展示了根据一些实施例的由图5的HVAC装置和/或图6的认证服务器存储的关系和权利的列表。
图8是流程图,展示了根据一些实施例的可以由图4A的HVAC装置执行的用于更新清单和接收有效载荷的过程。
图9是流程图,展示了根据一些实施例的可以由图6的认证服务器执行的用于认证HVAC装置和传输有效载荷的过程。
图10是流程图,展示了根据一些实施例的用于使用图4A的HVAC装置和认证服务器来执行在线、离线、和混合许可的过程。
图11是根据一些实施例的用于管理许可的用户界面的图示。
图12是根据示例性实施例的与网络服务通信的图4A的HVAC装置之一的框图。
图13是根据示例性实施例的用于经由清单管理图4A的HVAC装置之一的许可的过程的流程图。
图14是根据示例性实施例的用于添加对图4A的HVAC装置之一的新许可的过程的流程图。
图15是根据示例性实施例的用于生成图4A的HVAC装置之一的清单的过程的流程图。
图16是根据示例性实施例的用于当HVAC装置在线时更新图4A的HVAC装置之一上的软件的过程的流程图。
图17是根据示例性实施例的用于当HVAC装置离线时更新图4A的HVAC装置之一上的软件的流程图。
图18是根据示例性实施例的用于当HVAC装置在线时注册图4A的HVAC装置之一的过程的流程图。
图19是根据示例性实施例的用于当HVAC装置离线时注册图4A的HVAC装置之一的过程的流程图。
具体实施方式
概述
总体上参照附图,根据各示例性实施例,示出了用于许可如HVAC装置等分布式边缘装置的系统和方法。由于HVAC装置可以在线、离线或可以是网络混合的事实,因此许可HVAC装置可能需要在传统许可技术中未发现的各种系统和方法;也就是说,HVAC装置可能仅在预配期间和/或某些时间点在线。通常,混合HVAC装置可以是以下HVAC装置,其中,HVAC装置的网络连接性不是连续的,或没有保证,也就是说,无法以高确定性已知HVAC装置将始终具有网络连接性。出于这个原因,HVAC装置可能需要被配置用于自己实施装置权利而不是从中央服务器请求权限,其中,所述中央服务器被配置用于实施HVAC装置的权利。在这一方面,HVAC装置的许可方案可以是在线、离线和混合许可方案。进一步地,许可方案可以被视为场所内、场所外、混合许可方案,因为装置可能不需要总是与网络、互联网、和/或以其他方式的“云”(基于云的服务器)通信。这可能会最小化更新客户端和/或对HVAC装置实施权利所需的工具的数量。许可方案可以与安全装置、防火装置或充当建筑物自动化系统(BAS)的其他HVAC装置一起使用。
本文所描述的系统和方法描述了可以用于实施HVAC装置的各种权利的“清单”。清单可以是用于指示组、装置和/或用户之间的关系并且进一步指示组、装置和/或用户的权利(例如,许可权利)的元数据(例如,JSON blob)。清单可以进一步包括各种权利的文件下载位置。如本文所使用的,“权利”可以指代针对软件(例如,软件操作版本、软件插件)的特定许可,所述特定许可可以具有开始和结束许可日期、对存储在其他装置中的数据的访问、对网络服务的登录访问、其他装置的控制、各种软件功能和附加组件、对特定软件版本的访问、对HVAC装置的某个任务或作业的指示、以及本文所描述的各种其他“权利”。权利的一个示例可以是用于控制第二装置和/或装置组的配置。权利可以是HVAC装置的特定配置,所述特定配置允许HVAC装置从第二装置或装置组采集数据并向第二装置发送命令,所述命令使得第二装置影响建筑物空间中的环境变化。软件附加组件或插件可以是特定的软件功能,如调度附加组件、需求限制附加组件、特定装置驱动程序和/或网络驱动程序、和/或用于HVAC装置的任何其他附加组件或插件。在一些实施例中,HVAC装置基于所采集的数据作出针对第二装置的控制决策。在各个实施例中,HVAC装置将所采集的数据发送至云服务器,并从所述云服务器接收针对第二装置的命令。
清单可以是除了装置信息、存储在HVAC装置上的软件和应用、HVAC装置的任务和作业等之外还存储HVAC装置的各种权利的数据结构。清单可以存储在HVAC装置和认证服务器上。可能存在各种例程,所述例程使HVAC装置和/或认证服务器同步和/或以其他方式更新存储在HVAC装置和认证服务器上的清单。清单可以允许未连接到网络的HVAC装置实施一组权利。
清单可以包括各种权利,如但不限于用于利用已经购买的软件的定时访问、各种软件插件和/或特征、对软件服务的认证访问、对软件下载和/或软件更新的访问、和/或任何其他特征和/或权利。清单可以被构造成使得清单不但包括单个装置的各种权利,而且还包括各种实体之间的关系以及这些实体的权利。例如,特定HVAC装置的清单可以包括一个或多个装置、一个或多个组和/或一个或多个用户之间的关系。装置可以是具有特定HVAC装置权利的各种HVAC装置,组可以是各种组,如技术员组、管理员用户组、和/或各自具有特定组权利的任何其他组,并且用户可以是各自具有特定用户权利的各种用户(例如,JohnSmith、技术员A)。存储特定清单的HVAC装置可以包括实体(例如,装置、组、用户)的所有权利。在这一方面,特定装置的清单可以包括特定装置的权利、特定装置与各种实体之间的关系,以及各种实体的权利。
清单的权利可以具有可加性。可加性权利的示例如下。第一装置的清单包括组A与第一装置之间的关系。组A可以具有权利A。组A可以具有组A与组B之间的关系。组B可以具有权利B。第一装置还可以包括与装置C的关系。装置C可以具有权利C。最后,第一装置可以具有权利D。第一装置的清单可以基于实体(例如,组A、组B、装置C)之间的各种关系指示第一装置包括权利A、B、C和D。第一装置可以被配置用于基于所述清单实施权利A、B、C和D。
另一个示例如下。在建筑物中,所有建筑物控制器都可以具有对软件A的访问权。在这一方面,组(例如,建筑物控制器组)可以与建筑物控制器组中的每个成员有权获得软件A的权利共存。建筑物控制器组中的一个建筑物控制器(建筑物控制器B)的清单可以指示建筑物控制器B具有与建筑物控制器组的关系,并且因此建筑物控制器B可以继承建筑物控制器组的权利,即,获得软件A的权利。
在各个实施例中,HVAC装置的清单在被发送至认证服务器之前被加密和/或在被发送至HVAC装置之前由认证服务器加密。HVAC装置和认证服务器均可以被配置用于生成“动态密钥”。所述动态密钥可以是HVAC装置的清单的加密版本,并且可以使用装置密钥和装置ID加密。在这一方面,HVAC装置可以用特定于HVAC装置的装置密钥和装置ID对存储在HVAC装置上的清单进行加密。可以将清单发送至认证服务器(例如,对认证服务器的一种断言)。认证服务器可以用由认证服务器存储的装置密钥和装置ID的副本对动态密钥进行解密。可以分析经解密动态密钥、清单以判定清单是否正确和/或以其他方式是最新的。如果认证服务器确定需要更新清单,则可以用装置ID和装置密钥(例如,装置ID和装置密钥的副本)对已更新清单进行加密,并将其发送至HVAC装置。
建筑物管理系统和HVAC系统
现在参照图1至图3,根据示例性实施例,示出了可以在其中实施本发明的系统和方法的示例性建筑物管理系统(BMS)和HVAC系统。具体参照图1,示出了建筑物10的透视图。建筑物10由BMS服务。BMS通常是被配置用于对建筑物或建筑物区之中或周围的设备进行控制、监测和管理的装置的系统。BMS可以包括例如HVAC系统、安全系统、照明系统、火灾报警系统、能够管理建筑物功能或装置的任何其他系统、或其任何组合。
服务于建筑物10的BMS包括HVAC系统100。HVAC系统100可以包括被配置用于向建筑物10提供加热、冷却、通风或其他服务的多个HVAC装置(例如,加热器、冷却器、空气处理机组、泵、风扇、热能储存装置等)。例如,HVAC系统100被示出为包括水侧系统120和空气侧系统130。水侧系统120可以向空气侧系统130的空气处理单元提供加热或冷却流体。空气侧系统130可以使用加热或冷却流体来加热或冷却提供至建筑物10的气流。参照图2和图3对可以在HVAC系统100中使用的示例性水侧系统和空气侧系统进行更加详细的描述。
HVAC系统100被示出为包括冷却器102、锅炉104、以及屋顶空气处理单元(AHU)106。水侧系统120可以使用锅炉104和冷却器102来加热或冷却工作流体(例如,水、乙二醇等)并且可以使工作流体循环至AHU 106。在各个实施例中,水侧系统120的HVAC装置可以定位在建筑物10之中或周围(如图1所示)或在如中央设施(例如,冷却器设施、蒸汽设施、热力设施等)等非现场位置处。可以在锅炉104中加热或在冷却器102中冷却工作流体,这取决于建筑物10中需要加热还是冷却。锅炉104可以例如通过燃烧易燃材料(例如,天然气)或使用电加热元件来向循环流体添加热量。冷却器102可以使循环流体与热交换器(例如,蒸发器)中的另一种流体(例如,制冷剂)成热交换关系以从循环流体中吸收热量。可以经由管路108将来自冷却器102和/或锅炉104的工作流体输送至AHU 106。
AHU 106可以使工作流体与穿过AHU 106(例如,经由一级或多级冷却盘管和/或加热盘管)的气流成热交换关系。气流可以是例如外部空气、来自建筑物10内的回流空气、或两者的组合,ABU 106可以在气流与工作流体之间传递热量,以为气流提供加热或冷却。例如,AHU 106可以包括被配置用于使气流越过或穿过包含工作流体的热交换器的一个或多个风扇或鼓风机。工作流体然后可以经由管路110返回至冷却器102或锅炉104。
空气侧系统130可以经由空气供应管道112将AHU 106供应的气流(即,供应气流)递送至建筑物10并且可以经由空气回流管道114向AHU 106提供来自建筑物10的回流空气。在一些实施例中,空气侧系统130包括多个可变空气量(VAV)单元116。例如,空气侧系统130被示出为包括建筑物10的每一个楼层或区域上的单独VAV单元116。VAV单元116可以包括气闸或可以被操作成控制提供至建筑物10的单独区域的供应气流的量的其他流量控制元件。在其他实施例中,空气侧系统130将供应气流递送到建筑物10的一个或多个区域中(例如,经由供应管道112),而不使用中间VAV单元116或其他流量控制元件。AHU 106可以包括被配置用于测量供应气流的属性的各种传感器(例如,温度传感器、压力传感器等)。AHU 106可以从定位在AHU 106内和/或建筑物区域内的传感器接收输入并且可以调节穿过AHU 106的供应气流的流速、温度或其他属性以实现建筑物区域的设定值条件。
现在参照图2,根据示例性实施例,示出了水侧系统200的框图。在各个实施例中,水侧系统200可以补充或替代HVAC系统100中的水侧系统120或者可以与HVAC系统100分开来实施。当在HVAC系统100中实施时,水侧系统200可以包括HVAC系统100中的HVAC装置的子集(例如,锅炉104、冷却器102、泵、阀等)并且可以操作用于向AHU 106提供加热或冷却流体。水侧系统200的HVAC装置可以定位于建筑物10内(例如,作为水侧系统120的部件)或定位于如中央设施等非现场位置处。
在图2中,水侧系统200被示出为具有多个子设施202至212的中央设施。子设施202至212被示出为包括:加热器子设施202、热回收冷却器子设施204、冷却器子设施206、冷却塔子设施208、高温热能储存(TES)子设施210、以及低温热能储存(TES)子设施212。子设施202至212消耗来自公共设施的资源(例如,水、天然气、电等)来服务于建筑物或校园的热能负载(例如,热水、冷水、加热、冷却等)。例如,加热器子设施202可以被配置用于在热水环路214中加热水,所述热水环路使热水在加热器子设施202与建筑物10之间循环。冷却器子设施206可以被配置用于在冷水环路216中冷却水,所述冷水环路使冷水在冷却器子设施206与建筑物10之间循环。热回收冷却器子设施204可以被配置用于将热量从冷水环路216传递至热水环路214以便提供对热水的附加加热和对冷水的附加冷却。冷凝水环路218可以从冷却器子设施206中的冷水中吸收热量并且在冷却塔子设施208中排出所吸收的热量或将所吸收的热量传递至热水环路214。热TES子设施210和冷TES子设施212可以分别储存热和冷热能以供后续使用。
热水环路214和冷水环路216可以将加热和/或冷却水递送至定位在建筑物10的屋顶上的空气处理机(例如,AHU 106)或建筑物10的单独层或区域(例如,VAV单元116)。空气处理机推送空气经过热交换器(例如,加热盘管或冷却盘管),水流过所述热交换器以提供对空气的加热或冷却。所述加热或冷却的空气可以递送至建筑物10的单独区域以服务于建筑物10的热能负载。然后水返回到子设施202至212以接收进一步的加热或冷却。
尽管子设施202至212被示出且被描述为加热或冷却水以便循环至建筑物,但是应当理解的是,替代或除了水之外可以使用任何其他类型的工作流体(例如,乙二醇、CO2等)来服务热能负载。在其他实施例中,子设施202至212可以直接向建筑物或校园提供加热和/或冷却,而不需要中间热传递流体。对水侧系统200的这些和其他变体在本发明的教导内。
子设施202至212中的每个子设施可以包括被配置用于促进子设施的功能的各种设备。例如,加热器子设施202被示出为包括被配置用于为热水环路214中的热水添加热量的多个加热元件220(例如,锅炉、电加热器等)。加热器子设施202还被示出为包括若干泵222和224,所述泵被配置用于使热水环路214中的热水循环并控制通过单独加热元件220的热水的流速。冷却器子设施206被示出为包括被配置用于除去来自冷水环路216中的冷水的热量的多个冷却器232。冷却器子设施206还被示出为包括若干泵234和236,所述泵被配置用于使冷水环路216中的冷水循环并控制通过单独冷却器232的冷水的流速。
热回收冷却器子设施204被示出为包括被配置用于将热量从冷水环路216传递至热水环路214的多个热回收热交换器226(例如,制冷电路)。热回收冷却器子设施204还被示出为包括若干泵228和230,所述泵被配置用于使通过热回收热交换器226的热水和/或冷水循环并控制通过单独热回收热交换器226的水的流速。冷却塔子设施208被示出为包括被配置用于除去来自冷凝水环路218中的冷凝水的热量的多个冷却塔238。冷却塔子设施208还被示出为包括若干泵240,所述泵被配置用于使冷凝水环路218中的冷凝水循环并控制通过单独冷却塔238的冷凝水的流速。
热TES子设施210被示出为包括被配置用于储存热水以供稍后使用的热TES罐242。热TES子设施210还可以包括被配置用于控制流入或流出热TES罐242的热水的流速的一个或多个泵或阀。冷TES子设施212被示出为包括被配置用于储存冷水以供稍后使用的冷TES罐244。冷TES子设施212还可以包括被配置用于控制流入或流出冷TES罐244的冷水的流速的一个或多个泵或阀。
在一些实施例中,水侧系统200中的泵(例如,泵222、224、228、230、234、236和/或240)中的一个或多个泵或水侧系统200中的管线包括与其相关联的隔离阀。隔离阀可以与泵集成或定位在泵的上游或下游,以控制水侧系统200中的流体流动。在各个实施例中,水侧系统200可以基于水侧系统200的特定配置以及水侧系统200所服务的负荷的类型而包括更多、更少或不同类型的装置和/或子设施。
现在参照图3,根据示例性实施例,示出了空气侧系统300的框图。在各个实施例中,空气侧系统300可以补充或替代HVAC系统100中的空气侧系统130或者可以与HVAC系统100分开来实施。当在HVAC系统100中实施时,空气侧系统300可以包括HVAC系统100中的HVAC装置的子集(例如,AHU 106、VAV单元116、管道112至114、风扇、气闸等)并且可以定位在建筑物10之中或周围。空气侧系统300可以操作用于使用由水侧系统200提供的加热或冷却流体来加热或冷却提供给建筑物10的气流。
在图3中,空气侧系统300被示出为包括节能装置型空气处理单元(AHU)302。节能装置型AHU改变空气处理单元用于加热或冷却的外部空气和回流空气的量。例如,AHU 302可以经由回流空气管道308从建筑物区域306接收回流空气304并且可以经由供应空气管道312将供应空气310递送至建筑物区域306。在一些实施例中,AHU 302是定位在建筑物10的屋顶上(例如,如图1所示的AHU 106)或者以其他方式被定位成接收回流空气304和外部空气314两者的屋顶单元。AHU 302可以被配置用于操作排气闸316、混合气闸318、以及外部空气闸320,以控制组合形成供应空气310的外部空气314和回流空气304的量。未通过混合气闸318的任何回流空气304可以作为废气322通过排气闸316从AHU 302排出。
气闸316至320中的每一个可以由致动器操作。例如,排气闸316可以由致动器324操作,混合气闸318可以由致动器326操作,并且外部空气闸320可以由致动器328操作。致动器324至328可以经由通信链路332与AHU控制器330通信。致动器324至328可以从AHU控制器330接收控制信号并且可以向AHU控制器330提供反馈信号。反馈信号可以包括例如对当前致动器或气闸位置的指示、由致动器施加的转矩或力的量、诊断信息(例如,由致动器324至328执行的诊断测试的结果)、状态信息、调试信息、配置设置、校准数据、和/或可以由致动器324至328采集、存储或使用的其他类型的信息或数据。AHU控制器330可以是被配置用于使用一个或多个控制算法(例如,基于状态的算法、极值搜索控制(ESC)算法、比例积分(PI)控制算法、比例-积分-微分(PID)控制算法、模型预测控制(MPC)算法、反馈控制算法等)来控制致动器324至328的节能装置控制器。
仍参照图3,AHU 302被示出为包括定位在供应空气管道312内的冷却盘管334、加热盘管336和风扇338。风扇338可以被配置用于迫使供应空气310通过冷却盘管334和/或加热盘管336并且向建筑物区域306提供供应空气310。AHU控制器330可以经由通信链路340与风扇338通信以便控制供应空气310的流速。在一些实施例中,AHU控制器330通过调节风扇338的速度来控制施加到供应空气310的加热量或冷却量。
冷却盘管334可以经由管路342从水侧系统200(例如,从冷水环路216)接收冷却流体并且可以经由管路344将冷却流体返回至水侧系统200。可以沿着管路342或管路344来定位阀346以便控制通过冷却盘管334的冷却流体的流速。在一些实施例中,冷却盘管334包括可以被独立激活和取消激活(例如,由AHU控制器330)以调节施加到供应空气310的冷却量的多级冷却盘管。
加热盘管336可以经由管路348从水侧系统200(例如,从热水环路214)接收加热流体并且可以经由管路350将加热流体返回至水侧系统200。可以沿着管路348或管路350来定位阀352以便控制通过加热盘管336的加热流体的流速。在一些实施例中,加热盘管336包括可以被独立激活和取消激活(例如,由AHU控制器330)以调节施加到供应空气310的加热量的多级加热盘管。
阀346和352中的每一个可以由致动器控制。例如,阀346可以由致动器354控制,并且阀352可以由致动器356控制。致动器354至356可以经由通信链路358至360与AHU控制器330通信。致动器354至356可以从AHU控制器330接收控制信号并且可以向控制器330提供反馈信号。在一些实施例中,AHU控制器330从定位在供应空气管道312中(例如,冷却盘管334和/或加热盘管336的下游)的温度传感器362接收供应空气温度的测量结果。AHU控制器330还可以从定位于建筑物区域306中的温度传感器364接收建筑物区域306的温度测量结果。
在一些实施例中,AHU控制器330经由致动器354至356操作阀346和352以调节提供至供应空气310的加热量或冷却量(例如,从而达到供应空气310的设定值温度或者将供应空气310的温度维持在设定值温度范围内)。阀346和352的位置影响由冷却盘管334或加热盘管336提供至供应空气310的加热量或冷却量,并且可以与被消耗以达到期望供应空气温度的能源量相关。AHU控制器330可以通过对盘管334至336进行激活或去激活、调整风扇338的速度或两者的组合来控制供应空气310和/或建筑物区域306的温度。
用于HVAC装置许可的系统和方法
现在参照图4A,根据示例性实施例,示出了通信系统400的框图。系统400可以在建筑物(例如,建筑物10)中实施,并且被示出为包括都与网络408通信的一个或多个HVAC装置402、认证服务器404和用户装置406。HVAC装置402可以包括致动器410、气闸412、冷却器414、加热器416、屋顶单元(RTU)418、空气处理单元(AHU)420、网关422和/或可以安装在建筑物(例如,建筑物10)内的任何其他类型的设备或装置(例如,风扇、泵、阀等)。例如,HVAC装置402可以是一个或多个BMS装置,如参照图1至图3所描述的。在一些实施例中,HVAC装置402是恒温器、气闸、阀、VA可变空气量箱、安全装置、照明装置、应急设备、防火装置或其他IoT装置。HVAC装置402可以被配置用于引起建筑物和/或区域中的环境变化。在各个实施例中,HVAC装置402可以使其他装置引起建筑物和/或区域中的环境变化。例如,HVAC装置402可以单独地和/或作为整体被配置用于对建筑物(例如,建筑物10)和/或建筑物的区域进行加热、冷却、加湿、除湿等。
尽管主要参照HVAC设备描述了本说明书,但应当理解的是,本文所描述的系统和方法可以适用于具有嵌入式智能能力和通信能力的各种各样的建筑物设备和非建筑物设备以及其他类型的连网装置(例如,HVAC设备、智能照明系统、移动电话、电梯系统、消防安全系统、智能路灯、汽车、智能电视等)。
(多个)HVAC装置402可以被配置用于彼此通信和/或与远程服务(例如,远程监测和分析服务、基于云的控制服务等)通信。在一些实施例中,(多个)HVAC装置402被配置成具有普遍存在的连接性(即,始终连接)。在其他实施例中,HVAC装置402连接一段时间和/或从未连接。在一些实施例中,HVAC装置402可以各自具有其自己的处理和分析能力。在一些实施例中,通过构建用于控制HVAC装置402的各种软件应用和/或分析模型,在云(例如,认证服务器404)中管理HVAC装置402。如此,可能不需要现场/监督控制器或建筑物自动化系统来控制HVAC装置402。例如,具有内置位置反馈、处理器和通信网络的智能致动器可以提供执行本地决策功能的具有成本效益的解决方案。一起工作的一系列智能致动器和气闸可以提供建筑物的完全自主操纵。
(多个)HVAC装置402可以使用各种通信协议中的任何通信协议彼此通信(例如,点对点通信)。在一些实施例中,(多个)智能连网的HVAC装置402使用无线通信协议(例如,WiFi、蓝牙、3G/4G、802.15.4、ZigBee、LoRa等)彼此无线地通信。(多个)HVAC装置402所使用的特定通信协议可以取决于安装有(多个)智能连网的HVAC装置402的建筑物内的功率要求、带宽要求和/或现有基础设施。在一些实施例中,(多个)HVAC装置402使用专有建筑物设备协议(例如,BACNet、Zigbee、Modbus、现场总线等)彼此通信以在各种装置之间移动数据。为了在那些协议之上构建应用,可以将协议转换为互联网协议(IP)。在一些实施例中,通信网关(例如,网关422)用于这种转换。
在一些实施例中,(多个)HVAC装置402的仅一部分(例如,网关422)与外部网络(例如,经由蜂窝网络、广域网(WAN)、互联网等)通信。数据(例如,动态密钥、已更新清单、有效载荷等)可以在(多个)HVAC装置402之间交换,并且然后由(多个)HVAC装置402的子集传输至其他HVAC装置402或外部网络。由(多个)HVAC装置402传输的数据类型可以包括例如由与(多个)HVAC装置402集成的传感器记录的测量结果、装置状态信息、诊断信息、配置信息、装置身份信息、软件版本、硬件版本、或与(多个)HVAC装置402有关的任何其他信息、或其操作。为了使数据由各种软件应用所消耗,可以使用上下文协议(例如,RESTful API、CoAP、HTTP、AMQP、MQTT)来提供关于数据的上下文信息。一个或多个API可以用于使用清楚的抽象概念与外部网络共享数据。
在一些实施例中,(多个)HVAC装置402被示出为经由网络408和/或网关422发送和接收数据(例如,动态密钥、有效载荷请求、有效载荷、已更新清单等)。在一些实施例中,已更新清单是各种实体(例如,装置、组、用户)与权利(例如,控制动作、软件许可等)之间的关系。在一些实施例中,网关422可以用于连接传统设备和新设备(例如,温度传感器、致动器、冷却或加热装置、工业机器人、个人健康监测装置等),以从传统设备和/或新设备中获得数据,并且作为回报,基于从控制装置(例如,HVAC控制器、恒温器、AHU 420)接收的指令或分析结果来控制这些设备。
网关422可以提供用于远程访问和协议中介服务的传统装置端点的网络安全、访问控制和唯一地址。在一些实施例中,网关422是由各种硬件制造商(例如,Intel、FreeScale、Dell、Texas Instrument等)中的任何硬件制造商所制作的通用网关解决方案。在其他实施例中,网关422是专门用于连接建筑物自动化系统和智能设备的网络控制引擎(NCE)、网络自动化引擎(NAE)和/或MAP网关。网关422可以使用各种基于互联网的协议(例如,CoAP、XMPP、AMQP、MQTT等)或基于web的公共数据交换(例如,HTTP RESTful API)以将通信从建筑物自动化系统协议转换为互联网协议。在一些实施例中,网关422可以被配置用于与认证服务器404通信以维持清单,如进一步参照图5至图8所描述的。在各个实施例中,网关422可以基于存储在网关422上的清单来存储更新HVAC装置402上的各种权限。
HVAC装置402可以描述HVAC装置402的每个HVAC装置、一组HVAC装置和/或特定HVAC装置。在一些实施例中,HVAC装置402被配置用于基于存储在HVAC装置402上的清单、存储在HVAC装置402上的可能是HVAC装置402所独有的并且可能是私有的装置密钥、以及可能是公开值的装置ID来生成动态密钥。在一些实施例中,清单包含用户、组、装置和特定HVAC装置402之间的所有关系以及与每个组装置和用户可能相关联的权利。一旦生成,所述动态密钥就可以经由网络408发送至认证服务器404。认证服务器404可以通过向HVAC装置402发送已更新清单来对动态密钥进行回复。进一步地,HVAC装置402可以被配置用于请求HVAC装置402基于由存储在HVAC装置402上的清单确定的一组权利而被授权的有效载荷(例如,软件更新请求、软件许可请求、和操作特征请求等)。在各个实施例中,认证服务器404可以向HVAC装置402断言清单。如本文所使用的,“断言”可以指代发送、传输、和/或以其他方式传送数据。在这一方面,HVAC装置402可以被配置用于更新存储在HVAC装置402上的清单。
在一些实施例中,网络408可以包括互联网和/或其他类型的数据网络,如局域网(LAN)、广域网(WAN)、蜂窝网络、卫星网络、或任何其他类型的数据网络或其组合。网络408可以包括被配置用于发射、接收或中继数据的任何数量的计算装置(例如,计算机、服务器、路由器、网络交换机等)。网络408可以进一步包括任何数量的硬接线和/或无线连接。例如,(多个)HVAC装置402可以与硬接线(例如,经由光缆、以太网、CAT5电缆等)到网络408的计算装置的收发器无线地(例如,使用WiFi或蜂窝无线电等)通信。
网络408可以包括促进管理与(多个)HVAC装置402的无线和/或有线通信的服务。网络供应商可以包括例如蜂窝电信提供商(例如,Verizon、T-Mobile、AT&T等)以及互联网服务提供商。经由网络408的通信可以利用企业合同和伙伴关系来优化数据传输的成本。许多网络载体提供安全连接选项作为高级服务的一部分。然而,可以经由在(多个)HVAC装置402中采用可信平台模块并使用加密消息传递实现类似程度的网络安全。HVAC装置402可以使用经由基于互联网的安全传输的高级消息队列协议(AMQP)。在各个实施例中,通过网络408通信的每个装置和/或装置的一部分使用传输层安全(TLS)、安全套接层(SSL)和/或任何其他加密协议来确保通过网络408发送的消息的完整性和/或安全性。
仍参照图4A,认证服务器404被示出为经由网络408接收动态密钥和有效载荷请求。进一步地,认证服务器404被示出为向网络408发送有效载荷和已更新清单。在一些实施例中,认证服务器404定位于建筑物10中或可以远程定位,并且可以经由互联网或任何其他网络(例如,网络408)与(多个)HVAC装置402和用户装置406通信。
在一些实施例中,认证服务器404被配置用于对从(多个)HVAC装置402和/或用户装置406中的至少一个装置接收的动态密钥进行解码。一旦解码,动态密钥就可以标识存储在HVAC装置402和/或用户装置406上的清单。认证服务器404可以被配置用于搜索链接到各种装置(例如,(多个)HVAC装置402)的各种装置清单的数据库(例如,装置注册表和/或许可注册表),并判定被HVAC装置402发送(例如,断言)到认证服务器404的清单是否是正确的、最新的、和/或以其他方式同步的。在一些实施例中,认证服务器404标识存储在HVAC装置402和/或用户装置406上的清单是不正确的和/或最新的。在这种情况下,认证服务器404可以被配置用于将已更新清单传输至HVAC装置402。在一些实施例中,已更新清单被加密,使得仅HVAC装置402可以解释所述数据。这可以允许安全性,使得如其他HVAC装置402(例如,致动器410、加热器416、冷却器、RTU 418等)等其他装置可以将已更新清单传递至目的地装置而不需要能够解码清单。
在一些实施例中,认证服务器404被配置用于从(多个)HVAC装置402和/或用户装置406中的至少一个装置接收有效载荷请求。在一些实施例中,有效载荷请求是对软件更新、软件许可、软件功能、和/或任何其他请求的请求。认证服务器404可以通过基于与(多个)HVAC装置402和/或用户装置406相关联的清单将所请求的有效载荷发送至(多个)HVAC装置402和/或用户装置406来发送对有效载荷请求的回复。所述清单可以指示(多个)HVAC装置402和/或用户装置406可能有权获得有效载荷或可能无权获得有效载荷(例如,可能或可能没有购买特定款软件、可能或可能没有每月进行功能付费等)。认证服务器404被配置用于相应地响应针对有效载荷的每个请求。例如,如果用户B没有针对其致动器410的某一软件功能进行年度支付,但是致动器410请求有效载荷,则认证服务器404可以不发送所请求的有效载荷。在一些实施例中,所述有效载荷请求是由用户装置406和/或(多个)HVAC装置402发送的自动请求,无需用户的干预。在各个实施例中,每个有效载荷请求被加密。加密有效载荷请求验证所述有效载荷请求的完整性。如果有效载荷请求无论如何都被损坏或在从一个装置传输到另一个装置时以其他方式破坏,则经解密有效载荷请求将不可识别和/或采用有用的格式。
认证服务器404被示出为包括装置注册表425和许可注册表427。装置注册表425可以包括向认证服务器404注册的所有(多个)HVAC装置402的注册表。在一些实施例中,装置注册表425记录HVAC装置402的连接状态和/或能力。进一步地,认证服务器404可以将各种用户和/或用户简档链接到可以记录在装置注册表425中的各种装置(例如,清单)。在一些实施例中,认证服务器404可以被配置用于向HVAC装置402发送命令和/或从HVAC装置402接收数据。在这一方面,认证服务器404可以被配置用于监测和/或记录所接收的数据。在一些实施例中,监测和/或记录的数据是与HVAC装置402相关联的元数据。在一些实施例中,认证服务器404(例如,许可注册表427)可以被配置用于维护用户、装置、组织等之间的权限和关联的列表,如进一步参照图7至图8所描述的。
在一些实施例中,认证服务器404包括认证服务器404用来存储数据的一个和/或多个数据库(例如,装置注册表425、许可注册表427等)。在一些实施例中,认证服务器404是定位于与HVAC装置402相同的场所(例如,在同一建筑物中)和/或实例化为单个计算系统的物理计算机系统和/或控制器。当认证服务器404定位于与HVAC装置402相同的建筑物场所时,数据库可以是键值数据库、非关系数据库(例如,NoSQL)、关系数据库(RDB)、postgreSQL数据库、和/或任何其他类型的数据库或数据库类型的组合。在一些实施例中,认证服务器404是基于云的(例如,不定位于与HVAC装置402相同的场所)。在这一方面,认证服务器404可以包括
Figure GDA0002902429870000201
活动目录、
Figure GDA0002902429870000202
IoT中枢、
Figure GDA0002902429870000203
文档数据库、
Figure GDA0002902429870000204
表和/或用于存储数据的任何其他机制。在一些实施例中,
Figure GDA0002902429870000205
IoT中枢充当消息传输层以促进从装置(例如,HVAC装置402)到云(例如,认证服务器404)的通信(例如,遥测技术)。在各个实施例中,
Figure GDA0002902429870000206
IoT中枢充当消息传输层以促进从云(例如,认证服务器404)到装置(例如,HVAC装置402)的通信。在一些实施例中,从云到装置的通信包括各种命令消息。在进一步实施例中,
Figure GDA0002902429870000207
IoT中枢可以包括装置注册表(例如,装置注册表425),所述装置注册表跟踪各种装置(例如,HVAC装置402)的各种连接状态和各种能力。
认证服务器404被示出为包括访问门户424。访问门户424可以经由用户装置406和/或任何其他计算装置访问。在一些实施例中,访问门户424可以包括可以经由用户装置(例如,用户装置406)访问的用户界面(UI)。在一些实施例中,访问门户424包括多个用户界面(例如,用于用户的用户界面、用于制造方和/或第三方的用户界面)。在各个实施例中,(多个)用户界面可以包括各种徽标和/或特定颜色主题。在一些实施例中,用户装置406经由互联网与认证服务器404连接。访问门户424可以允许用户装置406管理简档(例如,用户简档、装置简档、公司简档、校园简档等)。在一些实施例中,访问门户424可以允许用户装置406将装置添加到简档和/或从简档中移除装置。
进一步地,访问门户424可以允许用户装置406对与简档(例如,存储在装置注册表425和/或许可注册表427中的数据)相关联的装置进行各种改变。例如,访问门户424可以允许用户装置406改变、设置和/或生成新装置密钥、装置ID、SKU值、和/或与各种装置(例如,HVAC装置402)相关联和/或与简档相关联的任何其他指示符和/或数据元素。在一些实施例中,如果HVAC装置402已经被替代,则装置ID可以被用户装置406改变。在一些实施例中,用户可以查看各种装置、装置类型(例如,
Figure GDA0002902429870000211
装置、数据采集器等)、以及与简档相关联的各种装置连接,查看装置的状态,查看为装置安装的软件和/或可用于装置的软件(例如,开发者软件版本、α软件版本、β软件版本、发布软件版本等)等。进一步地,访问门户424和/或认证服务器404可以基于当前在HVAC装置402上运行的软件来更新(例如,周期性地更新)软件版本指示。
在一些实施例中,认证服务器404可以被配置用于允许用户装置406管理各种许可。在一些实施例中,许可与一个或多个简档和/或装置相关联。在一些实施例中,访问门户424可以被配置用于基于与简档相关联的各种许可来更新装置的清单。在一些实施例中,访问门户424可以被配置用于允许用户装置406添加新的许可和/或编辑当前许可(例如,权利)。在这一方面,用户装置406可以使访问门户424扩展许可、撤销许可和/或将许可分配给特定简档、用户、装置等。除了允许用户装置406调整和/或创建新许可之外,访问门户424还可以被配置用于通过将状态发送至用户装置406来显示每个许可的当前状态。
认证服务器404可以被配置用于注册特定HVAC装置402,并且可以被配置用于将注册信息存储在装置注册表425、许可注册表427和/或可用于认证服务器404的任何其他数据存储装置中。在一些实施例中,认证服务器404向特定用户和/或特定组权限和/或权利注册特定HVAC装置402。然而,如果HVAC装置402未向认证服务器404注册,则HVAC装置402可以继续运行。响应于正确配置和/或注册,认证服务器404可以更新HVAC装置402的配置。在这一方面,可以由HVAC装置402下载和/或安装特定产品版本和/或版本标识符、装置信息、作业和任务定义、许可能力、可用于下载、软件更新等的产品版本。在一些实施例中,基于从认证服务器404接收的配置(例如,清单),从认证服务器404下载数据。信息下载可以基于存储在装置注册表425和/或许可注册表427中的信息。进一步地,基于所述配置,HVAC装置402可以被配置用于使用安全API将许可信息存储到文件等来执行各种作业(例如,将诊断文件上传到认证服务器404)。
在一些实施例中,认证服务器404可以被配置用于认证各种用户和/或装置(例如,HVAC装置402和/或用户装置406)并给予用户和/或装置各种级别的访问(例如,范围)。在这一方面,各种用户和/或装置可以经由各种令牌(例如,动态密钥、装置ID、装置密钥、装置ID、清单等)进行认证,所述令牌可以由认证服务器404生成/或下发给装置。在一些实施例中,认证服务器404与用户和/或装置集成和/或允许用户和/或装置使用第三方识别服务(例如,
Figure GDA0002902429870000221
Figure GDA0002902429870000222
等)进行认证。在一些实施例中,认证服务器404允许各种类型的认证。在一些实施例中,认证是混合流。这可以是经由登录表格发生的认证。在一些实施例中,用户使用登录表格经由用户名(例如,组织ID、域名等)和密码登录。在各个实施例中,认证是资源所有者流。所述资源所有者流可以允许用户在不使用用户登录页的情况下向认证服务器404认证。进一步地,认证服务器可以允许装置经由客户端凭证流进行认证。在此实施例中,装置可以在没有用户干预的情况下(例如,经由动态密钥)向认证服务器404认证。
访问门户424可以被配置用于创建、存储和/或更新用户、组、装置、环境、软件版本等之间的各种关系。在一些实施例中,访问门户424可以访问和/或更新存储在许可注册表427中的许可信息。进一步参照图7描述这些关系。访问门户424可以被配置用于允许用户装置406添加、移除、关联、和/或编辑用户、组、组织、公司、装置等。在一些实施例中,添加,移除和/或关联用户、组、组织、公司和装置允许创建实体之间的各种关系。进一步地,访问门户424可以被配置用于允许用户装置406添加、移除、和/或编辑与各种关系相对应的各种权限(例如,权利)。将进一步参照图8描述权限、用户、组、装置、环境和软件版本之间的关系。
仍参照图4A,用户装置406被示出为经由网络408与认证服务器404和(多个)HVAC装置402中的至少一个通信。用户装置406可以是任何便携式和/或固定式计算装置。在一些实施例中,用户装置406是智能手机、平板计算机、膝上型计算机、台式计算机和/或可以通信地耦合至互联网和/或网络408的任何其他计算装置。在一些实施例中,用户装置406可以被配置用于执行认证服务器404的一些和/或所有功能。在这一方面,如果用户装置406可以被配置用于使用(多个)HVAC装置402和/或如关于认证服务器404所描述的任何其他功能执行软件更新和/或清单更新。在这一方面,用户可以从认证服务器404接收软件包、软件更新、清单更新和/或任何其他数据,其然后可以用于更新HVAC装置402。在这一方面,即使HVAC装置402未连接至认证服务器404和/或互联网,HVAC装置402也可以接收更新。进一步地,用户装置406可以是和/或运行客户端更新实用程序,如进一步参照图10所描述的。
在一些实施例中,用户装置406可以将动态密钥发送至认证服务器404和(多个)HVAC装置402中的至少一个。在一些实施例中,用户装置406可以被配置用于从认证服务器404接收已更新清单。在一些实施例中,用户406可以基于存储在用户设备406上的清单与(多个)HVAC设备402通信和/或控制所述装置HVAC装置。存储在用户装置406上的清单可以给予用户装置406某些权利并允许用户装置406基于所述权利来控制(多个)HVAC装置402。当用户装置406可能尝试执行用户装置406无权执行的控制动作(例如,改变屏幕背景、调整温度设定值、执行完整的系统关闭)时,这可以允许用户装置406绕过传统的登录屏幕和/或可以移除请求额外认证的要求。
现在参照图4B,根据示例性实施例,示出了包括经由数据采集器连接至云服务器的多个建筑物的系统430。系统430被示出为包括多个建筑物434、436、438和440。建筑物434至440可以与建筑物10相同和/或类似。在一些实施例中,这些建筑物均为单个公司所有,和/或可以定位于单个校园、多个校园、多个州和/或多个国家中。每个建筑物434至440被示出为具有数据采集器,数据采集器442至448。数据采集器442至448可以是控制器、网关(例如,网关422)、计算机系统和/或可以为建筑物采集数据并将数据推送至服务器的任何其他装置。在一些实施例中,建筑物434至440可以具有一个或多个数据采集器。基于每个建筑物434至440和/或数据采集器442至448所定位的位置(如国家、州、地区),每个建筑物434至440和/或数据采集器442至448可以满足数据安全和/或加密的本地规范。与建筑物434至440中的一个或多个相关联的客户应当可以决定其数据何时存储到云中,数据中心应当在他们各自的国家。对于例如西班牙(分公司)只希望将数据存储在西班牙数据中心。这应该是在进行应用配置时的规定。
云服务器432可以存储经由数据采集器442至448从建筑物434至440采集的数据。云服务器432被示出为包括认证服务器404。在这一方面,云服务器432可以执行针对各种建筑物、各个州、和/或各个国家中的装置的软件许可。如图4B所示,云服务器432将有效载荷和已更新清单发送至建筑物434至440。进一步地,云服务器432被示出为从建筑物434至440接收动态密钥和有效载荷请求。在这一方面,建筑物434至440中的每一个可以包括类似于HVAC装置402的装置,这些装置可以生成如动态密钥和有效载荷请求等信息并且接收如有效载荷和已更新清单等信息。在这一方面,可以合并单个客户所拥有的多个建筑物的许可。例如,如果特定客户拥有建筑物434和436并且经由云服务器432设置建筑物434和436的每个恒温器应当有权获得特定软件版本,则认证服务器404可以与建筑物434和436的恒温器通信以许可用于恒温器的特定软件版本。
在一些实施例中,数据采集器442至448中的一个或多个是“场所内”采集器。这些采集器可以运行建筑物软件(例如,
Figure GDA0002902429870000241
)并且可以运行“数据采集器”软件。在一些实施例中,数据采集器442至448中的一个或多个可以被“托管”。在这一方面,数据采集器442至448可以仅运行数据采集器软件,而云服务器432可以运行建筑物软件。出于这个原因,云服务器432可以被配置用于执行“场所内”采集器的控制功能。
当托管数据采集器442至448时,数据采集器442至448可以是“轻量级的”数据采集器。这些数据采集器可能具有低处理能力、低存储器和/或低数据存储。在一些实施例中,被托管的数据采集器可能具有比场所内采集器更高的最大点列表。数据采集器可以将所采集的数据推送至云(例如,推送至云服务器)。建筑物434至440的如数据备份、用户管理等关键操作,都可以在云服务器432上完成。在各个实施例中,数据采集器442至448之一可以将所采集的数据本地存储在建筑物服务器中和/或使用本地建筑物服务器作为云服务器。这可以在特定站点(例如,大学校园)处容纳多个建筑物。在一些实施例中,代替将数据存储在云存储中(例如,MICROSOFT
Figure GDA0002902429870000242
),所采集的数据可以存储在本地建筑物服务器中。在一些实施例中,建筑物的特定数据采集器可以充当本地建筑物服务器。然而,即使数据没有自动推送至云服务器,用户也可能能够经由云访问本地存储的数据。
在一些实例中,当用于建筑物434至440之一的互联网连接中断时,具有互联网中断的建筑物的数据采集器可能会缓冲数据,直到重新建立互联网连接。然后,在重新建立互联网连接之后,数据采集器442至448可以将数据推送至云服务器和/或协调所采集的数据。在一些实施例中,数据采集器442至448与云应用之间的通信是经由安全信道执行的。在数据采集器442至448之一与云服务器432之间存在任何连接问题的情况下,采集器442至448以及云服务器432均可以记录连接信息。
云服务器432可以维护数据采集器442至448中的每一个的传输健康信息并周期性地更新所述信息。在一些实施例中,为了优化互联网数据使用情况,数据采集器442可以采集用于建筑物434至440的数据并批量地将数据传输至云服务器432。用户可以经由数据采集器442至448和/或云服务器432修改批量数据的大小和间隔。
云服务器432可以基于客户对从数据采集器442至448接收的数据进行分区。例如,建筑物434和数据采集器442可以由客户A拥有,而建筑物436至440和数据采集器444至448可以由客户B拥有。客户A和客户B均可以经由UKL和/或门户登录到云服务器432中并且看到与其对应设备有关的数据。所述信息可以包括软件版本、客户名称、数据采集器442至448的序列号、数据采集器442至448的软件版本、采集器442至448的许可状态(例如,经由访问门户424)、分支信息、预配建筑物434至440的装置和/或采集器的能力(例如,升级软件、降级软件、更新软件许可、禁用软件许可等)。在各个实施例中,云服务器432可以基于所述信息生成报告。云服务器432可以将报告发送至用户(例如,经由电子邮件)。
现在参照图5,根据示例性实施例,更详细地示出了HVAC装置402。应当理解的是,图5还可以描述用户装置406、网关422,以及HVAC装置402中的一个、全部、零个和/或一部分和/或任何其他计算装置,HVAC装置402可以包括处理电路502和网络接口504。处理电路502可以包括处理器506和存储器508。处理器506可以是通用或专用处理器、专用集成电路(ASIC)、一个或多个现场可编程门阵列(FPGA)、一组处理部件或其他合适的处理部件。处理器可以被配置用于执行存储在存储器中或从其他计算机可读介质(例如,CDROM、网络存储装置、远程服务器等)接收到的计算机代码或指令。
存储器508可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器存储装置、临时存储装置、非易失性存储器、闪存、光学存储器或用于存储软件对象和/或计算机指令的任何其他合适的存储器。存储器可以包括数据库组件、目标代码组件、脚本组件、或用于支持本披露中所描述的各种活动和信息结构的任何其他类型的信息结构。
网络接口504可以被配置用于无线地和/或通过硬接线装置与网络(例如,网络408)通信。网络接口504可以被配置用于与局域网(LAN)、广域网(WAN)、蜂窝网络、卫星网络、无线电网络或任何其他类型的数据网络或其组合进行通信。网络接口504可以与硬接线至HVAC装置402的收发器(例如,经由光缆、CAT5电缆等)无线地(例如,使用WiFi或蜂窝无线电等)通信。在这一方面,网络接口504可以被配置用于促进HVAC装置402、其他HVAC装置402、网关422、用户装置406、认证服务器404、网络408和/或任何其他装置和/或网络之间的通信。
存储器508被示出包括网络通信控制器510、加密控制器512、装置密钥控制器514、装置ID控制器516和清单控制器518、以及其他元件。在一些实施例中,网络通信控制器510被配置用于通过网络接口504发送和接收数据。在一些实施例中,网络通信控制器510被配置用于使网络接口504通过局域网(LAN)、广域网(WAN)、蜂窝网络、卫星网络、无线网络、有线网络和/或任何其他类型的数据网络或其组合发送和接收数据。进一步地,网络通信控制器510可以被配置用于使网络接口504无线地通信(例如,WiFi、蓝牙、Zigbee、LTE、3G等)。
加密控制器512可以被配置用于通过使用存储在装置密钥控制器514中的装置密钥和存储在装置ID控制器516中的装置ID对存储在清单控制器518中的清单进行加密来生成动态密钥。在一些实施例中,处理电路502和/或装置密钥控制器514和装置ID控制器516是和/或包括可信平台模块(TPM)。在这一方面,装置密钥控制器514和/或装置ID控制器516可以被配置用于安全地存储和/或从TPM检索装置密钥和装置ID。如果处理电路502、装置密钥控制器514和/或装置ID控制器516不是TMP,则处理电路502和/或装置密钥控制器514和装置ID控制器516可以具有装置密钥和装置ID的安全存储位置。在一些实施例中,用户可以经由HVAC装置402的用户界面查看由装置密钥控制器514存储的装置密钥。在一些实施例中,用户可以经由HVAC装置402的用户界面和/或使用预配装置(例如,用户装置406)查看、设置和/或改变由装置ID控制器516存储的装置ID。
各种加密方法可以用于在加密控制器512中执行加密。在一些实施例中,加密方法是三重DES、RSA、Blowfish、Twofish、AES、装置密钥加密、私钥加密、公钥加密、种子密钥加密、专有加密方法和/或可以用于使用装置密钥和装置ID对所存储的清单进行加密的任何其他方法之一和/或组合。在一些实施例中,种子密钥加密方法用于执行对所存储的清单的加密。装置密钥可以是种子密钥加密方法中的加密密钥,而装置ID可以是种子密钥加密方法中的种子。
在一些实施例中,加密控制器512可以被配置用于使动态密钥包括HVAC装置402的特定令牌和/或标识符。例如,动态密钥510可以是使用装置密钥和装置ID加密的所存储的清单的加密形式。然而,动态密钥510还可以包括装置ID本身。在这一方面,当认证服务器404从HVAC装置402接收动态密钥时,认证服务器404可以使用装置ID来确定哪个装置已经发送了动态密钥,可以使用装置ID来查找认证服务器404可以用来对动态密钥进行解密的值(例如,装置密钥),和/或可以使用装置ID来标识通过认证存储的当前清单是什么,使得可以将在动态密钥中加密的清单与当前清单进行比较。
解密控制器522可以被配置用于经由网络通信控制器504从认证服务器404接收已更新清单。已更新清单可以在认证服务器404上加密,并且可以经由网络408传输至解密控制器522。在一些实施例中,解密控制器被配置用于使用与加密方法相关联的解密方法对已更新清单进行解码,所述加密方法如DES、RAS、Blowfish、Twofish、AES,装置密钥加密、私钥加密、公钥加密、种子密钥加密、专有加密方法、和/或任何其他加密方法。在一些实施例中,解密控制器522被配置用于当使用种子密钥加密对清单进行加密时对经加密的已更新清单进行解密。在一些实施例中,解密控制器被配置用于使用由装置密钥控制器514和装置ID控制器516存储的装置ID和/或装置密钥对已更新清单进行解密。在一些实施例中,解密控制器522被配置用于使用与认证服务器404相关联的装置密钥和/或装置ID对已更新清单进行解密。
仍参照图5,存储器508被示出为包括有效载荷请求控制器524、安全访问签名(SAS)权限模块526和SAS定时可用性模块528。在各个实施例中,SAS可以用于将密钥的表示(例如,装置密钥、装置ID、所存储的清单等)和/或使用密钥签名的消息从一个装置传输至另一个装置而不是发送(即,揭示)密钥和/或值本身。当跨网络408传输数据时,发送密钥表示和/或使用密钥签名的消息可以添加另一层安全性。在各个实施例中,SAS提供对资源的有限和/或完全访问,而不发送(即,揭示)装置密钥值。有效载荷请求控制器524可以被配置用于确定将有效载荷请求发送至认证服务器(例如,认证服务器404)的时间。有效载荷请求控制器524可以基于定时器和/或实时时钟周期性地(例如,每天、每周、每月等)发送有效载荷请求。
在一些实施例中,有效载荷存储装置530存储未安装在HVAC装置402上的各种软件更新、软件版本、更新文件等。在这一方面,有效载荷存储装置530可以充当用于软件和/或任何其他数据的离线存储库。有效载荷存储装置530可以镜像HVAC装置402上的本地认证服务器404上可用的任何软件更新和/或下载。出于这个原因,有效载荷请求控制器524可以从有效载荷存储装置530中检索软件下载和/或软件包,而不是基于存储在清单控制器518中的各种权利与认证服务器404通信。
有效载荷请求控制器524可以被配置用于判定HVAC装置402是否需要从认证服务器404请求有效载荷。如果有效载荷请求控制器524确定存储在清单控制器518中的清单包含HVAC装置402未使用的权利,则有效载荷请求控制器524可以向认证服务器404发送有效载荷请求以获得权利。在进一步实施例中,如果有效载荷请求控制器524确定HVAC装置402当前利用由清单控制器518存储的清单指示HVAC装置402不应具有的权利,则有效载荷请求控制器524可以被配置用于删除和/或替代所述权利。例如,如果清单指示HVAC装置402应当具有HVAC装置402不具有的特定软件版本,则有效载荷请求控制器524可以向认证服务器404发送对软件的请求。进一步地,如果有效载荷请求控制器524确定HVAC装置402具有由清单控制器518存储的清单未指示HVAC装置402应具有的软件版本,则有效载荷请求控制器524可以删除和/或使用HVAC装置402确实有权获得的软件版本来替代软件版本。
在一些实施例中,有效载荷请求控制器524可以被配置用于从如由清单控制器518存储的清单所指示的文件位置(例如,文件路径、URL等)检索有效载荷。在一些实施例中,由清单控制器518存储的清单指示有效载荷和/或多个有效载荷的文件位置。文件位置的数量可以取决于HVAC装置402可能具有的权利的数量。如果清单指示HVAC装置402有权获得特定款软件,则清单可以包括所述特定款软件的文件位置。在这一方面,有效载荷请求控制器524可以被配置用于基于文件目的地检索有效载荷,而不是向认证服务器404发送针对有效载荷的请求。有效载荷请求控制器524可以被配置用于基于从文件位置接收到的有效载荷来安装有效载荷,例如,安装一款软件或已更新软件。
在一些实施例中,SAS权限模块存储HVAC装置的某些权限。在一些实施例中,这些权限可以包括读取访问、写入访问、和/或任何其他类型的访问。在一些实施例中,所述权限还可以包括在认证服务器404中读取和/或写入某些信息的权限。在一些实施例中,HVAC装置402可以请求读取和/或写入的信息由存储在清单控制器518中的清单所标识的某些权利来定义。在一些实施例中,SAS定时可用性模块528可以确定对有效载荷的请求有效的时间长度。在一些实施例中,定时可用性可以包括起始时间和结束时间中的至少一个。起始时间和结束时间可以定义有效载荷请求有效的窗口。如果有效载荷请求是有效的(例如,在定义的时间窗口内),则认证服务器404可能能够响应有效载荷请求。然而,如果有效载荷请求是无效的或过期的,则认证服务器404可以忽略有效载荷请求。
有效载荷请求控制器524可以被配置用于向认证服务器404发送有效载荷请求。在一些实施例中,有效载荷请求控制器524基于由清单控制器518中存储的清单所指示的一个或多个权利来发送有效载荷请求。在一些实施例中,有效载荷请求控制器524可以被配置用于当用户经由用户界面和/或连接至使有效载荷请求控制器524发送有效载荷请求的HVAC装置402的装置(例如,通过网络接口504)提示有效载荷请求模块时发送有效载荷请求。在一些实施例中,有效载荷请求控制器524将有效载荷请求连同存储在SAS权限模块526中的权限和/或由SAS定时可用性模块528生成的定时可用性指示一起发送至认证服务器404。
响应于从认证服务器404接收有效载荷,网络通信控制器510可以被配置用于存储和/或更新存储在有效载荷存储装置530中的有效载荷。在一些实施例中,有效载荷存储器530被配置用于当有效载荷是软件更新、软件许可和/或软件附加组件时运行更新和/或安装有效载荷。
仍参照图5,清单控制器518可以被配置用于存储清单。清单可以包括HVAC装置402与各种实体和/或各种实体与其他实体之间的一组关系。进一步地,清单可以指示HVAC装置402的一组权利和/或各种实体和/或其他实体的权利。所述一组权利可以允许HVAC装置402和/或HVAC装置402的用户使用HVAC装置402执行某些动作,如调整温度设定值、接通和/或关断连网的系统、运行某几款软件、请求软件更新等。在一些实施例中,所述实体是组(例如,技术人员组、家庭居民组、“儿童”组、“妈妈和爸爸”组等)、用户(例如,技术人员Bill、爸爸、用户A、用户B、等)、和装置(移动装置1、智能手机A、计算机4、致动器9等)中的至少一个。在一些实施例中,清单包括与每个实体(例如,组、用户、装置等)相关联的某些权利。基于各种实体之间的关系,这些权利本质上可以具有可加性。例如,如果用户718具有权利A且装置2具有权利B和权利C。如果用户718和装置2具有关系,则用户718可以具有权利A、B和C。
现在参照图6,根据一些实施例,更详细地示出了认证服务器404。认证服务器404被示出为包括处理电路602和网络接口604。处理电路602被示出为包括存储器606和处理器608。处理电路602可以包括处理器608和存储器606。处理器608可以是通用或专用处理器、专用集成电路(ASIC)、一个或多个现场可编程门阵列(FPGA)、一组处理部件、或其他合适的处理部件。处理器608可以被配置用于执行存储在存储器中或从其他计算机可读介质(例如,CDROM、网络存储、远程服务器等)接收到的计算机代码或指令。
存储器606可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器存储装置、临时存储装置、非易失性存储器、闪存、光学存储器或用于存储软件对象和/或计算机指令的任何其他合适的存储器。存储器606可以包括数据库组件、目标代码组件、脚本组件或用于支持本披露中所描述的各种活动和信息结构的任何其他类型的信息结构。
网络接口604可以被配置用于无线地和/或通过硬接线装置与网络(例如,网络408)通信。网络接口604可以被配置用于与局域网(LAN)、广域网(WAN)、蜂窝网络、卫星网络、无线网络或任何其他类型的数据网络或其组合进行通信。网络接口604可以与网络408无线地(例如,使用WiFi或蜂窝无线电)通信。网络接口604可以促进与用户装置406、HVAC装置402和/或网关422的通信。
在一些实施例中,网络通信控制器610被配置用于通过网络接口604发送和接收数据。在一些实施例中,网络通信控制器610被配置用于使网络接口604通过局域网(LAN)、广域网(WAN)、蜂窝网络、卫星网络、无线电网络、或任何其他类型的数据网络或其组合发送和接收数据。进一步地,网络通信控制器610可以被配置用于使网络接口604无线地通信(例如,WiFi、蓝牙、Zigbee、LTE、3G等)。
存储器606被示出为包括解密控制器612、清单存储装置614、清单查找控制器616、加密控制器618、有效载荷递送控制器620、有效载荷存储装置622、SAS定时可用性模块624、SAS权限模块626和装置标识符控制器628。
解密控制器612可以被配置用于从网络通信控制器610接收动态密钥。所述动态密钥可以在HVAC装置402、用户装置406、和/或任何其他装置上加密,并且可以经由网络408传输至解密控制器612。在一些实施例中,解密控制器612被配置用于使用与加密方法DES、RAS、Blowfish、Twofish、AES、装置密钥加密、私钥加密、公钥加密、种子密钥加密、专有加密方法和/或任何其他加密方法相关联的解密方法对所述动态密钥进行解码。在一些实施例中,解密控制器612被配置用于当使用种子密钥加密对动态密钥进行加密时对所述动态密钥进行解密。在一些实施例中,解密控制器使用与最初生成动态密钥的装置相关联的装置ID、装置密钥和/或清单来对动态密钥进行解密。
在一些实施例中,解密控制器612可以被配置用于从装置标识符控制器628检索和/或接收装置ID和装置密钥。在这一方面,装置标识符控制器628可以被配置用于标识传输动态密钥的装置,并向解密控制器612提供与所标识的装置相关联的装置密钥和装置ID。在一些实施例中,装置标识符控制器628经由包括在传输中的令牌(例如,装置ID)标识传输动态密钥的装置。在这一方面,装置标识符控制器628可以被配置用于存储装置ID与装置密钥之间的关联。
在一些实施例中,处理电路602和/或装置标识符控制器628是和/或包括可信平台模块(TPM)。在这一方面,装置标识符控制器628可以被配置用于从TPM安全地存储和/或检索装置密钥和装置ID。如果处理电路502和/或装置标识符控制器628不包括TMP,则处理电路602和/或装置标识符控制器628可以具有装置密钥和装置ID的安全存储位置。
清单存储装置614可以被配置用于存储一旦解码动态密钥就生成的断言清单(例如,装置清单)。在一些实施例中,清单存储装置614被配置用于临时地存储所述清单。在一些实施例中,清单存储装置包含基于装置ID、装置密钥和/或任何其他令牌或标识符从动态密钥解密的所有过去清单的日志。
清单查找控制器616被配置用于从清单存储装置614接收经解密装置清单。在一些实施例中,清单查找控制器616包含与生成动态密钥的装置相关联的最新的和/或当前清单。清单查找控制器616可以被配置用于基于装置ID标识当前清单。在这一方面,清单查找控制器616可以被配置用于从装置标识符控制器628接收装置ID。
在一些实施例中,清单查找控制器616可以被配置用于生成已更新清单。在一些实施例中,清单查找控制器616可以基于HVAC装置(例如,由装置ID标识的HVAC装置)的权利、HVAC装置与其他实体的关系等生成已更新清单。
在一些实施例中,清单查找控制器616被配置用于将使用动态密钥解密的清单与当前清单进行比较。如果清单查找控制器616确定与装置相关联的当前清单和使用动态密钥解码的清单不匹配,则清单查找控制器616可以将当前清单(例如,已更新清单)发送至加密控制器618,使得可以将当前清单传输至装置以更新存储在装置上的清单。由网络接口传输的清单可以被称为已更新清单。在一些实施例中,清单查找控制器616被配置用于在不加密清单的情况下将已更新清单直接发送至网络通信控制器610。在各个实施例中,网络通信控制器610可以利用TLS、SSL和/或任何其他密码协议对清单进行加密。
在一些实施例中,清单查找控制器616可以被配置用于向HVAC装置402断言当前清单。在这一方面,清单查找控制器616可以被配置用于向HVAC装置402发送(例如,断言)当前清单,HVAC装置402可以被配置用于判定存储在HVAC装置402上的清单是否正确。HVAC装置402可以进一步被配置用于从认证服务器404接收断言清单,并将来自认证服务器404的断言清单与存储在HVAC装置402上的清单进行比较。如果存储在HVAC装置402上的清单与由认证服务器404断言的清单不匹配,则HVAC装置402可以被配置用于使用来自认证服务器404的断言清单来更新和/或替代存储在HVAC装置402上的清单。除了参照如参照图5所描述的加密控制器512和解密控制器522所描述的加密和解密方法之外,参照加密控制器618和解密控制器612所描述的各种加密和解密方法可以用于向HVAC装置402断言清单。
加密控制器618可以被配置用于通过使用与HVAC装置402和/或认证服务器404相关联的装置密钥和装置ID对从清单查找控制器616接收到的已更新清单进行加密来生成经加密的已更新清单。解密控制器618可以被配置用于从装置标识符控制器628接收装置ID和装置密钥。在一些实施例中,装置ID和装置密钥由装置标识符控制器628检索并提供给加密控制器618。各种加密方法可以用于在加密控制器618中执行加密。在一些实施例中,加密方法是三重DES、RSA、Blowfish、Twofish、AES、私钥加密、公钥加密、种子密钥加密、专有加密方法、和/或可以用于使用装置密钥和装置ID对已更新清单进行加密的任何其他方法中的一个或多个。在一些实施例中,种子密钥加密方法用于执行对已更新清单的加密。装置密钥可以是种子密钥加密中的加密密钥,而装置ID可以用作加密方法(例如,种子密钥加密)中的种子。
在一些实施例中,有效载荷递送控制器620被配置用于从装置(例如,(多个)HVAC装置402)接收有效载荷请求。在一些实施例中,有效载荷请求包括定时可用性和/或各种权限。在一些实施例中,有效载荷递送控制器620被配置用于响应在预定义量的时间内请求的有效载荷。所述预定义量的时间可以由有效载荷请求中接收的定时可用性来限定。在这一方面,有效载荷递送控制器620可以被配置用于在有效载荷请求有效的时间(例如,定时可用性)到期之前响应有效载荷请求。
在一些实施例中,有效载荷递送控制器620被配置用于判定请求有效载荷的装置是否具有接收有效载荷的适当权利。可以基于从装置接收的作为有效载荷请求的一部分的SAS权限和/或HVAC装置402的存储在清单存储装置614和/或清单查找控制器616中的清单来确定权利。在一些实施例中,有效载荷递送控制器620被配置用于发送来自有效载荷存储装置622的有效载荷连同来自SAS定时可用性模块624的定时可用性和来自SAS权限模块626的SAS权限。在各个实施例中,有效载荷递送控制器620基于HVAC装置402的可以存储在清单存储614中的清单来判定HVAC装置402是否有权获得特定有效载荷。
在一些实施例中,有效载荷递送控制器620可以被配置用于存储有效载荷的文件位置(例如,软件更新、软件附加组件等)。位置可以是本地服务器上的文件目的地、文件的web地址(例如,URL)、和/或任何其他类型的地址。有效载荷递送控制器可以向清单查找控制器616提供文件位置。在这一方面,由清单查找控制器616存储、检索和/或生成的清单(例如,已更新清单)可以包括HVAC装置可能有权获得的特定有效载荷的文件位置。在这一方面,清单可以指示HVAC装置有权获得特定有效载荷并且可以进一步指示HVAC装置可以从中检索有效载荷的文件位置。
现在参照图7,根据示例性实施例,示出了标识清单的各种关系和权利的表组700。在一些实施例中,表组700中的关系存储在清单中和/或构成清单,如参照图4至图6所描述的。清单(例如,表组700的表示)可以存储在HVAC装置402、认证服务器404和/或用户装置406上的数据结构中。清单的各种实体(例如,组、用户、装置等)可以与特定装置(例如,HVAC装置402)、与彼此和/或与其他实体(例如,其他组、其他用户、和其他装置)有关系。表组700包括三个子表(表A、表B、表C)中的组、用户、和装置之间的关系。表组700包括展示软件版本、环境和装置之间的关系的表D和表E。表组700进一步示出为包括指示各种实体可能具有的各种权利的表F。
当一个实体与另一个实体有关系时,每个实体可以继承另一个实体的一些和/或所有权利。在一些实施例中,实体的每个权利和/或作为整体的实体可以具有权限指示符(例如,标识符和/或数据元素)。权限指示符可以允许同与包括权利的实体、仅与某些实体和/或某些类型的实体(例如,用户、组、装置等)有关系的所有其他实体共享权利,或根本不共享权利。这可能会防止与不应具有某种权利的特定用户、组或装置共享某些权利。例如,管理员组可能与非管理员组有关系。管理员组和非管理员组的权限标识符可以使得管理员组继承非管理员组的所有权利,而非管理员组不继承管理员组的任何权利。
在表A中,标识了三个组,组A 712、组B 714和组C 716。在一些实施例中,可以存在任何数量的组。所述组可以由认证服务器(例如,认证服务器404)和/或装置(例如,HVAC装置402)生成。可以生成某些组个体的组。例如,在家庭中的恒温器上可能有“父母”组或“儿童”组。组A 712与用户1 718有关系、组B 714与用户1 718有关系、并且组C 716与用户2720有关系。
在一些实施例中,组与用户之间的关系可以指示组具有的任何权利与用户共享,反之亦然。在其他实施例中,仅共享某些权利和/或不共享权利。在各个实施例中,组可以与其他组相关联。例如,组A 712可以与组B 714相关联。组A 712可以具有(例如,接收、继承)组B 714的权利中的全部、无和/或一部分。在各个实施例中,用户可以与其他用户相关联。例如,用户1 718可以与用户2 720相关联。用户1 718可以具有(例如,接收、继承)用户2720的权利中的全部、无和/或一部分。
表B被示出为展示组与装置之间的关系。在表B中,组A 712被示出为与装置1722有关系,组B 714被示出为与装置3 726有关系,并且组C 716被示出为与装置3 726有关系。在一些实施例中,可以存在任何数量的组和/或装置。装置可以是(多个)HVAC装置402、用户装置(例如,用户装置406)和/或任何其他装置。在一些实施例中,组具有的任何权利与和其有关系的装置共享,反之亦然。在其他实施例中,仅共享某些权利和/或不共享权利。在各个实施例中,装置可以与其他装置相关联。例如,装置1 722可以与装置2 724相关联。装置1 722可以具有(例如,接收、继承)装置2 724的权利中的全部、无和/或一部分。
表C被示出为展示装置与用户之间的关系。装置1 722被示出为与用户1 718有关系,装置2 724被示出为与用户2 720有关系,并且装置3 726被示出为与用户3728有关系。在一些实施例中,可以存在任何数量的用户和/或装置。在一些实施例中,装置具有的任何权利与和其有关系的用户共享,反之亦然。在其他实施例中,仅共享某些权利和/或不共享权利。
表D被示出为展示软件版本与环境(例如,部署环境)之间的关系。在各个实施例中,环境A 736、环境B 738和环境C 740可以是制造环境、家庭环境、办公环境和/或任何其他环境。在表D中,软件版本1 730与环境A 736有关系。软件版本2732与环境B 738有关系、软件版本3 734与环境C 740有关系。在各个实施例中,每个环境中的装置都有权获得某一软件版本。在一些实施例中,软件版本1、软件版本2和软件版本3可能适用于特定环境和/或多种特定环境和/或对特定环境和/或多种特定环境来说是必须的。软件版本1 730、软件版本2 732和软件版本3 734可以是权利和/或可以是具有特定权利的实体。例如,软件版本1730可以是获得特定环境的权利。然而,软件版本1 730还可以是具有各种权利的软件实体,如获得与软件版本1730相对应的一款或多款软件和/或与软件版本1 730相对应的一个或多个软件特征的权利。
表E被示出为展示装置与环境之间的关系。环境可以是与表D中的环境相同的环境。装置1可以链接至环境A,装置2可以链接至环境B,并且装置3可以链接至环境C。部署装置1、装置2和装置3的环境可以定义装置1、装置2和装置3有权获得的(多个)软件版本。在进一步示例中,由于装置1 722与环境A 736有关系,因此装置1 722可能有权获得软件版本1730。在一些实施例中,装置可以基于环境、装置和软件版本之间的关系来更新其软件。例如,如果装置1 722与环境A 736相关联,则其可以从服务器(例如,认证服务器404)自动下载并安装软件版本1 730。
表F被示出为展示实体可能具有的权利。在表F中,示出了实体与权利之间的关系。表F中的实体是装置1 722、组A 712和用户3 728,如参照图7进一步描述的。表F中的实体不限于装置、组和用户,并且可以是任何其他类型的实体。每个实体都与特定权利相关联。在一些实施例中,可以存在任何数量的实体和/或权利。在表F中,装置1 722被示出为与权利A742相关联,组A 712被示出为与权利B 744相关联,并且用户3 728被示出为与权利C 746相关联。由于如表B中进一步描述的装置1 722与组A 712有关系,因此装置1接收权利A和权利B。由于如表C中进一步描述的用户3 728与装置3 726有关系。由于用户3 728具有权利C746,因此装置3 726可以接收权利C 746。
可以以可加的方式跨组、装置和用户共享权利。在这一方面,当组、装置和/或用户之间存在关系时,可以共享权利。例如,特定组可以继承装置和与其有关的用户的权利中的所有、一些和/或不继承权利。然而,权利和/或特定组和/或任何其他实体可以具有权限指示符(例如,标识符和/或数据元素),所述权限指示符可以使得同与所述组有关系的所有其他实体、仅与某些实体和/或某些类型的实体(例如,某些用户、组、装置等)共享权利,或根本不共享权利。这可能会防止与不应具有某种权利的用户、装置、或其他组共享组的某些权利。
在一些实施例中,实体权利表F、表组700的部分、和/或表组700的整体由HVAC装置402和/或认证服务器404存储。在一些实施例中,实体权利表F可以存储为数据元素(例如,JSON blob),并且可以使用各种方法来分发数据元素(例如,经由内容递送网络(CDN))。数据元素可以存储信息,如关于软件许可的信息。所述信息可以包括软件被许可的日期(例如,结束日期)、软件可能有权获得的各种能力、激活日期、用户电子邮件地址、产品系列、类型(例如,标准、企业、高级)、允许的点数、允许的仪表数量、允许的设备数量和/或类型、和/或任何其他信息。
在图7中所描述的关系的一个示例中,HVAC装置402的清单指示HVAC装置402与组实体之间的关系以及来自所述组实体的特定权利的继承。组实体可以特定于特定建筑物(例如,建筑物10)和/或建筑物组(例如,建筑物434至440)。特定建筑物或建筑物组的所有者可能希望建筑物或建筑物组中的每个HVAC装置具有特定软件版本。例如,建筑物的所有者可以在建筑物中具有五个控制器或网关(例如,422)。所有者可能希望所有五个装置都获得运行相同软件的许可。因此,特定组可以是建筑物装置组。建筑物或建筑物组的每个装置可以从组实体继承获得特定软件版本的权利。在这一方面,HVAC装置402可以从与其有关系的组实体继承获得特定软件版本的权利。
在另一个示例中,HVAC装置402的清单指示HVAC装置402具有基于HVAC装置402与特定组实体之间的关系以及特定组实体与特定用户实体之间的关系的获得特定软件版本的权利。组实体可以是用于特定建筑物的一组装置(例如,一组控制器、网关或恒温器)。用户实体可以是特定建筑物的所有者。用户实体可以具有获得特定软件操作版本的权利。特定用户实体与组实体之间的关系可以指示与组实体有关系的所有装置可以继承获得特定软件版本的权利。
现在参照图8,示出了根据一些实施例的用于使用HVAC装置和认证服务器来更新清单和接收有效载荷的过程800。在一些实施例中,如参照图4和图5所描述的HVAC装置402、用户装置406和/或认证服务器404被配置用于执行过程800。在一些实施例中,当HVAC装置(例如,HVAC装置402)在线时,认证服务器404充当认证服务器。在其他实施例中,当HVAC装置离线时,用户装置406充当认证服务器。这可以允许使用技术人员装置(例如,用户装置406)和/或云服务器(例如,认证服务器404)的用户基于HVAC装置402的网络状态来执行过程800。在这个方面,用户装置406可以包括认证服务器404的功能中的一些和/或全部。
在802处,HVAC装置402生成动态密钥。在一些实施例中,动态密钥基于HVAC装置402的清单、装置密钥和装置ID生成。HVAC装置402的加密控制器512可以从装置ID控制器516接收装置ID、从装置密钥控制器514接收装置密钥和/或从清单控制器518接收所存储的清单。在这个方面,加密控制器512可以使用一种或多种各种加密方法基于装置ID、装置密钥和/或所存储的清单来生成动态密钥。在一些实施例中,使用种子密钥加密方法利用装置密钥和装置ID来对动态密钥进行加密。在一些实施例中,装置ID是种子,并且装置密钥是加密密钥,或者反之亦然。
在804处,HVAC装置402将动态密钥传输至认证服务器404。在一些实施例中,HVAC装置402经由网络通信控制器510和网络408传输动态密钥。认证服务器404可以对动态密钥进行解码并且将已更新清单发送至HVAC装置402。在一些实施例中,认证服务器404判定动态密钥的清单是否与认证服务器404存储的当前清单不匹配。响应于确定从HVAC装置402接收到的清单与存储在认证服务器404上的清单不匹配,认证服务器404将已更新清单发送至HVAC装置402(步骤806)。基于已更新清单,HVAC装置402可以更新存储在HVAC装置402上的清单(例如,一组权利和/或关系)。在这个方面,网络通信控制器510可以经由网络接口504和网络通信控制器510接收已更新清单。可以对已更新清单进行加密。在这个方面,解密控制器522可以经由从装置密钥控制器514接收到的装置密钥和/或从装置ID控制器516接收到的装置ID来对已更新清单进行解密。
在808处,HVAC装置可以基于清单(例如,所接收到的清单)来请求有效载荷。所接收到的清单的权利可以由在步骤806中从认证服务器接收到的经更新清单或以其他方式由存储在HVAC装置402上的清单定义。所请求的有效载荷可以针对软件更新、软件许可、软件特征、登录请求等。在一些实施例中,有效载荷请求控制器524将清单控制器518中存储的清单的当前权利与HVAC装置402的当前特征进行比较。
在一些实施例中,有效载荷请求包括由HVAC装置402的SAS权限模块526、SAS定时可用性模块528和/或有效载荷请求控制器524生成的SAS令牌。SAS令牌可以向有效载荷请求给以某种读取和/或写入访问。进一步地,SAS令牌可以临时激活有效载荷请求。有效载荷请求可以基于有效载荷请求中包括的SAS令牌在预定时间量内可用。在步骤810中,HVAC装置402从认证服务器404接收有效载荷请求并且相应地更新其存储模块。例如,HVAC装置402可以强制重启并且使某些软件被安装和/或更新。在一些实施例中,HVAC装置402可以提示用户确认有效载荷的安装和/或利用。在各个实施例中,从认证服务器404接收到的有效载荷包括SAS令牌。有效载荷可以仅在预定义的时间量内有效。为此,有效载荷存储装置530可以在预定义的时间量到期之前安装和/或保存有效载荷。
现在参照图9,示出了根据一些实施例的用于利用认证服务器来更新HVAC装置上的清单并使用认证服务器来传输有效载荷的过程900。如参照图4和图6所描述的认证服务器404、用户装置406和/或HVAC装置402可以被配置用于执行过程900。在一个实施例中,当HVAC装置(例如,HVAC装置402)在线时,认证服务器404充当认证服务器。在另一个实施例中,当HVAC装置离线时,用户装置406充当认证服务器。这可以允许技术人员装置(例如,用户装置406)和/或云服务器(例如,认证服务器404)的用户基于HVAC装置402的网络状态来执行过程800。在这个方面,用户装置406可以包括认证服务器404的功能中的一些和/或全部。
在902处,认证服务器404从HVAC装置402接收动态密钥。认证服务器404可以经由有线和/或无线连接来接收动态密钥。认证服务器404可以经由网络接口604和/或网络通信控制器610接收动态密钥。在步骤904中,由认证服务器404对动态密钥进行解码,并且由认证服务器404基于经解码的清单生成清单。在一些实施例中,解密控制器612基于从装置标识符控制器628接收到的装置密钥和装置ID对动态密钥进行解码。装置标识符控制器628可以使用可以是动态密钥的传输的一部分的装置ID来确定哪个装置(例如,HVAC装置402)已经发送了动态密钥以及应该使用哪个装置密钥和/或装置ID来对动态密钥进行解码。经解码的清单表示由HVAC装置402断言的清单和/或HVAC装置402当前存储的清单。
在步骤906中,认证服务器可以将所存储的清单与已更新清单进行比较。清单查找控制器616可以将从装置接收到的清单与装置的当前清单进行比较。经更新的清单可以是存储在认证服务器上的与HVAC装置402相关联的清单。如果认证服务器404确定从动态密钥解码的所存储的清单与存储在认证服务器404上的已更新清单不匹配,则认证服务器404可以将已更新清单传输至HVAC装置402。将已更新清单传输至HVAC装置402可以使由HVAC装置402存储的清单被更新(步骤908)。在一些实施例中,清单查找控制器616使用装置ID来确定要将所接收到的清单与哪个清单进行比较。响应于所接收到的清单与装置清单不匹配,清单查找控制器616可以将当前和/或已更新清单发送至加密控制器618以进行加密并且然后发送至HVAC装置402。在一些实施例中,加密控制器618经由装置密钥和装置ID对已更新清单进行加密。
将已更新清单发送至HVAC装置402可以验证认证服务器404和HVAC装置402具有相同的清单并因此被同步。在一些实施例中,通过认证服务器404和/或通过HVAC装置402对清单进行的验证可以确保清单的完整性得以维持。例如,如果确定由HVAC装置402存储的清单与由认证服务器404存储的清单不同,则可以采取动作来警告系统或用户数据可能已经受损。
在步骤910中,认证服务器404可以被配置用于从HVAC装置402接收有效载荷请求。在一些实施例中,有效载荷请求可以仅在预定时间量内有效。在所述时间到期之后,认证服务器404可能不再能够对有效载荷请求进行回复。在步骤912中,认证服务器404可以被配置用于将有效载荷传输至HVAC装置402。在一些实施例中,认证服务器404检查由认证服务器404存储的清单以判定HVAC装置402是否具有获得有效载荷的权利。如果HVAC装置402确实具有获得所请求的有效载荷的权利,则认证服务器404可以将有效载荷发送至HVAC装置402。如果HVAC装置402不具有获得所请求的有效载荷的权利,则认证服务器404可以不将有效载荷发送至HVAC装置402。
现在参照图10,示出了根据示例性实施例的用于执行装置的在线、离线和混合激活的过程1000。(多个)HVAC装置402、认证服务器404和/或系统400的或本文中以其他方式描述的任何其他装置可以被配置用于执行过程1000。在步骤1002中,为HVAC装置402预配装置密钥和装置ID。在一些实施例中,HVAC装置402预配有特定操作系统(例如,“黄金(Gold)”操作系统)。在一些实施例中,装置ID和装置密钥对于HVAC装置402而言可以是唯一的。装置ID可以是与装置相关联的唯一编号,如唯一字母数字字符串、HVAC装置402的序列号和/或任何其他标识符。在各个实施例中,HVAC装置402由制造商和/或任何其他实体进行预配。在各个实施例中,基于HVAC装置402是否包括可信平台模块(TPM)将装置密钥和/或装置ID保存至HVAC装置402。如果HVAC装置402包括TPM,则HVAC装置402可以根据TPM的协议存储装置密钥和/或装置ID。如果HVAC装置402不包括TPM,则HVAC装置402可以将装置密钥和/或装置ID存储在可以存储在安全存储位置中的文件和/或文件字段中。进一步地,在一些实施例中,装置ID可以与HVAC装置402的BIOS软件一起存储。例如,BIOS软件的序列号可以成为装置ID和/或可以使用装置ID来更新BIOS软件的序列号。
在步骤1004中,向认证服务器(例如,认证服务器404、装置注册表425等)注册用于预配HVAC装置402的装置密钥和装置ID。在一些实施例中,用户经由web门户(例如,访问门户424)注册装置密钥和/或装置ID。在各个实施例中,装置密钥和/或装置ID上传至认证服务器404(例如,如
Figure GDA0002902429870000411
IoT中枢等IoT中枢)。在一些实施例中,认证服务器404被配置用于将装置密钥和装置ID存储在安全的永久存储装置中和/或可以由安全API存储。在一些实施例中,制造商和/或任何其他个人可以经由用户装置406向认证服务器404(例如,访问门户424)注册装置密钥和装置ID。在各个实施例中,装置密钥和装置ID链接至与HVAC装置402相关联的特定简档和/或特定用户简档(例如,特定用户)。在这个方面,装置(例如,HVAC装置402)可以与特定用户相关联。在各个实施例中,装置密钥和装置ID构成用于HVAC装置402的简档。简档可以被注册为已经制造和/或预配但尚未被最终用户购买的装置。
在步骤1006中,可以向在步骤1004中创建的简档注册用户。在一些实施例中,向简档注册的用户是HVAC装置402的客户。在各个实施例中,当用户购买HVAC装置402时,销售个人和/或负责销售的任何其他个人可以向用户简档注册用户和/或创建新的用户简档。在各个实施例中,所购买的装置(例如,HVAC装置402)可以与用户和/或用户简档相关联。在一些实施例中,经由用户装置406和认证服务器404向简档注册用户。在一些实施例中,可以将用户的姓名、联系信息(例如,电话号码、电子邮件地址)、地址、相关联业务和/或关于用户的任何其他信息注册(例如,添加)至简档。在一些实施例中,如果用户已经具有现有客户账户,则可以将客户账户链接至HVAC装置402。在一些实施例中,在向HVAC装置402注册用户时,可以使特定的一组权利与HVAC装置402相关联。进一步地,认证服务器404可以记录哪些HVAC装置402已经注册、成像、预配等并且可以使用标签和/或描述符来标识哪些HVAC装置402已经注册、成像、预配等。
在各个实施例中,认证服务器404在IoT中枢装置注册表中添加装置和/或更新所述注册表中的装置。在各个实施例中,认证服务器可以判定装置是否已经注册,可以设置各种认证值(例如,装置ID、装置密钥)并且可以更新IoT中枢装置注册表。以类似的方式,认证服务器404可以利用各种装置注册信息来更新文档数据库。
在一些实施例中,用户可以在注册时和/或在任何其他时间指示HVAC装置402是否将可访问互联网(例如,到认证服务器404的连接)。在这个方面,如果用户和/或任何其他个人指示HVAC装置402将不连接至互联网(例如,经由访问门户424和用户装置406指示),则认证服务器404可以被配置用于发送可以包括许可能力(例如,权利、清单等)的文件(例如,文本文件)。可以利用装置ID和装置密钥对文件进行加密。在一些实施例中,基于图8和图9中所描述的种子密钥过程和/或加密过程来对文件进行加密。在这个方面,HVAC装置402可以被配置用于对文件进行解密并且更新权利和/或清单信息。在各个实施例中,认证服务器404可以被配置用于将文件发送至用户(例如,发送至用户装置406)。在一些实施例中,如果用户认为HVAC装置402将永不在线,则访问门户424可以允许用户(例如,销售人员)将文件发送至用户装置。在各个实施例中,所述文件被发送至电子邮件地址、电话号码和/或与用户相关联的任何其他联系方式。在一些实施例中,所述文件存储在永久存储安全存储装置中和/或由安全API(例如,在HVAC装置402和/或认证服务器404上)存储和/或维护。
在1008处,HVAC装置402周期性地(例如,每小时一次、每天一次、每周一次等)尝试连接至网络(例如,网络408)和/或认证服务器404。在一些实施例中,HVAC装置402可以周期性地尝试更新软件、更新权限、更新许可、更新清单等。在一些实施例中,步骤1008响应于HVAC装置402安装在建筑物中和/或首次通电而发生,HVAC装置402可以在安装之后立即运行和/或可以执行注册过程。如果装置运行的各种软件(例如,运行
Figure GDA0002902429870000421
的控制器和/或网关)尚未得到许可,则用户可能接收指示软件尚未得到许可的消息。在这个方面,软件可以继续运行预定义的时间量(例如,30天)和/或直到HVAC装置402接收到软件的适当权限和/或许可。
在1010处,如果HVAC装置402确定其未连接至网络(例如,连接至认证服务器404),则HVAC装置402被示出为执行离线许可(步骤1012)。在1012处,HVAC装置402可以被配置用于执行HVAC装置402的离线许可。在一些实施例中,用户可能需要经由用户装置406以及在步骤1006中从认证服务器404接收到的文件来更新HVAC装置402的许可(例如,清单)。HVAC装置402可以从可以在HVAC装置402、用户装置406、网关422和/或任何其他装置上运行的客户端更新实用程序接收许可(例如,清单)。客户端更新实用程序可以被配置用于检索HVAC装置402上的装置密钥和/或装置ID(例如,从存储装置、从可信平台模块(TPM)上的存储装置、从认证服务器404等)。客户端更新实用程序可以被配置用于验证HVAC装置402是在线还是离线。
在一些实施例中,客户端更新实用程序是图11中所示出的许可工具界面。在这个方面,客户端更新实用程序允许用户将文件加载到HVAC装置402上。在一些实施例中,所述文件通过HVAC装置402的装置ID和/或装置密钥(例如,经加密的清单)进行加密。客户端更新实用程序提供给HVAC装置402的文件可以由HVAC装置402(经由装置ID和/或装置密钥)解密并由HVAC装置402利用。
进一步地,客户端更新实用程序可以允许用户将在步骤1006中生成的文件加载至客户端更新实用程序(例如,经由有线和/或无线自组织连接、内部网络等)。在一些实施例中,客户端更新实用程序和/或HVAC装置402提供允许用户上传文件的页面和/或界面。在各个实施例中,客户端更新实用程序可以直接连接至认证服务器404以检索文件、清单和/或任何其他装置信息和/或装置相关数据。进一步地,客户端更新实用程序可以被配置用于标识安装在HVAC装置402上的软件的当前版本,通知认证服务器404安装在HVAC装置402上的软件的当前版本,下载HVAC装置402的各种更新,在HVAC装置402上安装各种更新和/或从文件中提取许可信息。客户端更新实用程序可以在HVAC装置402离线时和/或在HVAC装置402在线时可用。在各个实施例中,客户端更新实用程序允许将软件加载到HVAC装置402上并安装所述软件。
在一些实施例中,用户装置406可以将文件发送至HVAC装置402。在这个方面,HVAC装置402可以对文件进行解密并且采取(例如,安装和/或更新)经加密的文件中包括的权限和/或清单。在步骤1010中,如果HVAC装置402确定其连接至认证服务器404,则HVAC装置402可以执行步骤1014。在各个实施例中,经加密的文件可以经由USB连接、安全数字(SD)卡、通过网络和/或任何其他连接方法上传至HVAC装置402。
在1014处,HVAC装置402可以被配置用于将HVAC装置402与在步骤1004中创建的简档相关联。在一些实施例中,HVAC装置402将在步骤1002中预配的装置密钥和装置ID发送至认证服务器404。作为响应,认证服务器404可以将软件更新和/或清单发送至HVAC装置402以进行安装。在这个方面,认证服务器404可以将HVAC装置402链接至用户简档。在步骤1016中,认证服务器404基于用户简档和/或装置密钥和/或装置ID判定是否存在HVAC装置402的清单。在这个方面,如果认证服务器404确定不存在清单,则认证服务器404可以被配置用于生成HVAC装置402的清单(步骤1018)。在一些实施例中,可以基于用户简档生成清单。在各个实施例中,清单是基于装置密钥和装置ID生成的。
在步骤1016中,如果认证服务器404确定存在HVAC装置402的清单,则认证服务器404可以被配置用于在1020处将清单发送至HVAC装置402。在一些实施例中,认证服务器404基于装置ID和装置密钥判定是否存在HVAC装置402的清单。在这个方面,HVAC装置402可以被配置用于采取(例如,安装、更新等)新的清单。在各个实施例中,在完成安装后,HVAC装置402可以经由用户界面(例如,控制台)指示软件已经安装。例如,如果在控制器(例如,HVAC装置402)上安装了
Figure GDA0002902429870000441
则在完成安装后,连接至控制器的控制台可以显示通知用户其被许可使用
Figure GDA0002902429870000442
的消息,并且控制器可以自动导航到已安装和许可的软件。
现在参照图11,示出了根据一些实施例的许可工具界面。许可工具可以远程运行和/或在建筑物(例如,建筑物10)中本地运行。在一些实施例中,许可工具可以在如HVAC装置402之一等控制器或网关上运行。在各个装置实施例中,许可工具可以经由认证服务器404(例如,访问门户424)运行。许可工具可以经由用户装置406访问和/或可以安装在用户406上。在一些实施例中,所述工具在技术人员的膝上型计算机上运行并且可以托管在网站上,技术人员可以从所述网站下载所述工具并将所述工具安装在膝上型计算机上。在各个实施例中,技术人员可以通过输入如技术人员的姓名、公司电子邮件、联系方式等细节来注册许可工具。这种信息可以经由问卷获取。在各个实施例中,只有在验证公司电子邮件地址后,才允许技术人员下载、安装或使用许可工具。
许可工具可以允许用户向认证服务器404注册新的HVAC装置402。注册页面1100示出了装置的注册页面的示例。装置名称1102、装置密钥1104和注册状态1106可以是用户可以输入关于新的HVAC装置402的信息的信息框。在按下注册1108之后,可以向认证服务器404注册新装置。
许可清册页面1111显示HVAC装置402之一当前可以安装和/或许可获得的软件以及许可的当前状态。许可清册页面1111显示产品和特征1112的名称、许可类型1114、状态1116、到期日期1118和更新选项1120。更新选项可以允许用户经由激活新窗口1122激活软件、取消激活软件和/或扩展软件的许可。在一些实施例中,用户可以经由激活ID 1124激活软件。按下激活按钮1128可以激活所输入的激活ID 1124,而取消按钮1126可以取消对激活ID 1124的激活。在一些实施例中,激活ID 1124是产品的字母数字字符串和/或SKU代码。经由激活ID 1124激活软件可以解锁和/或锁定(多个)HVAC装置402的各种软件特征。在一些实施例中,产品和特征1112可以是各种装置和/或特定建筑物的具体特征。用户可以激活和/或取消激活这些具体特征。例如,具体特征可以是激活或停用特定HVAC装置402的Wi-Fi、3G连接、4G连接等。许可清册页面1111被示出为包括指示符,即连接状态1113。连接状态1113可以指示运行许可工具的网关和/或控制器是否连接至认证服务器404。
在各个实施例中,清册页面1111可以示出各种客户、地理区域或公司分支机构的产品和特征1112和/或已安装设备。在一些实施例中,清册页面1111允许构建和查看多个“超级组合(super portfolio)”。例如,超级组合可以允许公司跟踪各个国家、国家内的地区以及各个地区内的建筑物的产品和特征1112。可以以树视图组织这种信息,以便用户可以快速地标识其可能感兴趣的信息。许可工具可以考虑超级组合内的各个国家的货币和/或关税。
激活和/或扩展产品和特征1112之一可能需要支付。在这个方面,许可工具可以提示用户输入支付信息和/或可以与支付软件连接。在各个实施例中,停用产品和特征1112之一可以使用户自动接收退款。
在一些实施例中,激活ID 1124由产品和/或软件订购系统生成。在各个实施例中,许可工具可以被配置用于智能地验证许可密钥并指示所输入的激活ID 1124中是否存在错误。
产品和特征1112可以是各种软件权利。例如,权利可以是可能具有基于时间的许可的一个软件。在一些实施例中,权利是建筑物仪表的数量、HVAC装置402之一的点的最大数量、各种软件驱动程序、软件主题和/或任何其他产品或软件特征。在一些实施例中,产品和特征1112可以是建筑物中允许的网关422的数量。
下载1130可以是安装在HVAC装置402之一上的软件下载。在一些实施例中,已安装版本1132指示当前安装在HVAC装置402之一上的软件版本,可用版本1134可以是可供下载的当前版本,状态1136可以指示软件是否已经下载、已经安装、等待安装和/或下载等。进度1138可以是指示下载1130的下载进度的仪表。更新按钮1140可以使新的软件版本被下载。刷新按钮1142可以刷新状态1136。下载所有按钮1144可以使等待软件更新的所有新软件被下载。在一些实施例中,许可工具自动地和/或按需检查更新、下载可用更新和/或安装所下载更新。进一步地,所述工具可以自动检测下载和/或安装哪些软件版本,并且可以响应于确定某个软件不是最新的、等待安装和/或基于软件更新时间表而自动安装软件更新。在一些实施例中,许可工具每天一次地下载软件和/或检查软件更新。在一些实施例中,许可文件以加密方式下载。
在一些实施例中,图11的工具可以发出关于许可即将到期的警告消息。在一些实施例中,所述工具可以允许用户对产品和特征1112进行支付和/或可以与账单和支付软件集成。在一些实施例中,许可工具可以允许用户按下发现按钮以发现建筑物中的各种HVAC装置402并且以列表显示网关连同IP地址和软件版本号。经由许可工具,技术人员可以能够预配所发现的HVAC装置402和/或查看关于所发现的HVAC装置402的附加信息。
在各个实施例中,许可工具可以通知用户产品和特征1112即将到期。在一些实施例中,许可工具可以显示通知用户即将到期的弹出消息。在各个实施例中,许可工具可以向用户发送提醒用户产品和特征1112即将到期的电子邮件消息。
在一些实施例中,许可工具允许技术人员为单个建筑物注册多个数据采集器(例如,网关422)。在一些实施例中,技术人员可以选择将数据采集器采集的数据发送至何处(例如,发送至端点、另一个装置、URL)。这可以在数据采集器全部“托管”时完成,如参照图4B进一步描述的。在各个实施例中,数据采集器全部存储在单个标识符(例如,密钥值)下。这可以在数据采集器全都处于“屋内”时完成,如参照图4B进一步描述的。对于建筑物的每个单个数据采集器,标识符可以是相同的。在这个方面,用户可以经由许可工具一起管理多个数据采集器。例如,用户可以经由许可工具设置建筑物的所有数据采集器将其数据发送至特定服务器(例如,认证服务器404)。
现在参照图12,示出了根据示例性实施例的包括HVAC装置402和HVAC装置402的各种网络服务的系统1200。图12中所示出的各种网络服务可以是在一个或多个网络服务器上存储和操作的服务。在一些实施例中,网络服务,即身份管理系统(IMS)1205、装置中枢1208、装置管理器1210和/或许可管理器门户1212可以包括在服务器,如参照图4A并且在本文其它地方所描述的认证服务器404中。
图12的HVAC装置402可以包括用户界面1201、数据采集器1204、更新器1202以及安全服务1206。HVAC装置402可以包括如参照图5所描述的处理电路502,并且此处理电路可以被配置用于执行如图12、图13至图19以及本文其他地方所描述的HVAC装置402的功能。类似地,认证服务器404的处理电路602可以被配置用于执行如图12、图13至图19和本文其他地方所描述的认证服务器404的功能。用户界面1201可以是用于用户的允许用户配置和/或控制HVAC装置402的界面。在一些实施例中,用户界面1201是图11中示出的用户界面。用户界面1201可以允许用户将清单上传至HVAC装置402和/或以其他方式与HVAC装置402交互。数据采集器1204可以被配置用于经由网络或互联网(例如,网络408)与装置中枢1208通信。数据采集器1204可以将HVAC装置402采集的遥测数据和/或任何其他数据(例如,故障数据、点数据等)发送至装置中枢1208。
更新器1202可以被配置用于执行清单更新和/或软件更新。更新器1202包括如参照图5所描述的存储器508的各种组件的功能中的一些和/或全部。安全服务1206可以被配置用于存储HVAC装置402的清单和/或存储软件文件。在这个方面,更新器1202可以存储来自安全服务1206的数据(例如,清单)和/或从所述安全服务中检索数据。更新器1202被示出为与装置管理器1210通信。更新器1202可以被配置用于与装置管理器1210通信以更新清单和/或软件。HVAC装置402和认证服务器404可以被配置用于经由网络408通信。具体地,更新器1202和装置管理器1210可以经由网络408进行通信,并且同样,数据采集器和装置中枢1208可以被配置用于经由网络408进行通信。
IMS 1205可以被配置用于执行认证服务器404的各种标识和授权服务。装置管理器1210可以被配置用于执行HVAC装置402的各种清单更新和/或软件许可。装置管理器1210被示出为与许可管理器门户1212通信。许可管理器门户1212可以是在线门户(例如,访问门户424),用户可以登录所述在线门户并更新HVAC装置402的许可(例如,清单)和/或执行HVAC装置402的任何其他控制或配置。装置管理器1210和许可管理器门户1212被示出为与许可注册表1216通信。许可注册表1216可以与许可注册表427相同和/或类似并且可以被配置用于存储HVAC装置402的许可信息,装置管理器1210和/或许可管理器门户1212可以将信息存储至所述HVAC装置和/或从所述HVAC装置中检索信息。装置中枢1208和装置管理器1210被示出为与装置注册表1214通信。装置注册表1214可以存储关于HVAC装置402的信息(例如,故障历史、说明书、所采集的数据等),装置中枢1208和/或装置管理器1210可以被配置用于读取和/或写入所述信息。
总体上参照图13至图19,示出了过程1300至1900,HVAC装置402和认证服务器404可以被配置用于执行所述过程。具体地,HVAC装置402和/或认证服务器404的处理电路(例如,处理电路502和处理电路602)可以被配置用于执行图13至图19的过程。图13至图19的指示HVAC装置402与认证服务器404之间的通信的步骤可以是经由一个或多个网络或互联网,例如网络408的通信。
现在参照图13,示出了根据示例性实施例的经由清单来管理HVAC装置402的许可的过程1300。图13中所示出的各个组件可以是一个和/或多个服务器(例如,认证服务器402)的和/或本地装置(例如,HVAC装置402)上的和/或图12中所示出的组件。在图13的中间的是用户1390。用户1390可以是管理员级用户。用户1390可以访问(例如,经由移动装置,例如,用户装置406)认证服务器404和/或HVAC装置402二者的各种用户界面。
装置管控和管理门户(DAMP)1388、许可服务1386、安全服务1384、清单服务1382和包服务1380可以是认证服务器404的组件,所述组件的功能可以在一个或多个处理器和/或存储器装置(例如,处理电路602)上执行。
管理员用户界面1392、全局配置数据库1394、许可服务1396、安全服务1397、身份管理系统(IMS)1398和用户界面1399可以是HVAC装置402的组件,所述组件的功能可以在一个或多个处理器或存储器装置(例如,处理电路502)上执行。
在步骤1302、1304和1306中,用户1390可以向DAMP 1388分别指示新组、新装置和/或新用户(例如,组的新管理员)。所述组、装置或用户可以是清单中包括的实体或可以用于创建装置(例如,HVAC装置402)的新清单。在步骤1308中,用户1390可以指示DAMP 1388生成新许可(例如,软件的许可)。在步骤1302、1304和1306中,DAMP 1388可以将新装置、新组和新用户存储到单个组织数据结构中。组织数据结构可以是存储许可和/或各个装置、组和用户之间的关系的任何数据结构(例如,结构体、对象等)。
DAMP可以被配置用于在步骤1310、1312和1314中将新组、新装置和新用户发送至安全服务1384。在步骤1316中,DAMP 1388可以将新许可保存至许可服务1386。许可服务1386可以将新许可发送至安全服务1384以存储在组织数据结构中。接下来,在步骤1320中,DAMP可以从清单服务1382发送对特定装置(例如,步骤1304的新装置或HVAC装置402)的清单的请求。响应于清单请求,在步骤1322中,清单服务1382可以从安全服务1384中检索特定装置的信息(例如,特定装置的装置ID和装置密钥)。在步骤1324至1328中,清单服务1382可以从许可服务1386中检索许可信息。在步骤1324中,清单服务1382可以将对组织数据结构的许可请求发送至许可服务1386。响应于接收到此请求,许可服务1386可以检索存储在安全服务1384中的组织数据结构中的许可并将许可发送至清单服务1382。在步骤1310至1328中,清单服务1382可以将软件下载的信息检索至包服务1380。在步骤1310至1328中,清单服务1382可以检索HVAC装置402的配置设置、可以检索可用于HVAC装置402的软件下载和/或可以检索软件版本。
在步骤1330中,清单服务1382可以生成清单并利用在步骤1322中检索到的装置ID和/或装置密钥来对清单进行加密。所生成的清单可以指示HVAC装置402的许可和/或HVAC装置402被许可获得的软件的软件下载位置。所生成的清单可以是本文其他地方所讨论的(例如,在图4A至图9中所讨论的)清单。可以在步骤1332中将经加密的清单提供给DAMP1338。用户1390可以在步骤1334中从DAMP 1388下载经加密的清单。在一些实施例中,装置ID和/或装置密钥进一步包括在步骤1334的下载中,并且因此在步骤1332中与经加密的清单一起提供给DAMP 1388。在步骤1336中,用户1390可以将经加密的清单、装置ID和/或装置密钥提供给最终用户1390。在一些实施例中,所述信息经由电子邮件提供、通过将信息放置在存储装置(例如,CD、USB、驱动器等)上来提供、经由文本消息发送和/或以任何其他通信方法来提供。
用户1390可以向最终用户,即最终用户1391提供包括清单、装置ID和装置密钥的文件。在步骤1338中,最终用户1391可以向管理员用户界面1392提供装置ID和装置密钥,并且在步骤1342中可以向管理员用户界面1392提供经加密的清单。在步骤1338和1342中,最终用户1391可以指示最终用户1391想要将装置ID和/或装置密钥保存至HVAC装置402。
在步骤1340中,管理员用户界面1392可以将装置ID和装置密钥保存至全局配置数据库1394。装置ID和装置密钥可以在被存储之前通过管理员用户界面1392加密,以便安全地存储信息并避免任何篡改或信息泄漏。在步骤1344中,管理员用户界面1392可以向全局配置数据库1394发送从全局配置数据库1394中检索所存储的装置ID和装置密钥的请求。响应于所述请求,在步骤1344中,全局配置数据库1394可以将装置ID和装置密钥发送至管理员用户界面1392。在步骤1346中,管理员用户界面1392可以利用装置ID和/或装置密钥来对经加密的清单进行解密。在步骤1348中,管理员用户界面1392可以通过将清单信息发送至安全服务1397来填充清单的内容(例如,装置、组、用户和/或许可)。安全服务1397可以将清单的内容存储在组织数据结构中。在步骤1350中,管理员用户界面1392可以基于步骤1346的经解密的清单设置全局配置数据库1394中的针对HVAC装置402的各种全局设置。管理员用户界面1392可以在步骤1352中将包括在清单中的许可信息提供给许可服务1396,所述许可服务进而可以在步骤1354中向安全服务1397提供许可信息,所述许可信息可以存储在组织数据结构中。
安全服务1397可以将许可正文返回至许可服务1396,所述许可正文可以是在步骤1356中存储在安全服务1397中的组织数据结构中存储的许可信息。许可服务1396可以在步骤1358中向管理员用户界面1392提供许可信息。在步骤1360中,管理员用户界面1392可以向最终用户1391显示许可信息。
在步骤1362中,最终用户1391可以经由用户名、密码或其他登录凭证或登录方法登录至用户界面1399。在步骤1364中,用户界面1399可以通过IMS 1398引起和/或限制步骤1362的登录,所述IMS可以在步骤1366中对安全服务1397执行授权。响应于执行步骤1366的授权,安全服务1397可以在步骤1368和1370中向用户界面1399提供访问令牌。基于所述令牌,用户界面1399可以检索HVAC装置402的许可。在步骤1374和1376中,用户界面1399可以从许可服务1396中检索许可信息并将许可信息显示给最终用户1391。
现在参照图14,示出了根据示例性实施例的用于添加新许可的过程1400。在图14中,HVAC装置402被示出为包括许可用户界面1450。许可用户界面1450可以是HVAC装置402的允许用户与HVAC装置402交互和/或添加新许可的组件。在一些实施例中,许可用户界面1450可以在个人计算机、膝上型计算机、智能电话(例如,用户装置406)上实施,使得用户可以经由个人装置添加许可。
在步骤1402中,用户可以经由许可用户界面1450向安全服务1384发送对新许可的请求并且标识用户想要向其添加许可的组织数据结构。在一些实施例中,步骤1402涉及购买许可和对许可进行支付或将所购买的许可密钥添加至请求。在步骤1408和1410中,基于步骤1402的新许可请求所指定的组织数据结构,安全服务1384可以向许可业务逻辑1454提供标识组织的许可的组织数据结构。许可业务逻辑1454可以使用所述数据结构来确定包括在组织数据结构中的许可(包括新添加的许可)并将许可和数据结构提供给许可用户界面1450。在各个实施例中,新添加的许可可以是与特定用户、装置或组相关联的许可。许可业务逻辑1454和许可服务1386可以是同一服务,即许可业务逻辑1454可以提供许可服务1386的特定功能。
在步骤1414中,许可用户界面1450可以向清单服务1382发送对HVAC装置402的清单的请求。在步骤1416中,清单服务1382可以向许可服务1386发送对HVAC装置402的许可(例如,组织数据结构中标识的许可)的请求。在步骤1418中,基于步骤1416中所标识的组织数据结构,许可服务1386可以在步骤1418中向许可业务逻辑1454发送对许可的请求。在一些实施例中,所述请求包括组织数据结构的标识符。在步骤1420中,许可业务逻辑1454可以向安全服务1384发送对组织数据结构的请求。安全服务1384可以基于提供给安全服务1384的组织标识符在步骤1422中利用组织数据结构进行回复。组织数据结构可以标识组织的各种许可。基于组织数据结构的各种许可,许可业务逻辑1454可以在步骤1424中将许可和组织结构提供给许可服务1386。
在步骤1426中,许可服务1386可以向清单服务1382提供组织数据结构的许可。在步骤1428中,清单服务1382可以向安全服务1384发送对HVAC装置402的装置ID和装置密钥的请求,安全服务1384可以在步骤1430中对所述请求进行回复。基于在步骤1434中标识的许可,清单服务1382生成HVAC装置402的清单并利用在步骤1430中接收到的装置ID和装置密钥对清单进行加密。在步骤1434中,清单服务1382可以将经加密的清单发送至许可用户界面1450,许可用户界面1450可以在步骤1436中下载所述经加密的清单。
现在参照图15,根据示例性实施例的装置管理器1210检索用于由清单服务1382生成清单的信息的过程1500。在步骤1502中,清单服务1382可以将HVAC装置402的装置信息设置到云存储装置1381,具体地是数据库1382。数据库1382可以是文档数据库。在步骤1506中,清单服务1382可以检索存储在数据库1382中的任何装置信息,包括在步骤1502中存储在数据库1382中的信息。在步骤1510和1512中,可以由云存储1381将信息返回至清单服务1512。存储在文档数据库1382中的装置信息可以指示装置可能与各种组、其他装置和用户具有的各种关系。
在步骤1514中,清单服务1382可以使数据库1382将装置的全局配置信息存储在数据库1382中。配置信息可以在被存储之前由清单服务1382加密,以便安全地存储信息并避免任何篡改或信息泄露。在步骤1516中,可以由数据库1382返回存储全局配置信息的确认。在步骤1518至1524中,清单服务1382可以从数据库1383中检索软件下载信息。数据库1383可以是如Azure表(Azure Table)等数据库。所述信息可以包括构建版本(build version)、软件名称和/或任何其他信息。在步骤1526至1528中,清单服务1382可以检索可从包服务1380下载的软件的软件标识符。在步骤1530至1536中,清单服务可以从许可服务1386检索HVAC装置402和/或任何组织,例如HVAC装置402作为其一部分的组织的许可的许可信息。在步骤1538至1544中,清单服务可以从数据库1382中检索HVAC装置402的全局配置并设置数据库1382中的任何装置信息。清单服务1382可以基于在步骤1530至1536中检索到的许可信息、在步骤1538至1540中检索到的全局配置信息和/或在步骤1518至1524中检索到的软件信息来生成清单。
现在参照图16,根据示例性实施例的用于在HVAC装置402在线(例如,连接至认证服务器402)时更新HVAC装置402上的软件的过程1600。HVAC装置402被示出为包括管理员应用1680、安装管理器1682和更新器1602。管理员应用1680可以是用户上传清单文件的界面和/或以其他方式与HVAC装置402接口连接。管理员应用1680可以接收用户输入和/或可以自动执行各种功能以更新HVAC装置402上的软件。安装管理器1682可以是HVAC装置402的处理安装HVAC装置402的软件更新的组件。在一些实施例中,安装管理器1682是和/或包括如Chocolatey等软件管理器。
在步骤1602中,管理员应用1680可以判定其是否应该更新HVAC装置402的软件。在一些实施例中,管理员应用1680接收指示HVAC装置402应更新HVAC装置402的软件和/或清单的用户输入。在各个实施例中,定时器(例如,每天一次定时器、每周一次定时器等)在步骤1680中到期并且指示HVAC装置402是时候执行软件和/或清单更新。
在步骤1604中,管理员应用1602可以向IMS 1205发送对访问令牌的请求,IMS1205可以在步骤1606中将所述访问令牌返回给管理员应用1680。访问令牌可以允许HVAC装置402检索清单。在步骤1608中,管理员应用1680可以向清单服务1382发送对清单的请求。所述请求可以包括步骤1606的访问令牌。清单服务1382可以在步骤1610中返回清单。在一些实施例中,只有在清单服务1382在步骤1608中接收到的访问令牌有效(例如,尚未到期)并且授权HVAC装置402获得清单时,清单服务才返回清单。在步骤1612中,管理员应用1680可以向安装管理器1682发送基于源(例如,URL、文件位置等)安装软件的命令。在一些实施例中,所述源由安装管理器1682存储,并且是管理员应用在步骤1610中接收到的清单中所指示的许可的软件下载的源。
响应于从管理员应用1680接收到更新命令,安装管理器1682可以基于软件许可的源来检索软件下载。在一些实施例中,安装管理器1682进一步使用管理员应用1682在步骤1606中接收到的访问令牌。基于软件请求,包服务1380可以在步骤1616中返回软件。在一些实施例中,响应于在步骤1616中未接收到软件(例如,源是不正确的),管理员应用可以在步骤1618中发送更新源的命令。可以响应于步骤1614的软件更新失败而执行这一点。
在步骤1620中,更新器1602可以清理安装管理器1682存储的任何源。安装管理器1682可以存储HVAC装置402被许可获得(有权获得)的各种软件、软件附加组件或软件版本的位置(例如,源)(例如,URL、文件位置等)。在一些实施例中,清理涉及移除旧源、测试和移除损坏的源等。在步骤1630中,更新器1602可以更新安装管理器1682的源。在一些实施例中,更新器1602使用HVAC装置402在步骤1610中接收到的清单来更新安装管理器1682的源。所接收到的清单可以包括HVAC装置402有权获得的软件的各种源。在步骤1632中,更新器1602可以检索安装在HVAC装置402上的软件应用的列表。在一些实施例中,安装管理器1682存储(或可以生成)列出存储在HVAC装置402上的所有软件的文件。在一些实施例中,在步骤1634中,将文件发送至更新器1602。
基于所接收到的文件和/或清单,更新器1602可以确定什么软件更新对HVAC装置402可用。在一些实施例中,更新器1602将HVAC装置402接收到的清单的软件许可与当前安装在HVAC装置20上的软件进行比较以标识是否存在HVAC装置402应该安装的任何新软件许可和/或新软件应用。在步骤1638中,更新器1602从IMS1205中检索访问令牌和/或软件更新的标识符。IMS 1205可以在步骤1640中返回访问令牌。更新器1602可以在步骤1641中向安装管理器1682发送经由所接收到的令牌来安装软件更新的命令,所述命令可以包括软件更新的特定标识符和/或软件更新的特定版本。
在步骤1642中,安装管理器1682可以向包服务1380发送软件请求,所述软件请求可以包括软件更新的标识符和/或令牌。在一些实施例中,安装管理器1682基于安装服务1652存储的指示在何处检索软件更新的源来发送更新请求。所述请求可以包括在步骤1624中接收到的访问令牌。在步骤1644中,包服务1380可以通过与IMS1205通信来验证在步骤1642中接收到的令牌。在步骤1646中,IMS 1205可以认证令牌和/或指示令牌不真实和/或过期。响应于令牌被授权,包服务1380可以在步骤1648中将软件更新发送至安装管理器1682。
在步骤1650中,安装管理器1682可以安装在步骤1648中接收到的软件更新。在一些实施例中,安装软件更新包括检索和/或安装软件更新所需的任何从属物(dependency)。在步骤1652中,更新器1602可以清理安装管理器1682存储的源。在步骤1684中,更新器1602可以检索HVAC装置1682当前已经安装的已安装应用的列表。安装管理器1682可以将列表返回至更新器1602。所述列表可以包括在步骤1650中安装的新安装软件。在步骤1656中,更新器1602可以从安装管理器1682接收任何全局配置和/或对全局配置进行任何更改。
更新器1602可以检查全局配置以确保HVAC装置4012上的所有软件都被正确安装。在步骤1662中,更新器1602可以将HVAC装置402的清单的更新发送至清单服务1382。更新可以包括在步骤1606中接收到的令牌和/或可以包括更新器1602在步骤1654和1656中检索到的当前安装软件的列表。清单服务1382可以基于HVAC装置402上的当前安装软件的列表来更新HVAC装置402的清单,使得由清单服务1382存储和/或生成的清单指示安装在HVAC装置402上的所有软件。
现在参照图17,示出了根据示例性实施例的用于在HVAC装置402离线(例如,未连接至认证服务器402)但定位于建筑物10中时更新HVAC装置402上的软件的过程1700。HVAC装置402被示出为包括进一步参照图16所描述的各种组件。所述组件包括管理员应用1680、安装管理器1682和更新器1602。
在步骤1702中,用户可以上传包括HVAC装置402的清单的清单文件。在一些实施例中,由于HVAC装置402可能是离线的,因此手动上传所述文件(如图17所示出的)。在步骤1704中,管理员应用1680可以向安装管理器1682发送基于源(例如,文件目的地、URL等)和/或访问令牌来更新HVAC装置402的软件的命令。在一些实施例中,如果源不正确或以其他方式无效,则安装管理器1682可能无法安装更新。在一些实施例中,安装管理器1682可能由于HVAC装置402可能是离线的而无法安装更新。在一些实施例中,响应于源不正确,管理员应用1680可以将在步骤1702中上传的清单文件发送至更新器1602。在步骤1708中,更新器1602可以对清单进行解密。
在一些实施例中,更新器1602使用装置ID和/或装置密钥来对清单进行解密。在步骤1710中,基于经解密的清单,更新器1602可以使安装服务1682清理其存储的任何当前源(例如,删除旧源、对源进行测试并且如果无效则删除等)。进一步地,基于经解密的清单,更新器1602可以更新安装管理器1682可以存储的源。清单可以包括HVAC装置402被许可获得的软件的各个位置。最后,在步骤1710中,更新器1602可以请求安装管理器1682向更新器1602发送HVAC装置402上的当前安装软件的列表。在步骤1716中,安装管理器1682可以响应于步骤1710而向更新器1602提供当前安装软件的列表。
在步骤1717中,更新器1602可以确定需要更新HVAC装置402的什么软件。在一些实施例中,在步骤1708中解密的清单指示HVAC装置402有权获得的软件。在一些实施例中,更新器1602可以基于经解密的清单和/或在步骤1716中接收到的已安装应用的列表来判定应该安装新的软件、应该安装新的软件版本还是应该安装新的软件附加组件。
在步骤1718中,更新器1602可以向安装管理器1682发送更新和/或安装新软件的命令。在一些实施例中,所述命令包括要安装的软件或软件更新的标识符、应安装的特定版本和/或访问令牌。在步骤1720中,安装管理器1682可以安装软件更新和/或软件更新所需的任何从属物。安装管理器1682可以基于其可以存储和/或安装管理器1602可能已经更新(例如,在步骤1710中更新)的源来检索软件更新。在一些实施例中,HVAC装置402在从源中检索到软件之前等待上线,因为HVAC装置402可能需要在线以检索软件更新。在一些实施例中,软件由用户手动上传(例如,经由USB驱动器、CD等)。在一些实施例中,HVAC装置402连接至本地服务器或系统,即使HVAC装置402可能与认证服务器404断开连接,HVAC装置也可以从所述本地服务器或系统中检索软件下载。在步骤1722中,更新器1602可以发送清理源的命令,所述清理可以与步骤1710的清理相同和/或类似。在步骤1722中,更新器1602可以再次从安装管理器1682中检索已安装应用的列表,安装管理器1682可以使用所述列表来标识是否已经正确安装所有软件更新。
在步骤1722和1724中,更新器1602可以从安装管理器1682中检索全局配置设置并执行任何必要的配置。配置设置可以是HVAC装置402的已安装软件,例如在步骤1720中安装的软件的设置。在步骤1730中,安装管理器1602可以对清单进行加密。在一些实施例中,更新器1602基于装置ID和装置密钥来对清单进行加密。更新器1602在步骤1730中加密的清单可以是在步骤1702中上传的清单。在步骤1732中,更新器1602可以将经加密的清单存储在安装管理器1682中。
现在参照图18,示出了根据示例性实施例的用于在HVAC装置402在线、连接至装置管理器1210并且定位于屋内、定位于建筑物10中时注册HVAC装置402的过程1800。在步骤1802中,管理员应用1680向IMS 1205发送对访问令牌的请求。访问令牌可以是定时访问密钥,所述定时访问密钥允许管理员应用请求装置管理器中的信息和/或将信息存储在装置管理器中,即,执行步骤1805、1808、1810和/或1812。响应于在步骤1804中接收到访问令牌,管理员应用1680可以在步骤1805中将对HVAC装置402的清单的请求发送至清单服务1382。在步骤1806中,清单服务1382可以利用管理员应用1680的清单进行回复。管理员应用1680可以基于装置ID和装置密钥来对清单进行解密。
在步骤1808中,管理员应用1680可以将HVAC装置402的配置信息保存至全局配置数据库1394。在步骤1810中,管理员应用1680可以将HVAC装置402的许可信息存储在许可服务1396中,许可信息可以基于在步骤1806中接收到的清单。在步骤1812中,管理员应用1680可以将组织数据结构存储在安全服务1397中。在一些实施例中,组织数据结构标识各种实体(例如,用户、装置、组)与每个实体和/或HVAC装置402的各种许可之间的各种关系。
现在参照图19,示出了根据示例性实施例的用于在HVAC装置402离线、未连接至认证服务器404并且定位于屋内、定位于建筑物10中时注册HVAC装置402的过程1900。在步骤1902中,管理员应用1680可以读取已经手动上传至HVAC装置402的清单。HVAC装置402可以经由装置ID和/或装置密钥对清单进行解密。基于所述清单,管理员应用1680可以在步骤1904中将清单中所指示的配置信息存储在全局配置数据库1394中,在步骤1906中将清单中所指示的许可信息存储到许可服务1396并且在步骤1908中将组织数据结构存储到安全服务1397。
示例性实施例的配置
如各个示例性实施例中所示出的系统和方法的构造和安排仅是说明性的。尽管本披露中仅详细描述了几个实施例,但是许多修改是可能的(例如,各种元件的大小、尺寸、结构、形状和比例、参数的值、安装安排、材料的使用、颜色、定向等的变化)。例如,可以颠倒或以其他方式改变元件的位置,并且可以更改或改变分立元件或位置的性质或数量。因此,所有这种修改旨在被包括在本披露内容的范围内。可以根据替代性实施例对任何过程或方法步骤的顺序或排序进行改变或重新排序。在不脱离本披露内容的范围的情况下,可以在示例性实施例的设计、操作条件和安排方面作出其他替代、修改、改变和省略。
本披露内容设想了用于完成各种操作的方法、系统和任何机器可读介质上的程序产品。可以使用现有计算机处理器或由结合用于此目的或另一目的的适当系统的专用计算机处理器或由硬接线系统来实施本披露内容的实施例。本披露内容的范围内的实施例包括程序产品,所述程序产品包括用于承载或具有存储在其上的机器可执行指令或数据结构的机器可读介质。这种机器可读介质可以是可以由通用或专用计算机或具有处理器的其他机器访问的任何可用介质。举例来讲,这种机器可读介质可以包括RAM、ROM、EPROM、EEPROM、CD-ROM或其他光盘存储装置、磁盘存储装置或其他磁存储装置,或者可以用来以机器可执行指令或数据结构的形式承载或存储期望程序代码并且可以由通用或专用计算机或具有处理器的其他机器访问的任何其他介质。当在网络或另一通信连接(硬接线、无线或者硬接线或无线的组合)上将信息传递或提供至机器时,所述机器适当地将所述连接视为机器可读介质。因此,任何这种连接都被适当地称为机器可读介质。上述内容的组合也包括在机器可读介质的范围内。机器可执行指令包括例如使通用计算机、专用计算机或专用处理机器执行某一功能或一组功能的指令和数据。
尽管附图示出了方法步骤的具体顺序,但是步骤的顺序可以不同于所描绘的顺序。还可以同时或部分同时地执行两个或更多个步骤。这种变型将取决于所选软件和硬件系统以及设计者的选择。所有这种变型都处于本披露内容的范围内。同样,可以用具有基于规则的逻辑和用于实现各个连接步骤、处理步骤、比较步骤和判定步骤的其他逻辑的标准编程技术来实现软件实施方式。

Claims (21)

1.一种用于建筑物空间的暖通空调(HVAC)系统,所述系统包括:
用于所述建筑物空间的HVAC装置,所述HVAC装置包括处理电路,其中,所述处理电路被配置用于:
基于存储在所述HVAC装置上的清单生成经加密动态密钥,其中,所述清单包括所述HVAC装置的基于所述HVAC装置与实体之间的关系的一组权利,其中所述实体是组、用户和装置中的至少一者;
通过将所述经加密动态密钥发送至认证服务器来将所存储的清单传输至所述认证服务器;
基于所述经加密动态密钥从所述认证服务器接收已更新清单;以及
基于所述已更新清单向所述认证服务器发送有效载荷请求,其中,所述有效载荷请求包括软件更新请求。
2.如权利要求1所述的系统,其中,所述清单包括实体之间的一组关系,所述一组关系包括组实体、用户实体、以及装置实体之间的一种或多种关系;
其中,所述HVAC的所述一组权利包括所述HVAC装置获得软件操作版本的权利、所述HVAC装置获得软件附加组件的权利、以及配置所述HVAC装置从第二装置采集数据并向所述第二装置发送使得所述第二装置影响所述建筑物空间中的环境变化的命令的权利中的至少一个权利。
3.如权利要求1所述的系统,其中,所述清单指示所述有效载荷的位置,其中,所述HVAC装置的所述处理电路被配置用于基于由所述清单指示的所述位置来检索所述有效载荷。
4.如权利要求1所述的系统,其中,所述HVAC装置的所述一组权利基于所述HVAC装置与所述实体之间的关系并且进一步基于每个实体的所述权利;
其中,所述HVAC装置与所述实体之间的所述关系包括组实体与所述HVAC装置、用户实体与所述HVAC装置、以及装置实体与所述HVAC装置之间的关系。
5.如权利要求4所述的系统,其中,所述HVAC装置与所述实体之间的所述关系进一步包括每个实体与其他实体之间的关系,其中,每个实体与所述其他实体之间的所述关系包括所述组实体、所述用户实体、以及所述装置实体与其他组实体、其他用户实体、以及其他装置实体之间的关系。
6.如权利要求1所述的系统,其中,所述HVAC装置的所述处理电路被配置用于:
从所述认证服务器接收有效载荷,并根据所述有效载荷更新所述HVAC装置的存储模块;以及
提示用户确认所述有效载荷的安装。
7.如权利要求1所述的系统,其中,所述HVAC装置的所述处理电路进一步基于装置密钥和装置ID值生成所述经加密动态密钥。
8.如权利要求7所述的系统,进一步包括所述认证服务器,其包括处理电路,其中,所述处理电路被配置用于:
从所述HVAC装置接收所述经加密动态密钥,并基于所述经加密动态密钥、所述装置密钥和所述装置ID值生成存储在所述HVAC装置上的所述清单;以及
将所生成的清单与存储在所述认证服务器上的清单进行比较,并且响应于确定所生成的清单与存储在所述认证服务器上的所述清单不匹配而将所述已更新清单发送至所述HVAC装置。
9.如权利要求8所述的系统,其中,所述认证服务器的所述处理电路被配置用于响应于接收针对特定有效载荷的所述有效载荷请求并且响应于存储在所述认证服务器上的指示所述HVAC装置有权获得所请求的有效载荷的所述清单而将有效载荷发送至所述HVAC装置。
10.如权利要求1所述的系统,其中,所述有效载荷请求进一步包括定时密钥,其中,所述定时密钥在预定量的时间内激活所述有效载荷请求;
其中,所述认证服务器的所述处理电路被配置用于在所述预定量的时间到期之前将所述有效载荷发送至所述HVAC装置。
11.一种用于在建筑物空间中许可装置的方法,所述方法包括:
由HVAC装置基于存储在所述HVAC装置上的清单生成经加密动态密钥,其中,所述清单包括所述HVAC装置的基于所述HVAC装置与实体之间的关系的一组权利,其中所述实体是组、用户和装置中的至少一者;
通过将所述经加密动态密钥发送至认证服务器来由所述HVAC装置将所存储的清单传输至所述认证服务器;
由所述HVAC装置基于所述经加密动态密钥从所述认证服务器接收已更新清单;以及
由所述HVAC装置基于所述已更新清单向所述认证服务器发送有效载荷请求,其中,所述有效载荷请求包括软件更新请求。
12.如权利要求11所述的方法,其中,所述清单包括实体之间的一组关系,所述一组关系包括组实体、用户实体、以及装置实体之间的一种或多种关系。
13.如权利要求11所述的方法,其中,所述HVAC装置的所述一组权利基于所述HVAC装置与所述实体之间的关系以及每个实体的所述权利;
其中,所述HVAC装置与所述实体之间的所述关系包括组实体与所述HVAC装置、用户实体与所述HVAC装置、以及装置实体与所述HVAC装置之间的关系。
14.如权利要求13所述的方法,其中,所述HVAC装置与所述实体之间的所述关系进一步包括每个实体与其他实体之间的关系,其中,每个实体与所述其他实体之间的所述关系包括所述组实体、所述用户实体、以及所述装置实体与其他组实体、其他用户实体、以及其他装置实体之间的关系。
15.如权利要求11所述的方法,所述方法进一步包括由所述HVAC装置进一步基于装置密钥和装置ID值生成所述经加密动态密钥。
16.如权利要求15所述的方法,所述方法进一步包括:
由所述认证服务器从所述HVAC装置接收所述经加密动态密钥;
由所述认证服务器基于所述经加密动态密钥、所述装置密钥和所述装置ID值生成存储在所述HVAC装置上的所述清单;
由所述认证服务器将所生成的清单与存储在所述认证服务器上的清单进行比较;以及
响应于确定所生成的清单与存储在所述认证服务器上的所述清单不匹配而由所述认证服务器将所述已更新清单发送至所述HVAC装置。
17.如权利要求11所述的方法,其中,所述清单指示所述有效载荷的位置,其中,所述HVAC装置的处理电路被配置用于基于由所述清单指示的所述位置来检索所述有效载荷。
18.一种用于建筑物空间的暖通空调(HVAC)装置,所述装置包括:
处理电路,所述处理电路被配置用于:
基于存储在所述HVAC装置上的清单生成经加密动态密钥,其中,所述清单包括所述HVAC装置的基于所述HVAC装置与一个或多个实体之间的关系的一组权利,其中所述实体是组、用户和装置中的至少一者,其中,所述HVAC装置与所述实体之间的所述关系包括一个或多个组实体与所述HVAC装置、用户实体与所述HVAC装置、以及装置实体与所述HVAC装置之间的关系;
通过将所述经加密动态密钥发送至认证服务器来将所存储的清单传输至所述认证服务器;
基于所述经加密动态密钥从所述认证服务器接收已更新清单;以及
基于所述已更新清单向所述认证服务器发送有效载荷请求,其中,所述有效载荷请求包括软件更新请求。
19.如权利要求18所述的HVAC装置,其中,所述HVAC装置与所述实体之间的所述关系进一步包括每个实体与其他实体之间的关系,其中,每个实体与所述其他实体之间的所述关系包括所述组实体、所述用户实体、以及所述装置实体与其他组实体、其他用户实体、以及其他装置实体之间的关系。
20.如权利要求18所述的HVAC装置,其中,所述HVAC装置的所述处理电路进一步基于装置密钥和装置ID值生成所述经加密动态密钥。
21.如权利要求1所述的系统,其中,所述处理电路被配置成将所存储的清单传输至认证服务器,以确定所述一组权利是否已通过所述认证服务器更新为第二组权利,所述第二组权利基于所述HVAC装置与所述实体之间的关系,并且其中
所述已更新清单包括所述第二组权利。
CN201780081701.4A 2016-10-31 2017-10-03 用于分布式边缘装置的在线、离线和混合许可的建筑物自动化系统 Active CN110140096B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662415447P 2016-10-31 2016-10-31
US62/415,447 2016-10-31
US15/639,880 US10520210B2 (en) 2016-10-31 2017-06-30 Building automation systems for online, offline, and hybrid licensing of distributed edge devices
US15/639,880 2017-06-30
PCT/US2017/054842 WO2018080740A1 (en) 2016-10-31 2017-10-03 Building automation systems for online, offline, and hybrid licensing of distributed edge devices

Publications (2)

Publication Number Publication Date
CN110140096A CN110140096A (zh) 2019-08-16
CN110140096B true CN110140096B (zh) 2021-11-02

Family

ID=62021225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780081701.4A Active CN110140096B (zh) 2016-10-31 2017-10-03 用于分布式边缘装置的在线、离线和混合许可的建筑物自动化系统

Country Status (3)

Country Link
US (2) US10520210B2 (zh)
CN (1) CN110140096B (zh)
WO (1) WO2018080740A1 (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10031494B2 (en) 2014-08-15 2018-07-24 Honeywell International Inc. Dashboard and button/tile system for an interface
US10505756B2 (en) 2017-02-10 2019-12-10 Johnson Controls Technology Company Building management system with space graphs
US11774920B2 (en) 2016-05-04 2023-10-03 Johnson Controls Technology Company Building system with user presentation composition based on building context
US10417451B2 (en) 2017-09-27 2019-09-17 Johnson Controls Technology Company Building system with smart entity personal identifying information (PII) masking
US10854194B2 (en) 2017-02-10 2020-12-01 Johnson Controls Technology Company Building system with digital twin based data ingestion and processing
US11764991B2 (en) 2017-02-10 2023-09-19 Johnson Controls Technology Company Building management system with identity management
US11994833B2 (en) 2017-02-10 2024-05-28 Johnson Controls Technology Company Building smart entity system with agent based data ingestion and entity creation using time series data
US11360447B2 (en) 2017-02-10 2022-06-14 Johnson Controls Technology Company Building smart entity system with agent based communication and control
US10515098B2 (en) 2017-02-10 2019-12-24 Johnson Controls Technology Company Building management smart entity creation and maintenance using time series data
US11120012B2 (en) 2017-09-27 2021-09-14 Johnson Controls Tyco IP Holdings LLP Web services platform with integration and interface of smart entities with enterprise applications
US10962945B2 (en) 2017-09-27 2021-03-30 Johnson Controls Technology Company Building management system with integration of data into smart entities
US11314788B2 (en) 2017-09-27 2022-04-26 Johnson Controls Tyco IP Holdings LLP Smart entity management for building management systems
JP2019159752A (ja) * 2018-03-13 2019-09-19 オムロン株式会社 コントローラ、ライセンスの管理方法、およびライセンスの管理プログラム
US11451408B2 (en) 2018-09-27 2022-09-20 Johnson Controls Tyco IP Holdings LLP Building management system with timeseries based assurance services
US10978199B2 (en) 2019-01-11 2021-04-13 Honeywell International Inc. Methods and systems for improving infection control in a building
US11520299B2 (en) * 2019-03-30 2022-12-06 Honeywell International Inc. Shared data center based industrial automation system for one or multiple sites
CN111915110A (zh) * 2019-05-08 2020-11-10 中国石油天然气股份有限公司 确定炼化装置泄漏着火事故模式的方法及装置
US11362852B2 (en) * 2019-05-08 2022-06-14 Johnson Controls Tyco IP Holdings LLP Systems and methods for configuring and operating building equipment using causal and spatial relationships
CA3183109A1 (en) 2019-05-15 2020-11-19 Upstream Data Inc. Portable blockchain mining system and methods of use
US11444780B2 (en) * 2019-05-21 2022-09-13 Micron Technology, Inc. Secure replaceable verification key architecture in a memory sub-system
US11119750B2 (en) * 2019-05-23 2021-09-14 International Business Machines Corporation Decentralized offline program updating
US11740601B2 (en) 2019-06-04 2023-08-29 Johnson Controls Tyco IP Holdings LLP Building management system with universal serial bus (USB) building devices
US11371753B2 (en) 2019-07-22 2022-06-28 A. O. Smith Corporation Field configuration of commercial water heaters
US11287155B2 (en) 2020-02-11 2022-03-29 Honeywell International Inc. HVAC system configuration with automatic parameter generation
US11237534B2 (en) 2020-02-11 2022-02-01 Honeywell International Inc. Managing certificates in a building management system
US11526976B2 (en) 2020-02-11 2022-12-13 Honeywell International Inc. Using augmented reality to assist in device installation
US20230168652A1 (en) * 2020-05-28 2023-06-01 Mitsubishi Electric Corporation Air conditioning system, air conditioner, and authentication information providing method
US11573546B2 (en) * 2020-05-29 2023-02-07 Honeywell International Inc. Remote discovery of building management system metadata
US11913659B2 (en) 2020-06-15 2024-02-27 Honeywell International Inc. Systems and methods for monitoring operation of an HVAC system
US20210390645A1 (en) * 2020-06-16 2021-12-16 OSAAP America, LLC Offline License Distribution Device
US11823295B2 (en) 2020-06-19 2023-11-21 Honeywell International, Inc. Systems and methods for reducing risk of pathogen exposure within a space
US11894145B2 (en) 2020-09-30 2024-02-06 Honeywell International Inc. Dashboard for tracking healthy building performance
US11677746B2 (en) 2020-10-30 2023-06-13 Microsoft Technology Licensing, Llc Device capability model sharing
US11316908B1 (en) 2021-02-01 2022-04-26 Zurn Industries, Llc BACnet conversion of water management data for building management solutions
US11372383B1 (en) 2021-02-26 2022-06-28 Honeywell International Inc. Healthy building dashboard facilitated by hierarchical model of building control assets
US11221601B1 (en) * 2021-05-24 2022-01-11 Zurn Industries, Llc Various IoT sensory products and cloud-purge for commercial building solutions utilizing LoRa to BACnet conversion for efficient data management and monitoring
US11573539B1 (en) 2021-09-03 2023-02-07 Zurn Industries, Llc Managing edge devices in building management systems
US20230409694A1 (en) * 2022-06-15 2023-12-21 Microsoft Technology Licensing, Llc Secure Device Tracking Via Device Ownership Service
WO2024094794A1 (en) * 2022-11-03 2024-05-10 Ocado Innovation Limited Secure storage system including load handlers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101821696A (zh) * 2007-08-28 2010-09-01 Commvault系统公司 如数据存储操作的自适应能耗管理的数据处理资源的能耗管理
US8776254B1 (en) * 2013-01-23 2014-07-08 Owl Computing Technologies, Inc. System and method for the secure unidirectional transfer of software and software updates
CN105989295A (zh) * 2015-03-16 2016-10-05 迈德安全基金会 数据系统和方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6741915B2 (en) * 2001-08-22 2004-05-25 Mmi Controls, Ltd. Usage monitoring HVAC control system
JP2005135187A (ja) * 2003-10-30 2005-05-26 Toshiba Corp 電子機器および組み込みソフトウェア更新方法
US9147049B2 (en) * 2007-08-16 2015-09-29 Honeywell International Inc. Embedded building conroller with stored software license information
US8295981B2 (en) 2008-10-27 2012-10-23 Lennox Industries Inc. Device commissioning in a heating, ventilation and air conditioning network
US8949155B2 (en) 2008-12-31 2015-02-03 Microsoft Corporation Protecting privacy of personally identifying information when delivering targeted assets
US8600556B2 (en) 2009-06-22 2013-12-03 Johnson Controls Technology Company Smart building manager
DE102011080876A1 (de) * 2011-08-12 2013-02-14 Tridonic Gmbh & Co Kg Management des Gerätebesitzes und Inbetriebnahme in drahtlosen Netzwerken mit Verschlüsselung durch öffentliche Schlüssel
US8843238B2 (en) 2011-09-30 2014-09-23 Johnson Controls Technology Company Systems and methods for controlling energy use in a building management system using energy budgets
US9939824B2 (en) * 2011-10-07 2018-04-10 Honeywell International Inc. Thermostat with remote access feature
US20140029735A1 (en) 2012-07-27 2014-01-30 William Charles Davis Device and method for determining a voicemail, ring or alert behavior of a telephone based on day and time
US8594850B1 (en) * 2012-09-30 2013-11-26 Nest Labs, Inc. Updating control software on a network-connected HVAC controller
US8806209B2 (en) 2012-12-22 2014-08-12 Wigwag, Llc Provisioning of electronic devices
US9418229B2 (en) * 2013-10-28 2016-08-16 Disney Enterprises, Inc. Firmware security
US20150167995A1 (en) * 2013-12-12 2015-06-18 Google Inc. Safe sandbox mode for a home device
US20150370272A1 (en) 2014-06-23 2015-12-24 Google Inc. Intelligent configuration of a smart environment based on arrival time
US10619874B2 (en) * 2014-10-23 2020-04-14 Trane International Inc. Apparatuses, methods and systems for configuring electronically programmable HVAC system
SE1451278A1 (en) * 2014-10-24 2016-04-25 Rsg Stockholm Ab System and method for work task assignment and follow-up of a building or construction project

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101821696A (zh) * 2007-08-28 2010-09-01 Commvault系统公司 如数据存储操作的自适应能耗管理的数据处理资源的能耗管理
US8776254B1 (en) * 2013-01-23 2014-07-08 Owl Computing Technologies, Inc. System and method for the secure unidirectional transfer of software and software updates
CN105989295A (zh) * 2015-03-16 2016-10-05 迈德安全基金会 数据系统和方法

Also Published As

Publication number Publication date
US20180119975A1 (en) 2018-05-03
US10520210B2 (en) 2019-12-31
US11268715B2 (en) 2022-03-08
US20200278127A1 (en) 2020-09-03
CN110140096A (zh) 2019-08-16
WO2018080740A1 (en) 2018-05-03

Similar Documents

Publication Publication Date Title
CN110140096B (zh) 用于分布式边缘装置的在线、离线和混合许可的建筑物自动化系统
US11768004B2 (en) HVAC device registration in a distributed building management system
US11761653B2 (en) Building management system with a distributed blockchain database
US11774925B2 (en) Building management system with device twinning, communication connection validation, and block chain
US10868857B2 (en) Building management system with distributed data collection and gateway services
CN107111697B (zh) 对于所连接的消费者设备的基于角色的访问控制
US10749692B2 (en) Automated certificate enrollment for devices in industrial control systems or other systems
CN111667384B (zh) 建筑物自动化管理设备和方法
US20220222056A1 (en) Building management system with cloud management of gateway configurations
US20200106633A1 (en) Building management system with timeseries based assurance services
US11764989B2 (en) Systems and methods of enabling blockchain-based building automation systems
US11727738B2 (en) Building campus with integrated smart environment
US8391487B2 (en) Secure remote configuration of device capabilities
US10529153B2 (en) Access control and smart delivery of product information
JP2023120287A (ja) 拡張可能な証明書管理システムアーキテクチャ
US20240235191A1 (en) Building energy system with blockchain carbon credit verification
TW202403573A (zh) 具有用以解鎖設備控制面板之動態存取碼產生之建築物設備存取管理系統
WO2021168279A1 (en) Connected facility systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant