Add protection domain foundation

This commit is contained in:
2026-07-30 19:03:36 +02:00
parent a72d2c76e0
commit a88c4b2086
13 changed files with 909 additions and 2 deletions
@@ -0,0 +1,41 @@
import type { ProtectionDeviceConfiguration } from "../models/protection-device.model.js";
import type { CircuitGroupCategory } from "../../shared/constants/circuit-group.js";
const defaultCircuitProtectionByCategory = {
lighting: {
type: "LS",
ratedCurrentA: 10,
tripCharacteristic: "B",
},
single_phase: {
type: "FI_LS",
ratedCurrentA: 16,
tripCharacteristic: "B",
rcdType: "A",
ratedResidualCurrentMa: 30,
},
three_phase: {
type: "FI_LS",
ratedCurrentA: 16,
tripCharacteristic: "B",
rcdType: "A",
ratedResidualCurrentMa: 30,
},
} as const satisfies Record<CircuitGroupCategory, ProtectionDeviceConfiguration>;
const defaultGroupRcd = {
type: "FI",
ratedCurrentA: 40,
rcdType: "A",
ratedResidualCurrentMa: 30,
} as const satisfies ProtectionDeviceConfiguration;
export function createDefaultCircuitProtection(
category: CircuitGroupCategory
): ProtectionDeviceConfiguration {
return { ...defaultCircuitProtectionByCategory[category] };
}
export function createDefaultGroupRcd(): ProtectionDeviceConfiguration {
return { ...defaultGroupRcd };
}