Skip to content

Commit 88db544

Browse files
Add new codes to ElectricalComponentDiagnosticCode enum
The new codes help cover more cases for inverters. Signed-off-by: Tiyash Basu <[email protected]>
1 parent cb5b450 commit 88db544

File tree

2 files changed

+74
-0
lines changed

2 files changed

+74
-0
lines changed

RELEASE_NOTES.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@
4343
- Rename `SensorData` to `SensorTelemetry` to better specify its purpose of encapsulating general telemetry data from sensors.
4444
- The following changes have been made to the `ElectricalComponentDiagnosticCode` enum (previously `ComponentErrorCode`):
4545
- The code `UNDERVOLTAGE_SHUTDOWN` has been removed in favour of `UNDERVOLTAGE`.
46+
- New diagnostic codes have been added to cover more cases, especially for inverters.
47+
- The codes have been renumbered.
4648

4749
## Bug Fixes
4850

proto/frequenz/api/common/v1/microgrid/electrical_components/electrical_components.proto

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,56 @@ enum ElectricalComponentDiagnosticCode {
286286
// The component is unauthorized to perform the last requested action.
287287
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_UNAUTHORIZED = 20;
288288

289+
// There is excessive leakage current in the component.
290+
// The threshold for excessive leakage current is defined by the component
291+
// manufacturer.
292+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_EXCESS_LEAKAGE_CURRENT = 21;
293+
294+
// The component is inoperable due to the insulation resistance being too low.
295+
// The threshold for low insulation resistance is defined by the component
296+
// manufacturer, or can be configured by the user in the component.
297+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_LOW_SYSTEM_INSULATION_RESISTANCE = 22;
298+
299+
// The component is inoperable due to the faulty grounding.
300+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GROUND_FAULT = 23;
301+
302+
// The component is inoperable due to arcing.
303+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_ARC_FAULT = 24;
304+
305+
// The component is inoperable due to its fan being faulty.
306+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_FAN_FAULT = 25;
307+
308+
// The component is inoperable due to the component's hardware being faulty.
309+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_HARDWARE_FAULT = 26;
310+
311+
// the component is inoperable due to it hardware being faulty.
312+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_PROTECTIVE_SHUTDOWN = 27;
313+
314+
// The component is inoperable due to the grid voltage being too high.
315+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_OVERVOLTAGE = 30;
316+
317+
// The component is inoperable due to the grid voltage being too low.
318+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_UNDERVOLTAGE = 31;
319+
320+
// The component is inoperable due to the grid frequency being too high.
321+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_OVERFREQUENCY = 32;
322+
323+
// The component is inoperable due to the grid frequency being too low.
324+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_UNDERFREQUENCY = 33;
325+
326+
// The component is inoperable due to the grid being disconnected, despite
327+
// the AC relay being closed.
328+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_DISCONNECTED = 34;
329+
330+
// The component is inoperable due to the grid voltage being imbalanced.
331+
// This happens when the voltage of one or more phases is outside the
332+
// acceptable range.
333+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_VOLTAGE_IMBALANCE = 35;
334+
335+
// The component is inoperable due to the grid being in a non-standard
336+
// configuration.
337+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_GRID_ABNORMAL = 36;
338+
289339
// There is an unexpected pilot failure in an electric vehicle (EV) component.
290340
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_EV_UNEXPECTED_PILOT_FAILURE = 40;
291341

@@ -326,6 +376,28 @@ enum ElectricalComponentDiagnosticCode {
326376

327377
// The battery's DC contactor or relays have reached end of life.
328378
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_RELAY_CYCLE_LIMIT_REACHED = 60;
379+
380+
// The PV panels have been connected with reversed polarity.
381+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_PV_REVERSAL_POLARITY = 70;
382+
383+
// The PV panels are underperforming.
384+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_PV_UNDERPERFORMANCE = 71;
385+
386+
// The PV panels have a fault.
387+
// The component is not able to determine or specify the fault.
388+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_PV_FAULT = 72;
389+
390+
// The PV panels are receiving a reverse current.
391+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_PV_REVERSE_CURRENT = 73;
392+
393+
// The PV panels are not grounded properly.
394+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_PV_GROUND_FAULT = 74;
395+
396+
// The inverter is inoperable due to the DC voltage being too low.
397+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_INVERTER_DC_UNDERVOLTAGE = 80;
398+
399+
// The inverter is inoperable due to the DC voltage being too high.
400+
ELECTRICAL_COMPONENT_DIAGNOSTIC_CODE_INVERTER_DC_OVERVOLTAGE = 81;
329401
}
330402

331403
// MetricConfigBounds describes a set of limits for a specific metric consisting

0 commit comments

Comments
 (0)