WO2022236323A1 - Applications de fondation en tant qu'accélérateur fournissant une extensibilité bien définie et une collecte de gabarits de départ pour améliorer l'expérience utilisateur et accélérer les délais d'exécution. - Google Patents
Applications de fondation en tant qu'accélérateur fournissant une extensibilité bien définie et une collecte de gabarits de départ pour améliorer l'expérience utilisateur et accélérer les délais d'exécution. Download PDFInfo
- Publication number
- WO2022236323A1 WO2022236323A1 PCT/US2022/072174 US2022072174W WO2022236323A1 WO 2022236323 A1 WO2022236323 A1 WO 2022236323A1 US 2022072174 W US2022072174 W US 2022072174W WO 2022236323 A1 WO2022236323 A1 WO 2022236323A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- assets
- asset
- template
- interface
- Prior art date
Links
- 238000012800 visualization Methods 0.000 claims abstract description 69
- 238000012986 modification Methods 0.000 claims abstract description 49
- 230000004048 modification Effects 0.000 claims abstract description 49
- 230000004044 response Effects 0.000 claims abstract description 37
- 238000000034 method Methods 0.000 claims description 174
- 238000003860 storage Methods 0.000 claims description 42
- 230000009471 action Effects 0.000 claims description 27
- 238000013501 data transformation Methods 0.000 claims description 25
- 230000009466 transformation Effects 0.000 claims description 25
- 230000015654 memory Effects 0.000 claims description 13
- 230000008569 process Effects 0.000 description 101
- 230000010354 integration Effects 0.000 description 69
- 238000007726 management method Methods 0.000 description 40
- 238000004891 communication Methods 0.000 description 36
- 238000012423 maintenance Methods 0.000 description 24
- 238000007792 addition Methods 0.000 description 19
- 238000010801 machine learning Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 238000004088 simulation Methods 0.000 description 12
- 230000036541 health Effects 0.000 description 10
- 230000002776 aggregation Effects 0.000 description 9
- 238000004220 aggregation Methods 0.000 description 9
- 230000001960 triggered effect Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000008520 organization Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000013500 data storage Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000013499 data model Methods 0.000 description 3
- 238000013079 data visualisation Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000002730 additional effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000012517 data analytics Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000007372 rollout process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000002459 sustained effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000037406 food intake Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000005477 standard model Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000000699 topical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
- 238000009423 ventilation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/805—Real-time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
Definitions
- TECHNICAL FIELD [0002] The present disclosure relates generally to real-time asset and process management, and more particularly to extensible foundation applications providing real- time asset and process management.
- BACKGROUND [0003]
- Various industries include a large amount of assets, such as interconnected devices and/or equipment at one or multiple locations, such as industrial plants, warehouses, and/or buildings. Such industries may monitor and gauge efficiency of their respective assets and/or confirm that the assets are functioning properly by utilizing software, along with a digital representation of their respective assets, for performing data analytics and/or other processes related to the assets.
- industries may each have specific needs and requirements for managing assets and processes related to operations, energy, sustainability, worker productivity, and/or other processes.
- a method is performed.
- the method includes generating a foundation application comprising a plurality of predefined core services, the predefined core services managing a plurality of assets and the predefined core services comprising one or more templates associated with at least one asset of the plurality of assets.
- the method also includes receiving an extension request, the extension request comprising an addition or modification to data associated with a selected template of the one or more templates.
- the method also includes, in response to the extension request, determining output data based on the addition or the modification to the data associated with the selected template.
- the method also includes providing a visualization at an electronic interface of the foundation application, the visualization comprising an indication of the output data.
- the visualization comprises a plurality of widgets, each widget being associated with one or more predefined core services of the plurality of the predefined core services.
- one or more widgets of the plurality of widgets comprises an indication of real-time data associated with one or more assets.
- at least one widget of the plurality of widgets is selectable.
- the providing of the visualization comprises providing a first view associated with the plurality of assets, and in response to a selection of the at least one widget, providing a second view comprising performance data associated with a subset of the plurality assets associated with an asset site.
- the performance data comprises one or more key performance indicators associated with the asset site.
- the determining of the output data further comprises generating a workflow for the foundation application based on the extension request. In some embodiments of the method, the determining of the output data further comprises determining whether criteria associated with the workflow meets a predefined condition.
- the determining of the output data further comprises, in an instance in which the criteria meets the predefined condition, causing actuation of one or more assets of the plurality of assets or a data transformation associated with one or more assets of the plurality of assets, based on the workflow.
- the extension request comprises an indication of an onboarding of an asset
- the determining of the output data comprises, in response to the extension request, identifying real-time data associated with the asset.
- the determining of the output data further comprises providing an indication of the real-time data at the electronic interface of the foundation application.
- the determining of the output data comprises generating at least one asset template for the asset, the at least one asset template defining one or more properties and one or more point roles for the asset.
- the determining of the output data further comprises generating, based on the extension request, at least one rule associated with one or more assets of the plurality of assets for the foundation application.
- the extension request defines parameters of the at least one rule, the parameters being based on inputs received at the electronic interface of the foundation application.
- the determining of the output data comprises determining whether a condition associated with the at least one rule is met based on real-time data associated with the one or more assets. In some embodiments of the method, the determining of the output data comprises, in an instance in which the condition associated with the at least one rule is determined to be met, executing at least one predefined action associated with the at least one rule. [0017] In some embodiments of the method, the executing of the at least one predefined action comprises causing transmission of a notification indicative of the condition of the at least one rule being met. [0018] In some embodiments of the method, the executing of the at least one predefined action comprises causing actuation of one or more assets of the plurality of assets.
- the determining of the output data comprises generating, based on the extension request, at least one alert associated with one or more assets of the plurality of assets for the foundation application, the at least one alert defining at least one data trend.
- the determining of the output data further comprises accessing real-time data associated with the one or more assets of the plurality of assets.
- the determining of the output data further comprises identifying an instance of the data trend based on the real-time data.
- the determining of the output data further comprises causing transmission of a notification indicative of the data trend.
- the determining of the output data further comprises applying a transformation on the data associated with the selected template based on the extension request, the visualization comprising an indication of a result of the transformation.
- the extension request is received in response to an input to the electronic interface of the foundation application.
- the predefined core services further manage one or more processes of a domain associated with the foundation application.
- the system includes a processor and a memory that stores executable instructions that, when executed by the processor, cause the processor to generate a foundation application comprising a plurality of predefined core services, the predefined core services managing a plurality of assets and the predefined core services comprising one or more templates associated with at least one asset of the plurality of assets.
- the executable instructions when executed by the processor, also cause the processor to receive an extension request, the extension request comprising an addition or modification to data associated with a selected template of the one or more templates.
- the executable instructions when executed by the processor, also cause the processor to, in response to the extension request, determine output data based on the addition or the modification to the data associated with the selected template.
- the executable instructions when executed by the processor, also cause the processor to provide a visualization at an electronic interface of the foundation application, the visualization comprising an indication of the output data.
- the visualization comprises a plurality of widgets, each widget being associated with one or more predefined core services of the plurality of the predefined core services.
- one or more widgets of the plurality of widgets comprises an indication of real-time data associated with one or more assets.
- at least one widget of the plurality of widgets is selectable.
- the executable instructions that cause the processor to provide the visualization also cause the processor to provide a first view associated with the plurality of assets, and in response to a selection of the at least one widget, provide a second view comprising performance data associated with a subset of the plurality assets associated with an asset site.
- the performance data comprises one or more key performance indicators associated with the asset site.
- the executable instructions that cause the processor to determine the output data further cause the processor to generate a workflow for the foundation application based on the extension request.
- the executable instructions that cause the processor to determine the output data further cause the processor to determine whether criteria associated with the workflow meets a predefined condition. In some embodiments of the system, the executable instructions that cause the processor to determine the output data further cause the processor to, in an instance in which the criteria meets the predefined condition, cause actuation of one or more assets of the plurality of assets or a data transformation associated with one or more assets of the plurality of assets, based on the workflow.
- the extension request comprises an indication of an onboarding of an asset
- the executable instructions that cause the processor to determine the output data also cause the processor to, in response to the extension request, identify real-time data associated with the asset.
- the executable instructions that cause the processor to determine the output data further cause the processor to provide an indication of the real-time data at the electronic interface of the foundation application.
- the executable instructions that cause the processor to determine the output data further cause the processor to generate at least one asset template for the asset, the at least one asset template defining one or more properties and one or more point roles for the asset.
- the executable instructions that cause the processor to determine the output data further cause the processor to generate, based on the extension request, at least one rule associated with one or more assets of the plurality of assets for the foundation application.
- the extension request defines parameters of the at least one rule, the parameters being based on inputs received at the electronic interface of the foundation application.
- the executable instructions that cause the processor to determine the output data further cause the processor to determine whether a condition associated with the at least one rule is met based on real-time data associated with the one or more assets.
- the executable instructions that cause the processor to determine the output data further cause the processor to, in an instance in which the condition associated with the at least one rule is determined to be met, execute at least one predefined action associated with the at least one rule.
- the executable instructions that cause the processor to execute the at least one predefined action further cause the processor to cause transmission of a notification indicative of the condition of the at least one rule being met.
- the executable instructions that cause the processor to execute the at least one predefined action further cause the processor to cause actuation of one or more assets of the plurality of assets.
- the executable instructions that cause the processor to determine the output data further cause the processor to generate, based on the extension request, at least one alert associated with one or more assets of the plurality of assets for the foundation application, the at least one alert defining at least one data trend.
- the executable instructions that cause the processor to determine the output data further cause the processor to access real-time data associated with the one or more assets of the plurality of assets. In some embodiments of the system, the executable instructions that cause the processor to determine the output data further cause the processor to identify an instance of the data trend based on the real- time data. In some embodiments of the system, the executable instructions that cause the processor to determine the output data further cause the processor to cause transmission of a notification indicative of the data trend. [0039] In some embodiments of the system, the executable instructions that cause the processor to determine the output data further cause the processor to apply a transformation on the data associated with the selected template based on the extension request, the visualization comprising an indication of a result of the transformation.
- the extension request is received in response to an input to the electronic interface of the foundation application.
- the predefined core services further manage one or more processes of a domain associated with the foundation application.
- a non-transitory computer-readable storage medium includes one or more programs for execution by one or more processors of a first device.
- the one or more programs include instructions which, when executed by the one or more processors, cause the device to generate a foundation application comprising a plurality of predefined core services, the predefined core services managing a plurality of assets and the predefined core services comprising one or more templates associated with at least one asset of the plurality of assets.
- the one or more programs also include instructions which, when executed by the one or more processors, cause the device to receive an extension request, the extension request comprising an addition or modification to data associated with a selected template of the one or more templates.
- the one or more programs also include instructions which, when executed by the one or more processors, cause the device to, in response to the extension request, determine output data based on the addition or the modification to the data associated with the selected template.
- the one or more programs also include instructions which, when executed by the one or more processors, cause the device to provide a visualization at an electronic interface of the foundation application, the visualization comprising an indication of the output data.
- the visualization comprises a plurality of widgets, each widget being associated with one or more predefined core services of the plurality of the predefined core services.
- one or more widgets of the plurality of widgets comprises an indication of real- time data associated with one or more assets.
- at least one widget of the plurality of widgets is selectable.
- the executable instructions that cause the processor to the instructions which, when executed by the one or more processors, cause the device to provide the visualization further cause the device to also cause the processor to provide a first view associated with the plurality of assets, and in response to a selection of the at least one widget, provide a second view comprising performance data associated with a subset of the plurality assets associated with an asset site.
- the performance data comprises one or more key performance indicators associated with the asset site.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to generate a workflow for the foundation application based on the extension request.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to determine whether criteria associated with the workflow meets a predefined condition.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to, in an instance in which the criteria meets the predefined condition, cause actuation of one or more assets of the plurality of assets or a data transformation associated with one or more assets of the plurality of assets, based on the workflow.
- the extension request comprises an indication of an onboarding of an asset
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to, in response to the extension request, identify real-time data associated with the asset.
- the extension request comprises an indication of an onboarding of an asset
- the executable instructions that cause the processor to determine the output data further cause the processor to generate at least one asset template for the asset, the at least one asset template defining one or more properties and one or more point roles for the asset.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to determine the output data further cause the processor to generate, based on the extension request, at least one rule associated with one or more assets of the plurality of assets for the foundation application.
- the extension request defines parameters of the at least one rule, the parameters being based on inputs received at the electronic interface of the foundation application.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to determine whether a condition associated with the at least one rule is met based on real-time data associated with the one or more assets.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to, in an instance in which the condition associated with the at least one rule is determined to be met, execute at least one predefined action associated with the at least one rule.
- the instructions which, when executed by the one or more processors, cause the device to execute the at least one predefined action further cause the device to cause transmission of a notification indicative of the condition of the at least one rule being met.
- the instructions which, when executed by the one or more processors, cause the device to execute the at least one predefined action further cause the device to cause actuation of one or more assets of the plurality of assets.
- non-transitory computer-readable storage medium non-transitory computer-readable storage medium
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to generate, based on the extension request, at least one alert associated with one or more assets of the plurality of assets for the foundation application, the at least one alert defining at least one data trend.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to access real-time data associated with the one or more assets of the plurality of assets.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to identify an instance of the data trend based on the real-time data. In some embodiments of the non-transitory computer-readable storage medium, the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to cause transmission of a notification indicative of the data trend.
- the instructions which, when executed by the one or more processors, cause the device to determine the output data further cause the device to apply a transformation on the data associated with the selected template based on the extension request, the visualization comprising an indication of a result of the transformation.
- the extension request is received in response to an input to the electronic interface of the foundation application.
- the predefined core services further manage one or more processes of a domain associated with the foundation application.
- FIG.1 depicts an exemplary networked computing system environment, according to one or more embodiments;
- FIG.2 depicts a schematic block diagram of a framework of an Internet of Things (IoT) platform of the networked computing system environment of FIG.1;
- FIG.3 depicts an example system that executes techniques presented herein;
- FIG.4 illustrates a flow diagram of operations related to determining output data based on an extension request, in accordance with one or more embodiments described herein;
- FIG.5A illustrates an example representation of an example foundation application framework, in accordance with one or more embodiments described herein;
- FIG.5B illustrates example representations of extensions of the foundation application framework of FIG.5A, in accordance with one or
- ком ⁇ онент or feature can,” “may,” “could,” “should,” “would,” “preferably,” “possibly,” “typically,” “optionally,” “for example,” “often,” or “might” (or other such language) be included or have a characteristic, that particular component or feature is not required to be included or to have the characteristic. Such component or feature can be optionally included in some embodiments, or it can be excluded.
- IoT Internet-of-Things
- the IoT platform is an extensible platform that is portable for deployment in any cloud or data center environment for providing an enterprise-wide, top to bottom view, displaying the status of processes, assets, people, and safety. Further, the IoT platform of the present disclosure supports end-to-end capability to execute digital twins against process data and to translate the output into actionable insights, as detailed in the following description.
- an industrial plant, connected warehouse, building and/or the like containing a vast amount of assets and an associated automation system for the assets can be complex and may comprise tens of thousands of data points of sensors, controllers, actuators, and/or the like.
- systems and methods comprising functionalities such as analytics, predictive maintenance models, fault detection processes, model-based predictive control algorithms, and/or the like, can be built and deployed to process time-series data of the assets in order to diagnose various conditions of the asset system, predict faults within the asset system, optimize performance, gain various insights, monitor productivity and/or performance, and/or the like.
- Such systems and methods may be associated with a digital model, or semantic model, for the assets.
- Such digital models represent and describe the arrangement of real-world assets and provide context for those assets.
- a digital model is defined with a common vocabulary (e.g., terminology for various assets, properties, and/or the like) and established by a formal domain model (e.g., a domain ontology).
- Digital models are be used to allow for the analysis of devices or performing analytics and/or customized manual programming for assets, including but not limited to advanced diagnostics, energy management, performance optimization, and/or the like.
- asset management and other processes such as processes related to operations, energy, sustainability, worker productivity, and/or other processes.
- many domains require or at least suggest a degree of customization to address specific requirements. Building a unique software solution for a particular domain that addresses the domain’s specific requirements results in an extended development cycle time, as well as unextendible and unscalable software which is only applicable to that particular domain.
- foundation applications comprising a framework which can be extended to provide a domain-specific application are provided.
- a foundation application is generated leveraging cloud-based services of an Internet-of-Things (IoT) platform (described further below in connection with FIGs.1 and 2) which address or otherwise account for specific domain needs and/or requirements.
- IoT Internet-of-Things
- foundation applications provide a shell framework that enables accelerated development, configuration, and domain-specific extension as well as functionalities including, but not limited to, onboarding new assets with an ability to model new assets, accepting measurements from the newly onboarded assets and allowing control of the newly onboarded assets, integrating with third-party cloud system(s) and/or software providing IoT data as well as non-IoT data, enabling domain-specific data transformations such as data aggregation and calculations for producing required performance metrics, tagging data, generating insights by way of machine learning (ML), extending the foundation application to include domain-specific alerts, workflows, rules, notifications and/or the like, and bundling predefined core services related to data storage, insight, visualization, and/or the like.
- ML machine learning
- a foundation application for a particular domain can be extended to address a common set of needs, such as global operations, asset management, worker productivity, and/or the like.
- a foundation application built to manage global operations for a particular enterprise may enable visibility of performance metrics at asset site-level (e.g., a particular building, warehouse, etc.) as well as across all asset sites for the particular enterprise, apply consistent business rules, alerts, and/or the like across the asset sites, and provide flexibility to extend performance metrics visibility and add new business rules, alerts, workflows, and/or the like instantaneously.
- asset site-level e.g., a particular building, warehouse, etc.
- a foundation application comprises seeded templates which differentiate the target domain of the foundation application from other foundation applications.
- an example foundation application specific to global operations of a connected warehouse can include a number of seeded templates specific to connected warehouse assets and/or operations, such as a seeded template for a sorter asset, and a seeded template for an alert associated with a dip in warehouse efficiency due to a number of label read failures.
- an example foundation application specific to global operations of a connected building can included seeded templates for an asset such as a Heating, Ventilation, and Air Conditioning (HVAC) unit, a seeded template for an alert configured to initiate a service ticket due to failure of the HVAC unit, and/or other seeded templates specific to connected building assets and/or operations.
- HVAC Heating, Ventilation, and Air Conditioning
- a foundation application comprises seeded templates and provides the ability to modify or add seeded templates for various data models including assets, external integrations (e.g., third-party cloud software integrations), data transformations, alerts, rules (e.g., business rules), workflows, visualizations, and/or the like.
- an end user is enabled to manage, add, and/or extend seeded templates for their specific domain through inputs to electronic interface(s) of the foundation application.
- a foundation application is implemented as a Software-as-a-Service (SaaS) offering by an IoT platform.
- SaaS Software-as-a-Service
- a foundation application is generated to include a plurality of predefined core services.
- the predefined core services are a subset of services from a plurality of services offered and/or managed by the IoT platform.
- the plurality of services may include application services such as rules engines, workflow and/or notification management, key performance indicator (KPI) framework(s), data insight services such as data query application programming interfaces (APIs), and/or time-series database access services, data pipeline services such as data cleansing, data transformation, data calculations and/or data aggregations, IoT services such as device management, data ingestion services, and/or the like.
- KPI key performance indicator
- APIs data query application programming interfaces
- time-series database access services data pipeline services such as data cleansing, data transformation, data calculations and/or data aggregations
- IoT services such as device management, data ingestion services, and/or the like.
- a foundation application provides an electronic user interface (UI) facilitating user interaction with the predefined core services of the foundation application as well as user ability to extend (e.g., modify, add, and/or remove predefined or pre-existing metadata) seeded templates, and/or perform other operations related to the foundation application.
- UI electronic user interface
- an extension request is received in response to an input to the electronic interface of the foundation application.
- the extension request comprises an addition or modification to data associated with a selected template.
- the addition or modification to the data can include, in some examples, an onboarding of a new or additional asset, a modification of a seeded template for an asset defining, adding, removing, and/or updating metadata such as new properties, point roles, and/or the like, a modification, cleansing, and/or transformation of data, creation or modification of workflows, rules, alerts, visualizations, and/or the like.
- output data is determined based on the addition or the modification to the data associated with the selected template.
- the output data comprises data determined and/or actions executed based on the extension request.
- the output data can include the determination and/or displaying of performance metrics of data for one or more assets and/or asset sites, issuing a notification based on a triggering of a rule or alert, applying a transformation to data related to one or more assets, and/or the like.
- a visualization is provided at an electronic interface of the foundation application.
- the visualization is a dashboard visualization that includes a plurality of widgets.
- a widget is a digital visualization related to one or more predefined core services of the foundation application.
- one or more widgets of the dashboard visualization are selectable.
- one or more widgets can be associated with a predefined core service for providing data insights for one or more assets and comprise a visualization of real-time data associated with the one or more assets, such as in the form of a graph visualization, key performance indicators (KPIs), and/or the like.
- the foundation application provides customizability of the dashboard visualization such that the user is enabled to select, position, resize, and configure the widgets of the dashboard visualization.
- the dashboard visualization comprises an indication of the determined output data.
- the output data in some embodiments, can include a result of a data transformation of an extension request, and the dashboard visualization can include an indication of the result for further analysis by an end user.
- FIG.1 illustrates an exemplary networked computing system environment 100, according to the present disclosure.
- networked computing system environment 100 is organized into a plurality of layers including a cloud layer 105 (“cloud 105”), a network layer 110 (“network 110”), and an edge layer 115 (“edge 115”).
- cloud 105 cloud layer
- network 110 network layer 110
- edge 115 edge layer 115
- components of the edge 115 are in communication with components of the cloud 105 via network 110.
- network 110 is any suitable network or combination of networks and supports any appropriate protocol suitable for communication of data to and from components of the cloud 105 and between various other components in the networked computing system environment 100 (e.g., components of the edge 115).
- network 110 includes a public network (e.g., the Internet), a private network (e.g., a network within an organization), or a combination of public and/or private networks.
- network 110 is configured to provide communication between various components depicted in FIG.1.
- network 110 comprises one or more networks that connect devices and/or components in the network layout to allow communication between the devices and/or components.
- the network 110 is implemented as the Internet, a wireless network, a wired network (e.g., Ethernet), a local area network (LAN), a Wide Area Network (WANs), Bluetooth, Near Field Communication (NFC), or any other type of network that provides communications between one or more components of the network layout.
- network 110 is implemented using cellular networks, satellite, licensed radio, or a combination of cellular, satellite, licensed radio, and/or unlicensed radio networks.
- Components of the cloud 105 include one or more computer systems 120 that form a so-called “Internet-of-Things" or “IoT” platform 125.
- IoT platform is an optional term describing a platform connecting any type of Internet-connected device, and should not be construed as limiting on the types of computing systems useable within IoT platform 125.
- computer systems 120 includes any type or quantity of one or more processors and one or more data storage devices comprising memory for storing and executing applications or software modules of networked computing system environment 100.
- the processors and data storage devices are embodied in server- class hardware, such as enterprise-level servers.
- the processors and data storage devices comprise any type or combination of application servers, communication servers, web servers, super-computing servers, database servers, file servers, mail servers, proxy servers, and/ virtual servers.
- the one or more processors are configured to access the memory and execute processor-readable instructions, which when executed by the processors configures the processors to perform a plurality of functions of the networked computing system environment 100.
- Computer systems 120 further include one or more software components of the IoT platform 125.
- the software components of computer systems 120 include one or more software modules to communicate with user devices and/or other computing devices through network 110.
- the software components include one or more modules 141, models 142, engines 143, databases 144, services 145, and/or applications 146, which may be stored in/by the computer systems 120 (e.g., stored on the memory), as detailed with respect to FIG.2 below.
- the one or more processors are configured to utilize the one or more modules 141, models 142, engines 143, databases 144, services 145, and/or applications 146 when performing various methods described in this disclosure.
- computer systems 120 execute a cloud computing platform (e.g., IoT platform 125) with scalable resources for computation and/or data storage, and may run one or more applications on the cloud computing platform to perform various computer-implemented methods described in this disclosure.
- a cloud computing platform e.g., IoT platform 125
- some of the modules 141, models 142, engines 143, databases 144, services 145, and/or applications 146 are combined to form fewer modules, models, engines, databases, services, and/or applications.
- some of the modules 141, models 142, engines 143, databases 144, services 145, and/or applications 146 are separated into separate, more numerous modules, models, engines, databases, services, and/or applications.
- the computer systems 120 are configured to receive data from other components (e.g., components of the edge 115) of networked computing system environment 100 via network 110. Computer systems 120 are further configured to utilize the received data to produce a result. According to various embodiments, information indicating the result is transmitted to users via user computing devices over network 110. In some embodiments, the computer systems 120 is a server system that provides one or more services including providing the information indicating the received data and/or the result(s) to the users.
- computer systems 120 are part of an entity which include any type of company, organization, or institution that implements one or more IoT services.
- the entity is an IoT platform provider.
- Components of the edge 115 include one or more enterprises 160a-160n each including one or more edge devices 161a-161n and one or more edge gateways 162a- 162n.
- a first enterprise 160a includes first edge devices 161a and first edge gateways 162a
- a second enterprise 160b includes second edge devices 161b and second edge gateways 162b
- an nth enterprise 160n includes nth edge devices 161n and nth edge gateways 162n.
- enterprises 160a-160n represent any type of entity, facility, or vehicle, such as, for example, companies, divisions, buildings, manufacturing plants, warehouses, real estate facilities, laboratories, aircraft, spacecraft, automobiles, ships, boats, military vehicles, oil and gas facilities, or any other type of entity, facility, and/or entity that includes any number of local devices.
- the edge devices 161a-161n represent any of a variety of different types of devices that may be found within the enterprises 160a- 160n.
- Edge devices 161a-161n are any type of device configured to access network 110, or be accessed by other devices through network 110, such as via an edge gateway 162a- 162n.
- edge devices 161a-161n are "IoT devices" which include any type of network-connected (e.g., Internet-connected) device.
- the edge devices 161a-161n include assets, sensors, actuators, processors, computers, valves, pumps, ducts, vehicle components, cameras, displays, doors, windows, security components, boilers, chillers, pumps, HVAC components, factory equipment, and/or any other devices that are connected to the network 110 for collecting, sending, and/or receiving information.
- Each edge device 161a-161n includes, or is otherwise in communication with, one or more controllers for selectively controlling a respective edge device 161a-161n and/or for sending/receiving information between the edge devices 161a-161n and the cloud 105 via network 110.
- the edge 115 include operational technology (OT) systems 163a-163n and information technology (IT) applications 164a- 164n of each enterprise 160a-160n.
- the OT systems 163a-163n include hardware and software for detecting and/or causing a change, through the direct monitoring and/or control of industrial equipment (e.g., edge devices 161a-161n), assets, processes, and/or events.
- the IT applications 164a-164n includes network, storage, and computing resources for the generation, management, storage, and delivery of data throughout and between organizations.
- the edge gateways 162a-162n include devices for facilitating communication between the edge devices 161a-161n and the cloud 105 via network 110.
- the edge gateways 162a-162n include one or more communication interfaces for communicating with the edge devices 161a-161n and for communicating with the cloud 105 via network 110.
- the communication interfaces of the edge gateways 162a-162n include one or more cellular radios, Bluetooth, WiFi, near-field communication radios, Ethernet, or other appropriate communication devices for transmitting and receiving information.
- each gateway 162a-162n for providing multiple forms of communication between the edge devices 161a-161n, the gateways 162a-162n, and the cloud 105 via network 110.
- communication are achieved with the edge devices 161a-161n and/or the network 110 through wireless communication (e.g., WiFi, radio communication, etc.) and/or a wired data connection (e.g., a universal serial bus, an onboard diagnostic system, etc.) or other communication modes, such as a local area network (LAN), wide area network (WAN) such as the Internet, a telecommunications network, a data network, or any other type of network.
- LAN local area network
- WAN wide area network
- the edge gateways 162a-162n also include a processor and memory for storing and executing program instructions to facilitate data processing.
- the edge gateways 162a-162n are configured to receive data from the edge devices 161a-161n and process the data prior to sending the data to the cloud 105.
- the edge gateways 162a-162n include one or more software modules or components for providing data processing services and/or other services or methods of the present disclosure.
- each edge gateway 162a-162n includes edge services 165a-165n and edge connectors 166a-166n.
- the edge services 165a- 165n include hardware and software components for processing the data from the edge devices 161a-161n.
- the edge connectors 166a-166n include hardware and software components for facilitating communication between the edge gateway 162a-162n and the cloud 105 via network 110, as detailed above.
- any of edge devices 161a-n, edge connectors 166a-n, and edge gateways 162a-n have their functionality combined, omitted, or separated into any combination of devices. In other words, an edge device and its connector and gateway need not necessarily be discrete devices.
- FIG.2 illustrates a schematic block diagram of framework 200 of the IoT platform 125, according to the present disclosure.
- the IoT platform 125 of the present disclosure is a platform for enterprise performance management that uses real-time accurate models and visual analytics to deliver intelligent actionable recommendations for sustained peak performance of the enterprise 160a-160n.
- the IoT platform 125 is an extensible platform that is portable for deployment in any cloud or data center environment for providing an enterprise-wide, top to bottom view, displaying the status of processes, assets, people, and safety. Further, the IoT platform 125 supports end-to- end capability to execute digital twins against process data and to translate the output into actionable insights, using the framework 200, detailed further below.
- the framework 200 of the IoT platform 125 comprises a number of layers including, for example, an IoT layer 205, an enterprise integration layer 210, a data pipeline layer 215, a data insight layer 220, an application services layer 225, and an applications layer 230.
- the IoT platform 125 also includes a core services layer 235 (“core services 235”) and an extensible object model (EOM) 250 comprising one or more knowledge graphs 251.
- the layers 205-235 further include various software components that together form each layer 205-235.
- each layer 205-235 may include one or more of the modules 141, models 142, engines 143, databases 144, services 145, applications 146, or combinations thereof.
- the layers 205-235 may be combined to form fewer layers. In some embodiments, some of the layers 205-235 may be separated into separate, more numerous layers. In some embodiments, some of the layers 205-235 may be removed while others may be added.
- the IoT platform 125 is a model-driven architecture.
- the extensible object model 250 communicates with each layer 205-230 to contextualize site data of the enterprise 160a-160n using an extensible object model (or “asset model”) and knowledge graphs 251 where the equipment (e.g., edge devices 161a-161n) and processes of the enterprise 160a-160n are modeled.
- the knowledge graphs 251 of EOM 250 are configured to store the models in a central location.
- the knowledge graphs 251 define a collection of nodes and links that describe real-world connections that enable smart systems.
- a knowledge graph 251 (i) describes real-world entities (e.g., edge devices 161a-161n) and their interrelations organized in a graphical interface; (ii) defines possible classes and relations of entities in a schema; (iii) enables interrelating arbitrary entities with each other; and (iv) covers various topical domains.
- the knowledge graphs 251 define large networks of entities (e.g., edge devices 161a-161n), semantic types of the entities, properties of the entities, and relationships between the entities.
- the knowledge graphs 251 describe a network of “things” that are relevant to a specific domain or to an enterprise or organization.
- Knowledge graphs 251 are not limited to abstract concepts and relations, but can also contain instances of objects, such as, for example, documents and datasets.
- the knowledge graphs 251 may include resource description framework (RDF) graphs.
- RDF resource description framework
- a “RDF graph” is a graph data model that formally describes the semantics, or meaning, of information.
- the RDF graph can also represent metadata (e.g., data that describes data).
- Knowledge graphs 251 can also include a semantic object model.
- the semantic object model is a subset of a knowledge graph 251 that defines semantics for the knowledge graph 251.
- the semantic object model defines the schema for the knowledge graph 251.
- EOM 250 is a collection of application programming interfaces (APIs) that enables seeded semantic object models to be extended.
- APIs application programming interfaces
- the EOM 250 of the present disclosure enables a customer’s knowledge graph 251 to be built subject to constraints expressed in the customer’s semantic object model.
- the knowledge graphs 251 are generated by customers (e.g., enterprises or organizations) to create models of the edge devices 161a-161n of an enterprise 160a- 160n, and the knowledge graphs 251 are input into the EOM 250 for visualizing the models (e.g., the nodes and links).
- the models describe the assets (e.g., the nodes) of an enterprise (e.g., the edge devices 161a-161n) and describe the relationship of the assets with other components (e.g., the links).
- the models also describe the schema (e.g., describe what the data is), and therefore the models are self-validating.
- the model can describe the type of sensors mounted on any given asset (e.g., edge device 161a-161n) and the type of data that is being sensed by each sensor.
- a key performance indicator (KPI) framework can be used to bind properties of the assets in the extensible object model 250 to inputs of the KPI framework.
- the IoT platform 125 is an extensible, model-driven end-to-end stack including: two-way model sync and secure data exchange between the edge 115 and the cloud 105, metadata driven data processing (e.g., rules, calculations, and aggregations), and model driven visualizations and applications.
- metadata driven data processing e.g., rules, calculations, and aggregations
- model driven visualizations and applications e.g., “extensible” refers to the ability to extend a data model to include new properties/columns/fields, new classes/tables, and new relations.
- the IoT platform 125 is extensible with regards to edge devices 161a-161n and the applications 146 that handle those devices 161a-161n.
- asset templates are used to facilitate configuration of instances of edge devices 161a-161n in the model using common structures.
- An asset template defines the typical properties for the edge devices 161a-161n of a given enterprise 160a- 160n for a certain type of device.
- an asset template of a pump includes modeling the pump having inlet and outlet pressures, speed, flow, etc.
- the templates may also include hierarchical or derived types of edge devices 161a-161n to accommodate variations of a base type of device 161a-161n.
- a reciprocating pump is a specialization of a base pump type and would include additional properties in the template.
- Instances of the edge device 161a-161n in the model are configured to match the actual, physical devices of the enterprise 160a-160n using the templates to define expected attributes of the device 161a-161n.
- Each attribute is configured either as a static value (e.g., capacity is 1000 BPH) or with a reference to a time series tag that provides the value.
- the knowledge graph 251 can automatically map the tag to the attribute based on naming conventions, parsing, and matching the tag and attribute descriptions and/or by comparing the behavior of the time series data with expected behavior.
- the modeling phase includes an onboarding process for syncing the models between the edge 115 and the cloud 105.
- the onboarding process can include a simple onboarding process, a complex onboarding process, and/or a standardized rollout process.
- the simple onboarding process includes the knowledge graph 251 receiving raw model data from the edge 115 and running context discovery algorithms to generate the model.
- the context discovery algorithms read the context of the edge naming conventions of the edge devices 161a-161n and determine what the naming conventions refer to.
- the knowledge graph 251 can receive “TMP” during the modeling phase and determine that “TMP” relates to “temperature.”
- the generated models are then published.
- the complex onboarding process includes the knowledge graph 251 receiving the raw model data, receiving point history data, and receiving site survey data.
- the knowledge graph 251 can then use these inputs to run the context discovery algorithms.
- the generated models can be edited and then the models are published.
- the standardized rollout process includes manually defining standard models in the cloud 105 and pushing the models to the edge 115.
- the IoT layer 205 includes one or more components for device management, data ingest, and/or command/control of the edge devices 161a-161n.
- the components of the IoT layer 205 enable data to be ingested into, or otherwise received at, the IoT platform 125 from a variety of sources. For example, data can be ingested from the edge devices 161a-161n through process historians or laboratory information management systems.
- the IoT layer 205 is in communication with the edge connectors 166a-166n installed on the edge gateways 162a-162n through network 110, and the edge connectors 166a-166n send the data securely to the IoT platform 205.
- only authorized data is sent to the IoT platform 125, and the IoT platform 125 only accepts data from authorized edge gateways 162a-162n and/or edge devices 161a-161n.
- the IoT layer 205 may also include components for accessing time series, alarms and events, and transactional data via a variety of protocols.
- the enterprise integration layer 210 includes one or more components for events/messaging, file upload, and/or REST/OData.
- the components of the enterprise integration layer 210 enable the IoT platform 125 to communicate with third party cloud applications 211, such as any application(s) operated by an enterprise in relation to its edge devices.
- third party cloud applications 211 such as any application(s) operated by an enterprise in relation to its edge devices.
- the enterprise integration layer 210 connects with enterprise databases, such as guest databases, customer databases, financial databases, patient databases, etc.
- the enterprise integration layer 210 provides a standard application programming interface (API) to third parties for accessing the IoT platform 125.
- API application programming interface
- the enterprise integration layer 210 also enables the IoT platform 125 to communicate with the OT systems 163a-163n and IT applications 164a-164n of the enterprise 160a-160n.
- the enterprise integration layer 210 enables the IoT platform 125 to receive data from the third party cloud applications 211 rather than, or in combination with, receiving the data from the edge devices 161a-161n directly.
- the data pipeline layer 215 includes one or more components for data cleansing/enriching, data transformation, data calculations/aggregations, and/or API for data streams. Accordingly, the data pipeline layer 215 can pre-process and/or perform initial analytics on the received data.
- the data pipeline layer 215 executes advanced data cleansing routines including, for example, data correction, mass balance reconciliation, data conditioning, component balancing and simulation to ensure the desired information is used as a basis for further processing.
- the data pipeline layer 215 also provides advanced and fast computation.
- cleansed data is run through enterprise- specific digital twins.
- the enterprise-specific digital twins can include a reliability advisor containing process models to determine the current operation and the fault models to trigger any early detection and determine an appropriate resolution.
- the digital twins can also include an optimization advisor that integrates real-time economic data with real-time process data, selects the right feed for a process, and determines optimal process conditions and product yields.
- the data pipeline layer 215 may also use models and templates to define calculations and analytics, and define how the calculations and analytics relate to the assets (e.g., the edge devices 161a-161n).
- a pump template can define pump efficiency calculations such that every time a pump is configured, the standard efficiency calculation is automatically executed for the pump.
- the calculation model defines the various types of calculations, the type of engine that should run the calculations, the input and output parameters, the preprocessing requirement and prerequisites, the schedule, etc.
- the actual calculation or analytic logic may be defined in the template or it may be referenced.
- the calculation model can be used to describe and control the execution of a variety of different process models.
- Calculation templates can be linked with the asset templates such that when an asset (e.g., edge device 161a-161n) instance is created, any associated calculation instances are also created with their input and output parameters linked to the appropriate attributes of the asset (e.g., edge device 161a-161n).
- the IoT platform 125 can support a variety of different analytics models including, for example, first principles models, empirical models, engineered models, user-defined models, machine learning models, built-in functions, and/or any other types of analytics models. Fault models and predictive maintenance models will now be described by way of example, but any type of models may be applicable. [00141] Fault models are used to compare current and predicted enterprise 160a-160n performance to identify issues or opportunities, and the potential causes or drivers of the issues or opportunities. The IoT platform 125 includes rich hierarchical symptom-fault models to identify abnormal conditions and their potential consequences.
- the IoT platform 125 can drill down from a high-level condition to understand the contributing factors, as well as determining the potential impact a lower level condition may have.
- Each fault model can identify issues and opportunities in their domain, and can also look at the same core problem from a different perspective.
- An overall fault model can be layered on top to synthesize the different perspectives from each fault model into an overall assessment of the situation and point to the true root cause.
- the IoT platform 125 can make recommendations about the best corrective actions to take.
- the recommendations are based on expert knowledge that has been pre-programmed into the system by process and equipment experts.
- a recommendation services module presents this information in a consistent way regardless of source, and supports workflows to track, close out, and document the recommendation follow-up.
- the recommendation follow-up can be used to improve the overall knowledge of the system over time as existing recommendations are validated (or not) or new cause and effect relationships are learned by users and/or analytics.
- the models can be used to accurately predict what will occur before it occurs and interpret the status of the installed base.
- the IoT platform 125 enables operators to quickly initiate maintenance measures when irregularities occur.
- the digital twin architecture of the IoT platform 125 can use a variety of modeling techniques.
- the modeling techniques can include, for example, rigorous models, fault detection and diagnostics (FDD), descriptive models, predictive maintenance, prescriptive maintenance, process optimization, and/or any other modeling technique.
- the rigorous models can be converted from process design simulation. In this manner, process design is integrated with feed conditions and production requirement. Process changes and technology improvement provide business opportunities that enable more effective maintenance schedule and deployment of resources in the context of production needs.
- the fault detection and diagnostics include generalized rule sets that are specified based on industry experience and domain knowledge and can be easily incorporated and used working together with equipment models.
- the descriptive models identify a problem and then the predictive models can determine possible damage levels and maintenance options.
- the descriptive models can include models for defining the operating windows for the edge devices 161a-161n.
- Predictive maintenance includes predictive analytics models developed based on rigorous models and statistic models, such as, for example, principal component analysis (PCA) and partial least square (PLS). Machine learning methods can be applied to train models for fault prediction. Predictive maintenance can leverage FDD-based algorithms to continuously monitor individual control and equipment performance. Predictive modeling is then applied to a selected condition indicator that deteriorates in time. Prescriptive maintenance includes determining what is the best maintenance option and when it should be performed based on actual conditions rather than time-based maintenance schedule. Prescriptive analysis can select the right solution based on the company’s capital, operational, and/or other requirements. Process optimization is determining optimal conditions via adjusting set-points and schedules.
- PCA principal component analysis
- PLS partial least square
- the optimized set-points and schedules can be communicated directly to the underlying controllers, which enables automated closing of the loop from analytics to control.
- the data insight layer 220 includes one or more components for time series databases (TDSB), relational/document databases, data lakes, blob, files, images, and videos, and/or an API for data query.
- TDSB time series databases
- relational/document databases data lakes
- blob files
- images and videos
- API for data query.
- the data insight layer 220 includes one or more components for time series databases (TDSB), relational/document databases, data lakes, blob, files, images, and videos, and/or an API for data query.
- TDSB time series databases
- the data pipeline layer 215 can access the data stored in the databases of the data insight layer 220 to perform analytics, as detailed above.
- the application services layer 225 includes one or more components for rules engines, workflow/notifications, KPI framework, insights (e.g., actionable insights), decisions, recommendations, machine learning, and/or an API for application services.
- the application services layer 225 enables building of applications 146a-d.
- the applications layer 230 includes one or more applications 146a-d of the IoT platform 125.
- the applications 146a-d can include a buildings application 146a, a plants application 146b, an aero application 146c, and other enterprise applications 146d.
- the applications 146 can include general applications 146 for portfolio management, asset management, autonomous control, and/or any other custom applications.
- Portfolio management can include the KPI framework and a flexible user interface (UI) builder.
- UI flexible user interface
- Asset management can include asset performance and asset health.
- Autonomous control can include energy optimization and predictive maintenance.
- the general applications 146 can be extensible such that each application 146 can be configurable for the different types of enterprises 160a-160n (e.g., buildings application 146a, plants application 146b, aero application 146c, and other enterprise applications 146d).
- the applications layer 230 also enables visualization of performance of the enterprise 160a-160n. For example, dashboards provide a high-level overview with drill downs to support deeper investigations. Recommendation summaries give users prioritized actions to address current or potential issues and opportunities. Data analysis tools support ad hoc data exploration to assist in troubleshooting and process improvement.
- the core services layer 235 includes one or more services of the IoT platform 125.
- the core services 235 can include data visualization, data analytics tools, security, scaling, and monitoring.
- the core services 235 can also include services for tenant provisioning, single login/common portal, self-service admin, UI library/UI tiles, identity/access/entitlements, logging/monitoring, usage metering, API gateway/dev portal, and the IoT platform 125 streams.
- FIG.3 depicts an example system 300 that is configured to perform and/or execute techniques presented herein.
- FIG.3 is a simplified functional block diagram of a computer that may be configured to execute techniques described herein, according to exemplary embodiments of the present disclosure.
- the computer may include a data communication interface 360 for packet data communication.
- the platform also may include a central processing unit (“CPU”) 320, in the form of one or more processors, for executing program instructions.
- the platform may include an internal communication bus 310, and the platform also may include a program storage and/or a data storage for various data files to be processed and/or communicated by the platform such as ROM 330 and RAM 340, although the system 300 may receive programming and data via network communications.
- the system 300 also may include input and output ports 350 to connect with input and output devices such as keyboards, mice, touchscreens, monitors, displays, etc.
- any of the disclosed systems, methods, and/or graphical user interfaces may be executed by or implemented by a computing system consistent with or similar to that depicted and/or explained in this disclosure.
- aspects of the present disclosure are described in the context of computer- executable instructions, such as routines executed by a data processing device, e.g., a server computer, wireless device, and/or personal computer.
- aspects of the present disclosure may be embodied in a special purpose computer and/or data processor that is specifically programmed, configured, and/or constructed to perform one or more of the computer-executable instructions explained in detail herein. While aspects of the present disclosure, such as certain functions, are described as being performed exclusively on a single device, the present disclosure also may be practiced in distributed environments where functions or modules are shared among disparate processing devices, which are linked through a communications network, such as a Local Area Network (“LAN”), Wide Area Network (“WAN”), and/or the Internet. Similarly, techniques presented herein as involving multiple devices may be implemented in a single device. In a distributed computing environment, program modules may be located in both local and/or remote memory storage devices.
- LAN Local Area Network
- WAN Wide Area Network
- aspects of the present disclosure may be stored and/or distributed on non- transitory computer-readable media, including magnetically or optically readable computer discs, hard-wired or preprogrammed chips (e.g., EEPROM semiconductor chips), nanotechnology memory, biological memory, or other data storage media.
- computer implemented instructions, data structures, screen displays, and other data under aspects of the present disclosure may be distributed over the Internet and/or over other networks (including wireless networks), on a propagated signal on a propagation medium (e.g., an electromagnetic wave(s), a sound wave, etc.) over a period of time, and/or they may be provided on any analog or digital network (packet switched, circuit switched, or other scheme).
- Storage type media include any or all of the tangible memory of the computers, processors or the like, or associated modules thereof, such as various semiconductor memories, tape drives, disk drives and the like, which may provide non-transitory storage at any time for the software programming. All or portions of the software may at times be communicated through the Internet or various other telecommunication networks.
- Such communications may enable loading of the software from one computer or processor into another, for example, from a management server or host computer of the mobile communication network into the computer platform of a server and/or from a server to the mobile device.
- another type of media that may bear the software elements includes optical, electrical and electromagnetic waves, such as used across physical interfaces between local devices, through wired and optical landline networks and over various air-links.
- the physical elements that carry such waves, such as wired or wireless links, optical links, or the like, also may be considered as media bearing the software.
- terms such as computer or machine “readable medium” refer to any medium that participates in providing instructions to a processor for execution.
- a method 400 illustrates operations performed related to determining output data based on receiving an extension request at a foundation application.
- the method 400 begins at block 401 that generates (e.g., by the CPU 320 and/or the like) a foundation application comprising a plurality of predefined core services managing a plurality of assets.
- the predefined core services comprise one or more templates associated with at least one asset of the plurality of assets.
- a foundation application is generated and implemented as a SaaS offering that includes a plurality of predefined core services of the IoT platform 125 which can be extended by domains (e.g., business enterprises and associated asset sites such as buildings, warehouses and/or the like) to meet specific and/or unique requirements.
- a foundation application is generated to include a shell framework of predefined core services of the IoT platform 125, which, when accessed by end users within a particular domain, can be extended and/or otherwise configured by the end users to manage, configure, and/or process data related assets and/or other operations within their domain, such as within different asset sites.
- FIG.5A and 5B illustrate a high-level overview of an example foundation application framework 500 which provides predefined core services as well as example extensions of the example foundation application framework.
- an example foundation application for an example enterprise has a framework 500 that comprises several layers of example predefined core services, such as for global operations for the enterprise.
- a first example layer 502 includes predefined core services related to dashboard visualization configuration and business insights (“BI”). As shown, these services include default KPI services and interactive data visualization services.
- a second example layer 504 includes predefined core services related to generating business rules and workflows. For example, these services include default business rules and default workflows which can later be extended for a particular asset site.
- a third example layer 506 includes predefined core services related to data transformation and alert generation.
- a fourth example layer 508 includes predefined core services related to asset configuration and/or management and integrations (e.g., third-party cloud software integrations).
- these services may include asset creation and/or onboarding services, asset simulation services, external Enterprise Resource Planning (ERP) service integration, and external Work Order Management service integration.
- ERP Enterprise Resource Planning
- FIG.5B the framework 500 of the example foundation application of FIG.5A can be extended into domain-specific foundation applications, such as a first foundation application 520 for global operations of a connected warehouse and a second foundation application 540 for global operations of a connected building.
- the first example layer 502 which includes predefined core services related to dashboard visualization configurations and business insights, is extended (e.g., first layer 502A) to include seeded templates for business insights and/or visualizations related to operational costs and labor efficiency in the foundation application 520 for a connected warehouse.
- the first example layer 502 is extended (e.g., first layer 502B) to include seeded templates for business insights and/or visualizations related to energy saving and asset faults in the foundation application 540 for a connected building.
- the second example layer 504 which includes predefined core services related to generating business rules and workflows, is extended (e.g., second layer 504A) to include seeded templates for business rules and/or workflows related to labor deployment, inventory management, sales order processing, and new sales orders in the foundation application 520 for a connected warehouse.
- the second example layer 502 is extended (e.g., second layer 504B) to include seeded templates for business rules and/or workflows related to humidity control, setpoint updating, asset maintenance, and asset service tickets in the foundation application 540 for a connected building.
- the third example layer 506 which includes predefined core services related to data transformation and alert generation, is extended (e.g., third layer 506A) to include seeded templates for data transformations related to unit conversion, EOM tagging, and aggregation, and seeded templates for alerts such as a low inventory alert and a labor shortage alert in the foundation application 520 for a connected warehouse.
- the third example layer 506 is extended (e.g., third layer 506B) to include seeded templates for data transformations related to unit conversion, EOM tagging, and aggregation, and seeded templates for alerts such as a high temperature alert and a device fault alert in the foundation application 540 for a connected building.
- the fourth example layer 508 which includes predefined core services related to asset configuration and/or management and integrations, is extended (e.g., fourth layer 508A) to include templates for assets such as lifts and carousels, and seeded templates for integrations of external third-party services (e.g., FedEx, Salesforce.com (SFDC)).
- the fourth example layer 508 is extended (e.g., fourth layer 508B) to include seeded templates for assets such as a fire sensor, lighting panel, a constant volume air handling unit (CVAHU), and a variable air volume (VAV) sensor, and seeded templates for integrations of external third-party services (e.g., Signify, Weather.com) in the foundation application 540 for a connected building.
- FIG. 5C illustrates an example representation of an example asset health process which an example foundation application can be extended and configured to execute.
- a business process for monitoring the health of an example asset is shown.
- such processes are elements that can be triggered by events and/or produce events, create, update, and/or delete objects (e.g., data objects), and may combine and employ other aspects such as machine learning (ML) models, data pipelines, notifications, workflows, interim events, and/or the like.
- ML machine learning
- FIG.5D shows example process layers of the example asset health process of FIG.5C.
- each process layer is associated with one or more common objects (e.g., data objects representing assets, processes, and/or other items or real-world entities) utilized in the asset health process.
- fault detection is employed to assess telemetry data of an asset by using, e.g., ML model(s) and/or one or more business rules (further described below in connection with FIGs.8A-E).
- ML model(s) e.g., ML model(s) and/or one or more business rules (further described below in connection with FIGs.8A-E).
- Process 2 detects a need for a service case based on one or more rules and/or ML determinations.
- an example integration template of example foundation application is defined to initiate a work order with a third-party integration service (e.g., a Work Order Management System). Further details regarding configuring and extending integration templates are described below in connection with FIGs.12A-C.
- Process 3 determines a control recommendation is needed, e.g., through ML and/or one or more rules, to change a particular set point of the asset, triggering Process 4 which causes actuation (e.g., autonomous control) of the asset or portion of the asset.
- actuation e.g., autonomous control
- FIG.5E illustrates example common objects and processes for an example foundation application which can be configured and extended to provide domain-specific implementations.
- foundation application may utilize common objects and processes outside of an associated extensible object model (EOM).
- EOM extensible object model
- these processes can include account and billing management processes, product and price management processes, entitlement and security model processes, tenant management and provisioning processes, application usage metering processes, and/or other processes.
- usage of a foundation application may require a user account, subscription, payment plan, and/or the like.
- an example foundation application utilizes common objects and processes across modules (e.g. including the EOM) that can be configured and/or extended.
- foundational common objects may be configured, such as processes for business party management (e.g., common objects defining an organization and/or relations therein), site hierarchy management (e.g., common objects defining one or more asset sites for an organization), space layout management (e.g., common objects defining spaces, levels, zones and/or other features of one or more asset sites), and/or people management processes (e.g., common objects defining properties of workers and/or employees of an organization).
- business party management e.g., common objects defining an organization and/or relations therein
- site hierarchy management e.g., common objects defining one or more asset sites for an organization
- space layout management e.g., common objects defining spaces, levels, zones and/or other features of one or more asset sites
- people management processes e.g., common objects defining properties of workers and/or employees of an organization.
- the example foundation application of FIG.5E further comprises processes and common objects related to data liquidity, such as device and/or IoT data management processes (e.g., common objects defining devices, files, control and/or gateway(s)), asset modeling processes (e.g., common objects defining assets, sensors, relationships between assets, and/or the like), data cleansing processes (e.g., common objects defining cleansing algorithms), data tagging processes(e.g., common objects defining context for data points of sensors and/or assets), unit conversion processes (e.g., common objects defining units of measure for data points), enterprise search processes, simulation processes, and/or the like.
- IoT data management processes e.g., common objects defining devices, files, control and/or gateway(s)
- asset modeling processes e.g., common objects defining assets, sensors, relationships between assets, and/or the like
- data cleansing processes e.g., common objects defining cleansing algorithms
- data tagging processes e.g., common objects defining context for data points of
- the example foundation application of FIG.5E further comprises processes and common objects related to virtual control, such as performance monitoring API processes (e.g., common objects defining KPIs and/or thresholds), ML based prediction processes (e.g., common objects defining ML models), health assessment processes (e.g., common objects defining faults and/or alerts), limit management processes (e.g., common processes defining targets and/or limits), and/or the like.
- performance monitoring API processes e.g., common objects defining KPIs and/or thresholds
- ML based prediction processes e.g., common objects defining ML models
- health assessment processes e.g., common objects defining faults and/or alerts
- limit management processes e.g., common processes defining targets and/or limits
- the example foundation application comprises integration processes, such as common objects related to third-party applications (e.g., a Work Order Management service or the like), third- party events, and/or third-party raw data.
- the example foundation application of FIG.5E further comprises processes and common objects related to application components, such as operational and asset health dashboard processes (e.g., common objects defining KPIs and/or asset health), user interface (UI) system processes (e.g., common objects defining UI component libraries, portal(s) and/or data visualizations), root cause analysis processes (e.g., common objects defining faults), service case management processes, operational task management processes, and/or the like.
- operational and asset health dashboard processes e.g., common objects defining KPIs and/or asset health
- UI system processes e.g., common objects defining UI component libraries, portal(s) and/or data visualizations
- root cause analysis processes e.g., common objects defining faults
- service case management processes e.g., operational task management processes
- a foundation application is extended via input by an end user to an electronic interface of the foundation application.
- an extension request is generated upon the end user providing input to the electronic interface.
- the method 400 also includes a block 402 that receives (e.g., by the communication interface 360, CPU 320, and/or the like) an extension request comprising an addition or modification to data associated with a selected template of the one or more templates.
- an extension request comprises data related to an extension, such as an addition or modification, which an end user is intending to make to a selected template of the foundation application.
- an extension request can comprise data related to a template for an asset, such as additional data (e.g., properties or the like) for the asset, data for a newly onboarded asset, and/or the like.
- FIGs.6A-E show example electronic interfaces of an example foundation application from which an extension request related to a creation and/or modification of template(s) for an asset can be generated.
- FIG.6A shows an example electronic interface of an example foundation application.
- the example electronic interface includes a sidebar 602 comprising selectable options to navigate the example foundation application, such as selectable options to view, create, and/or modify templates for rules, workflows, alerts, integrations, data processing, assets, dashboard visualizations, asset and/or integration onboarding, and/or the like.
- sidebar portion 602A comprises selectable options for seeded template configuration at a portfolio-level or enterprise-level setting (e.g., default or general seeded template generation for all asset sites of an enterprise).
- the sidebar portion 602B comprises selectable options for adding to, modifying, instantiating and/or otherwise extending seeded templates at an asset site level (e.g., for a particular building, warehouse, and/or the like).
- end users at an asset site may only view and/or select options from the sidebar portion 602B, and sidebar portion 602A may be hidden from view on the electronic interface of the foundation application.
- sub-interface 604A is displayed.
- the sub-interface 604A includes selectable icons representing seeded templates which have been previously defined and/or generated (e.g., “Existing Assets”).
- sub-interface 604A includes icons representing several templates of assets including a sorter template 605, a merge template 606, and a fixed scanner template 607.
- the sub-interface 604A also optionally includes a search bar 610 to locate existing seeded templates for assets.
- the sub- interface 604A may include a large number of icons representing existing seeded templates for assets, such that a user enters the text “sort” in the search bar and the sorter template 605 (and/or other icons for templates containing the term “sort”) may be highlighted, displayed separate from other existing templates, and/or otherwise indicated to the user.
- the sub-interface 604A also optionally includes selectable options 611 and 612 for creating a custom seeded template for an asset or importing a seeded template for an asset (e.g., importing a seeded template file stored externally).
- sub-interface 604B upon selection of the icon for the sorter template 605, another sub-interface 604B is rendered, as shown in FIG.6B.
- sub-interface 604B comprises selectable options related to the sorter template.
- the example selectable options include an asset properties option 615, a point role option 616, and an input simulation option 617. In some embodiments, these example selectable options may additionally or alternatively be selected from the sidebar portion 602A, as shown in FIG.6B.
- another sub-interface 604C is rendered, as shown in FIG.6C.
- sub-interface 604C comprises an asset properties table 620 for a sorter asset.
- the asset properties table comprises a listing of rows, each row associated with a particular property (or “attribute”) of a sorter asset.
- the asset properties table 620 provides visibility and configuration of various properties for an asset, such as, for example, manufacturer details, serial number(s), firmware and/or software versions, and/or other characteristics.
- FIG.6C shows three example properties including a ”Product Type” property, a ”Product Identifier” (ID) property, and a ”Firmware Version” property.
- the example asset properties table 620 comprises two columns, “Display Name” and “Attribute Name.” As shown, one or more of the properties may be extended by a user selecting element 625 on the sub-interface 604C. For example, a seeded template for an asset can be extended to include additional information, e.g., additional columns, for one or more properties and/or additional properties for the asset.
- the properties may be selectable and editable. For example, “Product ID” under “Display Name” may be selected and edited to instead read “Product Identifier.” In this regard, an extension request is generated comprising data related to the “Display Name” modification for that particular property.
- sub-interface 604D comprises an asset point role table 630 for the sorter asset.
- the asset point role table comprises a listing of rows, each row associated with a property that is associated with a particular data point of an asset and defining a plurality of characteristics of a point role of the respective data point for the asset.
- a point role serves to identify the semantics of a particular data point (e.g., the role a data point plays in the asset). In a digital model, this can be expressed by attaching a point role to a property.
- a point role is a concept set such as a collection of strongly typed concept terms defined in a domain ontology which are discrete elements of different concept types that together, provide an unambiguous description of the context of the data point of the particular asset. [00179] For example, in FIG.6D, three example properties associated with respective data points are shown, including an “In Count” property, an “Out Count” property, and a “Read Failed” property.
- the example asset point role table 630 comprises five columns, “Display Name,” “Attribute Name,” “Description,” “Type,” “Unit,” and “Enum.” As shown, one or more of the point roles can be extended by a user selecting element 625 on the sub-interface 604D. For example, additional point roles may be added and/or one or more point roles may be extended to include additional information, e.g., additional columns, for the particular data point and/or a modification of one or more characteristics for the data point for further processing, transformation, computation, storage, visualization, and/or the like. In some embodiments, as described above, the properties are selectable and editable.
- “Integer” under “Unit” may be selected and edited to instead read “Float” for one or more of the properties.
- an extension request is generated comprising data related to the “Unit” change for the point role of that particular property.
- multiple point roles can be selected and extended at once using selection boxes 622 on the sub- interface 604D.
- another sub-interface 604E is rendered, as shown in FIG. 6E.
- sub-interface 604E comprises an input simulation table 640 for configuring parameters of a predefined core service related to simulation (e.g., simulation of an asset, asset properties, and/or other input).
- a predefined core service for input simulation provides an end user with a simulation of data associated with one or more properties of an asset in order to test various functionalities of the foundation application and to ensure the desired information is to be used as a basis for further processing.
- the method 400 also includes a block 403 that determines (e.g., by the CPU 320 and/or the like), in response to the extension request, output data based on the addition or the modification to the data associated with the selected template.
- determining output data may comprise determining, instantiating and/or storing data and/or executing one or more actions.
- the output data varies based on the extension request.
- determined output data comprises storing that modification in association with the foundation application and providing an indication of that modification for display.
- the method 400 also includes a block 404 that provides (e.g., by the communication interface 360, CPU 320, and/or the like) a visualization at an electronic interface of the foundation application, the visualization comprising an indication of the output data.
- a block 404 that provides (e.g., by the communication interface 360, CPU 320, and/or the like) a visualization at an electronic interface of the foundation application, the visualization comprising an indication of the output data.
- block 701 generates (e.g., by CPU 320 and/or the like), based on the extension request, at least one alert associated with one or more assets for the foundation application, with the at least one alert defining at least one data trend.
- FIG.7B and 7C show example electronic interfaces providing the ability for an end user to configure enterprise-level seeded templates for alerts.
- a sub-interface 704B is rendered in response to a user selection of the “Alerts” option under “Data Processing” in the sidebar portion 602A.
- the sub-interface 704B includes selectable icons representing seeded templates for alerts which have been previously defined and/or generated (e.g., “Existing Alerts”). For example, as shown, sub-interface 704B includes icons for several templates for alerts including an “Inventory Too Low” alert template 705, a “High No-Reads” alert template 706, and a “Re-Circulation” alert template 707. [00184] As shown, the sub-interface 704B also optionally includes a search bar 710 to locate icons for existing templates.
- the sub-interface 704B may include a large number of icons for existing alert templates, such that a user enters the text “high” in the search bar and the “High No Reads” template 706 (and/or other templates containing the term “high”) is highlighted, displayed separate from other existing alert templates, and/or otherwise indicated to the user.
- the sub-interface 704B also optionally includes selectable options 711 and 712 for creating a custom alert template or importing a template for an alert.
- selectable options 711 and 712 for creating a custom alert template or importing a template for an alert.
- sub-interface 704C comprises various UI elements for configuring, modifying and/or defining an alert template, such as the “High No Reads” alert template.
- an alert for a particular asset is defined, as shown by the selection of the asset button 720.
- alerts for integrations, insights, and/or ML model-based alerts may be configured and/or extended through selecting an associated button as shown.
- the sub-interface 704C provides for an end user to input conditional logic defining the alert template.
- the “Sorter” asset is provided to the “Input” selection box 721, and the property “RdFailed” for the Sorter asset is selected as the property for the alert template in input box 722.
- the “Condition” input box 723 is set to “Greater than or equal to,” and the “Value” input box 724 is set to “50.”
- the enterprise-level alert template is configured such that a notification will be transmitted in an instance in a data trend is identified, such as, for example, in an instance in which a number of read failures meets or exceeds 50.
- additional conditions can be set by selecting “AND” or “OR” buttons 725. [00187] Additional parameters for the alert template may also be configured.
- a textual label for the alert template may be defined in the “Alert Label” input box 726.
- a severity level (e.g., low, medium, high, etc.) may also be defined in the “Severity” input box 727.
- An alert type may be defined in the “Alert Type” box 728. As shown, the type is “Notification,” meaning a notification (e.g., a message, such as a text message, email, phone call, push notification, and/or other type of notification) is to be provided to one or more devices (e.g., user devices) such that a system administrator, engineer, and/or the like is notified of the data trend.
- a notification e.g., a message, such as a text message, email, phone call, push notification, and/or other type of notification
- a location of the asset may be provided in the notification, and defined in the “Location” input box 729. As shown, the location input into the “Location” input box 729 is a “Location” property of the “Sorter” asset, indicated as “Sorter. Location.” In some embodiments, a textual description of the data trend may be provided in the “Description” input box 730. [00188] FIG.7D and 7E show example electronic interfaces providing the ability for an end user at a particular asset site to configure and/or instantiate asset site-specific templates based on the enterprise-level seeded templates for alerts.
- a sub-interface 704D is rendered.
- the sub-interface 704D includes icons selectable seeded templates for alerts which have been previously defined and/or generated (e.g., “Existing Alerts”).
- sub-interface 704D provides visibility for several alerts including an “Inventory Too Low” alert template 705, a “High No Reads” alert template 706, and a “Re-Circulation” alert template 707 described above in connection with FIG.7B.
- the sub-interface 704D also optionally includes a search bar 710 to locate existing templates for alerts.
- the sub-interface 704D also optionally includes selectable options 711 for creating a new alert template and 712 for configuring an existing template for an alert.
- selectable options 711 for creating a new alert template and 712 for configuring an existing template for an alert.
- another sub-interface 704E is rendered, as shown in FIG.7E.
- sub-interface 704E comprises various UI elements for extending an alert template for a particular asset site, such as the “High No Reads” alert template originally defined at enterprise-level (e.g., as shown in FIG.7C).
- a user can define an instance of the alert template for a particular asset site and configure the alert template for that particular instance.
- an example instance “Bengaluru.Wh1.*” is defined in instance box 750, which indicates that the alert is specific to a particular warehouse labeled “Wh1” located in Bengaluru, India.
- sub-interface 704E provides similar configuration options to sub-interface 704C of FIG.7C.
- a user can extend or modify the template for the alert specifically for the Bengaluru warehouse.
- sorters in the Bengaluru warehouse process highly important or sensitive materials and require a notification be issued when read failures reach 10, rather than 50 as defined by the enterprise-level template.
- block 702 accesses real-time data associated with the one or more assets of the plurality of assets.
- the real-time data that is accessed comprises real-time sensor data, time-series data, and/or other data related to the alert.
- the real-time data comprises a read failure (e.g., “RdFailed”) count.
- decision point 703 it is determined whether an instance of the data trend defined by the alert is identified.
- the process returns to step 702 and continues to access and/or monitor the real-time data.
- the process continues to block 704 which causes transmission (e.g., by the communication interface 360, CPU 320, and/or the like) of a notification indicative of the data trend.
- a notification indicative of the data trend.
- output data in the form of a notification is generated and transmitted to one or more devices.
- an extension request related to an addition or modification of a rule template e.g., a business rule
- block 801 generates (e.g., by the CPU 320 and/or the like), based on the extension request, at least one rule associated with one or more assets for the foundation application.
- FIG.8B and 8C show example electronic interfaces of a foundation application providing the ability for an end user to configure enterprise-level seeded templates for rules.
- a sub-interface 804B is displayed.
- the sub-interface 804B includes selectable icons representing seeded templates for business rules which have been previously defined and/or generated (e.g., “Existing Business Rules”).
- sub-interface 804B for several rules including a “Labor Deployment” rule template 805, an “Inventory Management” rule template 806, and a “Manage No-Reads” rule template 807.
- the sub-interface 804B also optionally includes a search bar 810 to locate icons for existing rule templates.
- the sub- interface 804B may include a large number of icons representing existing rule templates, such that a user enters the text “labor” in the search bar and the “Labor Deployment” rule template 805 (and/or other templates containing the term “labor”) is highlighted, displayed separate from other existing alert templates, and/or otherwise indicated to the user.
- the sub-interface 704B also optionally includes selectable options 811 and 812 for creating a custom business rule template or importing a template for a business rule.
- selectable options 811 and 812 for creating a custom business rule template or importing a template for a business rule.
- another sub-interface 804C is rendered, as shown in FIG.8C.
- sub-interface 804C comprises various UI elements for configuring, modifying and/or defining a business rule template, such as the “Manage No-Reads” alert template.
- a business rule for managing a particular alert is defined, as shown by the selection of the “Alert” button 820.
- rules for integrations, assets, and/or schedule-based rules may be configured and/or extended through selecting an associated button as shown.
- the sub-interface 804C provides for an end user to input conditional logic related to an existing rule. As shown, “Alert” provided to the “Input” selection box 821, and the “Alert.HighNoReads” alert (described above in connection FIG.7C) is selected as the particular alert for the business rule template in input box 822.
- an enterprise-level business rule template is configured such that at least one predefined action will be executed in an instance in which an alert is triggered (e.g., set to “TRUE”), such as, for example, in an instance in which a number of read failures meets or exceeds 50, as defined by the “Alert.HighNoReads” alert template.
- additional conditions can be set by selecting “AND” or “OR” buttons 825.
- Additional parameters for the business rule template may also be configured. For example, a predefined action for the business rule can be defined in input box 826.
- the predefined action comprises transmission of a notification (e.g., email, SMS text message, push notification) to one or more devices such that a system administrator, engineer, and/or the like is notified.
- a notification e.g., email, SMS text message, push notification
- Other examples of a predefined action include, but are not limited to, initiation of a workflow, a triggering of an actuation of one or more assets, and/or other actions.
- additional input boxes 827-830 are rendered such that the user can define fields of the email notification, such as a recipient in the “To” input box 827, a priority level (e.g., low, medium, high, etc.) defined in the “Priority” input box 828, a subject for the email notification defined in the “Subject” box 829, and/or a textual message for the email notification defined in the “Msg” input box 830.
- An alert type is defined in the “Alert Type” box 728.
- FIG.8D and 8E show example electronic interfaces of a foundation application providing the ability for an end user at a particular asset site to configure and/or instantiate asset site-specific templates based on the enterprise-level seeded templates for rules and thereby extend the foundation application for the particular asset site.
- a sub-interface 804D is rendered.
- the sub-interface 804D includes selectable seeded templates for rules which have been previously defined and/or generated (e.g., “existing business rules”).
- sub-interface 804D provides visibility for several seeded templates for rules including a “Labor Deployment” rule template 805, an “Inventory Management” rule template 806, and a “Manage No-Reads” rule template 807, as described above in connection with FIG.8B.
- the sub-interface 804D also optionally includes a search bar 810 to locate existing templates for rules.
- the sub-interface 804D also optionally includes selectable options 811 for creating a new rule template and 812 for configuring an existing template for a rule.
- selectable options 811 for creating a new rule template and 812 for configuring an existing template for a rule For example, upon selection of the “Manage No- Reads” rule template 807 (and optionally subsequent selection of “Configure” option 812), another sub-interface 804E is rendered, as shown in FIG.8E.
- sub-interface 804E comprises various UI elements for extending a rule template for a particular asset site, such as the “Manage No-Reads” rule template originally defined at enterprise-level (e.g., described above in connection with FIG.8C).
- a user can define an instance of the rule template for a particular asset site and configure the rule template for that particular instance.
- an example instance “Bengaluru.Wh1.*” is defined in instance box 850, which indicates that the alert is specific to a particular warehouse labeled “Wh1” located in Bengaluru, India.
- sub-interface 804E provides similar configuration options to sub-interface 804C of FIG.8C.
- a user can extend or modify the template for the rule specifically for the Bengaluru warehouse.
- the rule template is extended to incorporate the “High No Reads” alert specifically instantiated for the Bengaluru warehouse (“Blr.Wh1.Alert”) in instance input box 850A, which triggers a notification when no-reads meet or exceed 10.
- the user also modify additional parameters of the rule for the particular warehouse, such as additional email addresses to which the notification is sent, a different message for the notification, and/or other parameters.
- block 802 determines whether a condition associated with the at least one rule is met based on real-time data associated with the one or more assets associated with the rule.
- real-time data associated with the one or more assets can be accessed, in some embodiments, comprises real-time sensor data, time- series data, and/or other data related to the alert.
- the real-time data may comprise a triggering of an alert related to a read failure (e.g., “RdFailed”) count.
- RdFailed read failure
- decision point 803 it is determined whether the condition is determined to be met. For example, if the condition is determined to not be met, the process returns to step 802 and continues to access and/or monitor the real-time data to determine whether the condition is met.
- the process continues to block 804 which executes (e.g., by the communication interface 360, CPU 320, and/or the like) at least one predefined action associated with the at least one rule.
- a predefined action associated with the at least one rule is executed.
- the execution of the predefined action comprises generating and transmitting a notification to one or more devices.
- the execution of the predefined action comprises triggering an actuation of one or more assets.
- the actuation may comprise a temporary shutdown and/or restart of the sorter asset due to the “Alert.HighNoReads” alert being triggered.
- an actuation comprises a shutdown, restart, a powering on of the asset, and/or other actions.
- the execution of the predefined action comprises initializing one or more workflows.
- FIG.9A an example process 900 for generating a workflow based on an extension request is depicted.
- Block 901 generates (e.g., by the CPU 320 and/or the like) a workflow for the foundation application based on the extension request.
- FIG.9B and 9C show example electronic interfaces of a foundation application providing the ability for an end user to configure enterprise-level seeded templates for workflows.
- a sub-interface 904B in response to a user selection of the “Workflow” option under “Application Template” in the sidebar 602, a sub-interface 904B is displayed.
- the sub-interface 904B includes selectable icons representing seeded templates for workflows which have been previously defined and/or generated (e.g., “Existing Workflows”).
- sub-interface 904B includes icons for several templates for workflows including a “Update Set-Point” workflow template 905 and a “Automated Asset Maintenance” workflow template 906.
- the sub-interface 904B also optionally includes a search bar 910 to locate existing workflow templates.
- the sub- interface 904B may include a large number of icons for existing workflow templates, such that a user enters the text “update” in the search bar and the “Update Set-Point” workflow template 905 (and/or other templates, such as rule templates, containing the term “update”) is highlighted, displayed separate from other existing alert templates, and/or otherwise indicated to the user.
- the sub-interface 904B also optionally includes selectable option 911 for creating a custom workflow template and selectable option 912 for importing a template for a workflow.
- sub-interface 904C upon selection of the “Automated Asset Maintenance” workflow template 906, another sub-interface 904C is rendered, as shown in FIG.9C.
- sub-interface 904C comprises various UI elements for configuring, modifying and/or defining an enterprise-level workflow template, such as the “Automated Asset Maintenance” workflow template.
- a template for a workflow for automated asset maintenance is defined.
- a workflow comprises a series of events to be executed in order to handle one or more tasks. For example, upon a business rule being triggered, a workflow may be initialized and the series of events can then be carried out.
- the events of a workflow can include manual events (e.g., a notification of a system engineer and/or events that require human intervention), measurement events (e.g., a measurement of data related to one or more assets), actuation events (e.g., actuation of one or more assets), computation events (e.g., performing one or more computations related to asset data such as list creation, machine learning invocation, data transformation, and/or the like), reporting events (e.g., report generation), ticketing events (e.g., events related to external ticketing service integration), and/or other events.
- sub-interface 904C provides a drag-and-drop workflow configuration tool via event selection box 913.
- FIG.9D and 9E show example electronic interfaces providing the ability for an end user at a particular asset site to configure and/or instantiate asset site-specific workflow templates based on the enterprise-level seeded templates for workflows.
- a sub-interface 904D is rendered.
- the sub-interface 904D includes selectable seeded templates for workflows which have been previously defined and/or generated (e.g., “existing workflows”).
- sub- interface 704D provides visibility for the “Automated Asset Maintenance” workflow template 906 as described above in connection with FIG.9B.
- the sub-interface 904D also optionally includes a search bar 910 to locate existing templates for alerts.
- the sub-interface 904D also optionally includes selectable options 911 for creating a new workflow template and 912 for configuring an existing template for a workflow.
- another sub-interface 904E is rendered, as shown in FIG.9E.
- sub-interface 904E comprises various UI elements for extending a workflow template for a particular asset site, such as the “Automated Asset Maintenance” workflow template originally defined at enterprise-level (e.g., in FIG.9C).
- a user can define an instance of the workflow template for a particular asset site and configure the workflow template for that particular instance.
- an example instance “Bengaluru.Bld1.Zone2.*” is defined in instance box 950, which indicates that the workflow is specific to a particular zone (e.g., “Zone2”) in a particular building labeled “Bld1” located in Bengaluru, India.
- sub- interface 904E provides similar workflow configuration options to sub-interface 904C of FIG.9C.
- a user can extend or modify the template for the workflow specifically for the zone within the Bengaluru building.
- the “Notify Maintenance Engineer” manual step 951 is extended to include an email identifier 952 for the maintenance engineer(s) to be notified.
- the “Maintenance Test Signoff” manual step 953 is also extended to include an email identifier 954 for the responsible party to manually perform the step 953.
- the “Issue Service Tickets for Failed Assets” integration step 955 is extended to include reference to an external service integration 956 for performing the step 955.
- block 902 determines whether criteria associated with the workflow meets a predefined condition.
- criteria associated with the workflow comprises one or more business rules.
- determining whether criteria associated with the workflow meets a predefined condition may comprise determining whether a business rule associated with the workflow has been triggered.
- decision point 903 it is determined whether the condition is determined to be met. For example, if the criteria is determined to not meet the predefined condition, the process returns to step 902.
- the process continues to block 904 which executes (e.g., by the communication interface 360, CPU 320, and/or the like) one or more events of the workflow.
- the execution of one or more events comprises actuation of one or more assets of the plurality of assets, a data transformation associated with one or more assets of the plurality of assets, and/or another event as described above, based on the workflow.
- an extension request related to an onboarding of an asset is received.
- block 1001 identifies (e.g., by CPU 320, communication interface 360, and/or the like), in response to the extension request, real-time data associated with an asset.
- FIG.10B shows an example electronic interface providing the ability for an end user to identify and onboard one or more assets and/or data related to one or more assets at a particular asset site.
- a sub-interface 1004B is rendered in response to a user selection of the “Onboard Assets” option of sidebar portion 620A.
- sub-interface 1004B comprises an “Identify Assets” button 1010, which, upon selection, causes identification of real-time data associated with one or more assets at a particular asset site.
- real-time data that is identified may be rendered in a list format as shown in table 1012.
- table 1012 lists a plurality of rows, each associated with a particular identified asset 1020, 1021, 1022, and 1023.
- each row is expandable to display an additional table comprising plurality of data points associated with the asset.
- the row for asset 1020 is expanded to show table 1025, which lists a plurality of data points associated with a solar panel asset.
- the table 1025 comprises information related to the data points such as an indication of the name, role, description, unit label, and enumerated value of the data point.
- each row of the tables 1025 and/or 1012 are selectable and/or editable.
- a textual description of a data point may be added under the “Description” column for the data point(s) listed in table 1025, and names, locations, and/or other information of the assets and/or data points may be modified.
- a user can select “confirm” to complete an onboarding process of the asset.
- an template related to the asset is generated and/or instantiated for the foundation application of the particular asset site.
- block 1002 generates at least one asset template for the asset, with the at least one asset template defining one or more properties and one or more point roles for the asset.
- block 1003 provides an indication of the real-time data at the electronic interface of the foundation application. For example, upon completion of an onboarding of an asset, real-time data associated with various data points of the asset can be viewed and/or further processed at a dashboard and/or widget of dashboard visualization, further described below in connection with FIGs 13A-E. [00218] In some embodiments, an extension request related to a transformation of data associated with one or more assets is received.
- block 1101 identifies (e.g., by CPU 320, communication interface 360, and/or the like), receives an extension request, the extension request comprising an addition or modification to data associated with a selected template of the one or more templates.
- the extension request comprises data related to a transformation of data related to one or more assets.
- FIG.11B shows an example electronic interface providing the ability for an end user to configure enterprise-level seeded templates for data transformations.
- a sub-interface 1104B is rendered in response to a user selection of the “Data Transformation” option under “Data Processing” in the sidebar portion 602A.
- the sub-interface 1104B includes a data source selection box 1110, in which a user selects and/or enters a type of asset.
- the sub-interface 1104B further comprises a transformation table 1112 comprising a listing of attributes associated with the asset type entered into the data source selection box 1110.
- the transformation table 1112 comprises an “Attribute Name” column and a “Transformation” column.
- a type of transformation is selected under the “Transformation” column.
- Types of transformations can include, but are not limited to, an aggregation, a unit conversion, and/or an EOM tagging.
- the transformation table defines the type of transformations permitted to be applied to particular attributes of an asset.
- FIG.11C shows an example electronic interface providing the ability for an end user at a particular asset site to configure and/or instantiate asset site-specific data transformations based on the enterprise-level permissions for data transformations. For example, in response to selection of the “Data Configuration” option on the sidebar portion 602B, a sub-interface 1104C is rendered.
- the sub-interface 1104C includes a data source instance box 1120 into which a user enters or selects a particular data source, such as one or more assets at a particular location, asset site, and/or the like.
- sub-interface 1104C comprises type selection options 1121 from which the user can select “Asset” or “Integration” in order to apply transformation(s) to data associated with a particular asset or integration. As shown, instances of “sorter” assets for all asset sites in Bengaluru, India are selected.
- block 1102 applies a transformation on the data associated with the selected template based on the extension request.
- an indication of a result of the transformation is provided at the electronic interface of the foundation application.
- FIG.12A-C show example electronic interfaces providing the ability for an end user to configure enterprise- level seeded templates for integrations (e.g., external and/or third-party software integrations).
- integrations e.g., external and/or third-party software integrations.
- a sub-interface 1204A is rendered.
- the sub-interface 1204A includes selectable seeded templates for integrations which have been previously defined and/or generated (e.g., “existing integrations”).
- sub-interface 1204A for several example integrations including a “SAP” integration template 1205, a Warehouse Execution System (“WES”) integration template 1206, a Labor Management System (“LMS”) integration template 1207, and a Warehouse Management System (“WMS”) integration template 1208.
- the sub-interface 1204A also optionally includes a search bar 1210 to locate existing integration templates.
- the sub- interface 1204A may include a large number of existing integration templates, such that a user enters the text “sap” in the search bar and the “SAP” integration template 1205 (and/or other templates containing the term “sap”) is highlighted, displayed separate from other existing integration templates, and/or otherwise indicated to the user.
- the sub- interface 1204A also optionally includes selectable options 1211 and 1212 for creating a custom integration template or importing a template for an integration.
- selectable options 1211 and 1212 for creating a custom integration template or importing a template for an integration.
- another sub-interface 1204B is rendered, as shown in FIG.12B.
- sub-interface 1204B comprises various UI elements for configuring, modifying and/or defining an integration template, such as the “LMS” integration template.
- properties for a particular integration are defined, as shown integration properties table 1220.
- the sub-interface 1204B provides for an end user to input, edit, and/or define one or more properties of an integration.
- properties for an example external Labor Management System integration include a uniform resource locator(URL)/location property, a provider property, an Application Programming Interface (API) key property, and a protocol/interface property.
- each property may have an associated value.
- the value of the API key property may be an API key.
- each property is selectable and/or editable.
- a user may edit the name of the property or the value of one or more properties.
- multiple properties can be selected at once using selection boxes 622 on the sub-interface 1204B.
- sub-interface 1204C upon selection of the “Integration Endpoint” option 1230, a sub-interface 1204C is rendered, as shown in FIG.12C.
- sub-interface 1204C comprises a table 1235 comprising a plurality of point roles for various attributes of the integration.
- the LMS integration template comprises point role information for a “Units Processed” attribute (e.g., an integer representing a number of units processed), a “Department” attribute (e.g., a string value representing a department of labor), and a “Labor Type” attribute (e.g., an enumerated value representing a labor type of one of “permanent” or “temporary”).
- each point role is selectable and/or editable. For example, a user may edit the display name, attribute name, description, unit, and/or enumerated type of one or more of the point roles. In some embodiments, multiple properties can be selected at once using selection boxes 622 on the sub-interface 1204C.
- an extension request related to an onboarding and/or identification of an integration is received. For example, FIG.12D shows an example electronic interface providing the ability for an end user to identify and onboard one or more integrations and/or data related to one or more integrations for a particular asset site.
- a sub-interface 1204D in response to a user selection of the “Onboard Integration” option of sidebar portion 620A, a sub-interface 1204D is rendered. As shown, sub- interface 1204D comprises an “Identify Integrations” button 1250, which, upon selection, causes identification of one or more integrations (e.g., external and/or third-party cloud software integrations) for the foundation application.
- a foundation application is further extendable by way of an extension request related to an addition or modification of template for a dashboard visualization and/or one or more widgets.
- a dashboard visualization is a digital visualization that can be displayed at an electronic interface of the foundation application.
- the dashboard visualization comprises one or more widgets, or selectable visualizations related to the predefined core services associated with the foundation application.
- widgets of a dashboard visualization facilitate various operations associated with assets of an enterprise, such as for example, the viewing and/or monitoring of various insights related to a plurality of assets such as KPIs, data trends and/or the like, remotely controlling and/or actuating one or more assets, viewing business data such as asset portfolio performance metrics, and/or other operations.
- a domain-specific dashboard, along with domain- specific widgets can be generated and/or extended for a foundation application.
- FIG.13A shows an example electronic interface of a foundation application providing the ability for an end user to configure enterprise-level seeded templates for dashboard visualizations.
- a sub-interface 1304A in response to a user selection of the “Dashboard” option under “Application Template” in the sidebar portion 602A, a sub-interface 1304A is rendered.
- the sub-interface 1304A includes selectable seeded templates for dashboard visualizations which have been previously defined and/or generated (e.g., “existing dashboards”).
- sub-interface 1304A for several dashboard visualizations including a “Down Time” dashboard template 1305, an “Off Time” dashboard template 1306, and a “Efficiency Across Portfolio” dashboard template 1307.
- the sub-interface 1304A also optionally includes a search bar 1310 to locate existing dashboard templates.
- the sub-interface 904B also optionally includes selectable option 1311 for creating a custom dashboard template and selectable option 1312 for importing a template for a dashboard.
- FIG.13B-E show example electronic interfaces providing the ability for an end user at a particular asset site to configure and/or instantiate asset site-specific templates for widgets of a foundation application dashboard visualization based on the enterprise-level seeded templates for dashboard visualizations. For example, as shown in FIG.13B, in response to selection of the “Dashboard” option on the sidebar portion 602A, a sub-interface 1304B is rendered.
- the sub-interface 1304B includes selectable seeded templates for widgets which have been previously defined and/or generated (e.g., “existing widgets”). For example, as shown, sub-interface 1304B provides visibility for several widgets including a “Portfolio Performance” widget template 1305, and an “Asset Availability” widget template 1306 described above in connection with FIG.7B. [00231] As shown, the sub-interface 1304B also optionally includes a search bar 1310 to locate existing templates for widgets. The sub-interface 1304B also optionally includes selectable option 1313 for creating a new widget template, selectable option 1311 for configuring an existing widget template, and selectable option 1312 for importing a template for a widget.
- sub-interface 1304C upon selection of the selectable option 1313 for creating a new widget template, a sub-interface 1304C is rendered. As shown, sub-interface 1304C comprises several options for generating a new example widget template titled “User Comfort” for an “Occupant Experience” dashboard visualization. For example, a widget title, a widget size, and a widget type can be assigned to the new widget template via sub-interface 1304C. Upon selection of the “Add Widget” icon 1320, an additional new widget can be added to the “Occupant Experience” dashboard visualization.
- a sub-interface 1304D for extending the “User Comfort” widget is rendered, as shown in FIG.3D.
- sub-interface 1304D comprises additional options for configuring the “User Comfort” widget.
- the user comfort widget is configured to visualize various temperature data for a cafeteria of a campus via a graph visualization 1330.
- a user may add and/or modify data related to the graph visualization by adding labels and data sources associated with the labels.
- the data related to “outdoor temp” on the graph visualization 1330 is generated based on data source 1335, a current temperature from a Weather.com external integration.
- data related to “indoor humidity” on the graph visualization 1330 is generated based on data source 1336, a real-time current humidity data point from a stored point role for the cafeteria.
- other data sources may be used to add or extend the widget, for example, data associated with assets, external integrations, alerts, events, insights, output of one or more machine learning models, and/or the like.
- another sub-interface 1304E is rendered at the electronic interface of the foundation application, as shown in FIG.13E. As shown, sub-interface 1304E provides a dashboard canvas tool 1350.
- the dashboard canvas tool 1350 facilities the organization of widgets on the dashboard visualization in a drag-and-drop manner. For example, indications of one or more widgets for the dashboard visualization are presented on the dashboard canvas 1350. As shown, an indication of the user comfort widget 1355 generated above in connection with FIG.13D is shown.
- the widget 1355 are movable, selectable, and resizable. For example, a user may position the widget 1355 in various positions on the dashboard canvas by dragging the widget, resize the widget 1355 by dragging one or more sides of the widget 1355, and/or select the widget to return to sub-interface 1304D in order to further extend the widget 1355.
- any reference to claim elements in the singular, for example, using the articles “a,” “an” or “the” is not to be construed as limiting the element to the singular.
- ‘one or more’ includes a function being performed by one element, a function being performed by more than one element, e.g., in a distributed fashion, several functions being performed by one element, several functions being performed by several elements, or any combination of the above.
- ‘00238] Moreover, it will also be understood that, although the terms “first,” “second,” etc.
- the term “and/or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes,” “including,” “comprises,” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. [00240] As used herein, the term “if” is, optionally, construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context.
- the phrase “if it is determined” or “if [a stated condition or event] is detected” is, optionally, construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event]” or “in response to detecting [the stated condition or event],” depending on the context.
- Components and modules can be implemented in software, hardware, or a combination of software and hardware.
- software is used expansively to include not only executable code, for example machine-executable or machine-interpretable instructions, but also data structures, data stores and computing instructions stored in any suitable electronic format, including firmware, and embedded software.
- information and data are used expansively and includes a wide variety of electronic information, including executable code; content such as text, video data, and audio data, among others; and various codes or flags.
- the terms “information,” “data,” and “content” are sometimes used interchangeably when permitted by context. [00243]
- the term “comprising” means including but not limited to and should be interpreted in the manner it is typically used in the patent context.
- the hardware used to implement the various illustrative logics, logical blocks, modules, and circuits described in connection with the aspects disclosed herein can include a general purpose processor, a digital signal processor (DSP), a special-purpose processor such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA), a programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- a general-purpose processor can be a microprocessor, but, in the alternative, the processor can be any processor, controller, microcontroller, or state machine.
- a processor can also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Alternatively, or in addition, some steps or methods can be performed by circuitry that is specific to a given function. [00245] In one or more example embodiments, the functions described herein can be implemented by special-purpose hardware or a combination of hardware programmed by firmware or other software.
- the functions can be performed as a result of execution of one or more instructions stored on one or more non-transitory computer-readable media and/or one or more non- transitory processor-readable media.
- These instructions can be embodied by one or more processor-executable software modules that reside on the one or more non-transitory computer-readable or processor-readable storage media.
- Non-transitory computer- readable or processor-readable storage media can in this regard comprise any storage media that can be accessed by a computer or a processor.
- non-transitory computer-readable or processor-readable media can include random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), FLASH memory, disk storage, magnetic storage devices, or the like.
- Disk storage includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray discTM, or other storage devices that store data magnetically or optically with lasers. Combinations of the above types of media are also included within the scope of the terms non-transitory computer-readable and processor-readable media.
- any combination of instructions stored on the one or more non-transitory processor-readable or computer- readable media can be referred to herein as a computer program product.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Divers modes de réalisation décrits dans la présente description se rapportent à des applications de fondation comprenant une infrastructure qui peut être étendue pour fournir une application spécifique au domaine. À cet égard, une application de fondation comprenant une pluralité de services de base prédéfinis est générée. Une demande d'extension est reçue qui comprend un ajout ou une modification de données associées à un gabarit sélectionné. En réponse à la demande d'extension, des données de sortie sont déterminées sur la base de l'ajout ou de la modification des données associées au gabarit sélectionné. Une visualisation comprenant une indication des données de sortie est fournie au niveau d'une interface électronique de l'application de fondation.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163185074P | 2021-05-06 | 2021-05-06 | |
US63/185,074 | 2021-05-06 | ||
US17/662,131 US20220358434A1 (en) | 2021-05-06 | 2022-05-05 | Foundation applications as an accelerator providing well defined extensibility and collection of seeded templates for enhanced user experience and quicker turnaround |
US17/662,131 | 2022-05-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022236323A1 true WO2022236323A1 (fr) | 2022-11-10 |
Family
ID=82067452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2022/072174 WO2022236323A1 (fr) | 2021-05-06 | 2022-05-06 | Applications de fondation en tant qu'accélérateur fournissant une extensibilité bien définie et une collecte de gabarits de départ pour améliorer l'expérience utilisateur et accélérer les délais d'exécution. |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2022236323A1 (fr) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190265971A1 (en) * | 2015-01-23 | 2019-08-29 | C3 Iot, Inc. | Systems and Methods for IoT Data Processing and Enterprise Applications |
EP3798776A1 (fr) * | 2019-09-30 | 2021-03-31 | Rockwell Automation Technologies, Inc. | Contextualisation progressive et analyse de données industrielles |
-
2022
- 2022-05-06 WO PCT/US2022/072174 patent/WO2022236323A1/fr active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190265971A1 (en) * | 2015-01-23 | 2019-08-29 | C3 Iot, Inc. | Systems and Methods for IoT Data Processing and Enterprise Applications |
EP3798776A1 (fr) * | 2019-09-30 | 2021-03-31 | Rockwell Automation Technologies, Inc. | Contextualisation progressive et analyse de données industrielles |
Non-Patent Citations (1)
Title |
---|
ANONYMOUS: "Workflow pattern - Wikipedia", 18 January 2021 (2021-01-18), pages 1 - 6, XP055947951, Retrieved from the Internet <URL:https://en.wikipedia.org/w/index.php?title=Workflow_pattern&oldid=1001164690> [retrieved on 20220802] * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220121965A1 (en) | Extensible object model and graphical user interface enabling modeling | |
US20230062849A1 (en) | Automated asset strategy selection for an asset via cloud-based supervisory control | |
US20230196135A1 (en) | Artificial intelligence system for integrity operating window optimization | |
US20220398665A1 (en) | Dashboard visualization for a portfolio of assets | |
US20230237404A1 (en) | Performance metric assurance for asset management | |
US20220309079A1 (en) | Remote monitoring and management of assets from a portfolio of assets | |
US20220374402A1 (en) | Contextualized time series database and/or multi-tenant server system deployment | |
EP4184871A1 (fr) | Visualisations en temps réel de données de cyber-risques pour hiérarchies à base d'actifs | |
US20220358434A1 (en) | Foundation applications as an accelerator providing well defined extensibility and collection of seeded templates for enhanced user experience and quicker turnaround | |
US20230408985A1 (en) | Apparatus and method for calculating asset capability using model predictive control and/or industrial process optimization | |
US20230055641A1 (en) | Real-time generation of digital twins based on input data captured by user device | |
US12079781B2 (en) | Remote monitoring and management of assets from a portfolio of assets based on an asset model | |
WO2022236323A1 (fr) | Applications de fondation en tant qu'accélérateur fournissant une extensibilité bien définie et une collecte de gabarits de départ pour améliorer l'expérience utilisateur et accélérer les délais d'exécution. | |
US20230222135A1 (en) | Method and search system with metadata driven application programming interface (api) | |
US12117196B2 (en) | Asset behavior modeling | |
US20240004514A1 (en) | Systems and methods for modifying an object model | |
US20230214096A1 (en) | Systems and methods for navigating a graphical user interface | |
US20240013455A1 (en) | Systems and methods for constructing and presenting a spatial model | |
US20240118680A1 (en) | Data modeling and digital asset template generation to provide asset instance inheritance for assets within an industrial environment | |
US20230044522A1 (en) | Apparatus and method for managing industrial process optimization related to batch operations | |
WO2023028153A2 (fr) | Génération de point de consigne automatisée pour un actif par l'intermédiaire d'une commande de supervision en nuage | |
WO2022204703A1 (fr) | Surveillance et gestion à distance d'actifs à partir d'un portefeuille d'actifs sur la base d'un modèle d'actif | |
JP2023100588A (ja) | グラフィカルユーザインターフェースをナビゲートするためのシステム及び方法 | |
WO2022261665A1 (fr) | Visualisation de tableau de bord pour un portefeuille d'actifs | |
WO2023023042A1 (fr) | Génération en temps réel de jumeaux numériques sur la base de données d'entrée capturées par un dispositif utilisateur |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22731029 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22731029 Country of ref document: EP Kind code of ref document: A1 |