IP Library Patent Application 18882664
Patent Application
App. No. 18/882,664

BUILDING CONTROL SYSTEM WITH BROKERING ARCHITECTURE

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
18/882,664
Filed
Sep 11, 2024
Art Unit
2118
USPC
700/28
Abstract

A distributed control system is provided by a brokering architecture. Message brokers running within multiple compute environments coordinate communication and data storage for control applications. Control applications run in one compute environment send the results to the message broker which may store the data for future calculations and/or send the data to a remote data base. Control applications may be state-less and store all information in the message brokers. Data from one environment may be sent over a message bus to other environments to be used as inputs to calculations. The distributed control system is used to provide responsive control to various building equipment.

Claims (74)

1 . A system for controlling and monitoring a building, the system comprising:

one or more input-output modules configured to send and receive messages over a network; and

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:

operating a first isolated compute environment to perform a first set of additional operations comprising:

receiving a first message comprising a current value of a variable of the building from the one or more input-output modules;

storing the current value of the variable; and

sending a second message in response to a request for the current value of the variable; and

operating a second isolated compute environment to perform a second set of additional operations comprising:

sending the request for the current value of the variable; and

performing a control calculation to determine a result based on the current value of the variable.

2 . The system of claim 1 , wherein the second set of additional operations further comprise sending a third message comprising the result to the one or more input-output modules to affect a condition of the building.

3 . The system of claim 1 , wherein storing the current value of the variable comprises:

storing the current value of the variable within the first isolated compute environment;

determining if the current value is different than a previous value of the variable; and

sending a message to store the current value in long-term storage in response to a determination that the current value is different than the previous value.

4 . The system of claim 1 , wherein the request for the current value includes a request for a previous result calculated by the control calculation.

5 . The system of claim 1 , wherein:

the first isolated compute environment is configured to run on the one or more input-output modules and the second isolated compute environment is configured to run on a first node within a computer cluster; or

the second isolated compute environment is configured to run on the one or more input-output modules and the first isolated compute environment is configured to run on a second node within the computer cluster.

6 . The system of claim 1 , wherein the first isolated compute environment stores historical values of the variable in a timeseries, wherein the first set of additional operations further comprise:

performing a quantization step on the current value;

performing an encoding step, the encoding step comprising taking a difference of time adjacent values of the timeseries to form an encoded timeseries; and

performing a bit-packing compression step on the encoded timeseries.

7 . The system of claim 1 , wherein the first isolated compute environment and the second isolated compute environment share a dictionary to compress at least one of the first message or the second message.

8 . The system of claim 7 , the operations further comprising:

collecting a sampling of messages received by either the first isolated compute environment or the second isolated compute environment;

performing a statistical analysis on the sampling of messages; and

updating the dictionary based on the statistical analysis of the sampling.

9 . The system of claim 1 , wherein at least one input-output module of the one or more input-output modules comprises:

a circuit board comprising a header electrically connected to a set of pins of an integrated circuit, the set of pins related to a feature of the at least one input-output module,

wherein the circuit board is configured to connect, via the header, to one or more of a plurality of interchangeable modules comprising additional circuit components to provide at least one instance of the feature of the integrated circuit.

10 . A system for controlling and monitoring a building, the system comprising:

one or more input-output modules configured to send and receive messages over a network; and

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 a first message comprising a current value of a variable of the building;

receiving a second message comprising a previous result of a control calculation;

performing the control calculation to determine a result based on the current value of the variable and the previous result;

sending a third message comprising the result to a storage device logically isolated from the one or more memory devices; and

sending a fourth message comprising the result to at least one input-output module of the one or more input-output modules to affect the building,

wherein the result saved in the storage device logically isolated from the one or more memory devices is used in a subsequent control calculation.

11 . The system of claim 10 , wherein the operations further comprise:

storing the current value of the variable;

determining if the current value is different than a previous value of the variable; and

sending a message to store the current value in long-term storage in response to a determination that the current value is different than the previous value.

12 . The system of claim 10 , wherein the one or more input-output modules comprise the one or more memory devices and the one or more processors.

13 . The system of claim 10 , wherein historical values of the variable are stored in a timeseries, wherein the operations further comprise:

performing a quantization step on the current value;

performing an encoding step, the encoding step comprising taking a difference of time adjacent values of the timeseries to form an encoded timeseries; and

performing a bit-packing compression step on the encoded timeseries.

14 . The system of claim 10 , wherein at least one of the first message, the second message, the third message, or the fourth message are compressed using a dictionary.

15 . The system of claim 10 , wherein the at least one input-output module of the one or more input-output modules comprises:

a circuit board comprising a header electrically connected to a set of pins of an integrated circuit, the set of pins related to a feature of the at least one input-output module,

wherein the circuit board is configured to connect, via the header, to one or more of a plurality of interchangeable modules comprising additional circuit components to provide at least one instance of the feature of the integrated circuit.

16 . A method for controlling and monitoring a building, the method comprising:

creating a plurality of isolated compute environments;

receiving a first message comprising a current value of a variable of the building;

storing, in a first isolated compute environment of the plurality of isolated compute environments, the current value of the variable;

performing, in a second isolated compute environment of the plurality of isolated compute environments, a control calculation to determine a result based on the current value of the variable;

using the result to perform an automated action that affects the building, and

sending the result from the second isolated compute environment to the first isolated compute environment causing storage of the result by the first isolated compute environment,

wherein the result stored the first isolated compute environment is used in a subsequent control calculation.

17 . The method of claim 16 , wherein performing the control calculation comprises requesting a previous result from the first isolated compute environment.

18 . The method of claim 17 , further comprising:

updating a dictionary by:

collecting a sampling of messages received by the plurality of isolated compute environments;

performing a statistical analysis on the sampling of messages; and

updating the dictionary based on the statistical analysis of the sampling; and

compressing the first message using the dictionary.

19 . The method of claim 17 , further comprising storing historical values of the variable in a timeseries;

performing a quantization step on historical values;

performing an encoding step, the encoding step comprising taking a difference of time adjacent values of the timeseries to form an encoded timeseries; and

performing a bit-packing compression step on the encoded timeseries.

20 . The method of claim 17 , wherein the first isolated compute environment is configured to run on one or more input-output modules and the second isolated compute environment is configured to run on a first node within a computer cluster; or

the second isolated compute environment is configured to run on the one or more input-output modules and the first isolated compute environment is configured to run on a second node within the computer cluster.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2025
From: PRZYBYLSKI, ANDREW J.; BURROUGHS, JOHN H.; MUELLER, JON T.; BRANDT, DANIEL; HAZELBERG, PETER J.
To: TYCO FIRE & SECURITY GMBH
Reel/Frame 069874/0052 →