< PreviousField Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5 , Ed. 1.2.0, 22 Jul 2019 Page 59 of 67 SCALING_FACTOR If the EDD includes a SCALING_FACTOR attribute for an EDD VARIABLE it shall be mapped as follows. • The Parameter value and associated Properties (like Ranges) shall be exposed in raw format (not scaled by the FDI Server). Any scaling is responsibility of the FDI Client (or UIP, respectively). • The SCALING_FACTOR shall be provided in a Property with the BrowseName “ScalingFactor”. The DataType shall be “Double”. If the SCALING_FACTOR in the EDD is an expression, this expression will be computed by the EDD Interpreter. • The SCALING_FACTOR is also included in UID documents. EDDL CLASS Attributes on Parameters The EddlDictionary Object is a dictionary with the purpose of representing EDDL CLASS Attributes for Parameters. “HasDictionaryEntry” references are used to associate a parameter with EDDL CLASS attributes. Note that only these EDDL CLASS attributes are mapped to the FDI Information Model, that are used in a consistent way by EDDL implementations. The OPC UA types and objects are defined in the next tables. Table 51 – Definition of EddlDictionaryType Attribute Value BrowseName EddlDictionaryEntryType IsAbstract FALSE References NodeClass BrowseName DataType TypeDefinition Modelling Rule SubType of DictionaryEntry defined in OPC UA for Devices (DI) Part 100 Table 52 – Definition of EddlDictionary Object Attribute Value BrowseName EddlDictionary References NodeClass BrowseName DataType TypeDefinition Modelling Rule Component of the DataDictionaries Object defined in DI spec HasTypeDefinition ObjectType DictionaryFolderType HasComponent Object ParameterClass DictionaryFolderType Table 53 – Definition of Parameter Class Attributes Attribute Value BrowseName ParameterClass References NodeClass BrowseName DataType TypeDefinition Modelling Rule HasTypeDefinition ObjectType DictionaryFolderType HasComponent Object Alarm EddlDictionaryEntryType Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5, Ed. 1.2.0, 22 Jul 2019 Page 60 of 67 HasComponent Object Contained EddlDictionaryEntryType HasComponent Object Correction EddlDictionaryEntryType HasComponent Object Device EddlDictionaryEntryType HasComponent Object Diagnostic EddlDictionaryEntryType HasComponent Object Dynamic EddlDictionaryEntryType HasComponent Object Input EddlDictionaryEntryType HasComponent Object Local EddlDictionaryEntryType HasComponent Object Operate EddlDictionaryEntryType HasComponent Object Output EddlDictionaryEntryType HasComponent Object Service EddlDictionaryEntryType HasComponent Object Specialist EddlDictionaryEntryType HasComponent Object Temporary EddlDictionaryEntryType HasComponent Object Tune EddlDictionaryEntryType To illustrate the model an example is shown in the next diagram. DictionaryEntryT ype EddlDictionaryEn tryType DictionaryFolder Type EddlDictionary DataDictionaries ParameterClass es Local Diagnostics Dynamic Parameter1 ParameterSet hasDictionaryEntry hasDictionaryEntry Device Figure 23 – Example of EDDL CLASS Attributes in the FDI OPC UA Information Model Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5 , Ed. 1.2.0, 22 Jul 2019 Page 61 of 67 15.7 Functional Groups FunctionalGroups are used to group Variables (EDDL parameters) or Actions (EDDL methods). They have a recursive definition, that is, FunctionalGroups may reference other FunctionalGroups. Both Devices and Blocks may have FunctionalGroups. EDDL MENUs, EDDL BLOCK_A PARAMETERS, COLLECTIONs, and REFERENCE ARRAYS are the building blocks for FunctionalGroups.The proper attributes of these EDDL constructs control which elements are referenced by the Functional Group. • VARIABLE, RECORD, or VALUE_ARRAY will cause a reference to the corresponding FDI Parameter. • METHODs will be used to organise FDI Action Objects. • Elements that represent one of the bulding blocks again will cause a reference to a subordinate Functional Group. Root MENUs as defined in FCG TS61804-4 will be top-level Functional Groups. The FDI Server generates the whole hierarchy of FunctionalGroups by browsing the EDDL MENU and their ITEMS attribute definitions. The FunctionalGroups reproduce the same structure of the MENUs as they are defined in EDD for the Device or Block. All FunctionalGroups are instantiated in both the offline and the online representation of a Device. Naming conventions defined in FCG TS61804-4 can be used to determine if a FunctionalGroup is relevant for offline or online. The BrowseName Attribute of a FunctionalGroup is the EDD identifier of the menu or the instance identifier of the block. The naming conventions defined in FCG TS61804-4 can be used to determine if a FunctionalGroup is relevant for PC or handheld. The DisplayName Attribute of a FunctionalGroup is the LABEL attribute of the corresponding building block. The Description Attribute of a FunctionalGroup is the value of the HELP attribute of the corresponding building block. Bad_AttributeIdInvalid shall be used if the EDD contains no Help. FunctionalGroups exposing standard sets of Parameters such as diagnostic information will be created for an EDD, which comply with the menu conventions for PC-based application as defined in FCG TS61804-4. 15.8 AXIS elements in UIDs AXIS elements are not represented as instances in the FDI information model. However, an EDDL AXIS has writable VIEW_MIN/VIEW_MAX attributes. They shall be modified by the FDI Client to inform the server about the zooming, scrolling or positioning. To enable this modification, the FDI Server shall create variable nodes for each of these attributes in the Information Model. They need not be browsable. The NodeIds of these nodes are included into the UID document as described in the UID schema. 15.9 Actions FDI Actions are used to represent EDD METHODs. Only EDD METHODs that are to be called by the FDI Client as part of a UID or a UIP shall be exposed as FDI Actions. If METHODs defined in FCG TS61804-3, which include the pre or post read, edit and write actions are exposed as Actions, they shall not be browsable. The names of these actions will be communicated to the Client as part of a UID document. These names can be passed to TranslateBrowsePathsToNodeIds to get the matching NodeId. All Actions are instantiated in both the offline and the online representation of a Device. The BrowseName Attribute of an Action is the EDD identifier of the METHOD. Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5, Ed. 1.2.0, 22 Jul 2019 Page 62 of 67 The DisplayName Attribute of an Action is the LABEL attribute of the EDDL METHOD. The Description Attribute of an Action is the HELP attribute of the EDDL METHOD. Bad_AttributeIdInvalid shall be used if the EDD contains no Help. The execution of an Action causes the execution of the EDD Method implementation. This is specified in detail in FCG TS62769-2. The METHODs specified in an FDI Package may be declared private using the PRIVATE Attribute specified in FCG TS61804-3. The FDI Server shall create Action Objects in the Information Model for the private METHODs but they shall not be browsable. The FDI Server shall return the NodeIds of private Actions when the name of such an Action is passed to TranslateBrowsePathsToNodeIds (the startingNode argument shall be the “ActionSet” Object). Once the FDI Client has obtained the NodeId, private Actions can be invoked and processed in the same way as public (browsable) Actions. 15.10 UIPs UIPs are specified in the FDI Package via the SupportedUIPs element. Each UIP is uniquely identified by a UUID. UIPs are not exposed in the FDI AddressSpace but they can be referenced and accessed using the UUID. This is specified in FCG TS62769-2. 15.11 Protocols, Networks and Connection Points The FDI Server will create specific Protocol Types (sub-type of the ProtocolType defined in IEC 62541-100) for natively supported Protocols. Additional Protocol Types might be created for Communication Servers based on the Protocols they support. Specific ConnectionPoint Types (sub-types of the ConnectionPointType defined in IEC 62541-100) will be created for natively supported Protocols. Additional Types might be created for Communication Servers based on the Protocols they support. The types are created as specified in the protocol-specific series of standards FCG TS62769-1xx. 15.12 Semantic Identifies Semantic identifiers based on the identification schema ISO29005 are mapped to EDDL constructs (e.g. COLLECTION, VARIABLE) by the EDDL construct SEMANTIC_MAP (see FCG TS61804-3). In the OPC-UA address space the semantic identifiers are represented by concrete object types derived from the abstract type DictionaryEntryType. The concrete reference type HasDictionaryEntry binds the semantic object to the OPC-UA object representing the EDDL construct (e.g. COLLECTION, VARIABLE). SEMANTIC_MAP can also be used to map enumeration items to semantic identifiers (e.g. units). The EDDL SEMANTIC_MAP construct maps a list (one or more) keys to a list (one or more) values. The keys are data dictionary ids and the values are EDDL item identifier. A DictionaryEntryType Object is created for each key term (data dictionary id) of the EDDL SEMANTIC_MAP. The key value is mapped to the BrowseName and NodeId property of the DictionaryEntryType Object. A HasDictionaryEntry reference is created for each value listed in the EDDL SEMANTIC_MAP construct with the SourceNode set to the NodeId of the OPC UA object representing EDDL item identified. DictionaryIds Property For enumerated Variables or Enumeration DataTypes (see FCG TS61804-3) the enumeration values may have a specific reference to a dictionary entry. To express this, Enumeration and OptionSet DataTypes or Variables with VariableTypes like MultiStateDiscreteType, MultiStateValueDiscreteType or OptionSetType reference an Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5 , Ed. 1.2.0, 22 Jul 2019 Page 63 of 67 additional Property with the BrowseName DictionaryIds which provides a Value with an array of DataType NodeId where each array item contains the NodeId of the corresponding DictionaryEntryType Object. The DictionaryIds Property is formally defined in Table 54. Table 54 - DictionaryIds Definition Attribute Value BrowseName DictionaryIds IsAbstract False TypeDefinition PropertyType DataType NodeId[] MultiStateDictionaryEntryDiscreteType This VariableType defines the general characteristics of a DiscreteItem that can have more than two states including semantic definitions. The MultiStateDictionaryEntryDiscreteType derives from the MultiStateDiscreteType. It is formally defined in Table 55. Table 55 - MultiStateDictionaryEntryDiscreteType definition Attribute Value BrowseName MultiStateDictionaryEntryDiscreteType NodeClass VariableType ValueRank Scalar DataType UInteger IsAbstract FALSE References NodeClass BrowseName DataType TypeDefinition ModellingRule Subtype of the MultiStateDiscreteType defined in IEC 62541-8; i.e the Properties of that type are inherited. HasProperty Variable EnumDictionary Entries NodeId[][] PropertyType Optional HasProperty Variable ValueAsDictionary Entries NodeId[] PropertyType Mandatory EnumDictionaryEntries is a two-dimensional array of NodeIds. The first dimension is used to list all possible dictionary entry values for the related variable in a specific dictionary (e.g. CDD or eCl@ss). The second dimension is used to reference this dictionary. The size of the first array dimension shall be the same as the size of EnumStrings. ValueAsDictionaryEntries provides a list of all dictionary entry values in the different dictionaries related to the current value of the variable. If an instance of this type is writeable the property ValueAsDictionaryEntries shall be writeable as well. Clients are allowed to write an array with only one entry and the server is responsible to resolve additional appropriate entries. This will have the same result as writing the value attribute, but the client does not need knowledge about the numeric values. The NodeIds represent the dictionary entries and can be generated with dictionary knowledge. GetNodeIdsByDictionaryEntryId GetNodeIdsBySemanticId is a custom query used to get the NodeIds for nodes that have a HasDictionaryEntry Reference to a DictionaryEntryType Object matching the provided DictionaryEntryId. The method returns only nodes that are referenced by the StartingNode with the defined ReferenceType. Signature GetNodeIdsByDictionaryEntryId ( [in] NodeId StartingNode [in] NodeId ReferenceType [in] NodeId DictionaryEntryId Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5, Ed. 1.2.0, 22 Jul 2019 Page 64 of 67 [out] NodeId[] Nodes ); Argument Description StartingNode A NodeId defining the starting node for the query. ReferenceType A NodeId defining the Reference Type to take into account for the query. DictionaryEntryId A NodeId defining the DictionaryEntry Object that represents the queried dictionary entry. Nodes Contains an Array of NodeIds of the nodes that match the provided query parameters. Method Result Codes (defined in Call Service) Result Code Description Bad_InvalidArgument See IEC 62541-4 for a general description. Invalid file handle in call. Bad_NotWritable See IEC 62541-4 for a general description. File might be locked and thus not writable. Bad_InvalidState See IEC 62541-4 for a general description. File was not opened for write access. Table 56 specifies the AddressSpace representation for the GetNodeIdsByDictionaryEntryId Method. Table 56 - GetNodeIdsByDictionaryEntryId Attribute Value BrowseName GetNodeIdsByDictionaryEntryId References NodeClass BrowseName DataType TypeDefinition ModellingRule HasProperty Variable InputArguments Argument[] PropertyType Mandatory HasProperty Variable OutputArguments Argument[] PropertyType Mandatory 16 Profiles This chapter defines the profiles and conformance units for the OPC UA Information Model for FDI Clients and FDI Servers. Profiles are named groupings of conformance units. Facets are profiles that will be combined with other Profiles to define the complete functionality of an OPC UA Server or Client. FDI Servers (FDI Hosts) that implement a subset of the FDI Information Model that is relevant for generic OPC UA Clients shall implement as a minimum the BaseDevice_Server_Facet specified in IEC 62541-100 (OPC UA for Devices).IEC 62541-100 Table 57 specifies the facet for FDI Servers (FDI Hosts) that support FDI Clients. Table 57 – FDI Server Facet Definition Conformance Unit Description Optional/ Mandatory FDI Information Model Support Objects that conform to the Types specified in this standard and in IEC 62541-100. M Table 58 defines the facet for FDI Clients that use the FDI Information Model. Table 58 –FDI Client Facet Definition Conformance Unit Description Optional/ Mandatory FDI Client Information Model Consume Objects that conform to the Types specified in this standard and in IEC 62541-100. M Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5 , Ed. 1.2.0, 22 Jul 2019 Page 65 of 67 Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5, Ed. 1.2.0, 22 Jul 2019 Page 66 of 67 Annex A (normative) Namespace and Mappings This appendix defines the numeric identifiers for all of the numeric NodeIds defined in this standard. The identifiers are specified in a CSV file with the following syntax: <SymbolName>, <Identifier>, <NodeClass> Where the SymbolName is either the BrowseName of a Type Node or the BrowsePath for an Instance Node that appears in the specification and the Identifier is the numeric value for the NodeId. The BrowsePath for an Instance Node is constructed by appending the BrowseName of the instance Node to the BrowseName for the containing instance or type. An underscore character is used to separate each BrowseName in the path. The NamespaceUri http://fdi-cooperation.com/OpcUa/FDI5/ is applied to NodeIds defined here. An electronic version of the complete Information Model defined in this standard is also provided. It follows the XML Information Model Schema syntax defined in IEC 62541-6. The Information Model Schema released with this version of the standard is in a separate file with name: OPCUA_Part5_Model_V1.1\ Opc.Ua.Fdi5.NodeSet2.xml Field Device Integration (FDI) – Part 5: Information Model RELEASED FCG TS62769-5 , Ed. 1.2.0, 22 Jul 2019 Page 67 of 67 Bibliography IEC TR 62541-1, OPC unified architecture – Part 1: Overview and Concepts IEC 62541-7, OPC unified architecture – Part 7: Profiles NAMUR NE107, Self-Monitoring and Diagnosis of Field Devices < available at www.namur.de > _____________ Next >