Dynamic ontology data manipulation
By dynamically updating the links of asset and device data models in the Internet of Things environment and processing device data models using inference engines, the problem of managing and analyzing complex data structures is solved, efficient data management and analysis is achieved, and system flexibility is improved. Dynamicity of the user interface.
Patent Information
- Application Number
- CN201980081056.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-12-07
- Filing Date
- 2019-10-09
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2039-10-09
AI Technical Summary
In the Internet of Things (IoT) environment, it becomes very difficult to manage and analyze complex data structures from multiple heterogeneous devices, especially when dynamic updates of data models and accessing cloud services.
By dynamically updating the link between the asset data model and the device data model, using the inference engine to process the device data model to determine the normalized data relationship path, and performing asset data model queries to analyze asset data model component metrics.
It realizes effective management and analysis of data from multiple heterogeneous devices, improves the flexibility and independence of the system, allows individual devices or system components to be independently developed and deployed, and at the same time improves the dynamicity and efficiency of the user interface.
Smart Images

Figure CN113168273B_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of priority to U.S. Provisional Patent Application No. 62 / 743,333, filed on October 9, 2018, and U.S. Provisional Patent Application No. 62 / 776,745, filed on December 7, 2018, the disclosures of which are incorporated herein by reference in their entirety. Technical Field
[0003] The present disclosure relates to digital data organization, and more particularly to systems and techniques for organizing data associated with distributed systems using dynamic ontologies. Background Art
[0004] The Internet of Things (IoT) promises to interconnect elements together on a massive scale. These connected elements can include devices, vehicles, homes, cities, and any other system or collection of systems that contain suitable electronic hardware, software, sensors, and connectivity that enable these systems to collect and exchange data. This merger allows the vast amounts of data collected on a global scale to be transformed into knowledge and actionable information. The interactions and collaborations between systems are formed to accomplish one or more specific tasks. These tasks vary depending on the context and environment of the application. For example, tasks range from sensing and monitoring environmental characteristics (such as the temperature or humidity of a single room) to controlling and optimizing an entire building or facility to achieve a larger goal (such as an energy management strategy).
[0005] Depending on the application, the connected elements include heterogeneous and / or homogeneous hardware that facilitates sensing, operation, actuation, data capture, data storage, data processing, and / or data analysis. Each type of element contains a unique data structure that details the functionality of the hardware itself and / or a digital representation of the measured parameters. For example, a temperature sensor can implement different hardware to facilitate temperature measurement. The hardware in turn provides different data parameters, and / or operating units, such as temperature measurement units, time formats, MAC addresses, IP addresses, and / or CPU type data.
[0006] The complexity of the units, values, and parameters of the data structures is exacerbated by the distribution of storage and organization that may exist in any number of memory storage locations or hybrid data structures across multiple repositories. Moreover, the compatibility requirements with any associated cloud services further exacerbate this complexity. Furthermore, while there is currently a tight coupling between a specific cloud application and a locally connected gateway, system, or device, this tight coupling has a high dependency between users or systems to update the respective data models to allow access to the necessary data. Therefore, with the wide variety of available connection elements and their corresponding data structures that are tightly constrained to the associated cloud services, truly large amounts of heterogeneous data are available, and efficiently and effectively accessing and analyzing this huge amount of data poses a serious challenge. Summary of the invention
[0007] Embodiments described herein provide a method, system, and non-transitory computer-readable medium, including dynamically updating a first data model link between a first one or more asset data model components of an asset data model and a first one or more device data model components of a device data model. The device data model includes data collected from a plurality of devices and organized based on one or more attributes of the plurality of devices. The method, system, and non-transitory computer-readable medium also include processing the device data model to determine a normalized data relationship path used by an inference engine to populate a device element data set. Additionally, the method, system, and non-transitory computer-readable medium include executing an asset data model query for the asset data model through operation of one or more computer processors based on the updated first data model link, including analyzing asset data model component metrics by querying the device element data set. The method, system, and non-transitory computer-readable medium also include generating an asset data model descriptive analysis determination output based on execution of the asset data model query. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] A more detailed description of the disclosure briefly summarized above can be obtained by reference to various embodiments, some of which are illustrated in the accompanying drawings. Although the drawings illustrate selected embodiments described herein, these drawings should not be considered limiting of its scope, as the disclosure may allow other equally effective embodiments.
[0009] Figure 1 Aspects of a system for dynamic ontology data manipulation are shown in accordance with various embodiments described herein.
[0010] Figure 2A Aspects of cloud applications are shown that are closely tied to currently existing hardware elements.
[0011] Figure 2BAspects of heterogeneous hardware connection elements that may be connected to a system for performing dynamic ontology data manipulation methods according to various embodiments described herein are shown.
[0012] Figure 3 An exemplary deployment of heterogeneous hardware connected elements to provide data to a system performing dynamic ontological data operations according to various embodiments described herein is shown.
[0013] Figure 4A An exemplary block diagram illustrating components of dynamic ontology data manipulation including data model relationships according to various embodiments of the present disclosure is shown.
[0014] Figure 4B An exemplary block diagram illustrating components of dynamic ontology data operations including alternative embodiments of data model relationships according to various embodiments of the present disclosure is shown.
[0015] Figure 5A An exemplary block diagram is shown illustrating components of dynamic ontology data operations including data model relationships and associated data model components according to various embodiments of the present disclosure.
[0016] Figure 5B An exemplary block diagram is shown illustrating components of dynamic ontology data operations according to various embodiments of the present disclosure, including alternative embodiment data model relationships and associated data model components.
[0017] Figure 6 An example flow chart of a method for dynamic ontology data manipulation according to various embodiments of the present disclosure is shown.
[0018] Figure 7 An example block diagram of a system for dynamic ontology data manipulation according to various embodiments of the present disclosure is shown.
[0019] Figure 8 An example functional block diagram of dynamic ontology data operations according to various embodiments of the present disclosure is shown.
[0020] Fig. 9 is a functional block diagram of a general purpose computer system according to embodiments described herein.
[0021] Fig.10 is based on Fig. 9 A functional block diagram of a general storage system of a general computer system.
[0022] Wherever possible, identical reference numerals have been used to designate identical elements that are common to the figures. However, elements disclosed in one embodiment may be beneficially utilized on other embodiments without specific recitation. DETAILED DESCRIPTION
[0023] To ensure valuable assets are protected, systems and their associated equipment now monitor nearly all critical data from assets and external data that may be relevant to such assets. This vast amount of data is so complex to navigate and so granular in nature that it cannot be used alone to determine the condition of a given asset. While an asset can contain a very complex series of systems, the individual responsible for such an asset may only require a "go" or "no go" to determine the next step.
[0024] To address the complexity of managing a wide variety of different data structures into an organized, human-usable format, systems and methods for dynamic ontology data manipulation may be utilized, as described in this disclosure, among other things.
[0025] Embodiments of the present disclosure provide multiple benefits. These include, but are not limited to, the ability for development teams of various components of the system to work independently of each other. In addition, each device or system component is separated and can be developed independently without modifying cloud-based applications. Support for increased flexibility through dynamic configuration. In one example, when a new sensor with its measurements is added to a gateway device, the associated cloud application can automatically add the associated data structure and its features and relationships. Finally, an enabling library can be provided to each team to accelerate its implementation and reduce development time.
[0026] Additionally, embodiments described herein may facilitate control of devices or system components represented by asset and device data models. Thus, while information may be collected from various devices and system components (i.e., data may flow northbound), embodiments may further provide control logic that may orchestrate control operations of devices and system components (i.e., control instructions may flow southbound).
[0027] In certain embodiments, the model can be extended to model new types of devices. In doing so, embodiments can provide a human-machine interface dynamically generated based on existing asset and device data models. For example, upon receiving a request to model a new device, an embodiment can use existing asset and device data models to determine known device types, and can dynamically generate a graphical user interface that displays a list of device types that a user can select for the new device. In one embodiment, such an interface also includes an option for creating a new device type. After receiving a selection of an existing device type, an embodiment can determine known attributes of the device type based on existing asset and device data models. Such known attributes can include not only the physical characteristics of the device (e.g., the device is configured with actuators such as buttons or sliders and multiple sensor devices), but also the usage attributes of the device (e.g., the device implements a specific control loop, and specific aspects of the device are controllable to some extent). In addition, known attributes can include human-machine interface attributes of the device (e.g., a specific control loop is represented as a UI control element, such as a virtual button shown on a touch screen display device). In this way, the asset and device data model can represent the device using a model-view-controller architecture (e.g., where the model corresponds to the physical characteristics of the device, the view corresponds to the human-machine interface attributes of the device, and the controller corresponds to the usage attributes of the device).
[0028] For example, upon receiving a selection of a first device type, an embodiment may determine (based on the existing asset and device data model) that a device of the first device type includes a light emitting diode (LED) display, one or more sensors, that the LED display is controllable, that the sensor data is historizable, and that the historizable data is represented in the form of a graph or chart on the device's LED display. An embodiment may dynamically generate a graphical user interface that prompts a user to confirm or modify these determinations about the new device being added. In doing so, an embodiment may use existing knowledge stored in the asset and device data model to provide an improved user interface.
[0029] For new types of devices, the device is described in domain model terms (does some measurement, has some actuators, has a location / organization relationship, etc.), but we also want to associate it with the asset model. The device measures fluxes, metrics are averageable, can be graphed, can maintain status, can be connected to control devices to measure its behavior in terms of monitoring, etc. All of this can be determined by the asset model. This provides us with the business context for this device. The UI can provide links to existing systems or devices (links to control loops, links to monitoring devices) with different domain areas (e.g. safety systems).
[0030] Figure 1Aspects of a system for facilitating and / or performing dynamic ontological data organization are shown. A system for performing a method of dynamic ontological data manipulation may include one or more processing systems 110 and a cloud computing environment 120. Connected to the cloud computing environment 120 are various building types, such as residential, commercial and / or industrial facilities (140, 150, and 160). Each building may have an associated data storage array (130a, 130b, and 130n, respectively). One or more connected elements (as shown in FIG. 2) are associated with these buildings, and network connections 180 are also associated with these buildings to allow data to be exchanged between various parts of the system.
[0031] There is no limitation on the type or number of buildings that comprise the system for sequential federated query method 100. For example, embodiments may include a house 140 and associated data storage array 130a, an office building 150 and associated data storage array 130b, or an industrial facility 160 and associated data storage array 130n. Each building may maintain a network connection 180 to the cloud computing environment 120, and connections from connected elements in each building are maintained to each storage array via the network connection 180. It should be understood that various portions of the system for sequential federated query method 100 facilitate co-location or remote storage or processing solutions. For example, the data storage array 130a for the residence 140 may be located within the residence 140 itself, external but still nearby in the cloud computing environment 120, and / or distributed across one or more storage nodes.
[0032] exist Figure 1 In one embodiment of the system shown, building 150 includes one or more connected elements that perform monitoring, actuation, data capture, storage, or processing to monitor or manage building 150. Any of a variety of connected elements may be used to capture, store, process data, actuate, and / or operate related equipment to cloud computing environment 120 to other parts of the system via network connections 180. These connected elements may include hardware, modules, and / or sensors.
[0033] For example, connected elements, sensors or hardware can be configured to detect temperature, humidity, ambient light, sound, smoke, carbon monoxide, carbon dioxide, motion, non-conductive fluid, conductive fluid, vibration, energy, power, voltage, current or any other desired characteristics and combinations thereof. Connected elements can also operate, control or articulate other connected elements, components and / or other systems, such as turning on lights, opening doors or windows, moving curtains or triggering door locks. Connected elements can have the ability to process data from other connected elements or propagate data from one or more connected elements to one or more other connected elements. This hardware processing capability can be a supplement or alternative to measuring environmental parameters through sensors. Any number of connected elements can be deployed in any combination to monitor or manage physical spaces, including, for example, closets, rooms, residences, commercial buildings, campuses, offices, corridors, industrial environments or any other desired locations.
[0034] Each building containing connected elements may ultimately be connected to the cloud computing environment 120 via a network connection 180. The network connection 180 allows access to the cloud computing environment 120 through various devices connected to such environment by wired or wireless connections. Figure 1 As shown, such a device may include one or more processing systems 110 that are capable of receiving input from a user or providing autonomous operation. It should be understood that as part of the dynamic ontology data operation method, although cloud computing environment 120 is not required, it provides additional communication paths to other connected elements or systems. Embodiments contemplate single-use, independent or distributed systems.
[0035] Figure 2A Aspects of cloud applications are shown to be tightly coupled to currently existing hardware elements. This tight coupling creates a very high dependency between users or systems to make updates in the respective data models to allow access to the necessary data. Therefore, accessing and analyzing large amounts of data efficiently and effectively presents a serious challenge for the truly large amounts of heterogeneous data that can be provided through the wide variety of available connection elements and their corresponding data structures that are tightly constrained to the associated cloud services.
[0036] Examples of such cloud applications can range from time series chart applications showing temperature, humidity, or energy to more advanced applications such as asset monitoring applications that show the health of a system by aggregating the status of its subcomponents.
[0037] Figure 2BAspects of heterogeneous hardware connection elements that can be connected to a system for performing dynamic ontology data manipulation methods according to various embodiments described herein are shown. In one embodiment, a building 150 contains one or more types of connection elements 210, 220, 230, 240 for monitoring or managing the structure. These connected elements 210, 220, 230, 240 communicate via a wired 250 or wireless 260 network and make data structures from each connected element available to the cloud environment 120 through a network connection 180. The network connection 180 can include wired and / or wireless connection types.
[0038] For example, such a connection may include, but is not limited to, any physical wiring method, such as Category 5 cable, coaxial cable, optical fiber, copper cable, twisted pair, or any other physical medium to propagate electrical signals. Wireless connections may include, but are not limited to, personal area networks (PANs), local area networks (LANs), Wi-Fi, Bluetooth, cellular, global, or satellite-based communication networks. In other embodiments, access between the cloud environment 120 and any other cloud environment is possible, and these other cloud environments are configured to connect to devices similar to cloud environments (e.g., existing cloud environments 120). The computing devices shown in the drawings and discussed herein are intended to be illustrative only, and computing nodes and cloud computing environments can communicate with any type of computerized device through any type of network with an addressable or direct connection.
[0039] Various connected elements may be used to perform organization, access, analysis, and manipulation or sensing, actuation, data capture, storage, or processing to the cloud computing environment 120, to other portions of the system through the network connection 180. Thus, these devices may each have different data parameters, fields, units, or general overall data structures associated with each device.
[0040] For example, Figure 2BAs shown, the connected element 210 may be connected to a sensor to measure carbon dioxide to monitor the air quality of the building 150 and communicate via a wired network connection 250. The connected element may be configured to acquire data and control various modules, such as a connected sensor to detect the implementation of ambient light and an actuator 220 to change the state of the occupant light fixture and communicate via a wired network connection 250. The connected element may be a connected sensor 230 for temperature and humidity to monitor the environment of the building 150 and communicate via a wireless network connection 2600. Finally, the connected element 240 acts as a connected gateway to communicate with the associated connected elements 210, 220, 230 via respective network connections 250, 260, process each data structure, and transmit it to the network connection 180 for transmission to the cloud environment 120. It should be understood that as part of the sequential federated query method, although the cloud computing environment 120 is not required, it provides additional communication paths to other devices or systems. Other embodiments contemplate a single, independent system and / or a distributed system.
[0041] These connected elements do not need to be geographically located or logically grouped in any way to utilize the embodiments described herein. Grouping connected elements geographically or logically can allow for more economical use. Geographical groupings such as in an apartment, home, or office building can be accomplished, as well as logically locating connected elements by function. One of many logical grouping examples is to design the connected endpoints to sense temperature and be close to occupied locations to detect changes in the environment. It should be understood that the grouping of connected endpoints can also be located on a very large geographical scale, even on a global scale. Such global operations can be monitored by a network located in any number of facilities around the world.
[0042] Figure 3 An exemplary deployment of heterogeneous hardware connected elements providing data to a system performing dynamic ontological data operations according to various embodiments described herein is shown. A building 310 having (3) floors is shown. Floor (1) 312, floor (2) 314, and floor (3) 316 are included in the building 310. Figure 3 , each floor has (3) different types of connected elements. For example, the connected elements may be connected sensors 330, 332, 334 to measure carbon dioxide to monitor the air quality of the building 310 and communicate via a wired network connection. The connected elements may be connected sensors for detecting ambient light and actuators 340, 342, 344 for changing the state of occupant light fixtures and communicate via a wired network connection. The connected elements may be connected sensors 350, 352, 354 for temperature and humidity to monitor the environment of the building 310 and communicate via a wireless network connection.
[0043] Given Figure 3 As shown in the configuration, each connected element can have various data structures, including but not limited to sensor specific information (temperature / humidity, CO2, and ambient light), geographic information (region, floor, building), and network information (MAC address, IP address, wired, wireless). Other connected element information is available, as well as information related to the operation of the connected element itself. As an example, online or offline status can be used to further add to the data structure of each connected element.
[0044] In addition, each connected element can have an associated data structure that includes, but is not limited to, sensor specific information (in this example, temperature / humidity values, carbon dioxide, and ambient light) stored on a time, state, or unstructured basis. In this way, each connected element has a history associated with it. This history or "data log" can be used to determine and identify trends and / or operating characteristics for a particular connected element in the time data. In addition, the combined data from the histories of the various connected elements can analyze trends and / or operating characteristics of a particular geographic space, system, and / or group of systems (e.g., a building).
[0045] In order to achieve the benefits described in this application, it is beneficial to organize physical artifacts into data models. These data models describe various features and structures of physical artifacts based on available data. Characterizations can be established, for example, based on the capabilities of the artifact. In one example, a sensor can be described by onboard available functions that are exposed in a data interface to be utilized by an application. Characterizations can also be established by inferred features or inferred functions. In the previous example, it can be inferred that the onboard sensor can be a temperature sensor, or if multiple sensors are available, it can be temperature, humidity, and brightness.
[0046] It should be understood that multiple data models can be used in conjunction with each other to form an information matrix about an artifact. For example, a house can be described by multiple data models such as an HVAC data model, a security data model, and / or a smoke / fire detector model. The inferred functions may include heating and cooling systems for the HVAC system, door sensors and glass break sensors for the security data model, and inferred independent smoke and fire detection systems. These data models can be combined to provide a homeowner with a "safe" or "unsafe" indication of the status of their home.
[0047] Figure 4AAn exemplary block diagram of components illustrating dynamic ontology data operations including data model relationships according to various embodiments of the present disclosure is shown. In the various embodiments described herein, there are two different data models, including an asset data model (ADM) 400 and a device data model (DDM) 410. These models are connected by a data model link (DML) 405. According to one embodiment, the DDM 410 is part of a more general domain data model. Typically, such a domain data model can describe various properties of a particular domain, and can generally describe any properties related to the application in question. For example, a domain data model may include a device data model that models physical devices in an environment, and may also describe various physical rules and properties specific to the application in question, weather information associated with the surrounding physical environment, and so on.
[0048] In one embodiment, an ontology generation and editing application may be used to generate ADMs and DDMs. Examples of such applications include, but are not limited to, Protégé, WebProtégé, and TopBraid ComposerTM. In addition, asset and device data models may be generated in any suitable language. Examples of such languages include, but are not limited to, RDF, RDFS, and OWL. However, more generally, such examples of ontology generation and editing applications and languages are provided for illustrative purposes without limitation, and one of ordinary skill in the art will recognize that any number of suitable applications and languages may be used to generate and represent ADMs and DDMs consistent with the functionality described herein.
[0049] An asset can be characterized as a single object being monitored or as a combination of a series of objects. Monitoring assets, as opposed to a single data stream provided by a device, represents a paradigm shift from pure data to asset-centric applications to fully manage the product lifecycle. One reason for this shift may be the increased miniaturization of devices, coupled with the falling prices of embedded systems. Additionally, due to the relative complexity of system monitoring data, there is a growing need to monitor relative information about the health of their assets rather than monitoring large amounts of data related to monitoring their systems. Such an asset view can be a high-level representation of the physical system.
[0050] It should be understood that examples of assets and associated ADMs 400 may include, but are not limited to, single sensors, combinations of sensor devices, vehicles, buildings, processes, and / or any number or type of combination of these things. These assets may be commercial, residential, or industrial-scale assets, and there is no limitation in the context of this disclosure on the types of environments or assets that may benefit from this disclosure.
[0051] Similar to assets, devices can be characterized as a single object or a combination of a series of objects that have some ability to provide monitoring data and / or perform control operations. Such devices are numerous in scope and include examples of temperature sensors, humidity sensors, actuators, indicators, and / or gateway devices, for example. A device can be a mixture of such sensors or hardware functions that provide data. The embodiments described herein also contemplate virtual devices that can be docked with hardware devices or with other software devices (e.g., packet analyzers) that can provide data. The data representation of these devices includes DDM410. DDM410 may or may not fully display the functionality of the associated device.
[0052] There is a link between the ADM 400 and the DDM 410 that can be modified manually or automatically by a user or system. The data model link (DML) 405 maps the data features of the ADM 400 to the DDM 410. Such a link can be implemented in various ways. Examples include, but are not limited to, a user or system that utilizes a tool or service that utilizes machine learning, deep learning, and / or heuristic-based approximation or other methods to provide possible links. Such a link may be available immediately after creation by a user or system, or may require verification by the user.
[0053] Figure 4B An exemplary block diagram of components of dynamic ontology data manipulation illustrating alternative embodiments including data model relationships according to various embodiments of the present disclosure is shown. In this example, a single asset and associated ADM 400 are shown. It should be understood that the embodiments described herein contemplate one or more assets and associated ADM 400. In addition, as shown, one or more devices may be represented by multiple DDMs 410 and 411 to monitor an asset. These multiple DDMs 410 and 411 map their data from the corresponding devices to their respective ADMs 400 via one or more DMLs 405. In this way, one or more assets may utilize data from one or more monitoring devices.
[0054] Figure 5AAn exemplary block diagram is shown that illustrates components of dynamic ontology data operations including data model relationships and associated data model components according to various embodiments of the present disclosure. ADM 400 may have several associated data features associated with asset 412. Such associated data features may include measurements 414, historical measurements 416, cumulative measurements 420, and average measurements 422. In addition, ADM 400 may include control features associated with asset 412. For example, ADM 400 may specify that an asset includes an actuator that can be physically controlled (e.g., a physical switch that can be operated in two different positions), an asset includes an LED indicator with a binary display state, and so on. These data and control features can be directly obtained based on the asset type described. It should be understood that the number and type of data features are varied and based on the application that the data model can be used for.
[0055] The DDM 410 may have several associated data features associated with the device itself. It should be understood that these data features can be obtained directly from the device and other data features can be inferred. Examples of direct data features can be device type 424, sensor type 428, temperature 434, and ID438. Based on these directly available data features, many data features can be inferred. Examples can include hardware type 426, temperature sensor 430, brightness sensor 432, humidity sensor 436, ID1 440, and ID2 442. It should be understood that the number and type of data features are varied and based on the application to which the data model can be used. In addition, the DDM 410 may include a control state feature associated with the asset 412. For example, the DDM 410 may indicate that the device is capable of receiving and reacting to southbound communications from an application (e.g., a local application, an application executed in a cloud computing environment, etc.). Such communications may include, for example, one or more instructions to control aspects of the asset 412.
[0056] As previously described, various DMLs 405 can be used to establish data links between the ADM 400 and the DDM 410, thereby allowing a seamless data query experience between the two data models. As an example, the DDM 410 temperature data feature 434 is linked to the ADM 400 average measurement 422, thereby allowing the asset data feature 412 to query the average temperature of the DDM 410 without the need for a complex understanding of the data relationship between the asset and the related equipment.
[0057] Figure 5BAn exemplary block diagram is shown, which illustrates components of dynamic ontology data operations according to various embodiments of the present disclosure, including alternative embodiment data model relationships and associated data model components. In this example, a single asset and an associated ADM 400 are shown. It should be understood that the embodiments described herein contemplate one or more assets and associated ADM 400. In addition, as shown, one or more devices can be represented by multiple DDMs 410 and 411 to monitor assets. These multiple DDMs 410 and 411 map their data from the corresponding devices to their corresponding ADM 400 via one or more DMLs 405. In this way, one or more assets can utilize data from one or more monitoring devices and can be controlled according to the control schemes described in ADM 400 and DDMs 410 and 411.
[0058] Similar to DDM 410, DDM 411 may have several associated data features associated with the device itself. It should be understood that these data features may be obtained directly from the device and other data features may be inferred. Examples of direct data features may be output type 444 and ID type 448. Based on these directly available data features, many data features may be inferred. Examples may include sequence number 446, ID1 450, and ID2 452. It should be understood that the number and type of data features vary and are based on the application for which the data model may be used.
[0059] Figure 6 An example flow chart of a method for dynamic ontology data manipulation according to various embodiments of the present disclosure is shown. The method 600 begins at box 610, in which the reasoning engine dynamically updates the data model link (DML) 405 between the asset data model (ADM) 400 and the device data model (DDM) 410, which establishes relationship elements between the ADM, ADM components, DDM, and DDM components. This process establishes a dynamic link between the data structure from the asset to its related equipment. Examples of reasoning engines may include, but are not limited to, FACT++, HermiT, and Apache Jena TM More generally, any suitable reasoning or inference engine may be used consistent with the functionality described herein.
[0060] The inference engine may process the DDM to determine the normalized data relationship paths used by the inference engine and populate the DDM device element data set (block 620) to establish the normalized data relationships to be inferred. Figure 5A and 5BIn contrast to those relationships directly available in the DDM, it should be understood that processing the data using the inference engine can be used to normalize the data sets available in the DDM. This may vary based on the device and application, and may be physical and / or virtual. The inferred data features can be used to provide advanced analytical information to the DDM and ultimately to the ADM through links.
[0061] According to one embodiment, once the link between the DDM and the ADM is fully established and data is available, the reasoning engine can perform an ADM query (box 630) by analyzing the ADM component metrics. In this way, the engine can query one or more linked DDMs and collect and analyze relevant data to determine what further actions need to be taken. The reasoning engine can then generate an ADM descriptive analysis determination output (box 640) that allows a user or system to monitor assets consisting of a very complex set of devices. Examples may include a single "pass" "no pass" dashboard for key elements of a process, operation, facility, residence, or other physical or virtual application. In addition, these analyses are not static and can be dynamically reconfigured as needed. In addition, as other DDMs become available, additional and / or modified links can be created to enhance the desired ADM descriptive analysis.
[0062] Figure 7 An example block diagram of a system for dynamic ontology data manipulation according to various embodiments of the present disclosure is shown. The elements of the system may further include one or more ADMs 400 , DDMs 410 , an ontology library generator (OLGA) 700 , an assembly library as an output from OLGA 700 , and a link model DML 405 .
[0063] In one of many examples, the ADM 400 and the DDM 410 provide a data model to the OLGA 700. This method may include defining an ontology model, generating an ontology library based on the ontology model, deploying the ontology library to the IoT system, generating an ontology instance based on the ontology library deployed to the IoT system, modifying an IoT application based on the ontology instance, and managing the IoT system using the IoT application.
[0064] OLGA 700 can create one or more ADM and / or DDM libraries associated with ADM and DDM, respectively. One or more DDM libraries can have reasoning engines running against it to normalize data features that DDM may have. One or more link models DLM 405 can be created to establish data relationships between ADM 400 and DDM 410. The link allows the collection of ontology-based data to populate the ontology DB for querying and taking further actions. For example, a single "pass" / "no pass" dashboard is used for key elements of a process, operation, facility, residence, or other physical or virtual application.
[0065] In addition, data from various ADMs and DDMs can be copied into the ontology database 730 for semantic query by users and / or systems as needed. In addition, the data can be configured as time series data and placed into a data structure (not shown) for later access by users and / or systems.
[0066] Figure 8 An example functional block diagram of dynamic ontological data operations according to various embodiments of the present disclosure is shown. An industrial building 800 is shown having three different building sections, including: a machine room 820, an HVAC room 830, and an office space 840. Each different building section has three different types of connected elements, including connected sensors for measuring carbon dioxide sensor connected elements 850, 852, 854 and connected sensors for detecting occupancy / actuation of lighting connected elements 860, 862, 864. The connected elements can be connected sensors 870, 872, 874 for power measurement to monitor energy consumption of various parts of the building 800. In this example, the dynamic ontological data operation system 810 can be pre-positioned, but does not need to be co-located with the facility.
[0067] Using the method for ontological data manipulation, one or more assets may be involved. For example, each floor itself can be an asset with an associated ADM descriptive analysis determination output (e.g., a "pass" / "fail" indicator). In addition, the industrial building 800 itself can be an asset with an associated ADM descriptive analysis determination output.
[0068] The machine shop foreman may be responsible for monitoring sensors 850, 860, and 870 associated with the machine shop floor 820, and if the associated analysis is "failed", the foreman may stop, pause, and / or terminate work on the floor to take further action. This paradigm may be followed for the HVAC room 830 and office space 840. In addition, the building security team may have ADM descriptive analytics that are the sum of these floors (machine shop 820, HVAC room 830, and office space 840) and may or may not include additional ADMs or DDMs. In one embodiment, the ADMs and / or DDMs may model the controllable aspects of various devices within the environment. For example, the lighting connection elements 860, 862, and 864 may provide an interface through which control commands (e.g., turning lights on or off, dimming lights, etc.) may be submitted remotely, and this functionality may be represented in the ADMs and / or DDMs. In such an embodiment, the control logic may generate a control operation for one of the lighting connected elements 860, 862, and 864 based on the available functionality of the lighting element described in the ADM and / or DDMS. The command instructions for the lighting element may then be generated using the ADM and / or DDM and sent to the lighting element (e.g., using a data communications network) for execution.
[0069] This example illustrates the dynamic and highly configurable nature of the present disclosure, wherein the ADM, DDM, and DML associated with each other cause a variety of ADM descriptive analyses that can be used for a variety of applications. General purpose computer components can be used and configured as components of a rack intrusion detection system. Such a computer system can be used in various embodiments described herein, for example, a general purpose computer, such as a general purpose computer based on an Intel Pentium processor, a Motorola PowerPC, an ARM processor, a Sun UltraSPARC, a Hewlett-Packard PA-RISC processor, or any other processor.
[0070] For example, various embodiments of systems and methods for dynamically configuring customized devices for a cloud-based environment may be implemented using or by dedicated software executed in computer system component 1000, such as Fig.10As shown. Embodiments of the computer system component 1000 may be general in nature. The computer system component 1000 may include a processor 1020 connected to one or more storage devices 1030, such as a disk drive, memory, or other device for storing data. The memory 1030 is typically used to store programs and data during operation of the computer system component 1000. The computer system component 1000 may also include a storage system 1050 that provides additional storage capacity. The components of the computer system 1000 may be connected by an interconnection mechanism 1040, which may include one or more buses (e.g., between components integrated within the same machine) and / or networks (e.g., between components on separate discrete machines). The interconnection mechanism 1040 enables communications (e.g., data, instructions) to be exchanged between the computer system components 1000.
[0071] The computer system component 1000 also includes one or more input devices 1010, such as a keyboard, a mouse, a trackball, a microphone, a touch screen, and one or more output devices 1060, such as a printing device, a display screen, and a speaker. In addition, the computer system 1000 may include one or more interfaces (not shown) that connect the computer system 1000 to a communication network (in addition to or instead of the interconnect mechanism 1040).
[0072] exist Fig.10 The storage system 1050 shown in more detail in FIG. 1 generally includes a computer-readable and writable non-volatile recording medium 1010, in which a signal is stored, which defines a program to be executed by a processor or information stored on or in the medium 1010 to be processed by the program to perform one or more related functions related to the embodiments described herein. The medium can be, for example, a disk or a flash memory. Typically, in operation, the processor reads data from the non-volatile recording medium 1010 into another memory 1020, thereby allowing the processor to access information faster than the medium 1010. The memory 1020 is typically a volatile random access memory such as a dynamic random access memory (DRAM) or a static memory (SRAM). As shown, it can be located in the storage system 1000, or in the memory system 1030. The processor 1020 typically processes data in the integrated circuit memory 1030, 1020, and then copies the data to the medium 1010 after completing the processing. Various mechanisms for managing data movement between the medium 1010 and the integrated circuit memory elements 1030 , 1020 are known, and the present disclosure is not limited thereto. The present disclosure is not limited to a particular memory system 1030 or storage system 1050 .
[0073] The computer system may include specially programmed dedicated hardware, such as an application specific integrated circuit (ASIC). Aspects of the present disclosure may be implemented in software, hardware, or firmware, or any combination thereof. In addition, such methods, actions, systems, system elements, and components thereof may be implemented as part of the above-described computer system or as independent components.
[0074] Although computer system 1000 is shown by way of example as one type of computer system on which various aspects of the present disclosure may be practiced, it should be understood that various aspects of the present disclosure are not limited to such computer systems. Fig.10 The implementation can be implemented on a computer system having Fig.10 Various aspects of the present disclosure are practiced on one or more computers with different architectures or components as shown. In addition, where the functions or processes of the embodiments of the present disclosure are described herein (or in the claims) as being executed on a processor or controller, such description is intended to include systems that use more than one processor or controller to perform the functions.
[0075] Computer system 1000 can be a general-purpose computer system programmable using a high-level computer programming language. Computer system 1000 can also be implemented using specially programmed dedicated hardware. In computer system 1000, processor 1020 is typically a commercially available processor, such as the well-known Pentium-class processor available from Intel Corporation. There are also many other processors available. Such a processor typically executes an operating system, which can be, for example, Windows 95, Windows 98, Windows NT, Windows 2000, Windows ME, Windows XP, Vista, or Windows 7, or a child operating system available from Microsoft Corporation, MACOS System X or a child operating system available from Apple Computer, Solaris operating system available from Sun Microsystems, UNIX, Linux (any distribution) or a child operating system available from various sources. Many other operating systems can be used.
[0076] The processor and operating system together define a computer platform for which applications in high-level programming languages are written. It should be understood that the embodiments of the present disclosure are not limited to specific computer system platforms, processors, operating systems, or networks. Similarly, it should be apparent to those skilled in the art that the present disclosure is not limited to specific programming languages or computer systems. In addition, it should be understood that other appropriate programming languages and other appropriate computer systems may also be used.
[0077] One or more parts of the computer system may be distributed on one or more computer systems connected to a communication network. For example, as described above, the computer system that determines the available power capacity may be placed away from the system manager. These computer systems may also be general-purpose computer systems. For example, various aspects of the present disclosure may be distributed on one or more computer systems that are configured to provide services (e.g., servers) to one or more client computers, or perform overall tasks as part of a distributed system. For example, various aspects of the present disclosure may be performed on a client-server or multi-layer system that includes components distributed between one or more server systems that perform various functions according to various embodiments of the present disclosure. These components may be executable, intermediate (e.g., inline) or interpreted (e.g., Java) code that communicates on a communication network (e.g., the Internet) using a communication protocol (e.g., TCP / IP). For example, one or more database servers may be used to store device data, such as desired power consumption, that is used to design a layout associated with an embodiment of the present disclosure.
[0078] It should be understood that the present disclosure is not limited to executing on any particular system or group of systems. Furthermore, it should be understood that the present disclosure is not limited to any particular distributed architecture, network or communication protocol.
[0079] Object-oriented programming languages such as SmallTalk, Java, C++, Ada, or C# (C-Sharp) can be used to program various embodiments of the present disclosure. Other object-oriented programming languages can also be used. Alternatively, functional, scripting, and / or logical programming languages such as BASIC, ForTran, COBoL, TCL, or Lua can be used. Various aspects of the present disclosure can be implemented in a non-programming environment (e.g., a document created in HTML, XML, or other format that presents various aspects of a graphical user interface (GUI) or performs other functions when viewed in a window of a browser program). Various aspects of the present disclosure can be implemented as programmatic or non-programmatic elements or any combination thereof.
[0080] Embodiments of the above-described systems and methods are generally described for use with relatively large data centers having a large number of equipment racks; however, embodiments of the present disclosure may also be used with smaller data centers and facilities other than data centers. Some embodiments may also be very small numbers of computers that are geographically distributed so as not to resemble a specific architecture.
[0081] In the embodiments of the present disclosure discussed above, the analysis results are described as being provided in real time. As will be appreciated by those skilled in the art, the use of the term "real time" does not mean that the results are immediately obtained, but rather that the results can be obtained quickly, thereby enabling the designer to try a variety of different designs in a short period of time (e.g., a few minutes).
[0082] Thus, having described several aspects of at least one embodiment of the present disclosure, those skilled in the art will readily appreciate various changes, modifications and improvements. Such changes, modifications and improvements are intended to be a part of the present disclosure and are intended to fall within the spirit and scope of the present disclosure. Therefore, the foregoing description and drawings are intended only as examples.
[0083] In the foregoing, reference has been made to various embodiments. However, the scope of the present disclosure is not limited to the specifically described embodiments. Rather, any combination of the described features and elements, whether or not related to different embodiments, may be considered to enable and practice the contemplated embodiments. Furthermore, although an embodiment may achieve advantages over other possible solutions or over the prior art, whether or not a particular advantage is achieved by a given embodiment does not limit the scope of the present disclosure. Therefore, the foregoing aspects, features, embodiments, and advantages are merely illustrative and are not considered elements or limitations of the appended claims unless expressly recited in the claims.
[0084] The application of the present disclosure is not limited to the construction details and the arrangement of parts set forth in the following description or shown in the accompanying drawings. The present disclosure can have other embodiments and can be practiced or implemented in various ways. Likewise, the words and terms used herein are for descriptive purposes and should not be considered restrictive. The use of "includes," "comprising," "having," "containing," "involving," and their variations herein is open-ended, i.e., "including but not limited to."
[0085] The various embodiments disclosed herein may be implemented as systems, methods, or computer program products. Thus, various aspects may take the form of a complete hardware embodiment, a complete software embodiment (including firmware, resident software, microcode, etc.), or an embodiment combining software and hardware aspects, which are generally referred to herein as "circuits," "modules," or "systems." In addition, various aspects may take the form of a computer program product embodied in one or more computer-readable media having computer-readable program code implemented thereon.
[0086] Any combination of one or more computer-readable media may be utilized. The computer-readable medium may be a non-transitory computer-readable medium. The non-transitory computer-readable medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared or semiconductor system, device or apparatus, or any suitable combination of the foregoing. More specific examples (non-exhaustive list) of non-transitory computer-readable media may include the following: an electrical connection with one or more wires, a portable computer floppy disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. Any suitable medium may be used to transmit the program code embodied in the computer-readable medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.
[0087] The computer program code for performing the operation of various aspects of the present disclosure can be written in any combination of one or more programming languages. Moreover, such computer program code can be performed using a single computer system or by multiple computer systems communicating with each other (e.g., using a local area network (LAN), a wide area network (WAN), the Internet, etc.). Although the various features described above are described with reference to flow charts and / or block diagrams, it will be appreciated by those of ordinary skill in the art that each box of the flow charts and / or block diagrams, and the combination of the boxes in the flow charts can be implemented by computer logic (e.g., computer program instructions, hardware logic, a combination of the two, etc.). Typically, computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device. In addition, using a processor to execute such a computer program instruction produces a machine that can perform the function or action specified in the flow chart and / or block diagram box.
[0088] The flow charts and block diagrams in the accompanying drawings illustrate the possible architectures, functions and / or operations of various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram may represent a module, segment or portion of a code, which includes one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the box may not occur in the order indicated in the figure. For example, depending on the functions involved, two boxes shown in succession may actually be executed substantially simultaneously, or these boxes may sometimes be executed in reverse order. It should also be noted that each box in the block diagram and / or flow chart description and the combination of boxes in the block diagram and / or flow chart description may be implemented by a combination of a dedicated hardware-based system or dedicated hardware and computer instructions that performs a specified function or action.
[0089] It should be understood that the above description is intended to be illustrative rather than limiting. After reading and understanding the above description, many other implementation examples are apparent. Although the present disclosure describes specific examples, it should be appreciated that the system and method of the present disclosure are not limited to the examples described herein, but can be modified to practice within the scope of the attached claims. Therefore, the description and the drawings should be considered illustrative rather than restrictive. Therefore, the scope of the present disclosure should be determined with reference to the attached claims and the full scope of equivalents given by these claims.
Claims
1. A method comprising: dynamically updating a first data model link between first one or more asset data model components of an asset data model and first one or more device data model components of a device data model, wherein the device data model includes data collected from a plurality of devices and control operations performed on the plurality of devices and is organized based on one or more attributes of the plurality of devices, the first data model link mapping data features of the first one or more asset data model components of the asset data model to the first one or more device data model components of the device data model; processing the device data model to determine normalized data relationship paths used by an inference engine to populate a device element data set, wherein at least a first determined normalized data relationship path of a first one or more devices is inferred; Through the operation of one or more computer processors, an asset data model query is performed on the asset data model, including: analyzing the asset data model component metrics by querying the equipment element data set based on the updated first data model link; performing a control operation based on an asset data model query of the equipment element data set based on the updated first data model link; and Based on the execution of the asset data model query, an asset data model descriptive analysis determination output is generated.
2. The method according to claim 1, wherein: Generating the asset data model descriptive analytics determination output also includes selecting a first status from a plurality of statuses to assign to a first element of at least one of a process, an operation, a facility, and a residence.
3. The method according to claim 2, wherein: Generating the asset data model descriptive analytics determination output also includes dynamically updating a graphical user interface for a dashboard to monitor at least one of a process, an operation, a facility, and a residence based on the status determined for the first element.
4. The method according to claim 2, wherein: Generating the asset data model descriptive analysis determination output also includes: selecting a control instruction based on the status; and An electronic notification is sent via a data communication network including control instructions to cause the control device to perform corresponding operations.
5. The method according to claim 1, further comprising: Upon determining that the second device data model has become available, a plurality of data model links are dynamically generated between a plurality of asset data model components of the asset data model and a plurality of device data model components of the second device data model.
6. The method according to claim 1, further comprising: At least one of the asset data model and the device data model is processed by an ontology library generator to define an ontology model.
7. The method according to claim 6, further comprising: Generate ontology library based on ontology model; Deploy the ontology library to the first computing node; generating an ontology instance based on the ontology library deployed to the first computing node; modifying a first software application based on the ontology instance; and The first computing node is managed using the modified first software application.
8. The method according to claim 1, further comprising: A graphical user interface for modifying the device data model to include the new device is dynamically generated using the asset data model and the domain data model, wherein the domain data model includes the device data model and other domain-specific information.
9. The method according to claim 8, dynamically generating the graphical user interface further comprises: generating a first interface page for creating a link between the new device and a second one or more asset data model components of the asset data model; generating a second interface page for defining properties of data generated by the new device; and A third interface is generated for defining one or more organizational relationships associated with the new device.
10. A system comprising: one or more computer processors; and A memory containing computer program code which, when executed by operation of one or more computer processors, performs the following operations: dynamically updating a first data model link between first one or more asset data model components of an asset data model and first one or more device data model components of a device data model, wherein the device data model includes data collected from a plurality of devices and organized based on one or more attributes of the plurality of devices, the first data model link mapping data features of the first one or more asset data model components of the asset data model to the first one or more device data model components of the device data model; processing the device data model to determine normalized data relationship paths used by an inference engine to populate a device element data set, wherein at least a first determined normalized data relationship path of a first one or more devices is inferred; Performing an asset data model query on the asset data model includes: analyzing the asset data model component metrics by querying the equipment element data set based on the updated first data model link; performing a control operation based on an asset data model query of the equipment element data set based on the updated first data model link; and Based on the execution of the asset data model query, an asset data model descriptive analysis determination output is generated.
11. The system according to claim 10, wherein: Generating the asset data model descriptive analytics determination output also includes selecting a first status from a plurality of statuses to assign to a first element of at least one of a process, an operation, a facility, and a residence.
12. The system according to claim 11, wherein: Generating the asset data model descriptive analytics determination output also includes dynamically updating a graphical user interface for a dashboard to monitor at least one of a process, an operation, a facility, and a residence based on the status determined for the first element.
13. The system according to claim 11, wherein: Generating the asset data model descriptive analysis determination output also includes: selecting a control instruction based on the status; and An electronic notification is sent via a data communication network including control instructions to cause the control device to perform corresponding operations.
14. The system of claim 10, wherein the operations further comprise: Upon determining that the second device data model has become available, a plurality of data model links are dynamically generated between a plurality of asset data model components of the asset data model and a plurality of device data model components of the second device data model.
15. The system of claim 10, the operations further comprising: At least one of the asset data model and the device data model is processed by an ontology library generator to define an ontology model.
16. The system of claim 15, the operations further comprising: Generate ontology library based on ontology model; Deploy the ontology library to the first computing node; generating an ontology instance based on the ontology library deployed to the first computing node; modifying a first software application based on the ontology instance; and The first computing node is managed using the modified first software application.
17. A non-transitory computer readable medium containing computer program code that, when executed by operation of one or more computer processors, performs operations comprising: dynamically updating a first data model link between first one or more asset data model components of an asset data model and first one or more device data model components of a device data model, wherein the device data model includes data collected from a plurality of devices and organized based on one or more attributes of the plurality of devices, the first data model link mapping data features of the first one or more asset data model components of the asset data model to the first one or more device data model components of the device data model; The device data model is processed to determine normalized data relationship paths used by an inference engine to populate a device element data set, wherein: inferring at least a first determined normalized data relationship path of a first one or more devices; Performing an asset data model query on the asset data model includes: analyzing the asset data model component metrics by querying the equipment element data set based on the updated first data model link; performing a control operation based on an asset data model query of the equipment element data set based on the updated first data model link; and Based on the execution of the asset data model query, an asset data model descriptive analysis determination output is generated.
18. The non-transitory computer readable medium of claim 17, wherein generating the asset data model descriptive analysis determination output further comprises: selecting a first state from a plurality of states to assign to a first element of at least one of a process, an operation, a facility, and a residence; and A graphical user interface for a dashboard is dynamically updated based on the status determined for the first element to monitor at least one of a process, an operation, a facility, and a residence.
19. The non-transitory computer readable medium of claim 17, the operations further comprising: Upon determining that the second device data model has become available, a plurality of data model links are dynamically generated between a plurality of asset data model components of the asset data model and a plurality of device data model components of the second device data model.
20. The non-transitory computer readable medium of claim 17, the operations further comprising: processing at least one of the asset data model and the device data model by an ontology library generator to define an ontology model; Generate ontology library based on ontology model; Deploy the ontology library to the first computing node; generating an ontology instance based on the ontology library deployed to the first computing node; modifying a first software application based on the ontology instance; and The first computing node is managed using the modified first software application.
Citation Information
Patent Citations
Building automation system data management
US20070055760A1
Cross-Client Sensor User Interface in an Integrated Security Network
US20100023865A1
Systems and methods for facilitating communication between a plurality of building automation subsystems
US20120011126A1
Apparatus and methods for providing recommendations based on environmental data
US20150379400A1