iconics worldwide customer summit – september 2006 genesis32 for power users r. arnost, b. delong,...

63
ICONICS Worldwide Customer Summit – September 2006 GENESIS32 for Power Users R. Arnost, B. DeLong, U. Huenichen, A. Scherpenzeel , R. van der Tas, A. Tupaj

Upload: clifford-chambers

Post on 28-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

ICONICS Worldwide Customer Summit – September 2006

GENESIS32 for Power UsersGENESIS32 for Power UsersR. Arnost, B. DeLong, U. Huenichen, A. Scherpenzeel , R. van der Tas, A. Tupaj

2

HMI-40 AgendaHMI-40 Agenda

IntroductionConfiguration DatabasesGENESIS32 Data Mining FacilitiesUnified Data ManagerScriptWorX2006Custom Command ServersAliases – Language, Global, Local, etc.Recipe handling with Unified Data ManagerMonitorWorX & Unified Data Browser

3

Configuration DatabasesConfiguration Databases

Historically configuration stored in Access• Alarm Server, Logger, Trend Data Logger,

etc.New generation products use SQL Server• MMX, BridgeWorX, ReportWorX, etc.Version 9 support SQL Server for all products

4

Benefits of SQL ServerBenefits of SQL Server

Central Storage• GENESIS32 configurations stored in a single

database (e.g. Alarm Server, Logger, etc.)• Can be made highly available with clustersMakes online/live modifications easier• Allows for modifications from a different PCConvenient in redundant solutions• Both sides can use single (HA) database store

5

Data Mining – ServerData Mining – Server

Data Mining Server• Supports access to multiple databases

concurrently• Create applications to access

- SQL Server- Oracle - MySQL- Informix (on IBM Mainframes)- and various others using ODBC

6

Data Mining – ClientData Mining – Client

Data Mining Grid• ActiveX control• Provides extensive OLE Automation I/FRecords and columns exposed as OPC Tags• Also allows access from PDAs

7

Data Mining – ExampleData Mining – Example

Demonstration

8

Unified Data ManagerUnified Data Manager

Global Expressions, Groups,Value Sets, Recipes, Triggers, Subscriptions, Filters

9

Unified Data ManagerUnified Data Manager

Global Expressions

10

Unified Data ManagerUnified Data Manager

Global Groups

11

Unified Data ManagerUnified Data Manager

Global Value Sets

12

Unified Data ManagerUnified Data Manager

Global TriggersGlobal SubscriptionsGlobal Filters

13

ScriptWorX2006ScriptWorX2006

Predictive Thread Planning• ScriptWorX32: 1 Script = Thread

- Max. # of scripts, script queuing → Unpredictable order of scripts

• ScriptWorX2006: Designer/Thread model- Scripts organized into VBA Designers- 1 Designer = 1 Thread- Script queuing on a per-designer basis

14

ScriptWorX2006ScriptWorX2006

Configurator• Project → Designer/Thread → Script• Function, Sub-Routines and Global

Variables - Available to all scripts in a designer

• Script - Associated to a trigger selected from the Unified Data Manager

15

ScriptWorX2006ScriptWorX2006

ScriptWorX2006 Global Variables• Available to all scripts within a

Designer/Thread- Share, watch, change values by each script

- Example: Counter of executed scripts within a Designer

- Available to OPC Clients as OPC DA - Implemented through GenBroker Plug-Ins

- OnVarChange event- Scan for parameters

» Global Variable name

» Thread ID

- Thread ID as input – possible conditioning on Thread ID

16

ScriptWorX2006ScriptWorX2006

Supported ScriptWorX2006 Events• OnConnection

- E.g. connect a DB

• OnDisconnection- E.g. dis-connect a DB

• OnTimer- Timer inside a script

• OnVarChange- Global Variable value changes

17

ScriptWorX2006ScriptWorX2006

Trigger Data• Input parameter of scripts

- Public Sub NewScript(td as TriggerData)

• Triggers are shared with- All Genesis applications- All BizViz applications

- E.g. a script and a report can be triggered by one trigger

• Triggers are managed by UDM

18

ScriptWorX2006ScriptWorX2006

Designer/Thread Options• Priority

- RealTime, High, Above Normal, Normal, Below Normal, Low, Idle

• StartUp Squelch • Timer

- No need to re-trigger entire scripts, use timer inside a script (see also ICONICS Timer ActiveX)

• WatchDog- Prevents scripts running out of control

• Processing Queue- “Ignore new” vs. “Remove old”

19

ScriptWorX2006ScriptWorX2006

