Building equipment access management system with dynamic access code generation for unlocking equipment control panel
Through the access manager platform and access database of the access management system, an encrypted access code is generated to authorize the access to the building equipment, which solves the unlimited interview caused by the public access code of traditional refrigeration machines. manage.
Patent Information
- Application Number
- CN202380034519.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-03-31
- Filing Date
- 2023-03-30
- Publication Date
- 2025-01-28
AI Technical Summary
The static access code disclosure of traditional refrigerators results in unlimited access control functions for users, making it difficult to monitor and control appropriate access.
设计一种访问管理系统,通过访问管理器平台从用户装置接收访问请求,基于实体的标识和访问级别从访问简档数据库选择适当的访问级别,生成加密访问代码,并通过装置界面输入该代码以 Authorized visit.
The safety and appropriate access to building equipment were realized, the unlimited control function access was avoided, and the efficiency and security of access management was improved.
Smart Images

Figure CN119384813A_ABST
Abstract
Description
[0001] Cross-references to related patent applications
[0002] This application claims the benefit of and priority to U.S. Provisional Application No. 63 / 326,031, filed on March 31, 2022, the entire disclosure of which is incorporated herein by reference. Background Art
[0003] The present disclosure generally relates to an access management system for building equipment (such as chillers, boilers, air handling units and other types of building equipment), and more specifically to an access management system that is configured to allow access to a functional set of devices of the building equipment using a control panel located on or in the local environment of the building equipment.
[0004] A chiller is a piece of equipment used to generate temperature-controlled water (most commonly cooling water) that can be used to cool air, products, machines, etc. Conventional chillers include control panels that use static access codes to authorize access to the chiller's functions. Many times, these static access codes remain unchanged for several years, which means that the access codes become publicly available and users have unrestricted access to the chiller's control functions. As a result, it becomes increasingly difficult to control and monitor proper and authorized access to the chiller's functions. It would be beneficial to have a system and / or method that provides secure and proper access to a chiller. Summary of the invention
[0005] One embodiment of the present disclosure is a system for controlling access to building equipment. The system includes one or more memory devices having instructions stored thereon, which, when executed by one or more processors, cause the one or more processors to perform operations. The operations include receiving an access request from a user device to access a device of a building equipment, the access request indicating the device of the building equipment to which access is requested and an identity of an entity requesting the access. The operations further include selecting an access level for the entity from a plurality of access levels stored in an access profile database based on the identity of the entity requesting the access and the device of the building equipment to which the access is requested. The operations also include generating an encrypted access code indicating the access level of the entity, and sending the encrypted access code to the user device in response to the access request, the encrypted access code authorizing access to the device of the building equipment when the encrypted access code is entered via a device interface of the device of the building equipment.
[0006] In some embodiments, the operations further include determining a time period during which the encrypted access code will grant access to the device of the building equipment, and encoding an indication of the time period into the encrypted access code, wherein after the time period has expired, the encrypted access code no longer grants access to the device of the building equipment.
[0007] In some embodiments, the operations further include determining a time period during which the encrypted access code will grant access to the device of the building equipment, and encoding an indication of the time period into the encrypted access code, wherein after the time period, the encrypted access code grants access to the device of the building equipment.
[0008] In some embodiments, the plurality of access levels correspond to a plurality of different predetermined sets of functions of the device of the building equipment to which access can be authorized. Furthermore, when the encrypted access code is entered via the device interface of the device of the building equipment, the encrypted access code grants the entity access to the predetermined set of functions of the device of the building equipment corresponding to the access level.
[0009] In some embodiments, the plurality of access levels stored in the access profile database are provided by an owner of the device of the building equipment.
[0010] In some embodiments, the encrypted access code is an alphanumeric code configured to be decrypted using a security key stored within a device of the building equipment.
[0011] In some embodiments, the encrypted access code is provided as input to the device of the building equipment via the device interface without requiring the device of the building equipment to be connected to a communications network.
[0012] Another embodiment of the present disclosure is a device of a building equipment. The device of the building equipment includes a device interface, which is configured to receive an encrypted access code, the encrypted access code indicating an access level of an entity requesting access to the device of the building equipment. The device of the building equipment also includes one or more memory devices, which store a security key and instructions, the security key is for the device of the building equipment, and the instructions, when executed by one or more processors, cause the one or more processors to perform operations. The operations include decrypting the encrypted access code using the security key to determine the access level of the entity to the device of the building equipment indicated by the encrypted access code. The operations further include authorizing access to the predetermined set of functions of the device of the building equipment corresponding to the access level by enabling the entity to access the predetermined set of functions of the device of the building equipment via the device interface.
[0013] In some embodiments, the operations further include generating a device identification code identifying a device of the building equipment, and presenting the device identification code via the device interface, wherein the encrypted access code is generated based on the device identification code.
[0014] In some embodiments, the device identification code is presented on the device interface as a QR code.
[0015] In some embodiments, the one or more memory devices store a plurality of access levels corresponding to a plurality of different predetermined sets of functions of the device of the building equipment to which access can be authorized. The operations further include selecting the access level from the plurality of different predetermined sets of functions based on the encrypted access code.
[0016] In some embodiments, the operations include determining a time period during which the encrypted access code will grant access to the device of the building equipment based on information encoded into the encrypted access code. The operations also include revoking the access to the device of the building equipment granted by the encrypted access code after the time period has expired.
[0017] In some embodiments, the operations further include denying access to the device of the building equipment via the device interface and providing an indication that the entity does not have access to the device of the building equipment in response to entering an invalid or expired access code via the device interface or in response to the encrypted access code indicating that the entity does not have access to the device of the building equipment.
[0018] In some embodiments, the operations further include storing the encrypted access code in an access log in a database of the device of the building equipment.
[0019] Yet another embodiment of the present disclosure is a system for controlling access to building equipment. The system includes an access manager platform having one or more memory devices having instructions stored thereon, which instructions, when executed by one or more processors, cause the one or more processors to perform operations. The operations include receiving an access request from a user device to access a device of a building equipment, the access request indicating the device of the building equipment to which access is requested and an identity of an entity requesting the access. The operations further include selecting an access level for the entity from a plurality of access levels stored in an access profile database based on the identity of the entity requesting the access and the device of the building equipment to which access is requested. The operations also include generating an encrypted access code indicating the access level of the entity, and sending the encrypted access code to the user device in response to the access request, the encrypted access code authorizing access to the device of the building equipment when the encrypted access code is entered via a device interface of the device of the building equipment. The device of the building equipment includes one or more memory devices storing a security key and instructions, the security key for the device of the building equipment, which instructions, when executed by one or more processors, cause the one or more processors to perform operations. The operations include decrypting the encrypted access code using the security key to determine the access level of the entity to the device of the building equipment indicated by the encrypted access code. The operations further include authorizing access to the predetermined set of functions of the device of the building equipment corresponding to the access level by enabling the entity to access the predetermined set of functions of the device of the building equipment via the device interface.
[0020] In some embodiments, the operation of the access manager platform further includes determining a time period during which the encrypted access code will grant access to the device of the building equipment, and encoding an indication of the time period into the encrypted access code, wherein after the time period has expired, the encrypted access code no longer grants access to the device of the building equipment.
[0021] In some embodiments, the operation of the access manager platform further includes determining a time period during which the encrypted access code will grant access to the device of the building equipment, and encoding an indication of the time period into the encrypted access code, wherein the encrypted access code grants access to the device of the building equipment after the time period.
[0022] In some embodiments, the plurality of access levels correspond to a plurality of different predetermined sets of functions of the device of the building equipment to which access can be authorized. Furthermore, when the encrypted access code is entered via the device interface of the device of the building equipment, the encrypted access code grants the entity access to the predetermined set of functions of the device of the building equipment corresponding to the access level.
[0023] In some embodiments, the plurality of access levels stored in the access profile database are provided by an owner of the device of the building equipment.
[0024] In some embodiments, the encrypted access code is an alphanumeric code configured to be decrypted using the security key stored within the device of the building equipment. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] Various objects, aspects, features and advantages of the present disclosure will become more apparent and better understood by reference to the detailed description taken in conjunction with the accompanying drawings, in which like reference numerals identify corresponding elements throughout the drawings. In the drawings, the same reference numerals generally represent identical, functionally similar and / or structurally similar elements.
[0026] Figure 1 is a diagram of a building equipped with a building management system (BMS) and an HVAC system according to some embodiments.
[0027] Figure 2 According to some embodiments, it can be used as Figure 1 Schematic diagram of the waterside system of portions of the HVAC system.
[0028] Figure 3 According to some embodiments, it can be used as Figure 1 A block diagram of the air-side system of parts of an HVAC system.
[0029] Figure 4 According to some embodiments, Figure 1 Block diagram of a BMS used in a building.
[0030] Figure 5 According to some embodiments, Figure 1 Another block diagram of a BMS used in a building.
[0031] Figure 6 According to some embodiments, Figure 1 A block diagram of the components of a building used together with an access management system.
[0032] Figure 7 According to some embodiments, Figure 6 Block diagram of the Access Manager platform used in an access management system.
[0033] Figure 8 According to some embodiments, Figure 6 A block diagram of a user device used in an access management system.
[0034] Fig. 9 According to some embodiments, Figure 6 A block diagram of an apparatus of building equipment used in a network service system.
[0035] Fig.10 For use according to some embodiments Figure 6 A flow chart of components of an access management system to provide means for accessing building equipment.
[0036] Fig.11 For a user interface having a login interface according to some embodiments Figure 8 A user device interface of a user device of the present invention.
[0037] Fig.12 For a device having a device identification interface according to some embodiments Fig. 9 The device interface of the device.
[0038] Fig.13 For a device having a device identification interface according to some embodiments Figure 8 A user device interface of a user device of the present invention.
[0039] Fig.14 For a device having an access request interface according to some embodiments Figure 8 A user device interface of a user device of the present invention.
[0040] Fig.15 For another access request interface according to some embodiments Figure 8 A user device interface of a user device of the present invention.
[0041] Fig.16 For a device having an access code interface according to some embodiments Figure 8 A user device interface of a user device of the present invention.
[0042] Fig.17 For a user interface having a login interface according to some embodiments Fig. 9 The device interface of the device.
[0043] Fig.18 For a user having another login interface according to some embodiments Fig. 9 The device interface of the device.
[0044] Fig.19 For providing access to a computer using an encrypted access code according to some embodiments Figure 8 A flowchart of the process of accessing a device.
[0045] Fig. 20 For use in accordance with some embodiments for allowing access based on an encrypted access code Figure 8 A flow chart of the process of accessing a device's feature set. DETAILED DESCRIPTION
[0046] Overview
[0047] Referring generally to the accompanying drawings, systems and methods for managing access to devices of building equipment using encrypted access codes are shown according to various embodiments. An exemplary access management system may include an access manager platform, devices of building equipment, and user devices. The access manager platform may be a component of the access management system that receives access requests from entities to access devices of building equipment. The access manager platform may determine an access level of the entity based on the access request. The access manager platform may further generate an encrypted access code indicating the access level of the entity and send the access code to the user device to allow access to a functional set of the devices of building equipment.
[0048] In some cases, the access manager platform is configured to receive an access request from a user device. The access request may include device data indicating a device of the building equipment to which access is requested, and entity data indicating an entity (e.g., a user) requesting access. In some embodiments, the access request includes additional access request parameters (e.g., access start time, access level, access duration, etc.). The access manager platform may determine the access level of the entity, for example, by comparing the device and entity identified in the access request with a plurality of access profiles stored in an access profile database. Based on the comparison, the access manager platform may determine the entity's access level to the device (e.g., access profile), and generate an encrypted access code indicating the entity's access level to the device. The access manager platform may further send the encrypted access code to the user device, and the encrypted access code may be entered at the device to authorize access to a functional set of the device of the building equipment.
[0049] In an exemplary embodiment, a device of a building equipment provides device data indicating an identification of the device. In an exemplary embodiment, the device of the building equipment is configured to provide device data indicating an identification of the device via a device interface, for example in the form of a QR code. Prior to an access request, the device of the building equipment may receive and store a security key that may be used to decrypt an encrypted access code. In an exemplary embodiment, the security key is received and stored during manufacturing and commissioning; however, in other embodiments, the security key is received and stored when a memory device is replaced and / or installed, and when a software update or upgrade is performed on the device, a new memory device is installed, and / or any other suitable process configured to establish an encryption system in the device of the building equipment. According to an exemplary embodiment, the device of the building equipment receives the encrypted access code (e.g., via a user of the user device) and decrypts the encrypted access code to allow the user to access a predetermined set of functions of the device.
[0050] Building HVAC systems and building management systems
[0051] Reference now Figures 1 to 5 , according to some embodiments, several building management systems (BMS) and HVAC systems are shown in which the systems and methods of the present disclosure may be implemented. In a brief overview, Figure 1 A building 10 equipped with an HVAC system 100 is shown. Figure 2 is a block diagram of a waterside system 200 that may be used to serve a building 10 . Figure 3 is a block diagram of an airside system 300 that may be used to serve a building 10 . Figure 4 is a block diagram of a BMS that can be used to monitor and control a building 10 . Figure 5 is a block diagram of another BMS that may be used to monitor and control the building 10 .
[0052] Buildings and HVAC Systems
[0053] Specifically refer to Figure 1 , showing a perspective view of a building 10. The building 10 is served by a BMS. A BMS is generally a system of devices configured to control, monitor, and manage equipment in or around a building or building area. A BMS may include, for example, an HVAC system, a security system, a lighting system, a fire alarm system, any other system capable of managing building functions or devices, or any combination thereof.
[0054] The BMS serving the building 10 includes an HVAC system 100. The HVAC system 100 may include a plurality of HVAC devices (e.g., heaters, chillers, air handling units, pumps, fans, thermal energy storage devices, etc.) configured to provide heating, cooling, ventilation, or other services to the building 10. By way of example, the HVAC system 100 is shown to include a water side system 120 and an air side system 130. The water side system 120 may provide a heating or cooling fluid to the air handling unit of the air side system 130. The air side system 130 may use the heating or cooling fluid to heat or cool the airflow provided to the building 10. Reference Figures 2 to 3 Exemplary waterside and airside systems that may be used in HVAC system 100 are described in greater detail.
[0055] HVAC system 100 is shown to include chiller 102, boiler 104, and rooftop air handling unit (AHU) 106. Waterside system 120 may use boiler 104 and chiller 102 to heat or cool a working fluid (e.g., water, glycol, etc.) and may circulate the working fluid to AHU 106. In various embodiments, HVAC devices of waterside system 120 may be located in or around building 10 (e.g., Figure 1 ), or located at an off-site location such as a central plant (e.g., a chiller plant, a steam plant, a heat generating plant, etc.). Depending on whether heating or cooling is required in the building 10, the working fluid can be heated in the boiler 104 or cooled in the chiller 102. The boiler 104 can add heat to the circulating fluid, for example, by burning a combustible material (e.g., natural gas) or using an electric heating element. The chiller 102 can place the circulating fluid in a heat exchange relationship with another fluid (e.g., a refrigerant) in a heat exchanger (e.g., an evaporator) to absorb heat from the circulating fluid. The working fluid from the chiller 102 and / or the boiler 104 can be delivered to the AHU 106 via a line 108.
[0056] The AHU 106 can place the working fluid in heat exchange relationship with an airflow passing through the AHU 106 (e.g., through one or more stages of cooling coils and / or heating coils). For example, the airflow can be outdoor air, return air from within the building 10, or a combination of both. The AHU 106 can transfer heat between the airflow and the working fluid to provide heating or cooling to the airflow. For example, the AHU 106 can include one or more fans or blowers configured to pass the airflow through or through a heat exchanger containing the working fluid. The working fluid can then be returned to the chiller 102 or boiler 104 via line 110.
[0057] The air side system 130 can deliver the airflow supplied by the AHU 106 (i.e., supply airflow) to the building 10 through the supply duct 112, and can provide the return air from the building 10 to the AHU 106 through the return duct 114. In some embodiments, the air side system 130 includes a plurality of variable air volume (VAV) units 116. For example, the air side system 130 is shown as including a separate VAV unit 116 on each floor or zone of the building 10. The VAV unit 116 may include a damper or other flow control element that can operate to control the amount of supply airflow provided to each zone of the building 10. In other embodiments, the air side system 130 (e.g., via the supply duct 112) delivers the supply airflow to one or more zones of the building 10 without using an intermediate VAV unit 116 or other flow control element. The AHU 106 may include various sensors (e.g., temperature sensors, pressure sensors, etc.) configured to measure properties of the supply airflow. The AHU 106 may receive input from sensors located within the AHU 106 and / or within a building zone, and may adjust the flow rate, temperature, or other properties of the supply airflow through the AHU 106 to achieve a set point condition for the building zone.
[0058] Water side system
[0059] Reference now Figure 2 , a block diagram of a waterside system 200 is shown, according to some embodiments. In various embodiments, the waterside system 200 can supplement or replace the waterside system 120 in the HVAC system 100, or can be implemented separately from the HVAC system 100. When implemented in the HVAC system 100, the waterside system 200 can include a subset of the HVAC devices in the HVAC system 100 (e.g., boiler 104, chiller 102, pumps, valves, etc.), and can be operated to supply heated or cooled fluid to the AHU 106. The HVAC devices of the waterside system 200 can be located within the building 10 (e.g., as components of the waterside system 120), or located at an off-site location such as a central facility.
[0060] exist Figure 2, the water side system 200 is shown as a central device having a plurality of sub-devices 202-212. The sub-devices 202-212 are shown to include a heater sub-device 202, a heat recovery chiller sub-device 204, a chiller sub-device 206, a cooling tower sub-device 208, a high temperature thermal energy storage (TES) sub-device 210, and a low temperature thermal energy storage (TES) sub-device 212. The sub-devices 202-212 consume resources (e.g., water, natural gas, electricity, etc.) of a utility to serve the thermal energy loads (e.g., hot water, cold water, heating, cooling, etc.) of a building or campus. For example, the heater sub-device 202 can be configured to heat water in a hot water loop 214 that circulates hot water between the heater sub-device 202 and the building 10. The chiller sub-device 206 can be configured to cool water in a cold water loop 216 that circulates cold water between the chiller sub-device 206 and the building 10. The heat recovery chiller sub-unit 204 can be configured to transfer heat from the chilled water loop 216 to the hot water loop 214 to provide additional heating for the hot water and additional cooling for the chilled water. The condenser water loop 218 can absorb heat from the chilled water in the chiller sub-unit 206 and reject the absorbed heat in the cooling tower sub-unit 208 or transfer the absorbed heat to the hot water loop 214. The high temperature TES sub-unit 210 and the low temperature TES sub-unit 212 can store high temperature thermal energy and low temperature thermal energy, respectively, for subsequent use.
[0061] The hot water loop 214 and the cold water loop 216 can deliver heated and / or cooled water to an air handler (e.g., AHU 106) located on the roof of the building 10 or to various floors or zones (e.g., VAV units 116) of the building 10. The air handler pushes air through a heat exchanger (e.g., a heating coil or a cooling coil) through which water flows to provide heating or cooling to the air. The heated or cooled air can be delivered to various zones of the building 10 to serve the thermal load of the building 10. The water then returns to the sub-equipment 202-212 to receive further heating or cooling.
[0062] Although the sub-devices 202-212 are shown and described as heating and cooling water for circulation to the building, it should be understood that any other type of working fluid (e.g., glycol, CO2, etc.) may be used to serve the thermal energy load instead of or in addition to water. In other embodiments, the sub-devices 202-212 may provide heating and / or cooling directly to the building or campus without the need for an intermediate heat transfer fluid. These and other variations of the waterside system 200 are within the teachings of the present disclosure.
[0063] Each of the sub-devices 202-212 can include a variety of devices configured to facilitate the functions of the sub-device. For example, the heater sub-device 202 is shown as including a plurality of heating elements 220 (e.g., boilers, electric heaters, etc.) configured to add heat to the hot water in the hot water loop 214. The heater sub-device 202 is also shown as including a number of pumps 222 and 224 configured to circulate the hot water in the hot water loop 214 and control the flow rate of the hot water through the individual heating elements 220. The chiller sub-device 206 is shown as including a plurality of chillers 232 configured to remove heat from the cold water in the cold water loop 216. The chiller sub-device 206 is also shown as including a number of pumps 234 and 236 configured to circulate the cold water in the cold water loop 216 and control the flow rate of the cold water through the individual chillers 232.
[0064] The heat recovery chiller sub-equipment 204 is shown to include a plurality of heat recovery heat exchangers 226 (e.g., refrigeration circuits) configured to transfer heat from the chilled water loop 216 to the hot water loop 214. The heat recovery chiller sub-equipment 204 is also shown to include a plurality of pumps 228 and 230 configured to circulate hot and / or chilled water through the heat recovery heat exchangers 226 and to control the flow rate of water through individual heat recovery heat exchangers 226. The cooling tower sub-equipment 208 is shown to include a plurality of cooling towers 238 configured to remove heat from condenser water in the condenser water loop 218. The cooling tower sub-equipment 208 is also shown to include a plurality of pumps 240 configured to circulate condenser water in the condenser water loop 218 and to control the flow rate of condenser water through individual cooling towers 238.
[0065] The high temperature TES sub-device 210 is shown to include a high temperature TES tank 242 configured to store hot water for subsequent use. The high temperature TES sub-device 210 may also include one or more pumps or valves configured to control the flow rate of hot water entering or leaving the high temperature TES tank 242. The low temperature TES sub-device 212 is shown to include a low temperature TES tank 244 configured to store cold water for subsequent use. The low temperature TES sub-device 212 may also include one or more pumps or valves configured to control the flow rate of cold water entering or leaving the low temperature TES tank 244.
[0066] In some embodiments, one or more of the pumps in the waterside system 200 (e.g., pumps 222, 224, 228, 230, 234, 236, and / or 240) or pipes in the waterside system 200 include isolation valves associated therewith. The isolation valves may be integrated with the pumps or positioned upstream or downstream of the pumps to control fluid flow in the waterside system 200. In various embodiments, the waterside system 200 may include more, fewer, or different types of devices and / or sub-equipment based on the specific configuration of the waterside system 200 and the type of loads served by the waterside system 200.
[0067] Air side system
[0068] Reference now Figure 3 , a block diagram of an air side system 300 is shown, according to some embodiments. In various embodiments, the air side system 300 can supplement or replace the air side system 130 in the HVAC system 100, or can be implemented separately from the HVAC system 100. When implemented in the HVAC system 100, the air side system 300 can include a subset of the HVAC devices in the HVAC system 100 (e.g., AHU 106, VAV unit 116, ducts 112-114, fans, dampers, etc.), and can be located in or around the building 10. The air side system 300 can operate to heat or cool the airflow provided to the building 10 using the heated or cooled fluid provided by the water side system 200.
[0069] exist Figure 3 , the air side system 300 is shown to include an economizer type air handling unit (AHU) 302. An economizer type AHU changes the amount of outside air and return air used by the air handling unit for heating or cooling. For example, the AHU 302 can receive return air 304 from a building zone 306 via a return air duct 308, and can deliver supply air 310 to the building zone 306 via a supply air duct 312. In some embodiments, the AHU 302 is a rooftop unit located on the roof of the building 10 (e.g., such as a Figure 1 304 ), or otherwise positioned to receive both return air 304 and outside air 314. The AHU 302 may be configured to operate an exhaust damper 316, a blend damper 318, and an outside air damper 320 to control the amount of outside air 314 and return air 304 that combine to form the supply air 310. Any return air 304 that does not pass through the blend damper 318 may be exhausted from the AHU 302 through the exhaust damper 316 as exhaust air 322.
[0070] Each of the dampers 316-320 may be operated by an actuator. For example, the exhaust damper 316 may be operated by an actuator 324, the blend damper 318 may be operated by an actuator 326, and the outside air damper 320 may be operated by an actuator 328. The actuators 324-328 may communicate with the AHU controller 330 via a communication link 332. The actuators 324-328 may receive control signals from the AHU controller 330 and may provide feedback signals to the AHU controller 330. The feedback signals may include, for example, an indication of a current actuator or damper position, an amount of torque or force applied by the actuator, diagnostic information (e.g., results of a diagnostic test performed by the actuators 324-328), status information, tuning information, configuration settings, calibration data, and / or other types of information or data that may be collected, stored, or used by the actuators 324-328. The AHU controller 330 may be an economizer controller configured to control the actuators 324 - 328 using one or more control algorithms (e.g., a state-based algorithm, an extremum seeking control (ESC) algorithm, a proportional-integral (PI) control algorithm, a proportional-integral-derivative (PID) control algorithm, a model predictive control (MPC) algorithm, a feedback control algorithm, etc.).
[0071] Still refer to Figure 3 , the AHU 302 is shown to include a cooling coil 334, a heating coil 336, and a fan 338 located within the supply air duct 312. The fan 338 can be configured to force the supply air 310 through the cooling coil 334 and / or the heating coil 336 and provide the supply air 310 to the building zone 306. The AHU controller 330 can communicate with the fan 338 via a communication link 340 to control the flow rate of the supply air 310. In some embodiments, the AHU controller 330 controls the amount of heating or cooling applied to the supply air 310 by adjusting the speed of the fan 338.
[0072] The cooling coil 334 may receive cooled fluid from the waterside system 200 (e.g., from the chilled water loop 216) via the conduit 342 and may return the cooled fluid to the waterside system 200 via the conduit 344. A valve 346 may be positioned along the conduit 342 or the conduit 344 to control the flow rate of the cooled fluid through the cooling coil 334. In some embodiments, the cooling coil 334 includes multiple stages of cooling coils that may be independently activated and deactivated (e.g., by the AHU controller 330, by the BMS controller 366, etc.) to adjust the amount of cooling applied to the supply air 310.
[0073] The heating coil 336 may receive heated fluid from the waterside system 200 (e.g., from the hot water loop 214) via a conduit 348 and may return heated fluid to the waterside system 200 via a conduit 350. A valve 352 may be positioned along the conduit 348 or the conduit 350 to control the flow rate of the heated fluid through the heating coil 336. In some embodiments, the heating coil 336 includes multiple stages of heating coils that may be independently activated and deactivated (e.g., by the AHU controller 330, by the BMS controller 366, etc.) to adjust the amount of heating applied to the supply air 310.
[0074] Each of the valves 346 and 352 can be controlled by an actuator. For example, valve 346 can be controlled by actuator 354, and valve 352 can be controlled by actuator 356. The actuators 354-356 can communicate with the AHU controller 330 via communication links 358-360. The actuators 354-356 can receive control signals from the AHU controller 330 and can provide feedback signals to the controller 330. In some embodiments, the AHU controller 330 receives a measurement of the supply air temperature from a temperature sensor 362 positioned in the supply air duct 312 (e.g., downstream of the cooling coil 334 and / or the heating coil 336). The AHU controller 330 can also receive a measurement of the temperature of the building zone 306 from a temperature sensor 364 located in the building zone 306.
[0075] In some embodiments, the AHU controller 330 operates the valves 346 and 352 via the actuators 354-356 to adjust the amount of heating or cooling provided to the supply air 310 (e.g., to reach a set point temperature of the supply air 310 or to maintain the temperature of the supply air 310 within a set point temperature range). The position of the valves 346 and 352 affects the amount of heating or cooling provided to the supply air 310 by the cooling coil 334 or the heating coil 336 and can be related to the amount of energy consumed to achieve the desired supply air temperature. The AHU 330 can control the temperature of the supply air 310 and / or the building zone 306 by activating or deactivating the coils 334-336, adjusting the speed of the fan 338, or a combination of both.
[0076] Still refer to Figure 3, the airside system 300 is shown to include a building management system (BMS) controller 366 and a client device 368. The BMS controller 366 may include one or more computer systems (e.g., servers, supervisory controllers, subsystem controllers, etc.) that act as a system-level controller, application or data server, head node, or master controller for the airside system 300, the waterside system 200, the HVAC system 100, and / or other controllable systems serving the building 10. The BMS controller 366 may communicate with multiple downstream building systems or subsystems (e.g., the HVAC system 100, security system, lighting system, waterside system 200, etc.) via a communication link 370 according to similar or different protocols (e.g., LON, BACnet, etc.). In various embodiments, the AHU controller 330 and the BMS controller 366 may be separate (e.g., Figure 3 In an integrated embodiment, the AHU controller 330 may be a software module configured for execution by a processor of the BMS controller 366.
[0077] In some embodiments, the AHU controller 330 receives information (e.g., commands, set points, operating boundaries, etc.) from the BMS controller 366 and provides information (e.g., temperature measurements, valve or actuator positions, operating status, diagnostics, etc.) to the BMS controller 366. For example, the AHU controller 330 may provide the BMS controller 366 with temperature measurements from the temperature sensors 362-364, equipment on / off status, equipment operating capabilities, and / or any other information that may be used by the BMS controller 366 to monitor or control variable states or conditions within the building zone 306.
[0078] The client device 368 may include one or more human-machine interfaces or client interfaces (e.g., graphical user interfaces, reporting interfaces, text-based computer interfaces, client-oriented web services, web servers that serve pages to web clients, etc.) for controlling, viewing, or otherwise interacting with the HVAC system 100, its subsystems, and / or devices. The client device 368 may be a computer workstation, a client terminal, a remote or local interface, or any other type of user interface device. The client device 368 may be a fixed terminal or a mobile device. For example, the client device 368 may be a desktop computer, a computer server with a user interface, a laptop computer, a tablet computer, a smart phone, a PDA, or any other type of mobile or non-mobile device. The client device 368 may communicate with the BMS controller 366 and / or the AHU controller 330 via a communication link 372.
[0079] Building Management System
[0080] Reference now Figure 4 , a block diagram of a building management system (BMS) 400 is shown, according to some embodiments. The BMS 400 can be implemented in a building 10 to automatically monitor and control various building functions. The BMS 400 is shown to include a BMS controller 366 and a plurality of building subsystems 428. The building subsystems 428 are shown to include a building electrical subsystem 434, an information and communication technology (ICT) subsystem 436, a security subsystem 438, an HVAC subsystem 440, a lighting subsystem 442, an elevator / escalator subsystem 432, and a fire safety subsystem 430. In various embodiments, the building subsystems 428 may include fewer, additional, or alternative subsystems. For example, the building subsystems 428 may additionally or alternatively include a refrigeration subsystem, an advertising or signage subsystem, a cooking subsystem, a vending subsystem, a printer or copy service subsystem, or any other type of building subsystem that uses controllable devices and / or sensors to monitor or control the building 10. In some embodiments, the building subsystem 428 includes the waterside system 200 and / or the airside system 300, as shown in FIG. Figures 2 to 3 as described.
[0081] Each of the building subsystems 428 may include any number of devices, controllers, and connections for performing its respective functions and control activities. The HVAC subsystem 440 may include many of the same components as the HVAC system 100, as described with reference to FIG. Figures 1 to 3 As described. For example, HVAC subsystem 440 may include chillers, boilers, any number of air handling units, economizers, field controllers, supervisory controllers, actuators, temperature sensors, and other devices for controlling temperature, humidity, airflow, or other variable conditions within building 10. Lighting subsystem 442 may include any number of lighting fixtures, ballasts, lighting sensors, dimmers, or other devices configured to controllably adjust the amount of light provided to a building space. Security subsystem 438 may include occupancy sensors, video surveillance cameras, digital video recorders, video processing servers, intrusion detection devices, access control devices and servers, or other security-related devices.
[0082] Still refer to Figure 4, the BMS controller 366 is shown to include a communication interface 407 and a BMS interface 409. The interface 407 can facilitate communication between the BMS controller 366 and external applications (e.g., monitoring and reporting applications 422, enterprise control applications 426, remote systems and applications 444, applications resident on client devices 448, etc.) to allow a user to control, monitor, and adjust the BMS controller 366 and / or subsystems 428. The interface 407 can also facilitate communication between the BMS controller 366 and client devices 448. The BMS interface 409 can facilitate communication between the BMS controller 366 and building subsystems 428 (e.g., HVAC, lighting security, elevators, power distribution, enterprise, etc.).
[0083] Interfaces 407, 409 may be or include wired or wireless communication interfaces (e.g., sockets, antennas, transmitters, receivers, transceivers, wire connectors, etc.) for data communication with building subsystems 428 or other external systems or devices. In various embodiments, communication via interfaces 407, 409 may be direct (e.g., local wired or wireless communication) or via a communication network 446 (e.g., WAN, Internet, cellular network, etc.). For example, interfaces 407, 409 may include an Ethernet card and port for sending and receiving data via an Ethernet-based communication link or network. In another example, interfaces 407, 409 may include a Wi-Fi transceiver for communicating via a wireless communication network. In another example, one or both of interfaces 407, 409 may include a cellular or mobile phone communication transceiver. In one embodiment, communication interface 407 is a power line communication interface, and BMS interface 409 is an Ethernet interface. In other embodiments, both communication interface 407 and BMS interface 409 are Ethernet interfaces or the same Ethernet interface.
[0084] Still refer to Figure 4 , the BMS controller 366 is shown to include a processing circuit 404, which includes a processor 406 and a memory 408. The processing circuit 404 can be communicatively connected to a BMS interface 409 and / or a communication interface 407, so that the processing circuit 404 and its various components can send and receive data via the interfaces 407, 409. The processor 406 can be implemented as a general-purpose processor, an application-specific integrated circuit (ASIC), one or more field-programmable gate arrays (FPGAs), a group of processing components, or other suitable electronic processing components.
[0085] Memory 408 (e.g., memory, memory unit, storage device, etc.) may include one or more devices (e.g., RAM, ROM, flash memory, hard disk storage, etc.) for storing data and / or computer code for completing or facilitating the various processes, layers, and modules described in this application. Memory 408 may be or include volatile memory or non-volatile memory. Memory 408 may include a database component, an object code component, a script component, or any other type of information structure for supporting the various activities and information structures described in this disclosure. According to some embodiments, memory 408 is communicatively connected to processor 406 via processing circuit 404 and includes computer code for executing (e.g., by processing circuit 404 and / or processor 406) one or more processes described herein.
[0086] In some embodiments, the BMS controller 366 is implemented in a single computer (e.g., one server, one house, etc.). In various other embodiments, the BMS controller 366 may be distributed across multiple servers or computers (e.g., may exist in distributed locations). Figure 4 The applications 422 and 426 are shown as existing external to the BMS controller 366 , but in some embodiments, the applications 422 and 426 may be hosted within the BMS controller 366 (eg, within the memory 408 ).
[0087] Still refer to Figure 4 , the memory 408 is shown to include an enterprise integration layer 410, an automated measurement and verification (AM&V) layer 412, a demand response (DR) layer 414, a fault detection and diagnostics (FDD) layer 416, an integrated control layer 418, and a building subsystem integration layer 420. The layers 410-420 may be configured to receive inputs from the building subsystems 428 and other data sources, determine optimal control actions for the building subsystems 428 based on the inputs, generate control signals based on the optimal control actions, and provide the generated control signals to the building subsystems 428. The following paragraphs describe some of the common functions performed by each of the layers 410-420 in the BMS 400.
[0088] The enterprise integration layer 410 can be configured to provide information and services to clients or local applications to support a variety of enterprise-level applications. For example, the enterprise control application 426 can be configured to provide subsystem spanning control to a graphical user interface (GUI) or to any number of enterprise-level business applications (e.g., billing system, user identification system, etc.). The enterprise control application 426 can additionally or alternatively be configured to provide a configuration GUI for configuring the BMS controller 366. In yet other embodiments, the enterprise control application 426 can work with the layers 410-420 to optimize building performance (e.g., efficiency, energy usage, comfort, or safety) based on input received at the interface 407 and / or the BMS interface 409.
[0089] The building subsystem integration layer 420 may be configured to manage communications between the BMS controller 366 and the building subsystems 428. For example, the building subsystem integration layer 420 may receive sensor data and input signals from the building subsystems 428 and provide output data and control signals to the building subsystems 428. The building subsystem integration layer 420 may also be configured to manage communications between the building subsystems 428. The building subsystem integration layer 420 translates communications (e.g., sensor data, input signals, output signals, etc.) across multiple multi-vendor / multi-protocol systems.
[0090] The demand response layer 414 can be configured to optimize resource usage (e.g., electricity usage, natural gas usage, water usage, etc.) and / or the monetary cost of such resource usage in response to meeting the needs of the building 10. The optimization can be based on time-of-use prices, curtailment signals, energy availability, or other data received from a utility provider, a distributed energy generation system 424, from an energy storage device 427 (e.g., a high temperature TES 242, a low temperature TES 244, etc.), or from other sources. The demand response layer 414 can receive inputs from other layers of the BMS controller 366 (e.g., a building subsystem integration layer 420, an integrated control layer 418, etc.). The inputs received from other layers can include environmental or sensor inputs, such as temperature, carbon dioxide levels, relative humidity levels, air quality sensor outputs, occupancy sensor outputs, room schedules, etc. The inputs can also include inputs such as electricity usage (e.g., expressed in kWh), heat load measurements, pricing information, scheduled pricing, smoothed pricing, curtailment signals from utilities, and the like.
[0091] According to some embodiments, the demand response layer 414 includes control logic for responding to the data and signals it receives. These responses may include communicating with control algorithms in the integrated control layer 418, changing control strategies, changing set points, or activating / deactivating building equipment or subsystems in a controlled manner. The demand response layer 414 may also include control logic configured to determine when to utilize stored energy. For example, the demand response layer 414 may determine to use energy from the energy storage device 427 just before the peak usage period begins.
[0092] In some embodiments, the demand response layer 414 includes control modules configured to proactively initiate control actions (e.g., automatically change set points) based on one or more demand-indicative or demand-based inputs (e.g., prices, curtailment signals, demand levels, etc.), which can minimize energy costs. In some embodiments, the demand response layer 414 uses equipment models to determine optimal sets of control actions. Equipment models can include, for example, thermodynamic models that describe inputs, outputs, and / or functions performed by various sets of building equipment. Equipment models can represent collections of building equipment (e.g., sub-equipment, arrays of chillers, etc.) or individual devices (e.g., individual chillers, heaters, pumps, etc.).
[0093] The demand response layer 414 may further include or utilize one or more demand response policy definitions (e.g., a database, XML file, etc.). The policy definitions may be edited or adjusted by a user (e.g., via a graphical user interface) so that control actions initiated in response to a demand input may be customized for the user's application, desired comfort level, specific building equipment, or based on other issues. For example, a demand response policy definition may specify which equipment may be turned on or off in response to a particular demand input, how long a system or equipment should be off, which set points may be changed, what is the allowable set point adjustment range, how long to maintain a high demand set point before returning to a normally scheduled set point, how close to a capacity limit, which equipment modes to utilize, energy transfer rates (e.g., maximum rate, alarm rate, other rate boundary information, etc.), access to and from energy storage devices (e.g., thermal storage tanks, battery banks, etc.), and when to schedule on-site power generation (e.g., via fuel cells, electric generator sets, etc.).
[0094] The integrated control layer 418 may be configured to use data inputs or outputs from the building subsystem integration layer 420 and / or the demand response layer 414 to make control decisions. Due to the subsystem integration provided by the building subsystem integration layer 420, the integrated control layer 418 may integrate the control activities of the subsystems 428 so that the subsystems 428 behave as a single integrated super system. In some embodiments, the integrated control layer 418 includes control logic that uses inputs and outputs from multiple building subsystems to provide a higher level of comfort and energy savings than a single subsystem could provide on its own. For example, the integrated control layer 418 may be configured to use inputs from a first subsystem to make energy saving control decisions for a second subsystem. The results of these decisions may be communicated back to the building subsystem integration layer 420.
[0095] The integrated control layer 418 is shown as being logically located below the demand response layer 414. The integrated control layer 418 can be configured to enhance the effectiveness of the demand response layer 414 by enabling the building subsystems 428 and their respective control loops to be controlled in coordination with the demand response layer 414. This configuration can advantageously reduce disruptive demand response behavior relative to conventional systems. For example, the integrated control layer 418 can be configured to ensure that a demand response-driven upward adjustment to the set point of the chilled water temperature (or another component that directly or indirectly affects the temperature) does not result in an increase in fan energy (or other energy used to cool the space) that would cause the total building energy use to be greater than the energy saved by the chillers.
[0096] The integrated control layer 418 may be configured to provide feedback to the demand response layer 414 so that the demand response layer 414 checks whether constraints (e.g., temperature, lighting levels, etc.) are properly maintained even when required load shedding is in progress. Constraints may also include set points or sensed boundaries related to safety, equipment operating limits and performance, comfort, fire codes, electrical codes, energy codes, etc. The integrated control layer 418 is also logically below the fault detection and diagnostics layer 416 and the automated measurement and verification layer 412. The integrated control layer 418 may be configured to provide calculated inputs (e.g., aggregates) to these higher levels based on outputs from more than one building subsystem.
[0097] The automated measurement and verification (AM&V) layer 412 can be configured to verify that the control strategies commanded by the integrated control layer 418 or the demand response layer 414 are operating properly (e.g., using data aggregated by the AM&V layer 412, the integrated control layer 418, the building subsystem integration layer 420, the FDD layer 416, or other layers). The calculations performed by the AM&V layer 412 can be based on the building system energy model and / or equipment models for individual BMS devices or subsystems. For example, the AM&V layer 412 can compare the model predicted output with the actual output of the building subsystem 428 to determine the accuracy of the model.
[0098] The fault detection and diagnostics (FDD) layer 416 may be configured to provide continuous fault detection for the building subsystems 428, building subsystem devices (i.e., building equipment), and control algorithms used by the demand response layer 414 and the integrated control layer 418. The FDD layer 416 may receive data inputs from the integrated control layer 418, directly from one or more building subsystems or devices, or from another data source. The FDD layer 416 may automatically diagnose and respond to detected faults. Responses to detected or diagnosed faults may include providing a warning message to a user, a maintenance scheduling system, or a control algorithm configured to attempt to repair the fault or resolve the fault.
[0099] The FDD layer 416 may be configured to use the detailed subsystem inputs available at the building subsystem integration layer 420 to output a specific identification of a faulty component or a cause of a fault (e.g., a loose damper linkage). In other exemplary embodiments, the FDD layer 416 is configured to provide a "fault" event to the integrated control layer 418, which executes control strategies and policies in response to the received fault event. According to some embodiments, the FDD layer 416 (or strategies executed by an integrated control engine or business rules engine) may shut down a system or direct control activities around a faulty device or system to reduce energy waste, extend equipment life, or ensure an appropriate control response.
[0100] The FDD layer 416 can be configured to store or access a variety of different system data repositories (or data points of live data). The FDD layer 416 can use some of the contents of the data repository to identify faults at the equipment level (e.g., a specific chiller, a specific AHU, a specific terminal unit, etc.) and use other contents to identify faults at the component or subsystem level. For example, the building subsystem 428 can generate temporal (i.e., time series) data indicating the performance of the BMS 400 and its various components. The data generated by the building subsystem 428 can include measured or calculated values that exhibit statistical properties and provide information about how the corresponding system or process (e.g., a temperature control process, a flow control process, etc.) performs based on errors from its set points. These processes can be checked by the FDD layer 416 to expose when the system begins to degrade in performance and alert the user to repair the fault before it becomes more serious.
[0101] Reference now Figure 5 , according to some embodiments, a block diagram of another building management system (BMS) 500 is shown. The BMS 500 can be used to monitor and control devices of the HVAC system 100, the water side system 200, the air side system 300, the building subsystem 428, and other types of BMS devices (e.g., lighting devices, security devices, etc.) and / or HVAC equipment.
[0102] The BMS 500 provides a system architecture that facilitates automatic device discovery and device model distribution. Device discovery can occur across multiple different communication buses (e.g., system bus 554, zone buses 556-560 and 564, sensor / actuator bus 566, etc.) and across multiple different communication protocols at multiple layers of the BMS 500. In some embodiments, device discovery is accomplished using a valid node table that provides status information for devices connected to each communication bus. For example, new devices on each communication bus can be monitored by monitoring the corresponding valid node table of the new node. When a new device is detected, the BMS 500 can begin interacting with the new device (e.g., sending control signals, using data from the device) without user interaction.
[0103] Some devices in the BMS 500 present themselves to the network using device models. The device model defines device object properties, view definitions, schedules, trends, and associated BACnet value objects (e.g., analog values, binary values, multi-state values, etc.) for integration with other systems. Some devices in the BMS 500 store their own device models. Other devices in the BMS 500 have device models stored externally (e.g., within other devices). For example, the zone coordinator 508 may store a device model for the bypass damper 528. In some embodiments, the zone coordinator 508 automatically creates a device model for the bypass damper 528 or other devices on the zone bus 558. Other zone coordinators may also create device models for devices connected to their zone buses. Device models for devices may be automatically created based on the type of data points exposed by the device on the zone bus, the device type, and / or other device attributes. Several examples of automatic device discovery and device model distribution are discussed in more detail below.
[0104] Still refer to Figure 5 , the BMS 500 is shown to include a system manager 502; a number of zone coordinators 506, 508, 510, and 518; and a plurality of sub-region controllers 524, 530, 532, 536, 548, and 550. The system manager 502 can monitor data points in the BMS 500 and report the monitored variables to various monitoring and / or control applications. The system manager 502 can communicate with a client device 504 (e.g., a user device, a desktop computer, a laptop computer, a mobile device, etc.) via a data communication link 574 (e.g., BACnet IP, Ethernet, wired or wireless communication, etc.). The system manager 502 can provide a user interface to the client device 504 via the data communication link 574. The user interface can allow a user to monitor and / or control the BMS 500 via the client device 504.
[0105] In some embodiments, the system manager 502 is connected to the zone coordinators 506-510 and 518 via a system bus 554. The system manager 502 can be configured to communicate with the zone coordinators 506-510 and 518 via the system bus 554 using a master-slave token passing (MSTP) protocol or any other communication protocol. The system bus 554 can also connect the system manager 502 with other devices such as constant capacity (CV) rooftop units (RTUs) 512, input / output modules (IOMs) 514, thermostat controllers 516 (e.g., TEC5000 series thermostat controllers), and network automation engines (NAEs) or third-party controllers 520. The RTU 512 can be configured to communicate directly with the system manager 502 and can be directly connected to the system bus 554. Other RTUs can communicate with the system manager 502 via intermediate devices. For example, a wired input 562 can connect a third-party RTU 542 to a thermostat controller 516, which is connected to the system bus 554.
[0106] The system manager 502 can provide a user interface for any device that has a device model. Devices such as the partition coordinators 506-510 and 518 and the thermostat controller 516 can provide their device models to the system manager 502 via the system bus 554. In some embodiments, the system manager 502 automatically creates device models for connected devices (e.g., IOM 514, third-party controller 520, etc.) that do not have device models. For example, the system manager 502 can create a device model for any device in response to a device tree request. The device model created by the system manager 502 can be stored within the system manager 502. The system manager 502 can then use the device model created by the system manager 502 to provide a user interface for devices that do not have their own device models. In some embodiments, the system manager 502 stores a view definition for each type of device connected via the system bus 554 and uses the stored view definition to generate a user interface for the device.
[0107] Each zone coordinator 506-510 and 518 can be connected to one or more of the zone controllers 524, 530-532, 536 and 548-550 via the zone buses 556, 558, 560 and 564. The zone coordinators 506-510 and 518 can communicate with the zone controllers 524, 530-532, 536 and 548-550 via the zone buses 556-560 and 564 using the MSTP protocol or any other communication protocol. The zone buses 556-560 and 564 can also connect the zone coordinators 506-510 and 518 with other types of devices such as variable air volume (VAV) RTUs 522 and 540, conversion bypass (COBP) RTUs 526 and 552, bypass dampers 528 and 546, and peak controllers 534 and 544.
[0108] The zone coordinators 506-510 and 518 may be configured to monitor and command various zone systems. In some embodiments, each zone coordinator 506-510 and 518 monitors and commands a separate zone system and is connected to the zone systems via a separate zone bus. For example, the zone coordinator 506 may be connected to the VAV RTU 522 and the zone controller 524 via a zone bus 556. The zone coordinator 508 may be connected to the COBP RTU 526, the bypass damper 528, the COBP zone controller 530, and the VAV zone controller 532 via a zone bus 558. The zone coordinator 510 may be connected to the peak controller 534 and the VAV zone controller 536 via a zone bus 560. The zone coordinator 518 may be connected to the peak controller 544, the bypass damper 546, the COBP zone controller 548, and the VAV zone controller 550 via a zone bus 564.
[0109] A single model of the zone coordinators 506-510 and 518 can be configured to handle a variety of different types of zoning systems (e.g., VAV zoning systems, COBP zoning systems, etc.). Each zoning system may include an RTU, one or more zoning controllers, and / or bypass dampers. For example, the zone coordinators 506 and 510 are shown as Verasys VAV Engines (VVEs) connected to VAV RTUs 522 and 540, respectively. The zone coordinator 506 is directly connected to the VAV RTU 522 via the zone bus 556, while the zone coordinator 510 is connected to the third party VAV RTU 540 via a wired input 568 provided to the peak controller 534. The zone coordinators 508 and 518 are shown as Verasys COBP Engines (VCEs) connected to COBP RTUs 526 and 552, respectively. The zone coordinator 508 is directly connected to the COBP RTU 526 via the zone bus 558 , while the zone coordinator 518 is connected to the third party COBP RTU 552 via a wired input 570 provided to the peak controller 544 .
[0110] The zone controllers 524, 530-532, 536, and 548-550 may communicate with various BMS devices (e.g., sensors, actuators, etc.) via a sensor / actuator (SA) bus. For example, the VAV zone controller 536 is shown connected to the networked sensor 538 via the SA bus 566. The zone controller 536 may communicate with the networked sensor 538 using the MSTP protocol or any other communication protocol. Although Figure 5 Only one SA bus 566 is shown, but it should be understood that each zone controller 524, 530-532, 536 and 548-550 can be connected to a different SA bus. Each SA bus can connect the zone controller with various sensors (e.g., temperature sensors, humidity sensors, pressure sensors, light sensors, occupancy sensors, etc.), actuators (e.g., damper actuators, valve actuators, etc.) and / or other types of controllable devices (e.g., refrigerators, heaters, fans, pumps, etc.).
[0111] Each zone controller 524, 530-532, 536 and 548-550 can be configured to monitor and control different building zones. The partition controllers 524, 530-532, 536 and 548-550 can use inputs and outputs provided via their SA bus to monitor and control each building partition. For example, the partition controller 536 can use the temperature input (e.g., the measured temperature of the building partition) received from the networked sensor 538 via the SA bus 566 as feedback in the temperature control algorithm. The partition controllers 524, 530-532, 536 and 548-550 can use various types of control algorithms (e.g., state-based algorithms, extreme value search control (ESC) algorithms, proportional-integral (PI) control algorithms, proportional-integral-differential (PID) control algorithms, model predictive control (MPC) algorithms, feedback control algorithms, etc.) to control variable states or conditions (e.g., temperature, humidity, airflow, lighting, etc.) in or around the building 10.
[0112] Access Management System with Access Manager Platform
[0113] Reference now Figure 6 , a block diagram of an access management system 600 is shown, according to an exemplary embodiment. The access management system 600 is shown to include an access manager platform 602, a user device 604 having a user interface 606, and a device (hereinafter referred to as "device 608") of a building device having a device interface 610. The access management system 600 may also include one or more building management systems (e.g., BMS 400), a network 612, and a storage system 614 having an entity access database 616. As will be discussed in more detail below, the access manager platform 602 may be configured to receive an access request from an entity to access a device, determine an access level of the entity based on the access request, generate an access code indicating the access level of the entity, and send the access code to allow access to a functional set of the device.
[0114] As used herein, the terms "access," "device access," "access to devices of building equipment," and similar terms refer to the ability of an entity to monitor and / or control the functionality of devices of building equipment. In an exemplary embodiment, an entity accesses devices of building equipment via a device interface (e.g., a control panel) of the devices of building equipment. In addition, access may allow an entity to monitor and / or control various functions of a device of building equipment or devices of multiple building equipment. For example, access may allow an entity (e.g., a user) to navigate a device interface and view data displayed on the interface, modify set points required to operate a device, modify standard operating features or functions of a device, and / or perform maintenance on a device.
[0115] According to an exemplary embodiment, the access manager platform 602 is configured to communicate with other components of the access management system 600. For example, the access manager platform 602 can communicate with the user device 604 (e.g., via the user interface 606, the network 612, etc.). In some embodiments, the access manager platform 602 is configured to communicate with the device 608 (e.g., via the device interface 610, etc.), the components of the BMS 400 (e.g., the subsystems 430-440, etc.), the storage system 614, and / or any other device or system of the access management system 600.
[0116] like Figure 6 As shown in , the access manager platform 602 is configured to communicate with a user device 604 (e.g., via a network 612). The user device 604 may include one or more human-machine interfaces or client interfaces, shown as a user interface 606 (e.g., a graphical user interface, a report interface, a text-based computer interface, a client-oriented web service, a web server that provides pages to a web client, etc.) for controlling, viewing, and / or otherwise interacting with the access manager platform 602. The user device 604 may be a mobile device or a fixed terminal. For example, the user device 604 may be a smart phone, a tablet computer, a PDA, a laptop computer, a desktop computer, a computer workstation, a client terminal, a computer server with an interface, a remote interface, or a local interface, and / or any other type of mobile user interface device or non-mobile user interface device.
[0117] In some embodiments, the access manager platform 602 is configured to communicate with a device 608. Similar to the user device 604, the device 608 may include one or more human-machine interfaces or client interfaces, shown as a device interface 610 for controlling, viewing, and / or otherwise interacting with the device 608. According to an exemplary embodiment, the device 608 is a chiller (e.g., a chiller of the BMS 400, BMS 500, and / or another suitable building management system). In some embodiments, the device 608 is another device of the HVAC system (e.g., a heater, an air handling unit, a pump, a fan, a thermal energy storage device, etc., and / or another device configured to provide heating, cooling, ventilation, or other services for a building). In other embodiments, the device 608 is a device of an energy generation and / or storage system, a security system, a lighting system, a fire alarm system, and / or any other system capable of managing building functions or devices or any combination thereof. In yet other embodiments, the device 608 is an Internet of Things (IoT) device capable of communicating with the access manager platform 602.
[0118] In some embodiments, the access manager platform 602 is also configured to communicate with components of one or more building management systems (e.g., BMS 400, BMS 500, etc.). For example, the access manager platform 602 can communicate with components of subsystems 430-440, BMS controller 366, memory 408, and / or another component of BMS 400. The access manager platform 602 can also communicate with the system manager 502 and / or another component of the BMS 500. In other embodiments, the access manager platform 602 is configured to communicate with another device and / or system of another suitable building management system.
[0119] In other embodiments, the access manager platform 602 is also configured to communicate directly or indirectly (e.g., via the user device 604, the device 608, etc.) with a storage system 614 (e.g., having an entity access database 616). The storage system 614 may include one or more devices (e.g., RAM, ROM, flash memory, hard disk storage, etc.) for storing data and / or computer code for completing and / or facilitating the various processes, layers, and modules described herein. The storage system 614 may be or include volatile memory or non-volatile memory, and may include database components, object code components, script components, and / or any other type of information structure for supporting the various activities and information structures described herein.
[0120] According to an exemplary embodiment, and as will be discussed in more detail below, the access manager platform 602 is also configured to generate data. For example, the access manager platform 602 may include components that receive, analyze, process, generate, store, and / or transmit data (e.g., a device identification module, an entity access module, an access level module, an access profile database, an access security module, an access request analyzer, a code generator, an access database, etc.). The data generated by the access manager platform 602 may be analyzed, processed, stored, etc. along with data received from other data sources described above. In addition, the access manager platform 602 may transmit the data generated by the access manager platform 602, such as to initiate an automatic action of one or more components of the access management system 600 (e.g., providing an access code to the user device 604, granting access to the device 608, granting access to a predetermined set of functions of the device 608, controlling a device of the BMS 400, etc.).
[0121] Access Manager Platform
[0122] Reference now Figure 7, a block diagram illustrating an access manager platform 602 is shown in more detail, according to an exemplary embodiment. As described above, the access manager platform 602 can be configured to receive an access request from an entity to access a device, determine an access level of the entity based on the access request, generate an access code indicating the access level of the entity, and send the access code to allow access to a functional set of the device. According to an exemplary embodiment, the access manager platform 602 receives an access request from a user device 604 (e.g., via a user interface 606), the access request indicating a device 608 to which access is requested and an identity of the entity requesting access. The access manager platform 602 can also be configured to determine the access level of the entity from a plurality of access profiles stored in an access profile database based on the identity of the device 608 and the entity, and generate an encrypted access code indicating the access level of the entity. In addition, the access manager platform 602 can send the encrypted access code to the user device 604 (e.g., via a user interface 606), and when the access code is entered at the device 608, the user device 604 authorizes access to the device 608. In this regard, the access manager platform 602 may receive the access request, analyze the access request, and provide an encrypted access code that grants an entity (eg, via the user device 604 ) access to a set of functionality of the device 608 .
[0123] like Figure 7 As shown in , the access manager platform 602 is communicatively connected to a user device 604 (e.g., via a user interface 606), a device 608 (e.g., via a device interface 610), and the BMS 400. According to an exemplary embodiment, the access manager platform 602 is configured to communicatively connect the user device 604 and the device 608 so that the access manager platform 602 allows the user device 604 and / or the device 608 to interact without being part of a connected network (e.g., network 612). In some embodiments, the access manager platform 602 is communicatively connected to the network 612, the storage system 614, and / or other suitable systems and / or devices. It should be understood that some or all of the components of the access manager platform 602, the user device 604, the device 608, the BMS 400, etc. can be implemented as part of a cloud-based computing system that is configured to receive, process, and / or transmit data from one or more external devices or sources. Similarly, some or all of the components of the access manager platform 602, user devices 604, devices 608, BMS 400, etc. may be implemented within a single device, or distributed across multiple separate systems or devices. In some embodiments, some or all of the components of the access manager platform 602 are components of a subsystem level controller, an equipment controller, a device controller, a site controller, a computer workstation, a client device, and / or another system or device that receives, processes, and / or transmits data to / from a device or other data source.
[0124] The access manager platform 602 is shown to include a communication interface 702 and a processing circuit 704 having a processor 706 and a memory 708 (e.g., having an access manager module 710). The communication interface 702 may include a wired communication interface or a wireless communication interface (e.g., a jack, antenna, transmitter, receiver, transceiver, wiring terminal, etc.) for transmitting data between the access manager platform 602 and an external system or device (e.g., BMS 400, user device 604, device 608, etc.). In some embodiments, the communication interface 702 facilitates communication between the access manager platform 602 and external applications (e.g., remote systems and applications) to allow remote entities or users to control, monitor and / or adjust components of the access manager platform 602. Communication via the communication interface 702 may be direct (e.g., local wired or wireless communication) or via a network 612 (e.g., WAN, Internet, cellular network, etc.). In addition, the communication interface 702 can be configured to communicate with external systems and / or devices using any of a variety of communication protocols (e.g., HTTP, WebSocket, CoAP, MQTT, etc.), industrial control protocols (e.g., MTConnect, OPC, OPC-UA, etc.), process automation protocols (e.g., HART, Profibus, etc.), home automation protocols, and / or any of a variety of other protocols. Advantageously, the access manager platform 602 can obtain, ingest, and process data from any type of system or device, regardless of the communication protocol used by the system or device.
[0125] According to an exemplary embodiment, the access manager platform 602 communicates with the user device 604 and / or another external device or system (e.g., via the communication interface 702, the network 612, etc.). For example, the access manager platform 602 can receive entity access data from the user device 604, which entity access data can include data received via the user interface 606 (e.g., data entered via a user). As will be discussed in more detail below, the access manager platform 602 can receive entity access data, which entity access data can include device data, entity data, access level data, security data, and / or any other suitable data related to device access of an entity. The access manager platform 602 can be further configured to store, process, and / or transmit information related to the entity access data to other components of the access management system 600, as discussed below.
[0126] In an exemplary embodiment, the access manager platform 602 receives an access request (e.g., access request data) from a user device 604 (e.g., via a user interface 606). For example, the access manager platform 602 may receive an access request that includes device data of a device requested to be accessed and entity data of an entity requesting access. According to an exemplary embodiment, the access manager platform 602 is further configured to process, store, and / or transmit information related to the access request to other components of the access management system 600. For example, the access manager platform 602 may process the access request, and / or generate and transmit an encrypted access code to the user device 604, which, when the encrypted access code is entered, can be used to access the device. In this regard, the access manager platform 602 may receive an access request (e.g., including device identification data and entity data), process and store the access request, and transmit an encrypted access code that can be used by the entity to access the device, as discussed below.
[0127] like Figure 7 As shown in , in some embodiments, the access manager platform 602 is also configured to communicate with the device 608, components of the BMS 400, and / or a storage system 614. The storage system 614 is shown as including an entity access database 616, which can receive, store, and / or transmit data related to device access of an entity or user. For example, the entity access database can receive, store, and / or transmit device data, entity data, access level data, security data, access request data, device access data, and / or any other suitable data related to device access of an entity.
[0128] Still refer to Figure 7, the access manager platform 602 is generally shown as including a processing circuit 704 having a processor 706 and a memory 708. Although shown as a single component, it should be understood that the access manager platform 602 may include one or more processing circuits, which include one or more processors and memory. In some embodiments, the access manager platform 602 includes multiple processors, memories, interfaces, and other components distributed across multiple devices or systems that are communicatively coupled. For example, in a cloud-based or distributed implementation, the access manager platform 602 may include multiple discrete computing devices, each of which includes a processor 706, a memory 708, a communication interface 702, and / or other communicatively coupled components of the access manager platform 602. The tasks performed by the access manager platform 602 may be distributed across multiple systems or devices, which may be located within a single building or facility, or distributed across multiple buildings or facilities. In other embodiments, the access manager platform 602 itself is implemented within a single computer (e.g., a server, a house, etc.). All such implementations are contemplated herein.
[0129] The processor 706 may be a general or special purpose processor, an application specific integrated circuit (ASIC), one or more field programmable gate arrays (FPGA), a group of processing components or other suitable processing components. The processor 706 may be further configured to execute computer codes or instructions stored in the memory 708 or received from other computer readable media (e.g., CDROM, network storage device, remote server, etc.).
[0130] The memory 708 may include one or more devices (e.g., memory cells, memory devices, storage devices, etc.) for storing data and / or computer code for completing and / or facilitating the various processes described in the present disclosure. The memory 708 may include random access memory (RAM), read-only memory (ROM), hard drive storage, temporary storage, non-volatile memory, flash memory, optical storage, or any other suitable memory for storing software objects and / or computer instructions. In some embodiments, the memory 708 includes a database component, an object code component, a script component, and / or any other type of information structure for supporting various activities and information structures described in the present disclosure. The memory 708 may be communicatively connected to the processor 706 via the processing circuit 704, and may include computer code for executing (e.g., by the processor 706) one or more processes described herein. When the processor 706 executes instructions stored in the memory 708, the processor 706 may generally configure the processing circuit 704 to complete such activities.
[0131] Still refer to Figure 7, the access manager platform 602 (e.g., the access manager module 710) is shown to include a device identification module 720, an entity access module 724, an access level module 728, an access profile database 732, an access security module 736, an access request analyzer 740, a code generator 744, and an access database 750. As described above, the access manager module 710 (e.g., components 720-744) can receive entity access data from the user device 604 (e.g., via the user interface 606) and / or another suitable device or system (e.g., the storage system 614, etc.). The entity access data may include, for example, device data, entity data, access level data, security data, and / or any other suitable data related to device access of an entity. In some embodiments, the access manager module 710 (e.g., components 720-744) is configured to store, process, modify, and / or transmit entity access data, such as for additional processing. In an exemplary embodiment, access manager module 710 (eg, components 720 - 744 ) also receives access requests, processes the access requests, and generates and transmits an encrypted access code that can be used to access a device.
[0132] According to an exemplary embodiment, the device identification module 720 is configured to receive device data. The device data may include a unique device identification code (e.g., device 608), multiple unique identification codes for each of a plurality of devices, characteristics of a device or multiple devices (e.g., year, brand, model, device configuration, component part, component part configuration, etc.), characteristics of device components or parts (e.g., motor, condenser, pump, heat exchanger, software, security key, etc.), and / or other suitable data related to a device and / or multiple devices. In an exemplary embodiment, the device identification module 720 is configured to store device data related to one or more devices and / or transmit the device data to one or more components of the access manager module 710, such as for additional processing.
[0133] In an exemplary embodiment, the entity access module 724 is configured to receive entity data. The entity data may include entity identification information (e.g., name, entity type, user name, entity email address, size, one or more locations, etc.), entity-level passwords and / or other entity-level information (e.g., entity-level email addresses, one or more entity access levels, number of users, etc.). The entity data may also include user identification information (e.g., user name, name, email address, phone number, address, etc.), user passwords and / or other user information (e.g., position, user qualifications, one or more user access levels, work location, etc.). In some embodiments, the entity data includes temporary user identification information (e.g., temporary user name, name, email address, phone number), temporary user passwords and / or other temporary user information (e.g., entity name, position, temporary user qualifications, one or more temporary user access levels, etc.). In this regard, an entity, owner (e.g., device owner) or other user of a user device may be permitted to grant different levels of access to a device or multiple devices to different entities (e.g., based on the entity data), as discussed below. In an exemplary embodiment, the entity access module 724 stores entity data associated with an entity and / or multiple entities and a user and / or multiple users. In some embodiments, the entity access module 724 also transmits the entity data to one or more components of the access manager module 710, such as for additional processing.
[0134] In an exemplary embodiment, the access level module 728 is configured to receive access level data. The access level data may include a functional set of one or more devices that an entity and / or user or users can access. For example, a first access level may allow a user to navigate a device interface and view data displayed on the interface. A second access level may allow a user to modify set points required to operate a device (e.g., start / stop a device, reset a warning indicator, clear a device fault indicator, etc.). A third access level may allow a user to modify standard operating features of a device (e.g., adjust motor lubricant settings, enable motor monitoring, enable or disable harmonic filtering, define condenser pressure thresholds, clear scheduled maintenance warnings, etc.). A fourth access level may allow a user to perform maintenance on a device (e.g., repair a device component, replace a device component, tune and / or modify a component, etc.). In some embodiments, the access level data includes a functional set of one or more devices that an entity, user, and / or third party can access. For example, another access level may allow a technician or service representative to view data related to a device (e.g., historical data on device usage, maintenance, etc.). In an exemplary embodiment, the access level module 728 also stores access level data associated with the access level or levels and / or communicates the access level data to one or more components of the access manager module 710, such as for additional processing.
[0135] In an exemplary embodiment, the access profile database 732 is configured to receive device data, entity data, and / or access level data. For example, the access profile database 732 may receive device data from the device identification module 720, entity data from the entity access module 724, and / or access level data from the access level module 728. In an exemplary embodiment, the access profile database 732 also generates and / or stores access profiles that represent the access level (or levels) available to a particular entity and / or user on a device (or devices). For example, the access profile database 732 may generate and store a view access profile that represents that a user with an entity-level identification (e.g., an entity-level email address) may obtain a first level of access (e.g., view and navigate device interfaces) on multiple devices (e.g., a refrigerator). In some embodiments, the access profile database 732 generates and stores a standard access profile indicating that a user with an entity-level identification and password (e.g., a device owner, entity manager or operator, etc.) can obtain a second level of access (e.g., modify set points to operate the device) on multiple devices (e.g., refrigerators). In other embodiments, the access profile database 732 generates and stores an enhanced access profile indicating that a user with a specified username and password (e.g., based on the user's device ownership, position, qualifications, training, etc.) can obtain a third level of access (e.g., modify standard operating features of the device) on the device (e.g., refrigerator). In still other embodiments, the access profile database 732 generates and stores a service access profile indicating that a user with an entity-level identification and a specified username and / or password (e.g., an entity-level technician with qualifications, training, etc.) can obtain a fourth level of access (e.g., repair and / or replace component parts) on the device (e.g., refrigerator). It should be understood that although view access profiles, standard access profiles, enhanced access profiles, and service access profiles are described herein, the access profile database 732 may generate and / or store any number of access profiles involving any suitable combination of device data, entity data, and / or access level data.
[0136] In an exemplary embodiment, the access security module 736 is configured to receive security data. In an exemplary embodiment, the security data includes access code start times and / or lockouts, password lockouts, incorrect password access delays, access warning indicators, automatic and / or manual lockouts or timeouts, etc. for one or more devices. In some embodiments, the security data includes entity-level access restrictions, user restrictions, username and / or password lockouts, etc. In other embodiments, the security data includes access level failures, failure thresholds, warning indicators, and / or any other suitable security data related to devices, entities or users and / or access levels. In an exemplary embodiment, the access security module 736 stores the security data and / or transmits the security data to one or more components of the access manager module 710, such as for additional processing.
[0137] As described above, in an exemplary embodiment, the access manager module 710 is also configured to receive an access request, for example, from the user device 604 (e.g., via the user interface 606) and / or another suitable device or system (e.g., the storage system 614, etc.). In an exemplary embodiment, the access request analyzer 740 receives an access request that includes device data related to the device to which access is requested and entity data related to the entity requesting access. For example, the access request may include a device identification code (e.g., of the device 608) and an entity-level identification (e.g., an entity-level email of a user of the user device 604). In some embodiments, the access request includes a device identification code having specific characteristics (e.g., a specific model of the device 608) and user identification information (e.g., a username and / or password of a user of the user device 604). According to an exemplary embodiment, the access request analyzer 740 is also configured to receive and / or store a plurality of access profiles, for example, from the access profile database 732. As described above, multiple access profiles may include device data, entity data, and / or access level data, such that an access profile represents an access level or levels of access available on a device or devices of an entity or user.
[0138] In an exemplary embodiment, the access request analyzer 740 is also configured to process access requests and / or transmit access data or access profiles. According to an exemplary embodiment, the access request analyzer 740 receives an access request, compares the access request with a plurality of access profiles, and determines an access level based on the access request. More specifically, the access request analyzer 740 may receive an access request (e.g., including device data and entity data) and a plurality of access profiles (e.g., including a combination of device, entity, and access level data). The access request analyzer 740 may compare the device data and entity data of the access request with the device data and entity data of the plurality of access profiles. Based on the comparison, the access request analyzer 740 may determine one or more access levels of an entity (or user) associated with the entity data to a device (or multiple devices) associated with the device data. The access request analyzer 740 may further transmit the access request data and the determined access level (e.g., in the form of access data) to other components of the access manager module 710, such as for additional processing. In some embodiments, the access request analyzer 740 is configured to compare the access request data with a plurality of access profiles and determine an access profile associated with the device data and entity data of the access request. The access request analyzer 740 may further transmit the determined access profile to other components of the access manager module 710, e.g., for additional processing. In other embodiments, the access request analyzer 740 stores the access data and / or the access profile, e.g., for use in subsequent access requests and / or additional processing.
[0139] As an illustrative example, the access request analyzer 740 may receive an access request that includes a device identification code (e.g., of the device 608) and an entity-level identification (e.g., an entity-level email of a user of the user device 604). The access request analyzer 740 may also receive a plurality of access profiles, each of which has a combination of device data, entity data, and access level data. In an exemplary embodiment, the access request analyzer 740 compares the device identification code and the entity-level identification with the plurality of access profiles (e.g., the device data and entity data of each access profile). Based on the comparison, the access request analyzer 740 may determine, for example, that the entity-level identification (e.g., the entity-level email) has a first level of access (e.g., viewing access) to the device 608. The access request analyzer 740 may further transmit the device identification code, the entity-level identification, and the determined access level (e.g., in the form of access data) to other components of the access manager module 710. In some embodiments, the access request analyzer 740 compares the device identification code and the entity level identification with multiple access profiles and determines the access profile associated with the device identification code and the entity level identification based on the comparison. The access request analyzer 740 can further transmit the determined access profile to other components of the access manager module.
[0140] In an exemplary embodiment, the code generator 744 is configured to receive data from components of the access manager module 710 and / or other devices or systems. For example, the code generator 744 may receive access data (e.g., device data, entity data, and access level data) from the access request analyzer 740, and / or receive a determined access profile from the access request analyzer 740, as described above. In some embodiments, the code generator 744 also receives security data from the access security module 736, access profile data from the access profile database 732, and / or any other suitable data related to device access of an entity or user, an access request, a device, an entity or user, and / or one or more access levels.
[0141] According to an exemplary embodiment, the code generator 744 is also configured to generate and / or transmit an access code that can be used to access the device. In an exemplary embodiment, the access code is an encrypted access code that is transmitted to the user device 604 and represents the access level of an entity or user of the user device 604 to one or more devices (e.g., device 608). In this regard, when the access code is entered at the device, the access code can allow the entity or user to access a predetermined set of functions on one or more devices. The access code may include security features or settings, such as access code start time and / or timeout, access code or device lock, maximum access code attempt failure, and / or any other suitable security features for ensuring proper access. The access code may also include other data related to the device, entity or user and / or access level (e.g., unique code identifier, device serial number, unique entity identifier, access level code, etc.). According to an exemplary embodiment, the encrypted access code is a 12-digit alphanumeric code; however, in other embodiments, the access code is another suitable code and / or has any suitable length (e.g., 10, 25, 36, etc.). As will be discussed in more detail below, when a user enters an encrypted access code at a device, the device may decrypt the encrypted access code (eg, via a security key) to allow the user access to a predetermined set of functionality of the device corresponding to the user's access level.
[0142] As an illustrative example, the code generator 744 may receive access data (e.g., an identification code of the device 608, an entity-level identification, and first-level access data) and / or security data (e.g., an access code timeout) from a component of the access manager module 710. The code generator 744 may process the data, generate an encrypted access code (e.g., including the identification code, the entity-level identification, the first-level access data, and the access code timeout), and transmit the encrypted access code to the user device 604. When the encrypted access code is entered at the device 608, the device 608 may decrypt the access code and allow, for example, the user to navigate the interface of the device 608 within a predetermined timeout period. As another illustrative example, the code generator 744 may receive an enhanced access profile (e.g., an identification code of the device 608, a specified user name and / or password, and third-level access data) and / or security data (e.g., an access code start time). The code generator 744 may process the data, generate an encrypted access code, and transmit the encrypted access code to the user device 604. When the encrypted access code is entered at device 608, device 608 may decrypt the access code and allow, for example, a qualified technician to modify standard operating features of device 608 after a predetermined access start time.
[0143] In an exemplary embodiment, the code generator 744 is configured to transmit the encrypted access code to the user device 604 (e.g., via the user interface 606); however, in some embodiments, the code generator 744 transmits the encrypted access code to other devices and / or systems. For example, the code generator 744 can transmit the access code data to the access database 750. The access database 750 can be configured to receive, store and / or transmit the access code data, for example, for subsequent access code request processing. In some embodiments, the access database 750 also receives, stores and / or transmits device data (e.g., via the device identification module 720), entity data (e.g., via the entity access module 724), access level data (e.g., via the access level module 728), access profile data (e.g., via the access profile database 732), security data (e.g., via the access security module 736), access request data (e.g., via the access request analyzer 740), and / or any other suitable data related to the entity's access to the device.
[0144] User Device
[0145] Reference now Figure 8 , a block diagram illustrating a user device 604 is shown in more detail, according to an exemplary embodiment. In an exemplary embodiment, the user device 604 is configured to receive, process, store and / or transmit entity access data (e.g., via a user interface 606). The user device 604 may also receive device data, such as a device identification code, from a device (e.g., device 608). In an exemplary embodiment, the user device 604 is configured to process entity access data and / or device data, and generate an access request. The user device 604 may transmit the access request to another device or system (e.g., access manager platform 602), and / or receive an encrypted access code that allows the user to access the device 608. In some embodiments, the user device 604 is also configured to transmit the encrypted access code to another device and / or system (e.g., device 608) to allow the user to access the device 608.
[0146] The user device 604 is generally shown as including a communication interface 802 and a processing circuit 804, which has a processor 806 and a memory 808 (e.g., with a user device access module 810). The communication interface 802 may include a user interface 606, and may include a wired communication interface or a wireless communication interface for transmitting data between the user device 604 and an external system or device. Although shown as a single component, it should be understood that the user device 604 may include one or more processing circuits, which include one or more processors and memory. In some embodiments, the user device 604 includes multiple processors, memories, interfaces and other components distributed on multiple devices or systems that are communicatively coupled. As discussed above with respect to the processor 706 and / or the memory 708, the processor 806 may include any suitable processing component configured to execute a computer code or instruction stored in the memory 808, and the memory 808 may include one or more devices for storing data and / or computer code to complete and / or facilitate the various processes described herein.
[0147] like Figure 8 As shown in , the user device 604 (e.g., the user device access module 810) includes an entity identification module 820, an entity account module 824, a user account module 828, a device identification module 832, an access configuration module 836, a security module 840, an access request generator 844, and an access code module 848. As described above, the user device access module 810 (e.g., components 820-844) is configured to receive entity access data (e.g., via the user interface 606), which may include entity data, device data, access level configuration data, security data, and / or any other suitable data related to entities, devices, and / or access levels. In an exemplary embodiment, the user device access module 810 (e.g., components 820-844) also stores, processes, and / or transmits entity access data, for example, in the form of an access request. The access request may include, for example, a device identification code indicating the device 608 to which access is requested, and a user identifier indicating a user requesting access (e.g., a user of the user device 604). The user device access module 810 may further receive an encrypted access code, which may be used to access the device, as will be discussed below.
[0148] According to an exemplary embodiment, the modules 820-828 are configured to receive entity data, for example, via input from a user accessing one or more user interfaces (e.g., the user interface 606). In some embodiments, the entity data is received via input from another suitable device or system (e.g., the storage system 614, a component of the BMS 400, etc.). According to an exemplary embodiment, the entity identification module 820 receives entity data including entity identification information (e.g., entity name, entity type, entity email address, size, one or more locations, etc.). The entity account module 824 may receive entity data including entity-level usernames, entity-level passwords, and / or other entity-level information (e.g., entity-level email addresses, one or more entity access levels or number of users, etc.). In an exemplary embodiment, the user account module 828 receives entity data including user identification information (e.g., username, name, email address, phone number, address, etc.), user passwords, and / or other user information (e.g., job title, user qualifications, one or more user access levels, work location, etc.). The user account module 828 may also receive entity data including temporary user identification information, temporary user passwords, and / or other temporary user information. According to an exemplary embodiment, the modules 820 - 828 are also configured to store entity data and / or transmit entity data to the user device access module 810 and / or components of the access manager platform 602 , eg, for additional processing.
[0149] In an exemplary embodiment, the device identification module 832 is configured to receive device data, for example, via input from the user interface 606 and / or an interface of a device (e.g., the device interface 610 of the device 608). In an exemplary embodiment, the device interface 610 displays a code (e.g., a QR code, an alphanumeric code, etc.) representing the device data of the device 608. The user device 604 may obtain the code via a component of the user device (e.g., via a scan of a camera, etc.) and / or the user interface 606 (e.g., input, etc.), and the device data may be received by the device identification module 832. In some embodiments, the device data is received via input from another suitable process, device, and / or system (e.g., a proximity tag, an RFID tag, a communication from the storage system 614, a component of the BMS 400, etc.). According to an exemplary embodiment, the device data includes a unique device identification code (e.g., an identification code of the device 608); however, in other embodiments, the device data includes characteristics of the device, characteristics of a component or part of the device, other suitable data related to the device, and / or a combination thereof. According to an exemplary embodiment, the device identification module 832 is also configured to store the device data and / or transmit the device data to the user device access module 810 and / or components of the access manager platform 602, such as for additional processing.
[0150] In an exemplary embodiment, the access configuration module 836 is configured to receive access level configuration data, for example, via input from a user accessing one or more user interfaces (e.g., the user interface 606). In some embodiments, the access level configuration data is received via input from another suitable device or system (e.g., the storage system 614, a component of the BMS 400, etc.). According to an exemplary embodiment, the access level configuration data includes a set of accessible functions of a device or multiple devices at one or more defined access levels. For example, the access level configuration data may include data defining a first access level, a second access level, a third access level, a fourth access level, etc., the first access level allowing a user to navigate a device interface and view data displayed on the interface, the second access level allowing a user to modify set points required to operate the device, the third access level allowing a user to modify standard operating features of the device, and the fourth access level allowing a user to perform maintenance on the device. In an exemplary embodiment, the access configuration module 836 stores the access level configuration data and / or transmits the access level configuration data to a component of the user device access module 810 and / or the access manager platform 602, for example, for additional processing.
[0151] In an exemplary embodiment, the security module 840 is configured to receive security data, for example, via input from a user accessing one or more user interfaces (e.g., the user interface 606). In some embodiments, the security data is received via input from another suitable device or system (e.g., the storage system 614, a component of the BMS 400, etc.). According to an exemplary embodiment, the security data includes access code start times and / or timeouts, password lockouts, incorrect password access delays, access warning indicators, automatic and / or manual lockouts or timeouts, etc. for one or more devices. The security data may also include entity-level access restrictions, user restrictions, username and / or password lockouts, and access level faults, fault thresholds, warning indications, and / or any other suitable security data related to devices, entities or users and / or access levels. In an exemplary embodiment, the security module 840 stores the security data and / or transmits the security data to the user device access module 810 and / or components of the access manager platform 602, for example, for additional processing.
[0152] According to an exemplary embodiment, the access request generator 844 is configured to receive data from the components of the user device access module 810 and generate an access request. As described above, the access request may include entity data related to the entity requesting access and device data related to the device for which access is requested. In an exemplary embodiment, the access request generator 844 receives entity data from modules 820-828, such as entity-level emails, usernames and / or passwords, usernames and / or entity passwords, etc. associated with users of the user device 604. The access request generator 844 may also receive device data from the device identification module 832, such as device identification codes (e.g., device identification codes of the device 608), device identification codes and device characteristics (e.g., brand, model, etc.), etc. According to an exemplary embodiment, the access request generator 844 generates an access request including entity data and device data, such as usernames and entity passwords of users of the user device 604 and device identification codes of the device 608. The access request generator 844 may transmit the access request to the user device access module 810 and / or other components of the access manager platform 602, as described above. In other embodiments, the access request generator 844 generates an access request that includes other suitable data (eg, data received from a component of the user device access module 810, etc.).
[0153] In an exemplary embodiment, the access code module 848 is also configured to receive an encrypted access code that can be used to access the device. The access code module 848 can receive the encrypted access code from the access manager platform 602 (as described above) and / or another suitable device or system (e.g., storage system 614, etc.). According to an exemplary embodiment, the access code module 848 receives the encrypted access code when the user device 604 is disconnected from the Internet and / or the network (e.g., via Bluetooth, etc.). In other embodiments, the access code module 848 receives the encrypted access code when the user device 604 is connected to a communication network (e.g., the Internet, WiFi, network 612, etc.). According to an exemplary embodiment, the access code module 848 stores the encrypted access code and / or transmits the encrypted access code to other components of the user device 604 (e.g., user interface 606) (e.g., to display the device interface to the user, etc.) and / or the communication interface 802 (e.g., for communication with other devices and / or systems). At this point, the access code module 848 is configured to receive and transmit the encrypted access code to allow the user to access a predetermined set of functions on the device.
[0154] Building equipment installations
[0155] Reference now Fig. 9, a block diagram illustrating a device (e.g., device 608) of a building device is shown in more detail, according to an exemplary embodiment. In an exemplary embodiment, device 608 is configured to process, store, and / or transmit device data (e.g., via device interface 610). Device 608 may also be configured to receive a security key that may be used to decrypt an encrypted access code to allow a user to access a predetermined set of functions of device 608. In other embodiments, device 608 is configured to provide status indications to a user and / or an external device or system.
[0156] The device 608 is generally shown as including a communication interface 902 and a processing circuit 904, which has a processor 906 and a memory 908 (e.g., with a device access module 910). The communication interface 902 may include a device interface 610, and may include a wired communication interface or a wireless communication interface for transmitting data between the device 608 and an external system or device. Although shown as a single component, it should be understood that the device 608 may include one or more processing circuits, which include one or more processors and memory. In some embodiments, the device 608 includes multiple processors, memories, interfaces, and other components distributed on multiple devices or systems that are communicatively coupled. As discussed above with respect to the processor 706 and / or memory 708, the processor 906 may include any suitable processing component configured to execute computer code or instructions stored in the memory 908, and the memory 908 may include one or more devices for storing data and / or computer code to complete and / or facilitate the various processes described herein.
[0157] like Fig. 9 As shown in , the device 608 (e.g., the device access module 910) includes a device module 920, a security key module 924, an access code verifier 928, an access code decryption module 932, an access level function module 936, a device access database 940, and an access status generator 944. As described above, the device access module 910 (e.g., components 920-944) is configured to process and store device data, and can transmit the device data to an external system or device (e.g., via the device interface 610). In an exemplary embodiment, the device access module 910 (e.g., components 920-944) receives a security key that is used to decrypt an encrypted access code to allow a user to access the functional set of the device 608. The device access module 910 (e.g., components 920-944) can also provide an access status indication, for example, to a user of the device 608.
[0158] In an exemplary embodiment, the device module 920 is configured to process and store device data. As described above, the device data may include a unique device identification code (e.g., an alphanumeric code, a serial number, etc.) of the device 608, characteristics of the device 608 (e.g., year, brand, model, device configuration, component part, component part configuration, etc.), characteristics of the components or parts of the device (e.g., motor, condenser, pump, heat exchanger, software, security key, etc.), and / or other suitable data related to the device 608 (e.g., historical data on device use, maintenance, etc.), or any combination thereof. According to an exemplary embodiment, the device module 920 is also configured to transmit the device data to the components of the device 608. For example, the device module 920 may transmit the device identification code to the device interface 610, and the device interface 610 may display the code to an external device or system (e.g., as a QR code, an alphanumeric code, etc.). As described above, the user may obtain the device identification code (e.g., by scanning or entering the code via the user interface 606) so that the user may use the device identification code to identify the device 608. In other embodiments, device module 920 is configured to communicate device data (eg, device identification code, device characteristics, etc.) to an external device or system via another suitable communication process.
[0159] In an exemplary embodiment, the security key module 924 is configured to receive, process and store security keys. The security key may include an access data file and / or a security data file, and may be part of an encryption system configured to ensure that an entity or user has secure and appropriate access to the functions of the device 608. According to an exemplary embodiment, the security key is installed in the device 608 during manufacturing (e.g., via a data file on a circuit board, microchip, etc.), and the security key module 924 receives, processes and / or stores the security key when the device 608 is debugged. In some embodiments, the security key is installed on a memory device (e.g., a circuit board, a microchip), which can be installed in the device 608 to replace the second memory device, and the security key module 924 receives, processes and stores the security key when the device 608 is upgraded or updated with software. In some embodiments, the security key is transmitted to the device 608 via a memory device (e.g., a portable data storage device, etc.), for example, by a technician, a service representative, etc., and is installed in the device 608 to replace the second memory device, as described above. In other embodiments, another device or system (e.g., access manager platform 602, storage system 614, etc.) generates a private key including an access data file and / or a security data file (e.g., of a security key), which is downloaded to a storage device (e.g., an SD card, a SIM card, a USB drive, etc.) and installed on the device 608. The security key module 924 can receive, process, and / or store the security key when installing a storage device, booting a security (e.g., encryption) system, completing a software upgrade or update, and / or any other suitable action configured to establish an encryption system in the device 608. In this regard, the security key module 924 can receive, process, and store the security key when manufacturing and / or debugging, replacing a storage device and / or software update, and / or installing a new storage device and completing a boot or upgrade process.
[0160] In some embodiments, after the security key module 924 receives, processes, and stores the security key, the access code verifier 928 is configured to receive and / or process the encrypted access code. In an exemplary embodiment, the access code verifier 928 (e.g., the device 608) is configured to receive the encrypted access code when the device 608 is not connected to (e.g., disconnected from) a communication protocol or network (e.g., via a direct connection of wired communication, wireless communication, WAN, Internet, cellular network, etc.), such as via input from a user interacting with the device interface 610. In other embodiments, the access code verifier 928 (e.g., the device 608) is configured to receive the encrypted access code when the device is connected to a direct communication network or an indirect communication network (e.g., WAN, Internet, cellular network, etc.), such as via Bluetooth or RFID communication. At this point, it should be understood that the device module 920 (e.g., device 608) can be configured to receive an encrypted access code when the device 608 is disconnected from any communication protocol and / or network (e.g., the Internet, a cellular network) and when the device module 920 (e.g., device 608) is connected to a communication protocol and / or network.
[0161] It is contemplated that the encrypted access code may be provided from the user device 604 to the device 608 of the building equipment in a variety of ways. For example, in one embodiment, the user may read the encrypted access code (e.g., an alphanumeric string) via the user interface 606 of the user device 604 and manually enter the encrypted access code into the device interface 610 of the device 608 of the building equipment (e.g., by typing the encrypted access code into a keyboard or touch screen of the device interface 610). In another embodiment, the device 608 of the building equipment may scan or read the encrypted access code (e.g., a barcode, a QR code, RFID data, an alphanumeric string, etc.) from the user device 604 via an optical reader (e.g., a camera that reads an optical display presented on the user interface 606 of the user device 604, a printout of the encrypted access code, etc.) or other reader (e.g., an RFID reader) installed in or connected to the device 608 of the building equipment. In another embodiment, the user device 604 may electronically send the encrypted access code to the device 608 of the building equipment via an electronic communication channel between the user device 604 and the device 608 of the building equipment (e.g., Bluetooth, a Wi-Fi connection, a cable physically connecting the user device 604 and the device 608 of the building equipment, etc.). The electronic communication channel may be a direct connection between the user device 604 and the device 608 of the building equipment, or may be an indirect connection via one or more intermediaries, such as networking components (e.g., routers, network switches, etc.) of a local network (e.g., a LAN) of the building in which the device 608 of the building equipment is installed. Advantageously, the device 608 of the building equipment may receive the encrypted access code via these or other means without requiring the device 608 of the building equipment to have a network connection to an external network (e.g., the Internet, a cellular network, the network 612, etc.), which allows the device 608 of the building equipment to be disconnected or offline while still enabling the systems and methods described herein. However, in some embodiments, it is contemplated that the device 608 of the building equipment may be connected or online, as the systems and methods of the present disclosure may still operate regardless of whether the device 608 of the building equipment is connected to an external network. Throughout this disclosure, references to "entering" an encrypted access code via the device interface 610 of the device 608 of the building equipment (or similar language, such as "sending", "providing", "inputting", etc.) should be understood to cover any of a variety of ways in which an encrypted access code can be transmitted from the user device 604 to the device 608 of the building equipment.
[0162] In an exemplary embodiment, the access code includes a security protocol in the form of security data, such as an access code start time and / or lock, password lock, incorrect password access delay, access warning indicator, automatic and / or manual lock or timeout, etc. The access code verifier 928 can receive the access code, verify the access code against the security data received from the access code, and / or determine whether to grant or deny access to the device 608. In an exemplary embodiment, the access code verifier 928 is configured to determine whether the access code is valid (e.g., determine whether the decrypted access code is compatible with the security protocol and / or access protocol of the security key, security data, etc.) and / or whether it is authentic (e.g., determine whether the access code is associated, signed, etc. by the appropriate entity). If the access code verifier 928 determines that the access code is valid and authentic when evaluated according to the security protocol in the security data, the access code verifier 928 can authorize the user to access the device 608. However, if the access code verifier 928 determines that the access code is invalid or not authentic compared to the security protocol in the security data, the access code verifier 928 can deny the user access to the device 608 and / or transmit a warning, failure, and / or error (e.g., to the access status generator 944). In other embodiments, the access code verifier 928 is configured to receive and / or store a set of security protocol data (e.g., input from the user via the device interface 610, received from the storage system 614, etc.), such as an access code start time and / or lock, password lock, etc. The access code verifier 928 can receive the decrypted access code, verify the access code against the set of security protocol data, and / or determine whether to grant or deny access to the device 608, as described above.
[0163] In an exemplary embodiment, once access to the device 608 is authorized via an encrypted access code, the access code decryption module 932 is configured to receive and process the encrypted access code. As described above, the encrypted access code may be generated and / or transmitted to the user device 604 by the access manager platform 602. In other embodiments, the encrypted access code is generated and / or transmitted to another suitable device or system (e.g., storage system 614, etc.). In an exemplary embodiment, the access code decryption module 932 receives the encrypted access code via input from a user interacting with the device interface 610 (e.g., entering an alphanumeric code), communication between the user device 604 and the device 608 (e.g., user interface 606 and device interface 610, Bluetooth, RFID, etc., communication, etc.), and / or any other suitable communication protocol. In this regard, in some embodiments, the access code decryption module 932 (e.g., device 608) is configured to receive the encrypted access code when the device 608 is not connected to (e.g., disconnected from) a communication protocol or network (e.g., via a direct connection of wired communication, wireless communication, WAN, Internet, cellular network, etc.), such as via input from a user interacting with the device interface 610. In other embodiments, the access code decryption module 932 (e.g., device 608) is configured to receive the encrypted access code when the device is connected to a direct communication network or an indirect communication network (e.g., WAN, Internet, cellular network, etc.), such as via Bluetooth or RFID communication.
[0164] According to an exemplary embodiment, the access code decryption module 932 is also configured to decrypt the encrypted access code. The decrypted access code may include data related to the device 608, entity or user (e.g., user device 604), and / or access level data (e.g., a set of functions accessible on the device 608), as described below. In an exemplary embodiment, the decrypted access code data is stored and / or transmitted to other components of the device access module 910, such as for additional processing.
[0165] In an exemplary embodiment, the access level function module 936 is also configured to receive and process decrypted access code data. In an exemplary embodiment, the decrypted access code includes entity access level, user access level, entity level access restriction, user restriction, username and / or password lock, etc. In addition, the decrypted access code may include access level failure, failure threshold, warning indicator and / or any other suitable security data related to the device, entity or user and / or access level. According to an exemplary embodiment, the access level function module 936 receives the decrypted access code data, determines the set of functions of the device 608 accessible to the user based on the decrypted access code, and grants the user access to the set of functions of the device 608. In some embodiments, the decrypted access code also includes security data, such as access level start time and / or timeout limit, access level active monitor and / or inactive timeout limit, access level request and / or component modification limit, etc. In this regard, the access level functionality module 936 can evaluate the capabilities of the device 608 employed by the user, determine whether those capabilities are permissible compared to the security data, and in some cases activate automatic actions in response to that determination (e.g., denying access before a start time, automatically logging out after a predetermined time period, denying access modification requests that are not permitted, etc.).
[0166] In an exemplary embodiment, the device access database 940 is configured to receive data from the components of the device access module 910 and store the data (e.g., in the form of an access log). For example, the device access database 940 can be configured to receive and store data at each login attempt (e.g., the access code decryption module 932 receives an encrypted access code) and / or logout attempt (e.g., a user manually logs out, an automatic logout is initiated by the access level function module 936, etc.). According to an exemplary embodiment, at each login attempt, the device access database 940 receives and stores data related to the date, time, entity identification (e.g., entity-level username, username and password, etc.), access level (e.g., access level, access level restrictions, etc.), login status (e.g., valid access, access denied, maximum incorrect attempts, etc.). The device access database 940 can also receive and store additional data, such as the duration of use of the device 608, the functions performed using the device 608, function modification attempts, etc. According to an exemplary embodiment, each time a logout is attempted or initiated, the device access database 940 receives and stores data associated with the date, time, entity identification, access level, logout status (e.g., logout by inactive driver, access timeout logout, user logout, etc.). The device access database 940 may receive, store, and / or process login and / or logout data in an access log data file, which may be processed, reviewed, and / or transmitted to an external device or system (e.g., via the device interface 610). In this regard, the device 608 (e.g., the device access database 940) may monitor and store login, logout, and usage data associated with the device 608 to ensure proper and timely access to device functionality, thereby improving security and efficiency.
[0167] In an exemplary embodiment, the access status generator 944 is configured to receive data from components of the device access module 910 and / or provide indications related to the functionality and status of the device. For example, the access status generator 944 may receive errors, warnings, and / or failures from the access code decryption module 932, for example, in response to invalid login attempts (e.g., maximum attempts, login timeouts, etc.). In response, the access status generator 944 may provide an error message indicating an invalid login attempt, a warning for automatic restart, etc. (e.g., via the device interface 610). In some embodiments, the access status generator 944 receives errors, warnings, and / or failures from the access level function module 936, for example, in response to an invalid function request or an access level restriction failure. In response, the access status generator 944 may provide a warning for automatic restart, generate an automatic action to control the device 608 to return to the appropriate function setting, etc.
[0168] flow chart
[0169] Reference now Fig.10, a diagram illustrating a process 1000 of using an encrypted access code to access a device of a building device is shown, according to an exemplary embodiment. Figures 11 to 19 Provides examples Fig.10 6, device interface 610, etc.). In an exemplary embodiment, the access manager platform 602 receives and stores entity access data, the user device 604 receives and stores entity data, and the device 608 receives and stores device data. The device 608 may further receive and store a security key. According to an exemplary embodiment, the user device 604 obtains the device data via the device 608 (e.g., the device interface 610) and transmits an access request to the access manager platform 602, the request including the device identification code and the entity data. The access manager platform 602 may receive the access request, process the request, and transmit the encrypted access code to the user device 604. In an exemplary embodiment, the user (e.g., via the user device 604) provides the encrypted access code to the device 608, the device 608 receives the encrypted access code and decrypts the encrypted access code using the security key, and grants access to a predetermined set of functions of the device based on the access code.
[0170] According to an exemplary embodiment, at step 1002, the user device 604 stores entity data, the device 608 stores device data, and the access manager platform 602 stores entity access data. As described above, the entity data includes entity or user identification information, passwords, access levels, etc.; the device data includes unique device identification codes, device characteristics, device component characteristics, etc.; and the entity access data includes device data, entity data, access level data (e.g., the number of access levels, device functions of each access level, etc.) and / or security data (e.g., access code start time and / or lock, password error delay, etc.). In an exemplary embodiment, the user device 604 receives and stores entity access data via input from a user accessing the user interface 606. As Fig.11 As shown in the exemplary embodiment of , a user provides entity data (e.g., entity-level email, password, etc.) via user interface 606. In an exemplary embodiment, device data (e.g., unique device identification code, etc.) is received and stored by device 608 while device 608 is in use, at commissioning of device 608, and / or when device 608 receives a software update or upgrade. According to an exemplary embodiment, access manager platform 602 receives and stores entity access data from user device 604, for example, via input from a user accessing user interface 606. In other embodiments, access manager platform 602 receives and stores entity access data from another suitable device or system (e.g., storage system 614, etc.).
[0171] According to an exemplary embodiment, at step 1006, the access manager platform 602 stores a plurality of access profiles. As described above, an access profile combines device data, entity data, and / or access level data, and represents the access level (or levels) available to a particular entity and / or user on a device (or devices). According to an exemplary embodiment, a component of the access manager platform 602 receives entity access data, processes the data, and generates (and stores) a plurality of access profiles. For example, the access manager platform 602 may generate a first access profile that allows a user with an entity-level identification to view and navigate the device interface 610 of the device 608, a second access profile that allows a user with an entity-level identification and a password to modify set points to operate the device 608, a third access profile that allows a user with a specified username and password to modify standard operating features of the device 608, and the like. In other embodiments, the access manager platform 602 receives a plurality of access profiles from the user device 604, for example, via input from a user accessing the user interface 606, and stores the plurality of access profiles. In yet other embodiments, the access manager platform 602 receives the plurality of access profiles from another suitable device or system (eg, storage system 614, etc.).
[0172] According to an exemplary embodiment, at step 1010, the device 608 stores a security key. In an exemplary embodiment, the security key is installed in the device 608 during manufacturing and is stored in the device 608 when debugging. In some embodiments, the security key is downloaded to a memory device, the device 608 receives the memory device (e.g., to replace another memory device), and the device 608 stores the security key when the software is upgraded or updated. In other embodiments, another device (e.g., the access manager platform 602, etc.) generates a private key that is downloaded to a memory device, the memory device is installed in the device 608, and the device 608 stores the security key when the memory device is installed, the security and / or encryption software is installed, the software upgrade or update is completed, and / or any other suitable action configured to establish an encryption system in the device 608. In this regard and as described above, the device 608 can store the security key when manufacturing and / or debugging, installing a memory device with a security key (e.g., replacement, repair, etc.) and / or software update, and / or installing a new memory device and completing a startup or upgrade process.
[0173] According to an exemplary embodiment, at step 1014, the device 608 provides a device identification code. In an exemplary embodiment, the device 608 displays the device identification code on the device interface 610. Fig.12As shown in the exemplary embodiment of , the device identification code is displayed on the device interface 610 as a QR code. In other embodiments, the device identification code is displayed and / or transmitted as another suitable code (e.g., an alphanumeric code, etc.). At step 1014, the device 608 (and / or the device interface 610) can provide additional device data, such as the device identification code, characteristics of the device (e.g., brand, model, year, etc.), characteristics of components of the device (e.g., motor, heater, condenser, etc.), and / or combinations thereof.
[0174] According to an exemplary embodiment, at step 1018, user device 604 receives a device identification code of device 608. Fig.13 As shown in the exemplary embodiment of , the user device 604 receives the device identification code by scanning a QR code on the device interface 610. In other embodiments, the user device 604 receives the device identification code (e.g., an alphanumeric code) via input from a user accessing the user interface 606. In still other embodiments, the user device 604 receives the device identification code (e.g., an RFID tag, etc.) via another communication protocol between the user device 604 and the device 608.
[0175] According to an exemplary embodiment, at step 1022, the user device 604 transmits the access request to the access manager platform 602. As described above, the user device 604 stores entity data (e.g., at step 1002), which may include an entity-level email and / or password entered into the user device 604 (e.g., Fig.11 ), a username and / or entity password, a username and / or password of a user, etc. In addition, the user device 604 receives and stores device data (e.g., at step 1018), which may include a unique device identification code of the device 608, characteristics of the device 608, etc. According to an exemplary embodiment, the user device 604 generates an access request, which includes entity data associated with a user of the user device 604 requesting access and device data identifying the device 608 to which access is requested. Fig.14 As shown in the exemplary embodiment of , a user generates an access request by interacting with user interface 606, the access request including an entity-level email of a user of user device 604 and a device identification code (e.g., serial number) of device 608. In some embodiments, the user generates an access request including additional information and / or data (e.g., entity data, device data, user preferences, etc.). Fig.15As shown in the exemplary embodiment of , a user generates an access request that includes an entity-level email of a user of a user device 604, a device identification code (e.g., a serial number) of a device 608, and a desired access start time. According to an exemplary embodiment, after the user device 604 generates the access request, the access request is transmitted to the access manager platform 602.
[0176] According to an exemplary embodiment, at step 1024, the access manager platform 602 determines an access level for the entity or user based on the access request. As described above, the access manager platform 602 is configured to receive an access request from a user device 604 (e.g., at step 1022), compare the access request to a plurality of access profiles stored in the access manager platform 602 (e.g., at step 1006), and determine an access level for the entity or user requesting access to the device 608 based on the access request. For example, the access manager platform 602 may receive an access request that includes entity data (e.g., an entity-level email of a user of the user device 604) and device data (e.g., a device identification code of the device 608), and compare the entity data and device data of the access request to the entity data and device data of a plurality of profiles stored in the access manager platform 602. Based on the comparison, the access manager platform 602 determines an access level for the user of the user device 604 to the device 608. In some embodiments, based on the comparison, the access manager platform 602 determines an access profile, including an access level, associated with the user device 604 and the user of the device 608. According to an exemplary embodiment, the access manager platform 602 is also configured to process the entity data, the device data, and the determined access level (e.g., as access data) and / or the determined access profile, as discussed below.
[0177] According to an exemplary embodiment, at step 1028, the access manager platform 602 generates an encrypted access code. In an exemplary embodiment, the encrypted access code is generated using entity, device, and access level data and represents the access level of an entity or user to one or more devices. For example, the access manager platform 602 can generate an encrypted access code that represents that the user of the user device 604 has a first level of access (e.g., viewing access) to the device 608. In some embodiments, the encrypted access code is generated using additional information or data (e.g., security data) received and / or stored in the access manager platform 602. For example, the access manager platform 602 can generate an encrypted access code that represents that the user of the user device 604 has a third level of access (e.g., enhanced access) to the device 608 starting from a predetermined start time and / or an encrypted access code that grants access for a predetermined time period (e.g., 10, 30, 45, etc. minutes, 1, 3, 5, 14, etc. days, etc.). In some embodiments, the encrypted access code includes additional security protocols associated with the user of the user device 604 and / or device 608, such as an incorrect password access delay (e.g., 5, 10, 30, 60, etc. seconds), a password lockout (e.g., a maximum of 1, 3, 5, 10, etc. attempts, etc.), an invalid access request indicator (e.g., an invalid access code, an expired access code, an inactive access code, etc. indication), an access warning indicator (e.g., an automatic reset warning, etc.), an automatic lockout or inactive logout timeout (e.g., 10, 15, 30, 60, etc. minutes, etc.), etc.
[0178] According to an exemplary embodiment, at step 1032, the user device 604 receives the encrypted access code. Once the access manager platform 602 generates the encrypted access code, the access code may be transmitted to and received by the user device 604. According to an exemplary embodiment, the user device 604 receives the encrypted access code when the user device 604 is disconnected from the Internet and / or a network (e.g., via Bluetooth, etc.). In this regard, the encrypted access code may be transmitted from the access manager platform 602 and received by the user device 604 under a secure communication protocol. In other embodiments, the user device 604 receives the encrypted access code when the user device 604 is connected to a communication network (e.g., the Internet, WiFi, network 612, etc.). Fig.16 As shown in the exemplary embodiment of FIG. 6 , once the encrypted access code is received by the user device 604, the encrypted access code may be displayed to the user on the user interface 606 (e.g., as an alphanumeric code, etc.). Fig.16As shown in , the encrypted access code may include and / or be displayed together with additional information or data, such as a device identification code and / or device data (e.g., serial number, model, name), an access level of a user of the user device 604 (e.g., standard level access), an access level duration (e.g., expiration), etc.
[0179] According to an exemplary embodiment, at step 1036, the device 608 receives the encrypted access code. As described above, once the user device 604 receives the encrypted access code, the encrypted access code can be transmitted to the device 608. According to an exemplary embodiment, the encrypted access code is received by the device 608 via the device interface 610. Fig.17 As shown in the exemplary embodiment of , the device 608 receives the encrypted access code via interaction between a user of the user device 604 and the device interface 610, for example by entering an alphanumeric string representing the encrypted access code into the device interface 610. In other embodiments, the encrypted access code is received by the device 608 via another communication protocol (e.g., Bluetooth, RFID, etc. communications) between the user device 604 and / or the user interface 606 and the device 608 and / or the device interface 610. As described above, in some embodiments, the device 608 and / or the encrypted access code include a verification protocol and / or a security protocol that may be implemented when the device 608 receives the encrypted access code. For example, the device 608 (e.g., the device interface 610) may provide an incorrect password or access code warning, an incorrect password or access delay, a password or access lock, etc. As described above, the device 608 and / or the encrypted access code may be received by the device 608 via another communication protocol (e.g., Bluetooth, RFID, etc.) between the user device 604 and / or the user interface 606 and the device 608 and / or the device interface 610. Fig.18 As shown in the exemplary embodiment of , once the device 608 receives a valid and authentic encrypted access code, the device interface 610 provides a successful login indication to the user. In an exemplary embodiment, the device 608 is further configured to process and store data related to the login attempt (e.g., receiving the access code). For example, upon receiving the access code (e.g., login attempt), the device 608 can process and store data related to the date, time, entity identification (e.g., entity-level username, username and password, etc.), access level (e.g., access level, access level restrictions, etc.), login status (e.g., granted access, denied access, maximum incorrect attempts, etc.). In addition, once the device 608 is in use, the device 608 can also store the duration of use of the device 608, the functions performed using the device 608, function modification attempts, and / or any other suitable data related to the use of the device 608.
[0180] According to an exemplary embodiment, at step 1040, the device 608 decrypts the encrypted access code using a security key. As described above, the device 608 decrypts the encrypted access code using a security key, and receives and / or processes the decrypted access code data to determine the set of functions of the device 608 accessible to the user of the user device 604. For example, the decrypted access code may include baseline functions (e.g., access levels) of the device 608 accessible to the user, access level failures or restrictions of the device 608, functional modification restrictions of the device 608, etc. In addition, the decrypted access code may include security protocols related to the user device 604 and / or the user of the device 608, such as device access duration, inactive timeout duration, access level request restrictions, etc. Based on the decrypted access code, the device 608 may grant the user of the user device 604 access to the determined set of functions of the device 608 (at step 1044).
[0181] user interface
[0182] General reference Figures 11 to 18 According to an exemplary embodiment, it is shown that Fig.10 An exemplary device interface used throughout the process described in Fig.11 According to an exemplary embodiment, user device 604 is shown as including user interface 606 having a login interface. The login interface is shown as including entity login block 1102, in which the user of user device 604 enters entity data (e.g., entity-level email, password, username, password, etc.) to identify the entity or user of user device 604. In some embodiments, entity login block 1102 includes additional blocks, such as to allow the entity or user to create a new account.
[0183] Reference now Fig.12 According to an exemplary embodiment, device 608 is shown as including a device interface 610 having a device identification interface. The device identification interface is shown as including a device identifier block 1202, which is configured to display device data of device 608 to uniquely identify the device. In an exemplary embodiment, device identifier block 1202 displays the device identification code of device 608 in the form of a QR code; however, in other embodiments, device identifier block 1202 displays device data in another form (e.g., an alphanumeric code).
[0184] Reference now Fig.13 According to an exemplary embodiment, a user device 604 is shown as including a user interface 606 having a device identification interface. The device identification interface is shown as including Fig.12According to an exemplary embodiment, a component of the user device 604 (e.g., a camera, a user interface 606, etc.) is configured to obtain data from the device identifier block 1202 (e.g., scan, input, etc.) and display information on the user interface 606. For example, the user device 604 (e.g., a camera, etc.) can scan the device identifier block 1202 so that the user device 604 receives the identification code of the device 608 and / or displays the device identification code 606 as a QR code on the user interface. In other embodiments, the user of the user device 604 observes the device identifier block 1202 and enters the identification code of the device 608 displayed in the device identifier block 1202 into the user interface 606 as, for example, an alphanumeric code.
[0185] Reference now Figure 14 to Figure 15 According to an exemplary embodiment, user device 604 is shown as including user interface 606 having an access request interface. The access request interface is shown as including access request icon 1402, which can be manipulated by a user to generate an access request. According to an exemplary embodiment, the access request includes entity data (e.g., Fig.11 ), device data (e.g., Fig.13 ), and / or any other suitable data desired by the user requesting access. Figure 14 to Figure 15 As shown in FIG. 1 , the access request interface may include an access request parameter block 1404. The access request parameter block 1404 may be used to enter additional request parameters, such as an access code duration (eg, Fig.14 ), access levels (as shown in Fig.14 ), the desired access code start date (as shown in Fig.15 as shown in ) etc.
[0186] Reference now Fig.16 According to an exemplary embodiment, a user device 604 is shown to include a user interface 606 having an access code interface. The access code interface is shown to include an access code block 1602, which is configured to display an encrypted access code that can be used to access the function of the device 608. In an exemplary embodiment, the user device 604 receives an encrypted access code based on an access request (e.g., via the access manager platform 602), and the access code block 1602 displays the encrypted access code in the form of a 12-digit alphanumeric code. In other embodiments, the access code block displays the encrypted access code in another form (e.g., a QR code, etc.) and / or another length (e.g., 3, 5, 10, etc. digits).
[0187] Reference now Figure 17 to Figure 18According to an exemplary embodiment, the device 608 is shown as including a device interface 610 having a login interface. The login interface is shown as including a device login icon 1702 (eg, Fig.17 ), the user can manipulate the device login icon to start the device access (e.g., login) process. After the user manipulates the device login icon 1702, the login interface is shown as including an access code block 1802 (e.g., Fig.18 ), where a user of user device 604 enters an encrypted access code (e.g., via user interface 606 of user device 604). According to an exemplary embodiment, if the user enters an acceptable access code, the login interface indicates that the user is authorized to access the functional set of device 608.
[0188] Access Management Process
[0189] Reference now Fig.19 , according to an exemplary embodiment, a process 1900 for providing access to a device of a building equipment using an encrypted access code is shown. The process 1900 may be performed by Figures 6 to 9 The process 1900 may also be implemented using any and / or all components of the access management system 600 (e.g., via the access manager platform 602). Figures 1 to 5 It should be understood that all or part of process 1900 may be implemented by other systems, devices, or components (e.g., components of access management system 600 of access manager platform 602, etc.). It should also be understood that in some embodiments, process 1900 may be implemented using additional, different, and / or fewer steps.
[0190] According to an exemplary embodiment, process 1900 is shown as including receiving an access request to a device of a building equipment (step 1902). The access request may be received from a user device (e.g., user device 604) and / or another suitable device or system (e.g., storage system 614). According to an exemplary embodiment, the access request includes entity data and device data, and identifies the entity requesting access to the device (e.g., the user of user device 604) and the device (e.g., device 608) to which access is requested. As described above, the entity data may be provided to user device 604 via input from a user accessing user interface 606, and may include entity identification information, user identification information, temporary user identification information, and / or any other suitable data. The device data may be provided to user device 604 via communication between user device 604 and device 608 (e.g., user device 604 scanning a code or display on device interface 610), and may include a unique device identification code, device characteristics, characteristics of components of the device, and / or any combination thereof.
[0191] According to an exemplary embodiment, process 1900 is shown as also including determining an access level of the entity based on the access request (step 1904). In an exemplary embodiment, the access level of the entity is determined by comparing the access request with a plurality of access profiles stored in a database (e.g., access profile database 732 of access manager platform 602). In an exemplary embodiment, the plurality of access profiles are generated and stored by access manager platform 602 based on entity access data received from a device or system (e.g., user device 604); however, in other embodiments, the plurality of access profiles are received and stored (e.g., by access manager platform) from a device or system (e.g., user device 604). An access profile may include, for example, a combination of entity data, device data, and access level data, and may indicate an access level of an entity or user (e.g., a user of user device 604) to a device or multiple devices (e.g., device 608). The access level may indicate, for example, a set of functions (e.g., viewing, modifying set points, modifying components, repairing / replacing components, etc.) of device 608 or multiple devices that are available to the entity or user (e.g., a user of user device 604). According to an exemplary embodiment, the access request (e.g., entity data, device data, etc.) is compared to a plurality of access profiles (e.g., entity data, device data, etc. of each of a plurality of access profiles), and a level of access of the entity to the device is determined based on the comparison. For example, the access request can be compared to a plurality of access profiles, and it can be determined that a user of the user device 604 having entity-level email has a first level of access (e.g., viewing access) to the device 608.
[0192] According to an exemplary embodiment, process 1900 is shown as including generating an encrypted access code (step 1906). In an exemplary embodiment, the encrypted access code is generated using entity data, device data, and access level data (e.g., determined in step 1904) and represents the access level of an entity or user to a device or multiple devices. For example, based on the access request and the determined access level (and / or access profile), an encrypted access code can be generated that allows a user of user device 604 to have a first level of access (e.g., viewing access) to device 608. In some embodiments, the encrypted access code includes additional information or data, such as a security protocol configured to ensure proper access to device 608 by the user of user device 604 (e.g., password lock, password access delay, invalid access request indicator, access warning, automatic lock or timeout, etc.).
[0193] Process 1900 is also shown to include sending an encrypted access code to a user device to authorize access to a device of the building equipment when the code is entered. According to an exemplary embodiment, the encrypted access code is transmitted to (e.g., from the access manager platform 602) the user device 604 when the user device 604 is disconnected from the Internet and / or network (e.g., via Bluetooth). The user device 604 can receive the encrypted access code and display the access code on the user interface 606 (e.g., as an alphanumeric code, etc.). According to an exemplary embodiment, the device 608 is configured to receive the encrypted access code, verify or process the access code, and / or decrypt the access code using a security key in the device 608. The device 608 can receive the encrypted access code via the device interface 610, such as via a user entering the encrypted access code (e.g., alphanumeric code) into the device interface 610. The device 608 can verify and / or process the encrypted access code and determine whether to authorize or deny access to the device 608, as described above. In an exemplary embodiment, if access is granted, device 608 is configured to determine a set of functionality accessible to the user of user device 604 (eg, based on the decrypted access code) and authorize the user of user device 604 to access the determined set of functionality of device 608 .
[0194] Reference now Fig. 20 , according to an exemplary embodiment, a process 2000 for allowing a functional set of a device to access building equipment based on an encrypted access code is shown. The process 2000 may be performed by Figures 6 to 9 The process 2000 may also be implemented using any and / or all components of the access management system 600 (e.g., via the device 608). Figures 1 to 5 It should be understood that all or part of process 200 may be implemented by other systems, devices, or components (e.g., components of access management system 600, etc.). It should also be understood that in some embodiments, process 1900 may be implemented using additional, different, and / or fewer steps.
[0195] According to an exemplary embodiment, process 2000 is shown as including storing a security key for a device of a building equipment (step 2002). As described above, in an exemplary embodiment, the security key includes an access file and / or a security file and can be part of a cryptographic system that is configured to ensure secure and proper access to the functionality of a device (e.g., device 608) by an entity or user (e.g., a user of user device 604). According to an exemplary embodiment, the security key is installed in device 608 during manufacturing and / or stored in device 608 when the device is commissioned. In some embodiments, the security key is installed on a memory device, the memory device is installed in device 608 (e.g., to replace an existing memory device), and the security key is stored in device 608 when the software of device 608 is upgraded or updated. In other embodiments, another device or system (e.g., an access manager platform) generates a private key including an access file and / or a security file (e.g., of the security key), and the private key is installed on the memory device. The memory device may be installed in device 608 and the security key may be stored in the device when the memory device is installed, a security (e.g., encryption) system is initiated, a software upgrade or update is completed, and / or any other suitable action configured to establish an encryption system in device 608.
[0196] According to an exemplary embodiment, process 2000 is also shown as including receiving an encrypted access code (step 2004). In an exemplary embodiment, device 608 receives the encrypted access code via device interface 610. As described above, the encrypted access code may be generated by a device or system (e.g., access manager platform 602, etc.) and / or transmitted to another device or system (e.g., user device 604, user interface 606, etc.) before being received by device 608. According to an exemplary embodiment, the encrypted access code is received via a user of user device 604 entering the encrypted access code (e.g., alphanumeric code, etc.) into device interface 610. In some embodiments, upon receiving the encrypted access code, device 608 and / or the encrypted access code implements a verification and / or security protocol (e.g., installed in device 608 with a security key, programmed in device 608, included in the encrypted access code, etc.). For example, upon receiving the encrypted access code, device 608 may provide an incorrect password or access code warning, an incorrect password or access delay, a password or access lock, etc. In addition, when receiving the encrypted access code, device 608 can process and store data related to the access attempt (e.g., login attempt), such as date, time, entity identification (e.g., entity-level username, username and password of the user of user device 604, etc.), access level (e.g., access level of the user of user device 604, access level restrictions, etc.), login status (e.g., access granted, access denied, maximum incorrect attempts, etc.).
[0197] According to an exemplary embodiment, process 2000 is also shown as including decrypting the encrypted access code using a security key (step 2006). In an exemplary embodiment, device 608 decrypts the encrypted access code using the security key, and receives and / or processes the decrypted access code data to determine the set of functions of device 608 accessible to the user of user device 604. The decrypted access code data may include, for example, baseline functions (e.g., access level) of device 608 accessible to the user, access level failures or limitations of device 608, functional modification limitations of device 608, etc. In some embodiments, the decrypted access code data includes security protocols associated with user device 604 and / or the user of device 608. For example, device access duration, inactive timeout duration, access level request limitations, etc.
[0198] According to an exemplary embodiment, process 2000 is further shown to include authorizing access to a predetermined set of functions of a device of the building equipment based on the access code (step 2008). In an exemplary embodiment, based on the accessible set of functions of device 608 obtained from the decrypted access code (e.g., at step 2006) and / or the restrictions of the user of user device 604 obtained from the decrypted access code (e.g., at step 2006), device 608 is configured to authorize access to the user of user device 604. Device 608 can authorize the user to access the predetermined set of functions (e.g., access level) of the device via the encrypted access code and / or the decrypted access code data.
[0199] Configuration of the Exemplary Embodiment
[0200] The construction and arrangement of the systems and methods shown in each exemplary embodiment are illustrative only. Although only several embodiments have been described in detail in the present disclosure, multiple modifications are possible (e.g., changes in the size, dimensions, structure, shape and proportion of each element, parameter values, mounting arrangements, material use, color, orientation, etc.). For example, the position of the element may be reversed or otherwise changed, and the nature or number or position of the discrete element may be changed or changed. Therefore, all such modifications are intended to be included within the scope of the present disclosure. The order or sequence of any process or method steps may be changed or reordered according to alternative embodiments. Without departing from the scope of the present disclosure, other substitutions, modifications, changes and omissions may also be made in the design, operating conditions and arrangement of the exemplary embodiments.
[0201] The present disclosure contemplates methods, systems, and program products on any machine-readable medium for completing various operations. The embodiments of the present disclosure may be implemented using an existing computer processor, or by a dedicated computer processor for an appropriate system (for the purpose of implementing the embodiments of the present disclosure or another purpose), or by a hardwired system. Embodiments within the scope of the present disclosure include program products, which include machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media may be any available medium that can be accessed by a general-purpose or special-purpose computer or other machine with a processor. For example, this machine-readable medium may include a RAM, ROM, EPROM, EEPROM, CD-ROM or other optical disk storage device, magnetic disk storage device or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of machine-executable instructions or data structures and can be accessed by a general-purpose or special-purpose computer or other machine with a processor. The above combination is also included in the scope of machine-readable media. Machine-executable instructions include, for example, instructions and data that cause a general-purpose computer, a special-purpose computer, or a special-purpose processing machine to perform a certain function or group of functions.
[0202] Although the accompanying drawings show a specific order of method steps, the order of steps may be different from that depicted. Also, two or more steps may be performed simultaneously or partially simultaneously. Such variations will depend on the selected software and hardware systems and the designer's choice. All such variations are within the scope of the present disclosure. Similarly, software implementations may be implemented with rule-based logic and standard programming techniques for implementing other logics of various connection steps, processing steps, comparison steps, and decision steps.
[0203] In various embodiments, the steps and operations described herein can be performed on one processor or in a combination of two or more processors. For example, in some embodiments, various operations can be performed in a central server or a central server set configured to receive data from one or more devices (e.g., edge computing devices / controllers) and perform operations. In some embodiments, the operation can be performed by a local controller or computing device (e.g., edge device), such as a controller dedicated to and / or located in a particular building or part of a building. In some embodiments, the operation can be performed by a combination of one or more central or off-site computing devices / servers and one or more local controllers / computing devices. All such embodiments are expected to be within the scope of the present disclosure. In addition, unless otherwise specified, when the present disclosure relates to one or more computer-readable storage media and / or one or more controllers, such computer-readable storage media and / or one or more controllers can be implemented as one or more central servers, one or more local controllers or computing devices (e.g., edge devices), any combination thereof, or any other combination of storage media and / or controllers, regardless of the location of such devices.
Claims
1. A system for controlling access to building equipment, the system comprising: One or more memory devices having instructions stored thereon that, when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving, from a user device, an access request to access a device of building equipment, the access request indicating the device of building equipment to which access is requested and an identification of an entity requesting the access; selecting an access level for the entity from a plurality of access levels stored in an access profile database based on the identification of the entity requesting the access and a device of the building equipment for which the access is requested; generating an encrypted access code indicative of the access level of the entity; and The encrypted access code is sent to the user device in response to the access request, and when the encrypted access code is entered via a device interface of the device of the building equipment, the encrypted access code authorizes access to the device of the building equipment.
2. The system of claim 1, wherein the operations further comprise: determining a time period during which the encrypted access code will grant access to a device of the building equipment; as well as An indication of the time period is encoded into the encrypted access code, wherein after the time period has expired, the encrypted access code no longer grants access to the device of the building equipment.
3. The system of claim 1, wherein the operations further comprise: determining a time period during which the encrypted access code will grant access to a device of the building equipment; as well as An indication of the time period is encoded into the encrypted access code, wherein after the time period the encrypted access code grants access to a device of the building equipment.
4. The system of claim 1, wherein: the plurality of access levels corresponding to a plurality of different predetermined sets of functions of the devices of the building equipment to which access can be authorized; and When the encrypted access code is entered via the device interface of the device of the building equipment, the encrypted access code grants the entity access to a predetermined set of functions of the device of the building equipment corresponding to the access level.
5. The system of claim 1, wherein the plurality of access levels stored in the access profile database are provided by owners of devices of the building equipment.
6. The system of claim 1, wherein the encrypted access code is an alphanumeric code configured to be decrypted using a security key stored within a device of the building equipment.
7. The system of claim 1, wherein the encrypted access code is provided as input to the device of the building equipment via the device interface without requiring the device of the building equipment to be connected to a communications network.
8. An apparatus for building equipment, comprising: a device interface configured to receive an encrypted access code indicating an access level of an entity requesting access to a device of the building equipment; one or more memory devices storing a security key for use with a device of the building equipment and instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising: decrypting the encrypted access code using the security key to determine the level of access to a device of the building equipment by the entity indicated by the encrypted access code; as well as Access to the predetermined set of functions of the devices of the building equipment corresponding to the access level is authorized by enabling the entity to access the predetermined set of functions via the device interface.
9. The apparatus of claim 8, the operations further comprising: generating a device identification code identifying a device of the building equipment; as well as The device identification code is presented via the device interface, wherein the encrypted access code is generated based on the device identification code.
10. The device of claim 9, wherein the device identification code is presented on the device interface as a QR code.
11. The device of claim 8, the one or more memory devices storing a plurality of access levels corresponding to a plurality of different predetermined sets of functions of the devices of the building equipment to which access can be authorized; and The operations further include selecting the access level from the plurality of different predetermined sets of functions based on the encrypted access code.
12. The apparatus of claim 8, the operations further comprising: determining, based on information encoded into the encrypted access code, a time period during which the encrypted access code will grant access to a device of the building equipment; as well as After the time period has expired, the access to the device of the building equipment granted by the encrypted access code is revoked.
13. The apparatus of claim 8, the operations further comprising, in response to inputting an invalid or expired access code via the apparatus interface or in response to the encrypted access code indicating that the entity is not authorized to access the apparatus of the building equipment, denying access to the apparatus of the building equipment via the apparatus interface and providing an indication that the entity is not authorized to access the apparatus of the building equipment.
14. The apparatus of claim 8, the operations further comprising storing the encrypted access code in an access log in a database of the apparatus of building equipment.
15. A system for controlling access to building equipment, the system comprising: An access manager platform having one or more memory devices having instructions stored thereon that, when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving, from a user device, an access request to access a device of building equipment, the access request indicating the device of building equipment to which access is requested and an identification of an entity requesting the access; selecting an access level for the entity from a plurality of access levels stored in an access profile database based on the identification of the entity requesting the access and a device of the building equipment for which the access is requested; generating an encrypted access code indicative of the access level of the entity; and In response to the access request, the encrypted access code is sent to the user device, when When the encrypted access code is input into a device interface of the device of the building equipment, the encrypted access code authorizes access to the device of the building equipment; and The device of the building equipment has one or more memory devices, the one or more memory devices storing a security key and instructions, the security key is used for the device of the building equipment, the instructions, when executed by one or more processors, cause the one or more processors to perform operations, the operations comprising: decrypting the encrypted access code using the security key to determine the level of access to a device of the building equipment by the entity indicated by the encrypted access code; Access to the predetermined set of functions of the devices of the building equipment corresponding to the access level is authorized by enabling the entity to access the predetermined set of functions via the device interface.
16. The system of claim 15, the operations of the access manager platform further comprising: determining a time period during which the encrypted access code will grant access to a device of the building equipment; as well as An indication of the time period is encoded into the encrypted access code, wherein after the time period has expired, the encrypted access code no longer grants access to the device of the building equipment.
17. The system of claim 15, the operations of the access manager platform further comprising: determining a time period during which the encrypted access code will grant access to a device of the building equipment; as well as An indication of the time period is encoded into the encrypted access code, wherein after the time period the encrypted access code grants access to a device of the building equipment.
18. The system of claim 15, wherein: the plurality of access levels corresponding to a plurality of different predetermined sets of functions of the devices of the building equipment to which access can be authorized; and When the encrypted access code is entered via the device interface of the device of the building equipment, the encrypted access code grants the entity access to the plurality of different predetermined sets of functions of the device of the building equipment corresponding to the access levels.
19. The system of claim 15, wherein the plurality of access levels stored in the access profile database are provided by owners of devices of the building equipment.
20. The system of claim 15, wherein the encrypted access code is an alphanumeric code configured to be decrypted using the security key stored within a device of the building equipment.