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