WW HMI SCADA-07
Wonderware Best Practices
Part 1-InTouch
Brian Martin & Jeff Tapia
Wonderware Technical Sales Consultants
Invensys Operations Management
Brian.Martin@Invensys.com
Jeff.Tapia@Invensys.com
© 2012 Invensys. All Rights Reserved. The names, logos, and taglines identifying the products and services of Invensys are proprietary marks of
Invensys or its subsidiaries. All third party trademarks and service marks are the proprietary marks of their respective owners.
Agenda
• InTouch Architectures
• Managed Applications
• Designing for today & tomorrow
• Conclusions
Slide 2
Why Different Architectures?
Networks change over time
Processes changes over time
Needs change over time
Industrial Control systems have communications limits
• (Pay Attention! This is the dirty little secret!)
Windows has communications limits
• (But not too much anymore! Pay Attention to Data Provider limits)
Slide 3
Architectures
Stand-alone
Client Based
File Server Based
Database Server/Client (Master/Slave)
Database Server/Client (Three Tier Remote Tag
Reference)
NAD (Network Application Development)
• NAD is an Application Distribution Architecture!
Slide 4
Design Considerations
Number of IO Devices (PLCs, RTUs, DCSs, etc.)
Number of Servers and Location
Number of View Nodes and Location
Physical/Logical LAN/WAN Network Architecture
Redundancy
Change Control
You should be thinking about System Platform
Slide 5
Stand-Alone Architecture
Stand-alone
–KISS (Keep It Simple, Stupid)
Dev/RT/IO
I/O Server
Process
Slide 6
Client/Server - PLC Network
Client Based - PLC Server, PLC Network
• Also KISS.
• Inherently Redundant
• Requires Multi-Master/Peer-Peer PLC Network
• Application Distribution?
• Can overwhelm proprietary PLC networks
• But more importantly, THE INDIVIDUAL PLC!
– Even on Ethernet!
This is the #1 cause of slow performance!!!
Dev/RT&I/O Server RT&I/O Server RT&I/O Server RT&I/O Server
Process
Process
Process
Process
Slide 7
DH+, MB+, etc.
Client Server PLC/Ethernet
Client Based - PLC Server/Hybrid Network
• Maximizes PLC Throughput
• Also KISS. Good to 50 (200-v7) IO conversations.
PLC’s, 4-8 Nodes) (The Small Model)
(5-10
• Supports HBU
RT
RT&I/O Server
Process
RT&I/O Server
RT
Ethernet
Slide 8
RT
Modem
Client/Server - File Server (Obsolete)
File Server Based
• KISS- Good to 50 (200-v7) IO conversations. (5-10 PLC’s, 4-8
Nodes) (Small Model)
• A change on the server is seen everywhere
• Client apps use server’s hard drive
• App Development Restricted
• Does Not Support HBU
• All nodes must have same resolution.
• Retentive Tags?
• Many Terminal Services Apps inadvertently use this model – DON’T!
DEV/RT/IO
File Server
Process
Slide 9
View Only RT
Ethernet
View Only RT
Client/Server Master/Slave
Server/Client (Master/Slave)(Pre 7.0)
• For LARGE Networks (20+ PLC’s or 15+ nodes) (Large Model)
• Can be more complex in Distribution (Two Separate App’s)
• Slave Access - Application=View, Topic=Tagname
• Can support HBU
• Thick Client
Dev/RT/IO
Database Server(s)
RT
RT
RT
Process
Ethernet
Slide 10
RT
RT
RT
Factory
Focus
Three Tier Client/Server
Remote Tag Reference (RTR)
• For REALLY BIG Networks (20+ PLC’s or 15-100’s+ nodes) (Large
Model)
• Simple to implement
• Many Network Distribution Options
• Can support HBU
• Supports Thick/Thinner/Thin Clients
Dev/RT/IO
Database Server(s)
RT
RT
RT
Process
Ethernet
Slide 11
RT
RT
RT
Factory
Focus
Remote Tag Reference
Three Tier Architecture
Simplified Development for Large Systems
Can have Windows Only Nodes (Tag-less app)
A Client Node can be promoted to Server Node
Single Application for all Nodes!
• Only the Server Nodes get IO data
Use GetNodeName() function for additional node
specific customization
Can easily migrate to Industrial Application Server!
Slide 12
Three Tier Architecture Services
I/O Server Service
Tag Database Server Service
– Client to the IO Server Service
Tag Client Service
• Remote Reference Tags
– Local Tags on Windows/Scripts
– Are not part of Tag Database
– Can have tag database-less Nodes
– X-Ref’d in InTouch WindowMaker
– Reduced Network Load
The Services may or may not run on the same PC !
– Developer’s Choice
Slide 13
Three Tier Redundancy
Server
Slide 14
Client/Backup
Client
IO Server
IO Server
Tag Server
Tag Server
Tag Server
Window/Script
Window/Script
Window/Script
Three Tier Redundancy
Server
Slide 15
Client/Backup
Client
IO Server
IO Server
Tag Server
Tag Server
Tag Server
Window
Window
Window
Three Tier Redundancy
Server
Slide 16
Client/Backup
Client
IO Server
IO Server
Tag Server
Tag Server
Tag Server
Window
Window
Window
Remote Tag Reference
Window/Script Usage
• AccessName:TagName
– Example: Server1:FI1033, Galaxy:TIC3071.SP
• Usage is identical to a normal tag, it just looks different
Can use Tag Browser to browse and automatically insert Remote
Reference Tags!
• InTouch, InControl, Industrial Application Server etc.
Slide 17
Indirect Remote Tag Reference
Indirect Usage - Three Constructs
– IndirectTag.Name = “AccessName:TagName”;
• Explicit Reference using String type
– IndirectTag.Name = “AccessName:”+ TagName.Name OR
– IndirectTag.Name =AccessName:TagName.Name;
• - Allows usage of local Tag Dictionary/Makes Tag Substitution a snap
– AccessName:IndirectTag.Name = “AccessName:”+ TagName.Name;
- Uses the Indirect tag on the Server node!
- Clients can step on each other!
• Note the different syntax in Indirect RTR vs an Animation link
– Indirect naming uses strings!
– The reference is not instantaneous, esp. on a remote node!
Slide 18
Converting an Existing App to RTR
Two methods:
• Select all tags in window or script and Index all tags. Then convert to
Remote
• Import windows and scripts. Then convert to Remote
Attention must be paid to Indirect Tags due to their unique function!
• Decide where the Indirect needs to be invoked; Locally or Remotely
• Understand the effect of invoking an indirect RTR on the Tag Server!
Slide 19
Converting an Existing App to RTR
2
3
4
1
Slide 20
Preferred Topology
Isolate Industrial Networks from Office Networks
• Isolate via Routers, Switches, Dual NICs
Office Networks have large “blobs” of data packets
irregular in time and are not time critical
Industrial Networks have small packets very regular
in time, and are time critical!
You WILL have problems if you mix the two data
types!!! (only a question of when)
Slide 21
Agenda
• InTouch Architectures
• Managed Applications
• Designing for today & tomorrow
• Conclusions
Slide 22
How Architectures Have Evolved
Pre-Historic
• DEV on all PCs (license change)
• Sneaker Net
Historic
• Development Copying
• File Server
Present Day
• Network Application Development (NAD)
• File Server
• Central Development
Slide 23
Existing
Applications
InTouch 2012
Standalone
Applications
InTouch 2012
Published
Applications
Slide 24
InTouch 2012
IDE Managed
Applications
HMI Application Management
►Central Management - Galaxy
►Check in, Check out
►Template, Propagation
►Standardization, Multi User
►Reduce Total Cost
Engineering Efficiency
►ArchestrA Graphics
►Smart & Intelligent
►Built-in Diagnostics & Status
►Runtime & Dev. Features
Universal Platform
►Platform for Collaborative Apps
►Advanced Applications
►Rich Extensibility
►Standard Form Factor
Slide 25
Development
WindowMaker\IDE
(Derry)
Galaxy
Repository
(Derry)
Slide 26
InTouch Client
Water
(Antrim)
InTouch Client
Reactor
(Deering)
InTouch Client
MagTape
(Seabrook)
InTouch Client
Reactor\HVAC
(Epping)
Prior To This Session
Created Galaxy
Created and Deployed Platforms For View Clients
Created and Deployed ViewEngines For View Clients
Slide 27
The Rest
Import Applications
Derive Instances of InTouch Applications
Convert Smart Symbol to ArchestrA Graphic
Replace Graphic in Application
Look at Check-In \ Check-Out Capability
Look at Versioning and Comments
Publishing an Application
Export Application
Slide 28
Our Applications
Slide 29
Tools and Deployment
Slide 30
ArchestrA IDE
Slide 31
Agenda
• InTouch Architectures
• Managed Applications
• Designing for today & tomorrow
• Conclusions
Slide 32
Developing for today and tomorrow
Demonstration using InTouch in today’s development environment…
Let’s do more!
Slide 33
ArchestrA Graphics in InTouch
• Avoid Assembling ArchestrA Graphics in the InTouch Window
• Create an ArchestrA Graphics Toolset For InTouch “Windows”
• For Each InTouch Window Create an ArchestrA Symbol For It
– Assemble the Graphics in the Symbol for the Window
– It is now reusable across InTouch Applications and WIS
– You will be Better Prepared for the ArchestrA Window Object
• Object Graphics must be Assembled in an Object
– Candidate Objects for this organization
– Area Objects
– View Engine Objects
• Once Laid out the InTouch app does not need to be opened in WindowMaker
• InTouch View Application Instances
• Provide a DI Gateway to the InTouch Tag Dictionary
• InTouch: is the Relative name from ArchestrA Graphics
• Galaxy: is the Relative name from InTouch
Slide 34
Element Grouping
When using the Grouping mechanism in graphics there is an
optimization done for groups with no animation. The group is
handled as an image.
The Tank on the right opens
in half the time with half the
static CPU load of the tank
on the right.
Retrieve
Slide 35
S
Render
Bind
Continuous
Close
Agenda
• InTouch Architectures
• Managed Applications
• Designing for today & tomorrow
• Conclusions
Slide 36
Using System Platform - Introduction
Typical AppServer Projects are Hybrid
• InTouch is the Front End
Existing InTouch Apps can provide Galaxy Data via
an InTouch Proxy Object
InTouch View
Platform
IDE A²
Development
Workstation
Automation
Object Server
Automation
Object Server
WW
Historian
Slide 37
Galaxy
Repository
Tag Server
vs.
App Server
Remote Tag References
Remote Tag References
Client-Server
Client-Server or Peer-to Peer
Multiple namespaces
Single Namespace
Event-based
Scan-based
Limited to 60K Tags (I/O and 1MM I/O + Memory/Calc
Memory)
attributes
Slide 38
No feedback writes
Confirmed writes
Display links have no comm
status built-in
Links can have comm status
(.#VString)
Per-server admin
Central admin via IDE
Designing Easy to Migrate Applications
InTouch Client
InTouch Client
Classic InTouch
Application
Windows
InTouch Client
Windows
Windows
InTouch Application
Visualization Tags
Visualization Tags
Windows
Single node InTouch Application
Separation
of Tags and scripts.
Visualization Tags
Visualization
Scripts
Visualization Scripts
Tag Server
Architecture
Tags
Visualization Scripts
Windows
InTouch Client
InTouch Client
Platform
Platform
Windows
Windows
Visualization TagsScripts
InTouch Client
Platform
Windows
IAS Architecture – Natural Evolution
Visualization Tags
Target
Architecture?
Visualization
TagsScripts
Visualization
Visualization Tags
AppServer
AppServerVisualization
Visualization Scripts
Scripts
Visualization Scripts
Common
Tags
ApplicationObjects
Supervisory Scripts
DI Objects
NewNew
ApplicationObjects
DI Objects
AppEngine
Tag Server
Common Tags
Platform
Supervisory Scripts
Slide 39
AppEngine
Platform
IO Server
Tagname Dictionary
• InTouch tag name dictionary is a flat namespace.
• Industrial Application Server namespace is hierarchical, based
on plant model.
Slide 40
Tagname Dictionary
Structure, Structure, Structure…
Strict adherence to a naming convention that is hierarchical.
Example:
Critical
Information
Bldg32_
Intake_
FCV1834OLS
GALAXY:Bldg32.Intake.FCV1834.OLS
Area
Sub-Area
Device Unique Attribute
Type Identifier Identifier
This convention is an example. Implement the
one that best suits your project.
Slide 41
Migration
Existing Units
Workstation
Workstation
New Units
Workstation
Galaxy Repository
Industrial
Application
Previously
Server
Slide 42
Tags versus ApplicationObjects
What are the key differences?
Tags
Scripts
Wonderware
InTouch
Slide 43
History
ArchestrA
System
Platform
Take Advantage IAS
Reduce Lifecycle Cost of Ownership
• Standards
• Architectural Freedom
• Scalability
• High Availability
• Security
• Software Management
Provide Real-time and Historical Plant Intelligence
Basis for Future Production System Requirements
Wonderware platform for now and the future
Slide 44
Migration Strategies
Migrate Entire System
Migrate Systems Area by Area
• You do not need to migrate the old system all at once
• IAS can run with InTouch and other legacy systems
• Exchange information with these systems
Use ArchestrA on new Plant Areas and Migrate old Areas Later
Slide 45
Bulk Import Utility
Want to move to Industrial Application Server (IAS) ……. But are
heavily invested with InTouch applications …. Or Intellution or GE or
Rockwell or Siemens or ….. ????
Introducing the Bulk Import Utility
•
•
•
•
Slide 46
reads InTouch tag database
or other CSV output from existing apps
or XML output from existing apps
easily creates Object templates and
instances for import into IAS
Create Hierarchical Namespace from
Flat Tag names
Run Import
Tag Wizard
Filter
resulting
Mapped tags
to create
objects
Connect &
Download
Templates
from Galaxy
Create New
Project
Validate and
Upload New
Objects and
Instances to
Galaxy
Slide 47
Mappings from Import Tag Wizard
Mapping for InTouch is provided.
BIU can import other CSV files from all the major
HMI and PLC vendors.
• Mappings to be provided separately by application engineers.
BIU can also read most well formed XML which is
used in many Enterprise applications!
Slide 48
Modify InTouch App
Replace Tags with Galaxy References
Access names to I/O Servers are dropped
Review Scripting
• Remove scripts that are now handled in Objects
Point Alarm View Objects to ArchestrA
Point Historical Trend to Historian
In most cases the InTouch Application becomes
simpler
Slide 49
Related sessions
See sessions:
• WW TSS 03 ArchestrA Graphics: Designs Guidelines for Top
Performance
{and thank them for some content}
• WW HMI SCADA 08 - Best Practices Part 2 – System Platform
• WW HMI SCADA 09 - Best Practices Part 3 – Historian
• WW HMI SCADA 10 - Best Practices Part 4 – Wonderware
Remote Access
Slide 50
Thank You
Slide 51
Session Description
In this session we will discuss design considerations to achieve the
best performance from your Wonderware ArchestrA Graphics. Topics
include but not limited to: Performance considerations, Best
Practices, common mistakes and Optimization.
Duration: 90 Minutes
Slide 52