From cdc57c34bc82fa9e8d4514af819a77c3cef40fb3 Mon Sep 17 00:00:00 2001 From: "Federico M. Facca" Date: Mon, 9 Oct 2023 08:05:12 +0200 Subject: [PATCH] use root folder for .prettierignore Buf re-generated protos docs(release_notes): update RELEASE_NOTES.md --- .github/config/.prettierignore | 1 - RELEASE_NOTES.md | 5 + docs/data.proto.md | 100 ++++++++++---------- docs/fault.proto.md | 163 +++++++++++++++++---------------- 4 files changed, 138 insertions(+), 131 deletions(-) delete mode 100644 .github/config/.prettierignore diff --git a/.github/config/.prettierignore b/.github/config/.prettierignore deleted file mode 100644 index a188e06..0000000 --- a/.github/config/.prettierignore +++ /dev/null @@ -1 +0,0 @@ -docs/* diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index d1686de..928d42f 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -5,3 +5,8 @@ ### Features - Add protocol buffer to describe faults (PR #3 by @chicco785) + +### Refactoring + +- Migrate existing protobuf from + `https://github.com/zaphiro-technologies/rabbitmq-poc` (PR #2 by @chicco785) diff --git a/docs/data.proto.md b/docs/data.proto.md index fb1b9c9..7afce1c 100644 --- a/docs/data.proto.md +++ b/docs/data.proto.md @@ -20,55 +20,55 @@ ## Enum: DataType
FQN: data.v1.DataType
-
The collection of Data Types defined so far. They are useful to map
measurements to their rappresentation. This is important since all measurements
are any how cast to UINT64 in the real time platform
- -| Name | Ordinal | Description | -|---------------------------------------|---------|------------------------------------------------------------------| -| DATA_TYPE_UNSPECIFIED | 0 | No type define | -| DATA_TYPE_ACTIVE_POWER | 1 | Active Power. It maps to an Analog. | -| DATA_TYPE_ANGLE | 2 | Angle. It maps to an Analog. | -| DATA_TYPE_AUTOMATIC | 3 | Automatic. It maps to Discrete (True or False). | -| DATA_TYPE_BOOLEAN | 4 | Booleam. It maps to Discrete (True or False). | -| DATA_TYPE_CONFIG_CHANGE | 5 | Configuration change. It maps to Discrete (True or False). | -| DATA_TYPE_CURRENT_SEQUENCE_NEGATIVE | 6 | Current sequence negative. It maps to Phasor. | -| DATA_TYPE_CURRENT_SEQUENCE_POSITIVE | 7 | Current sequence positive. It maps to Phasor. | -| DATA_TYPE_CURRENT_SEQUENCE_ZERO | 8 | Current sequence zero. It maps to Phasor. | -| DATA_TYPE_DATA_ERROR | 9 | Data error.It maps to Discrete (True or False). | -| DATA_TYPE_DATA_MODIFIED | 10 | Data modified. It maps to Discrete (True or False). | -| DATA_TYPE_DATA_SORTING | 11 | Data sorting. It maps to Discrete. | -| DATA_TYPE_ENERGY | 12 | Energy. It maps to an Analog. | -| DATA_TYPE_FREQUENCY | 13 | Frequency. It maps to an Analog. | -| DATA_TYPE_LINE_CURRENT | 14 | Line current. It maps to an Analog. | -| DATA_TYPE_LINE_TO_LINE_VOLTAGE | 15 | Line to line voltage. It maps to an Analog. | -| DATA_TYPE_LOCAL_OPERATION | 16 | Local operation. It maps to Discrete. | -| DATA_TYPE_OPERATION_COUNT | 17 | Operation counter. It maps to Discrete. | -| DATA_TYPE_PACKET_LATENCY | 18 | Packet latency. It maps to Analog. | -| DATA_TYPE_PHASE_VOLTAGE | 19 | Phase voltage. It maps to Analog. | -| DATA_TYPE_PHASOR_CURRENT | 20 | Phasor current. It maps to Phasor. | -| DATA_TYPE_PHASOR_VOLTAGE | 21 | Phasor voltage. It maps to Phasor. | -| DATA_TYPE_PMU_SYNC | 22 | PMU synchornized. It maps to Discrete (True or False) | -| DATA_TYPE_PMU_TIME_QUALITY | 23 | PMU Time Quality. It maps to Discrete | -| DATA_TYPE_PMU_TRIGGER_DETECTED | 24 | PMU Trigger Detected. It maps to Discrete (True or False) | -| DATA_TYPE_POWER | 25 | Power. It maps to Analog. | -| DATA_TYPE_POWER_FACTOR | 26 | Power factor. It maps to Analog. | -| DATA_TYPE_PRESSURE | 27 | Pressure. It maps to Analog. | -| DATA_TYPE_RATE_OF_CHANGE_OF_FREQUENCY | 28 | Rate of change of frequency. It maps to Analog. | -| DATA_TYPE_REACTIVE_POWER | 29 | Reactive Power. It maps to Analog. | -| DATA_TYPE_SWITCH_POSITION | 30 | Swith position. It maps to Discrete (True or False). | -| DATA_TYPE_TAP_POSITION | 31 | Tap position. It maps to Discrete. | -| DATA_TYPE_TEMPERATURE | 32 | Temperature. It maps to Analog. | -| DATA_TYPE_THREE_PHASE_ACTIVE_POWER | 33 | Three phase active power. It maps to Analog. | -| DATA_TYPE_THREE_PHASE_CURRENT | 34 | Three phase current. It maps to Analog. | -| DATA_TYPE_THREE_PHASE_POWER | 35 | Three phase power. It maps to Analog. | -| DATA_TYPE_THREE_PHASE_POWER_FACTOR | 36 | Three phase power factor. It maps to Analog. | -| DATA_TYPE_THREE_PHASE_REACTIVE_POWER | 37 | Three phase reactive power. It maps to Analog. | -| DATA_TYPE_TRIGGER_REASON | 38 | Trigger reason. It maps to Discrete. | -| DATA_TYPE_UNLOCKED_TIME | 39 | Unlocked time. //Three phase active power. It maps to Discrete. | -| DATA_TYPE_VOLTAGE_SEQUENCE_NEGATIVE | 40 | Voltage sequence negative. It maps to Phasor. | -| DATA_TYPE_VOLTAGE_SEQUENCE_POSITIVE | 41 | Voltage sequence positive. It maps to Phasor. | -| DATA_TYPE_VOLTAGE_SEQUENCE_ZERO | 42 | Voltage sequence zero. It maps to Phasor. | -| DATA_TYPE_DISCRETE | 43 | Discrete. It maps to Discrete. | -| DATA_TYPE_ANALOG | 44 | Analog.It maps to Analog. | +
The collection of Data Types defined so far. They are useful to map
measurements to their rappresentation. Some of the descriptions are taken from [here](https://github.com/digin-energi/Grunnprofil/blob/develop/DIGIN10/docs/MeasurementType.adoc) This is important since all measurements
are any how cast to UINT64 in the real time platform
+ +| Name | Ordinal | Description | +|---------------------------------------|---------|--------------------------------------------------------------------------| +| DATA_TYPE_UNSPECIFIED | 0 | No type define | +| DATA_TYPE_ACTIVE_POWER | 1 | Real power in a non-three phase circuit. It maps to an Analog. | +| DATA_TYPE_ANGLE | 2 | Angle between voltage and current. It maps to an Analog. | +| DATA_TYPE_AUTOMATIC | 3 | Automatic operation (not manual). It maps to Discrete (True or False). | +| DATA_TYPE_BOOLEAN | 4 | Boolean. It maps to Discrete (True or False). | +| DATA_TYPE_CONFIG_CHANGE | 5 | Configuration change. It maps to Discrete (True or False). | +| DATA_TYPE_CURRENT_SEQUENCE_NEGATIVE | 6 | Current sequence negative. It maps to Phasor. | +| DATA_TYPE_CURRENT_SEQUENCE_POSITIVE | 7 | Current sequence positive. It maps to Phasor. | +| DATA_TYPE_CURRENT_SEQUENCE_ZERO | 8 | Current sequence zero. It maps to Phasor. | +| DATA_TYPE_DATA_ERROR | 9 | Data error. It maps to Discrete (True or False). | +| DATA_TYPE_DATA_MODIFIED | 10 | Data modified. It maps to Discrete (True or False). | +| DATA_TYPE_DATA_SORTING | 11 | Data sorting. It maps to Discrete. | +| DATA_TYPE_ENERGY | 12 | Energy. It maps to an Analog. | +| DATA_TYPE_FREQUENCY | 13 | Frequency. It maps to an Analog. | +| DATA_TYPE_LINE_CURRENT | 14 | Line current. It maps to an Analog. | +| DATA_TYPE_LINE_TO_LINE_VOLTAGE | 15 | Line to line voltage. It maps to an Analog. | +| DATA_TYPE_LOCAL_OPERATION | 16 | Local operation (not remote). It maps to Discrete. | +| DATA_TYPE_OPERATION_COUNT | 17 | Operation count – typically for switches. It maps to Discrete. | +| DATA_TYPE_PACKET_LATENCY | 18 | Packet latency. It maps to Analog. | +| DATA_TYPE_PHASE_VOLTAGE | 19 | Line to ground voltage. It maps to Analog. | +| DATA_TYPE_PHASOR_CURRENT | 20 | Phasor current in a non-three phase circuit. It maps to Phasor. | +| DATA_TYPE_PHASOR_VOLTAGE | 21 | Phasor voltage in a non-three phase circuit. It maps to Phasor. | +| DATA_TYPE_PMU_SYNC | 22 | PMU synchronized. It maps to Discrete (True or False) | +| DATA_TYPE_PMU_TIME_QUALITY | 23 | PMU time quality. It maps to Discrete | +| DATA_TYPE_PMU_TRIGGER_DETECTED | 24 | PMU trigger detected. It maps to Discrete (True or False) | +| DATA_TYPE_POWER | 25 | Apparent power in a non-three phase circuit. It maps to Analog. | +| DATA_TYPE_POWER_FACTOR | 26 | Power factor. It maps to Analog. | +| DATA_TYPE_PRESSURE | 27 | Pressure. It maps to Analog. | +| DATA_TYPE_RATE_OF_CHANGE_OF_FREQUENCY | 28 | Rate of change of frequency. It maps to Analog. | +| DATA_TYPE_REACTIVE_POWER | 29 | Reactive power in a non-three phase circuit. It maps to Analog. | +| DATA_TYPE_SWITCH_POSITION | 30 | Switch position. It maps to Discrete (True or False). | +| DATA_TYPE_TAP_POSITION | 31 | Tap position of power transformer or phaseshifter. It maps to Discrete. | +| DATA_TYPE_TEMPERATURE | 32 | Temperature. It maps to Analog. | +| DATA_TYPE_THREE_PHASE_ACTIVE_POWER | 33 | Total real power in a three phase circuit. It maps to Analog. | +| DATA_TYPE_THREE_PHASE_CURRENT | 34 | Total current (rms) in a three phase circuit. It maps to Analog. | +| DATA_TYPE_THREE_PHASE_POWER | 35 | Total apparent power in a three phase circuit. It maps to Analog. | +| DATA_TYPE_THREE_PHASE_POWER_FACTOR | 36 | Three phase power factor. It maps to Analog. | +| DATA_TYPE_THREE_PHASE_REACTIVE_POWER | 37 | Total reactive power in a three phase circuit. It maps to Analog. | +| DATA_TYPE_TRIGGER_REASON | 38 | Trigger reason. It maps to Discrete. | +| DATA_TYPE_UNLOCKED_TIME | 39 | Unlocked time. //Three phase active power. It maps to Discrete. | +| DATA_TYPE_VOLTAGE_SEQUENCE_NEGATIVE | 40 | Voltage negative sequence in a three phase circuit. It maps to Phasor. | +| DATA_TYPE_VOLTAGE_SEQUENCE_POSITIVE | 41 | Voltage positive sequence in a three phase circuit. It maps to Phasor. | +| DATA_TYPE_VOLTAGE_SEQUENCE_ZERO | 42 | Voltage zero sequence in a three phase circuit. It maps to Phasor. | +| DATA_TYPE_DISCRETE | 43 | Discrete. It maps to Discrete. | +| DATA_TYPE_ANALOG | 44 | Analog. It maps to Analog. | @@ -78,7 +78,7 @@ classDiagram direction LR %% The collection of Data Types defined so far. They are useful to map -%% measurements to their rappresentation. This is important since all measurements +%% measurements to their rappresentation. Some of the descriptions are taken from [here](https://github.com/digin-energi/Grunnprofil/blob/develop/DIGIN10/docs/MeasurementType.adoc) This is important since all measurements %% are any how cast to UINT64 in the real time platform class DataType{ diff --git a/docs/fault.proto.md b/docs/fault.proto.md index 1bfa7ea..30cf44f 100644 --- a/docs/fault.proto.md +++ b/docs/fault.proto.md @@ -5,73 +5,78 @@ ## Imports | Import | Description | -| ------ | ----------- | +|--------|-------------| + + ## Options | Name | Value | Description | -| ---------- | ---------- | ----------- | +|------------|------------|-------------| | go_package | ./fault/v1 | | -## Enum: PhaseConnectedFaultKind + +## Enum: PhaseConnectedFaultKind
FQN: fault.v1.PhaseConnectedFaultKind

The type of fault connection among phases.

This message is modeled after [CIM PhaseConnectedFaultKind](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/PhaseConnectedFaultKind).

-| Name | Ordinal | Description | -| ------------------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| PHASE_CONNECTED_FAULT_KIND_UNSPECIFIED | 0 | | -| PHASE_CONNECTED_FAULT_KIND_LINE_TO_GROUND | 1 | The fault connects the indicated phases to ground. The line to line fault impedance is not used and assumed infinite. The full ground impedance is connected between each phase specified in the fault and ground, but not between the phases. | -| PHASE_CONNECTED_FAULT_KIND_LINE_TO_LINE | 2 | The fault connects the specified phases together without a connection to ground. The ground impedance of this fault is ignored. The line to line impedance is connected between each of the phases specified in the fault. For example three times for a three phase fault, one time for a two phase fault. A single phase fault should not be specified. | -| PHASE_CONNECTED_FAULT_KIND_LINE_TO_LINE_TO_GROUND | 3 | The fault connects the indicated phases to ground and to each other. The line to line impedance is connected between each of the phases specified in the fault in a full mesh. For example three times for a three phase fault, one time for a two phase fault. A single phase fault should not be specified. The full ground impedance is connected between each phase specified in the fault and ground. | -| PHASE_CONNECTED_FAULT_KIND_LINE_OPEN | 4 | The fault is when the conductor path is broken between two terminals. Additional coexisting faults may be required if the broken conductor also causes connections to grounds or other lines or phases. | +| Name | Ordinal | Description | +|---------------------------------------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| PHASE_CONNECTED_FAULT_KIND_UNSPECIFIED | 0 | | +| PHASE_CONNECTED_FAULT_KIND_LINE_TO_GROUND | 1 | The fault connects the indicated phases to ground. The line to line fault impedance is not used and assumed infinite. The full ground impedance is connected between each phase specified in the fault and ground, but not between the phases. | +| PHASE_CONNECTED_FAULT_KIND_LINE_TO_LINE | 2 | The fault connects the specified phases together without a connection to ground. The ground impedance of this fault is ignored. The line to line impedance is connected between each of the phases specified in the fault. For example three times for a three phase fault, one time for a two phase fault. A single phase fault should not be specified. | +| PHASE_CONNECTED_FAULT_KIND_LINE_TO_LINE_TO_GROUND | 3 | The fault connects the indicated phases to ground and to each other. The line to line impedance is connected between each of the phases specified in the fault in a full mesh. For example three times for a three phase fault, one time for a two phase fault. A single phase fault should not be specified. The full ground impedance is connected between each phase specified in the fault and ground. | +| PHASE_CONNECTED_FAULT_KIND_LINE_OPEN | 4 | The fault is when the conductor path is broken between two terminals. Additional coexisting faults may be required if the broken conductor also causes connections to grounds or other lines or phases. | -## Enum: PhaseCode +## Enum: PhaseCode
FQN: fault.v1.PhaseCode

An unordered enumeration of phase identifiers. Allows designation of phases for both transmission and distribution equipment, circuits and loads. The enumeration, by itself, does not describe how the phases are connected together or connected to ground. Ground is not explicitly denoted as a phase.
Residential and small commercial loads are often served from single-phase, or split-phase, secondary circuits. For the example of s12N, phases 1 and 2 refer to hot wires that are 180 degrees out of phase, while N refers to the neutral wire. Through single-phase transformer connections, these secondary circuits may be served from one or two of the primary phases A, B, and C. For three-phase loads, use the A, B, C phase codes instead of s12N.
The integer values are from IEC 61968-9 to support revenue metering applications.

This message is modeled after [CIM PhaseCode](https://zepben.github.io/evolve/docs/cim/evolve/IEC61970/Base/Core/PhaseCode/).

-| Name | Ordinal | Description | -| ---------------------- | ------- | -------------------------------------------- | -| PHASE_CODE_UNSPECIFIED | 0 | No phases specified. | -| PHASE_CODE_A | 1 | Phase A. | -| PHASE_CODE_B | 2 | Phase B. | -| PHASE_CODE_C | 3 | Phase C. | -| PHASE_CODE_N | 4 | Neutral phase. | -| PHASE_CODE_AB | 5 | Phases A and B. | -| PHASE_CODE_AC | 6 | Phases A and C. | -| PHASE_CODE_BC | 7 | Phases B and C. | -| PHASE_CODE_AN | 8 | Phases A and neutral. | -| PHASE_CODE_BN | 9 | Phases B and neutral. | -| PHASE_CODE_CN | 10 | Phases C and neutral. | -| PHASE_CODE_ABC | 11 | Phases A, B, and C. | -| PHASE_CODE_ABN | 12 | Phases A, B, and neutral. | -| PHASE_CODE_ACN | 13 | Phases A, C and neutral. | -| PHASE_CODE_BCN | 14 | Phases B, C, and neutral. | -| PHASE_CODE_ABCN | 15 | Phases A, B, C, and N. | -| PHASE_CODE_S1N | 16 | Secondary phase 1 and neutral. | -| PHASE_CODE_S2N | 17 | Secondary phase 2 and neutral. | -| PHASE_CODE_S12N | 18 | Secondary phases 1, 2, and neutral. | -| PHASE_CODE_S1 | 19 | Secondary phase 1. | -| PHASE_CODE_S2 | 20 | Secondary phase 2. | -| PHASE_CODE_S12 | 21 | Secondary phase 1 and 2. | -| PHASE_CODE_X | 22 | Unknown non-neutral phase. | -| PHASE_CODE_XY | 23 | Two unknown non-neutral phases. | -| PHASE_CODE_XN | 24 | Unknown non-neutral phase plus neutral. | -| PHASE_CODE_XYN | 25 | Two unknown non-neutral phases plus neutral. | +| Name | Ordinal | Description | +|------------------------|---------|-----------------------------------------------| +| PHASE_CODE_UNSPECIFIED | 0 | No phases specified. | +| PHASE_CODE_A | 1 | Phase A. | +| PHASE_CODE_B | 2 | Phase B. | +| PHASE_CODE_C | 3 | Phase C. | +| PHASE_CODE_N | 4 | Neutral phase. | +| PHASE_CODE_AB | 5 | Phases A and B. | +| PHASE_CODE_AC | 6 | Phases A and C. | +| PHASE_CODE_BC | 7 | Phases B and C. | +| PHASE_CODE_AN | 8 | Phases A and neutral. | +| PHASE_CODE_BN | 9 | Phases B and neutral. | +| PHASE_CODE_CN | 10 | Phases C and neutral. | +| PHASE_CODE_ABC | 11 | Phases A, B, and C. | +| PHASE_CODE_ABN | 12 | Phases A, B, and neutral. | +| PHASE_CODE_ACN | 13 | Phases A, C and neutral. | +| PHASE_CODE_BCN | 14 | Phases B, C, and neutral. | +| PHASE_CODE_ABCN | 15 | Phases A, B, C, and N. | +| PHASE_CODE_S1N | 16 | Secondary phase 1 and neutral. | +| PHASE_CODE_S2N | 17 | Secondary phase 2 and neutral. | +| PHASE_CODE_S12N | 18 | Secondary phases 1, 2, and neutral. | +| PHASE_CODE_S1 | 19 | Secondary phase 1. | +| PHASE_CODE_S2 | 20 | Secondary phase 2. | +| PHASE_CODE_S12 | 21 | Secondary phase 1 and 2. | +| PHASE_CODE_X | 22 | Unknown non-neutral phase. | +| PHASE_CODE_XY | 23 | Two unknown non-neutral phases. | +| PHASE_CODE_XN | 24 | Unknown non-neutral phase plus neutral. | +| PHASE_CODE_XYN | 25 | Two unknown non-neutral phases plus neutral. | + + ### PhaseConnectedFaultKind Diagram ```mermaid classDiagram direction LR -%% +%% %% The type of fault connection among phases. -%% +%% %% This message is modeled after [CIM PhaseConnectedFaultKind](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/PhaseConnectedFaultKind). -%% +%% class PhaseConnectedFaultKind{ <> @@ -82,19 +87,18 @@ class PhaseConnectedFaultKind{ PHASE_CONNECTED_FAULT_KIND_LINE_OPEN } ``` - ### PhaseCode Diagram ```mermaid classDiagram direction LR -%% +%% %% An unordered enumeration of phase identifiers. Allows designation of phases for both transmission and distribution equipment, circuits and loads. The enumeration, by itself, does not describe how the phases are connected together or connected to ground. Ground is not explicitly denoted as a phase. %% Residential and small commercial loads are often served from single-phase, or split-phase, secondary circuits. For the example of s12N, phases 1 and 2 refer to hot wires that are 180 degrees out of phase, while N refers to the neutral wire. Through single-phase transformer connections, these secondary circuits may be served from one or two of the primary phases A, B, and C. For three-phase loads, use the A, B, C phase codes instead of s12N. %% The integer values are from IEC 61968-9 to support revenue metering applications. -%% +%% %% This message is modeled after [CIM PhaseCode](https://zepben.github.io/evolve/docs/cim/evolve/IEC61970/Base/Core/PhaseCode/). -%% +%% class PhaseCode{ <> @@ -126,7 +130,6 @@ class PhaseCode{ PHASE_CODE_XYN } ``` - ### Fault Diagram ```mermaid @@ -134,9 +137,9 @@ classDiagram direction LR %% Abnormal condition causing current flow through conducting equipment, such as caused by equipment failure or short circuits from objects not typically modelled (for example, a tree falling on a line). -%% +%% %% This message is modeled after [CIM Fault](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/Fault) according to the extensions defined in the [fault-data-storage](https://github.com/zaphiro-technologies/architecture/blob/main/features/31-fault-data-storage.md#data-structures) feature. -%% +%% class Fault { + string ID @@ -154,7 +157,6 @@ Fault --> `PhaseConnectedFaultKind` Fault --> `PhaseCode` ``` - ### LineFault Diagram ```mermaid @@ -162,9 +164,9 @@ classDiagram direction LR %% A fault that occurs on an AC line segment at some point along the length. -%% +%% %% This message is modeled after [CIM LineFault](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/LineFault) according to the extensions defined in the [fault-data-storage](https://github.com/zaphiro-technologies/architecture/blob/main/features/31-fault-data-storage.md#data-structures) feature. -%% +%% class LineFault { + Optional~string~ acLineSegmentID @@ -174,18 +176,17 @@ class LineFault { LineFault --> `Fault` ``` - ### EquipmentFault Diagram ```mermaid classDiagram direction LR -%% +%% %% A fault applied at the terminal, external to the equipment. This class is not used to specify faults internal to the equipment. -%% +%% %% This message is modeled after [CIM EquipmentFault](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/EquipmentFault) according to the extensions defined in the [fault-data-storage](https://github.com/zaphiro-technologies/architecture/blob/main/features/31-fault-data-storage.md#data-structures) feature. -%% +%% class EquipmentFault { + Fault fault @@ -196,46 +197,48 @@ EquipmentFault --> `Fault` ``` ## Message: Fault -
FQN: fault.v1.Fault
Abnormal condition causing current flow through conducting equipment, such as caused by equipment failure or short circuits from objects not typically modelled (for example, a tree falling on a line).

This message is modeled after [CIM Fault](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/Fault) according to the extensions defined in the [fault-data-storage](https://github.com/zaphiro-technologies/architecture/blob/main/features/31-fault-data-storage.md#data-structures) feature.

-| Field | Ordinal | Type | Label | Description | -| -------------------- | ------- | ----------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------- | -| ID | 1 | string | | The uuid of the fault. | -| description | 2 | string | Optional | The textual description of the fault. | -| faulCurrent | 8 | float | Optional | The current associated to the fault. | -| faultyEquipmentId | 6 | string | Optional | The equipment with the fault. | -| impactedEquipmentIds | 10 | string | Repeated | The set of IDs of equipments impacted by the fault. | -| kind | 3 | PhaseConnectedFaultKind | | The kind of phase fault. | -| located | 9 | bool | Optional | Was the fault located. | -| locationTime | 7 | int64 | Optional | The time when the fault was located. | -| occurredDateTime | 5 | int64 | | The date and time at which the fault occurred. | -| phases | 4 | PhaseCode | | The phases participating in the fault. The fault connections into these phases are further specified by the type of fault. | +| Field | Ordinal | Type | Label | Description | +|----------------------|---------|-------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------| +| ID | 1 | string | | The uuid of the fault. | +| description | 2 | string | Optional | The textual description of the fault. | +| faulCurrent | 8 | float | Optional | The current associated to the fault. | +| faultyEquipmentId | 6 | string | Optional | The equipment with the fault. | +| impactedEquipmentIds | 10 | string | Repeated | The set of IDs of equipments impacted by the fault. | +| kind | 3 | PhaseConnectedFaultKind | | The kind of phase fault. | +| located | 9 | bool | Optional | Was the fault located. | +| locationTime | 7 | int64 | Optional | The time when the fault was located. | +| occurredDateTime | 5 | int64 | | The date and time at which the fault occurred. | +| phases | 4 | PhaseCode | | The phases participating in the fault. The fault connections into these phases are further specified by the type of fault. | -## Message: LineFault +## Message: LineFault
FQN: fault.v1.LineFault
A fault that occurs on an AC line segment at some point along the length.

This message is modeled after [CIM LineFault](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/LineFault) according to the extensions defined in the [fault-data-storage](https://github.com/zaphiro-technologies/architecture/blob/main/features/31-fault-data-storage.md#data-structures) feature.

-| Field | Ordinal | Type | Label | Description | -| ------------------- | ------- | ------ | -------- | ----------------------------------------------------------------------------------------------------------------------------- | -| acLineSegmentID | 3 | string | Optional | The line segment of this line fault. | -| fault | 1 | Fault | | The base fault message. | -| lengthFromTerminal1 | 2 | float | Optional | The length to the place where the fault is located starting from terminal with sequence number 1 of the faulted line segment. | +| Field | Ordinal | Type | Label | Description | +|---------------------|---------|--------|----------|--------------------------------------------------------------------------------------------------------------------------------| +| acLineSegmentID | 3 | string | Optional | The line segment of this line fault. | +| fault | 1 | Fault | | The base fault message. | +| lengthFromTerminal1 | 2 | float | Optional | The length to the place where the fault is located starting from terminal with sequence number 1 of the faulted line segment. | -## Message: EquipmentFault +## Message: EquipmentFault
FQN: fault.v1.EquipmentFault

A fault applied at the terminal, external to the equipment. This class is not used to specify faults internal to the equipment.

This message is modeled after [CIM EquipmentFault](https://zepben.github.io/evolve/docs/cim/cim100/TC57CIM/IEC61970/Base/Faults/EquipmentFault) according to the extensions defined in the [fault-data-storage](https://github.com/zaphiro-technologies/architecture/blob/main/features/31-fault-data-storage.md#data-structures) feature.

-| Field | Ordinal | Type | Label | Description | -| ---------- | ------- | ------ | -------- | ----------------------------------------------------------------- | -| fault | 1 | Fault | | The base fault message. | -| terminalID | 2 | string | Optional | The terminal connecting to the bus to which the fault is applied. | +| Field | Ordinal | Type | Label | Description | +|------------|---------|--------|----------|--------------------------------------------------------------------| +| fault | 1 | Fault | | The base fault message. | +| terminalID | 2 | string | Optional | The terminal connecting to the bus to which the fault is applied. | + + +