ScriptWorX2006 and OPC DA• VBA Global Variables – available as OPC DA

data to any OPC clients• Status of Designer/Thread as OPC DA – queue

length, WatchDog time, etc.• Read / Write OPC DA

• NT Service Support- Genesis32 Tray or manual registration

20

Custom Command ServersCustom Command Servers

Custom Command Servers and Configurators• Always existed in GraphWorX32

- Runtime and Configuration Mode

• V9 also adds support in the Alarm ViewerAggregate all code into a single component• All displays automatically use the same code• Can be used with WebHMI as well• Protect IP inside compiled object• Easy to source control and manage versions

21

ArchitectureArchitecture

GraphWorX32

Alarm Viewer

IcoOEMSetup.ini Custom Command Server(COM Object or .net class with COM interop)

22

ConfigurationConfiguration

CCS defined in IcoOEMSetup.ini• […]GraphWorX32 supports override in pick field• Multiple/concurrent Custom Command

Servers supported during runtime operations

Alarm Viewer support added to• Allow customised acknowledgement dialogs• Build custom interfaces to maintenance

systems

23

Code DefinitionsCode Definitions

Alarm ViewerPublic Function CustomCommand(hWndParent As Long, _    ObjectOne As Object, ObjectOneType As String, _    EventId As Integer) As Boolean…    CustomCommand = TrueEnd Function

GraphWorX32Public Function CustomCommand(hWndParent As Long, _    ObjectOne As Object, ObjectOneType As String, _    ObjectTwo As Object, ObjectTwoType As String) As Boolean…    CustomCommand = TrueEnd Function

24

Alarm Viewer ExampleAlarm Viewer Example

Fully customised alarm acknowledge dialogAllows for custom alarm causesIntegration with Maintenance Systems

25

AliasingAliasing

What is Aliasing?

Aliasing is providing significant cost saving potential by reusing your:• Graphical Objects• Pop Up Display• Main Displays• Language Displays• Trend Viewer• Alarm Viewer• Scripts

With Aliasing you can reduce the TCO of your project by 30-60% !

26

AliasingAliasing

“With Aliasing you can reduce the TCO of your project by 30-60% ??”

Why ?

Because: You can realize a standard symbol library that can be reused many timesYou can realize standard displays that can be reusedUse one set of displays to visualize lots of:• Devices • Machines• Subsystems• Buildings

Every time you change your standard you are saving time!Your displays can be updated by the software.

27

AliasingAliasing

How does Aliasing work?

Special Variables in the configuration will be dynamically replaced in runtime:

• OPC Tags or part of the address string• System names or IP numbers• Text labels and button labels• Display names, file names, …• Multi language labels, alarm messages,

…• Units,

28

AliasingAliasing

There are 4 Types of AliasesLocal AliasesGlobal AliasesLanguage AliasesDataWorX Aliases

29

Local Aliases in SymbolsLocal Aliases in Symbols

Enables reusable GraphWorX Objects:

Fixed address:ICONICS.Simulator.1\SimulatePLC.Valve1Open

Alias address:ICONICS.Simulator.1\

SimulatePLC.Valve<<ValveNumber>>OpenValve 1 Valve 2 Valve 3

30

Local Aliases in displaysLocal Aliases in displays

Use Aliasing in Symbol Pop Up displays:

31

Global AliasingGlobal Aliasing

Designed at Core of ICONICS ProductsAvailable throughout all applications• GraphWorX32, AlarmWorX32, TrendWorX32, …

Centralised configuration• Server side database • Client side usage, including WebHMI

Theme based• Changing one theme can change many aliases

Alias resolution can be scoped• Local to the application, or machine wide

32

Global Aliasing / Global Aliasing / ConfigurationConfiguration

A Global Alias Variable is like an one dimensional array of predefined values.The Theme defines the number of indicesThese Variables are available allover the network!

33

Global Alias in RuntimeGlobal Alias in Runtime

Theme ID 1

Hot Water

Set by pick actions

One action sets multipleGlobal Alias variables At the same time to the sameIndex!

34

Theme Based AliasingTheme Based Aliasing

The themes are in control, aliases followGraphWorX32 DisplaysAlarmWorX32 ViewerTrendWorX32 Viewer

Line A

Line B

Line ..

All OPC DA, HDA, A/E nodes use

<#Server1#> (PC12, PC32, PC8, …)

<#Server2#> (PC16, PC15, PC1, …)

<#Server3#> (PC14, PC10, PC2, …)

<#Server4#> (PC23, PC18, PC42, …)

35

Real World ExampleReal World Example

