This Implementation Table provides details on a variety of methods that could be used when working towards building dashboards.
For Calculations
A number of key areas should be considered when deciding which calculation method should be selected.
Method | Scale Limit | Responsibility for Scaling | Possible Complexity | Ease of Replication | Experience Required | IP Protection | Effort to create single dashboard | Effort to create many dashboards |
---|---|---|---|---|---|---|---|---|
Templated Script Tags | ASC Server | Intelligent Plant | Low (Orchestrated) | Upload Instances (Easy) | Basic Configuration (Select Tags) | Tags can be seen by client admin, new instances can be created by admin | Low | Low (import) |
Custom Script Tags | ASC Server & Code Efficiency | Developer | Low (Orchestrated) | Developer Responsible | Basic Code (Scripting) | Code can be seen and copied/modified by admin | Low | High (Up To Developer) |
Custom Script Tags With DLL | ASC Server & Code Efficiency | Developer | Low (Orchestrated) | Developer Responsible | Medium Code (Compilation/Linking) | DLL code can be obfuscated but decompilation possible. | Low | High (Up To Developer) |
Jupyter Hub | Bandwidth & Capacity Of Server Instance | Developer | Medium (Manually Run) | Developer Responsible | Basic Python | Scripts are stored on intelligent plant server - could be accessed by someone if they broke contract. | Medium | High (Up To Developer) |
App Implementation (Ext. Host) | Bandwidth & Server Host & Code Efficiency | Developer | High (Fully Open) | Developer Responsible | Advanced Coding | No one else can possibly see how your app does something, but they could attempt to replicate results through reverse engineering | Depends On App | Depends On App |
App Implementation (Local Install) | Server Host & Code Efficiency | Developer | High (Fully Open) | Developer Responsible | Advanced Coding | A local install would mean anyone with access to the client host could decompile or attempt to reuse code. | Depends On App | Depends On App |
Power Automate | Bandwidth & Azure Limits On Data, Executions Etc.. | Developer | Very Low (Orchestrated, Restricted) | Developer Responsible | Drag And Drop | Depends on sharing level | Low |
Through Intelligent Plant’s application – Facit, it is possible to create and configure script tags that perform calculations with your data. There are two ways of creating these script tags:
Intelligent Plant’s Facit has pre-made script tags available to users. These can perform a variety of calculations already. It is just a matter of configuring the templates with your data. Key features of Templated Script Tags in Facit:
A clear disadvantage of using templated script tags is that if the calculation you require is not performed by any of the templated script tags available, then an alternative method would need to be used.
If you need or wish to create a custom script tag, this can also be done on Facit. Although the coding experience required to create custom script tags would likely be minimal, the time to make multiple script tags would be considerably longer than with templated script tags. The key features of Custom Script Tags in Facit:
The effort required to create many script tags will be significantly higher than by using templated script tags, and the efficiency of the code can significantly impact scaling.
Jupyter Hub brings the power of notebooks to groups of users. It gives users access to computational environments and resources without burdening the users with installation and maintenance tasks. Users - including students, researchers, and data scientists - can get their work done in their own workspaces on shared resources which can be managed efficiently by system administrators. Jupyter Hub runs in the Industrial App Store, and makes it possible to serve a pre-configured data science environment to any user in the world. It is customizable and scalable, and is suitable for small and large teams, academic courses, and large-scale infrastructure. Key features of JupyterHub in the Industrial App Store:
Creating a custom application to perform your calculations would ultimately provide total freedom on the calculations you wish to create. This could be pushed to an external host or kept as a local install, depending on what is preferred. Key features of creating your own application:
Significant resources may be required to produce an in-house application, which may delay completion of the product.
Power Automate is an online tool within the Microsoft 365 applications and add-ins, used for the creation of automated workflows between apps and services to synchronise files, get notifications, and collect data.
Intelligent Plant’s Industrial Automator for Power BI enables interaction with all the different historian data through a unified API.
enables Microsoft’s powerful analytics and visualisations to be applied to real time and historical process data. Thus achieving seamless integration of plant and corporate data that can be shared with any colleague on any device, enabling faster, better, real-time decision making.
Key features of Power Automate:
For Displays
Method | Shareable with Users | Real-time Updates | Embeddable | User Configurable |
---|---|---|---|---|
PnID | Yes | Yes | Yes | Yes |
Power BI | Yes | No | No | Yes |
Trend | Yes | Yes | Yes | Yes |
Jupyter Hub | No, this must be run by the developer, but when it works then it could be used as start of app | No | No(Developer Only) | No |
New App | Developer Responsible | Developer Responsible | Developer Responsible | Developer Responsible |
For Storage
Storage of Data | Write-ability |
---|---|
Client Historian | Unlikely |
IP Hist | Yes |
Alarm Analysis | Yes |