The LogbookType Object provides access to the Encoder’s fault buffer.
Table 22 – LogbookType Definition
Attribute |
Value |
||||
BrowseName |
LogbookType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the 0:BaseObjectType defined in OPC 10000-5. |
|||||
0:HasComponent |
Variable |
LogEntries |
LogEntryDataType[] |
0:BaseDataVariableType |
M, RO |
0:HasProperty |
Variable |
LogbookSize |
0:UInt16 |
0:PropertyType |
M, RO |
0:HasComponent |
Method |
DeleteLogbook |
|
|
O |
0:HasComponent |
Method |
GetFilteredLogbookEntries |
|
|
O |
0:HasComponent |
Method |
GetCurrentFaultSituation |
|
|
O |
0:HasComponent |
Method |
GetActiveDiagnosis |
|
|
O |
0:HasComponent |
Method |
GetHistoricFaultSituation |
|
|
O |
0:GeneratesEvent |
ObjectType |
LogbookEventType |
|
|
|
Conformance Units |
|||||
PNENC Logbook |
The LogEntries array Variable consists of LogEntryDataType structure elements. The array is limited to the maximum size specified by the LogbookSize Property. The array contains LogEntryDataType elements for events and starts with the most recent event (the element with the most recent EventComing timestamp). If the Server maintains different fault situations in its fault buffer (see [PDP] 6.3.8.3 Fault Buffer Mechanism), faults (events) which are still present after an acknowledge generate a new entry in the actual fault situation causing more than one entry with the same EventNumber for one event.
The LogbookSize Property contains the maximum length of the LogEntries array. The actual length of the array may be smaller.
Clients must lock the parent EncoderChannelType Object before invoking a Method of the LogbookType Object.
The DeleteLogbook Method clears the LogEntries array and resets the fault buffer of the Encoder Object. The security constraints defined in chapter 6.6 apply.
Signature
DeleteLogbook (
);
The Method Result Codes (defined in Call Service) are defined in Table 23.
Table 23 – Possible Method Result Codes
Result Code |
Description |
Good |
The Method execution was successful. |
Bad_UserAccessDenied |
The user has not the right to execute the Method. |
Bad_Locked |
The parent EncoderChannelType Object is locked by a different Client’s Session. |
Bad_RequiresLock |
The parent EncoderChannelType Object is not locked. Clients must lock the parent EncoderChannelType Object before invoking a Method. |
Bad_UnexpectedError |
The Server is not able to execute the function because an unexpected error occurred. The Device might be temporarily unavailable or unreachable due to network failure. |
The GetFilteredLogbookEntries Method returns a LogEntries array matching the filter criteria. Method invocation shall be possible for all users (read-only).
Signature
GetFilteredLogbookEntries (
[in] 0:Byte LogbookFilterOptions,
[in] 0:Byte FaultSituationNumber
[in] EventTypeEnumeration EventType,
[in] 0:Int32 EventCode,
[in] 0:Duration EventAppearanceInterval,
[out] LogEntryDataType[] FilteredLogEntries
);
Argument |
Description |
LogbookFilterOptions |
Parameter allowing to restrict the returned logbook entries to those having valid EventGoing and/or EventAcknowledged timestamps. If set to 1 (“GOING” filter), only logbook entries with valid EventGoing timestamp are returned. If set to 2 (“ACKNOWLEDGED” filter), only entries with valid EventAcknowledged timestamp are returned. If set to 3, the logic applied is “AND”: only logbook entries meeting both filter criteria are returned. Set to 0 if no filtering shall be applied. If a value greater than 3 is passed, the Method Result Code shall be set to Bad_InvalidArgument. |
FaultSituationNumber |
Restricts the returned logbook entries to those with the FaultSituationNumber field equal to this parameter. Passing 255 means “don’t care”. |
EventType |
Restricts the returned logbook entries to those with the EventType field equal to this parameter. Passing “UNSPECIFIED” means “don’t care”. |
EventCode |
Restricts the returned logbook entries to those with the EventCode field equal to this parameter (See Table 69 fault codes). Passing 0 means “don’t care”. |
EventAppearanceInterval |
Time interval encoded as 0:Duration defined in [OPC 10000-3]. Restricts the returned logbook entries to those appearing within a timespan from the past up to now. The EventComing field of the logbook entries is used for checking this filter. Passing 0 means “don’t care”. |
FilteredLogEntries |
Array containing the logbook entries matching all filter criteria passed with the first 5 parameters. An empty array is returned if no logbook entry matches the filter criteria. |
The Method Result Codes (defined in Call Service) are defined in Table 24.
Table 24 – Possible Method Result Codes
Result Code |
Description |
Good |
The Method execution was successful. |
Bad_InvalidArgument |
The Server is unable to execute the Method due to invalid arguments. For instance, the EventCode passed may be unknown. |
Bad_Locked |
The parent EncoderChannelType Object is locked by a different Client’s Session. |
Bad_RequiresLock |
The parent EncoderChannelType Object is not locked. Clients must lock the parent EncoderChannelType Object before invoking a Method. |
Bad_UnexpectedError |
The Server is not able to execute the function because an unexpected error occurred. The Device might be temporarily unavailable or unreachable due to network failure. |
The GetCurrentFaultSituation Method returns all log entries which occurred since the last acknowledge as LogEntries array. Starting with the most recent one, all log entries without valid EventAcknowledged timestamp are returned. Method invocation shall be possible for all users (read-only).
Signature
GetCurrentFaultSituation (
[out] LogEntryDataType[] CurrentLogEntries
);
Argument |
Description |
CurrentLogEntries |
Array containing the log entries occurred since the last acknowledge. An empty array is returned if no logbook entry matches the filter criteria. |
The Method Result Codes (defined in Call Service) are defined in Table 25.
Table 25 – Possible Method Result Codes
Result Code |
Description |
Good |
The Method execution was successful. |
Bad_Locked |
The parent EncoderChannelType Object is locked by a different Client’s Session. |
Bad_RequiresLock |
The parent EncoderChannelType Object is not locked. Clients must lock the parent EncoderChannelType Object before invoking a Method. |
Bad_UnexpectedError |
The Server is not able to execute the function because an unexpected error occurred. The Device might be temporarily unavailable or unreachable due to network failure. |
The GetHistoricFaultSituation Method returns a LogEntries array with valid EventGoing field. Method invocation shall be possible for all users (read-only).
Signature
GetHistoricFaultSituation (
[in] 0:Byte FaultSituationNumber,
[out] LogEntryDataType[] HistoricLogEntries
);
Argument |
Description |
FaultSituationNumber |
Fault situation number the faults belong to. 0 identifies the current situation, 1 the historic situation preceding the current situation, and so on (see explanation below). |
HistoricLogEntries |
Array containing the log entries with valid EventGoing field entry. An empty array is returned if no logbook entry matches the filter criteria. |
The Method Result Codes (defined in Call Service) are defined in Table 26.
Table 26 – Possible Method Result Codes
Result Code |
Description |
Good |
The Method execution was successful. |
Bad_InvalidArgument |
The fault situation specified by FaultSituationNumber does not exist. |
Bad_Locked |
The parent EncoderChannelType Object is locked by a different Client’s Session. |
Bad_RequiresLock |
The parent EncoderChannelType Object is not locked. Clients must lock the parent EncoderChannelType Object before invoking a Method. |
Bad_UnexpectedError |
The Server is not able to execute the function because an unexpected error occurred. The Device might be temporarily unavailable or unreachable due to network failure. |
The GetActiveDiagnosis Method returns a LogEntries array containing log entries belonging to the current fault situation (log entries with FaultSituationNumber equal to 0) with valid EventComing timestamp, but with missing EventGoing timestamp. The method returns a subset of the entries returned by the GetCurrentFaultSituation Method. Method invocation shall be possible for all users (read-only).
Signature
GetActiveDiagnosis (
[out] LogEntryDataType[] ActiveDiagnosis
);
Argument |
Description |
ActiveDiagnosis |
Array containing the log entries with missing EventGoing field entry. An empty array is returned if no logbook entry matches the filter criteria. |
The Method Result Codes (defined in Call Service) are defined in Table 25.
Table 27 – Possible Method Result Codes
Result Code |
Description |
Good |
The Method execution was successful. |
Bad_Locked |
The parent EncoderChannelType Object is locked by a different Client’s Session. |
Bad_RequiresLock |
The parent EncoderChannelType Object is not locked. Clients must lock the parent EncoderChannelType Object before invoking a Method. |
Bad_UnexpectedError |
The Server is not able to execute the function because an unexpected error occurred. The Device might be temporarily unavailable or unreachable due to network failure. |
The Server might provide the Client with information about new incidents by sending LogbookEventType Events.