A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
The present disclosure relates to translating computer language into languages that people can understand. More specifically, a controller contains a thermodynamic model of a digital space, which it can convert to a human-readable model comprising resources, spaces, sensors, etc.
Building systems are the world's most complicated systems. Even the smallest buildings easily have thousands of I/O points—or degrees of freedom. In large buildings the I/O points can exceed hundreds of thousands, and with the growth of the IoT industry, the complexity is only growing. Only once we give buildings their due respect against comparative cyberphysical systems like autonomous vehicles, Mars rovers, or industrial robotics, can we start the conversation on what we do to address the complexity.
In addition to managing this rising system complexity and evolving customer demand, there is exponential growth in the diversity of applications and use cases. We are exhausting our tools with workarounds to solve this exploding complexity. We are asked to model not only the HVAC systems, but the architectural and engineering workflow. We need more than tags, more that labels, more than interconnections. We need not only to describe hydronic and air flows between mechanical equipment, but the data flow within and between IT and IoT systems. We need to connect not only the building systems to the structural elements, but also the interconnected business systems within—whether that is the processes of occupants, logistics, manufacturing, energy, or any of the myriad services we are currently being asked to integrate with the building.
In spite of all the complexity, almost all building controls today are model-free. The model-free approach, while simple to implement, becomes quite difficult to manage and optimize as the complexity of the system increases. It also lacks the inherent self-knowledge to provide new approaches to programming, such as model-driven graphical programming, or to govern the interconnections between components and sub-system synergistics. Digital model based approaches to date have been limited in scope and specific to known models defined a-priori. They have thus lacked the ability to enable users to create complex systems of interconnected building zones by ad hoc means, use simple graphical user interfaces to define a system, or enable a thermodynamic digital system model to evolve its control optimization and commissioning over time in situ. However, even when one has developed a thermodynamic digital system model, it can be very difficult to translate the computer version into a version that can be understood by a human. If the simulation is just a black box of equations, then it is very difficult, if not impossible, to understand how computer actions map to human understandable actions.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description section. This summary does not identify required or essential features of the claimed subject matter. The innovation is defined with claims, and to the extent this Summary conflicts with the claims, the claims should prevail.
In general, some technologies described herein described methods and systems for semantic labeling analytics.
In embodiments, a system for determining and reporting building management system analytics is disclosed, the system comprising: a physical space with a controller, display screen, and devices, the controller comprising computer hardware and memory, the controller operationally able to control the devices, the computer operationally able to track the devices; a computer program in the memory configured to display, on the display screen, at least one of: state of the devices over a given time, an event associated with at least one of the devices, length of time of the event, an action associated with the event, or detail associated with the event, and wherein the controller operationally able to track the devices comprises at least one of: tracking reason for device state change, tracking state change times, tracking state change reasons, tracking device errors, tracking device error times, tracking device error resolutions, and tracking device error resolution times.
In embodiments, a digital model of the physical space comprises digital models of the devices, wherein the digital model of the physical space is operationally able to simulate devices in the digital model of the physical space from a first time to a second time, and wherein the display screen is operationally able to display simulated physical space behavior from a first time to a second time.
In embodiments, the event associated with at least one of the devices comprises: a state change associated with at least one of the devices and a state change action that is the reason for the state change.
In embodiments, the event is a priority interrupt, and wherein detail associated with the event is reason for the priority interrupt.
In embodiments, the controller is configured to display at least one device error resolution and time of the at least one device error resolution.
In embodiments, the physical space is divided into zones, and the controller is configured to display state per zone over a given time.
In embodiments, the controller is configured to display desired state and achieved state within the physical space.
In embodiments, the controller is operationally able to change a device state upon accepting user state change request.
In embodiments, other system information is control information related to device state.
In embodiments, the controller configured to display state of devices over a given time further comprises being operationally able to scroll the display screen to display a further section of time.
In embodiments, the controller configured to display state of devices over a given time further comprises the controller being operationally able to zoom the display screen to display a smaller section of the given time in greater detail.
In embodiments, the controller is wired to at least some of the devices.
In embodiments, the controller is within the physical space.
In embodiments, the digital model of the physical space uses machine learning methods utilizing historical data of the devices to simulate the devices in the digital model of the physical space from a current time to a future time.
In embodiments, a method of reporting building management system analytics is disclosed, comprising: accepting a plurality of devices in a controlled space with a plurality of associated device languages and a plurality of associated device characteristics; accepting a plurality of devices in a controlled space with a plurality of associated device languages and a plurality of associated device characteristics; translating the plurality of associated device languages to a common internal language; in the common internal language, creating a plurality of actors using the plurality of associated device characteristics; in the common internal language, labelling the plurality of actors with recognizable names; creating a program that runs the plurality of devices in the controlled space using the plurality of actors, physics equations associated with the plurality of actors, and a plurality of quanta associated with the plurality of actors; when the plurality of devices in the controlled space are running, accepting information from the plurality of devices, then translating the information from the plurality of devices into the common internal language; translating the information from the plurality of devices in the common internal language to a human-readable language; using the human-readable language to create reports; and displaying the reports on a display screen associated with the controlled space.
In embodiments, in the common internal language, physics equations are generated associated with the plurality of actors based on the the plurality of associated device characteristics; in the common internal language, a plurality of quanta are derived from the plurality of actors and at least one transport; a simulation that models the controlled space using the plurality of actors is created, the physics equations associated with the plurality of actors, and the plurality of quanta; and the program is run into a future time producing future simulation results.
In embodiments, a digital model of the controlled space is included, and wherein the simulation uses machine learning methods utilizing historical data of the plurality of devices to simulate the plurality of devices in the digital model of the controlled space from a current time to a future time.
In embodiments, a non-transitory computer readable storage medium is included, the non-transitory computer readable storage medium configured with data and instructions that upon execution by at least one processor in a controller computing system having a device attached thereto, a device interface, and predefined device models in programmable memory, the predefined device models storing instructions for creating a digital twin model of space associated with the device models, when the instructions, when executed by a processor, cause the processor to perform steps including: when a device changes state, using the digital twin model of the space to determine a reason for the device state change, and to track a time that the device state change occurred; when the device records an error, using the digital twin model of the space to determine a reason for the device error, and to track a time that the error occurred; when the device error is resolved, using the digital twin model of the space to determine details of the resolution, and tracking a resolution time of the device error; and displaying, on a display screen, at least one of: the device state change, the reason for the device state change, the reason for the device error, the time that the error occurred, the resolution reason for the device error, and the resolution time of the device error.
In embodiments, a computer-enabled method of determining and reporting analytics of a space controlled by a controller is disclosed, the computer-enabled medium using a controller with hardware and memory, the controller wired to a device, a digital twin model of the device stored in memory, the digital twin model of the device integrated into a digital twin model of the space, comprising; when the device changes state, using the digital twin model of the space to determine a reason for the device state change, and to track a time that the device state change occurred; when the device records an error, using the digital twin model of the space to determine a reason for the device error, and to track a time that the error occurred; when the device error is resolved, using the digital twin model of the space to determine details of the resolution, and tracking a resolution time of the device error; and displaying, on a display screen, at least one of: the device state change, the reason for the device state change, the reason for the device error, the time that the error occurred, the resolution reason for the device error, and the resolution time of the device error.
In embodiments, the digital twin model runs concurrently with the physical space operation.
In embodiments, the digital twin model uses machine learning methods utilizing historical data of the device to simulate the device in the digital model of the controlled space from a current time to a future time.
Non-limiting and non-exhaustive embodiments of the present embodiments are described with reference to the following FIGURES, wherein like reference numerals refer to like parts throughout the various views unless otherwise specified.
Corresponding reference characters indicate corresponding components throughout the several views of the drawings. Skilled artisans will appreciate that elements in the FIGURES are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments.
Disclosed below are representative embodiments of methods, computer-readable media, and systems having particular applicability to point mapping interfaces. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present embodiments. It will be apparent, however, to one having ordinary skill in the art that the specific detail need not be employed to practice the present embodiments. In other instances, well-known materials or methods have not been described in detail in order to avoid obscuring the present embodiments. “one embodiment”, “an embodiment”, “one example” or “an example” means that a particular feature, structure or characteristic described in connection with the embodiment or example is included in at least one embodiment of the present embodiments. Thus, appearances of the phrases “in one embodiment”, “in an embodiment”, “one example” or “an example” in various places throughout this specification are not necessarily all referring to the same embodiment or example. Modifications, additions, or omissions may be made to the systems, apparatuses, and methods described herein without departing from the scope of the disclosure. For example, the components of the systems and apparatuses may be integrated or separated. Moreover, the operations of the systems and apparatuses disclosed herein may be performed by more, fewer, or other components and the methods described may include more, fewer, or other steps. Additionally, steps may be performed in any suitable order.
In addition, it is appreciated that the figures provided herewith are for explanation purposes to persons ordinarily skilled in the art and that the drawings are not necessarily drawn to scale. Embodiments in accordance with the present embodiments may be implemented as an apparatus, method, or computer program product. Accordingly, the present embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.), or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “module” or “system.” Furthermore, the present embodiments may take the form of a computer program product embodied in any tangible medium of expression having computer-usable program code embodied in the medium.
Any combination of one or more computer-usable or computer-readable media may be utilized. For example, a computer-readable medium may include one or more of a portable computer diskette, a hard disk, a random access memory (RAM) device, a read-only memory (ROM) device, an erasable programmable read-only memory (EPROM or Flash memory) device, a portable compact disc read-only memory (CDROM), an optical storage device, and a magnetic storage device. Computer program code for carrying out operations of the present embodiments may be written in any combination of one or more programming languages.
The flowchart and block diagrams in the flow diagrams illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present embodiments. In this regard, each block in the flowchart or block diagrams may represent a segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It will also be noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, may be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. These computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having,” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a process, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, article, or apparatus.
Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present). “Program” is used broadly herein, to include applications, kernels, drivers, interrupt handlers, firmware, state machines, libraries, and other code written by programmers (who are also referred to as developers) and/or automatically generated. “Optimize” means to improve, not necessarily to perfect. For example, it may be possible to make further improvements in a program or an algorithm which has been optimized.
“Method” is used herein at times as a technical term in the computing science arts (a kind of “routine”) and also as a patent law term of art (a “process”). Those of skill will understand which meaning is intended in a particular instance, and will also understand that a given claimed process or method (in the patent law sense) may sometimes be implemented using one or more processes or methods (in the computing science sense). “Automatically” means by use of automation (e.g., general purpose computing hardware configured by software for specific operations and technical effects discussed herein), as opposed to without automation. In particular, steps performed “automatically” are not performed by hand on paper or in a person's mind, although they may be initiated by a human person or guided interactively by a human person. Automatic steps are performed with a machine in order to obtain one or more technical effects that would not be realized without the technical interactions thus provided.
Additionally, any examples or illustrations given herein are not to be regarded in any way as restrictions on, limits to, or express definitions of any term or terms with which they are utilized. Instead, these examples or illustrations are to be regarded as being described with respect to one particular embodiment and as being illustrative only. Those of ordinary skill in the art will appreciate that any term or terms with which these examples or illustrations are utilized will encompass other embodiments which may or may not be given therewith or elsewhere in the specification and all such embodiments are intended to be included within the scope of that term or terms. Language designating such nonlimiting examples and illustrations includes, but is not limited to: “for example,” “for instance,” “e.g.,” and “in one embodiment.”
The technical character of embodiments described herein will be apparent to one of ordinary skill in the art, and will also be apparent in several ways to a wide range of attentive readers. Some embodiments address technical activities that are rooted in computing technology, such as providing an interface to be able to translate the language of diverse pieces of equipment into a common language. This common language can be used to easily translate what devices are doing into human language, making assembling reports, viewing existing behavior, and, by translating back into specific device language, directing machine usage using a human-language interface. This allows reports to be created that disclose specifics about system behavior that can be used to more easily discover and fix errors that occur, fine-tune a system that allows for energy savings, for easier maintenance, etc.
With systems and methods described herein, basic portions of a building control system can be labeled such that the detailed working of systems in the building, such as HVAC systems, lighting systems, security systems, etc., can be monitored and analyzed in real time, with the monitoring able to also monitor individual components of the systems, and monitor how the individual components interact. As the building control system understood how the different portions relate to each other, accurate easy-to-understand details about the system are automatically produced. Users can answer questions such as “what happened in the past,” “how it happened,” “why it happened,” and “what will be happening in the future.” A simulation runs using a complex set of equations, but these equations need to be translated into a form that humans can understand.
In some embodiments, the series of events that make up the simulation is unwound into human terms. The underlying framework of existing and currently proposed building standards are largely semantic standards. They ask the question “what is my name?” In contrast, a true ontology that understands a building system at a deep level asks “who am I?” One is a linguistic question, the other an existential one. What is the difference? Simply put, if I know you have a “pump” in English, I can label it. If we both agree that pumps are labeled “pump” and have a format, I can tag it. If we agree on an interconnect scheme I can define a system topology. Yet for all this effort, a system still doesn't know what a “pump” actually is or what it does. And without this you can't autonomously control it, optimize it, or learn on it.
However, by defining object existentials using their underlying physics (e.g., what a chair does in physics terms which is stop an object from falling, in equation form: e.g., RForce=Gravity×Massrear), meaningful purpose in context can be imputed to specific object application and control. We here present the concept of actors. Actors are the role a piece of equipment takes in any system. A describable system has defined actors. For example, a buffer tank is a store (in this case, heat). So is a battery (electricity), a sand bed (heat), and a flash drive (data). A transport on the other hand, moves substance from one place to another. Pumps move water, fans move air, and conveyers move boxes—yet they all perform the same transport role within their respective systems.
If a system understands what actors are, it can discern the purpose of any equipment, and how to orchestrate a system. The counterpart to the actors are quanta. Quanta are the packets of substance exchanged between actors. Tools and techniques herein balance the needs of complexity with the requirements of implementation simplicity and democratizing automation to a broad set of users. As a brief overview a few of the terms and questions are discussed in greater detail. “How am I connected?” Objects in the models know what other objects are connected to them, and what such connections entail and how they are connected. The zones in a building model know what zones are around them, and how those zones thermodynamically interact with them. The equipment in an equipment model knows what equipment and other inputs are attached to them, and how they are thermodynamically connected. “Where am I located?” A building literally knows where it is physically in the world (longitude and latitude), and the building area (individual systems, subsystems and zones) know where they are in relation to the other systems, subsystems, and zones. Similarly, equipment knows where it is in a building. “What can I do?” Equipment understands its inputs and outputs. “How do I introspect?” A building area and the equipment in a model knows the information there is to know about itself, and has methods to find and report on that knowledge. This allows analytics even where there are no sensors. “How do I function?” A piece of equipment understands how it works thermodynamically, and in many other ways. For example, a piece of equipment (or its representation in a computer program) may understand specifics about itself, such as, for a given piece of equipment, any errors it throws, transfer functions, pressure, energy needs, how efficiently it is running, i/o functions it may possess, and so on. “How do I talk?” The system has protocol semantic mapping such that it understands different languages that different devices understand to communicate, e.g., Modbus, Bacnet, KNX, I/O, Lon, MS/TP, which it translates into a common language.
With reference to
The physical space 105 has a plurality of devices 155, 160 that are controlled by a controller 110. The devices may be, without limitation, resources used in HVAC systems, lighting systems, entertainment systems, security systems, irrigation systems, etc. These devices may be connected to the controller by being wired 170 directly to a device interface 185, 190 associated with the controller, or through a network connection 175. Some devices might have both a network and a wired connection.
Though only one controller 110 is shown, multiple controllers are also envisioned, which may be connected using one or more networks 175 such as wireless technology, wired technology, such as Ethernet, or combinations of the two. Multiple controllers may run using distributed computing techniques. They may also run using client-server networked technology, by clustering, by using distributed self-healing net technology, etc. The controller 110 includes computer hardware 115 which itself includes at least one processor. The controller also includes one or more computer-readable storage media 165 such as CD's; CD-ROMs, optical disks, such as DVD-ROMs; magnetic disks, such as certain types of hard drives; memory sticks, and so on. An I/O device that further comprises a display screen 125 is also included. Other types of I/O connections such as bluetooth adapters, printers, dongles, modems, keyboards, computer mice, joysticks, trackballs, scanners, graphic tablets, microphones, speakers, etc., may also be included. Memory 130 includes computer programs 150 wherein semantic labeling analytics may be implemented in whole or in part. This memory 130 can be any appropriate volatile or non-volatile storage subsystem.
The memory 130 also includes a physical space model 135. The physical space model 135 comprises a digital model (e.g., a space model 145 and/or a device model 140) of the physical space 105. The space model 145, in some embodiments, comprises a neural network that represent the individual material layers of the building, and physics equations that describe the way these layers behave in the world. These may be modeled by a neural network where the neurons are arranged spatially similarly to the material layers of the building. State information flows through the model following physical rules. An example of such a network that might be used herein is disclosed in, and hereby incorporates by reference the entirety of U.S. patent application Ser. No. 17/009,713, filed Sep. 1, 2020. In some embodiments, the space model comprises a different sort of machine learning algorithm, and/or a different sort of neural network.
The device model 140, in some embodiments, comprises a neural network that represents equipment, their connections, and outside influences on the equipment, such as weather. The neurons in the neural network have physics equations that describe equipment state change, and may be arranged spatially similarly to the locations of the modeled equipment in a physical space. Equipment neurons may also have state input(s) and state output(s), state parameters with values, allowable state parameter values, state input location data, and state output location data. The location data can be cross-referenced to the thermodynamic building model locations. These nodes inputs and outputs along with the connections between the equipment form a heterogeneous neural network. State information flows through the model following physical rules. An example of such a neural network that might be used herein is disclosed in, and hereby incorporates by reference, is the entirety of U.S. patent application Ser. No. 17/143,796, filed Jan. 7, 2021.
The physical space model may operationally be able to simulate devices (using the space model 145 and/or the device model) in the digital model of the physical space from a first time to a second time. The first time may be any time from the past to the future, and the second time may be any time that is after the first time. A display screen 125, in connection with a user interface 180 is operationally able to display simulated physical space behavior, eg., from the first time to the second time. The first time may be any time from the past to the future, and the second time may be any time that is after the first time. In an illustrative embodiment, the first time is the current time, and the second time is a future time. In another illustrative embodiment, the first time is a time 7 days ago, and the second time is a time 5 days ago.
In an embodiment, the design of the graphics utilizes the strengths of visualization to understand how variables within a system work together, effect one another, or might behave in the future. These provide, among other benefits, ease of use in viewing history, a view of expected system behavior, and an explanation for why the system is behaving as it is.
Media 165 may include non-transitory computer-readable media. Computer-readable media are any available non-transient tangible media that can be accessed within a computing environment. Non-transitory computer-readable media does not include signals. By way of example, and not limitation, with the controller computing environment, computer-readable media include memory 130, storage (not shown), communication media, and combinations of any of the above. Computer readable storage media which may be used to store computer readable media comprises instructions 199 and data 197. Data Sources for the data may be computing devices, such as general hardware platform servers configured to receive and transmit information over the communications connections, such as network connections 175. The computing environment may be an electrical controller 110 that is directly connected to various resources, such as HVAC resources, and which has CPU, a GPU, Memory 130, input devices such as a display screen 125, and/or other features typically present in a computing environment. The computing environment may be a series of distributed computers. These distributed computers may comprise a series of connected electrical controllers.
The one or more processing devices may include one or more devices executing some or all of the operations of method 200 in response to instructions stored electronically on an electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of method 200. In a given embodiment zero or more illustrated steps of a method may be repeated, perhaps with different values, sensors, controllers, or devices to operate on. Steps in an embodiment may also be done in a different order than the order that is laid out in
In the disclosed embodiment, a plurality of device data streams are accepted into a plurality of device interfaces in a controller. The device streams 170 are accepted into the device interfaces 155, 160 and are then passed to the device database which can then look up more information about the devices 155, 160. Different data streams may have different device languages and different device characteristics. Information about the device languages and device characteristics may be stored in the device database, may be stored in the computer program 150, and/or a combination of the database 195 and the computer program 150 may be used, or such information may be stored elsewhere.
In an embodiment, device 1 205, attached to a controller, such as controller 110, speaks language 1, and has characteristic 1; Device 2 210, speaks language 2 and has characteristic 2; Device 3 215, speaks language 3 and has characteristic 3. Some devices have multiple characteristics.
At operation 225, a computer program 220, such as the computer program 150, is operationally able to translate the plurality of assorted device languages into a common internal language. This may allow a controlled space (such as a building), and systems within a controlled space (security, HVAC, entertainment, etc.), to share the common internal language. The computer program 150, 220 may also translate information about the device, such as the device's location, the device's physical characteristics (including physics equations that define the physical actions produced by the device), and parameters that tune the device behavior, etc. The controller may have a device database 195 that includes detailed information about specific devices, such that the common internal language translation process (or another portion of the described embodiments) can determine information about a device that the device does not pass on itself to the computer program 220. This information may comprise the physics equations that describe the device, parameters that describe specifics about the device, etc.
These device languages may be a device language, or computer language that might interface with the controller 110 through a device interface 185, 190, etc. Some of these device languages include BACnet, KNX, MS/TP, Bluetooth, Bluetooth (BLE) mesh, Zigbee, Z-Wave, LoRaWan, Thread, X10, Insteon, MQTT, CoAP, AMQP, DDS, HTTPm WebSocket, Modbus, Analog I/O systems, WIFI standards, etc. The device languages feed into a computer program 220. In the program, the device language is translated, if necessary into a common internal language, which may be a generalized AI definition language for real-time automation and analysis. This may create a unified building description model for interchange and smart grid systems, and/or may allow an existing IoT network with one language to be added to a complete model with another. None of this is doable using any of today's semantic standards.
At operation 230, a plurality of actors is created using the plurality of associated device characteristics. Other things may be accessed to create the plurality of actors using the associated device characteristics, such as: a device database, information received from the data streams 170, a different database, a combination of these information methods, or another set of operations. Actors move materials (quanta) through space—the program translates the internal language description of the device into an actor with physics, and labels. The actors are described at least in part by physics equations and variables. An example of such an equation set is shown with reference to
At operation 235, the program derives the quanta from the actor determined at 230. In some implementations, the label will also be used to derive the quanta. For example, a water pump will move (thus, derive) water, a conveyor belt will move (thus, derive) boxes, a heater will move air, and so on. The quanta does not just move on its own; rather, a type of actor known as a transport moves the quanta between other actors.
Ay operation 240, the actors and the quanta are associated with the device and any associated devices. This way, as the devices are run, the controller can understand what is happening to the devices at an ontological level. That is, the controller understands what the device is, what substances it works with, and so can report with great specificity about what happens. For example, if an unexpected action occurs, the controller (and/or a computer program working with the controller) can determine—from the state of the space being controlled by the controller—what the action is, what resources caused it., and a possible reason for the action. For example, with reference to
At operation 245, the quanta, and actors are integrated into a program that runs the system that, e.g., the controller controls.; i.e., a building, etc. At operation 250, the controller runs the structure, turning machines on and off, etc. This running of the structure comprises the devices running, changing state of the quanta as necessary and moving the quanta through a model of the physical space. This models the state (e.g., temperature, sound value, CO2 values, humidity etc.,) of the controlled space over time as the devices are run. This model may also comprise desired values (such as temperature), more complex desired values, such as comfort levels, etc. At 255, the model results are translated from the internal simulation language into human-understandable language. This human-understandable language (such as English) can then be used to create reports, such as those shown in
More specifically, in embodiments, the resources are defined as known actors. These actors have inherent knowledge of who they are. This may take the form of physics equations that define the actor behavior, and properties that define the variables that describe specific behavior for an actor. An actor 310A is, among other things, a definition of the role a resource takes in a system. A buffer tank, for example, stores heated water, which is used as a source for heat (a state), and so has a role as an actor store. So is a battery, a sand bed, and a flash drive—all stores of different states: energy, heat, and information. The different roles actors can take will be discussed more fully with reference to
In some embodiments that use neural networks to embody these ideas, actors 305B can be thought of as equivalent to neural network nodes, while the quanta 310B are equivalent to the weights and mapping between the nodes. Using these ideas, a neural network can be built that models the physical system of interest. The actors 305B may be connected through quanta 310B.
An actor is defined by what it does on its output quanta. For example, a motor as the actuator for a valve may have electrical input quanta and mechanical (rotation) output quanta. In the sense of input quanta, the motor is consumer of power. However, the motor actor type is defined based on the mechanical (rotation) quanta as the output quanta. In this sense, the motor is classified into the transport actor type as it transports the angle; i.e, it opens or closes a valve that diverts the quanta in a specific direction. When a motor is used to actuate a pump, it produces torque which turns a pump shaft as output. So, in this specific application, a motor is considered as a producer actor.
Zero or more illustrated steps of a method may be repeated, may be with different building plans, device instances, locations, and so forth. Steps may be performed serially, in a partially overlapping manner, or fully in parallel. In particular, the order in which the flowchart 500 is traversed to indicate the steps performed during a method may vary from one performance of the method to another performance of the method. The flowchart traversal order may also vary from one method embodiment to another method embodiment. Steps may be omitted, and/or repeated. Steps may also be be performed on one or more controllers that use a distributed operating system to communicate, or otherwise depart from the illustrated flow, provided that the method performed is operable and conforms to at least one claim.
A digital twin can be comprised of digital twin versions of devices, with the devices described as an actor type 300C, that are affected by quanta of various types. The digital twin version of the device is placed in an interconnected net (as described with reference to
A controller 110 is operationally able to control the devices 205, 210, 215 This is the nature of the controller-device relationship. Further, the digital twin can run concurrently with the controller. The controller keeps track of device states and more when it runs a system 507. A device is connected to a controller in such a way that the controller can change the state of the device 510 (such as by turning it on and off, changing a setting, can turn the device to an intermediate value (such as “low”), can turn the device on until a condition is met (such as “fill tank 50% full”), etc.). The controller can also track the reason for a state change 515. The digital twin can not only track along with the controller, the actions of the devices (e.g., on, off, etc.) but also, the reason for the actions. In some cases, this is due to the knowledge contained within the digital twin. Examples of this include a thermostat (a different device) being turned up by the controller, so the air conditioner associated with the location of the thermostat turning on. As the controller is attached to both devices, (or is a part of a networked system with multiple controllers that are, together attached to both devices), and more than that, understands the nature of the devices and the actions taken by the devices, the program 150 has access to information necessary to determine the reason for the state change. The controller can also track the state change times 520, by, e.g, being the one that ultimately triggers (or notices) the state change. As such, the controller can mark down the time the state change happened.
In some instances, the controller can track the action 525 that caused the state change. For example, if a sensor in a room records an air quality value out of allowable range, this could trigger the controller to turn on an air purifier. The controller can keep track that a specific sensor recorded an air quality value of X, and in response, the controller turned on the air purifier at time y. In some embodiments, the controller does not directly turn on the state change device, such as an air purifier, but still is aware of the sensor readings, and that the state change device has been turned on, turned off, or modified in some other way. These actions may be directed by the digital twin and/or recorded by the digital twin.
Reasons for the state change 530 can also be tracked. With reference to
Device errors 535 can also be determined and tracked. One implementation of device error display can be seen with reference to
One of the resources that the exemplary embodiment has logged is a Heat Pump 870. In some embodiments, heat values for the pump GHSP Load Exit Sensor 865 are shown 855 for the given time period 850, which includes future time starting halfway through Aug. 17 875. In the future time shown, e.g., to the right of the line at 810, the potential values for the heat pump are shown as the shaded area 860. The most likely heat pump value is shown with a line 862. Since potential values into the future are known (to a certain extent) for resources that the controller will be controlling (to a certain extent), computer programs 150 within the controller 110 or situated elsewhere may be able to use this knowledge to plan the upcoming resource allocation ahead of time to achieve the greatest efficiency, thereby saving up to 30% of the energy expended.
In view of the many possible embodiments to which the principles of the disclosed invention may be applied, it should be recognized that the illustrated embodiments are only examples of the invention and should not be taken as limiting the scope of the invention. Rather, the scope of the invention is defined by the following claims. We therefore claim as our invention all that comes within the scope and spirit of these claims.
The present application hereby incorporates by reference the entirety of, and claims priority to, U.S. Provisional Patent Application Ser. No. 63/070,460 filed 26 Aug. 2020.
Number | Name | Date | Kind |
---|---|---|---|
4353653 | Zimmerman | Oct 1982 | A |
5208765 | Turnbull | May 1993 | A |
5530643 | Hodorowski | Jun 1996 | A |
6275962 | Fuller et al. | Aug 2001 | B1 |
6301341 | Gizara et al. | Oct 2001 | B1 |
6437692 | Petite et al. | Aug 2002 | B1 |
6606731 | Baum et al. | Aug 2003 | B1 |
6645066 | Gutta et al. | Nov 2003 | B2 |
6813777 | Weinberger et al. | Nov 2004 | B1 |
6891838 | Petite et al. | May 2005 | B1 |
7102502 | Autret | Sep 2006 | B2 |
7248603 | Grunkemeyer et al. | Jul 2007 | B1 |
7304855 | Milligan et al. | Dec 2007 | B1 |
7578135 | Mattheis | Aug 2009 | B2 |
7587250 | Coogan et al. | Sep 2009 | B2 |
7729882 | Seem | Jun 2010 | B2 |
7734572 | Wiemeyer et al. | Jun 2010 | B2 |
7835431 | Belge | Nov 2010 | B2 |
7917232 | McCoy et al. | Mar 2011 | B2 |
8024054 | Mairs et al. | Sep 2011 | B2 |
8099178 | Mairs et al. | Jan 2012 | B2 |
8503943 | Spanhake | Aug 2013 | B2 |
8628239 | Merrow et al. | Jan 2014 | B2 |
8643476 | Pinn et al. | Feb 2014 | B2 |
8749959 | Riley et al. | Jun 2014 | B2 |
8782619 | Wu et al. | Jul 2014 | B2 |
8925358 | Kasper | Jan 2015 | B2 |
9441847 | Grohman | Sep 2016 | B2 |
9521724 | Berry et al. | Dec 2016 | B1 |
9544209 | Gielarowski et al. | Jan 2017 | B2 |
9602301 | Averitt | Mar 2017 | B2 |
9664400 | Wroblewski et al. | May 2017 | B2 |
9671777 | Aichele | Jun 2017 | B1 |
9678494 | Hyde et al. | Jun 2017 | B2 |
9740385 | Fadell et al. | Aug 2017 | B2 |
9791872 | Wang et al. | Oct 2017 | B2 |
9857238 | Malhotra et al. | Jan 2018 | B2 |
9860961 | Chemel et al. | Jan 2018 | B2 |
9952573 | Sloo et al. | Apr 2018 | B2 |
10042730 | Zebian | Aug 2018 | B2 |
10094586 | Pavlovski et al. | Oct 2018 | B2 |
10223721 | Bhatia | Mar 2019 | B1 |
10334758 | Ramirez et al. | Jun 2019 | B1 |
10512143 | Ikehara et al. | Dec 2019 | B1 |
10528016 | Noboa | Jan 2020 | B2 |
10557889 | Montoya et al. | Feb 2020 | B2 |
10558183 | Piaskowski et al. | Feb 2020 | B2 |
10558248 | Adrian | Feb 2020 | B2 |
10627124 | Walser et al. | Apr 2020 | B2 |
10640211 | Whitten et al. | May 2020 | B2 |
10672293 | Labutov et al. | Jun 2020 | B2 |
10687435 | Adrian et al. | Jun 2020 | B2 |
10736228 | Kho et al. | Aug 2020 | B2 |
10761516 | Sinha | Sep 2020 | B2 |
10892946 | Costa et al. | Jan 2021 | B2 |
10900489 | Rendusara et al. | Jan 2021 | B2 |
10942871 | Cawse et al. | Mar 2021 | B2 |
10943444 | Boyd et al. | Mar 2021 | B2 |
10966068 | Tramiel et al. | Mar 2021 | B2 |
10966342 | Airsey et al. | Mar 2021 | B2 |
10969133 | Harvey | Apr 2021 | B2 |
11005870 | Yan | May 2021 | B2 |
11073976 | Park | Jul 2021 | B2 |
11088989 | Gao et al. | Aug 2021 | B2 |
11119882 | Rakshit | Sep 2021 | B2 |
11131473 | Risbeck | Sep 2021 | B2 |
11164159 | Ma | Nov 2021 | B2 |
11262741 | Strand | Mar 2022 | B2 |
11269306 | Risbeck | Mar 2022 | B2 |
11294254 | Patterson et al. | Apr 2022 | B2 |
11353853 | Sinha | Jun 2022 | B2 |
11385613 | Ludwig et al. | Jul 2022 | B2 |
11468408 | Ma | Oct 2022 | B2 |
11677576 | Thakur | Jun 2023 | B2 |
11733663 | Bhattacharya | Aug 2023 | B2 |
20040236547 | Rappaport et al. | Nov 2004 | A1 |
20050010421 | Watanabe et al. | Jan 2005 | A1 |
20050040247 | Pouchak | Feb 2005 | A1 |
20070096902 | Seeley et al. | May 2007 | A1 |
20070162288 | Springhart et al. | Jul 2007 | A1 |
20080270951 | Anand et al. | Oct 2008 | A1 |
20080277486 | Seem et al. | Nov 2008 | A1 |
20090189764 | Keller et al. | Jul 2009 | A1 |
20090195064 | Joseph et al. | Aug 2009 | A1 |
20100005218 | Gower et al. | Jan 2010 | A1 |
20100025483 | Hoeynck et al. | Feb 2010 | A1 |
20100131933 | Kim et al. | May 2010 | A1 |
20100162037 | Maule et al. | Jun 2010 | A1 |
20100237891 | Lin et al. | Sep 2010 | A1 |
20110087988 | Ray et al. | Apr 2011 | A1 |
20110125930 | Tantos et al. | May 2011 | A1 |
20120102472 | Wu et al. | Apr 2012 | A1 |
20120221986 | Whitford et al. | Aug 2012 | A1 |
20120233595 | Ghanathe et al. | Sep 2012 | A1 |
20130343207 | Cook et al. | Dec 2013 | A1 |
20130343388 | Stroud et al. | Dec 2013 | A1 |
20130343389 | Stroud et al. | Dec 2013 | A1 |
20130343390 | Moriarty et al. | Dec 2013 | A1 |
20130346987 | Raney et al. | Dec 2013 | A1 |
20140088772 | Lelkens | Mar 2014 | A1 |
20140101082 | Matsuoka et al. | Apr 2014 | A1 |
20140215446 | Araya et al. | Jul 2014 | A1 |
20140277757 | Wang et al. | Sep 2014 | A1 |
20140358291 | Wells | Dec 2014 | A1 |
20140364985 | Tiwari et al. | Dec 2014 | A1 |
20150081928 | Wintzell et al. | Mar 2015 | A1 |
20150198938 | Steele et al. | Jul 2015 | A1 |
20150234381 | Ratilla et al. | Aug 2015 | A1 |
20160016454 | Yang et al. | Jan 2016 | A1 |
20160054712 | McFarland | Feb 2016 | A1 |
20160062753 | Champagne | Mar 2016 | A1 |
20160073521 | Marcade et al. | Mar 2016 | A1 |
20160086242 | Schafer et al. | Mar 2016 | A1 |
20160088438 | O'Keeffe | Mar 2016 | A1 |
20160092427 | Bittmann | Mar 2016 | A1 |
20160132308 | Muldoon | May 2016 | A1 |
20160195856 | Spero | Jul 2016 | A1 |
20160205784 | Kyle et al. | Jul 2016 | A1 |
20160209868 | Hartman et al. | Jul 2016 | A1 |
20160285715 | Gielarowski et al. | Sep 2016 | A1 |
20160295663 | Hyde et al. | Oct 2016 | A1 |
20170075323 | Shrivastava et al. | Mar 2017 | A1 |
20170097259 | Brown et al. | Apr 2017 | A1 |
20170131611 | Brown et al. | May 2017 | A1 |
20170149638 | Gielarowski et al. | May 2017 | A1 |
20170169075 | Jiang et al. | Jun 2017 | A1 |
20170176034 | Hussain et al. | Jun 2017 | A1 |
20170230930 | Frey | Aug 2017 | A1 |
20170322579 | Goparaju et al. | Nov 2017 | A1 |
20170365908 | Hughes et al. | Dec 2017 | A1 |
20180005195 | Jacobson | Jan 2018 | A1 |
20180046173 | Ahmed | Feb 2018 | A1 |
20180075168 | Tiwari et al. | Mar 2018 | A1 |
20180089172 | Needham | Mar 2018 | A1 |
20180123272 | Mundt et al. | May 2018 | A1 |
20180202678 | Ahuja et al. | Jul 2018 | A1 |
20180266716 | Bender et al. | Sep 2018 | A1 |
20180307781 | Byers et al. | Oct 2018 | A1 |
20180356969 | Narain | Dec 2018 | A1 |
20190017719 | Sinha | Jan 2019 | A1 |
20190025809 | Bhattacharya | Jan 2019 | A1 |
20190041829 | Sinha | Feb 2019 | A1 |
20190087076 | Dey et al. | Mar 2019 | A1 |
20190138704 | Shrivastava et al. | May 2019 | A1 |
20190156443 | Hall | May 2019 | A1 |
20190173109 | Wang | Jun 2019 | A1 |
20190258747 | Milev | Aug 2019 | A1 |
20190294018 | Shrivastava et al. | Sep 2019 | A1 |
20190377306 | Harvey | Dec 2019 | A1 |
20200003444 | Yuan et al. | Jan 2020 | A1 |
20200018506 | Ruiz et al. | Jan 2020 | A1 |
20200050161 | Noboa | Feb 2020 | A1 |
20200133257 | Cella et al. | Apr 2020 | A1 |
20200142365 | Sharma et al. | May 2020 | A1 |
20200150508 | Patterson et al. | May 2020 | A1 |
20200167066 | Park | May 2020 | A1 |
20200167442 | Roecker et al. | May 2020 | A1 |
20200169574 | Yan | May 2020 | A1 |
20200183374 | Fries | Jun 2020 | A1 |
20200183717 | Deutsch et al. | Jun 2020 | A1 |
20200187147 | Meerbeek et al. | Jun 2020 | A1 |
20200221269 | Tramiel et al. | Jul 2020 | A1 |
20200226223 | Reichl | Jul 2020 | A1 |
20200228759 | Ryan et al. | Jul 2020 | A1 |
20200233389 | Ma | Jul 2020 | A1 |
20200233391 | Ma | Jul 2020 | A1 |
20200233680 | Ma | Jul 2020 | A1 |
20200233956 | Wang | Jul 2020 | A1 |
20200234220 | Ma | Jul 2020 | A1 |
20200255142 | Whitten et al. | Aug 2020 | A1 |
20200279482 | Berry et al. | Sep 2020 | A1 |
20200285203 | Thakur | Sep 2020 | A1 |
20200285788 | Brebner | Sep 2020 | A1 |
20200287786 | Anderson et al. | Sep 2020 | A1 |
20200288558 | Anderson et al. | Sep 2020 | A1 |
20200342526 | Ablanczy | Oct 2020 | A1 |
20200348038 | Risbeck | Nov 2020 | A1 |
20200348662 | Cella | Nov 2020 | A1 |
20200379730 | Graham et al. | Dec 2020 | A1 |
20200387041 | Shrivastava et al. | Dec 2020 | A1 |
20200387129 | Chandaria | Dec 2020 | A1 |
20210011444 | Risbeck | Jan 2021 | A1 |
20210048797 | Sinha | Feb 2021 | A1 |
20210055716 | Turner | Feb 2021 | A1 |
20210073441 | Austern et al. | Mar 2021 | A1 |
20210081504 | Mccormick et al. | Mar 2021 | A1 |
20210081880 | Bivins et al. | Mar 2021 | A1 |
20210096975 | DeLuca | Apr 2021 | A1 |
20210109837 | Rakshit | Apr 2021 | A1 |
20210157312 | Cella et al. | May 2021 | A1 |
20210182660 | Amirguliyev et al. | Jun 2021 | A1 |
20210193334 | Turrin | Jun 2021 | A1 |
20210366793 | Hung et al. | Nov 2021 | A1 |
20210383041 | Harvey et al. | Dec 2021 | A1 |
20210397770 | Bompard | Dec 2021 | A1 |
20210400787 | Abbo et al. | Dec 2021 | A1 |
20220058497 | Vazquez-Canteli | Feb 2022 | A1 |
20220066754 | Harvey | Mar 2022 | A1 |
20220070293 | Harvey et al. | Mar 2022 | A1 |
Number | Date | Country |
---|---|---|
103926912 | Jul 2014 | CN |
206002869 | Mar 2017 | CN |
206489622 | Sep 2017 | CN |
6301341 | Mar 2018 | JP |
2008016500 | Mar 2008 | WO |
2012019328 | Feb 2012 | WO |
Entry |
---|
Zhang, H., Yan, Q., & Wen, Z. (2020). Information modeling for cyber-physical production system based on digital twin and AutomationML. The international journal of advanced manufacturing technology, 107(3), 1927-1945. (Year: 2020). |
Hernandez, et al., “A Domain-Specific Language for Real-time Dynamical Systems Emulation on a Microcontroller.” Studies in Informatics and Control 28.4 (2019): pp. 453-462. (Year: 2019). |
Ngyuyen et al., “IoTSan: Fortifying the Safety of IoT Systems.” Proceedings of the 14th International Conference on Emerging Networking Experiments and Technologies. 2018, pp. 191-203. (Year: 2018). |
Svenonius, Elaine, “Compatibility of retrieval languages. Introduction to a Forum.” KO Knowledge Organization 10.1 (1982): pp. 2-4. (Year: 1983). |
BigLadder Software Full Ref, Occupant Thermal Comfort: Engineering Reference, 2014, The Board of Trustees of the University of Illinois and the Regents of the University of California through the Ernest Orlando Lawrence Berkeley National Laboratory (Year: 2014). |
Hagentoft et al. Full Reference, Assessment Method of Numerical Prediction Models for Combined Heat, Air and Moisture Transfer in Building Components: Benchmarks for One-dimensional Cases, Journal of Thermal Env. & Bldg. Sci., vol. 27, No. 4, Apr. 2004. |
U.S. Appl. No. 15/995,019 Office Action mailed Jul. 26, 2019. |
U.S. Appl. No. 15/995,019 Office Action mailed Oct. 8, 2020. |
U.S. Appl. No. 15/995,019 Office Action mailed Apr. 15, 2020. |
Amin, Massoud, “Toward self-healing energy infrastructure systems,” IEEE Computer Applications in Power 14.1 (2002): pp. 20-28. |
Gou, Wenqi, and Mengchu Zhou, “An emerging technology for improved building automation control,” 2009, IEEE International Conference on Systems, Man and Cybernetics, IEEE, 2009, pp. 337-342. |
Gungor et al., “Industrial Wireless Sensor Networks: Challenges, Design Principles, and Technical Approaches,” IEEE Transactions on Industrial Electronics, vol. 56, No. 10, Oct. 2009. |
Gou, Wendy et al., “Wireless mesh networks in intelligent building automation control: a survey.” International Journal of Intelligent Control and Systems, vol. 16, No. 1, Mar. 2011, 28-36. |
Kastner, Wolfgang, et al., “Building Automation System Integration into the Internet of Things, The IoT6 Approach, Its Realization and Validation,” Proceedings of the 2014 IEEE Emerging Technology and Factory Automation (ETFA), IEEE, 2014, pp. 1-9 (Year:2014). |
Shailendra, Eshan et al., “Analyzing home automation and networking technologies,” IEEE Potentials 37.1 (2018): pp. 27-33, (Year: 2018). |
De Meester et al., SERIF:A Semantic Exercise Interchange FormatConference: Proceedings of the 1st International Workshop on LINKed EDucation, Oct. 2015. |
Yegulap, Serdar, “What is LLVM? The power behind Swift, Rust, Clang, and more,” Infoworld, Mar. 11, 2020. |
Kalagnanam et al., “A System For Automated Mapping of Bill-of_Materials Part Numbers”, KDD '04: Proceedings of the tenth ACM SIGKDD international conference on Knowledge discovery and data mining, Aug. 2004, pp. 805-810. |
Mouser Electronics News Release, Aug. 16, 2018. |
Ouf et al., Effectiveness of using WiFi technologies to detect and predict building occupancy, Sust. Buildi. 2, 7 (2017). |
Radiomaze, Inc., “WiFi signals enable motion recognition throughout the entire home,” Dec. 4, 2017. |
Sensorswarm, 2018. |
Serale G., et al., Model Predictive Control (MPC) for Enhancing Building and HVAC System Energy Efficiency: Problem Formulation, Applications and Opportunities, Energies 2018, 11, 631; doi:10.3390, Mar. 12, 2018. |
Siano, P, “Demand response and smart grids—A survey”, Renewable and Sustainable Energy Reviews 30 (2014) 461-478. |
Wang et al., “A Practical Multi-Sensor Cooling Demand Estimation Approach Based on Visual Indoor and Outdoor Information Sensing,” Sensors 2018, 18, 3591; doi:10.3390. |
Brour, Mourad, and Abderrahim Benabbou. “ATLAS Lang MTS 1: Arabic text language into Arabic sign language machine translation system.” Procedia computer science 148 (2019): pp. 236-245. (Year: 2019). |
Shaalan, Khaled. “Rule-based approach in Arabic natural language processing.” The International Journal on Information and Communication Technologies (IJ ICT) 3.3 (2010): pp. 11-19. (Year: 2010). |
Number | Date | Country | |
---|---|---|---|
20220066754 A1 | Mar 2022 | US |
Number | Date | Country | |
---|---|---|---|
63070460 | Aug 2020 | US |