Related Links: SysCAD Marshal
The SysCAD OPC DA (Data Access) Server can be used for a number of applications, including operator training. The OPC Server can be used to connect to software (eg operator interface software) or hardware (eg PLC). All you need is an appropriate OPC Client driver for the hardware or software.
To use the OPC Server or OPC Client (SysCAD Marshal) functionality in SysCAD you will need to have purchased the OPC add-on, otherwise the licensing will disable these features.
The steps involved in using OPC Server in a SysCAD project are:
- Set up a SysCAD dynamic project. The project should have RealTime selected.
- Switch on the OPC Server option. See Project Project Settings IO Connection Tab page.
- In the OPC Client connect to the SysCAD OPC server.
- Enter any valid SysCAD tags in the OPC Client that you wish to subscribe to.
Connecting to SysCAD OPC Server
There are various free OPC Client test tools that can be downloaded and used to test SysCAD tag connectivity to the SysCAD OPC Server.
For OPC connection over a network, you need to ensure on the client and server ends all the appropriate DCOM permissions are configured correctly.
The OPC Client can start an instance of SysCAD (OPC Server) directly. When SysCAD starts and is licensed with OPC then the SysCAD OPC Server is "started" or "opened" so that the OPC Client can see the server, however the status returned by SysCAD is "Failed". In SysCAD a dynamic project that has OPC Server switched on must be loaded before the SysCAD OPC Server is enabled and the status of SysCAD as OPC Server is changed to "Running". This does not mean that the solver is running, it simply means that the OPC Server is running and the client can connect to SysCAD tags.
When the OPC Client (reading values from SysCAD) first connects to a SysCAD tag the current value is retrieved.
While SysCAD Solver is running or paused any changes in SysCAD tags that are mapped to OPC tags are always updated and therefore seen by OPC Client.
When the SysCAD Solver is stopped, any changes in SysCAD tags that are mapped to OPC tags are NOT sent. The current value is only sent when the user next goes to paused or running state. However in SysCAD 9.3 there are two exceptions and these are special tags "$Solver.AppState" and "$Solver.AppState.Detail" that if mapped to OPC tags are always sent by SysCAD OPC Server (and therefore the connected OPC Client), refer to Solver Setting - FS Solver for more information. These are also available as tags before a project is loaded. The application state tag "$Solver.AppState" is shown as text in the status bar.
When a scenario is loaded, the SysCAD values that are mapped to OPC tags are sent to connected OPC Client.
Rather than using full SysCAD tags it is possible to define Alias tags mapped against full SysCAD tags. Then the OPC Client can use the Alias rather than the SysCAD tag when connecting to SysCAD OPC Server. This functionality is New to Build 136 and is described in Project Settings - IO Connections.
Using Conversions with OPC Tags
When OPC Client specifies an Item Name (ie full SysCAD Tag or Alias Tag), a conversion can be specified. This is done in the usual way by separating the Tag from the conversion with a space and specifing the conversion in brackets eg (kg/h). If the conversion is invalid for the SysCAD Tag an error is returned. If a conversion is NOT specified but the full tag does have conversion units, then the SysCAD SI conversion units are used.
OPC Server Options
The OPC Options dialog box is to keep the user informed of the communication status between SysCAD and the OPC Client. When SysCAD is running and communication established, the statistics page will list a summary of the communication between the packages:
and the tags page will list all the tags and their values passed through by OPC.
The Refresh button refreshes the dialog box and the Force All button will force communication to take place regardless of value change. The Options button will open up the following dialog box allowing the user to set some extra options.