Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • There is a folder-type node for each PIVOT data. This folder is defined by:
    • NodeId ns=1;s=<PIVOT_ID>
    • BrowseName/DisplayName <PIVOT_ID>
    • IsOrganizedBy "Root.Objects" (= "i=85")
  • There is one variable Variable for each exposed filed of the PIVOT data:
    • NodeId ns=1;s=<PIVOT_ID>/<FieldName>
    • BrowseName/DisplayName <FieldName>
    • IsOrganizedBy ns=1;s=<PIVOT_ID>

...

Both TeleMeasure and TeleSignal use exactly the same OPC variables organization. They both represent data received from a south plugin and therefore only expose Read-Only Nodes.


NodeIdBrowseName/
DisplayName

IsOrganizedBy

NodeClass 
FieldName

ns=1;s=<PIVOT_ID>

/Cause

Causens=1;s=<PIVOT_ID>VariableUInt32
TypeReading fieldDefault valueDetails

ns=1;s=<PIVOT_ID>

<PIVOT_ID>

"Root.Objects"

(= "i=85")

Object 

do_idParent folder for each PIVOT data
Cause

UInt32

(Read-Only)

do_cotMandatorySee Cause of Transmission
ConfirmationBoolean

(Read-Only)

do_confirmationfalse
SourceString

(Read-Only)

do_
cot
source
MandatorySee Cause of Transmission

ns=1;s=<PIVOT_ID>

/Confirmation

Confirmationns=1;s=<PIVOT_ID>VariableBoolean
"process"

"process" | "substituted"

ComingFromString

(Read-Only)

do_comingfromMandatoryAny protocol name ("iec104" ,"opcua", ...)
TmOrgString

(Read-Only)

do_ts_
confirmationfalse

ns=1;s=<PIVOT_ID>

/Source

Sourcens=1;s=<PIVOT_ID>
org"genuine" "genuine" |  "substituted"
TmValidity
Variable
String

(Read-Only)

do_ts_
source
validity"
process"
good"

Validity of the Timestamp of Value

"

processString

good" | "

substituted"

ns=1;s=<PIVOT_ID>

/ComingFrom

ComingFromns=1;s=<PIVOT_ID>Variable

invalid" | "reserved" | "questionable"

DetailQualityUInt32

(Read-Only)

do_
comingfromMandatoryAny protocol name ("iec104" ,"opcua", ...)

ns=1;s=<PIVOT_ID>

/TmOrg

TmOrgns=1;s=<PIVOT_ID>VariableString

(Read-Only)

do_ts_org"genuine" "genuine" |  "substituted"

ns=1;s=<PIVOT_ID>

/TmValidity

TmValidityns=1;s=<PIVOT_ID>VariableString

(Read-Only)

do_ts_validity"good"

Validity of the Timestamp of Value

"good" | "invalid" | "reserved" | "questionable"

ns=1;s=<PIVOT_ID>

/DetailQuality

DetailQualityns=1;s=<PIVOT_ID>VariableUInt32

(Read-Only)

do_quality0

OR-Mask of following values:

quality0

OR-Mask of following values:

0x0001

0x0001

= badReference 
0x0002 = failure
0x0004 = inconsistent
0x0008 = innaccurate
0x0010 = oldData
0x0020 = oscillatory
0x0040 = outOfRange
0x0080 = overflow
0x1000 = test


0x2000 = operator blocked


0x2000 = operator blocked

TimeQuality

ns=1;s=<PIVOT_ID>

/TimeQuality

TimeQualityns=1;s=<PIVOT_ID>Variablens=1;s=<PIVOT_ID>
UInt32

(Read-Only)

do_ts_quality0

OR-Mask of following values:

0x01 = clockFailure
0x02 = clockNotSynch
0x04 = leapSecondKnown



/


SecondSinceEpoch
SecondSinceEpochns=1;s=<PIVOT_ID>Variable
UInt64

(Read-Only)

do_ts0Number
of seconds since Linux Epoch

ns=1;s=<PIVOT_ID>

/Value

Valuens=1;s=<PIVOT_ID>Variable
of seconds since Linux Epoch
Value(See below)

(Read-Only)

do_value

do_value_quality

Mandatory(See below)


TeleControl

The TeleControls represent commands received from an OPC UA client -connected to the North plugin- that must be sent to a south service. Therefore, they exposes expose Read/Write variables .that will be written by a client, except for the feedback of operation, which is Read-Only.

As a single PIVOT TC contains the information provided in several OPC variablesAs several OPC varaibles must be written to send a single TC, the following procedure has been defined to ensure atomicity of the operation. An OPC UA client must:

  • first write all relevant parameters in the TC variables. This can be done in a single OPC UA 'write' operation, The plugin will not check that all fields have been updated. This is under the repsonsibility of the OPC UA client.
  • then activate the command trigger , only if Trigger. This must be executed after the previous write operation was succesull for all nodes written.command was sucessfully completed.


FieldName
NodeIdBrowseName/
DisplayName

IsOrganizedBy

NodeClass 
TypeReading field
Default value

ns=1;s=<PIVOT_ID>

/Trigger

Triggerns=1;s=<PIVOT_ID>VariableUInt32
Details

ns=1;s=<PIVOT_ID>

<PIVOT_ID>

"Root.Objects"

(= "i=85")

Object 

Parent folder for each PIVOT data
Trigger

UInt32

N.A.Triggers the TC with current values of the variables related to the same PIVOT object.
Value(See below)TBD(See below)
ReplySame as Value

(Read-Only)
MandatorySee Cause of Transmission
TBD

Return value form the south equipment.


Common notes

  • With <PIVOT_ID> as provided in exchanged_data.datapoints[].pivot_id section configuration.
  • All read-only variables have a OpcUa_BadWaitingForInitialData quality (0x80320000) initial value until a valid value is received from FledgePower.
  • All non-mandatory values will be set automatically by the server if not received from a south device.
  • If a mandatory value is missing, then the whole PIVOT object is not updated.
  • As a standard OPC UA server, all functional data are organized under the Root.Objects  node of namespace 0 ( nodeId = i=85).
  • All data are stored under the namespace 1. Its URI is configured in protocol "namespaces" parameter.

...