SlideShare a Scribd company logo
Moderator
Kent Melville
Sales Engineering Manager
Inductive Automation
About Inductive Automation
About Inductive Automation
• Founded in 2003
• Leader in HMI, SCADA, MES & IIoT software
• Used by 56% of Fortune 100 companies
• Over 2,700 integrators have joined our
Integrator Program
• Based in California, with international
distributors around the world
Learn more at: inductiveautomation.com/about
Ignition: The Industrial
Application Platform
• Unlimited licensing model
• Cross-platform compatibility
• Based on IT-standard technologies
• Scalable server-client architecture
• Web-managed
• Launch on desktop or mobile
• Modular configurability
• Rapid development and deployment
One Universal Platform for HMI, SCADA, MES & IIoT:
One Universal Platform for HMI/SCADA, MES & IIoT:
• Unlimited licensing model
• Cross-platform compatibility
• Based on IT-standard technologies
• Scalable server-client architecture
• Web-based & web-managed
• Web-deployed designer & clients
• Modular configurability
• Rapid development & deployment
Ignition: Industrial Application Platform
Presenters
Dereck Saunders
Senior Application Design Engineer
Inductive Automation
Mara Pillott
Senior Application Design Engineer
Inductive Automation
Today’s Agenda
• Introduction
• Recognize Common Mistakes
• Visualization
• Alarms
• Security
• Conclusion and Q&A
On our last webinar, we covered:
● Data collection & logging
● HMI design
● Scripting
Previous webinar:
https://inductiveautomation.com/resources/webinar/
common-project-mistakes-and-how-to-avoid-them
Last Time on ‘Common Project Mistakes’
Ignition is so easy to use that sometimes developers
try to “brute force” their way to finding a solution.
Ignition is designed to:
● Build assets
● Repeatedly use and/or modify them
Recognize Common Mistakes
Visualization
Mistake: Unnecessarily rebuilding assets
Building the same assets over again, either in the same
project or in another one.
Visualization
Mistake: Unnecessarily rebuilding assets
Every piece of equipment or area does not require its
own dedicated screen or view.
Visualization
Solution: Parameterization & Indirect Tag Binding
Parameters can be added to views and leveraged inside of
bindings on the view to make the view dynamic.
Benefits:
● Reduce amount of project resources that need to be
managed.
● Reduce initial development time.
● Reduce time, effort & cost of future changes.
Visualization
Solution: Implementing View Parameters & Indirect Tag
Bindings
Adding view parameters to a view and utilizing them inside bindings and
scripts on the view is a simple way to create dynamic, reusable visualization.
Visualization
Solution: Reusable visualization - Repeaters
Repeater components, like the Flex Repeater, let you create multiple instances with the same look, feel
and functionality.
Visualization
Mistake: Poorly Planned Transforms
When working with a transform, always
start with the end result in mind.
In this example, we jump into binding the
dropdown options to a named query.
This approach will not give you usable
options.
The example dropdown shows us a list of
states when we wanted a list of site
names.
How do we get the options we want?
Visualization
Solution: Plan the Transform
Define Instance Structure First.
• Start with a standard component.
• Get to know the component structure.
• Copy instance to your favorite text editor.
In the dropdown example, we can see that a standard
dropdown has an array of options. Each option has a value
and label.
{
"value": "",
"label": ""
}
Visualization
Solution: Build Transform Based On Plan Here is a basic example for a script transform that will
return a list of options from results such as a named
query.
Step 1: Define empty list of options.
Step 2: Loop over records returned by query.
Step 3: Build the instance. Use the copied structure from
the standard component.
Step 4: Add the new instance to the list.
Step 5: Return the options.
Visualization
Mistake: Missing Property Changes in Transforms
Text value is bound to state property.
Both state and mode are used in the
transform.
Changes on state property will update
the text value.
Changes on mode property are
ignored.
We need to monitor property changes
on both state and mode.
Visualization
Solution: Use Expression Structure
Text value is bound to an expression
structure using both state and mode.
Changes on state or mode
property updates the text value.
Visualization
Mistake: Overlaid Components for Styling
Tedious Approach:
• Create one custom component for each state.
• Toggle visibility based on state
• Overlay the components in a coordinate container.
❌ Not Reusable:
Each component is custom configured.
The colors and other styling are not reusable elsewhere.
❌ Not Maintainable:
New states require new components.
❌ Not Mobile-Responsive:
The colors and other styling are not reusable elsewhere.
Visualization
Solution: Use Style Classes
Best Practice Approach:
Create a style class for each status.
✓ Reusable:
These classes can now be used anywhere in
the project.
✓ Maintainable:
Style changes are now made in only one place
and apply everywhere in the project.
✓ Mobile-Responsive:
Flex containers may be used when components
are not overlaid.
Visualization
Solution: Map Style Class Using a Transform
Reusable and Maintainable Solution:
• Create only one component.
• Define style classes
• Bind the style to a property.
• Use a transform to map each state to a style.
Updates to style class will apply to all
components using the class.
Formatting changes will only need to be made
on the one component. No need to copy-paste
changes.
Visualization
Mistake: Overwriting Themes
Themes
• Provide initial styling
• Overwritten by styles
• CSS-based
• Inheritable
Customizing
• Advanced feature
• CSS knowledge required
• Study the README
Do Not Overwrite Built-In Themes
Changes made to the built-in theme files
will be replaced on Gateway start-up
Visualization
Solution: Inherit from Base Themes
Start With Built-In Themes:
• The base theme is the light theme
• All themes extend from the base theme
• Other themes are derived from the base theme
• Use any derivative theme as an example
• Adapt a built-in theme or create a custom theme
Visualization
Solution: Adapt a Built-In Theme
• Add your own CSS file in a custom directory
• Import Custom File In Entry File
• Place custom import after other imports
• Use double quotes around file names
• Add semicolon at the end of each line
Backup your themes files!
@import "./light/index.css";
@import "./custom/overrides.css";
Visualization
Solution: Custom Themes
• Start with built-in theme as an example
• Create your own entry file in themes directory
• Build your CSS
• Select your theme in the Session Properties
• Backup your files
Visualization
Shortcut: ALT + left click
Instead of double-clicking to deep select and drill down
to nested containers or components, using ALT + left
click allows you to immediately select through to the
“deepest” component or container that the mouse cursor
is hovering over.
Keyboard Shortcuts:
https://docs.inductiveautomation.com/display/DOC81/Ke
yboard+Shortcuts
Select Through:
https://docs.inductiveautomation.com/display/DOC81/W
orking+with+Perspective+Components#WorkingwithPer
spectiveComponents-DeepSelection
Recap
Visualization Mistakes:
● Rebuilding assets
● Poorly planned transforms
● Missing property changes
● Overlaid components for styling
● Overwriting themes
Solutions:
➔ Dynamic visualization
➔ Plan with end result in mind
➔ Expression structures
➔ Map transforms to style class
➔ Custom themes
Alarms
Alarms are instrumental in preventing
downtime but a poor alarm setup
greatly diminishes how useful they are.
Alarms should never be ignored.
Alarms
Mistake: Not Prioritizing Alarms
Not prioritizing alarms will leave all
configured alarms at the default Low
priority.
Alarms
Solution:
Prioritize alarms
Use priority levels to differentiate
between the severity of alarms.
5 levels:
● Diagnostic
● Low
● Medium
● High
● Critical
Alarms
Mistake: Not setting the display path for alarms
Not setting the display path to a meaningful value will instead
simply display the path of the tag that the alarm is configured on.
Alarms
Solution: Set the alarm’s display path
Recap
Alarm Mistakes:
● Not Prioritizing Alarms
● Not Setting the Display Path for
Alarms
Solutions:
➔ Prioritize Alarms
➔ Set the Alarm’s Display Path
Security
Mistake:
• No security
• Everyone in admin role
• Everyone shares admin login
Solution:
• Implement security measures
• Separate users by roles
Ignition was designed with security in mind.
Set security on both Gateway and Projects.
Security
Mistake:
No security
Solution:
Role-based security on the
Gateway
Protects most critical areas:
Designer and Gateway
Security
Mistake:
No security
Solution:
Set project level security in Project
Properties
Security
Mistake:
No security on project
components.
Solution:
Establish security based on
roles.
• Assign user roles.
• Restrict access based on roles.
Security
Mistake:
Security only on visualization
Solution:
Security on tags
Export tags to bulk modify
Security
Mistake:
Not encrypting all data.
Solution:
Use HTTP (SSL).
Security
Mistake: Not utilizing centralized user
source for Enterprise solutions.
Solution:
Establish an active directory/SSO (IdP)
Add an extra layer of protection with 2-
factor authentication.
Ignition Security Hardening Guide: https://inductiveautomation.com/resources/article/ignition-
security-hardening-guide
Security
Mistake: No Gateway Backups
Single Gateway Solution:
● Gateway Auto Backup
Enterprise Solution:
● Collect Backup Agent Task
Recap
Security Mistakes:
● No security
● Uniform security clearance
● Security only on visualization
● Unencrypted HTTP
● No centralized user source
● No backups
Solutions:
➔ Implement security measures
➔ Assign user-based security
➔ Add security on Tags
➔ Use SSL
➔ Active directory/SSO
➔ Automated backups
Conclusion
We all make mistakes no matter how
much experience we have.
Fortunately, Ignition gives you the
tools to not only fix those mistakes, but
turn them into strengths.
Ignition provides many ways to make
your projects more organized, efficient,
stylish, and secure.
International Distributors
Australia iControls Pty Ltd. www.icontrols.com.au
Brazil FG Automação Industrial www.fgltda.com.br
Central America NV Tecnologías S.A. www.nvtecnologias.com
France AXONE-iO www.axone-io.com
Italy EFA Automazione S.p.A www.efa.it
Norway Autic System AS www.autic.no
South Africa Element8 https://element8.co.za/
Switzerland MPI Technologies https://mpi.ch/
Contact International Distribution Manager Annie Wise at: awise@inductiveautomation.com
Common Project Mistakes: Visualization, Alarms, and Security
Common Project Mistakes: Visualization, Alarms, and Security

More Related Content

What's hot

Fixing SCADA: How Ignition Reduces Frustration
Fixing SCADA: How Ignition Reduces FrustrationFixing SCADA: How Ignition Reduces Frustration
Fixing SCADA: How Ignition Reduces Frustration
Inductive Automation
 
De-Risk Your Digital Transformation — And Reduce Time, Cost & Complexity
De-Risk Your Digital Transformation — And Reduce Time, Cost & ComplexityDe-Risk Your Digital Transformation — And Reduce Time, Cost & Complexity
De-Risk Your Digital Transformation — And Reduce Time, Cost & Complexity
Inductive Automation
 
Solving Data Problems to Accelerate Digital Transformation.pptx
Solving Data Problems to Accelerate Digital Transformation.pptxSolving Data Problems to Accelerate Digital Transformation.pptx
Solving Data Problems to Accelerate Digital Transformation.pptx
Inductive Automation
 
Design Like a Pro: Machine Learning Basics
Design Like a Pro: Machine Learning BasicsDesign Like a Pro: Machine Learning Basics
Design Like a Pro: Machine Learning Basics
Inductive Automation
 
Design Like a Pro: Building Mobile-Responsive HMIs in Ignition Perspective
Design Like a Pro: Building Mobile-Responsive HMIs in Ignition PerspectiveDesign Like a Pro: Building Mobile-Responsive HMIs in Ignition Perspective
Design Like a Pro: Building Mobile-Responsive HMIs in Ignition Perspective
Inductive Automation
 
Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016
Inductive Automation
 
