7.2 CtrlResourceType ObjectType Definition

7.2.1 Overview

This ObjectType defines the representation of a Crtl Resources of a programmable Controller system in an OPC UA Address Space. It introduces Objects to group Configuration and Diagnostic capabilities, GlobalVars and Ctrl Programs executed under the control of Tasks. The CtrlResourceType is derived from the DeviceType defined in OPC 10000-100. Figure 16 shows the CtrlResourceType. It is formally defined in Table 11. The dark grey node in the figure is an example and is not part of the ObjectType definition.

Figure 16 – CtrlResourceType Overview

The Ctrl Resource ObjectType is formally defined in Table 11.

Table 11 – CtrlResourceType Definition
Attribute Value
BrowseNameCtrlResourceType
IsAbstractFalse
References NodeClass BrowseName DataType TypeDefinition ModellingRule
Subtype of the DeviceType defined in OPC 10000-100, i.e. inheriting the InstanceDeclarations of that Node.
HasComponentObject2:MethodSetBaseObjectTypeOptional
HasComponentObjectTasksConfigurableObjectTypeMandatory
HasComponentObjectProgramsConfigurableObjectTypeMandatory
HasComponentObjectGlobalVarsFunctionalGroupTypeOptional
HasComponentObjectConfigurationFunctionalGroupTypeOptional
HasComponentObjectStatusFunctionalGroupTypeOptional

The CtrlResourceType ObjectType is a concrete type and can be used directly. It is recommended to create subtypes for vendor or user specific resources.

A concrete Ctrl Resource type or instance may have ParameterSet, Parameters and FunctionalGroups as defined for the TopologyElementType in OPC 10000-100.

The MethodSet Object is defined by the TopologyElementType and is overwritten in the CtrlResourceType to add the HasComponent References to the Methods defined for the CtrlResourceType.

The Object Tasks is used to group Ctrl Tasks that are part of the Ctrl Resource. It uses the concept of configurable Objects defined OPC 10000-100. It contains Objects of the type CtrlTaskType representing a Ctrl Resource and a Folder with possible Ctrl Task types that can be instantiated in the Ctrl Resource.

The configurable Object Programms is used to group Ctrl Programs that are part of the Ctrl Resource. It contains Objects of the type CtrlTaskType representing a Ctrl Resource and a Folder with possible Ctrl Program types that can be instantiated in the Ctrl Resource.

The FunctionalGroup GlobalVars contains the corresponding list of GlobalVars that may be accessed in the programmable Controller system within the scope of the Ctrl Resource.

The FunctionalGroup Configuration contains configuration Variables and Methods like start and stop.

The FunctionalGroup Status contains diagnostic and status information like system variables, system events or diagnostic codes.

7.2.2 Tasks components

The configurable Object Tasks of the CtrlResourceType is formally defined in Table 12.

Table 12 – Components of the Tasks Object
Attribute Value
BrowseNameTasks
References NodeClass BrowseName TypeDefinition ModellingRule
HasComponentObject<TaskName> CtrlTaskType OptionalPlaceholder

7.2.3 Programs components

The configurable Object Programs of the CtrlResourceType is formally defined in Table 13.

Table 13 – Components of the Programs Object
Attribute Value
BrowseNamePrograms
References NodeClass BrowseName TypeDefinition ModellingRule
HasComponentObject<ProgramName> CtrlProgramType OptionalPlaceholder

7.2.4 MethodSet components

The Methods available as parts of the CtrlResourceType are formally defined in Table 14.

Table 14 – Components of the CtrlResourceType MethodSet
Attribute Value
BrowseNameMethodSet
References NodeClass BrowseName Description ModellingRule

Configuration FunctionalGroup

The following components are also referenced from the FunctionalGroup Configuration using Organizes References.

HasComponentMethodStartThis Method is used to start a Ctrl Resource. Only the browse name is defined for this Method. The Method parameters are vendor specific.Optional
HasComponentMethodStopThis Method is used to stop a Ctrl Resource. Only the browse name is defined for this Method. The Method parameters are vendor specific.Optional