Download presentation
Presentation is loading. Please wait.
Published byBeverly Freeman Modified over 9 years ago
1
Raymond van der Tas, Netherlands Andre Scherpenzeel, United Kingdom Mike Hilligas, Michigan Nicole Dombeck, Massachusetts ICONICS 2008 Worldwide Customer Summit Boston, MA
2
Advanced uses Novel uses Unexpected uses Application Sizing/Scoping
3
OPC DA Servers ICONICS Servers Aggregation/Common Functions Data Distribution Visualisation GraphWorX32 GenBroker WebHMI DataWorX32 Unified Data Mgr. AlarmWorX32 TrendWorX32 OPC Servers Data Mining Server Viewers (Alarm/Trend)
4
GraphWorX32 GenBroker WebHMI DataWorX32 Unified Data Mgr. AlarmWorX32 TrendWorX32 OPC Servers Data Mining Server Viewers (Alarm/Trend) OPC DA Servers ICONICS Servers Aggregation/Common Functions Data Distribution Visualisation
6
SQL Server Time Useful for connection time measuring Persistent Parameter/Value Storage Demonstration
7
Define a table in SQL Server/SQL Express PersistentTagnvarchar(50)PrimaryKey PersistentValuefloat
8
Data Mining Server Add a DataConnection to point to the SQL Server Add a DataSource to point to the created table Add PersistentTag as a parameter Enable Writes and Updates
9
OPC Tag Name: ICONICS.DatabaseOPCServer.3\G32- 103.PersistentData. Tag1 The name of the persistent tag for which to read/write the value
11
C:\Documents and Settings\All Users\Application Data\ICONICS\IcoSetup.ini
12
Show:No show:
13
ICONICS.Alarm Server_ OPC DA Server ! Realtime OPC DA data about A&E environment
14
ICONICS.AlarmServer_\ >. Enabled LIM_HIHI_Limit LIM_Acked LIM_HIHI_Severity LIM_HIHI_MsgText
15
OPC DA about areas and alarm objects
16
Detect any change in OPC value: (Return to normal after ACK)
17
Detect change per second in OPC values and alarm the range in which the change falls:
18
AlarmWorX32 Server Related Values
19
Related Values Downtime and Production Monitoring AlarmWorX32 Server Related Values
21
[DWX32\Options] BrowseNetwork=0 BrowseRedundancy=1 BrowseMyComputer=1 EditAliasesAsRegs=1 OPCStartsRuntime=1 MonitorRate=1000 SaveSettings=1 ShowSwitchoverDlgs=1 ReloadMode=1 ReloadFile= OverrideGBC=0 OverrideGBCFile= DefaultOPCInputScanRate=50 DefaultExpressionScanRate=50 DefaultConditionScanRate=500 RefreshOutputs=0 RefreshOutputRate=60000 ShowOPCTagFailMsgs=0 IgnorePointSecurity=0 ScanRateLimit=0
22
Avoid oscillation of input/output when input and output point at the same OPC tag
23
Refresh output in case input tag is different from the output tag And it is likely that input devices are switched off and on
26
UDM can only be used by ICONICS products No scaling available No (redundancy, switch) aliasing available No automation interface DWX32 can be used by any OPC client Scaling available Aliasing available Automation interface available Can be configured to be “always on scan”
27
Globally available to all products Parameterized Read and Write Expressions
28
Logically group tags Write action to group distributes writes to members (eliminate multiple pick actions) Groups may be grouped as well
29
Allow users to select a set of values from a list of available sets
31
Server Security Limit access to certain OPC or ICONICS functions Force “Read Only” for all data irrespective of user security Require user credentials for the channel Client IDs Force clients to have a certain configuration License Restrictions Specify preferred nodes for licenses
32
Overall Read Only Restricted Functions OPC Protocols ICONICS Protocols ICONICS/OPC Functions Credentials Force logon for the channel
33
Specific Nodes Specific Security Servers Specific License Servers Specific Versions
34
Specify the preferred nodes Specify the reserved licenses for the preferred nodes
35
Use within VBA in GraphWorX32 Validate currently logged-on user rights using logical security properties rather than user or group name
36
Example Script Validates the current custom security permissions for the token “ShowCustomForm” and shows a form based on that Sub CustomSecurityTest(o As GwxPick) If (ThisDisplay.TestCustomSecurityItem("ShowCustomForm")) Then ' Show custom form GwxCustomSecurityTest_MainForm.Show Else MsgBox "Security Access Denied", vbCritical Or vbOKOnly, "Security" End If End Sub Sub CustomSecurityTest(o As GwxPick) If (ThisDisplay.TestCustomSecurityItem("ShowCustomForm")) Then ' Show custom form GwxCustomSecurityTest_MainForm.Show Else MsgBox "Security Access Denied", vbCritical Or vbOKOnly, "Security" End If End Sub
37
Sizing Methodologies Connection Count Methodology Memory Usage Methodology
38
Number of connections per (WebHMI) Client Type of connections OPC AE/DA/HDA, Security, Global Aliases, Security, Licensing, UDM Registers/Expressions, etc. Number of threads supported by GenBroker 1,500 – 2,000 total (Limited by OS) Typical Range 75 – 150 clients
39
OPC DA Requirements 100 KB / OPC Server 1 KB / OPC Tag OPC AE Requirements Maximum buffer: 1KB * Maximum Alarm Burst Allocate maximum buffer for each AE Client
40
To double or triple the maximum number of clients that can be connected to a single node: Separation of OPC DA & ICONICS Servers Separation of Administrative & Data Servers
42
TWXViewer Drag/Drop Example Supports both DA & HDA tags Prefix tag with hda. for HDA tags GraphWorX32 Configuration Builder GenRegistrar interaction Symbol Library interaction Demonstration
43
Any OPC Tag can be turned into a drag & drop source Also expose HDA tags via the hda. Prefix
44
Define a tag list and appropriate descriptions in an alias file Show the descriptions in a process point Use a colour or hide dynamic for the tags Enable drag/drop for this dynamic Add buttons to load different alias files as required
45
Custom Command Server is implemented as a COM object Many programming languages supported: Visual Basic, C++, C#, etc. User driven using GraphWorX32 pick fields (runtime) Supports use of multiple Custom Command Servers in a single display User driven using GraphWorX32 custom button (configuration) Available on the property pages of dynamic and static objects Automatic for Alarm Viewer events Available from GENESIS32 version 9 GraphWorX32 Alarm Viewer Pick Field Custom Command Server
46
Advantages Single Code Base VBA code only shared within a single display VBScript/Jscript code defined per object Protect IP in compiled code VBA can be protected via password No protection for VBScript/Jscript code Source Control VBA/VBScript/Jscipt code cannot be easily source controlled as it is part of the display Version Management VBA/VBScript/Jscipt code cannot be easily source controlled as it is part of the display WebHMI Support VBA cannot be used in WebHMI Disadvantages Requires Visual Studio VBA/VBScript/Jscript programming environment provided by GENESIS32 Requires visual studio to debug Needs distribution mechanism VBA/VBScript/Jscript code is part of the display, custom command servers are separate entities Neutral Better planning required As a separate component is created more of a software engineering approach is required Better understanding As all interaction takes place via OLE automation and more can happen concurrently a better understanding of the system as a whole is needed for a successful implementation
47
Access GraphWorX32 using GenRegistrar Also available during configuration by setting: [GWX32\Compatibility Properties] DesignTimeRegistration=1 Use symbols from the library to insert objects onto the display Configure the object’s properties using local aliases
48
Instantiate the GenRegistrar Automation Wrapper Query the running application(s) Dim GenReg As New AutoGenRegistrar Dim count As Long Dim keys, apps, nodes, dispatches GenReg.QueryDispatch2 "*", "GWX32", "*", count, keys, apps, nodes, dispatches Dim GenReg As New AutoGenRegistrar Dim count As Long Dim keys, apps, nodes, dispatches GenReg.QueryDispatch2 "*", "GWX32", "*", count, keys, apps, nodes, dispatches
49
Inserting Symbols into the Display Dim symbol As GwxSymbol Call ThisDisplay.InsertLibraryObjectByName("1_Water\Static Water Treatment", "R.B.C") Set symbol = ThisDisplay.GetHeadObject Dim symbol As GwxSymbol Call ThisDisplay.InsertLibraryObjectByName("1_Water\Static Water Treatment", "R.B.C") Set symbol = ThisDisplay.GetHeadObject
50
Call SetAliasDefinition for the aliases symbol.SetAliasDefinition "OPCServer", "ICONICS.Simulator.1“ symbol.SetAliasDefinition "TAG", "TAG1023" symbol.SetAliasDefinition "OPCServer", "ICONICS.Simulator.1“ symbol.SetAliasDefinition "TAG", "TAG1023"
51
ICONICS 2008 Worldwide Customer Summit Boston, MA
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.