Tupperware: Containerized Deployment at FB
Tupperware: Containerized Deployment at FBTupperware: Containerized Deployment at FB
Tupperware: Containerized Deployment at FBDocker, Inc.
 
Why Kubernetes on Azure
Why Kubernetes on AzureWhy Kubernetes on Azure
Why Kubernetes on Azure
Microsoft Tech Community
 
OpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdfOpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdf
ssuser1490e8
 
OpenShift Overview
OpenShift OverviewOpenShift Overview
OpenShift Overview
roundman
 
Migrating On-Premises Workloads with Azure Migrate
Migrating On-Premises Workloads with Azure MigrateMigrating On-Premises Workloads with Azure Migrate
Migrating On-Premises Workloads with Azure Migrate
Dinusha Kumarasiri
 
Design Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best PracticesDesign Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best Practices
Inductive Automation
 
CAF presentation 09 16-2020
CAF presentation 09 16-2020CAF presentation 09 16-2020
CAF presentation 09 16-2020
Michael Nichols
 
X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors
X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors
X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors
Rebekah Rodriguez
 
Cloud Migration Checklist | Microsoft Azure Migration
Cloud Migration Checklist | Microsoft Azure MigrationCloud Migration Checklist | Microsoft Azure Migration
Cloud Migration Checklist | Microsoft Azure Migration
Intellika
 
Azure Application Modernization
Azure Application ModernizationAzure Application Modernization
Azure Application Modernization
Karina Matos
 
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesKubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
SlideTeam
 
Cloud migration
Cloud migrationCloud migration
Cloud migration
Lucas Girardin
 
Cloud Architecture in the Data Center
Cloud Architecture in the Data CenterCloud Architecture in the Data Center
Cloud Architecture in the Data Center
InterVision Systems
 
Azure Arc by K.Narisorn // Azure Multi-Cloud
Azure Arc by K.Narisorn // Azure Multi-CloudAzure Arc by K.Narisorn // Azure Multi-Cloud
Azure Arc by K.Narisorn // Azure Multi-Cloud
Kumton Suttiraksiri
 

What's hot (20)

Fixing SCADA: How Ignition Reduces Frustration
Fixing SCADA: How Ignition Reduces FrustrationFixing SCADA: How Ignition Reduces Frustration
Fixing SCADA: How Ignition Reduces Frustration
 
De-Risk Your Digital Transformation — And Reduce Time, Cost & Complexity
De-Risk Your Digital Transformation — And Reduce Time, Cost & ComplexityDe-Risk Your Digital Transformation — And Reduce Time, Cost & Complexity
De-Risk Your Digital Transformation — And Reduce Time, Cost & Complexity
 
Solving Data Problems to Accelerate Digital Transformation.pptx
Solving Data Problems to Accelerate Digital Transformation.pptxSolving Data Problems to Accelerate Digital Transformation.pptx
Solving Data Problems to Accelerate Digital Transformation.pptx
 
Design Like a Pro: Machine Learning Basics
Design Like a Pro: Machine Learning BasicsDesign Like a Pro: Machine Learning Basics
Design Like a Pro: Machine Learning Basics
 
Design Like a Pro: Building Mobile-Responsive HMIs in Ignition Perspective
Design Like a Pro: Building Mobile-Responsive HMIs in Ignition PerspectiveDesign Like a Pro: Building Mobile-Responsive HMIs in Ignition Perspective
Design Like a Pro: Building Mobile-Responsive HMIs in Ignition Perspective
 
Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016
 
Tupperware: Containerized Deployment at FB
Tupperware: Containerized Deployment at FBTupperware: Containerized Deployment at FB
Tupperware: Containerized Deployment at FB
 
Why Kubernetes on Azure
Why Kubernetes on AzureWhy Kubernetes on Azure
Why Kubernetes on Azure
 
OpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdfOpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdf
 
OpenShift Overview
OpenShift OverviewOpenShift Overview
OpenShift Overview
 
Migrating On-Premises Workloads with Azure Migrate
Migrating On-Premises Workloads with Azure MigrateMigrating On-Premises Workloads with Azure Migrate
Migrating On-Premises Workloads with Azure Migrate
 
