.NET Based OPC UA Client/Server SDK  3.0.10.493
UnifiedAutomation.UaServer.BaseAnalogModel Class Reference

This VariableType is the base type for analog items More...

Inherits UnifiedAutomation.UaServer.DataItemModel.

Inherited by UnifiedAutomation.UaServer.AnalogItemModel, UnifiedAutomation.UaServer.AnalogUnitModel, and UnifiedAutomation.UaServer.BaseAnalogModel< T >.

Public Member Functions

 BaseAnalogModel ()
 Initializes a new instance of the BaseAnalogModel class. More...
 
 BaseAnalogModel (BaseAnalogModel template)
 Initializes a new instance of the BaseAnalogModel class. More...
 
- Public Member Functions inherited from UnifiedAutomation.UaServer.DataItemModel
 DataItemModel ()
 Initializes a new instance of the DataItemModel class. More...
 
 DataItemModel (DataItemModel template)
 Initializes a new instance of the DataItemModel class. More...
 
- Public Member Functions inherited from UnifiedAutomation.UaServer.BaseDataVariableModel
 BaseDataVariableModel ()
 Initializes a new instance of the BaseDataVariableModel class. More...
 
 BaseDataVariableModel (BaseDataVariableModel template)
 Initializes a new instance of the BaseDataVariableModel class. More...
 
- Public Member Functions inherited from UnifiedAutomation.UaServer.BaseVariableModel
 BaseVariableModel ()
 Initializes a new instance of the BaseVariableModel class. More...
 
 BaseVariableModel (BaseVariableModel template)
 Initializes a new instance of the BaseVariableModel class. More...
 
- Public Member Functions inherited from UnifiedAutomation.UaServer.ModelControllerBase
virtual ModelHandle GetModelHandle (StringTable namespaceUris, object instance)
 Gets the metadata handle. More...
 
virtual DataValue GetValue (IMapperContext context, ModelMapping mapping)
 Gets the value associated with the mapping. More...
 
virtual bool SetValue (IMapperContext context, ModelMapping mapping, DataValue value)
 Sets the value associated with the mapping. More...
 

Properties

EUInformation EngineeringUnits [get, set]
 Specifies the units for the AnalogItem value (e.g., DEGC, hertz, seconds). More...
 
Range EURange [get, set]
 Defines the value range likely to be obtained in normal operation. More...
 
Range InstrumentRange [get, set]
 Defines the value range that can be returned by the instrument. More...
 
- Properties inherited from UnifiedAutomation.UaServer.DataItemModel
string Definition [get, set]
 A vendor-specific, human readable string that specifies how the value of this DataItem is calculated. More...
 
double ValuePrecision [get, set]
 Specifies the maximum precision that the server can maintain for the item based on restrictions in the target environment. More...
 
- Properties inherited from UnifiedAutomation.UaServer.BaseVariableModel
object Value [get, set]
 Gets or sets the value. More...
 
- Properties inherited from UnifiedAutomation.UaServer.ModelControllerBase
ModelHandle ModelHandle [get, set]
 Gets or sets the metadata handle. More...
 
object UserData [get, set]
 Gets or sets the user data. More...
 

Detailed Description

This VariableType is the base type for analog items

All Properties are optional. Subtypes of this base type will mandate some of the Properties. The BaseAnalogType derives from the DataItemType.

The StatusCode delivered with the value also contains an informational bit called SemanticsChanged. Servers that implement Data Access shall set this Bit in notifications if EURange (could change the behaviour of a Subscription if a PercentDeadband filter is used) or EngineeringUnits (could create problems if the client uses the value to perform calculations) Properties are changed. Clients that use any of these Properties should re-read them before they process the data value.

In addition a server can send SemanticChangeEvents if the value of the properties EURange and EngineeringUnits are changed. To indicate this capability, the SemanticChange flag must be set in the AccessLevel and UserAccessLevel attributes of this variable.

Constructor & Destructor Documentation

UnifiedAutomation.UaServer.BaseAnalogModel.BaseAnalogModel ( )
inline

Initializes a new instance of the BaseAnalogModel class.

UnifiedAutomation.UaServer.BaseAnalogModel.BaseAnalogModel ( BaseAnalogModel  template)
inline

Initializes a new instance of the BaseAnalogModel class.

Parameters
templateThe template.

Property Documentation

EUInformation UnifiedAutomation.UaServer.BaseAnalogModel.EngineeringUnits
getset

Specifies the units for the AnalogItem value (e.g., DEGC, hertz, seconds).

Understanding the units of a measurement value is essential for a uniform system. In an open system in particular where servers from different cultures might be used, it is essential to know what the units of measurement are. Based on such knowledge, values can be converted if necessary before being used. Therefore, although defined as optional, support of the EngineeringUnits Property is strongly advised.

To facilitate interoperability, OPC UA specifies how to apply the widely accepted “Codes for Units of Measurement (Recommendation No. 20)” published by the “United Nations Centre for Trade Facilitation and Electronic Business” (see UN/CEFACT). It uses and is based on the International System of Units (SI Units) but in addition provides a fixed code that can be used for automated evaluation. This recommendation has been accepted by many industries on a global basis.

The class UaEUInformation provides helper functions to create the unit information from a unitId provided as enumeration. The methods are UaEUInformation::fromUnitId and UaEUInformation::setEUInformation.

Range UnifiedAutomation.UaServer.BaseAnalogModel.EURange
getset

Defines the value range likely to be obtained in normal operation.

It is intended for such use as automatically scaling a bar graph display. Sensor or instrument failure or deactivation can result in a returned item value which is actually outside of this range. Client software must be prepared to deal with this possibility. Similarly a client may attempt to write a value that is outside of this range back to the server. The exact behaviour (accept, reject, clamp, etc.) in this case is server-dependent. However, in general servers shall be prepared to handle this.

The EURange is also used as base for the calculation of the PercentDeadband.

Range UnifiedAutomation.UaServer.BaseAnalogModel.InstrumentRange
getset

Defines the value range that can be returned by the instrument.

Although defined as optional, it is strongly recommended for Servers to support this Property. Without an InstrumentRange being provided, Clients will commonly assume the full range according to the DataType.


The documentation for this class was generated from the following file: