1 / 63

GENESIS32 for Power Users

R. Arnost, B. DeLong, U. Huenichen, A. Scherpenzeel , R. van der Tas, A. Tupaj. GENESIS32 for Power Users. HMI-40 Agenda. Introduction Configuration Databases GENESIS32 Data Mining Facilities Unified Data Manager ScriptWorX2006 Custom Command Servers

Download Presentation

GENESIS32 for Power Users

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. HMI-40 Agenda • Introduction • Configuration Databases • GENESIS32 Data Mining Facilities • Unified Data Manager • ScriptWorX2006 • Custom Command Servers • Aliases – Language, Global, Local, etc. • Recipe handling with Unified Data Manager • MonitorWorX & Unified Data Browser

  3. Configuration 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 Server • Central Storage • GENESIS32 configurations stored in a single database (e.g. Alarm Server, Logger, etc.) • Can be made highly available with clusters • Makes online/live modifications easier • Allows for modifications from a different PC • Convenient in redundant solutions • Both sides can use single (HA) database store

  5. Data 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 – Client • Data Mining Grid • ActiveX control • Provides extensive OLE Automation I/F • Records and columns exposed as OPC Tags • Also allows access from PDAs

  7. Data Mining – Example • Demonstration

  8. Unified Data Manager • Global Expressions, Groups, • Value Sets, Recipes, Triggers, • Subscriptions, Filters

  9. Unified Data Manager • Global Expressions

  10. Unified Data Manager • Global Groups

  11. Unified Data Manager • Global Value Sets

  12. Unified Data Manager • Global Triggers • Global Subscriptions • Global Filters

  13. ScriptWorX2006 • 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. ScriptWorX2006 • 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. ScriptWorX2006 • 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. ScriptWorX2006 • 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. ScriptWorX2006 • 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. ScriptWorX2006 • 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. ScriptWorX2006 • 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 Servers • Custom Command Servers and Configurators • Always existed in GraphWorX32 • Runtime and Configuration Mode • V9 also adds support in the Alarm Viewer • Aggregate 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. Architecture GraphWorX32 Alarm Viewer IcoOEMSetup.ini Custom Command Server (COM Object or .net class with COM interop)

  22. Configuration • 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 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 Example • Fully customised alarm acknowledge dialog • Allows for custom alarm causes • Integration with Maintenance Systems

  25. Aliasing 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. Aliasing “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 times • You can realize standard displays that can be reused • Use 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. Aliasing 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. Aliasing There are 4 Types of Aliases • Local Aliases • Global Aliases • Language Aliases • DataWorX Aliases

  29. Local Aliases in Symbols Enables reusable GraphWorX Objects: Fixed address: ICONICS.Simulator.1\SimulatePLC.Valve1Open Alias address: ICONICS.Simulator.1\SimulatePLC.Valve<<ValveNumber>>Open Valve 1 Valve 3 Valve 2

  30. Local Aliases in displays • Use Aliasing in Symbol Pop Up displays:

  31. Global Aliasing • Designed at Core of ICONICS Products • Available 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 / Configuration • A Global Alias Variable is like an one dimensional array of predefined values. • The Theme defines the number of indices • These Variables are available allover the network!

  33. Global Alias in Runtime Theme ID 1 One action sets multiple Global Alias variables At the same time to the same Index! Hot Water Set by pick actions

  34. GraphWorX32 Displays AlarmWorX32 Viewer TrendWorX32 Viewer Line A Line B Line .. Theme Based Aliasing • The themes are in control, aliases follow 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 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 Options • OPC Tags to control layer visibility • System wide • Or requires a set of tags for each person • Global Aliasing to control layer visibility • Is automatically (local) system aware • Single set of aliases is sufficient • Is the better solution

  37. International Language Support

  38. Why multi-language support ? • Language neutral SCADA/HMI systems • Expand your international business • Minimize costs • Simplify Internationalized Solutions • Maintenance engineers can connect to the systems viewing real-time and historical data in different languages

  39. Technical Details GraphWorX32 TrendWorX32 AlarmWorX32 /+alias+/ Language Server (COM object) Configurator MDB CSV En DE NL Tables

  40. Functionality • Make visual objects multi-lingual • A language alias is delimited by /+ +/ • /+your_alias_goes_here +/ • The configuration for all Aliases are stored in database • When changing Language • Aliased Text is Translated • Fonts are changed • Automatic Engineering Unit Conversion • Process values are properly formatted xx.xxx

  41. Configuration mode

  42. English Runtime

  43. French Runtime

  44. GraphWorX32 • Text Labels, Buttons, … • Tooltips, Popup Menus,… • State Fields • Process Points • Format • Read Scaling Expression • Write Scaling Expression

  45. TrendWorX32 • Aliased Pen Descriptions • Aliased Units Labels • Automatic Ranging • Details window header

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

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

  48. Alarm 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 Alarm • ICONICS Alarm Reporter • Queries alarm database and translates aliased alarm strings

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

More Related