Design Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best PracticesDesign Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best Practices
 
CAF presentation 09 16-2020
CAF presentation 09 16-2020CAF presentation 09 16-2020
CAF presentation 09 16-2020
 
X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors
X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors
X13 Pre-Release Update featuring 4th Gen Intel® Xeon® Scalable Processors
 
Cloud Migration Checklist | Microsoft Azure Migration
Cloud Migration Checklist | Microsoft Azure MigrationCloud Migration Checklist | Microsoft Azure Migration
Cloud Migration Checklist | Microsoft Azure Migration
 
Azure Application Modernization
Azure Application ModernizationAzure Application Modernization
Azure Application Modernization
 
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesKubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
 
Cloud migration
Cloud migrationCloud migration
Cloud migration
 
Cloud Architecture in the Data Center
Cloud Architecture in the Data CenterCloud Architecture in the Data Center
Cloud Architecture in the Data Center
 
Azure Arc by K.Narisorn // Azure Multi-Cloud
Azure Arc by K.Narisorn // Azure Multi-CloudAzure Arc by K.Narisorn // Azure Multi-Cloud
Azure Arc by K.Narisorn // Azure Multi-Cloud
 

Similar to Common Project Mistakes: Visualization, Alarms, and Security

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
DNN-Connect 2019: DNN Horror Stories
DNN-Connect 2019: DNN Horror StoriesDNN-Connect 2019: DNN Horror Stories
DNN-Connect 2019: DNN Horror Stories
Will Strohl
 
How to Develop Highly Customizable Off-the-Shelf Software (Aleksey Stukalov)
How to Develop Highly Customizable Off-the-Shelf Software  (Aleksey Stukalov)How to Develop Highly Customizable Off-the-Shelf Software  (Aleksey Stukalov)
How to Develop Highly Customizable Off-the-Shelf Software (Aleksey Stukalov)
Юрий Артамонов
 
Benefits of using software design patterns and when to use design pattern
Benefits of using software design patterns and when to use design patternBenefits of using software design patterns and when to use design pattern
Benefits of using software design patterns and when to use design pattern
Beroza Paul
 
Component based development | what, why and how
Component based development | what, why and howComponent based development | what, why and how
Component based development | what, why and how
Rakesh Kumar Jha
 
Introduction to computer programming.pdf
Introduction to computer programming.pdfIntroduction to computer programming.pdf
Introduction to computer programming.pdf
HasankaNayanjith
 
Developer Night - Opticon18
Developer Night - Opticon18Developer Night - Opticon18
Developer Night - Opticon18
Optimizely
 
Software process models
Software process modelsSoftware process models
Software process models
Malik WaQas
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
Adam Getchell
 
Design p atterns
Design p atternsDesign p atterns
Design p atterns
Amr Abd El Latief
 
Inline Template Puppet Type
Inline Template Puppet TypeInline Template Puppet Type
Inline Template Puppet Type
Lyndon Swan
 
How to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power UserHow to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power User
Strongback Consulting
 
An Introduction To Software Development - Implementation
An Introduction To Software Development - ImplementationAn Introduction To Software Development - Implementation
An Introduction To Software Development - Implementation
Blue Elephant Consulting
 
Building iOS App Project & Architecture
Building iOS App Project & ArchitectureBuilding iOS App Project & Architecture
Building iOS App Project & Architecture
Massimo Oliviero
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
Gert Drapers
 
Enter the mind of an Agile Developer
Enter the mind of an Agile DeveloperEnter the mind of an Agile Developer
Enter the mind of an Agile Developer
BSGAfrica
 
A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5
SSW
 
Selena Deckelmann - Sane Schema Management with Alembic and SQLAlchemy @ Pos...
Selena Deckelmann - Sane Schema Management with  Alembic and SQLAlchemy @ Pos...Selena Deckelmann - Sane Schema Management with  Alembic and SQLAlchemy @ Pos...
Selena Deckelmann - Sane Schema Management with Alembic and SQLAlchemy @ Pos...PostgresOpen
 
Developing Custom WordPress Themes for Clients
Developing Custom WordPress Themes for ClientsDeveloping Custom WordPress Themes for Clients
Developing Custom WordPress Themes for Clients
Steven Slack
 

Similar to Common Project Mistakes: Visualization, Alarms, and Security (20)

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
DNN-Connect 2019: DNN Horror Stories
DNN-Connect 2019: DNN Horror StoriesDNN-Connect 2019: DNN Horror Stories
DNN-Connect 2019: DNN Horror Stories
 
How to Develop Highly Customizable Off-the-Shelf Software (Aleksey Stukalov)
How to Develop Highly Customizable Off-the-Shelf Software  (Aleksey Stukalov)How to Develop Highly Customizable Off-the-Shelf Software  (Aleksey Stukalov)
How to Develop Highly Customizable Off-the-Shelf Software (Aleksey Stukalov)
 
Benefits of using software design patterns and when to use design pattern
Benefits of using software design patterns and when to use design patternBenefits of using software design patterns and when to use design pattern
Benefits of using software design patterns and when to use design pattern
 
Component based development | what, why and how
Component based development | what, why and howComponent based development | what, why and how
Component based development | what, why and how
 
