DE102022129829A1 - BUILDING DATA PLATFORM WITH SCHEME EXTENSIBILITIES FOR DIGITAL TWIN STATES, PROPERTIES AND TAGS - Google Patents
BUILDING DATA PLATFORM WITH SCHEME EXTENSIBILITIES FOR DIGITAL TWIN STATES, PROPERTIES AND TAGS Download PDFInfo
- Publication number
- DE102022129829A1 DE102022129829A1 DE102022129829.9A DE102022129829A DE102022129829A1 DE 102022129829 A1 DE102022129829 A1 DE 102022129829A1 DE 102022129829 A DE102022129829 A DE 102022129829A DE 102022129829 A1 DE102022129829 A1 DE 102022129829A1
- Authority
- DE
- Germany
- Prior art keywords
- entity
- schema
- digital twin
- nodes
- building
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
Abstract
Ein Gebäudesystem beinhaltet eine oder mehrere Speichervorrichtungen, die Anweisungen darauf umfasst, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, eine oder mehrere erste Operationen basierend auf einem digitalen Zwilling eines Gebäudes durchzuführen, um einen Zustand für eine Entität des digitalen Zwillings abzuleiten. Die Anweisungen veranlassen den einen oder die mehreren Prozessoren, ein Schema des digitalen Zwillings durch Hinzufügen eines Zustandstyps des Zustands zu einer Entitätsklasse des Schemas zu aktualisieren, basierend auf dem Schema, ein oder mehrere Datenelemente, die den Zustand darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei das eine oder die mehreren Datenelemente mit einer Entität der Entitätsklasse in Beziehung stehen, und eine oder mehrere zweite Operationen basierend auf dem einen oder den mehreren Datenelementen, die den Zustand darstellen, durchzuführen.A building system includes one or more storage devices that include instructions thereon that, when executed by one or more processors, cause the one or more processors to perform one or more initial operations based on a digital twin of a building to obtain a state for an entity of the digital twin. The instructions cause the one or more processors to update a schema of the digital twin by adding a state type of the state to an entity class of the schema, based on the schema, adding one or more data items representing the state to the digital twin, wherein the one or more data items are related to an entity of the entity class, and perform one or more second operations based on the one or more data items representing the state.
Description
HINTERGRUNDBACKGROUND
Die vorliegende Anmeldung betrifft allgemein ein Gebäudesystem mit einem digitalen Zwilling. Insbesondere betrifft die vorliegende Anmeldung das Schema des digitalen Zwillings.The present application generally relates to a digital twin building system. In particular, the present application relates to the digital twin scheme.
Das Gebäudesystem kann gegen einen digitalen Zwilling arbeiten, beispielsweise kann der digitale Zwilling das Gebäudesystem über Informationen informieren, die das Gebäude betreffen, gegen das das Gebäudesystem arbeitet. Das Schema, in dem der digitale Zwilling eingesetzt wird, kann jedoch statisch sein, d. h. es ändert sich nicht. Dies kann Probleme verursachen, wenn das Schema einen bestimmten Ausdruck von Informationen nicht zulässt, der für Systeme des Gebäudes nützlich wäre, gegen die gearbeitet werden soll. Es kann viel Zeit verschwendet werden, Schemata neu zu entwickeln und Systeme neu einzusetzen, um Informationen in dem digitalen Zwilling auszudrücken, der von anderen Systemen benötigt wird.The building system can work against a digital twin, for example the digital twin can inform the building system of information concerning the building that the building system is working against. However, the scheme in which the digital twin is deployed can be static; H. it doesn't change. This can cause problems if the schema does not allow for a specific expression of information that would be useful for building systems to be worked against. Much time can be wasted redesigning schemas and redeploying systems to express information in the digital twin required by other systems.
KURZDARSTELLUNGEXECUTIVE SUMMARY
Dynamische Eigenschaft oder dynamisches TagDynamic property or dynamic tag
Ein Gebäudesystem, das eine oder mehrere Speichervorrichtungen beinhaltet, die Anweisungen darauf beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, eine oder mehrere erste Operationen basierend auf einem digitalen Zwilling eines Gebäudes durchzuführen, wobei der digitale Zwilling Darstellungen von Entitäten des Gebäudes und Beziehungen zwischen den Entitäten beinhaltet. Die Anweisungen veranlassen den einen oder die mehreren Prozessoren, ein Schema des digitalen Zwillings durch Hinzufügen einer Eigenschaft oder eines Tags zu einer Entitätsklasse des Schemas zu aktualisieren, basierend auf dem Schema, ein oder mehrere Datenelemente, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei das eine oder die mehreren Datenelemente mit einer Entität der Entitätsklasse in Beziehung stehen, wobei die Vielzahl von Entitäten die Entität beinhalten, und eine oder mehrere zweite Operationen basierend auf dem einen oder den mehreren Datenelementen, die die Eigenschaft oder das Tag darstellen, durchzuführen.A building system that includes one or more storage devices that include instructions thereon that, when executed by one or more processors, cause the one or more processors to perform one or more initial operations based on a digital twin of a building, wherein the digital twin contains representations of entities of the building and relationships between the entities. The instructions cause the one or more processors to update a schema of the digital twin by adding a property or tag to an entity class of the schema, based on the schema, one or more data items representing the property or tag to which add a digital twin, the one or more data items being related to an entity of the entity class, the plurality of entities including the entity, and one or more second operations based on the one or more data items representing the property or tag represent to carry out.
In einigen Ausführungsformen beinhalten die Entitäten zumindest eines von einer Person, einem Punkt, einem Standort oder einem Ereignis, wobei das Schema Entitätsklassen für Entitätstypen der Entitäten definiert.In some embodiments, the entities include at least one of a person, point, location, or event, and the schema defines entity classes for entity types of the entities.
In einigen Ausführungsformen sind die Entitäten Instanzen von Entitätsklassen, die durch das Schema definiert sind.In some embodiments, the entities are instances of entity classes defined by the schema.
In einigen Ausführungsformen definiert die Eigenschaft oder das Tag ein Merkmal der Entität.In some embodiments, the property or tag defines a characteristic of the entity.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, das Schema des digitalen Zwillings zu aktualisieren, während der digitale Zwilling eingesetzt wird, ohne dass der digitale Zwilling neu eingesetzt werden muss.In some embodiments, the instructions cause the one or more processors to update the schema of the digital twin while the digital twin is being deployed, without having to re-deploy the digital twin.
In einigen Ausführungsformen definiert das Schema Entitätsklassen, wobei die Entitätsklassen Eigenschaften, Tags und Zustände für die Entitätsklassen angeben.In some embodiments, the schema defines entity classes, where the entity classes specify properties, tags, and states for the entity classes.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, Entitätsknoten, die Entitäten in der Entitätsklasse angeben, zu identifizieren und basierend auf dem Schema, den einen oder die mehreren Knoten, die die Eigenschaft oder das Tag darstellen, für jeden der Entitätsknoten zu dem digitalen Zwilling hinzuzufügen, wobei der eine oder die mehreren Knoten mit dem Entitätsknoten in Beziehung stehen.In some embodiments, the instructions cause the one or more processors to identify entity nodes that specify entities in the entity class and, for each of the entity nodes, to assign the one or more nodes that represent the property or tag based on the schema add to the digital twin, wherein the one or more nodes are related to the entity node.
In einigen Ausführungsformen beinhaltet der digitale Zwilling Knoten und Ränder zwischen den Knoten, wobei die Vielzahl von Knoten die Entitäten des Gebäudes darstellen und die Ränder die Beziehungen zwischen den Entitäten angeben. In einigen Ausführungsformen veranlassen Anweisungen den einen oder die mehreren Prozessoren, basierend auf dem Schema, einen oder mehrere Knoten, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei der eine oder die mehreren Knoten mit einem Knoten in Beziehung stehen, der die Entität der Entitätsklasse durch einen oder mehrere Ränder darstellt.In some embodiments, the digital twin includes nodes and borders between the nodes, where the plurality of nodes represent the entities of the building and the borders indicate the relationships between the entities. In some embodiments, instructions cause the one or more processors to add, based on the schema, one or more nodes representing the property or tag to the digital twin, the one or more nodes being related to a node, which represents the entity of the entity class by one or more borders.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, eine Angabe zum Hinzufügen der Eigenschaft oder des Tags zu einer ersten Entität zu empfangen, die Entitätsklasse der ersten Entität basierend auf dem Schema zu identifizieren, das Schema des digitalen Zwillings durch Hinzufügen der Eigenschaft oder des Tags zu der Entitätsklasse des Schemas zu aktualisieren, als Reaktion auf das Identifizieren, dass eine Klasse der ersten Entität die Entitätsklasse ist, und den einen oder die mehreren Knoten, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling basierend auf dem Schema hinzuzufügen, wobei der eine oder die mehreren Knoten mit dem Knoten in Beziehung stehen, der die Entität der Entitätsklasse darstellt, wobei die Entität eine zweite Entität ist, die sich von der ersten Entität unterscheidet.In some embodiments, the instructions cause the one or more processors to receive an indication to add the property or tag to a first entity, identify the entity class of the first entity based on the schema, identify the digital twin schema by adding the property or update the tag to the entity class of the schema in response to identifying that a class of the first entity is the entity class and the one or more nodes representing the property or tag to the digital twin based on the add schema, wherein the one or more nodes are related to the node representing the entity of the entity class, the entity being a second entity different from the first entity.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, eine Benutzereingabe von einer Benutzervorrichtung zu empfangen, wobei die Benutzereingabe die Eigenschaft oder das Tag definiert, das der Entitätsklasse des Schemas hinzugefügt werden soll, und als Reaktion auf den Empfang der Benutzereingabe, das Schema des digitalen Zwillings durch Hinzufügen der Eigenschaft oder des Tags zu der Entitätsklasse des Schemas basierend auf der Benutzereingabe hinzuzufügen.In some embodiments, the instructions cause the one or more processors to receive user input from a user device, the user input defining the property or tag to be added to the entity class of the schema, and in response to receiving the user input, the Add the digital twin schema by adding the property or tag to the schema's entity class based on user input.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, eine Aktualisierung an einem oder mehreren bestimmten Knoten oder einem oder mehreren bestimmten Rändern des digitalen Zwillings zu identifizieren, wobei die Aktualisierung Änderungen angibt, die die Entität beeinflussen, zu bestimmen, dass die Aktualisierung eine Änderung an einem oder mehreren Merkmalen der Entität angibt, und das Schema des digitalen Zwillings durch Hinzufügen der Eigenschaft oder des Tags zu der Entitätsklasse des Schemas zu aktualisieren, als Reaktion auf die Bestimmung, dass die Aktualisierung die Änderung an dem einen oder den mehreren Merkmalen der Entität angibt. Eine andere Implementierung der vorliegenden Offenbarung ist ein Verfahren, das ein Durchführen einer oder mehrerer erster Operationen basierend auf einem digitalen Zwilling eines Gebäudes durch eine oder mehrere Verarbeitungsschaltungen beinhaltet, wobei der digitale Zwilling Darstellungen von Entitäten des Gebäudes und Beziehungen zwischen den Entitäten beinhaltet. Das Verfahren beinhaltet ein Aktualisieren eines Schemas des digitalen Zwillings durch Hinzufügen einer Eigenschaft oder eines Tags zu einer Entitätsklasse des Schemas durch die eine oder die mehreren Verarbeitungsschaltungen, ein Hinzufügen, durch die eine oder die mehreren Verarbeitungsschaltungen basierend auf dem Schema, eines oder mehrerer Datenelemente, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling, wobei das eine oder die mehreren Datenelemente mit einer Entität der Entitätsklasse in Beziehung stehen, wobei die Entitäten die Entität beinhalten, und ein Durchführen, durch die eine oder die mehreren Verarbeitungsschaltungen, einer oder mehrerer zweiter Operationen basierend auf dem einen oder den mehreren Datenelementen, die die Eigenschaft oder das Tag darstellen.In some embodiments, the instructions cause the one or more processors to identify an update at a particular node or edges of the digital twin, the update indicating changes affecting the entity to determine that the update indicates a change to one or more characteristics of the entity, and update the schema of the digital twin by adding the property or tag to the entity class of the schema in response to determining that the update reflects the change to the one or more characteristics the entity indicates. Another implementation of the present disclosure is a method that includes performing, by one or more processing circuitry, one or more first operations based on a digital twin of a building, the digital twin including representations of entities of the building and relationships between the entities. The method includes updating, by the one or more processing circuits, a schema of the digital twin by adding a property or tag to an entity class of the schema, adding, by the one or more processing circuits based on the schema, one or more data items, representing the property or tag to the digital twin, the one or more data items being related to an entity of the entity class, the entities including the entity, and performing, by the one or more processing circuits, one or a plurality of second operations based on the one or more data items representing the property or tag.
In einigen Ausführungsformen beinhalten die Entitäten zumindest eines von einer Person, einem Punkt, einem Standort oder einem Ereignis, wobei das Schema Entitätsklassen für Entitätstypen der Entitäten definiert.In some embodiments, the entities include at least one of a person, point, location, or event, and the schema defines entity classes for entity types of the entities.
In einigen Ausführungsformen definiert die Eigenschaft oder das Tag ein Merkmal der Entität.In some embodiments, the property or tag defines a characteristic of the entity.
In einigen Ausführungsformen, Aktualisieren des Schemas des digitalen Zwillings durch die eine oder die mehreren Verarbeitungsschaltungen, während der digitale Zwilling eingesetzt wird, ohne dass der digitale Zwilling neu eingesetzt werden muss.In some embodiments, the one or more processing circuits updating the schema of the digital twin while the digital twin is being deployed without having to re-deploy the digital twin.
In einigen Ausführungsformen definiert das Schema Entitätsklassen, wobei die Entitätsklassen Eigenschaften, Tags und Zustände für die Entitätsklassen angeben.In some embodiments, the schema defines entity classes, where the entity classes specify properties, tags, and states for the entity classes.
In einigen Ausführungsformen beinhaltet der digitale Zwilling eine Vielzahl von Knoten und eine Vielzahl von Rändern zwischen der Vielzahl von Knoten, wobei die Vielzahl von Knoten die Vielzahl von Entitäten des Gebäudes darstellt und die Vielzahl von Rändern die Beziehungen zwischen der Vielzahl von Entitäten angibt. In einigen Ausführungsformen beinhaltet das Verfahren weiter ein Hinzufügen, durch die eine oder die mehreren Verarbeitungsschaltungen basierend auf dem Schema, von einem oder mehreren Knoten, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling, wobei der eine oder die mehreren Knoten mit einem Knoten in Beziehung stehen, der die Entität der Entitätsklasse durch einen oder mehrere Ränder darstellt.In some embodiments, the digital twin includes a plurality of nodes and a plurality of edges between the plurality of nodes, the plurality of nodes representing the plurality of entities of the building and the plurality of edges indicating relationships between the plurality of entities. In some embodiments, the method further includes adding, by the one or more processing circuits based on the schema, one or more nodes representing the property or tag to the digital twin, the one or more nodes having a node that represents the entity of the entity class by one or more edges.
In einigen Ausführungsformen beinhaltet das Verfahren ein Identifizieren, durch die eine oder die mehreren Verarbeitungsschaltungen, von Entitätsknoten, die Entitäten in der Entitätsklasse angeben, und ein Hinzufügen, durch die eine oder mehreren Verarbeitungsschaltungen basierend auf dem Schema, des einen oder der mehreren Knoten, die die Eigenschaft oder das Tag darstellen, für jeden der Entitätsknoten zu dem digitalen Zwilling, wobei der eine oder die mehreren Knoten mit den Entitätsknoten in Beziehung stehen.In some embodiments, the method includes identifying, by the one or more processing circuits, entity nodes that indicate entities in the entity class and adding, by the one or more processing circuits based on the schema, the one or more nodes that represent the property or tag, for each of the entity nodes to the digital twin, wherein the one or more nodes are related to the entity nodes.
In einigen Ausführungsformen beinhaltet das Verfahren ein Empfangen, durch die eine oder die mehreren Verarbeitungsschaltungen, einer Angabe zum Hinzufügen der Eigenschaft oder des Tags zu einer ersten Entität, ein Identifizieren, durch die eine oder die mehreren Verarbeitungsschaltungen, der Entitätsklasse der ersten Entität basierend auf dem Schema, ein Aktualisieren, durch die eine oder die mehreren Verarbeitungsschaltungen, des Schemas des digitalen Zwillings durch Hinzufügen der Eigenschaft oder des Tags zu der Entitätsklasse des Schemas als Reaktion auf das Identifizieren, dass eine Klasse der ersten Entität die Entitätsklasse ist, und ein Hinzufügen, durch die eine oder die mehreren Verarbeitungsschaltungen basierend auf dem Schema, des einen oder der mehreren Knoten, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling, wobei der eine oder die mehreren Knoten mit dem Knoten in Beziehung stehen, der die Entität der Entitätsklasse darstellt, wobei die Entität eine zweite Entität ist, die sich von der ersten Entität unterscheidet.In some embodiments, the method includes receiving, by the one or more processing circuits, an indication to add the property or tag to a first entity, identifying, by the one or more processing circuits, the entity class of the first entity based on the schema, updating, by the one or more processing circuits, the digital twin schema by adding the property or tag to the entity class of the schema in response to identifying that a class of the first entity is the entity class, and adding, by the one or more processing circuits based on the schema, the one or more nodes representing the property or tag to the digital twin, the one or more nodes being related to the node representing the entity of the represents an entity class, where the entity is a second entity that is distinct from the first entity.
In einigen Ausführungsformen beinhaltet das Verfahren ein Empfangen, durch die eine oder die mehreren Verarbeitungsschaltungen, einer Benutzereingabe von einer Benutzervorrichtung, wobei die Benutzereingabe die Eigenschaft oder das Tag definiert, das der Entitätsklasse des Schemas hinzugefügt werden soll, und ein Aktualisieren, durch die eine oder die mehreren Verarbeitungsschaltungen basierend auf der Benutzereingabe, des Schemas des digitalen Zwillings durch Hinzufügen der Eigenschaft oder des Tags zu der Entitätsklasse des Schemas als Reaktion auf den Empfang der Benutzereingabe.In some embodiments, the method includes receiving, by the one or more processing circuits, user input from a user device, the user input defining the property or tag to be added to the entity class of the schema, and updating, by the one or the plurality of processing circuits, based on the user input, the digital twin schema by adding the property or tag to the entity class of the schema in response to receiving the user input.
In einigen Ausführungsformen beinhaltet das Verfahren ein Identifizieren, durch die eine oder die mehreren Verarbeitungsschaltungen, einer Aktualisierung an einem oder mehreren bestimmten Knoten oder einem oder mehreren bestimmten Rändern des digitalen Zwillings, wobei die Aktualisierung Änderungen angibt, die die Entität beeinflussen, ein Bestimmen, durch die eine oder die mehreren Verarbeitungsschaltungen, dass die Aktualisierung eine Änderung an einem oder mehreren Merkmalen der Entität angibt, und ein Aktualisieren, durch die eine oder die mehreren Verarbeitungsschaltungen, des Schemas des digitalen Zwillings durch Hinzufügen der Eigenschaft oder des Tags zu der Entitätsklasse des Schemas, als Reaktion auf das Bestimmen, dass die Aktualisierung die Änderung an dem einen oder den mehreren Merkmalen der Entität angibt.In some embodiments, the method includes identifying, by the one or more processing circuits, an update at one or more particular nodes or one or more particular edges of the digital twin, the update indicating changes affecting the entity, determining by the one or more processing circuits that the update indicates a change to one or more characteristics of the entity, and updating, by the one or more processing circuits, the schema of the digital twin by adding the property or tag to the entity class of the schema , in response to determining that the update indicates the change to the one or more characteristics of the entity.
Eine andere Implementierung der vorliegenden Offenbarung ist ein Gebäudesystem, das eine oder mehrere Speichervorrichtungen beinhaltet, die Anweisungen darauf beinhalten, und einen oder mehrere Prozessoren beinhaltet, die konfiguriert sind, um die Anweisungen auszuführen, die den einen oder die mehreren Prozessoren veranlassen, eine oder mehrere erste Operationen basierend auf einem digitalen Zwilling eines Gebäudes durchzuführen, wobei der digitale Zwilling Darstellungen von Entitäten des Gebäudes und den Rändern, die Beziehungen zwischen den Entitäten angeben, beinhaltet. Die Anweisungen veranlassen den einen oder die mehreren Prozessoren, ein Schema des digitalen Zwillings durch Hinzufügen einer Eigenschaft oder eines Tags zu einer Entitätsklasse des Schemas zu aktualisieren, basierend auf dem Schema, ein oder mehrere Datenelemente, die die Eigenschaft oder das Tag darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei das eine oder die mehreren Datenelemente mit einer Entität der Entitätsklasse in Beziehung stehen, wobei die Entitäten die Entität beinhalten, und eine oder mehrere zweite Operationen basierend auf dem einen oder den mehreren Datenelementen, die die Eigenschaft oder das Tag darstellen, durchzuführen.Another implementation of the present disclosure is a building system that includes one or more storage devices storing instructions thereon and one or more processors configured to execute the instructions causing the one or more processors to execute perform initial operations based on a digital twin of a building, where the digital twin includes representations of entities of the building and the boundaries that indicate relationships between the entities. The instructions cause the one or more processors to update a schema of the digital twin by adding a property or tag to an entity class of the schema, based on the schema, one or more data items representing the property or tag to which add digital twin, wherein the one or more data items are related to an entity of the entity class, the entities including the entity, and one or more second operations based on the one or more data items representing the property or tag, to perform.
Dynamischer Zustanddynamic state
Eine Implementierung der vorliegenden Offenbarung ist ein Gebäudesystem, das eine oder mehrere Speichervorrichtungen beinhaltet, die Anweisungen darauf beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, eine oder mehrere erste Operationen basierend auf einem digitalen Zwilling eines Gebäudes durchzuführen, um einen Zustand für eine Entität des digitalen Zwillings abzuleiten, wobei der digitale Zwilling Darstellungen von Entitäten des Gebäudes und Beziehungen zwischen den Entitäten beinhaltet. Die Anweisungen veranlassen den einen oder die mehreren Prozessoren, ein Schema des digitalen Zwillings durch Hinzufügen eines Zustandstyps des Zustands zu einer Entitätsklasse des Schemas zu aktualisieren, basierend auf dem Schema, ein oder mehrere Datenelemente, die den Zustand darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei das eine oder die mehreren Datenelemente mit einer Entität der Entitätsklasse in Beziehung stehen, und eine oder mehrere zweite Operationen basierend auf dem einen oder den mehreren Datenelementen, die den Zustand darstellen, durchzuführen.An implementation of the present disclosure is a building system that includes one or more storage devices that include instructions thereon that, when executed by one or more processors, cause the one or more processors to perform one or more first operations based on a digital Twin a building to derive a state for a digital twin entity, where the digital twin includes representations of entities of the building and relationships between the entities. The instructions cause the one or more processors to update a schema of the digital twin by adding a state type of the state to an entity class of the schema based on the Schema, adding one or more data items representing the state to the digital twin, the one or more data items being related to an entity of the entity class, and one or more second operations based on the one or more data items that represent the state to carry out.
In einigen Ausführungsformen beinhalten die Entitäten zumindest eines von einer Person, einem Punkt, einem Standort oder einem Ereignis, wobei das Schema Entitätsklassen für Entitätstypen der Entitäten definiert.In some embodiments, the entities include at least one of a person, point, location, or event, and the schema defines entity classes for entity types of the entities.
In einigen Ausführungsformen sind die Entitäten Instanzen von Entitätsklassen, die durch das Schema definiert sind.In some embodiments, the entities are instances of entity classes defined by the schema.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, das Schema des digitalen Zwillings zu aktualisieren, während der digitale Zwilling eingesetzt wird, ohne dass der digitale Zwilling neu eingesetzt werden muss.In some embodiments, the instructions cause the one or more processors to update the schema of the digital twin while the digital twin is being deployed, without having to re-deploy the digital twin.
In einigen Ausführungsformen definiert das Schema Entitätsklassen, wobei die Entitätsklassen Eigenschaften, Tags und Zustände für die Entitätsklassen angeben.In some embodiments, the schema defines entity classes, where the entity classes specify properties, tags, and states for the entity classes.
In einigen Ausführungsformen veranlassen die Anweisungen den einen oder die mehreren Prozessoren, die eine oder die mehreren ersten Operationen basierend auf dem digitalen Zwilling des Gebäudes und externen Daten, die von einem externen System gesammelt werden, durchzuführen, wobei der Zustand von den externen Daten für die Entität des digitalen Zwillings abgeleitet wird.
In einigen Ausführungsformen veranlassen Anweisungen den einen oder die mehreren Prozessoren, eine Angabe zum Hinzufügen des Zustands zu der Entität zu empfangen, die Entitätsklasse der Entität basierend auf dem Schema zu identifizieren, das Schema des digitalen Zwillings durch Hinzufügen des Zustandtyps zu der Entitätsklasse des Schemas zu aktualisieren, als Reaktion auf das Identifizieren, dass eine Klasse der Entität die Entitätsklasse ist, und den einen oder die mehreren Knoten, die den Zustand darstellen, zu dem digitalen Zwilling basierend auf dem Schema hinzuzufügen, wobei der eine oder die mehreren Knoten mit einem zweiten Knoten in Beziehung stehen, der eine zweite Entität der Entitätsklasse darstellt, wobei die Entität sich von der zweiten Entität unterscheidet.In some embodiments, the instructions cause the one or more processors to perform the one or more first operations based on the digital twin of the building and external data collected from an external system, the state of the external data for the Entity of the digital twin is derived.
In some embodiments, instructions cause the one or more processors to receive an indication to add the state to the entity, identify the entity class of the entity based on the schema, the schema of the digital twin by adding the state type to the entity class of the schema update, in response to identifying that a class of the entity is the entity class, and add the one or more nodes representing the state to the digital twin based on the schema, the one or more nodes having a second node representing a second entity of the entity class, the entity being different from the second entity.
In einigen Ausführungsformen beginnt eine Anwendung zu arbeiten, um die eine oder die mehreren ersten Operationen basierend auf dem digitalen Zwilling des Gebäudes durchzuführen, um den Zustand für die Entität abzuleiten, nachdem der digitale Zwilling eingesetzt wurde und bevor das Schema des digitalen Zwillings aktualisiert wird.In some embodiments, an application begins operating to perform the one or more initial operations based on the digital twin of the building to infer the state for the entity after the digital twin is deployed and before the digital twin schema is updated.
In einigen Ausführungsformen sind die Anweisungen konfiguriert, um eine Ausgabe von der Anwendung zu empfangen, die sich aus der einen oder den mehreren ersten Operationen ergibt, wobei die Ausgabe den Zustand angibt, um das Schema des digitalen Zwillings zu durchsuchen, um zu bestimmen, ob das Schema den Zustandstyp beinhaltet, der durch die Ausgabe von der einen oder den mehreren ersten Operationen angegeben wird, und um das Schema des digitalen Zwillings durch Hinzufügen des Zustandstyps des Zustands zu der Entitätsklasse des Schemas zu aktualisieren, als Reaktion auf das Identifizieren, dass das Schema den Zustandstyp nicht beinhaltet.In some embodiments, the instructions are configured to receive output from the application resulting from the one or more first operations, the output indicating the state to search the digital twin schema to determine whether the schema includes the state type indicated by the output of the one or more first operations, and to update the schema of the digital twin by adding the state type of the state to the entity class of the schema, in response to identifying that the Schema does not include the state type.
In einigen Ausführungsformen definiert der Zustand eine Bedingung, die mit der Entität verbunden ist.In some embodiments, the state defines a condition associated with the entity.
In einigen Ausführungsformen ist der Zustand zumindest eines von einem Fehlerzustand eines Ausrüstungsteils des Gebäudes oder einem Belegungsniveau eines Raums des Gebäudes.In some embodiments, the condition is at least one of an error condition of a piece of equipment of the building or an occupancy level of a room of the building.
In einigen Ausführungsformen beinhaltet der digitale Zwilling Knoten und Ränder zwischen den Knoten, wobei die Knoten die Entitäten des Gebäudes darstellen und die Ränder die Beziehungen zwischen den Entitäten angeben. In einigen Ausführungsformen veranlassen Anweisungen den einen oder die mehreren Prozessoren, basierend auf dem Schema, einen oder mehrere Knoten, die den Zustand darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei der eine oder die mehreren Knoten durch eine oder mehrere Beziehungen mit der Entität der Entitätsklasse in Beziehung stehen.In some embodiments, the digital twin includes nodes and borders between the nodes, where the nodes represent the entities of the building and the borders indicate the relationships between the entities. In some embodiments, instructions cause the one or more processors to add one or more nodes representing the state to the digital twin based on the schema, the one or more nodes having one or more relationships with the entity of the entity class to be related.
Eine andere Implementierung der vorliegenden Offenbarung ist ein Verfahren, das ein Durchführen einer oder mehrerer erster Operationen basierend auf einem digitalen Zwilling eines Gebäudes durch eine oder mehrere Verarbeitungsschaltungen beinhaltet, um einen Zustand für eine Entität des digitalen Zwillings abzuleiten, wobei der digitale Zwilling Darstellungen von Entitäten des Gebäudes und Beziehungen zwischen den Entitäten beinhaltet, und ein Aktualisieren eines Schemas des digitalen Zwillings durch Hinzufügen eines Zustandstyps des Zustands zu einer Entitätsklasse des Schemas durch eine oder mehrere Verarbeitungsschaltungen. Das Verfahren beinhaltet ein Hinzufügen, durch eine oder mehrere Verarbeitungsschaltungen basierend auf dem Schema, eines oder mehrerer Datenelemente, die den Zustand darstellen, zu dem digitalen Zwilling, wobei das eine oder die mehreren Datenelemente mit einem Knoten in Beziehung stehen, der die Entität der Entitätsklasse darstellt, und ein Durchführen, durch eine oder mehrere Verarbeitungsschaltungen, einer oder mehrerer zweiter Operationen basierend auf dem einen oder den mehreren Datenelementen, die den Zustand darstellen.Another implementation of the present disclosure is a method that includes performing, by one or more processing circuitry, one or more first operations based on a digital twin of a building to obtain a state for an entity of the digital twin deriving, the digital twin including representations of entities of the building and relationships between the entities, and updating a schema of the digital twin by adding a state type of the state to an entity class of the schema by one or more processing circuits. The method includes adding, by one or more processing circuitry based on the schema, one or more data items representing the state to the digital twin, the one or more data items being related to a node representing the entity of the entity class and performing, by one or more processing circuitry, one or more second operations based on the one or more data items representing the state.
In einigen Ausführungsformen beinhalten die Entitäten zumindest eines von einer Person, einem Punkt, einem Standort oder einem Ereignis, wobei das Schema Entitätsklassen für Entitätstypen der Entitäten definiert. In einigen Ausführungsformen sind die Entitäten Instanzen von Entitätsklassen, die durch das Schema definiert sind.In some embodiments, the entities include at least one of a person, point, location, or event, and the schema defines entity classes for entity types of the entities. In some embodiments, the entities are instances of entity classes defined by the schema.
In einigen Ausführungsformen beinhaltet das Verfahren ein Aktualisieren des Schemas des digitalen Zwillings durch eine oder mehrere Verarbeitungsschaltungen, während der digitale Zwilling eingesetzt wird, ohne dass der digitale Zwilling neu eingesetzt werden muss.In some embodiments, the method includes updating the schema of the digital twin by one or more processing circuits while the digital twin is being deployed, without having to re-deploy the digital twin.
In einigen Ausführungsformen definiert das Schema Entitätsklassen, wobei die Entitätsklassen Eigenschaften, Tags und Zustände für die Entitätsklassen angeben.
In einigen Ausführungsformen beinhaltet das Verfahren ein Durchführen der einen oder der mehreren ersten Operationen basierend auf dem digitalen Zwilling des Gebäudes und externen Daten, die von einem externen System gesammelt werden, durch eine oder mehrere Verarbeitungsschaltungen, wobei der Zustand von den externen Daten für die Entität des digitalen Zwillings abgeleitet wird.In some embodiments, the schema defines entity classes, where the entity classes specify properties, tags, and states for the entity classes.
In some embodiments, the method includes performing, by one or more processing circuits, the one or more first operations based on the digital twin of the building and external data collected from an external system, the state of the external data for the entity of the digital twin is derived.
In einigen Ausführungsformen beinhaltet der digitale Zwilling Knoten und Ränder zwischen den Knoten, wobei die Knoten die Entitäten des Gebäudes darstellen und die Ränder die Beziehungen zwischen den Entitäten angeben. In einigen Ausführungsformen beinhaltet das Verfahren ein Hinzufügen, durch die eine oder mehreren Verarbeitungsschaltungen basierend auf dem Schema, von einem oder mehreren Knoten, die den Zustand darstellen, zu dem digitalen Zwilling, wobei der eine oder die mehreren Knoten durch eine oder mehrere Beziehungen mit der Entität der Entitätsklasse in Beziehung stehen.In some embodiments, the digital twin includes nodes and borders between the nodes, where the nodes represent the entities of the building and the borders indicate the relationships between the entities. In some embodiments, the method includes adding, by the one or more processing circuits based on the schema, one or more nodes representing the state to the digital twin, where the one or more nodes are linked by one or more relationships with the entity of the entity class are related.
In einigen Ausführungsformen beinhaltet das Verfahren ein Empfangen, durch eine oder mehrere Verarbeitungsschaltungen, einer Angabe zum Hinzufügen des Zustands zu der Entität, ein Identifizieren, durch eine oder mehrere Verarbeitungsschaltungen, der Entitätsklasse der Entität basierend auf dem Schema, ein Aktualisieren, durch eine oder mehrere Verarbeitungsschaltungen, des Schemas des digitalen Zwillings durch Hinzufügen des Zustandstyps zu der Entitätsklasse des Schemas, als Reaktion auf das Identifizieren, dass eine Klasse der Entität die Entitätsklasse ist, und ein Hinzufügen, durch eine oder mehrere Verarbeitungsschaltungen basierend auf dem Schema, des einen oder der mehreren Knoten, die den Zustand darstellen, zu dem digitalen Zwilling, wobei der eine oder die mehreren Knoten mit einem zweiten Knoten in Beziehung stehen, der eine zweite Entität der Entitätsklasse darstellt, wobei die Entität sich von der zweiten Entität unterscheidet.In some embodiments, the method includes receiving, by one or more processing circuits, an indication to add the state to the entity, identifying, by one or more processing circuits, the entity class of the entity based on the schema, updating by one or more Processing circuitry, the schema of the digital twin by adding the state type to the entity class of the schema, in response to identifying that a class of the entity is the entity class, and adding, by one or more processing circuitry based on the schema, the one or the a plurality of nodes representing the state to the digital twin, the one or more nodes being related to a second node representing a second entity of the entity class, the entity being different than the second entity.
In einigen Ausführungsformen beginnt eine Anwendung zu arbeiten, um die eine oder die mehreren ersten Operationen basierend auf dem digitalen Zwilling des Gebäudes durchzuführen, um den Zustand für die Entität abzuleiten, nachdem der digitale Zwilling eingesetzt wurde und bevor das Schema des digitalen Zwillings aktualisiert wird.In some embodiments, an application begins operating to perform the one or more initial operations based on the digital twin of the building to infer the state for the entity after the digital twin is deployed and before the digital twin schema is updated.
In einigen Ausführungsformen beinhaltet das Verfahren das Empfangen, durch eine oder mehrere Verarbeitungsschaltungen, einer Ausgabe von der Anwendung, die sich aus der einen oder den mehreren ersten Operationen ergibt, wobei die Ausgabe den Zustand angibt, ein Durchsuchen, durch eine oder mehrere Verarbeitungsschaltungen, des Schemas des digitalen Zwillings, um zu bestimmen, ob das Schema den Zustandstyp beinhaltet, der durch die Ausgabe der einen oder der mehreren ersten Operationen angegeben wird, und ein Aktualisieren, durch eine oder mehrere Verarbeitungsschaltungen, des Schemas des digitalen Zwillings durch Hinzufügen des Zustandstyps des Zustands zu der Entitätsklasse des Schemas, als Reaktion auf das Identifizieren, dass das Schema den Zustandstyp nicht beinhaltet.In some embodiments, the method includes receiving, by one or more processing circuits, output from the application resulting from the one or more first operations, the output indicating the state, browsing, by one or more processing circuits, of the Digital twin schemas to determine whether the schema includes the state type indicated by the output of the one or more first operations and updating, by one or more processing circuits, the digital twin schema by adding the state type of the state to the schema's entity class, responsive to identifying that the schema does not include the state type.
Eine andere Implementierung der vorliegenden Offenbarung ist ein Gebäudesystem, das eine oder mehrere Speichervorrichtungen beinhaltet, die Anweisungen darauf beinhalten, und einen oder mehrere Prozessoren beinhaltet, die konfiguriert sind, um die Anweisungen auszuführen, die den einen oder die mehreren Prozessoren veranlassen, eine oder mehrere erste Operationen basierend auf einem digitalen Zwilling eines Gebäudes durchzuführen, um einen Zustand für eine Entität des digitalen Zwillings abzuleiten, wobei der digitale Zwilling Darstellungen von Entitäten des Gebäudes und Beziehungen zwischen den Entitäten beinhaltet. Die Anweisungen veranlassen den einen oder die mehreren Prozessoren, ein Schema des digitalen Zwillings durch Hinzufügen eines Zustandstyps des Zustands zu einer Entitätsklasse des Schemas zu aktualisieren, basierend auf dem Schema, ein oder mehrere Datenelemente, die den Zustand darstellen, zu dem digitalen Zwilling hinzuzufügen, wobei das eine oder die mehreren Datenelemente mit der Entität der Entitätsklasse in Beziehung stehen, und eine oder mehrere zweite Operationen basierend auf dem einen oder den mehreren Datenelementen, die den Zustand darstellen, durchzuführen.Another implementation of the present disclosure is a building system that includes one or more storage devices having instructions thereon and one or more pro processors configured to execute the instructions that cause the one or more processors to perform one or more first operations based on a digital twin of a building to derive a state for a digital twin entity, the digital twin representations of entities of the building and relationships between the entities. The instructions cause the one or more processors to update a schema of the digital twin by adding a state type of the state to an entity class of the schema, based on the schema, adding one or more data items representing the state to the digital twin, wherein the one or more data items are related to the entity of the entity class, and perform one or more second operations based on the one or more data items representing the state.
Figurenlistecharacter list
Verschiedene Aufgaben, Aspekte, Merkmale und Vorteile der Offenbarung werden offensichtlicher und besser verständlich durch Bezugnahme auf die detaillierte Beschreibung in Verbindung mit den beigefügten Zeichnungen, in denen gleiche Bezugszeichen durchgehend entsprechende Elemente bezeichnen. In den Zeichnungen bezeichnen gleiche Bezugszeichen im Allgemeinen identische, funktionell ähnliche und/oder strukturell ähnliche Elemente.
-
1 ist ein Blockdiagramm einer Gebäudedatenplattform, die eine Randplattform, eine Cloud-Plattform und einen Zwillingsmanager nach einer beispielhaften Ausführungsform beinhaltet. -
2 ist eine graphische Projektion desZwillingsmanagers von 1 einschließlich Anwendungsprogrammierschnittstellen (API)-Daten, Fähigkeitsdaten, Richtliniendaten und Diensten nach einer beispielhaften Ausführungsform. -
3 ist eine weitere graphische Projektion desZwillingsmanagers von 1 einschließlich Anwendungsprogrammierschnittstellen (API)-Daten, Fähigkeitsdaten, Richtliniendaten und Diensten nach einer beispielhaften Ausführungsform. -
4 ist eine graphische Projektion desZwillingsmanagers von 1 einschließlich Ausrüstungs- und Fähigkeitsdaten für die Ausrüstung nach einer beispielhaften Ausführungsform. -
5 ist ein Blockdiagramm eines Erweiterbarkeitsmanagers, der eine Schemadefinition eines digitalen Zwillings zur Laufzeit erweitert, nach einer beispielhaften Ausführungsform. -
6 ist ein Blockdiagrammdes Zwillingsmanagers von 1 , bei dem ein erweiterbarer Eigenschaftsmanager einen digitalen Zwilling aktualisiert, um neue Eigenschaften in das Schema des digitalen Zwillings einzubeziehen, nach einer beispielhaften Ausführungsform. -
7 ist ein Flussdiagramm eines Prozesses, bei dem der erweiterbare Eigenschaftsmanager von6 einen digitalen Zwilling aktualisiert, um neue Eigenschaften in das Schema des digitalen Zwillings einzubeziehen, nach einer beispielhaften Ausführungsform. -
8 ist ein Blockdiagramm eines erweiterbaren Zustandsmanagers, der den digitalen Zwilling basierend auf von einem Fehleranalyseagenten empfangenen Informationen aktualisiert, wobei die Aktualisierung veranlasst, dass der digitale Zwilling neue Zustände beinhaltet, die Fehler in dem Schema des digitalen Zwillings angeben, nach einer beispielhaften Ausführungsform. -
9 ist ein Blockdiagramm des erweiterbaren Zustandsmanagers, der den digitalen Zwilling basierend auf von einem Kalenderagenten empfangenen Informationen aktualisiert, wobei die Aktualisierung veranlasst, dass der digitale Zwilling neue Zustände beinhaltet, die die Belegung in dem Schema des digitalen Zwillings angeben, nach einer beispielhaften Ausführungsform. -
10 ist ein Flussdiagramm eines Prozesses zum Aktualisieren des digitalen Zwillings basierend auf von einem Agenten empfangenen Informationen, wobei die Aktualisierung veranlasst, dass der digitale Zwilling neue Zustände beinhaltet, die eine Belegung in dem Schema des digitalen Zwillings angeben, nach einer beispielhaften Ausführungsform.
-
1 12 is a block diagram of a building data platform that includes an edge platform, a cloud platform, and a twin manager, according to an example embodiment. -
2 is a graphical projection of the twin manager of1 including application programming interface (API) data, capability data, policy data, and services according to an example embodiment. -
3 is another graphical projection of the twin manager of1 including application programming interface (API) data, capability data, policy data, and services according to an example embodiment. -
4 is a graphical projection of the twin manager of1 including equipment and capability data for the equipment according to an exemplary embodiment. -
5 12 is a block diagram of an extensibility manager extending a digital twin schema definition at runtime, according to an example embodiment. -
6 is a block diagram of the twin manager of1 wherein an extensible property manager updates a digital twin to include new properties in the digital twin's schema, according to an example embodiment. -
7 is a flowchart of a process by which the extensible property manager of6 updates a digital twin to include new properties in the digital twin schema, according to an example embodiment. -
8th 12 is a block diagram of an extensible state manager that updates the digital twin based on information received from a fault analysis agent, the update causing the digital twin to include new states that indicate faults in the digital twin schema, according to an example embodiment. -
9 12 is a block diagram of the extensible state manager that updates the digital twin based on information received from a calendar agent, the update causing the digital twin to include new states that indicate occupancy in the digital twin schema, according to an example embodiment. -
10 12 is a flowchart of a process for updating the digital twin based on information received from an agent, the update causing the digital twin to include new states that indicate population in the digital twin schema, according to an example embodiment.
DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION
Unter allgemeiner Bezugnahme auf die FIGUREN werden Systeme und Verfahren zur dynamischen Erweiterbarkeit von Eigenschaften, Tags und Zuständen in einem Schema eines digitalen Zwillings nach verschiedenen beispielhaften Ausführungsformen gezeigt. Ein digitaler Zwilling kann eine virtuelle Darstellung eines Gebäudes bereitstellen, z. B. sowohl in Bezug auf Kontextinformationen, die das Gebäude beschreiben, als auch auf Telemetriedaten, die von Ausrüstung des Gebäudes gesammelt werden. Der digitale Zwilling kann als eine Nachbildung agieren, die die Entitäten des Gebäudes (z. B. Assets, Personen, Punkte, Standorte und Ereignisse) und Beziehungen zwischen den verschiedenen Entitäten veranschaulicht. Der digitale Zwilling kann in einigen Ausführungsformen in Form einer Graphdatenstruktur implementiert werden.With general reference to the FIGURES, systems and methods for dynamic extensibility of properties, tags, and states in a digital twin schema are shown, according to various example embodiments. A digital twin can provide a virtual representation of a building, e.g. B. both in relation to contextual information that describes the building as well as telemetry data collected from building equipment. The digital twin can act as a replica that illustrates the building's entities (e.g., assets, people, points, locations, and events) and relationships between the different entities. The digital twin may be implemented in the form of a graph data structure in some embodiments.
In einigen Ausführungsformen können die Entitäten und Beziehungen zwischen den Entitäten in Form eines Schemas definiert werden. Das Schema kann die Entitäten, Eigenschaften der Entitäten, Tags der Entitäten, Zustände der Entitäten usw. in Form einer Klassenstruktur definieren, wobei jede Entität spezifische entsprechende Eigenschaften, Tags oder Zustände beinhaltet. Beispielsweise könnte jede Thermostatentität einen Temperatursollwertzustand, einen aktuellen Temperaturzustand, ein Tag, das angibt, wann die Ausrüstung zuletzt gewartet wurde, eine Eigenschaft, die angibt, dass der Thermostat eine Anzeigevorrichtung beinhaltet, Eigenschaften, die angeben, dass der Thermostat die Typen von Eingaben oder Ausgaben des Thermostaten aufweist, usw. beinhalten. Das Schema könnte in einigen Ausführungsformen ein stark typisiertes Schema sein, wie etwa BRICK. In some embodiments, the entities and relationships between the entities may be defined in the form of a schema. The schema may define the entities, entity properties, entity tags, entity states, etc. in terms of a class structure, with each entity including specific corresponding properties, tags, or states. For example, each thermostat entity could have a temperature setpoint state, a current temperature state, a tag indicating when the equipment was last serviced, a property indicating that the thermostat includes an indicator, properties indicating that the thermostat accepts the types of inputs or outputs of the thermostat, etc. include. The schema could be a strongly-typed schema, such as BRICK, in some embodiments.
BRICK wird beschrieben in
In einigen Ausführungsformen kann ein Gebäudesystem das Schema des digitalen Zwillings erweitern, um unterschiedliche Eigenschaften, Tags und/oder Zustände aufzunehmen. Diese Erweiterung kann zur Laufzeit durchgeführt werden, sodass der digitale Zwilling und/oder das System, das den digitalen Zwilling betreibt, Änderungen an dem Schema vornehmen können, ohne dass der digitale Zwilling und/oder das System, das den digitalen Zwilling betreibt, neu eingesetzt und/oder neu konfiguriert werden müssen (was zu Ausfallzeiten führen würde). Das digitale Zwillingsschema kann in einigen Ausführungsformen durch das Gebäudesystem dynamisch erweitert werden. Beispielsweise kann das Gebäudesystem (während der Laufzeit) feststellen, dass neue Zustände, Eigenschaften oder Tags benötigt werden, die die Leistung des digitalen Zwillings erhöhen würden (z. B. dem digitalen Zwilling ermöglichen, neue wichtige Informationsteile mit verbrauchenden Systemen in Beziehung zu setzen). Das Gebäudesystem kann diese Laufzeitaktualisierungen an dem Schema des digitalen Zwillings vornehmen.In some embodiments, a building system can extend the digital twin schema to include different properties, tags, and/or states. This extension can be performed at runtime, allowing the digital twin and/or the system running the digital twin to make changes to the schema without redeploying the digital twin and/or the system running the digital twin and/or need to be reconfigured (which would result in downtime). The digital twin schema can be dynamically extended by the building system in some embodiments. For example, the building system may determine (during runtime) that new states, properties, or tags are needed that would increase the performance of the digital twin (e.g., allow the digital twin to relate new key pieces of information to consuming systems) . The building system can make these runtime updates to the digital twin schema.
In einigen Ausführungsformen kann das aktualisierte Schema des digitalen Zwillings, z. B. die neuen Eigenschaften, Tags und/oder Zustände der Entitäten, von einem System, einer Anwendung und/oder einem Agenten verwendet werden, der gegen Daten des digitalen Zwillings arbeitet. Beispielsweise könnte ein solches System, eine solche Anwendung und/oder ein solcher Agent den digitalen Zwilling basierend auf den neuen Eigenschaften, Tags und/oder Zuständen des digitalen Zwillings durchsuchen und filtern. Das System, die Anwendung und/oder der Agent könnten basierend auf dem aktualisierten digitalen Zwilling eine Temperatursteuerung, Feuchtigkeitssteuerung, Luftqualitätssteuerung, Fehlalarmanalyse, Fehleranalyse des Gebäudes usw. implementieren.In some embodiments, the updated schema of the digital twin, e.g. B. the new properties, tags and/or states of the entities, are used by a system, an application and/or an agent that works against data of the digital twin. For example, such a system, application, and/or agent could search and filter the digital twin based on the digital twin's new properties, tags, and/or states. The system, application, and/or agent could implement temperature control, humidity control, air quality control, false alarm analysis, building fault analysis, etc. based on the updated digital twin.
In einigen Ausführungsformen könnte ein BIM-Betrachter, der BIM-bezogene Informationen in einer Benutzerschnittstelle basierend auf dem Graphen wiedergeben kann, basierend auf dem aktualisierten Schema des digitalen Zwillings arbeiten. BIM-Betrachter werden unter Bezugnahme auf die vorläufige US-Patentanmeldung Nr. 63/214,217, eingereicht am 23. Juni 2021, die
In einigen Ausführungsformen kann das Gebäudesystem das Schema des digitalen Zwillings aktualisieren, um zu ermöglichen, dass neue Ereignistypen vom digitalen Zwilling aufgenommen und gespeichert werden. Beispielsweise kann das Gebäudesystem in einigen Ausführungsformen neue Ereignisse empfangen und bestimmen, ob die Ereignistypen der neuen Ereignisse in dem Schema des digitalen Zwillings nicht vorhanden sind. Das Gebäudesystem kann den neuen Ereignistyp zu dem Schema des digitalen Zwillings hinzufügen, als Reaktion auf das Erkennen, dass der Ereignistyp nicht existiert, was ermöglicht, dass Ereignisse des neuen Ereignistyps zu dem digitalen Zwilling hinzugefügt werden können. Dem digitalen Zwilling zu ermöglichen, sein Schema zu erweitern, um neue Ereignistypen für eine beliebige Entität in dem digitalen Zwilling zu berücksichtigen, ist das treibende Merkmal, das Plug-and-Play-Funktionalität ermöglicht und die Barriere für die Nutzung und Erweiterung der Funktionalität des digitalen Zwillings senkt.In some embodiments, the building system can update the schema of the digital twin to allow new types of events to be ingested and stored by the digital twin. For example, in some embodiments, the building system may receive new events and determine whether the event types of the new events are not present in the digital twin schema. The building system can add the new event type to the digital twin schema add , in response to detecting that the event type does not exist, allowing events of the new event type to be added to the digital twin. Allowing the digital twin to extend its schema to accommodate new event types for any entity in the digital twin is the driving feature that enables plug-and-play functionality and breaks the barrier to exploiting and extending the functionality of the digital twin lowers.
Beispiele für digitale Zwillinge und das Hinzufügen von Schemainformationen zu einem Schema basierend auf empfangenen Dateninformationen sind in
In einigen Ausführungsformen muss das Hinzufügen einer dynamischen Eigenschaft oder eines dynamischen Zustands zu dem Schema nicht notwendigerweise veranlassen, dass die Eigenschaft oder der Zustand an andere Entitäten weitergegeben wird, z. B. veranlasst es möglicherweise nicht die Erstellung neuer Eigenschaften oder Zustände für jede Entität einer Schemaklasse. Wenn beispielsweise ein erwarteter Belegungszustand für eine „Konferenzraum ABC“ Entität hinzugefügt wird, kann in einigen Fällen eine Konferenzraum-Schemaklasse für den „Konferenzraum ABC“ mit dem erwarteten Belegungsstatus aktualisiert werden (oder ein neues Schema für den „Konferenzraum ABC“ könnte erstellt werden, um den neuen Zustand zu handhaben). Das Gebäudesystem fügt den erwarteten Belegungszustand möglicherweise nicht zu anderen existierenden Konferenzraumentitäten der Konferenzraumschemaklasse hinzu (kann aber den Belegungszustand zu zukünftigen Entitäten der Konferenzraumschemaklasse hinzufügen, wenn die Entitäten erstellt werden).In some embodiments, adding a dynamic property or state to the schema may not necessarily cause the property or state to be propagated to other entities, e.g. eg it may not cause the creation of new properties or states for each entity of a schema class. For example, when an expected occupancy state is added for a "Conference Room ABC" entity, in some cases a conference room schema class for "Conference Room ABC" can be updated with the expected occupancy state (or a new schema for "Conference Room ABC" could be created, to handle the new state). The building system may not add the expected occupancy state to other existing conference room schema class entities (but may add the occupancy state to future conference room schema class entities when the entities are created).
In einigen Ausführungsformen kann die Weitergabe von neu hinzugefügten Eigenschaften und/oder Zuständen über Entitäten eines Schematyps durch einen Benutzer gesteuert werden. Beispielsweise könnte ein Benutzer eine Einstellung für das Gebäudesystem festlegen, dass das Hinzufügen einer neuen Eigenschaft oder eines neuen Zustands zu einer bestimmten Entität einer bestimmten Schemaklasse die Erstellung einer neuen Schemaklasse mit der neuen Eigenschaft oder dem neuen Zustand für die bestimmte Entität veranlasst. Dies würde die Weitergabe einer neuen Eigenschaft an andere Entitäten stoppen. In einigen Ausführungsformen könnte ein Benutzer eine Einstellung festlegen, dass das Hinzufügen einer neuen Eigenschaft oder eines neuen Zustands zu einer bestimmten Entität einer bestimmten Schemaklasse das Hinzufügen der neuen Eigenschaft oder des neuen Zustands zu allen Entitäten der bestimmten Entitätsklasse veranlasst. Dies würde die Weitergabe der neuen Eigenschaft an andere Entitäten veranlassen. Unter Bezugnahme auf
Die Gebäudedatenplattform 100 beinhaltet Anwendungen 110. Die Anwendungen 110 können verschiedene Anwendungen sein, die arbeiten, um die Gebäudeteilsysteme 122 zu verwalten. Die Anwendungen 110 können entfernte oder lokale Anwendungen (oder eine Mischform aus beiden) sein, die auf verschiedenen Rechensystemen laufen. Die Anwendungen 110 können eine Alarmanwendung 168 beinhalten, die zum Verwalten von Alarmen für die Gebäudeteilsysteme 122 konfiguriert ist. Die Anwendungen 110 beinhalten eine Versicherungsanwendung 170, die Versicherungsdienste für die Gebäudeteilsysteme 122 implementiert. In einigen Ausführungsformen beinhalten die Anwendungen 110 eine Energieanwendung 172, konfiguriert ist, um den Energieverbrauch der Gebäudeteilsysteme 122 zu verwalten. Die Anwendungen 110 beinhalten eine Sicherheitsanwendung 174, die konfiguriert ist, um Sicherheitssysteme des Gebäudes zu verwalten.The
In einigen Ausführungsformen interagieren die Anwendungen 110 und/oder die Cloud-Plattform 106 mit einer Benutzervorrichtung 176. In einigen Ausführungsformen läuft eine Komponente oder eine ganze Anwendung der Anwendungen 110 auf der Benutzervorrichtung 176. Die Benutzervorrichtung 176 kann ein Laptop-Computer, ein Desktop-Computer, ein Smartphone, ein Tablet und/oder eine beliebige andere Vorrichtung mit einer Eingabeschnittstelle (z. B. Berührungsbildschirm, Maus, Tastatur usw.) und einer Ausgabeschnittstelle (z. B. ein Lautsprecher, eine Anzeige etc.) sein.In some embodiments, the
Die Anwendungen 110, der Zwillingsmanager 108, die Cloud-Plattform 106 und die Randplattform 102 können auf einem oder mehreren Rechensystemen implementiert werden, z. B. auf Prozessoren und/oder Speichervorrichtungen. Beispielsweise beinhaltet die Randplattform 102 Prozessor(en) 118 und Speicher 120, die Cloud-Plattform 106 beinhaltet Prozessor(en) 124 und Speicher 126, die Anwendungen 110 beinhalten Prozessor(en) 164 und Speicher 166 und der Zwillingsmanager 108 beinhaltet Prozessor(en) 148 und Speicher 150.
Die Prozessoren können Universal- oder Spezialprozessoren, eine anwendungsspezifische integrierte Schaltung (ASIC), ein oder mehrere feldprogrammierbare Gate-Arrays (FPGAs), eine Gruppe von Verarbeitungskomponenten oder andere geeignete Verarbeitungskomponenten sein. Die Prozessoren können konfiguriert sein, um Computercode und/oder Anweisungen auszuführen, die in den Speichern gespeichert sind oder von anderen computerlesbaren Medien (z. B. CD-ROM, Netzwerkspeicher, einem entfernten Server usw.) empfangen werden.The processors can be general purpose or special purpose processors, an application specific integrated circuit (ASIC), one or more field programmable gate arrays (FPGAs), an array of processing components, or other suitable processing components. The processors may be configured to execute computer code and/or instructions stored in the memories or received from other computer-readable media (e.g., CD-ROM, network storage, a remote server, etc.).
Die Speicher können eine oder mehrere Vorrichtungen (z. B. Speichereinheiten, temporäre Speichervorrichtungen, permanente Speichervorrichtungen usw.) zum Speichern von Daten und/oder Computercode zum Abschließen und/oder Erleichtern der verschiedenen in der vorliegenden Offenbarung beschriebenen Prozesse beinhalten. Die Speicher können Direktzugriffsspeicher (RAM), Nur-Lese-Speicher (ROM), Festplattenspeicher, Zwischenspeicher, nichtflüchtige Speicher, Flash-Speicher, optische Speicher oder jeden anderen geeigneten Speicher zum Speichern von Softwareobjekten und/oder Computeranweisungen beinhalten. Die Speicher können Datenbankkomponenten, Objektcodekomponenten, Skriptkomponenten oder jeden anderen Typ von Informationsstruktur zum Unterstützen der verschiedenen Aktivitäten und Informationsstrukturen beinhalten, die in der vorliegenden Offenbarung beschrieben sind. Die Speicher können kommunizierbar mit den Prozessoren verbunden sein und können Computercode zum Ausführen (z. B. durch die Prozessoren) eines oder mehrerer hierin beschriebener Prozesse beinhalten.The memories may include one or more devices (e.g., storage units, temporary storage devices, persistent 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 may include random access memory (RAM), read only memory (ROM), hard disk memory, cache memory, non-volatile memory, flash memory, optical memory, or any other suitable memory for storing software objects and/or computer instructions. The stores may include database components, object code components, script components, or any other type of information structure to support the various activities and information structures described in the present disclosure. The memories may be communicably coupled to the processors and may include computer code for executing (e.g., by the processors) one or more processes described herein.
Die Randplattform 102 kann konfiguriert sein, um eine Verbindung zu den Gebäudeteilsystemen 122 bereitzustellen. Die Randplattform 102 kann en von den Gebäudeteilsystemen 122 empfangen und/oder Nachrichten an die Gebäudeteilsysteme 122 liefern. Die Randplattform 102 beinhaltet ein oder mehrere Gateways, z. B. die Gateways 112-116. Die Gateways 112-116 können als ein Gateway zwischen der Cloud-Plattform 106 und den Gebäudeteilsystemen 122 agieren. Die Gateways 112-116 können die in der vorläufigen
Die Randplattform 102 kann über ein Netzwerk 104 mit der Cloud-Plattform 106 verbunden sein. Das Netzwerk 104 kann die Vorrichtungen und Systeme der Gebäudedatenplattform 100 kommunikativ koppeln. In einigen Ausführungsformen ist das Netzwerk 104 zumindest eines von und/oder eine Kombination von einem Wi-Fi-Netzwerk, einem kabelgebundenen Ethernet-Netzwerk, einem ZigBee-Netzwerk, einem Bluetooth-Netzwerk und/oder einem beliebigen anderen drahtlosen Netzwerk. Das Netzwerk 104 kann ein lokales Netzwerk oder ein Weitverkehrsnetzwerk (z. B. das Internet, ein Gebäude-WAN usw.) sein und kann eine Vielzahl von Kommunikationsprotokollen (z. B. BACnet, IP, LON usw.) verwenden. Das Netzwerk 104 kann Router, Modems, Server, Mobilfunkmasten, Satelliten und/oder Netzwerkschalter beinhalten. Das Netzwerk 104 kann eine Kombination aus verdrahteten und drahtlosen Netzwerken sein.The
Die Cloud-Plattform 106 kann konfiguriert sein, um die Kommunikation und Weiterleitung von Nachrichten zwischen den Anwendungen 110, dem Zwillingsmanager 108, der Randplattform 102 und/oder einem beliebigen anderen System zu erleichtern. Die Cloud-Plattform 106 kann einen Plattformmanager 128, einen Benachrichtigungsmanager 140, einen Befehlsprozessor 136 und einen Anreicherungsmanager 138 beinhalten. In einigen Ausführungsformen kann die Cloud-Plattform 106 Benachrichtigung der Gebäudedatenplattform 100 über das Netzwerk 104 erleichtern.
Der Benachrichtigungsmanager 140 kann konfiguriert sein, um als ein Transportdienst zu arbeiten, der die Kommunikation mit den Gebäudeteilsystemen 122 und/oder einem beliebigen anderen System steuert, z. B. Verwalten von Befehlen an Vorrichtungen (C2D), Befehlen an Verbinder (C2C) für externe Systeme, Befehlen von der Vorrichtung an die Cloud (D2C) und/oder Meldungen. Der Benachrichtigungsmanager 140 kann unterschiedliche Typen von Daten von den Anwendungen 110, dem Zwillingsmanager 108 und/oder der Randplattform 102 empfangen. Der Benachrichtigungsmanager 140 kann Änderungen an Wertdaten 142 empfangen, z. B. Daten, die angeben, dass ein Wert von eines Punktes sich geändert hat. Der Benachrichtigungsmanager 140 kann Zeitreihendaten 144 empfangen, z. B. eine zeitkorrelierte Reihe von Dateneinträgen, die jeweils mit einem bestimmten Zeitstempel verbunden sind. Des Weiteren kann der Benachrichtigungsmanager 140 Befehlsdaten 146 empfangen. Alle von der Cloud-Plattform 106 gehandhabten Nachrichten können als ein Ereignis gehandhabt werden, z. B. können die Daten 142-146 jeweils als ein Ereignis gepackt werden, wobei ein Datenwert bei einem bestimmten Zeitpunkt (z. B. eine zu einem bestimmten Zeitpunkt durchgeführte Temperaturmessung) auftritt.
Die Cloud-Plattform 106 beinhaltet einen Befehlsprozessor 136. Der Befehlsprozessor 136 kann konfiguriert sein, um Befehle zum Durchführen einer Aktion von den Anwendungen 110, den Gebäudeteilsystemen 122, der Benutzervorrichtung 176 usw. zu empfangen. Der Befehlsprozessor 136 kann die Befehle verwalten, bestimmen, ob das Befehlssystem berechtigt ist, die bestimmten Befehle durchzuführen, und die Befehle an das befohlene System, z. B. die Gebäudeteilsysteme 122 und/oder die Anwendungen 110, kommunizieren. Die Befehle könnten ein Befehl zum Ändern einer Betriebseinstellung, die Umgebungsbedingungen eines Gebäudes steuert, ein Befehl zur Durchführung von Analysen usw. sein.The
Die Cloud-Plattform 106 beinhaltet einen Anreicherungsmanager 138. Der Anreicherungsmanager 138 kann konfiguriert sein, um die von dem Benachrichtigungsmanager 140 empfangenen Ereignisse anzureichern. Der Anreicherungsmanager 138 kann konfiguriert sein, um Kontextinformationen zu den Ereignissen hinzuzufügen. Der Anreicherungsmanager 138 kann mit dem Zwillingsmanager 108 kommunizieren, um die Kontextinformationen abzurufen. In einigen Ausführungsformen sind die Kontextinformationen ein Hinweis auf Informationen, die mit dem Ereignis in Beziehung stehen. Wenn es sich bei dem Ereignis beispielsweise um eine Zeitreihen-Temperaturmessung eines Thermostaten handelt, können Kontextinformationen wie etwa der Standort des Thermostaten (z. B. welcher Raum), die von dem Thermostat gesteuerte Ausrüstung (z. B. welches VAV) usw. zu dem Ereignis hinzugefügt werden. Wenn in dieser Hinsicht eine verbrauchende Anwendung, z. B. eine der Anwendungen 110 das Ereignis empfängt, kann die verbrauchende Anwendung basierend auf den Daten des Ereignisses, der Temperaturmessung, und auch den Kontextinformationen des Ereignisses arbeiten.The
Der Anreicherungsmanager 138 kann ein Problem lösen, dass, wenn eine Vorrichtung eine beträchtliche Menge an Informationen produziert, die Informationen einfache Daten ohne Kontext enthalten können. Ein Beispiel könnte die Daten beinhalten, die erzeugt werden, wenn ein Benutzer einen Ausweis an einem Ausweisscanner der Gebäudeteilsysteme 122 einscannt. Dieses physische Ereignis kann ein Ausgabeereignis erzeugen, das solche Informationen wie „VorrichtungAusweisScannerID“, „AusweisID“ und/oder „Datum/Zeit“ beinhaltet. Wenn ein System diese Daten jedoch an eine verbrauchende Anwendung sendet, z. B. Verbraucher A und einen Verbraucher B, muss jeder Kunde möglicherweise den Wissensdienst der Gebäudedatenplattform aufrufen, um Informationen mit Abfragen wie etwa „In welchem Raum, welchem Gebäude, welchem Stockwerk befindet sich dieser Ausweisscanner?“ oder „Welcher Benutzer ist mit diesem Ausweis verbunden?“ abzufragen.The
Indem eine Anreicherung mit Dateneinspeisung durchgeführt wird, kann ein System in der Lage sein, Rückschlüsse auf die Daten zu ziehen. Ein Ergebnis der Anreicherung kann die Umwandlung der Nachricht „VorrichtungAusweisScannerId, AusweisId, Datum/Zeit“ in „Region, Gebäude, Stockwerk, Asset, VorrichtungsId, AusweisId, BenutzerName, AngestelltenId, Datum/Zeit eingescannt“ sein. Dies kann eine erhebliche Optimierung darstellen, da ein System die Anzahl der Aufrufe um 1/n reduzieren kann, wobei n die Anzahl der Verbraucher dieser Dateneinspeisung ist.By performing data injection enrichment, a system may be able to make inferences about the data. A result of the enrichment may be the conversion of the message "DeviceID, ID, Date/Time" to "Region, Building, Floor, Asset, DeviceId, ID, UserName, EmployeeId, Date/Time scanned". This can be a significant optimization as a system can reduce the number of calls by 1/n, where n is the number of consumers of that data injection.
Durch die Verwendung dieser Anreicherung kann ein System auch die Fähigkeit aufweisen, unerwünschte Ereignisse herauszufiltern. Wenn es 100 Gebäude auf einem Campus gibt, die stündlich 100.000 Ereignisse pro Gebäude erhalten, aber nur 1 Gebäude tatsächlich in Betrieb genommen ist, wird nur 1/10 der Ereignisse angereichert. Durch Betrachten, welche Ereignisse angereichert sind und welche Ereignisse nicht angereichert sind, kann ein System eine Verkehrsgestaltung der Weiterleitung dieser Ereignisse durchführen, um die Kosten der Weiterleitung von Ereignissen zu reduzieren, die keine verbrauchende Anwendung wünscht oder liest.By using this enrichment, a system can also have the ability to filter out undesired events. If there are 100 buildings on a campus receiving 100,000 events per building hourly, but only 1 building is actually operational, only 1/10 of the events will be enriched. By considering which events are enhanced and which events are not enhanced, a system can perform traffic shaping of the forwarding of those events to reduce the cost of forwarding events that no consuming application wants or reads.
Ein Beispiel für ein vom Anreicherungsmanager 138 empfangenes Ereignis kann sein:
{ „id": „someguid", „eventType": „Device_Heartbeat", „eventTime": „2018-01-27T00:00:00+00:00" „eventValue": 1, „deviceID": „someguid" }An example of an event received by the
{ "id": "someguid", "eventType": "Device_Heartbeat", "eventTime": "2018-01-27T00:00:00+00:00""eventValue": 1, "deviceID": "someguid" }
Ein Beispiel für ein vom Anreicherungsmanager 138 erzeugtes angereichertes Ereignis kann sein:
{ „id": „someguid", „eventType": „Device_Heartbeat", „eventTime": „2018-01-27T00:00:00+00:00" „eventValue": 1, „deviceID": "someguid", „buildingName": "Building-48", „buildingID": "SomeGuid", „panelID": „SomeGuid", „panelName": „Building-48-Panel-13", „cityID": 371, „cityName": "Milwaukee", „stateID": 48, „stateName": "Wisconsin (WI)", „countryID": 1, „countryName": "United States" }An example of an enriched event generated by the
{ "id": "someguid", "eventType": "Device_Heartbeat", "eventTime": "2018-01-27T00:00:00+00:00""eventValue": 1, "deviceID": "someguid", "buildingName": "Building-48", "buildingID": "SomeGuid", "panelID": "SomeGuid", "panelName": "Building-48-Panel-13", "cityID": 371, "cityName": "Milwaukee", "stateID": 48, "stateName": "Wisconsin (WI)", "countryID": 1, "countryName": "United States" }
Durch Empfangen von angereicherten Ereignissen kann eine Anwendung der Anwendungen 110 in der Lage sein, aufzufüllen und/oder zu filtern, welche Ereignisse mit welchen Bereichen verbunden sind. Darüber hinaus können Anwendungen zur Erzeugung von Benutzerschnittstellen Benutzerschnittstellen erzeugen, die die Kontextinformationen basierend auf den angereicherten Ereignissen beinhalten.By receiving enriched events, an application of
Die Cloud-Plattform 106 beinhaltet einen Plattformmanager 128. Der Plattformmanager 128 kann konfiguriert sein, um die Benutzer und/oder Abonnements der Cloud-Plattform 106 zu verwalten. Beispielsweise, welches abonnierende Gebäude, welcher abonnierende Benutzer und/oder Mieter die Cloud-Plattform 106 nutzt. Der Plattformmanager 128 beinhaltet einen Bereitstellungsdienst 130, der zum Bereitstellen der Cloud-Plattform 106, der Randplattform 102 und des Zwillingsmanagers 108 konfiguriert ist. Der Plattformmanager 128 beinhaltet einen Abonnementdienst 132, der zum Verwalten eines Abonnements des Gebäudes, Benutzers und/oder Mieters, während der Berechtigungsdienst 134 Berechtigungen der Gebäude, Benutzer und/oder Mieter verfolgen kann.The
Der Zwillingsmanager 108 kann konfiguriert sein, um einen digitalen Zwilling zu verwalten und zu unterhalten. Der digitale Zwilling kann eine digitale Darstellung der physischen Umgebung, z. B. eines Gebäudes, sein. Der Zwillingsmanager 108 kann einen Änderungseinspeisungsgenerator 152, Schema und Ontologie 154, einen Projektionsmanager 156, einen Richtlinienmanager 158, eine Entitäts-, Beziehungs- und Ereignisdatenbank 160 und eine Graphprojektionsdatenbank 162 beinhalten.The
Der Graphprojektionsmanager 156 kann konfiguriert sein, um Graphprojektionen zu konstruieren und die Graphprojektionen in der Graphprojektionsdatenbank 162 zu speichern. Beispiele von Graphprojektionen sind in den
In einigen Ausführungsformen erzeugt der Graphprojektionsmanager 156 eine Graphprojektion für einen bestimmten Benutzer, eine bestimmte Anwendung, ein bestimmtes Abonnement und/oder ein bestimmtes System. In dieser Hinsicht kann die Graphprojektion basierend auf Richtlinien für den bestimmten Benutzer, die bestimmte Anwendung und/oder das bestimmte System zusätzlich zu einer Ontologie, die für diesen Benutzer, diese Anwendung und/oder dieses System spezifisch ist, erzeugt werden. In dieser Hinsicht könnte eine Entität eine Graphprojektion anfordern und der Graphprojektionsmanager 156 kann konfiguriert sein, um basierend auf Richtlinien und einer für die Entität spezifischen Ontologie die Graphprojektion für die Entität zu erzeugen. Die Richtlinien können angeben, auf welche Entitäten, Beziehungen und/oder Ereignisse die Entität Zugriff hat. Die Ontologie kann angeben, welche Typen von Beziehungen zwischen Entitäten die anfordernde Entität zu sehen erwartet, z. B. Stockwerke innerhalb eines Gebäudes, Vorrichtungen innerhalb eines Stockwerks usw. Eine andere anfordernde Entität kann eine Ontologie aufweisen, um Vorrichtungen innerhalb eines Gebäudes und Anwendungen für die Vorrichtungen innerhalb des Graphs zu sehen.In some embodiments,
Die vom Graphprojektionsmanager 156 erzeugten und in der Graphprojektionsdatenbank 162 gespeicherten Graphprojektionen können ein Wissensgraph und ein Integrationspunkt sein. Beispielsweise können die Graphprojektionen Grundrisse und Systeme darstellen, die mit jedem Stockwerk verbunden sind. Des Weiteren können die Graphprojektionen Ereignisse beinhalten, z. B. Telemetriedaten der Gebäudeteilsysteme 122. Die Graphprojektionen können Anwendungsdienste als Knoten und API-Aufrufe zwischen den Diensten als Ränder in dem Graphen zeigen. Die Graphprojektionen können die Fähigkeiten von Räumen, Benutzern und/oder Vorrichtungen veranschaulichen. Die Graphprojektionen können Angaben zu den Gebäudeteilsystemen 122 beinhalten, z. B. Thermostate, Kameras, VAVs usw. Die Graphprojektionsdatenbank 162 kann Graphprojektionen speichern, die einen aktuellen Zustand eines Gebäudes aufrechterhalten.The graph projections generated by
Die Graphprojektionen der Graphprojektionsdatenbank 162 können digitale Zwillinge eines Gebäudes sein. Digitale Zwillinge können digitale Nachbildungen physischer Entitäten sein, die eine eingehende Analyse der Daten der physischen Entitäten ermöglichen und das Potenzial bereitstellen, Systeme zu überwachen, um Risiken zu mindern, Probleme zu bewältigen und Simulationen zum Testen zukünftiger Lösungen zu nutzen. Digitale Zwillinge können eine wichtige Rolle dabei spielen, Technikern zu helfen, die Ursache von Problemen zu finden und Probleme schneller zu lösen, Sicherheitsprotokolle zu unterstützen und Gebäudemanager bei der effizienteren Nutzung von Energie und anderen Anlagenressourcen zu unterstützen. Digitale Zwillinge können verwendet werden, um Sicherheitssysteme, Mitarbeitererfahrung, Anlagenmanagement, Nachhaltigkeit usw. zu ermöglichen und zu vereinheitlichen.The graph projections of
In einigen Ausführungsformen kann der Anreicherungsmanager 138 eine Graphprojektion der Graphprojektionsdatenbank 162 verwenden, um Ereignisse anzureichern. In einigen Ausführungsformen kann der Anreicherungsmanager 138 Knoten und Beziehungen identifizieren, die mit der Vorrichtung, die das Ereignis erzeugt hat, verbunden und für diese relevant sind. Beispielsweise könnte der Anreicherungsmanager 138 einen Thermostat identifizieren, der ein Temperaturmessereignis innerhalb des Graphen erzeugt. Der Anreicherungsmanager 138 kann Beziehungen zwischen dem Thermostat und Räumen identifizieren, z. B. eine Zone, in der sich der Thermostat befindet. Der Anreicherungsmanager 138 kann dem Ereignis eine Angabe der Zone hinzufügen.In some embodiments, the
Des Weiteren kann der Befehlsprozessor 136 konfiguriert sein, um die Graphprojektionen zu verwenden, um die Gebäudeteilsysteme 122 zu befehlen. Der Befehlsprozessor 136 kann eine Richtlinie für eine Befehlsentität innerhalb der Graphprojektion identifizieren, um zu bestimmen, ob die Befehlsentität dazu in der Lage ist den Befehl zu erteilen. Beispielsweise bestimmt der Befehlsprozessor 136, bevor er einem Benutzer erlaubt, einen Befehl zu erteilen, basierend auf der Graphprojektionsdatenbank 162, dass der Benutzer eine Richtlinie aufweist, um in der Lage zu sein, den Befehl zu erteilen.Furthermore, the
In einigen Ausführungsformen können die Richtlinien auf Bedingungen basierende Richtlinien sein. Beispielsweise kann die Gebäudedatenplattform 100 eine oder mehrere bedingte Regeln anwenden, um zu bestimmen, ob ein bestimmtes System in der Lage ist, eine Aktion durchzuführen. In einigen Ausführungsformen analysieren die Regeln eine verhaltensbasierte Biometrie. Beispielsweise kann eine verhaltensbasierte Biometrie normales Verhalten und/oder normale Verhaltensregeln für ein System angeben. In einigen Ausführungsformen kann die Gebäudedatenplattform 100, wenn die Gebäudedatenplattform 100 basierend auf der einen oder den mehreren bedingten Regeln bestimmt, dass eine von einem System angeforderte Aktion nicht mit einem normalen Verhalten übereinstimmt, dem System die Möglichkeit verweigern, die Aktion durchzuführen und/oder eine Genehmigung von einem übergeordneten System anfordern.In some embodiments, the policies may be conditional policies. For example, building
Beispielsweise könnte eine Verhaltensregel angeben, dass ein Benutzer Zugriff hat, sich bei einem System mit einer bestimmten IP-Adresse zwischen 8:00 Uhr und 17:00 Uhr anzumelden. Wenn sich der Benutzer jedoch um 19:00 Uhr bei dem System anmeldet, kann die Gebäudedatenplattform 100 einen Administrator kontaktieren, um zu bestimmen, ob dem Benutzer die Erlaubnis zum Anmelden erteilt werden soll.For example, a behavior rule might specify that a user has access to log on to a system with a specific IP address between 8:00 am and 5:00 pm. If the However, if the user logs into the system at 7:00 p.m., the
Der Änderungseinspeisungsgenerator 152 kann konfiguriert sein, um eine Einspeisung von Ereignissen zu erzeugen, die Änderungen an dem digitalen Zwilling angeben, z. B. an dem Graphen. Der Änderungseinspeisungsgenerator 152 kann Änderungen an den Entitäten, Beziehungen und/oder Ereignissen des Graphen verfolgen. Beispielsweise kann der Änderungseinspeisungsgenerator 152 eine Hinzufügung, Löschung und/oder Modifikation eines Knotens oder eines Randes des Graphen erkennen, z. B. das Ändern der Entitäten, Beziehungen und/oder Ereignisse innerhalb der Datenbank 160. Als Reaktion auf das Erkennen einer Änderung des Graphen, kann der Änderungseinspeisungsgenerator 152 ein Ereignis erzeugen, das die Änderung zusammenfasst. Das Ereignis kann angeben, welche Knoten und/oder Ränder sich geändert haben und wie sich die Knoten und Ränder geändert haben. Die Ereignisse können durch den Änderungseinspeisungsgenerator 152 zu einem Thema veröffentlicht werden.The
Der Änderungseinspeisungsgenerator 152 kann eine Änderungseinspeisung eines Wissensgraphen implementieren. Die Gebäudedatenplattform 100 kann ein Abonnement für Änderungen in dem Wissensgraph implementieren. Wenn der Änderungseinspeisungsgenerator 152 Ereignisse in der Änderungseinspeisung veröffentlicht, können abonnierende Systeme oder Anwendungen das Änderungseinspeisungsereignis empfangen. Durch Erzeugen einer Aufzeichnung aller vorgenommenen Änderungen kann ein System Daten auf unterschiedliche Weise bereitstellen und die Daten dann in der vom System gewünschten Reihenfolge wiedergeben. Dies kann das sequenzielle Laufen der Änderungen nacheinander und/oder das Springen von einer größeren Änderung zur nächsten beinhalten. Um beispielsweise einen Graphen zu einem bestimmten Zeitpunkt zu erzeugen, können alle Änderungseinspeisungsereignisse bis zu diesem bestimmten Zeitpunkt verwendet werden, um den Graphen zu konstruieren.
Die Änderungseinspeisung kann in einigen Ausführungsformen die Änderungen in jedem Knoten in dem Graphen und die damit verbundenen Beziehungen verfolgen. Wenn ein Benutzer diese Änderungen abonnieren möchte und der Benutzer über den richtigen Zugriff verfügt, kann der Benutzer einfach einen Web-API-Aufruf einreichen, um sequentielle Meldungen über jede Änderung zu erhalten, die in dem Graphen erfolgt. Ein Benutzer und/oder ein System kann die Änderungen eine nach der anderen wiedergeben, um den Graphen zu jedem gegebenen Zeitabschnitt wiederherzustellen. Selbst wenn die Nachrichten „dünn“ sind und nur die Änderungsmeldung und die Referenz „id/seq id“ beinhalten, kann die Änderungseinspeisung eine Kopie jedes Zustands jedes Knotens und/oder jeder Beziehung aufbewahren, sodass ein Benutzer und/oder ein System diese vergangenen Zustände jederzeit für jeden Knoten abrufen kann. Des Weiteren könnte ein Verbraucher der Änderungseinspeisung auch dynamische „Ansichten“ erstellen, die unterschiedliche zeitliche „Schnappschüsse“ davon ermöglichen, wie der Graph in einem bestimmten Kontext aussieht. Während der Zwillingsmanager 108 den Verlauf und den aktuellen Zustand des Graphen basierend auf der Schemaauswertung enthalten kann, kann ein Verbraucher eine Kopie dieser Daten behalten und dadurch unter Verwendung der Änderungseinspeisung dynamische Ansichten erstellen.The change injection, in some embodiments, can track the changes in each node in the graph and the relationships associated therewith. If a user wants to subscribe to these changes and the user has the right access, the user can simply make a web API call to get sequential notifications about each change that occurs in the graph. A user and/or system can reflect the changes one by one to restore the graph at any given time period. Even if the messages are "sparse" and contain only the change notification and the reference "id/seq id", the change injection can keep a copy of every state of every node and/or every relationship, so that a user and/or a system can keep these past states can retrieve at any time for each node. Furthermore, a change injection consumer could also create dynamic "views" that allow different time-based "snapshots" of what the graph looks like in a given context. While the
Schema und Ontologie 154 können das Nachrichtenschema und die Graphontologie des Zwillingsmanagers 108 definieren. Das Nachrichtenschema kann definieren, welches Format Nachrichten, die von dem Benachrichtigungsmanager 140 empfangen werden, haben sollten, z. B. welche Parameter, welche Formate usw. Ontologie kann Graphprojektionen definieren, z. B. die Ontologie, die ein Benutzer sehen möchte. Beispielsweise können verschiedene Systeme, Anwendungen und/oder Benutzer mit einer Graphontologie verbunden sein. Dementsprechend kann der Graphprojektionsmanager 156, wenn der Graphprojektionsmanager 156 eine Graphprojektion für einen Benutzer, ein System oder ein Abonnement erzeugt, eine Graphprojektion gemäß der für den Benutzer spezifischen Ontologie erzeugen. Beispielsweise kann die Ontologie definieren, welche Typen von Entitäten in welcher Reihenfolge in einem Graphen in Beziehung stehen, beispielsweise kann der Graphprojektionsmanager 156 für die Ontologie für ein Abonnement von „Kunde A“ Beziehungen für eine Graphprojektion erstellen, basierend auf Regel:
- Region ←→ Gebäude ←→ Stockwerk ←→ Raum ←→ Asset
- Region ←→ Building ←→ Floor ←→ Room ←→ Asset
Für die Ontologie eines Abonnements von „Kunde B“ kann der Graphprojektionsmanager 156 Beziehungen erstellen, basierend auf der Regel:
- Gebäude ←→ Stockwerk ←→ Asset
- Building ←→ Floor ←→ Asset
Der Richtlinienmanager 158 kann konfiguriert sein, dass er auf Anforderungen für Richtlinien von anderen Anwendungen und/oder Systemen antwortet. Der Richtlinienmanager 158 kann eine Graphprojektion konsultieren, um zu bestimmen, welche Berechtigungen unterschiedliche Anwendungen, Benutzer und/oder Vorrichtungen aufweisen. Die Graphprojektion kann verschiedene Berechtigungen angeben, die unterschiedliche Typen von Entitäten aufweisen, und der Richtlinienmanager 158 kann die Graphprojektion durchsuchen, um die Berechtigungen einer bestimmten Entität zu identifizieren. Der Richtlinienmanager 158 kann eine feinkörnige Zugriffskontrolle mit Benutzerberechtigungen erleichtern. Der Richtlinienmanager 158 kann Berechtigungen über einen Graphen anwenden, z. B. bei „der Benutzer kann alle Daten in Verbindung mit Stockwerk 1 sehen“, sieht er alle Teilsystemdaten für dieses Stockwerk, z. B. Überwachungskameras, HLK-Vorrichtungen, Feuererkennungs- und -reaktionsvorrichtungen usw.
Der Zwillingsmanager 108 beinhaltet einen Abfragemanager 165 und einen Zwillingsfunktionsmanager 167. Der Abfragemanager 164 kann konfiguriert sein, um Abfragen zu handhaben, die von einem anfordernden System, z. B. der Benutzervorrichtung 176, den Anwendungen 110 und/oder einem beliebigen anderen System, empfangen werden. Der Abfragemanager 165 kann Abfragen empfangen, die Abfrageparameter und Kontext beinhalten. Der Abfragemanager 165 kann die Graphprojektionsdatenbank 162 mit den Abfrageparametern abfragen, um ein Ergebnis abzurufen. Der Abfragemanager 165 kann dann einen Ereignisprozessor, z. B. eine Zwillingsfunktion, veranlassen, basierend auf dem Ergebnis und dem Kontext zu arbeiten. In einigen Ausführungsformen kann der Abfragemanager 165 die Zwillingsfunktion basierend auf dem Kontext auswählen und/oder Operationen basierend auf dem Kontext durchführen. In einigen Ausführungsformen ist der Abfragemanager 165 konfiguriert, um die unter Bezugnahme auf die
Der Zwillingsfunktionsmanager 167 kann konfiguriert sein, um die Ausführung von Zwillingsfunktionen zu verwalten. Der Zwillingsfunktionsmanager 167 kann einen Hinweis auf eine Kontextabfrage empfangen, die ein bestimmtes Datenelement und/oder Muster in der Graphprojektionsdatenbank 162 identifiziert. Als Reaktion auf das bestimmte Datenelement und/oder Muster, das in der Graphprojektionsdatenbank 162 auftritt (z. B. basierend auf einem neuen Datenereignis, das der Graphprojektionsdatenbank 162 hinzugefügt wurde, und/oder Änderungen an Knoten oder Rändern der Graphprojektionsdatenbank 162, kann der Zwillingsfunktionsmanager 167 veranlassen, dass eine bestimmte Zwillingsfunktion ausgeführt wird. Die Zwillingsfunktion kann basierend auf einem Ereignis, Kontext und/oder Regeln ausgeführt werden. Das Ereignis können Daten sein, für die die Zwillingsfunktion ausgeführt wird. Der Kontext kann Informationen sein, die eine kontextbezogene Beschreibung der Daten bereitstellen, z. B. mit welcher Vorrichtung das Ereignis verbunden ist, welcher Kontrollpunkt basierend auf dem Ereignis aktualisiert werden sollte usw. Der Zwillingsfunktionsmanager 167 kann konfiguriert sein, um die Operationen der
Unter Bezugnahme auf
Die Graphprojektion 200 beinhaltet einen Vorrichtungshub 202, der einen Softwaredienst darstellen kann, der die Kommunikation von Daten und Befehlen zwischen der Cloud-Plattform 106 und einer Vorrichtung der Gebäudeteilsysteme 122, z. B. einem Türbetätiger 214, erleichtert. Der Vorrichtungshub 202 steht in Verbindung mit einem Verbinder 204, einem externen System 206 und einem digitalen Asset „Türbetätiger“ 208 durch Rand 250, Rand 252 und Rand 254.The
Die Cloud-Plattform 106 kann konfiguriert sein, um den Vorrichtungshub 202, den Verbinder 204, das externe System 206 in Bezug auf den Türbetätiger 214 zu identifizieren, indem sie die Graphprojektion 200 durchsucht und die Ränder 250-254 und den Rand 258 identifiziert. Die Graphprojektion 200 beinhaltet eine digitale Darstellung des „Türbetätigers“, Knoten 208. Das digitale Asset „Türbetätiger“ 208 beinhaltet „VorrichtungNameRaum“, der durch den Knoten 207 dargestellt wird und mit dem digitalen Asset „Türbetätiger“ 208 durch die Kante 256 „Eigenschaft des Objekts“ in Beziehung steht.
Der „Türbetätiger“ 214 weist Punkte und Zeitreihen auf. Der „Türbetätiger“ 214 steht mit „Punkt A“ 216 durch eine „hat_einen“ Rand 260 in Beziehung. Der „Türbetätiger“ 214 steht mit „Punkt B“ 218 durch „hat_einen“ Rand 258 in Beziehung. Des Weiteren sind die mit den Punkten A und B verbundenen Zeitreihen durch die Knoten „TS“ 220 und „TS“ 222 dargestellt. Die Zeitreihen stehen mit den Punkten A und B durch „hat_einen“ Rand 264 und „hat_einen“ Rand 262 in Beziehung. Die Zeitreihe „TS“ 220 weist bestimmte Proben, Muster 210 und 212, auf, die jeweils mit „TS“ 220 in Beziehung stehen, mit Rändern 268 bzw. 266. Jede Probe beinhaltet eine Zeit und einen Wert. Jede Probe kann ein von dem Türbetätiger empfangenes Ereignis sein, das die Cloud-Plattform 106 in die Entitäts-, Beziehungs- und Ereignisdatenbank 160 aufnimmt, z. B. in die Graphprojektion 200 aufnimmt.The "door operator" 214 has points and time series. The "door operator" 214 is related to "point A" 216 by a "has_a"
Die Graphprojektion 200 beinhaltet ein Gebäude 234, das ein physisches Gebäude darstellt. Das Gebäude beinhaltet ein durch Stockwerk 232 dargestelltes Stockwerk, das mit dem Gebäude 234 durch „hat_einen“ Rand vom Gebäude 234 zum Stockwerk 232 in Beziehung steht. Das Stockwerk weist einen Raum auf, der durch „hat_einen“ 270 zwischen dem Stockwerk 232 und dem Raum 230 angegeben ist. Der Raum verfügt über besondere Fähigkeiten, z.B. ist ein Raum, der für eine Sitzung, eine Konferenz, eine private Lernzeit usw. gebucht werden kann. Des Weiteren kann die Buchung storniert werden. Die Fähigkeiten für das Stockwerk 232 werden durch Fähigkeiten 228 in Bezug auf den Raum 230 durch den Rand 280 dargestellt. Die Fähigkeiten 228 stehen in Beziehung mit zwei unterschiedlichen Befehlen, dem Befehl „Raum buchen“ 224 und dem Befehl „Buchung stornieren“ 226, die mit den Fähigkeiten 228 durch den Rand 284 und Rand 282 in Beziehung stehen.The
Wenn die Cloud-Plattform 106 einen Befehl zum Buchen des durch den Knoten dargestellten Raums Raum 230 empfängt, kann die Cloud-Plattform 106 die Graphprojektion 200 nach den Fähigkeiten für den 228 durchsuchen, der mit dem Raum 230in Beziehung steht, um zu bestimmen, ob die Cloud-Plattform 106 das Zimmer buchen kann.When the
In einigen Ausführungsformen könnte die Cloud-Plattform 106 eine Anforderung zum Buchen eines Raums in einem bestimmten Gebäude, z. B. dem Gebäude 234, empfangen. Die Cloud-Plattform 106 könnte die Graphprojektion 200 durchsuchen, um Räume zu identifizieren, die die Fähigkeiten aufweisen, gebucht werden zu können, z. B. den Raum 230 basierend auf den Fähigkeiten 228 zu identifizieren, die mit dem Raum 230 in Bezug stehen. Die Cloud-Plattform 106 kann auf die Anforderung mit einer Angabe des Raums antworten und der anfordernden Entität ermöglichen, den Raum 230 zu buchen.In some embodiments, the
Die Graphprojektion 200 beinhaltet eine Richtlinie 236 für das Stockwerk 232. Die Richtlinie 236 wird in Bezug auf das Stockwerk 232 basierend auf einem Rand 274 „zum Stockwerk“ zwischen der Richtlinie 236 und dem Stockwerk 232 festgelegt. The
Die Richtlinie 236 steht mit verschiedenen Rollen für das Stockwerk 232, Leseereignissen 238 über Rand 276 und Sendebefehl 240 über Rand 278 in Beziehung. Die Richtlinie 236 wird für die Entität 203 basierend auf „hat“ Rand 251 zwischen der Entität 203 und der Richtlinie 236 festgelegt.
Der Zwillingsmanager 108 kann Richtlinien für bestimmte Entitäten, z. B. Benutzer, Softwareanwendungen, Systeme, Vorrichtungen usw., basierend auf der Richtlinie 236 identifizieren. Beispielsweise, wenn die Cloud-Plattform 106 einen Befehl zum Buchen des Speicherplatzes 230 empfängt. Die Cloud-Plattform 106 kann mit dem Zwillingsmanager 108 kommunizieren, um zu verifizieren, dass die Entität, die die Buchung des Raums 230 anfordert, eine Richtlinie zum Buchen des Raums aufweist. Der Zwillingsmanager 108 kann die Entität, die die Buchung des Raums anfordert, als die Entität 203 identifizieren, indem er die Graphprojektion 200 durchsucht. Des Weiteren kann der Zwillingsmanager 108 weiter den Rand 251 zwischen der Entität 203 und der Richtlinie 236 und den Rand 1178 zwischen der Richtlinie 236 und dem Befehl 240 identifizieren.The
Des Weiteren kann der Zwillingsmanager 108 identifizieren, dass die Entität 203 die Fähigkeit aufweist, den Raum 230 basierend auf dem Rand 1174 zwischen der Richtlinie 236 und dem Rand 270 zwischen dem Stockwerk 232 und dem Raum 230 zu befehlen. Als Reaktion auf das Identifizieren, dass die Entität 203 die Fähigkeit aufweist, den Raum 230 zu buchen, kann der Zwillingsmanager 108 einen Hinweis an die Cloud-Plattform 106 bereitstellen.Furthermore,
Des Weiteren, wenn die Entität eine Anforderung zum Lesen von Ereignissen für den Raum 230 stellt, z. B. das Muster 210 und das Muster 212, kann der Zwillingsmanager 108 den Rand 251 zwischen der Entität 203 und der Richtlinie 236, den Rand 1178 zwischen der Richtlinie 236 und den Leseereignissen 238, den Rand 1174 zwischen der Richtlinie 236 und dem Stockwerk 232, „hat_einen“ Rand 270 zwischen dem Stockwerk 232 und dem Raum 230, den Rand 268 zwischen dem Raum 230 und dem Türbetätiger 214, den Rand 260 zwischen dem Türbetätiger 214 und dem Punkt A 216, „hat_einen“ Rand 264 zwischen dem Punkt A 216 und TS 220 und die Ränder 268 und 266 zwischen TS 220 und den Proben 210 bzw. 212 identifizieren.Furthermore, if the entity makes a request to read events for the
Unter Bezugnahme auf
Der Verbindungsvermittler 354 steht in Beziehung mit einem Agenten, der einen Raum 356 über den Rand 398b optimiert. Der durch den Knoten 356 dargestellte Agent kann Buchungen für den durch den Knoten 230 dargestellten Raum basierend auf dem Rand 398b zwischen dem Verbindungsvermittler 354 und dem Knoten 356 und dem Rand 398a zwischen den Fähigkeiten 228 und dem Verbindungsvermittler 354 buchen und stornieren.The
Der Verbindungsvermittler 354 steht durch den Rand 398c mit einem Cluster 308 in Beziehung. Der Cluster 308 steht über den Rand 398e mit dem Verbinder B 302 und über den Rand 398d mit dem Verbinder A 306 in Beziehung. Der Konnektor A 306 steht mit einem externen Abonnementdienst 304 in Beziehung. Ein Verbindungsvermittler 310 steht mit dem Cluster 308 über einen Rand 311 in Beziehung, der einen Ruheaufruf darstellt, den der durch den Knoten 310 dargestellte Verbindungsvermittler an den durch den Cluster 308 dargestellten Cluster tätigen kann.
Der Verbindungsvermittler 310 steht durch einen Rand 354 mit einer virtuellen Sitzungsplattform 312 in Beziehung. Der Knoten 312 stellt ein externes System dar, das eine virtuelle Sitzungsplattform darstellt. Der durch den Knoten 310 dargestellte Verbindungsvermittler kann eine Softwarekomponente darstellen, die eine Verbindung zwischen der Cloud-Plattform 106 und der durch den Knoten 312 dargestellten virtuellen Sitzungsplattform erleichtert. Wenn die Cloud-Plattform 106 mit der durch den Knoten 312 dargestellten virtuellen Sitzungsplattform kommunizieren muss, kann die Cloud-Plattform 106 den Rand 354 zwischen dem Verbindungsvermittler 310 und der virtuellen Sitzungsplattform 312 identifizieren und den durch den Knoten 310 dargestellten Verbindungsvermittler auswählen, um die Kommunikation mit der durch den Knoten 312 dargestellten virtuellen Sitzungsplattform zu erleichtern.
Ein Fähigkeitsknoten 318 kann mit dem Verbindungsvermittler 310 über Rand 360 verbunden sein. Die Fähigkeiten 318 können Fähigkeiten der virtuellen Sitzungsplattform sein, die durch den Knoten 312 dargestellt wird, und können mit dem Knoten 312 durch den Rand 360 zu dem Verbindungsvermittler 310 und dem Rand 354 zwischen dem Verbindungsvermittler 310 und dem Knoten 312 in Beziehung stehen. Die Fähigkeiten 318 können Fähigkeiten der durch den Knoten 312 dargestellten virtuellen Sitzungsplattform definieren. Der Knoten 320 steht über Rand 362 mit Fähigkeiten 318 in Beziehung. Die Fähigkeiten können ein „Bob einladen“ Befehl, der durch den Knoten 316 dargestellt wird, und ein „E-Mail Bob“ Befehl, der durch den Knoten 314 dargestellt wird, sein. Die Fähigkeiten 318 können mit einem Knoten 320 verknüpft werden, der einen Benutzer, Bob, repräsentiert. Die Cloud-Plattform 106 kann E-Mail-Befehle erleichtern, um E-Mails an den Benutzer Bob über den E-Mail-Dienst zu senden, der durch den Knoten 304 dargestellt wird. Der Knoten 304 steht mit dem Verbinden eines Knotens 306 über den Rand 398f in Beziehung. Des Weiteren kann die Cloud-Plattform 106 das Senden einer Einladung zu eine virtuellen Sitzung über die Plattform für virtuelle Sitzungen erleichtern, die durch den Knoten 312 dargestellt wird, der über den Rand 358 mit dem Knoten 318 verknüpft ist.The
A
Der Knoten 320 für den Benutzer Bob kann mit der Richtlinie 236 über die „hat“ Rand 364 verbunden sein. Weiterhin kann der Knoten 320 einen „Richtlinie prüfen“ Rand 366 mit einem Portalknoten 324 aufweisen. Der Vorrichtungs-API-Knoten 328 weist einen Richtlinie prüfen-Rand 370 zu dem Richtlinienknoten 236 auf. Der Portalknoten 324 weist einen Rand 368 zu dem Richtlinienknoten 236 auf. Der Portalknoten 324 weist einen Rand 323 zu einem Knoten 326 auf, der einen Benutzereingabemanager (UIM) darstellt. Der Portalknoten 324 steht über einen Rand 323 mit dem UIM-Knoten 326 in Beziehung. Der UIM-Knoten 326 weist einen Rand 323 zu einem Vorrichtungs-API-Knoten 328 auf. Der UIM-Knoten 326 steht über einen Rand 372 mit dem Türbetätigungsknoten 214 in Beziehung. Der Türbetätigungsknoten 214 weist einen Rand 374 zu dem Vorrichtungs-API-Knoten 328 auf. Der Türbetätiger 214 weist einen Rand 335 zu dem virtuellen Objektverbinder 334 auf. Der Vorrichtungshub 332 steht mit dem virtuellen Objektverbinder über den Rand 380 in Beziehung. Der Vorrichtungs-API-Knoten 328 kann ein API für den Türbetätiger 214 sein. Der virtuelle Objektverbinder 334 steht über den Rand 331 mit dem Vorrichtungs-API-Knoten 328 in Beziehung.
Der Vorrichtungs-API-Knoten 328 steht über einen Rand 329 mit einem Transportverbindungsvermittler 330 in Beziehung. Der Transportverbindungsvermittler 330 steht über einen Rand 378 mit einem Vorrichtungshub 332 in Beziehung. Der durch den Knoten 332 dargestellte Vorrichtungshub kann eine Softwarekomponente sein, die die Kommunikation von Daten und Befehlen für den Türbetätiger 214 handhabt. Die Cloud-Plattform 106 kann identifizieren, wo Daten innerhalb der vom Türbetätiger empfangenen Graphprojektion 300 zu speichern sind, indem sie die Knoten und Ränder zwischen den Punkten 216 und 218 und dem Vorrichtungshubknoten 332 identifiziert. In ähnlicher Weise kann die Cloud-Plattform 308 Befehle für den Türbetätiger identifizieren, was durch den durch den Knoten 332 dargestellten Vorrichtungshub erleichtert werden kann, z. B. durch Identifizieren von Rändern zwischen dem Vorrichtungshubknoten 332 und einem offene Tür-Knoten 352 und einem geschlossene Tür-Knoten 350. Der Türbetätiger 114 weist einen Rand „hat ein Asset abgebildet“ 280 zwischen dem Knoten 214 und einem Fähigkeitsknoten 348 auf. Der Fähigkeitsknoten 348 und die Knoten 352 und 350 sind durch Ränder 396 und 394 verknüpft.
The
Der Vorrichtungshub 332 ist über einen Rand 384 mit einem Cluster 336 verknüpft. Der Cluster 336 ist über Ränder 386 und den Rand 389 mit dem Verbinder A 340 und dem Verbinder B 338 verknüpft. Der Verbinder A 340 und der Verbinder B 338 sind mit einem externen System 344 über Ränder 388 und 390 verknüpft. Das externe System 344 ist über einen Rand 392 mit einem Türbetätiger 342 verknüpft.
Unter Bezugnahme auf
Ein Gebäudeknoten 404 stellt ein bestimmtes Gebäude dar, das zwei Stockwerke beinhaltet. Ein Knoten 402 des Stockwerks 1 ist mit dem Gebäudeknoten 404 über Rand 460 verknüpft, während ein Knoten 406 des Stockwerks 2 mit dem Gebäudeknoten 404 über Rand 462 verknüpft ist. Stockwerk 2 beinhaltet einen bestimmten Raum 2023, der durch Rand 464 zwischen dem Knoten 406 des Stockwerks 2 und dem Knoten 408 des Raums 2023 dargestellt wird. Verschiedene Ausrüstungsteile sind in dem Raum 2023 beinhaltet. Ein durch den Lichtknoten 416 dargestelltes Licht, ein Nachttischlampenknoten 414, ein Nachttischlampenknoten 412 und ein Flurlichtknoten 410 stehen mit dem Knoten 408 des Raums 2023 über Rand 466, Rand 472, Rand 470 und Rand 468 in Beziehung.A
Das durch den Lichtknoten 416 dargestellte Licht steht über Rand 484 mit einem Lichtverbinder 426in Beziehung. Der Lichtverbinder 426 steht über Ränder 484, 486 und 488 mit mehreren Befehlen für das durch den Lichtknoten 416 dargestellte Licht in Beziehung. Die Befehle können ein Helligkeits-Sollwert 424, ein Ein-Befehl 425 und ein Farbton-Sollwert 428 sein. Die Cloud-Plattform 106 kann eine Anforderung empfangen, um Befehle für das durch das Licht 416 dargestellte Licht zu identifizieren, und kann die Knoten 424-428 identifizieren und der anfordernden Entität einen Hinweis auf die durch die Knoten 424-428 repräsentierten Befehle bereitstellen. Die anfordernde Entität kann dann Befehle für die durch die Knoten 424-428 repräsentierten Befehle senden.The light represented by
Der Nachttischlampenknoten 414 ist über einen Rand 413 mit einem Nachttischlampenverbinder 481 verknüpft. Der Verbinder 481 steht mit Befehlen für die durch den Nachttischlampenknoten 414 repräsentierte Nachttischlampe über Ränder 492, 496 und 494 in Beziehung. Die Befehlsknoten sind ein Helligkeitssollwertknoten 432, ein Ein-Befehlsknoten 434 und ein Farbbefehl 436. Das Flurlicht 410 steht über einen Rand 498d mit einem Flurlichtverbinder 446 in Beziehung. Der Flurlichtverbinder 446 ist über Ränder 498g, 498f und 498e mit mehreren Befehlen für den Flurlichtknoten 410 verknüpft. Die Befehle werden durch einen Ein-Befehlsknoten 452, einen Farbtonsollwertknoten 450 und einen Glühbirnenaktivitätsknoten 448 dargestellt.The
Die Graphprojektion 400 beinhaltet einen Raumnamenknoten 422, der über Ränder 474 und 476 mit einem Server-A-Knoten 418 und einem Server-B-Knoten 420 in Beziehung steht. Der Raumnamenknoten 422 steht mit dem Nachttischlampenverbinder 481, dem Nachttischlampenverbinder 444 und dem Flurlichtverbinder 446 über Ränder 482, 480 und 478 in Beziehung. Der Nachttischlampenverbinder 444 steht mit Befehlen, z. B. dem Farbbefehlsknoten 440, dem Farbtonsollwertbefehl 438, einem Helligkeitssollwertbefehl 456 und einem Ein-Befehl 454 über Ränder 498c, 498b, 498a und 498 in Beziehung.The
Unter allgemeiner Bezugnahme auf
Die Entitätsklasse 510 könnte eine Thermostatklasse, eine Personenklasse, eine Videokameraklasse, eine Konferenzraumklasse usw. sein. Die Entitätsklasse 510 kann eine allgemeine Kategorie einer Entität sein, die alle der Attribute der Entität durch die Eigenschaften, Tags und Zustände beschreibt, die in der Schemadefinition 500 definiert sind. Wenn eine neue Entität in einem digitalen Zwilling erzeugt wird, können alle Eigenschaften, Tags und/oder Zustände für die neue Entität auch erzeugt und durch Beziehungen basierend auf der Schemadefinition 500 mit der neuen Entität verknüpft werden. Die Schemadefinition 500 kann in einigen Ausführungsformen in einer Datenbank gespeichert werden.The
Die Entitätseigenschaften, die Entitätseigenschaft 512 und/oder die Entitätseigenschaft 514, könnten Eigenschaften der Entitätsklasse 510 sein, z. B. Eingaben eines Thermostaten, Ausgaben des Thermostaten, Rechenressourcen eines Rechensystems, Kapazität eines Boilers, maximale Luftwechsel einer Lüftungsanlage usw. Das Entitätstag 516 kann ein Tag der Entitätsklasse 510 angeben, z. B. angeben, dass ein Thermostat Teil einer Testgruppe ist, ein Datum angeben, an dem eine Wartung an einer Pumpensystem durchgeführt werden sollte, angeben, wann ein Filter zuletzt gewechselt wurde usw. Der Entitätszustand 518 könnte einen Zustand einer Entität angeben, z. B. eine von einem Temperatursensor gemessene Temperatur, einen Sollwert eines Thermostaten, eine Luftqualitätsmessung eines Luftqualitätssensors, eine Angabe, dass sich ein Modul mit variablem Luftvolumen (VAV) in einem Fehlerzustand befindet usw.The entity properties,
Der Erweiterbarkeitsmanager 502 kann konfiguriert sein, um die Schemadefinition 500 durch Hinzufügen eines erweiterten Schemas 508 zu der Schemadefinition 500 zu erweitern. Der Erweiterbarkeitsmanager 502 kann die Erweiterung zur Laufzeit durchführen, während ein Gebäudesystem, auf dem der digitale Zwilling läuft, derzeit in Betrieb ist, ohne jegliche Ausfallzeit, Neukonfiguration, Neuzusammenstellung, manuellen Eingriff usw. zu erfordern. Der Erweiterbarkeitsmanager 502 beinhaltet einen erweiterbaren Eigenschaftsmanager 504 und den erweiterbaren Zustandsmanager 506.The
Der erweiterbare Eigenschaftsmanager 504 kann konfiguriert sein, um Eigenschaften und/oder Tags zu der Schemadefinition 500 hinzuzufügen. Beispielsweise kann der Manager 504 Tags und/oder Eigenschaften hinzufügen, z. B. das erweiterte Entitätstag 520 und/oder die erweiterte Entitätseigenschaft 522. Das Tag oder die Eigenschaft, die dem erweiterten Schema 508 hinzugefügt wird, können beliebige der hierin diskutierten Tags oder Eigenschaften sein. Der Manager 506 kann Zustände zu dem erweiterten Schema 508 hinzufügen, z. B. den erweiterten Entitätszustand 524. Der erweiterte Entitätszustand kann ein beliebiger hierin beschriebener Zustand sein. Der Manager 502 kann einen digitalen Zwilling basierend auf dem erweiterten Schema 508 aktualisieren. Beispielsweise kann der Manager 502 für jede Instanz der Entitätsklasse 510 veranlassen, dass jede Instanz der Entitätsklasse 510 neue Tags, neue Eigenschaften und/oder neue Zustände beinhaltet, die durch das erweiterte Entitätstag 520, die erweiterte Entitätseigenschaft 522 und/oder den erweiterten Entitätszustand 524 definiert sind. In einigen Ausführungsformen werden die Tags, Eigenschaften und/oder Zustände auf Standardwerte festgelegt.The
Unter Bezugnahme auf
Der digitale Zwilling 608 beinhaltet Knoten 612-628, die über Ränder miteinander in Beziehung stehen können. Die Knoten und Ränder des digitalen Zwillings 608 können einen Graphen bilden, z. B. einen der Graphen, die unter Bezugnahme auf
Der Stockwerksknoten 622 steht mit einem Raumheizungsknoten 626 in Beziehung, der angibt, dass das Stockwerk eine Raumheizung aufweist. Der Stockwerksknoten 622 und die Raumheizung 626 stehen mit einem Thermostatknoten 628 in Beziehung, durch Ränder, die angeben, dass das Stockwerk einen Thermostat aufweist, der die Raumheizung betreibt. Der Thermostatknoten 628 steht mit einem Temperatursollwertknoten 624 in Beziehung, um den Temperatursollwert des Thermostaten anzugeben.The
Der Manager 504 beinhaltet einen Benutzeraktualisierungsdetektor 600, einen Neuer-Knoten-Detektor 602, einen Neuer-Rand-Detektor 604 und einen Eigenschafts- oder Tag-Aktualisierer 606. Der Benutzeraktualisierungsdetektor 600 kann konfiguriert sein, um Informationen von der Benutzervorrichtung 176 zu empfangen. Die Informationen können Anforderungen für neue Eigenschaften oder Tags sein, die zu verschiedenen Entitätsklassen hinzugefügt werden sollen. Der Detektor 600 kann die von der Benutzervorrichtung 176 empfangenen Daten analysieren und identifizieren, zu welchen Entitätsklassen Eigenschaften und/oder Tags hinzugefügt werden sollten. Der Detektor 600 kann veranlassen, dass der Eigenschafts- oder Tag-Aktualisierer 606 die neuen Eigenschaften und/oder Tags zu der Entitätsklasse in dem Schema des digitalen Zwillings 608 hinzufügt und weiter veranlassen, dass entsprechende Knoten und/oder Ränder zu dem digitalen Zwilling 608 hinzugefügt werden, um die neuen Eigenschaften und/oder Tags darzustellen.The
Der Neuer-Knoten-Detektor 602 kann identifizieren, dass ein neuer Knoten zu dem digitalen Zwilling 608 hinzugefügt wurde. Neue Knoten, die zu dem digitalen Zwilling 608 hinzugefügt werden, können angeben, dass neue Ausrüstungsteile in einem Gebäude installiert wurden, neue Konferenzräume in dem Gebäude gebildet wurden, neue Ausrüstung über ein Netzwerk entdeckt wurde usw. Beispielsweise könnte ein zentraler Lüfter in dem Gebäude installiert sein, der zentrale Lüfterknoten 632 könnte zu dem digitalen Zwilling 608 hinzugefügt werden, um anzugeben, dass der zentrale Lüfter für das Gebäude arbeitet, das durch das Gebäude 620 dargestellt wird. Der Neuer-Knoten-Detektor 602 könnte den neuen zentralen Lüfterknoten 632 identifizieren und/oder der Neuer-Rand-Detektor 604 könnte einen neuen Rand zwischen dem Gebäude 620 und dem zentralen Lüfter 632 identifizieren. Der Manager 504 könnte identifizieren, dass die neuen Knoten und/oder Ränder angeben, dass zu dem digitalen Zwilling 608 neue Eigenschaften und/oder Tags hinzugefügt werden sollten, wobei die neuen Eigenschaften und/oder Tags das Schema des digitalen Zwillings 608 aktualisieren können.The
Wenn beispielsweise ein zentraler Lüfter zu dem Gebäude hinzugefügt wird, z. B. der zentrale Lüfter 632, und ein Rand zwischen dem Knoten 632 und dem Gebäude 620 hinzugefügt wird, könnte der Manager 504 identifizieren, dass Steuervorrichtungen des Gebäudes in der Lage sein sollten, den zentralen Lüfter zu steuern, z. B. weisen die Steuervorrichtungen die Fähigkeit auf, den zentralen Lüfter zu steuern, z. B. weil sie mit dem zentralen Lüfter verbunden sind (identifiziert durch Erkennen von Beziehungen zwischen dem zentralen Lüfterknoten 632 und einem Knoten, der die Steuervorrichtungen darstellt). Der Manager 504 kann zu dem digitalen Zwilling 608 einen Lüftersteuerungseigenschaftsknoten 630 und einen Lüftersteuerungseigenschaftsknoten 634 hinzufügen. Diese neuen Lüftersteuerungseigenschaften können das Schema des digitalen Zwillings 608 erweitern, um die Tatsache zu berücksichtigen, dass die Thermostate, die durch die Knoten 614 und 628 dargestellt werden, nun einen zentralen Lüfter steuern können, d. h. dargestellt durch den zentralen Lüfterknoten 632. Die Knoten 630 und 634 können in einigen Ausführungsformen Fähigkeiten sein.For example, if a central fan is added to the building, e.g. e.g.
Der Eigenschafts- oder Tag-Aktualisierer 606 kann konfiguriert sein, um Eigenschaften und/oder Tags basierend auf den von den Detektoren 600-604 gemachten Erkennungen, Identifizierungen und/oder Bestimmungen zu aktualisieren. Der Aktualisierer 606 kann konfiguriert sein, um ein Schema zu aktualisieren, das den digitalen Zwilling 608 definiert, um eine aktualisierte Version des digitalen Zwillings 608, den digitalen Zwilling 610, zu erzeugen. Der Aktualisierer 606 kann veranlassen, dass Aktualisierungen an dem digitalen Zwilling 608 basierend auf dem Schema vorgenommen werden. Beispielsweise kann der Aktualisierer 606 das aktualisierte Schema konsultieren, um die Eigenschaften und/oder Tags existierender Entitäten des digitalen Zwillings 608 zu aktualisieren. Des Weiteren, wenn zu dem digitalen Zwilling 608 neue Entitäten der aktualisierten Entitätsklasse hinzugefügt werden, können sie mit den neuen Eigenschaften und/oder Tags hinzugefügt werden. Der Aktualisierer 606 kann Knoten hinzufügen, die die neuen Eigenschaften und/oder Tags und Ränder zwischen den neuen Knoten und dem Entitätsknoten darstellen, der eine bestimmte Instanz der Entitätsklasse darstellt.The property or
Unter Bezugnahme auf
In Schritt 702 kann die Gebäudedatenplattform 100 eingesetzt werden. Die Gebäudedatenplattform 100 kann eingesetzt werden, um basierend auf einem digitalen Zwilling zu arbeiten, z. B. dem digitalen Zwilling 608 und/oder einem beliebigen anderen digitalen Zwilling und/oder einer anderen hierin beschriebenen Graphdatenstruktur. Beispielsweise können verschiedene Softwareteile und/oder Systeme (z. B. die Anwendungen 110) gegen den digitalen Zwilling laufen, z. B. Entscheidungen zur Vorrichtungssteuerung für die Gebäudeteilsysteme 122 treffen (z. B. Temperatur, Feuchtigkeit, Beleuchtung usw. steuern), Alarme bestimmen, den Energieverbrauch der Gebäudeteilsysteme 122 reduzieren usw.In
In Schritt 704 empfängt der Manager 504 eine Angabe zum Hinzufügen einer Eigenschaft oder eines Tags zu einer Entitätsklasse eines Schemas des digitalen Zwillings. Die Angabe kann in einigen Ausführungsformen von einem Benutzer empfangen werden, z. B. über die Benutzervorrichtung 176. In einigen Ausführungsformen kann der Manager 504 eine Einsicht ableiten, dass die neue Eigenschaft oder das neuer Tag hinzugefügt werden sollte, indem Änderungen an dem digitalen Zwilling identifiziert werden, z. B. Hinzufügungen oder Abzüge von Knoten und/oder Rändern in dem digitalen Zwilling 608.
In Schritt 706 arbeitet der Manager 504, um die Eigenschaft oder das Tag zu Entitäten des digitalen Zwillings hinzuzufügen, wobei die Entitäten der Entitätsklasse angehören. Dadurch wird das in dem digitalen Zwilling implementierte Schema erweitert. Die Erweiterung des Schemas kann zusätzlich zum Hinzufügen der Eigenschaften oder der Knoten zu dem digitalen Zwilling durchgeführt werden, während die Gebäudedatenplattform 100 eingesetzt wird, ohne dass eine Neukonfiguration und/oder Neueinsetzung der Gebäudedatenplattform 100 und/oder des digitalen Zwillings erforderlich ist.In
In
Das Aktualisieren des Schemas mit neuen Eigenschaften oder Tags für eine Entität kann das Hinzufügen von Knoten und/oder Ränder zu dem Graphen für jede Instanz der Entitätsklasse involvieren. Wenn beispielsweise ein neues Tag für einen Thermostaten hinzugefügt wird, kann der Manager 504 veranlassen, dass ein Knoten für das neue Tag für jeden Thermostatknoten zu dem digitalen Zwilling hinzugefügt wird. Der Manager 504 kann einen oder mehrere Ränder veranlassen, den neuen Knoten für das Tag und den Knoten für die Entität in dem digitalen Zwilling in Beziehung zu setzen. In Schritt 708 führt der Manager 504 eine oder mehrere Operationen basierend auf der einen oder den mehreren Eigenschaften und/oder Knoten durch, die dem digitalen Zwilling hinzugefügt wurden, wobei die neuen Eigenschaften oder Knoten das Schema des digitalen Zwillings erweitern.Updating the schema with new properties or tags for an entity may involve adding nodes and/or borders to the graph for each instance of the entity class. For example, if a new tag for a thermostat is added, the
Unter Bezugnahme auf
Das Schema des digitalen Zwillings 608 kann jedoch möglicherweise keinen Mechanismus aufweisen der in der Lage ist, zu beschreiben, ob eine bestimmte Vorrichtung einen Fehler aufweist oder betriebsbereit ist. In dieser Hinsicht kann der Manager 506 basierend auf den vom Agenten 808 getroffenen Feststellungen bestimmen, dem Schema des digitalen Zwillings 608 einen Zustand hinzuzufügen, der den Fehlerzustand des Thermostaten beschreibt. Der Manager 506 kann veranlassen, dass eine Thermostatentitätsklasse einen Zustand beinhaltet, der angibt, ob sich der Thermostat in einem Fehlerzustand befindet oder nicht. Der Manager 506 kann veranlassen, dass alle Thermostate, die basierend auf der Thermostatklasse instanziiert sind, einen Zustand beinhalten, der angibt, ob sich der Thermostat in einem Fehlerzustand befindet oder nicht. Der Manager 506 kann veranlassen, dass der Standardwert des Zustands ein Betriebszustand ist, der angibt, dass kein Fehler vorhanden ist. Wenn der Agent 808 jedoch einen Fehler identifiziert, kann der Zustand auf einen Fehlerzustand festgelegt werden.However, the digital
Beispielsweise könnte der Manager 506 einen Zustand für jede Thermostatentität des digitalen Zwillings 608 hinzufügen. Der Manager 506 könnte den digitalen Zwilling 608 nach allen Entitäten einer Thermostatklasse durchsuchen und den Thermostatknoten 614 und den Thermostatknoten 628 identifizieren. Der Manager 506 könnte veranlassen, dass der Fehlerzustandsknoten 804 für den Thermostatknoten 614 erzeugt und über ein Rand mit dem Thermostatknoten 614 in Beziehung gesetzt wird, basierend auf der an dem Schema für die Thermostatentitätsklasse vorgenommenen Aktualisierung. Der Manager 506 kann den Betriebszustandsknoten 806 und einen Rand zwischen dem Thermostatknoten 628 und dem Betriebszustand 806 zu dem digitalen Zwilling 608 hinzufügen, basierend auf der an dem Schema für die Thermostatentitätsklasse vorgenommenen Aktualisierung. Der Fehlerzustand des Knotens 804 kann angeben, dass der durch den Thermostatknoten 614 dargestellte Thermostat einen Fehler erfährt. Der Betriebszustand des Knotens 806 kann angeben, dass der durch den Thermostatknoten 628 dargestellte Thermostat keinen Fehler erfährt.For example, the
Der Agent 808 kann die Fehlerbestimmung für den durch den Thermostatknoten 614 dargestellten Thermostaten vornehmen (z. B. durch Verbrauchen von Betriebsdaten, die mit dem Thermostat verbunden sind, z. B. Speichern in dem digitalen Zwilling 608). Der Manager 506 kann ohne gegenteilige Eingabe vom Agenten 808 annehmen, dass sich der durch den Thermostatknoten 628 dargestellte Thermostat in einem Betriebszustand befindet, da der Betriebszustand der Standardzustand sein kann, sofern der Agent 808 nichts anderes angibt.
Unter Bezugnahme auf
With reference to
Der Belegungsagent 904 könnte ein Agent sein, der hoch- und heruntergefahren werden kann, um gegen die Kalenderdaten der Kalenderanwendung 902 zu laufen, um Belegungsniveaus für verschiedene Bereiche des Gebäudes abzuleiten und/oder zu bestimmen, z. B. Räume, Konferenzräume, Sitzungsräume, Stockwerke, das Gebäude selbst usw. Die Belegungsniveaus können in einigen Ausführungsformen vorhergesagte Belegungsniveaus sein, die basierend auf bevorstehenden Sitzungen, die für verschiedene Räume geplant sind, vorhergesagt werden. Der Agent 904 kann eine Zwillingsfunktion sein, Zwillingsfunktionen sind unter Bezugnahme auf die US-Patentanmeldung Nr. 17/354,436, eingereicht am 22. Juni 2021, und die US-Patentanmeldung Nr. 17/354,338, eingereicht am 22. Juni 2021, beschrieben, deren Gesamtheit durch Bezugnahme hierin aufgenommen wird.The
Der Manager 506 kann vorhergesagte Belegungsniveaus für das durch den Stockwerksknoten 616 dargestellte Stockwerk und das durch den Stockwerksknoten 622 dargestellte Stockwerk empfangen. Der Manager 506 kann ein Schema des digitalen Zwillings 608 überprüfen und identifizieren, dass ein Belegungszustand für Stockwerke nicht existiert und dass für die Stockwerke ein Belegungsniveau vorhergesagt wurde. Der Manager 506 kann basierend auf den vom Agenten 904 getroffenen Bestimmungen bestimmen, dass zu dem Schema für eine Stockwerksklasse ein Belegungszustand hinzugefügt werden sollte. Der Manager 506 kann arbeiten, um den Belegungszustand als ein Attribut für eine Stockwerksklasse hinzuzufügen, alle Stockwerksentitäten der Stockwerksklasse (z. B. der Stockwerksknoten 616 und der Stockwerksknoten 622) zu identifizieren, Knoten hinzuzufügen, um das Belegungsniveau darzustellen (z. B. den Belegungsniveauknoten 902 und den Belegungsniveauknoten 904), und die Knoten 902 und 904 mit den Knoten 616 bzw. 622 durch einen oder mehrere Ränder in Beziehung zu setzen.
Die zu dem Schema des digitalen Zwillings für die Stockwerksklasse hinzugefügten Belegungsniveaus können von anderen Anwendungen verbraucht werden. Beispielsweise könnte die Kalenderanwendung 902 die Belegungsniveaudaten in dem digitalen Zwilling 900 verwenden, um zu bestimmen, welche Räume, Stockwerke, Gebäude usw. verfügbar oder gebucht sind. Das Erweitern von Zustandsdefinitionen innerhalb des Schemas des digitalen Zwillings 608 ermöglicht es dem digitalen Zwilling 608, sich an neue Softwareteile anzupassen, die gegen den digitalen Zwilling laufen, und ermöglicht Plug-and-Play-Fähigkeiten und ermöglicht das Hinzufügen und Abfragen von Zuständen zur Laufzeit, ohne dass Modelle aktualisiert, beliebige Dienste neu erstellt oder neu eingesetzt oder beliebige Datenmigrationen durchgeführt werden müssen. Wenn beispielsweise eine neue Anwendung eingesetzt wird, um mit der Gebäudedatenplattform 100 zu laufen, und mit der Ausgabe eines neuen Zustands beginnt, der derzeit nicht in dem Schema des digitalen Zwillings 608 beinhaltet ist, kann der Manager 608 identifizieren, dass die Ausgabe der Anwendung zu dem digitalen Zwilling 608 hinzugefügt werden sollte und das Schema des digitalen Zwillings 608 hinzugefügt werden sollte.The occupancy levels added to the floor class digital twin schema can be consumed by other applications. For example, the
Unter Bezugnahme auf
In Schritt 1002 wird die Gebäudedatenplattform 100 eingesetzt, um basierend auf einem digitalen Zwilling in einem bestimmten Schema zu arbeiten. Die Gebäudedatenplattform 100 kann eingesetzt werden, um basierend auf einem digitalen Zwilling zu arbeiten, z. B. dem digitalen Zwilling 608 und/oder einem beliebigen anderen digitalen Zwilling und/oder einer beliebigen anderen hierin beschriebenen Graphdatenstruktur. Beispielsweise können verschiedene Softwareteile und/oder Systeme (z. B. die Anwendungen 110) gegen den digitalen Zwilling laufen, z. B. Entscheidungen zur Vorrichtungssteuerung für die Gebäudeteilsysteme 122 treffen (z. B. Temperatur, Feuchtigkeit, Beleuchtung usw. steuern), Alarme bestimmen, den Energieverbrauch der Gebäudeteilsysteme 122 reduzieren usw.In
In Schritt 1004 kann die Gebäudedatenplattform 100 einen Agenten ausführen, um basierend auf Informationen des digitalen Zwillings 608 zu arbeiten. In einigen Ausführungsformen kann zusätzlich zu oder anstelle des Agenten eine andere Anwendung gegen den digitalen Zwilling 608 laufen, z. B. eine Fehlererkennungsanwendung, eine Kalenderanwendung, eine Belegungsvorhersageanwendung, eine Energiesparanwendung usw. In einigen Ausführungsformen kann der Agent (und/oder die zusätzliche Anwendung) gegen Daten des digitalen Zwillings (und/oder andere Informationen der zusätzlichen Anwendung) laufen, um neue Informationen zu bestimmen.In
In Schritt 1006 können ein oder mehrere Zustände für eine Entität einer Entitätsklasse in dem Schema des digitalen Zwillings 608 durch den Manager 506 abgeleitet werden. Der Manager 506 kann Informationen prüfen, die durch den Agenten und/oder die Anwendung bestimmt werden, um zu bestimmen, dass ein neuer Zustand zu einer Entitätsklasse für das Schema des digitalen Zwillings 608 hinzugefügt werden sollte. Beispielsweise, wenn der Agent eine Fehlerangabe, eine Belegungsangabe usw. für eine bestimmte Entität ausgibt, die derzeit nicht in dem Schema des digitalen Zwillings berücksichtigt wird, kann der Manager 506 bestimmen, einen neuen Zustandstyp zu dem Schema für die Entitätsklasse hinzuzufügen.In
In Schritt 1008 kann der Manager 506 einen oder mehrere Zustände zu Entitäten der Entitätsklasse in dem digitalen Zwilling hinzufügen und somit das Schema des digitalen Zwillings 608 erweitern, während das Gebäudesystem eingesetzt wird, um basierend auf dem digitalen Zwilling zu arbeiten. Der Manager 506 kann die Zustände als Knoten zu dem digitalen Zwilling 608 hinzufügen, mit Rändern zwischen den Zustandsknoten und den Knoten, die Entitäten darstellen. Der Manager 506 kann den digitalen Zwilling 608 nach jeder Entität der Entitätsklasse durchsuchen und den neuen Zustand zu jeder Entität der Entitätsklasse hinzufügen. In Schritt 1010 können eine oder mehrere Operationen basierend auf dem einen oder den mehreren neuen Zuständen des digitalen Zwillings 608 durchgeführt werden. Die eine oder die mehreren Operationen können die neuen Zustände des digitalen Zwillings 608 verbrauchen und basierend auf den neuen Zuständen operative Entscheidungen treffen. Beispielsweise könnten die vorhergesagten Belegungszustände verwendet werden, um geeignete Temperatur- und/oder Feuchtigkeitssteuerungsvorgänge der Gebäudeteilsysteme 122 zu bestimmen. Ebenso könnten Fehlerzustände der Gebäudeteilsysteme 122 von einem Wartungssystem verwendet werden, um eine Wartung für die Gebäudeteilsysteme 122 zu planen.In
Konfiguration beispielhafter AusführungsformenConfiguration of Example Embodiments
Der Aufbau und die Anordnung der Systeme und Verfahren, wie sie in den verschiedenen beispielhaften Ausführungsformen gezeigt sind, dienen nur der Veranschaulichung. Obwohl nur einige Ausführungsformen in dieser Offenbarung detailliert beschrieben wurden, sind viele Modifikationen möglich (z. B. Variationen in Größen, Abmessungen, Strukturen, Formen und Proportionen der verschiedenen Elemente, Werte von Parametern, Montageanordnungen, Verwendung von Materialien, Farben, Ausrichtung usw.). Beispielsweise kann die Position von Elementen umgekehrt oder anderweitig variiert werden und die Art oder Anzahl von diskreten Elementen oder Positionen kann geändert oder variiert werden. Dementsprechend sollen alle diese Modifikationen in den Umfang der vorliegenden Offenbarung eingeschlossen sein. Die Reihenfolge oder Abfolge beliebiger Prozess- oder Verfahrensschritte kann nach alternativen Ausführungsformen variiert oder neu geordnet werden. Andere Substitutionen, Modifikationen, Änderungen und Weglassungen können in der Konstruktion, den Betriebsbedingungen und der Anordnung der beispielhaften Ausführungsformen vorgenommen werden, ohne vom Umfang der vorliegenden Offenbarung abzuweichen.The structure and arrangement of the systems and methods shown in the various exemplary embodiments are for illustration only. Although only some embodiments have been described in detail in this disclosure, many modifications are possible (eg, variations in sizes, dimensions, structures, shapes, and proportions of the various elements, values of parameters, mounting arrangements, use of materials, colors, orientation, etc.). For example, the position of elements can be reversed or otherwise varied, and the type or number of discrete elements or positions can be changed or varied. Accordingly, 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 varied or rearranged according to alternative embodiments. Other substitutions, modifications, changes, and omissions can be made in the construction, operating conditions, and arrangement of the exemplary embodiments without departing from the scope of the present disclosure.
Die vorliegende Offenbarung betrachtet Verfahren, Systeme und Programmprodukte auf beliebigen maschinenlesbaren Medien zum Bewerkstelligen verschiedener Operationen. Die Ausführungsformen der vorliegenden Offenbarung können unter Verwendung vorhandener Computerprozessoren oder durch einen speziellen Computerprozessor für ein geeignetes System, das für diesen oder einen anderen Zweck eingebaut wird, oder durch ein festverdrahtetes System implementiert werden. Ausführungsformen innerhalb des Umfangs der vorliegenden Offenbarung beinhalten Programmprodukte, die maschinenlesbare Medien zum Tragen oder Aufweisen von darauf gespeicherten maschinenausführbaren Anweisungen oder Datenstrukturen umfassen. Solche maschinenlesbaren Medien können alle verfügbaren Medien sein, auf die von einem Universal- oder Spezialcomputer oder einer anderen Maschine mit einem Prozessor zugegriffen werden kann. Beispielsweise können solche maschinenlesbaren Medien RAM, ROM, EPROM, EEPROM, CD-ROM oder andere optische Plattenspeicher, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder jedes andere Medium umfassen, das zum Tragen oder Speichern von gewünschtem Programmcode in Form von maschinenausführbaren Anweisungen oder Datenstrukturen verwendet werden kann und auf die von einem Universal- oder Spezialcomputer oder einer anderen Maschine mit einem Prozessor zugegriffen werden kann. Wenn Informationen über ein Netzwerk oder eine andere Kommunikationsverbindung (entweder fest verdrahtet, drahtlos oder eine Kombination aus fest verdrahtet oder drahtlos) an eine Maschine übertragen oder bereitgestellt werden, betrachtet die Maschine die Verbindung ordnungsgemäß als ein maschinenlesbares Medium. Daher wird jede solche Verbindung ordnungsgemäß als ein maschinenlesbares Medium bezeichnet. Kombinationen des vorstehend genannten sind ebenfalls im Umfang der maschinenlesbaren Medien beinhaltet. Maschinenausführbare Anweisungen beinhalten beispielsweise Anweisungen und Daten, die einen Universalcomputer, einen Spezialcomputer oder eine Spezialverarbeitungsmaschine veranlassen, eine bestimmte Funktion oder eine Gruppe von Funktionen durchzuführen.The present disclosure contemplates methods, systems, and program products on any machine-readable media for accomplishing various operations. The embodiments of the present disclosure may be implemented using existing computer processors, or by a dedicated computer processor for an appropriate system built in for this or another purpose, or by a hardwired system. Embodiments within the scope of the present disclosure include program products comprising machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine having a processor. For example, such machine-readable media may include RAM, ROM, EPROM, EEPROM, CD-ROM, or other optical disk storage, magnetic disk storage, or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer or other machine with a processor. When information is transmitted or made available to a machine over a network or other communications link (either hardwired, wireless, or a combination of hardwired and wireless), the machine properly considers the connection to be a machine-readable medium. Therefore, any such connection is properly termed a machine-readable medium. Combinations of the foregoing are also included within the scope of machine-readable media. Machine-executable instructions include, for example, instructions and data that cause a general purpose computer, special purpose computer, or special purpose processing machine to perform a particular function or group of functions.
Obwohl die Figuren eine bestimmte Reihenfolge von Verfahrensschritten zeigen, kann die Reihenfolge der Schritte von dem dargestellten abweichen. Es können auch zwei oder mehr Schritte gleichzeitig oder teilweise gleichzeitig durchgeführt werden. Eine solche Variation hängt von den gewählten Software- und Hardwaresystemen und von der Wahl des Designers ab. Alle diese Variationen liegen innerhalb des Umfangs der Offenbarung. Ebenso könnten Software-Implementierungen mit Standard-Programmiertechniken mit regelbasierter Logik und anderer Logik durchgeführt werden, um die verschiedenen Verbindungsschritte, Verarbeitungsschritte, Vergleichsschritte und Entscheidungsschritte durchzuführen.Although the figures show a specific order of method steps, the order of steps may differ from that illustrated. Two or more steps can also be carried out simultaneously or partially simultaneously. Such a variation depends on the chosen software and hardware systems and on the choice of the designer. All of these variations are within the scope of the disclosure. Likewise, software implementations could be made using standard programming techniques with rule-based logic and other logic to perform the various connection steps, processing steps, comparison steps, and decision steps.
In verschiedenen Implementierungen können die hierin beschriebenen Schritte und Operationen auf einem Prozessor oder in einer Kombination von zwei oder mehr Prozessoren durchgeführt werden. Beispielsweise könnten in einigen Implementierungen die verschiedenen Operationen in einem zentralen Server oder einer Gruppe von zentralen Servern durchgeführt werden, die konfiguriert sind, um Daten von einer oder mehreren Vorrichtungen (z. B. Randrechenvorrichtungen/Steuerungen) zu empfangen und die Operationen durchzuführen. In einigen Implementierungen können die Operationen von einem oder mehreren lokalen Steuerungen oder Rechenvorrichtungen (z. B. Randvorrichtungen) durchgeführt werden, wie etwa Steuerungen, die einem bestimmten Gebäude oder Gebäudeteil zugeordnet sind und/oder darin angeordnet sind. In einigen Implementierungen können die Operationen durch eine Kombination aus einem oder mehreren zentralen oder externen Rechenvorrichtungen/Servern und einem oder mehreren lokalen Steuerungen/Rechenvorrichtungen durchgeführt werden. Alle diese Implementierungen werden im Rahmen der vorliegenden Offenbarung in Betracht gezogen. Wenn sich die vorliegende Offenbarung auf ein oder mehrere computerlesbare Speichermedien und/oder eine oder mehrere Steuerungen bezieht, können weiter, sofern nicht anders angegeben, solche computerlesbaren Speichermedien und/oder ein oder mehrere Steuerungen als ein oder mehrere zentrale Server, ein oder mehrere lokale Steuerungen oder Rechenvorrichtungen (z. B. Randvorrichtungen), jede Kombination davon oder jede andere Kombination von Speichermedien und/oder Steuerungen, unabhängig vom Standort solcher Vorrichtungen, implementiert sein.In various implementations, the steps and operations described herein may be performed on one processor or in a combination of two or more processors. For example, in some implementations, the various operations could be performed at a central server or group of central servers configured to receive data from one or more devices (e.g., edge computing devices/controllers) and perform the operations. In some implementations, the operations may be performed by one or more local controllers or computing devices (e.g., edge devices), such as controllers associated with and/or located within a particular building or portion of a building. In some implementations, the operations may be performed by a combination of one or more central or external computing devices/servers and one or more local controllers/computing devices. All of these implementations are contemplated within the scope of the present disclosure. When the present disclosure relates to one or more computer-readable storage media and/or one or more controllers, unless otherwise noted, such computer-readable storage media and/or one or more controllers may further be 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.
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturPatent Literature Cited
- US 17136752 B [0050]US 17136752B [0050]
- US 17136768 B [0050]US 17136768 B [0050]
- US 17136785 B [0050]US 17136785B [0050]
- US 17134661 B [0052]US 17134661B [0052]
- US 17134664 [0052]US17134664 [0052]
- US 17134671 B [0052]US 17134671B [0052]
- US 17134659 B [0052]US 17134659B [0052]
- US 17134973 B [0052]US 17134973B [0052]
- US 17134999 B [0052]US 17134999 B [0052]
- US 17135023 B [0052]US 17135023B [0052]
- US 17134691 B [0052]US 17134691B [0052]
- US 17135056 B [0052]US 17135056B [0052]
- US 17135009 B [0052]US 17135009 B [0052]
- US 62951891 B [0060]US62951891B [0060]
Zitierte Nicht-PatentliteraturNon-patent Literature Cited
- Brick: Towards a Unified Metadata Schema For Buildings von Balaji [0047]Brick: Towards a Unified Metadata Schema For Buildings by Balaji [0047]
Claims (36)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/528,026 | 2021-11-16 | ||
US17/528,038 US20230152765A1 (en) | 2021-11-16 | 2021-11-16 | Building data platform with schema extensibility for states of a digital twin |
US17/528,026 US11796974B2 (en) | 2021-11-16 | 2021-11-16 | Building data platform with schema extensibility for properties and tags of a digital twin |
US17/528,038 | 2021-11-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022129829A1 true DE102022129829A1 (en) | 2023-05-17 |
Family
ID=86144436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022129829.9A Pending DE102022129829A1 (en) | 2021-11-16 | 2022-11-11 | BUILDING DATA PLATFORM WITH SCHEME EXTENSIBILITIES FOR DIGITAL TWIN STATES, PROPERTIES AND TAGS |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022129829A1 (en) |
-
2022
- 2022-11-11 DE DE102022129829.9A patent/DE102022129829A1/en active Pending
Non-Patent Citations (1)
Title |
---|
Brick: Towards a Unified Metadata Schema For Buildings von Balaji |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11777759B2 (en) | Building data platform with graph based permissions | |
DE112021005718T5 (en) | SYSTEMS AND METHODS FOR CONFIGURING A BUILDING MANAGEMENT SYSTEM | |
DE112020004623T5 (en) | ML-BASED EVENT HANDLING | |
DE112015002433T5 (en) | Systems and techniques for predicative data analysis | |
US20230152765A1 (en) | Building data platform with schema extensibility for states of a digital twin | |
CH703073B1 (en) | Comparing models a complex system. | |
DE112013005993T5 (en) | Method, apparatus and computer readable medium for optimal determination of data subsets | |
WO2004084103A1 (en) | Analysis of a model of a complex system | |
CH698890B1 (en) | Modeling a complex system. | |
US20220390913A1 (en) | Building management system with intelligent visualization | |
DE102022129829A1 (en) | BUILDING DATA PLATFORM WITH SCHEME EXTENSIBILITIES FOR DIGITAL TWIN STATES, PROPERTIES AND TAGS | |
WO2022266509A1 (en) | Building data platform with digital twin enrichment | |
DE112022000886T5 (en) | DATA PROCESSING SYSTEM WITH MANIPULATION OF LOGICAL DATA RECORD GROUPS | |
US20230350362A1 (en) | Building data platform with schema extensibility for properties and tags of a digital twin | |
US20230205158A1 (en) | Building data platform with analytics development | |
US11704311B2 (en) | Building data platform with a distributed digital twin | |
US20240004361A1 (en) | Building automation system with digital twin population from commissioning workflow | |
US20220368558A1 (en) | Building data platform with an enrichment loop | |
US20230152762A1 (en) | Building data platform with artificial intelligence service requirement analysis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed |