Omron CX-SUPERVISOR 3.1 - NET INTERFACE, CX-Supervisor 3.1 Reference Manual

Page 1
CX-Supervisor
Software
Cat No. W15E-EN-01
.NET Interface
Software Release 3.1
Reference
Page 2
1
Notice
OMRON products are manufactured for use by a trained operator and only for the purposes described in this manual.
The following conventions are used to c lassify and explain the precautions in this manual. Always heed the information provided with them.
Trademarks and copyrights
CX-Supervisor is a registered trademark of OMRON. All other product names, company names, logos or other designations
mentioned herein are trademarks of their respective owners.
Copyright
Copyright © 2010 OMRON All rights reserved. No part of this publication may be reproduced, stored in a
retrieval system, or transmitted, in any form, or by any means, mechanical, electronic, photocopying, recording, or otherwise, without the prior written permission of OMRON.
No patent liability is assumed with respect to the use of the information contained herein. Moreover, because OMRON is consta ntly striving to impr ove its high-quality products, the information contained in this manual is subject to change without notice. Every precaution has been taken in the preparation of this manual. Nevertheless, OMRON assumes no responsibility for errors or omissions. Neither is any liability assumed for damages resulting from the use of the information contained in this publication.
Note: Indicates information of particular interest for efficient and convenient
operation of the product.
Caution:
Indicates information that, if not heeded, could possibly result in minor or relatively serious injury, damage to the product, or faulty operation.
Warning:
Indicates information that, if not heeded, could possibly result in serious injury or loss of life.
Page 3
Copyright Notice
2
Page 4
Table of Contents
3
Notice................................................................................................1
Trademarks and copyrights..................................................................................................................1
Copyright..............................................................................................................................................1
SECTION 1
Introduction......................................................................................7
1-1 Who Should Read This Document ...................... ....................................................... .........................7
1-2 Interface Overview ...............................................................................................................................7
1-3 Referencing the DLL ............................................................................................................................7
SECTION 2
Examples ..........................................................................................9
2-1 VB .NET ..............................................................................................................................................9
2-2 C# .NET .................................................... ... .... ... .......................................... ... ... .... ............................9
2-3 VB .NET and ASP.NET .......................................................................................................................9
SECTION 3
Class Reference.............................................................................11
3-1 PointMngt...........................................................................................................................................11
3-1-1 ListGroups.............................................................................................................................11
3-1-2 ListPoints ..............................................................................................................................11
3-1-3 SetValue ...............................................................................................................................11
3-1-4 GetValue...............................................................................................................................11
3-1-5 IsValidPoint...........................................................................................................................12
3-1-6 IsValidGroup.........................................................................................................................12
3-1-7 GetPointData ........................................................................................................................12
3-1-8 BrowsePoints........................................................................................................................12
3-2 ApplicationMngt..................................................................................................................................13
3-2-1 GetErrorString.......................................................................................................................13
3-2-2 Restart ..................................................................................................................................13
3-2-3 GetProjectName ...................................................................................................................13
3-2-4 ListDevices............................................................................................................................14
3-2-5 GetDeviceStatus...................................................................................................................14
3-2-6 GetAppId...............................................................................................................................14
3-2-7 IsValidAppId..........................................................................................................................14
3-2-8 IsValidUser............................................................................................................................14
3-3 AlarmMngt..........................................................................................................................................15
3-3-1 ListAlarmGroups...................................................................................................................15
3-3-2 ListAlarms.............................................................................................................................15
3-3-3 GetAlarmData.......................................................................................................................15
3-3-4 AcknowledgeAlarm...............................................................................................................16
3-3-5 AcknowledgeAllAlarms .........................................................................................................16
3-3-6 BrowseAlarms.......................................................................................................................16
3-3-7 GetAlarmLog.........................................................................................................................16
3-3-8 GetActiveAlarms...................................................................................................................16
Page 5
Table of Contents
4
3-4 ScriptMngt.......................................................................................................................................... 17
3-4-1 ExecuteScript ....................................................................................................................... 17
3-4-2 ListScripts............................................................................................................................. 17
3-4-3 GetScriptParameters............................................................................................................ 17
3-5 ErrorMngt........................................................................................................................................... 17
3-5-1 GetErrorLog.......................................................................................................................... 17
Revision history.............................................................................19
Page 6
Table of Contents
5
Page 7
Table of Contents
6
Page 8
Who Should Read This Document SECTION 1 Introduction
7
SECTION 1
Introduction
The purpose of this document is to act as an introduction and reference guide to the CX-Supervisor .NET interface introduced in V3.0.
1-1 Who Should Read This Document
The target audience is application developers knowledgeable in the .NET Framework and using external libraries. No attempt is made to teach .NET practices or any programming language.
1-2 Interface Overview
The CX-Supervisor .NET interface allow external applications to access CX­Supervisor using well defined interfaces to access specific areas of functionality. The interface can be divided in to the following areas of functionality:
Point monitoring and data gathering
Application/System management
Alarm monitoring and control
Script execution
Error management
The reference section of th is d oc um e nt p rov ide s fu ll de tails of t he cla sses and methods which implement this functionality.
1-3 Referencing the DLL
The interface is exposed through the file SCSRUNLib.dll which is located in the CX-Supervisor installation directory. In order to use the interface classes you must first add a reference to it in your project and then insert an appropriate using or Imports declaration in your class.
Page 9
Referencing the DLL SECTION 1 Introduction
8
Page 10
VB .NET SECTION 2 Examples
9
SECTION 2
Examples
These code snippets are provided as an example of how to use the CX­Supervisor .NET Interface.
2-1 VB .NET
' declare variables
CErrorMngtClass errorMngr = new CErrorMngtClass(); object list;
' get list of errors
errorMngr.GetErrorLog(out list);
' convert list to string array
string[] errors = (string[])list;
' use error log…
2-2 C# .NET
// declare variables
CPointMngtClass pointMngr = new CPointMngtClass(); object list;
// get list of points
pointMngr.ListPoints(out list);
// convert list to string array
string[] points = (string[])list;
// use points list…
2-3 VB .NET and ASP.NET
The source code for the CX-Supervisor Standard Web Pages is installed along with CX-Supervisor. It can be opened and run using Visual Web Developer
2008. The Express edition of this software is available as a free download from Microsoft.
Page 11
VB .NET and ASP.NET SECTION 2 Examples
10
Page 12
PointMngt SECTION 3 Class Reference
11
SECTION 3
Class Reference
3-1 PointMngt
Allows the client to manage the acquisition of point information and the reading and writing of point data.
3-1-1 ListGroups
Retrieves a list of all the point groups contained within a CX-Supervisor application.
ListGroups(ByRef pGroups As Object)
3-1-2 ListPoints
Retrieves a list of all the points that are part of the given group.
ListPoints(ByVal szName As String, ByRef pPoints As Object)
3-1-3 SetValue
This method sets a point to a specified value. In circumstances where the point can not be set to a value (i.e. More than allowed maximum) the value returned in the retVal parameter will differ from that specified and represent the actual value the point was set to.
SetValue(ByVal szName As String, ByVal varValue As Object, ByRef retVal As Object)
3-1-4 GetValue
Reads the current value of a point.
GetValue(ByVal szName As String, ByRef retVal As Object)
Parameters Description
pGroups An array of strings representing the names of all the groups
Parameters Description
szName Name of Group pPoints Receives an array of strings representing the names of all the
points contained in the group
Parameters Description
szName Name of Point varValue Value the point is to be set to retVal The actual value the point was set to
Parameters Description
szName Name of Point retVal Receives the current value of point
Page 13
PointMngt SECTION 3 Class Reference
12
3-1-5 IsValidPoint
Determines whether the point is valid.
IsValidPoint(ByVal szName As String, ByVal szGroup As String, ByRef retVal As Integer)
3-1-6 IsValidGroup
Determines whether the group is valid.
IsValidPoint(ByVal szName As String, ByRef retVal As Integer)
3-1-7 GetPointData
Retrieves the metadata of a specific point
GetPointData(ByVal szName As String, ByRef vartype As UShort, ByRef pDescription As Object, ByRef bReadOnly As Integer, ByRef iArraySize As Integer, ByRef Value As Object)
3-1-8 BrowsePoints
This method retrieves a filtered list of the points contained within a CX­Supervisor application.
BrowsePoints(ByVal szFilter As String, ByVal szGroup As String, ByVal vtDataTypeFilter As UShort, ByRef pPoints As Object)
Parameters Description
szName Name of Point szGroup Name of Group retVal Receives true or false
Parameters Description
szName Name of Group retVal Receives true or false
Parameters Description
szName Name of the Point vartype The type of point pDescription The description of the point iArraySize Number of array elements (1 = non array point) value The current value of the point
Parameters Description
szFilter Free format filter eg. “P*” szGroup Group name filter
Page 14
ApplicationMngt SECTION 3 Class Reference
13
3-2 ApplicationMngt
Allows the client to retrieve Application level information and manage the running application.
3-2-1 GetErrorString
This method returns the error string corresponding to a specific error code generated by CXSupervisor in response to a method call on the custom interface.
GetErrorString(ByVal dwError As Integer, ByRef pString As Object)
3-2-2 Restart
Causes the CX-Supervisor runtime to be restarted. If a path to a .SR2 file is specified then this is run upon restart.
Restart(ByVal szFile As String)
3-2-3 GetProjectName
Returns the name of the running CX-Superviso r app lica tion pr oje ct.
GetProjectName(ByRef pName As Object)
vtDataTypeF ilter
Data type filter. One of: 0 - All types 11 - Boolean 3 - Integer 5 - Real 8 - String
pPoints Receives an array of strings representing the names of all the
points that pass the filters
Parameters Description
Parameters Description
dwError A valid component specific error code that the client had
returned from an interface function from the component. For which the client application is requesting the server’s textual representation
pString Receives a string error message
Parameters Description
szFile Op tional path of the SCS application to run.
Parameters Description
pName Receives the name of the project
Page 15
ApplicationMngt SECTION 3 Class Reference
14
3-2-4 ListDevices
Retrieves a list of all the devices contained within a CX-Supervisor application.
ListDevices(ByRef pDevices As Object)
3-2-5 GetDeviceStatus
Retrieves the status of a device
GetDeviceStatus(ByVal szName As String, ByRef pOpen As Integer, ByRef pCommsFailed As Integer, ByRef pInError As Integer)
3-2-6 GetAppId
Returns a App ID string that can be used to identify the instance of this runtime.
GetAppId(ByRef pAppId As Object)
3-2-7 IsValidAppId
This method determines whether the given App ID matches the current’s instance’s App ID.
IsValidAppId(ByVal szAppId As String, ByRef retVal As Integer)
3-2-8 IsValidUser
This method determines whether the given username and password matches a configured CXSupervisor runtime user with web access enabled.
IsValidAppId(ByVal szUsername As String, ByVal szPassword As String, ByRef retVal As Integer)
Parameters Description
pDevices An array of strings representing the names of all the devices
Parameters Description
szName Name of the device pStatus Receives the status of the device
Parameters Description
pAppId Receives the App ID
Parameters Description
szAppId The App ID to valida te retVal Receives true or false
Parameters Description
szUsername A username to validate szPassword A password to validate retVal Receives true or false
Page 16
AlarmMngt SECTION 3 Class Reference
15
3-3 AlarmMngt
Allows the client to view alarm state and history and acknowledge active alarms.
3-3-1 ListAlarmGroups
Retrieves a list of all the alarm groups contained within a CX-Supervisor application.
ListAlarmGroups(ByRef pGroups As Object)
3-3-2 ListAlarms
Retrieves a list of all the alarm contained within the given alarm group.
ListAlarms(ByVal szName As String, ByRef pAlarms As Object)
3-3-3 GetAlarmData
Retrieves the metadata of a specific alarm.
GetAlarmData(ByVal szName As String, ByRef pType As Object, ByRef pAuto As Integer, ByRef pDescription As Object, ByRef pPriority As Object, ByRef pStatus As Object, ByRef pDateTime As Object, ByRef pMessage As Object)
Parameters Description
pGroups Receives an array of strings representing the names of all the
alarm groups
Parameters Description
szName Name of Alarm Group pAlarms Receives an array of strings representing the names of all the
alarms
Parameters Description
szName Name of the Alarm pType The type of Alarm “simple”, “deadband”, ”rateofchange” pAuto Indicates Automatically acknowledged pDescription The description of the alarm pPriority The priority of the alarm
“Highest”, “High”, “Medium”, “Low”, “Lowest”
pStatus The current status of the alarm
“Inactive”, “Active”, “Acknowledged” pDateTime The time and date the alarm entered it’s current state pMessage The message shown
Page 17
AlarmMngt SECTION 3 Class Reference
16
3-3-4 AcknowledgeAlarm
Acknowledge an alarm. AcknowledgeAlarm(ByVal szName As String, ByVal szUser As String)
3-3-5 AcknowledgeAllAlarms
Acknowledge all un-acknowledged, active alarms.
AcknowledgeAllAlarms(ByVal szUser As String)
3-3-6 BrowseAlarms
This method retrieves a filtered list of the alarms contained within a CX­Supervisor application.
BrowseAlarms(ByVal szFilter As String, ByVal szPriorityFilter As String, ByRef pAlarms As Object)
3-3-7 GetAlarmLog
This method provides the ability to get a list of all the alarm log entries. The returned array strings each delimitated by tabs will provide time, message and status information. The list matches the order of entries in the log.
GetAlarmLog(ByRef pAlarmLogEntries As Object)
3-3-8 GetActiveAlarms
Retrieves a list of all the currently active alarms.
GetActiveAlarms(ByRef pAlarms As Object)
Parameters Description
szName Name of Alarm szUser User who acknowledged alarm
Parameters Description
szName Name of Alarm szUser User who acknowledged alarms
Parameters Description
szFilter Free format filter eg. A* szPriorityFilterAlarm priority filter. Eg. “High”. If string empty all types are
returned
pAlarms Receives an array of strings representin g th e na m es of all the
alarms
Parameters Description
pAlarmLogE ntries
Receives an array of strings representing the alarm log entries
Parameters Description
pAlarms Receives an array of strings representin g th e na m es of all the
alarms
Page 18
ScriptMngt SECTION 3 Class Reference
17
3-4 ScriptMngt
Allows the client to execute scripts contained within a supervisor application.
3-4-1 ExecuteScript
Execute a project level script in the supervisor application.
ExecuteScript(ByVal varName As Object, ByRef pParamList As Object, ByRef retVal As Object)
3-4-2 ListScripts
Retrieve a list of all the project level scripts contained within a CX-Supervisor application.
ListScripts(ByRef pScripts As Object)
3-4-3 GetScriptParameters
Retrieves the parameters associated with a script.
GetScriptParameters(ByVal szName As String, ByRef pParamList As Object)
3-5 ErrorMngt
Allows the client to access to the error log.
3-5-1 GetErrorLog
Get a list of all the error log entries.
GetErrorLog(ByRef pErrors As Object)
Parameters Description
varName Name of script pParamList Array of objects representing the list of script arguments retVal Returned output parameters
Parameters Description
pScripts Receives an array of strings representing the names of all the
scripts
Parameters Description
szName The name of the script pParamList Receives an array of strings representing the data types of the
parameters
Parameters Description
pErrors Receives and array of strings representing the all of the error
log entries (date/time and message)
Page 19
ErrorMngt SECTION 3 Class Reference
18
Page 20
Revision history
19
Revision history
A manual revision code appears as a suffix to the catalog number on the front cover of the manual.
The following table lists the chan ges made to the man ual during each revision. The page numbers of a revision refer to the previous versio n.
Cat. No. W15E-EN-01
Revision code
Date Revised content
01 Sept. 2010 First version in the standard Omron format.
Page 21
Revision history
20
Page 22
Cat. No. I55E-EN-01 CJ1W-MCH72 Programmable Controller SYSMAC CJ-series Motion Control Unit OPERATION MANUAL
Cat. No. W15E-EN-01 Note: Specif cations subject to change without notice.
Authorized Distributor:
Printed in Europe
Loading...