Introduction to computer programming.pdf
Introduction to computer programming.pdfIntroduction to computer programming.pdf
Introduction to computer programming.pdf
 
Developer Night - Opticon18
Developer Night - Opticon18Developer Night - Opticon18
Developer Night - Opticon18
 
Software process models
Software process modelsSoftware process models
Software process models
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
 
Design p atterns
Design p atternsDesign p atterns
Design p atterns
 
Inline Template Puppet Type
Inline Template Puppet TypeInline Template Puppet Type
Inline Template Puppet Type
 
How to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power UserHow to become a Rational Developer for IBM i Power User
How to become a Rational Developer for IBM i Power User
 
An Introduction To Software Development - Implementation
An Introduction To Software Development - ImplementationAn Introduction To Software Development - Implementation
An Introduction To Software Development - Implementation
 
Building iOS App Project & Architecture
Building iOS App Project & ArchitectureBuilding iOS App Project & Architecture
Building iOS App Project & Architecture
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
 
Coding
CodingCoding
Coding
 
Enter the mind of an Agile Developer
Enter the mind of an Agile DeveloperEnter the mind of an Agile Developer
Enter the mind of an Agile Developer
 
A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5
 
Selena Deckelmann - Sane Schema Management with Alembic and SQLAlchemy @ Pos...
Selena Deckelmann - Sane Schema Management with  Alembic and SQLAlchemy @ Pos...Selena Deckelmann - Sane Schema Management with  Alembic and SQLAlchemy @ Pos...
Selena Deckelmann - Sane Schema Management with Alembic and SQLAlchemy @ Pos...
 
Developing Custom WordPress Themes for Clients
Developing Custom WordPress Themes for ClientsDeveloping Custom WordPress Themes for Clients
Developing Custom WordPress Themes for Clients
 

More from Inductive Automation

Overcoming Digital Transformation Pain Points
Overcoming Digital Transformation Pain PointsOvercoming Digital Transformation Pain Points
Overcoming Digital Transformation Pain Points
Inductive Automation
 
How Ignition Eases SCADA Pain Points
How Ignition Eases SCADA Pain PointsHow Ignition Eases SCADA Pain Points
How Ignition Eases SCADA Pain Points
Inductive Automation
 
Security Best Practices for Your Ignition System
Security Best Practices for Your Ignition SystemSecurity Best Practices for Your Ignition System
Security Best Practices for Your Ignition System
Inductive Automation
 
Turn Any Panel PC Into an Ignition HMI
Turn Any Panel PC Into an Ignition HMITurn Any Panel PC Into an Ignition HMI
Turn Any Panel PC Into an Ignition HMI
Inductive Automation
 
Bringing Digital Transformation Into Focus
Bringing Digital Transformation Into FocusBringing Digital Transformation Into Focus
Bringing Digital Transformation Into Focus
Inductive Automation
 
Integrators Explore the Road Ahead
Integrators Explore the Road AheadIntegrators Explore the Road Ahead
Integrators Explore the Road Ahead
Inductive Automation
 
Top 10 Design & Security Tips to Elevate Your SCADA System
Top 10 Design & Security Tips to Elevate Your SCADA SystemTop 10 Design & Security Tips to Elevate Your SCADA System
Top 10 Design & Security Tips to Elevate Your SCADA System
Inductive Automation
 
Common Project Mistakes (And How to Avoid Them)
Common Project Mistakes (And How to Avoid Them)Common Project Mistakes (And How to Avoid Them)
Common Project Mistakes (And How to Avoid Them)
Inductive Automation
 
First Steps to DevOps
First Steps to DevOpsFirst Steps to DevOps
First Steps to DevOps
Inductive Automation
 
The Evolution of Industrial Visualization
The Evolution of Industrial VisualizationThe Evolution of Industrial Visualization
The Evolution of Industrial Visualization
Inductive Automation
 
Unlocking Greater Efficiency: The Why and How of OEE Implementation
Unlocking Greater Efficiency: The Why and How of OEE ImplementationUnlocking Greater Efficiency: The Why and How of OEE Implementation
Unlocking Greater Efficiency: The Why and How of OEE Implementation
Inductive Automation
 
Leveraging Ignition Quick Start to Rapidly Build Real Projects
Leveraging Ignition Quick Start to Rapidly Build Real ProjectsLeveraging Ignition Quick Start to Rapidly Build Real Projects
Leveraging Ignition Quick Start to Rapidly Build Real Projects
Inductive Automation
 
Design Like a Pro: Developing & Deploying Perspective Applications as HMIs
Design Like a Pro: Developing & Deploying Perspective Applications as HMIsDesign Like a Pro: Developing & Deploying Perspective Applications as HMIs
Design Like a Pro: Developing & Deploying Perspective Applications as HMIs
Inductive Automation
 
Integrator Discussion: Leading Through Innovation During COVID-19 and Beyond
Integrator Discussion: Leading Through Innovation During COVID-19 and BeyondIntegrator Discussion: Leading Through Innovation During COVID-19 and Beyond
Integrator Discussion: Leading Through Innovation During COVID-19 and Beyond
Inductive Automation
 
Ignition Community Live with Carl Gould & Colby Clegg
Ignition Community Live with Carl Gould & Colby CleggIgnition Community Live with Carl Gould & Colby Clegg
Ignition Community Live with Carl Gould & Colby Clegg
Inductive Automation
 
Design Like a Pro: How to Best Plan Your Perspective Project
Design Like a Pro: How to Best Plan Your Perspective ProjectDesign Like a Pro: How to Best Plan Your Perspective Project
Design Like a Pro: How to Best Plan Your Perspective Project
Inductive Automation
 
Securely Monitor Critical Systems From Anywhere
Securely Monitor Critical Systems From AnywhereSecurely Monitor Critical Systems From Anywhere
Securely Monitor Critical Systems From Anywhere
Inductive Automation
 
Leveraging Ignition for Smart Manufacturing and Digital Transformation
Leveraging Ignition for Smart Manufacturing and Digital TransformationLeveraging Ignition for Smart Manufacturing and Digital Transformation
Leveraging Ignition for Smart Manufacturing and Digital Transformation
Inductive Automation
 
Demystifying SAP Connectivity to Ignition
Demystifying SAP Connectivity to IgnitionDemystifying SAP Connectivity to Ignition
Demystifying SAP Connectivity to Ignition
Inductive Automation
 
Pushing the Boundaries of Data Visualization
Pushing the Boundaries of Data VisualizationPushing the Boundaries of Data Visualization
Pushing the Boundaries of Data Visualization
Inductive Automation
 

More from Inductive Automation (20)

Overcoming Digital Transformation Pain Points
Overcoming Digital Transformation Pain PointsOvercoming Digital Transformation Pain Points
Overcoming Digital Transformation Pain Points
 
How Ignition Eases SCADA Pain Points
How Ignition Eases SCADA Pain PointsHow Ignition Eases SCADA Pain Points
How Ignition Eases SCADA Pain Points
 
Security Best Practices for Your Ignition System
Security Best Practices for Your Ignition SystemSecurity Best Practices for Your Ignition System
Security Best Practices for Your Ignition System
 
Turn Any Panel PC Into an Ignition HMI
Turn Any Panel PC Into an Ignition HMITurn Any Panel PC Into an Ignition HMI
Turn Any Panel PC Into an Ignition HMI
 
Bringing Digital Transformation Into Focus
Bringing Digital Transformation Into FocusBringing Digital Transformation Into Focus
Bringing Digital Transformation Into Focus
 
Integrators Explore the Road Ahead
Integrators Explore the Road AheadIntegrators Explore the Road Ahead
Integrators Explore the Road Ahead
 
Top 10 Design & Security Tips to Elevate Your SCADA System
Top 10 Design & Security Tips to Elevate Your SCADA SystemTop 10 Design & Security Tips to Elevate Your SCADA System
Top 10 Design & Security Tips to Elevate Your SCADA System
 
Common Project Mistakes (And How to Avoid Them)
Common Project Mistakes (And How to Avoid Them)Common Project Mistakes (And How to Avoid Them)
Common Project Mistakes (And How to Avoid Them)
 
First Steps to DevOps
First Steps to DevOpsFirst Steps to DevOps
First Steps to DevOps
 
The Evolution of Industrial Visualization
The Evolution of Industrial VisualizationThe Evolution of Industrial Visualization
The Evolution of Industrial Visualization
 
Unlocking Greater Efficiency: The Why and How of OEE Implementation
Unlocking Greater Efficiency: The Why and How of OEE ImplementationUnlocking Greater Efficiency: The Why and How of OEE Implementation
Unlocking Greater Efficiency: The Why and How of OEE Implementation
 
Leveraging Ignition Quick Start to Rapidly Build Real Projects
Leveraging Ignition Quick Start to Rapidly Build Real ProjectsLeveraging Ignition Quick Start to Rapidly Build Real Projects
Leveraging Ignition Quick Start to Rapidly Build Real Projects
 
Design Like a Pro: Developing & Deploying Perspective Applications as HMIs
Design Like a Pro: Developing & Deploying Perspective Applications as HMIsDesign Like a Pro: Developing & Deploying Perspective Applications as HMIs
Design Like a Pro: Developing & Deploying Perspective Applications as HMIs
 
Integrator Discussion: Leading Through Innovation During COVID-19 and Beyond
Integrator Discussion: Leading Through Innovation During COVID-19 and BeyondIntegrator Discussion: Leading Through Innovation During COVID-19 and Beyond
Integrator Discussion: Leading Through Innovation During COVID-19 and Beyond
 
Ignition Community Live with Carl Gould & Colby Clegg
Ignition Community Live with Carl Gould & Colby CleggIgnition Community Live with Carl Gould & Colby Clegg
Ignition Community Live with Carl Gould & Colby Clegg
 
Design Like a Pro: How to Best Plan Your Perspective Project
Design Like a Pro: How to Best Plan Your Perspective ProjectDesign Like a Pro: How to Best Plan Your Perspective Project
Design Like a Pro: How to Best Plan Your Perspective Project
 
Securely Monitor Critical Systems From Anywhere
Securely Monitor Critical Systems From AnywhereSecurely Monitor Critical Systems From Anywhere
Securely Monitor Critical Systems From Anywhere
 
Leveraging Ignition for Smart Manufacturing and Digital Transformation
Leveraging Ignition for Smart Manufacturing and Digital TransformationLeveraging Ignition for Smart Manufacturing and Digital Transformation
Leveraging Ignition for Smart Manufacturing and Digital Transformation
 