Recurring layers appear on each display• Labels• Engineering information• Function Groups

- security, fire, etc

Remember which layers are visible when switching display

36

Two OptionsTwo Options

OPC Tags to control layer visibility• System wide• Or requires a set of tags for each personGlobal Aliasing to control layer visibility• Is automatically (local) system aware• Single set of aliases is sufficient• Is the better solution

37

International Language SupportInternational Language Support

38

Why multi-language Why multi-language support ?support ?

Language neutral SCADA/HMI systems Expand your international businessMinimize costs • Simplify Internationalized SolutionsMaintenance engineers can connect to the systems viewing real-time and historical data in different languages

39

Technical DetailsTechnical Details

Language Server(COM object)

Language Server(COM object)

GraphWorX32GraphWorX32

ConfiguratorConfigurator

EnDE NL

Tables

MDBCSV

TrendWorX32TrendWorX32 AlarmWorX32AlarmWorX32? ? ? ?

/+alias+/

40

FunctionalityFunctionality

Make visual objects multi-lingual• A language alias is delimited by /+ +/• /+your_alias_goes_here +/• The configuration for all Aliases are

stored in databaseWhen changing Language • Aliased Text is Translated• Fonts are changed• Automatic Engineering Unit Conversion• Process values are properly formatted

xx.xxx

41

Configuration modeConfiguration mode

42

English RuntimeEnglish Runtime

43

French RuntimeFrench Runtime

44

GraphWorX32GraphWorX32

Text Labels, Buttons, …Tooltips, Popup Menus,…State FieldsProcess Points• Format• Read Scaling Expression• Write Scaling Expression

45

TrendWorX32TrendWorX32

Aliased Pen Descriptions Aliased Units LabelsAutomatic RangingDetails window header

46

AlarmWorX32AlarmWorX32

ICONICS Alarm Servers • Also applies to 3rd party A/E Servers• Aliased Alarm Tags and Messages

47

Alarm ViewerAlarm Viewer

ICONICS Alarm Viewer• Aliased column names • Aliased alarm content is translated

48

Alarm LoggingAlarm Logging

ICONICS Alarm Logger • Subscribes to AE Servers and

- Either translates aliased alarm strings- Or, stores aliases untranslated for multilanguage by

the alarm reporter

49

Reporting Historical AlarmReporting Historical Alarm

ICONICS Alarm Reporter • Queries alarm database and translates

aliased alarm strings

50

Recipe managementRecipe management

UDM for configuring recipe parameters Recipe Selection: Tree Control ActiveX • Or PPT’s, State Fields, Pick ActionsViewing and Editing recipes: Recipe ActiveX • Or PPT’s, State Fields, …Control recipes: Pick actions• Download, New, Copy• Save, Delete, Restore

51

Recipe managementRecipe management

UDM for configuring recipe parameters

52

Recipe managementRecipe management

53

MonitorWorXMonitorWorX

Collect and Expose Runtime Information• Through User’s Interface• As Points available for GraphWorX32 etc.System Tray IconReplacing Gentray and License Monitor

54

MonitorWorX: Runtime TabMonitorWorX: Runtime Tab

Start Times, Uptime, Version numbers etc.

55

MonitorWorX: License TabMonitorWorX: License Tab

See licensed nodes on the networkSee available points, client units, mobile clients, …

56

MonitorWorX: Apps &Services MonitorWorX: Apps &Services TabTab

Start/Stop Servers, View version numbersEnable/Disable events to Windows Event Log

57

MonitorWorX: Redundancy MonitorWorX: Redundancy TabTab

View Redundancy Node Pairs• Health & Running hours• Switch primary node / backup node

58

TraceWorX32TraceWorX32

Designed at Core of ICONICS ProductsComplete Product Error TracingSimple Web Browser GUIZip and Email TraceWorX32 Files• Send to ICONICS engineers

Simplifies DebuggingUser-specified Trace Levels• Logs all Messages at or Above a Trace Level

59

Unified Data BrowserUnified Data Browser

Browse Tags from• OPC Servers, Databases, • SNMP Devices

1/5

60

Unified Data BrowserUnified Data Browser

• ScriptWorX 2006 Variables• UDM: Expressions, Groups, Value Sets,

Recipes

2/5

61

Unified Data BrowserUnified Data Browser

License Details: • Client units, mobile users, points,…

3/5

62

Unified Data BrowserUnified Data Browser

Global AliasesLocal GraphWorX Aliases, Variables and Simulation tags

4/5

63

Unified Data BrowserUnified Data Browser

Recipe interaction, recipe details

5/5