The version information of an asset can consist of different information like the hardware version, potentially a software version when the asset is or contains software, and a revision counter. Those Propertiesare already defined in OPC 10000-100, at the same level where the identification is defined. Therefore, this specification uses those Propertiesas defined in OPC 10000-100. They can be deployed in the same way as the identification information as defined in section 7.
- HardwareRevisionproviding the revision level of the hardware
- SoftwareRevisionproviding the revision level of the software
- RevisionCounterproviding an incremental counter when the configuration of the asset has changed
For the usage of those Properties,different cases need to be distinguished.
- The asset is software without hardware. In this case, only the SoftwareRevisionis provided, and the HardwareRevisionis omitted.
- The asset is hardware without software. In this case, only the HardwareRevisionis provided, and the SoftwareRevisionis omitted.
- The asset is a combination of hard- and software. In this case, the following model approaches can be done
- Represent asset as one Object: The asset provides the HardwareRevisionand SoftwareRevision
- Represent software as sub-assets of hardware Object. This modelling approach makes specifically sense, if the software of the asset is not considered as one monolithic piece of software, but consists for example of firmware, drivers, applications, etc. In this case, the hardware is the main asset and the software components sub-assets. The main asset might contain a SoftwareRevisionwhich contains the overall revision of all software assets.
In Figure 4, examples for the different cases are shown. In the example, always the Identification Objectis used for grouping. The HardwareAsset only provides the HardwareRevision, the SoftwareAsset only the SoftwareRevision. The HardwareAndSoftwareAsset combines both and provides HardwareRevisionand SoftwareRevision. The HardwareAndSoftwareAssetWithSubAssets does provide a HardwareRevisionand an overall SoftwareRevision, and two sub-assets representing software assets, each containing a SoftwareRevision.
In order to provide patch information about the software components, OPC 10000-100defines the SoftwareVersionType. This is used for updating software via the OPC UA interface, using the SoftwareUpdate AddIn. In case the Serversupports the AddInfor the asset, the SoftwareVersionTypeshall be used as defined in OPC 10000-100to provide the patch information. In case, the Server does not support the AddInfor the asset, the Property2:PatchIdentifiersshould be provided on the same level as SoftwareRevisionwith the same semantic as defined on the SoftwareVersionType.