Demystifying SAP Connectivity to Ignition
Demystifying SAP Connectivity to IgnitionDemystifying SAP Connectivity to Ignition
Demystifying SAP Connectivity to Ignition
 
Pushing the Boundaries of Data Visualization
Pushing the Boundaries of Data VisualizationPushing the Boundaries of Data Visualization
Pushing the Boundaries of Data Visualization
 

Recently uploaded

Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
abdulrafaychaudhry
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 

Recently uploaded (20)

Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 

Common Project Mistakes: Visualization, Alarms, and Security

  • 1.
  • 2. Moderator Kent Melville Sales Engineering Manager Inductive Automation
  • 3. About Inductive Automation About Inductive Automation • Founded in 2003 • Leader in HMI, SCADA, MES & IIoT software • Used by 56% of Fortune 100 companies • Over 2,700 integrators have joined our Integrator Program • Based in California, with international distributors around the world Learn more at: inductiveautomation.com/about
  • 4. Ignition: The Industrial Application Platform • Unlimited licensing model • Cross-platform compatibility • Based on IT-standard technologies • Scalable server-client architecture • Web-managed • Launch on desktop or mobile • Modular configurability • Rapid development and deployment One Universal Platform for HMI, SCADA, MES & IIoT: One Universal Platform for HMI/SCADA, MES & IIoT: • Unlimited licensing model • Cross-platform compatibility • Based on IT-standard technologies • Scalable server-client architecture • Web-based & web-managed • Web-deployed designer & clients • Modular configurability • Rapid development & deployment Ignition: Industrial Application Platform
  • 5. Presenters Dereck Saunders Senior Application Design Engineer Inductive Automation Mara Pillott Senior Application Design Engineer Inductive Automation
  • 6. Today’s Agenda • Introduction • Recognize Common Mistakes • Visualization • Alarms • Security • Conclusion and Q&A
  • 7. On our last webinar, we covered: ● Data collection & logging ● HMI design ● Scripting Previous webinar: https://inductiveautomation.com/resources/webinar/ common-project-mistakes-and-how-to-avoid-them Last Time on ‘Common Project Mistakes’
  • 8. Ignition is so easy to use that sometimes developers try to “brute force” their way to finding a solution. Ignition is designed to: ● Build assets ● Repeatedly use and/or modify them Recognize Common Mistakes
  • 9. Visualization Mistake: Unnecessarily rebuilding assets Building the same assets over again, either in the same project or in another one.
  • 10. Visualization Mistake: Unnecessarily rebuilding assets Every piece of equipment or area does not require its own dedicated screen or view.
  • 11. Visualization Solution: Parameterization & Indirect Tag Binding Parameters can be added to views and leveraged inside of bindings on the view to make the view dynamic. Benefits: ● Reduce amount of project resources that need to be managed. ● Reduce initial development time. ● Reduce time, effort & cost of future changes.
  • 12. Visualization Solution: Implementing View Parameters & Indirect Tag Bindings Adding view parameters to a view and utilizing them inside bindings and scripts on the view is a simple way to create dynamic, reusable visualization.
  • 13. Visualization Solution: Reusable visualization - Repeaters Repeater components, like the Flex Repeater, let you create multiple instances with the same look, feel and functionality.
  • 14. Visualization Mistake: Poorly Planned Transforms When working with a transform, always start with the end result in mind. In this example, we jump into binding the dropdown options to a named query. This approach will not give you usable options. The example dropdown shows us a list of states when we wanted a list of site names. How do we get the options we want?
  • 15. Visualization Solution: Plan the Transform Define Instance Structure First. • Start with a standard component. • Get to know the component structure. • Copy instance to your favorite text editor. In the dropdown example, we can see that a standard dropdown has an array of options. Each option has a value and label. { "value": "", "label": "" }
  • 16. Visualization Solution: Build Transform Based On Plan Here is a basic example for a script transform that will return a list of options from results such as a named query. Step 1: Define empty list of options. Step 2: Loop over records returned by query. Step 3: Build the instance. Use the copied structure from the standard component. Step 4: Add the new instance to the list. Step 5: Return the options.
  • 17. Visualization Mistake: Missing Property Changes in Transforms Text value is bound to state property. Both state and mode are used in the transform. Changes on state property will update the text value. Changes on mode property are ignored. We need to monitor property changes on both state and mode.
  • 18. Visualization Solution: Use Expression Structure Text value is bound to an expression structure using both state and mode. Changes on state or mode property updates the text value.
  • 19. Visualization Mistake: Overlaid Components for Styling Tedious Approach: • Create one custom component for each state. • Toggle visibility based on state • Overlay the components in a coordinate container. ❌ Not Reusable: Each component is custom configured. The colors and other styling are not reusable elsewhere. ❌ Not Maintainable: New states require new components. ❌ Not Mobile-Responsive: The colors and other styling are not reusable elsewhere.
  • 20. Visualization Solution: Use Style Classes Best Practice Approach: Create a style class for each status. ✓ Reusable: These classes can now be used anywhere in the project. ✓ Maintainable: Style changes are now made in only one place and apply everywhere in the project. ✓ Mobile-Responsive: Flex containers may be used when components are not overlaid.
  • 21. Visualization Solution: Map Style Class Using a Transform Reusable and Maintainable Solution: • Create only one component. • Define style classes • Bind the style to a property. • Use a transform to map each state to a style. Updates to style class will apply to all components using the class. Formatting changes will only need to be made on the one component. No need to copy-paste changes.
  • 22. Visualization Mistake: Overwriting Themes Themes • Provide initial styling • Overwritten by styles • CSS-based • Inheritable Customizing • Advanced feature • CSS knowledge required • Study the README Do Not Overwrite Built-In Themes Changes made to the built-in theme files will be replaced on Gateway start-up
  • 23. Visualization Solution: Inherit from Base Themes Start With Built-In Themes: • The base theme is the light theme • All themes extend from the base theme • Other themes are derived from the base theme • Use any derivative theme as an example • Adapt a built-in theme or create a custom theme
  • 24. Visualization Solution: Adapt a Built-In Theme • Add your own CSS file in a custom directory • Import Custom File In Entry File • Place custom import after other imports • Use double quotes around file names • Add semicolon at the end of each line Backup your themes files! @import "./light/index.css"; @import "./custom/overrides.css";
  • 25. Visualization Solution: Custom Themes • Start with built-in theme as an example • Create your own entry file in themes directory • Build your CSS • Select your theme in the Session Properties • Backup your files
  • 26. Visualization Shortcut: ALT + left click Instead of double-clicking to deep select and drill down to nested containers or components, using ALT + left click allows you to immediately select through to the “deepest” component or container that the mouse cursor is hovering over. Keyboard Shortcuts: https://docs.inductiveautomation.com/display/DOC81/Ke yboard+Shortcuts Select Through: https://docs.inductiveautomation.com/display/DOC81/W orking+with+Perspective+Components#WorkingwithPer spectiveComponents-DeepSelection
  • 27. Recap Visualization Mistakes: ● Rebuilding assets ● Poorly planned transforms ● Missing property changes ● Overlaid components for styling ● Overwriting themes Solutions: ➔ Dynamic visualization ➔ Plan with end result in mind ➔ Expression structures ➔ Map transforms to style class ➔ Custom themes
  • 28. Alarms Alarms are instrumental in preventing downtime but a poor alarm setup greatly diminishes how useful they are. Alarms should never be ignored.
  • 29. Alarms Mistake: Not Prioritizing Alarms Not prioritizing alarms will leave all configured alarms at the default Low priority.
  • 30. Alarms Solution: Prioritize alarms Use priority levels to differentiate between the severity of alarms. 5 levels: ● Diagnostic ● Low ● Medium ● High ● Critical
  • 31. Alarms Mistake: Not setting the display path for alarms Not setting the display path to a meaningful value will instead simply display the path of the tag that the alarm is configured on.
  • 32. Alarms Solution: Set the alarm’s display path
  • 33. Recap Alarm Mistakes: ● Not Prioritizing Alarms ● Not Setting the Display Path for Alarms Solutions: ➔ Prioritize Alarms ➔ Set the Alarm’s Display Path
  • 34. Security Mistake: • No security • Everyone in admin role • Everyone shares admin login Solution: • Implement security measures • Separate users by roles Ignition was designed with security in mind. Set security on both Gateway and Projects.
  • 35. Security Mistake: No security Solution: Role-based security on the Gateway Protects most critical areas: Designer and Gateway
  • 36. Security Mistake: No security Solution: Set project level security in Project Properties
  • 37. Security Mistake: No security on project components. Solution: Establish security based on roles. • Assign user roles. • Restrict access based on roles.
  • 38. Security Mistake: Security only on visualization Solution: Security on tags Export tags to bulk modify
  • 39. Security Mistake: Not encrypting all data. Solution: Use HTTP (SSL).
  • 40. Security Mistake: Not utilizing centralized user source for Enterprise solutions. Solution: Establish an active directory/SSO (IdP) Add an extra layer of protection with 2- factor authentication. Ignition Security Hardening Guide: https://inductiveautomation.com/resources/article/ignition- security-hardening-guide
  • 41. Security Mistake: No Gateway Backups Single Gateway Solution: ● Gateway Auto Backup Enterprise Solution: ● Collect Backup Agent Task
  • 42. Recap Security Mistakes: ● No security ● Uniform security clearance ● Security only on visualization ● Unencrypted HTTP ● No centralized user source ● No backups Solutions: ➔ Implement security measures ➔ Assign user-based security ➔ Add security on Tags ➔ Use SSL ➔ Active directory/SSO ➔ Automated backups
  • 43. Conclusion We all make mistakes no matter how much experience we have. Fortunately, Ignition gives you the tools to not only fix those mistakes, but turn them into strengths. Ignition provides many ways to make your projects more organized, efficient, stylish, and secure.
  • 44.
  • 45.
  • 46. International Distributors Australia iControls Pty Ltd. www.icontrols.com.au Brazil FG Automação Industrial www.fgltda.com.br Central America NV Tecnologías S.A. www.nvtecnologias.com France AXONE-iO www.axone-io.com Italy EFA Automazione S.p.A www.efa.it Norway Autic System AS www.autic.no South Africa Element8 https://element8.co.za/ Switzerland MPI Technologies https://mpi.ch/ Contact International Distribution Manager Annie Wise at: awise@inductiveautomation.com