// ===================================================================== // SmartGrid — Regional Power Grid Architecture // ===================================================================== // // A regional electrical power grid model (110kV / 20kV / 0.4kV) with // conventional generation (gas turbine, steam unit), renewable sources // (wind, solar, hydro, biomass), high-voltage transmission, medium- // and low-voltage distribution, and SCADA/protection systems. // The TLE is "RegionalBlackout" — complete loss of power supply. // // Domain: Electrical Power Engineering (IEC 61508) // Functions: 89 (requires Full version) // Complexity: High — 117 interfaces, 18 AND gates, 7 subsystem groups, // diverse redundancy patterns (N-1, dual infeed, 2-of-3) // // Copyright (c) 2026 Dr. Wolfgang Freese, Overath (Germany) // All rights reserved. This file is provided as an example for // use with MCSA (mcsa.appliedfusa.de). // FUNCTION RegionalGrid INPUT FuelAvailability INPUT WindConditions INPUT SolarIrradiance INPUT AmbientTemperature INPUT GridFrequency INPUT CyberThreat INPUT LightningStrike OUTPUT PowerSupply // ============================================================ // GENERATION (16 functions) // ============================================================ // -- Fuel Supply (delivers gas/biomass fuel) -- FUNCTION FuelSupply_A INPUT FuelAvail OUTPUT FuelFlow OIM FuelFlow.Flow_Lost.FuelAvail.Supply_Lost END FUNCTION FUNCTION FuelSupply_B INPUT FuelAvail OUTPUT FuelFlow OIM FuelFlow.Flow_Lost.FuelAvail.Supply_Lost END FUNCTION // -- Cooling (for steam unit) -- FUNCTION CoolingSystem_A INPUT AmbientTemp OUTPUT CoolingCapacity OIM CoolingCapacity.Cooling_Lost.AmbientTemp.Temp_Extreme END FUNCTION // -- Conventional Generators -- FUNCTION GasTurbine_A INPUT FuelInput INPUT ControlInput OUTPUT ElecPower OIM ElecPower.Power_Lost.OR(FuelInput.Flow_Lost; ControlInput.Control_Lost) END FUNCTION FUNCTION GasTurbine_B INPUT FuelInput INPUT ControlInput OUTPUT ElecPower OIM ElecPower.Power_Lost.OR(FuelInput.Flow_Lost; ControlInput.Control_Lost) END FUNCTION FUNCTION SteamUnit_A INPUT FuelInput INPUT CoolingInput OUTPUT ElecPower OIM ElecPower.Power_Lost.OR(FuelInput.Flow_Lost; CoolingInput.Cooling_Lost) END FUNCTION // -- Renewable Generators -- FUNCTION WindFarm_North INPUT WindInput OUTPUT ElecPower OIM ElecPower.Power_Lost.WindInput.Wind_Insufficient END FUNCTION FUNCTION WindFarm_South INPUT WindInput OUTPUT ElecPower OIM ElecPower.Power_Lost.WindInput.Wind_Insufficient END FUNCTION FUNCTION SolarPark_East INPUT SolarInput OUTPUT ElecPower OIM ElecPower.Power_Lost.SolarInput.Irradiance_Low END FUNCTION FUNCTION SolarPark_West INPUT SolarInput OUTPUT ElecPower OIM ElecPower.Power_Lost.SolarInput.Irradiance_Low END FUNCTION FUNCTION Hydropower INPUT ControlInput OUTPUT ElecPower OIM ElecPower.Power_Lost.ControlInput.Control_Lost END FUNCTION FUNCTION BiomassPlant INPUT FuelInput OUTPUT ElecPower OIM ElecPower.Power_Lost.FuelInput.Flow_Lost END FUNCTION // -- Generation Transformers (step-up to 110kV) -- // AND: GasTurbine_A AND SteamUnit_A must both fail FUNCTION GenTransformer_A INPUT ConvPower INPUT SteamPower OUTPUT HV_Power OIM HV_Power.Power_Lost.AND(ConvPower.Power_Lost; SteamPower.Power_Lost) END FUNCTION FUNCTION GenTransformer_B INPUT GenPower OUTPUT HV_Power OIM HV_Power.Power_Lost.GenPower.Power_Lost END FUNCTION // AND: all 4 renewable sources must fail FUNCTION GenTransformer_RE1 INPUT WindPower_N INPUT WindPower_S INPUT SolarPower_E INPUT SolarPower_W OUTPUT HV_Power OIM HV_Power.Power_Lost.AND(WindPower_N.Power_Lost; WindPower_S.Power_Lost; SolarPower_E.Power_Lost; SolarPower_W.Power_Lost) END FUNCTION // AND: Hydro AND Biomass must both fail FUNCTION GenTransformer_RE2 INPUT HydroPower INPUT BioPower OUTPUT HV_Power OIM HV_Power.Power_Lost.AND(HydroPower.Power_Lost; BioPower.Power_Lost) END FUNCTION // ============================================================ // HV TRANSMISSION 110kV (13 functions) // ============================================================ // -- Double Busbar System -- // AND: all 3 feeds must fail for Busbar 1 to lose power FUNCTION HV_Busbar_1 INPUT Feed_A INPUT Feed_B INPUT Feed_RE1 OUTPUT HV_Power OIM HV_Power.Power_Lost.AND(Feed_A.Power_Lost; Feed_B.Power_Lost; Feed_RE1.Power_Lost) END FUNCTION // AND: all 3 feeds must fail for Busbar 2 FUNCTION HV_Busbar_2 INPUT Feed_RE2 INPUT Feed_IntA INPUT Feed_IntB OUTPUT HV_Power OIM HV_Power.Power_Lost.AND(Feed_RE2.Power_Lost; Feed_IntA.Power_Lost; Feed_IntB.Power_Lost) END FUNCTION // AND: both busbars must fail (N-1 criterion) FUNCTION HV_BusbarCoupler INPUT Bus1_Power INPUT Bus2_Power OUTPUT HV_Power OIM HV_Power.Power_Lost.AND(Bus1_Power.Power_Lost; Bus2_Power.Power_Lost) END FUNCTION // -- Circuit Breakers -- FUNCTION CircuitBreaker_HV1 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION CircuitBreaker_HV2 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION CircuitBreaker_HV3 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION CircuitBreaker_HV4 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION // -- Transmission Lines (110kV, vulnerable to lightning) -- FUNCTION TransLine_North INPUT PowerIn INPUT LightningIn OUTPUT PowerOut OIM PowerOut.Power_Lost.OR(PowerIn.Power_Lost; LightningIn.Lightning_Strike) END FUNCTION FUNCTION TransLine_South INPUT PowerIn INPUT LightningIn OUTPUT PowerOut OIM PowerOut.Power_Lost.OR(PowerIn.Power_Lost; LightningIn.Lightning_Strike) END FUNCTION FUNCTION TransLine_East INPUT PowerIn INPUT LightningIn OUTPUT PowerOut OIM PowerOut.Power_Lost.OR(PowerIn.Power_Lost; LightningIn.Lightning_Strike) END FUNCTION FUNCTION TransLine_West INPUT PowerIn INPUT LightningIn OUTPUT PowerOut OIM PowerOut.Power_Lost.OR(PowerIn.Power_Lost; LightningIn.Lightning_Strike) END FUNCTION // -- Interconnectors to adjacent grids -- FUNCTION Interconnector_A INPUT ExtGridFreq OUTPUT HV_Power OIM HV_Power.Power_Lost.ExtGridFreq.Freq_Deviation END FUNCTION FUNCTION Interconnector_B INPUT ExtGridFreq OUTPUT HV_Power OIM HV_Power.Power_Lost.ExtGridFreq.Freq_Deviation END FUNCTION // ============================================================ // MV DISTRIBUTION 20kV (18 functions) // ============================================================ // -- Supply Aggregators (redundant transmission paths) -- // AND: North AND East lines must both fail FUNCTION MV_SupplyAgg_1 INPUT NorthFeed INPUT EastFeed OUTPUT MV_Supply OIM MV_Supply.Power_Lost.AND(NorthFeed.Power_Lost; EastFeed.Power_Lost) END FUNCTION // AND: South AND West lines must both fail FUNCTION MV_SupplyAgg_2 INPUT SouthFeed INPUT WestFeed OUTPUT MV_Supply OIM MV_Supply.Power_Lost.AND(SouthFeed.Power_Lost; WestFeed.Power_Lost) END FUNCTION // -- HV/MV Transformers (110kV to 20kV) -- FUNCTION Transformer_HV_MV_1 INPUT HV_Input OUTPUT MV_Power OIM MV_Power.Power_Lost.HV_Input.Power_Lost END FUNCTION FUNCTION Transformer_HV_MV_2 INPUT HV_Input OUTPUT MV_Power OIM MV_Power.Power_Lost.HV_Input.Power_Lost END FUNCTION FUNCTION Transformer_HV_MV_3 INPUT HV_Input OUTPUT MV_Power OIM MV_Power.Power_Lost.HV_Input.Power_Lost END FUNCTION FUNCTION Transformer_HV_MV_4 INPUT HV_Input OUTPUT MV_Power OIM MV_Power.Power_Lost.HV_Input.Power_Lost END FUNCTION // -- MV Busbars -- // AND: regular supply AND battery storage must both fail FUNCTION MV_Busbar_1 INPUT TrafoInput INPUT StorageInput OUTPUT MV_Power OIM MV_Power.Power_Lost.AND(TrafoInput.Power_Lost; StorageInput.Power_Lost) END FUNCTION // AND: regular supply AND battery storage must both fail FUNCTION MV_Busbar_2 INPUT TrafoInput INPUT StorageInput OUTPUT MV_Power OIM MV_Power.Power_Lost.AND(TrafoInput.Power_Lost; StorageInput.Power_Lost) END FUNCTION FUNCTION MV_Busbar_3 INPUT TrafoInput OUTPUT MV_Power OIM MV_Power.Power_Lost.TrafoInput.Power_Lost END FUNCTION FUNCTION MV_Busbar_4 INPUT TrafoInput OUTPUT MV_Power OIM MV_Power.Power_Lost.TrafoInput.Power_Lost END FUNCTION // -- MV Feeders (20kV cable runs) -- FUNCTION MV_Feeder_1 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_2 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_3 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_4 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_5 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_6 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_7 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION MV_Feeder_8 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION // ============================================================ // LV DISTRIBUTION 0.4kV (8 functions) // ============================================================ // -- MV/LV Transformers (cross-busbar feeder redundancy) -- // AND: both feeder paths must fail FUNCTION Transformer_MV_LV_1 INPUT Feeder_A INPUT Feeder_B OUTPUT LV_Power OIM LV_Power.Power_Lost.AND(Feeder_A.Power_Lost; Feeder_B.Power_Lost) END FUNCTION // AND: both feeder paths must fail FUNCTION Transformer_MV_LV_2 INPUT Feeder_A INPUT Feeder_B OUTPUT LV_Power OIM LV_Power.Power_Lost.AND(Feeder_A.Power_Lost; Feeder_B.Power_Lost) END FUNCTION // AND: both feeder paths must fail FUNCTION Transformer_MV_LV_3 INPUT Feeder_A INPUT Feeder_B OUTPUT LV_Power OIM LV_Power.Power_Lost.AND(Feeder_A.Power_Lost; Feeder_B.Power_Lost) END FUNCTION // AND: both feeder paths must fail FUNCTION Transformer_MV_LV_4 INPUT Feeder_A INPUT Feeder_B OUTPUT LV_Power OIM LV_Power.Power_Lost.AND(Feeder_A.Power_Lost; Feeder_B.Power_Lost) END FUNCTION // -- LV Panels -- FUNCTION LV_Panel_1 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION LV_Panel_2 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION LV_Panel_3 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION FUNCTION LV_Panel_4 INPUT PowerIn OUTPUT PowerOut OIM PowerOut.Power_Lost.PowerIn.Power_Lost END FUNCTION // ============================================================ // PROTECTION (11 source components) // ============================================================ FUNCTION DifferentialRelay_1 OUTPUT RelaySignal END FUNCTION FUNCTION DifferentialRelay_2 OUTPUT RelaySignal END FUNCTION FUNCTION UnderfreqRelay OUTPUT RelaySignal END FUNCTION FUNCTION DistanceRelay_1 OUTPUT RelaySignal END FUNCTION FUNCTION DistanceRelay_2 OUTPUT RelaySignal END FUNCTION FUNCTION DistanceRelay_3 OUTPUT RelaySignal END FUNCTION FUNCTION DistanceRelay_4 OUTPUT RelaySignal END FUNCTION FUNCTION OvercurrentRelay_1 OUTPUT RelaySignal END FUNCTION FUNCTION OvercurrentRelay_2 OUTPUT RelaySignal END FUNCTION FUNCTION OvervoltageProtection OUTPUT RelaySignal END FUNCTION FUNCTION AutoRecloser OUTPUT RelaySignal END FUNCTION // ============================================================ // RTU / TELEMETRY (4 functions) // ============================================================ // AND: all 3 relay inputs must fail for generation telemetry loss FUNCTION RTU_Generation INPUT DiffRelay1_Signal INPUT DiffRelay2_Signal INPUT UfreqRelay_Signal OUTPUT TelemetryData OIM TelemetryData.Data_Lost.AND(DiffRelay1_Signal.Signal_Lost; DiffRelay2_Signal.Signal_Lost; UfreqRelay_Signal.Signal_Lost) END FUNCTION // AND: all 4 relay inputs must fail for transmission telemetry loss FUNCTION RTU_Transmission INPUT DistRelay1_Signal INPUT DistRelay2_Signal INPUT DistRelay3_Signal INPUT DistRelay4_Signal OUTPUT TelemetryData OIM TelemetryData.Data_Lost.AND(DistRelay1_Signal.Signal_Lost; DistRelay2_Signal.Signal_Lost; DistRelay3_Signal.Signal_Lost; DistRelay4_Signal.Signal_Lost) END FUNCTION // AND: all 4 relay inputs must fail for distribution telemetry loss FUNCTION RTU_Distribution INPUT OcRelay1_Signal INPUT OcRelay2_Signal INPUT OvProt_Signal INPUT AutoRecl_Signal OUTPUT TelemetryData OIM TelemetryData.Data_Lost.AND(OcRelay1_Signal.Signal_Lost; OcRelay2_Signal.Signal_Lost; OvProt_Signal.Signal_Lost; AutoRecl_Signal.Signal_Lost) END FUNCTION // AND: all 3 RTUs must fail for aggregated telemetry loss FUNCTION RTU_Aggregator INPUT GenTelemetry INPUT TransTelemetry INPUT DistTelemetry OUTPUT AggTelemetry OIM AggTelemetry.Data_Lost.AND(GenTelemetry.Data_Lost; TransTelemetry.Data_Lost; DistTelemetry.Data_Lost) END FUNCTION // ============================================================ // SCADA / CONTROL (10 functions) // ============================================================ // -- Communication Networks (source components) -- FUNCTION CommNetwork_Primary OUTPUT PrimaryLink END FUNCTION FUNCTION CommNetwork_Backup OUTPUT BackupLink END FUNCTION // AND: both communication networks must fail FUNCTION CommAggregator INPUT PrimaryLink INPUT BackupLink OUTPUT CommLink OIM CommLink.Data_Lost.AND(PrimaryLink.Data_Lost; BackupLink.Data_Lost) END FUNCTION // SCADA Master: loses control if comm fails OR cyber attack OR telemetry lost FUNCTION SCADA_Master INPUT CommLink INPUT CyberInput INPUT TelemetryData OUTPUT ControlSignal OIM ControlSignal.Control_Lost.OR(CommLink.Data_Lost; CyberInput.Cyber_Active; TelemetryData.Data_Lost) END FUNCTION FUNCTION StateEstimator INPUT SCADAData OUTPUT GridState OIM GridState.Control_Lost.SCADAData.Control_Lost END FUNCTION FUNCTION ContingencyAnalysis INPUT GridStateInput OUTPUT Warnings OIM Warnings.Control_Lost.GridStateInput.Control_Lost END FUNCTION FUNCTION EnergyMgmtSystem INPUT AnalysisData OUTPUT Setpoints OIM Setpoints.Control_Lost.AnalysisData.Control_Lost END FUNCTION FUNCTION LoadDispatcher INPUT EMSData OUTPUT DispatchCmd OIM DispatchCmd.Control_Lost.EMSData.Control_Lost END FUNCTION // FrequencyControl: fails if grid frequency deviates OR dispatch is lost FUNCTION FrequencyControl INPUT FreqInput INPUT DispatchInput OUTPUT FreqRegulation OIM FreqRegulation.Control_Lost.OR(FreqInput.Freq_Deviation; DispatchInput.Control_Lost) END FUNCTION FUNCTION VoltageRegulator INPUT DispatchInput OUTPUT VoltRegulation OIM VoltRegulation.Control_Lost.DispatchInput.Control_Lost END FUNCTION // ============================================================ // ENERGY STORAGE (7 functions) // ============================================================ // -- Battery Storage (source components) -- FUNCTION BatteryStorage_1 OUTPUT DCPower END FUNCTION FUNCTION BatteryStorage_2 OUTPUT DCPower END FUNCTION FUNCTION BatteryMgmtSys_1 INPUT BatteryInput OUTPUT ManagedPower OIM ManagedPower.Power_Lost.BatteryInput.Power_Lost END FUNCTION FUNCTION BatteryMgmtSys_2 INPUT BatteryInput OUTPUT ManagedPower OIM ManagedPower.Power_Lost.BatteryInput.Power_Lost END FUNCTION FUNCTION GridInverter_1 INPUT DCInput OUTPUT AC_Power OIM AC_Power.Power_Lost.DCInput.Power_Lost END FUNCTION FUNCTION GridInverter_2 INPUT DCInput OUTPUT AC_Power OIM AC_Power.Power_Lost.DCInput.Power_Lost END FUNCTION // AND: both inverter paths must fail FUNCTION StorageAggregator INPUT Inverter1 INPUT Inverter2 OUTPUT AC_Power OIM AC_Power.Power_Lost.AND(Inverter1.Power_Lost; Inverter2.Power_Lost) END FUNCTION // ============================================================ // FINAL AGGREGATION (1 function) // ============================================================ // AND: ALL 4 LV panels must fail for regional blackout FUNCTION PowerDelivery INPUT LV1_Power INPUT LV2_Power INPUT LV3_Power INPUT LV4_Power OUTPUT RegionalSupply OIM RegionalSupply.Supply_Lost.AND(LV1_Power.Power_Lost; LV2_Power.Power_Lost; LV3_Power.Power_Lost; LV4_Power.Power_Lost) END FUNCTION // ============================================================ // INTERFACES (117) // ============================================================ // -- External input routing -- INT if001.RegionalGrid.IN.FuelAvailability.FuelSupply_A.IN.FuelAvail INT if002.RegionalGrid.IN.FuelAvailability.FuelSupply_B.IN.FuelAvail INT if003.RegionalGrid.IN.FuelAvailability.SteamUnit_A.IN.FuelInput INT if004.RegionalGrid.IN.FuelAvailability.BiomassPlant.IN.FuelInput INT if005.RegionalGrid.IN.AmbientTemperature.CoolingSystem_A.IN.AmbientTemp INT if006.RegionalGrid.IN.WindConditions.WindFarm_North.IN.WindInput INT if007.RegionalGrid.IN.WindConditions.WindFarm_South.IN.WindInput INT if008.RegionalGrid.IN.SolarIrradiance.SolarPark_East.IN.SolarInput INT if009.RegionalGrid.IN.SolarIrradiance.SolarPark_West.IN.SolarInput INT if010.RegionalGrid.IN.GridFrequency.FrequencyControl.IN.FreqInput INT if011.RegionalGrid.IN.GridFrequency.Interconnector_A.IN.ExtGridFreq INT if012.RegionalGrid.IN.GridFrequency.Interconnector_B.IN.ExtGridFreq INT if013.RegionalGrid.IN.LightningStrike.TransLine_North.IN.LightningIn INT if014.RegionalGrid.IN.LightningStrike.TransLine_South.IN.LightningIn INT if015.RegionalGrid.IN.LightningStrike.TransLine_East.IN.LightningIn INT if016.RegionalGrid.IN.LightningStrike.TransLine_West.IN.LightningIn INT if017.RegionalGrid.IN.CyberThreat.SCADA_Master.IN.CyberInput // -- Generation internal -- INT if018.FuelSupply_A.OUT.FuelFlow.GasTurbine_A.IN.FuelInput INT if019.FuelSupply_B.OUT.FuelFlow.GasTurbine_B.IN.FuelInput INT if020.CoolingSystem_A.OUT.CoolingCapacity.SteamUnit_A.IN.CoolingInput INT if021.GasTurbine_A.OUT.ElecPower.GenTransformer_A.IN.ConvPower INT if022.SteamUnit_A.OUT.ElecPower.GenTransformer_A.IN.SteamPower INT if023.GasTurbine_B.OUT.ElecPower.GenTransformer_B.IN.GenPower INT if024.WindFarm_North.OUT.ElecPower.GenTransformer_RE1.IN.WindPower_N INT if025.WindFarm_South.OUT.ElecPower.GenTransformer_RE1.IN.WindPower_S INT if026.SolarPark_East.OUT.ElecPower.GenTransformer_RE1.IN.SolarPower_E INT if027.SolarPark_West.OUT.ElecPower.GenTransformer_RE1.IN.SolarPower_W INT if028.Hydropower.OUT.ElecPower.GenTransformer_RE2.IN.HydroPower INT if029.BiomassPlant.OUT.ElecPower.GenTransformer_RE2.IN.BioPower // -- Control to generators -- INT if030.FrequencyControl.OUT.FreqRegulation.GasTurbine_A.IN.ControlInput INT if031.FrequencyControl.OUT.FreqRegulation.GasTurbine_B.IN.ControlInput INT if032.FrequencyControl.OUT.FreqRegulation.Hydropower.IN.ControlInput // -- Gen transformers to HV busbars -- INT if033.GenTransformer_A.OUT.HV_Power.HV_Busbar_1.IN.Feed_A INT if034.GenTransformer_B.OUT.HV_Power.HV_Busbar_1.IN.Feed_B INT if035.GenTransformer_RE1.OUT.HV_Power.HV_Busbar_1.IN.Feed_RE1 INT if036.GenTransformer_RE2.OUT.HV_Power.HV_Busbar_2.IN.Feed_RE2 INT if037.Interconnector_A.OUT.HV_Power.HV_Busbar_2.IN.Feed_IntA INT if038.Interconnector_B.OUT.HV_Power.HV_Busbar_2.IN.Feed_IntB // -- HV internal -- INT if039.HV_Busbar_1.OUT.HV_Power.HV_BusbarCoupler.IN.Bus1_Power INT if040.HV_Busbar_2.OUT.HV_Power.HV_BusbarCoupler.IN.Bus2_Power INT if041.HV_BusbarCoupler.OUT.HV_Power.CircuitBreaker_HV1.IN.PowerIn INT if042.HV_BusbarCoupler.OUT.HV_Power.CircuitBreaker_HV2.IN.PowerIn INT if043.HV_BusbarCoupler.OUT.HV_Power.CircuitBreaker_HV3.IN.PowerIn INT if044.HV_BusbarCoupler.OUT.HV_Power.CircuitBreaker_HV4.IN.PowerIn INT if045.CircuitBreaker_HV1.OUT.PowerOut.TransLine_North.IN.PowerIn INT if046.CircuitBreaker_HV2.OUT.PowerOut.TransLine_South.IN.PowerIn INT if047.CircuitBreaker_HV3.OUT.PowerOut.TransLine_East.IN.PowerIn INT if048.CircuitBreaker_HV4.OUT.PowerOut.TransLine_West.IN.PowerIn // -- Transmission to MV supply aggregators -- INT if049.TransLine_North.OUT.PowerOut.MV_SupplyAgg_1.IN.NorthFeed INT if050.TransLine_East.OUT.PowerOut.MV_SupplyAgg_1.IN.EastFeed INT if051.TransLine_South.OUT.PowerOut.MV_SupplyAgg_2.IN.SouthFeed INT if052.TransLine_West.OUT.PowerOut.MV_SupplyAgg_2.IN.WestFeed // -- MV supply to HV/MV transformers -- INT if053.MV_SupplyAgg_1.OUT.MV_Supply.Transformer_HV_MV_1.IN.HV_Input INT if054.MV_SupplyAgg_1.OUT.MV_Supply.Transformer_HV_MV_2.IN.HV_Input INT if055.MV_SupplyAgg_2.OUT.MV_Supply.Transformer_HV_MV_3.IN.HV_Input INT if056.MV_SupplyAgg_2.OUT.MV_Supply.Transformer_HV_MV_4.IN.HV_Input // -- HV/MV transformers to MV busbars -- INT if057.Transformer_HV_MV_1.OUT.MV_Power.MV_Busbar_1.IN.TrafoInput INT if058.Transformer_HV_MV_2.OUT.MV_Power.MV_Busbar_2.IN.TrafoInput INT if059.Transformer_HV_MV_3.OUT.MV_Power.MV_Busbar_3.IN.TrafoInput INT if060.Transformer_HV_MV_4.OUT.MV_Power.MV_Busbar_4.IN.TrafoInput // -- Storage to MV busbars 1+2 -- INT if061.StorageAggregator.OUT.AC_Power.MV_Busbar_1.IN.StorageInput INT if062.StorageAggregator.OUT.AC_Power.MV_Busbar_2.IN.StorageInput // -- MV busbars to feeders -- INT if063.MV_Busbar_1.OUT.MV_Power.MV_Feeder_1.IN.PowerIn INT if064.MV_Busbar_1.OUT.MV_Power.MV_Feeder_2.IN.PowerIn INT if065.MV_Busbar_2.OUT.MV_Power.MV_Feeder_3.IN.PowerIn INT if066.MV_Busbar_2.OUT.MV_Power.MV_Feeder_4.IN.PowerIn INT if067.MV_Busbar_3.OUT.MV_Power.MV_Feeder_5.IN.PowerIn INT if068.MV_Busbar_3.OUT.MV_Power.MV_Feeder_6.IN.PowerIn INT if069.MV_Busbar_4.OUT.MV_Power.MV_Feeder_7.IN.PowerIn INT if070.MV_Busbar_4.OUT.MV_Power.MV_Feeder_8.IN.PowerIn // -- Feeders to MV/LV transformers (cross-busbar redundancy) -- INT if071.MV_Feeder_1.OUT.PowerOut.Transformer_MV_LV_1.IN.Feeder_A INT if072.MV_Feeder_3.OUT.PowerOut.Transformer_MV_LV_1.IN.Feeder_B INT if073.MV_Feeder_2.OUT.PowerOut.Transformer_MV_LV_2.IN.Feeder_A INT if074.MV_Feeder_4.OUT.PowerOut.Transformer_MV_LV_2.IN.Feeder_B INT if075.MV_Feeder_5.OUT.PowerOut.Transformer_MV_LV_3.IN.Feeder_A INT if076.MV_Feeder_7.OUT.PowerOut.Transformer_MV_LV_3.IN.Feeder_B INT if077.MV_Feeder_6.OUT.PowerOut.Transformer_MV_LV_4.IN.Feeder_A INT if078.MV_Feeder_8.OUT.PowerOut.Transformer_MV_LV_4.IN.Feeder_B // -- MV/LV transformers to LV panels -- INT if079.Transformer_MV_LV_1.OUT.LV_Power.LV_Panel_1.IN.PowerIn INT if080.Transformer_MV_LV_2.OUT.LV_Power.LV_Panel_2.IN.PowerIn INT if081.Transformer_MV_LV_3.OUT.LV_Power.LV_Panel_3.IN.PowerIn INT if082.Transformer_MV_LV_4.OUT.LV_Power.LV_Panel_4.IN.PowerIn // -- LV panels to power delivery -- INT if083.LV_Panel_1.OUT.PowerOut.PowerDelivery.IN.LV1_Power INT if084.LV_Panel_2.OUT.PowerOut.PowerDelivery.IN.LV2_Power INT if085.LV_Panel_3.OUT.PowerOut.PowerDelivery.IN.LV3_Power INT if086.LV_Panel_4.OUT.PowerOut.PowerDelivery.IN.LV4_Power // -- Power delivery to system output -- INT if087.PowerDelivery.OUT.RegionalSupply.RegionalGrid.OUT.PowerSupply // -- Storage chain -- INT if088.BatteryStorage_1.OUT.DCPower.BatteryMgmtSys_1.IN.BatteryInput INT if089.BatteryStorage_2.OUT.DCPower.BatteryMgmtSys_2.IN.BatteryInput INT if090.BatteryMgmtSys_1.OUT.ManagedPower.GridInverter_1.IN.DCInput INT if091.BatteryMgmtSys_2.OUT.ManagedPower.GridInverter_2.IN.DCInput INT if092.GridInverter_1.OUT.AC_Power.StorageAggregator.IN.Inverter1 INT if093.GridInverter_2.OUT.AC_Power.StorageAggregator.IN.Inverter2 // -- Protection relays to RTUs -- INT if094.DifferentialRelay_1.OUT.RelaySignal.RTU_Generation.IN.DiffRelay1_Signal INT if095.DifferentialRelay_2.OUT.RelaySignal.RTU_Generation.IN.DiffRelay2_Signal INT if096.UnderfreqRelay.OUT.RelaySignal.RTU_Generation.IN.UfreqRelay_Signal INT if097.DistanceRelay_1.OUT.RelaySignal.RTU_Transmission.IN.DistRelay1_Signal INT if098.DistanceRelay_2.OUT.RelaySignal.RTU_Transmission.IN.DistRelay2_Signal INT if099.DistanceRelay_3.OUT.RelaySignal.RTU_Transmission.IN.DistRelay3_Signal INT if100.DistanceRelay_4.OUT.RelaySignal.RTU_Transmission.IN.DistRelay4_Signal INT if101.OvercurrentRelay_1.OUT.RelaySignal.RTU_Distribution.IN.OcRelay1_Signal INT if102.OvercurrentRelay_2.OUT.RelaySignal.RTU_Distribution.IN.OcRelay2_Signal INT if103.OvervoltageProtection.OUT.RelaySignal.RTU_Distribution.IN.OvProt_Signal INT if104.AutoRecloser.OUT.RelaySignal.RTU_Distribution.IN.AutoRecl_Signal // -- RTUs to aggregator -- INT if105.RTU_Generation.OUT.TelemetryData.RTU_Aggregator.IN.GenTelemetry INT if106.RTU_Transmission.OUT.TelemetryData.RTU_Aggregator.IN.TransTelemetry INT if107.RTU_Distribution.OUT.TelemetryData.RTU_Aggregator.IN.DistTelemetry // -- Communication to SCADA -- INT if108.CommNetwork_Primary.OUT.PrimaryLink.CommAggregator.IN.PrimaryLink INT if109.CommNetwork_Backup.OUT.BackupLink.CommAggregator.IN.BackupLink INT if110.CommAggregator.OUT.CommLink.SCADA_Master.IN.CommLink INT if111.RTU_Aggregator.OUT.AggTelemetry.SCADA_Master.IN.TelemetryData // -- SCADA chain -- INT if112.SCADA_Master.OUT.ControlSignal.StateEstimator.IN.SCADAData INT if113.StateEstimator.OUT.GridState.ContingencyAnalysis.IN.GridStateInput INT if114.ContingencyAnalysis.OUT.Warnings.EnergyMgmtSystem.IN.AnalysisData INT if115.EnergyMgmtSystem.OUT.Setpoints.LoadDispatcher.IN.EMSData INT if116.LoadDispatcher.OUT.DispatchCmd.FrequencyControl.IN.DispatchInput INT if117.LoadDispatcher.OUT.DispatchCmd.VoltageRegulator.IN.DispatchInput TLE RegionalBlackout.PowerSupply.Supply_Lost END FUNCTION // ============================================================ // FAULT RATES // ============================================================ // --- ISF (external input fault rates) --- ISF RegionalGrid.FuelAvailability.Supply_Lost 1.0e-06 ISF RegionalGrid.WindConditions.Wind_Insufficient 2.0e-06 ISF RegionalGrid.SolarIrradiance.Irradiance_Low 2.0e-06 ISF RegionalGrid.AmbientTemperature.Temp_Extreme 5.0e-07 ISF RegionalGrid.GridFrequency.Freq_Deviation 1.0e-06 ISF RegionalGrid.CyberThreat.Cyber_Active 5.0e-07 ISF RegionalGrid.LightningStrike.Lightning_Strike 3.0e-07 // --- SF (systemic fault rates) --- // Generation SF FuelSupply_A.FuelFlow.Flow_Lost 1.0e-06 SF FuelSupply_B.FuelFlow.Flow_Lost 1.0e-06 SF CoolingSystem_A.CoolingCapacity.Cooling_Lost 1.0e-06 SF GasTurbine_A.ElecPower.Power_Lost 2.0e-06 SF GasTurbine_B.ElecPower.Power_Lost 2.0e-06 SF SteamUnit_A.ElecPower.Power_Lost 1.5e-06 SF WindFarm_North.ElecPower.Power_Lost 3.0e-06 SF WindFarm_South.ElecPower.Power_Lost 3.0e-06 SF SolarPark_East.ElecPower.Power_Lost 2.5e-06 SF SolarPark_West.ElecPower.Power_Lost 2.5e-06 SF Hydropower.ElecPower.Power_Lost 1.0e-06 SF BiomassPlant.ElecPower.Power_Lost 2.0e-06 SF GenTransformer_A.HV_Power.Power_Lost 5.0e-07 SF GenTransformer_B.HV_Power.Power_Lost 5.0e-07 SF GenTransformer_RE1.HV_Power.Power_Lost 5.0e-07 SF GenTransformer_RE2.HV_Power.Power_Lost 5.0e-07 // HV Transmission SF HV_Busbar_1.HV_Power.Power_Lost 2.0e-07 SF HV_Busbar_2.HV_Power.Power_Lost 2.0e-07 SF HV_BusbarCoupler.HV_Power.Power_Lost 3.0e-07 SF CircuitBreaker_HV1.PowerOut.Power_Lost 1.0e-06 SF CircuitBreaker_HV2.PowerOut.Power_Lost 1.0e-06 SF CircuitBreaker_HV3.PowerOut.Power_Lost 1.0e-06 SF CircuitBreaker_HV4.PowerOut.Power_Lost 1.0e-06 SF TransLine_North.PowerOut.Power_Lost 1.5e-06 SF TransLine_South.PowerOut.Power_Lost 1.5e-06 SF TransLine_East.PowerOut.Power_Lost 1.5e-06 SF TransLine_West.PowerOut.Power_Lost 1.5e-06 SF Interconnector_A.HV_Power.Power_Lost 1.0e-06 SF Interconnector_B.HV_Power.Power_Lost 1.0e-06 // MV Distribution SF MV_SupplyAgg_1.MV_Supply.Power_Lost 1.0e-07 SF MV_SupplyAgg_2.MV_Supply.Power_Lost 1.0e-07 SF Transformer_HV_MV_1.MV_Power.Power_Lost 5.0e-07 SF Transformer_HV_MV_2.MV_Power.Power_Lost 5.0e-07 SF Transformer_HV_MV_3.MV_Power.Power_Lost 5.0e-07 SF Transformer_HV_MV_4.MV_Power.Power_Lost 5.0e-07 SF MV_Busbar_1.MV_Power.Power_Lost 2.0e-07 SF MV_Busbar_2.MV_Power.Power_Lost 2.0e-07 SF MV_Busbar_3.MV_Power.Power_Lost 2.0e-07 SF MV_Busbar_4.MV_Power.Power_Lost 2.0e-07 SF MV_Feeder_1.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_2.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_3.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_4.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_5.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_6.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_7.PowerOut.Power_Lost 1.0e-06 SF MV_Feeder_8.PowerOut.Power_Lost 1.0e-06 // LV Distribution SF Transformer_MV_LV_1.LV_Power.Power_Lost 5.0e-07 SF Transformer_MV_LV_2.LV_Power.Power_Lost 5.0e-07 SF Transformer_MV_LV_3.LV_Power.Power_Lost 5.0e-07 SF Transformer_MV_LV_4.LV_Power.Power_Lost 5.0e-07 SF LV_Panel_1.PowerOut.Power_Lost 1.0e-06 SF LV_Panel_2.PowerOut.Power_Lost 1.0e-06 SF LV_Panel_3.PowerOut.Power_Lost 1.0e-06 SF LV_Panel_4.PowerOut.Power_Lost 1.0e-06 // Protection (source components) SF DifferentialRelay_1.RelaySignal.Signal_Lost 1.0e-06 SF DifferentialRelay_2.RelaySignal.Signal_Lost 1.0e-06 SF UnderfreqRelay.RelaySignal.Signal_Lost 1.0e-06 SF DistanceRelay_1.RelaySignal.Signal_Lost 1.0e-06 SF DistanceRelay_2.RelaySignal.Signal_Lost 1.0e-06 SF DistanceRelay_3.RelaySignal.Signal_Lost 1.0e-06 SF DistanceRelay_4.RelaySignal.Signal_Lost 1.0e-06 SF OvercurrentRelay_1.RelaySignal.Signal_Lost 1.0e-06 SF OvercurrentRelay_2.RelaySignal.Signal_Lost 1.0e-06 SF OvervoltageProtection.RelaySignal.Signal_Lost 1.0e-06 SF AutoRecloser.RelaySignal.Signal_Lost 1.0e-06 // RTU / Telemetry SF RTU_Generation.TelemetryData.Data_Lost 1.0e-06 SF RTU_Transmission.TelemetryData.Data_Lost 1.0e-06 SF RTU_Distribution.TelemetryData.Data_Lost 1.0e-06 SF RTU_Aggregator.AggTelemetry.Data_Lost 5.0e-07 // SCADA / Control SF CommNetwork_Primary.PrimaryLink.Data_Lost 1.0e-06 SF CommNetwork_Backup.BackupLink.Data_Lost 1.0e-06 SF CommAggregator.CommLink.Data_Lost 2.0e-07 SF SCADA_Master.ControlSignal.Control_Lost 1.0e-06 SF StateEstimator.GridState.Control_Lost 5.0e-07 SF ContingencyAnalysis.Warnings.Control_Lost 5.0e-07 SF EnergyMgmtSystem.Setpoints.Control_Lost 5.0e-07 SF LoadDispatcher.DispatchCmd.Control_Lost 1.0e-06 SF FrequencyControl.FreqRegulation.Control_Lost 5.0e-07 SF VoltageRegulator.VoltRegulation.Control_Lost 5.0e-07 // Storage SF BatteryStorage_1.DCPower.Power_Lost 2.0e-06 SF BatteryStorage_2.DCPower.Power_Lost 2.0e-06 SF BatteryMgmtSys_1.ManagedPower.Power_Lost 1.0e-06 SF BatteryMgmtSys_2.ManagedPower.Power_Lost 1.0e-06 SF GridInverter_1.AC_Power.Power_Lost 1.5e-06 SF GridInverter_2.AC_Power.Power_Lost 1.5e-06 SF StorageAggregator.AC_Power.Power_Lost 2.0e-07 // Aggregation SF PowerDelivery.RegionalSupply.Supply_Lost 1.0e-07 // --- TF (transfer fault rates) --- TF if001.Supply_Lost 1.0e-07 TF if002.Supply_Lost 1.0e-07 TF if003.Flow_Lost 1.0e-07 TF if004.Flow_Lost 1.0e-07 TF if005.Temp_Extreme 1.0e-07 TF if006.Wind_Insufficient 1.0e-07 TF if007.Wind_Insufficient 1.0e-07 TF if008.Irradiance_Low 1.0e-07 TF if009.Irradiance_Low 1.0e-07 TF if010.Freq_Deviation 1.0e-07 TF if011.Freq_Deviation 1.0e-07 TF if012.Freq_Deviation 1.0e-07 TF if013.Lightning_Strike 1.0e-07 TF if014.Lightning_Strike 1.0e-07 TF if015.Lightning_Strike 1.0e-07 TF if016.Lightning_Strike 1.0e-07 TF if017.Cyber_Active 1.0e-07 TF if018.Flow_Lost 1.0e-07 TF if019.Flow_Lost 1.0e-07 TF if020.Cooling_Lost 1.0e-07 TF if021.Power_Lost 1.0e-07 TF if022.Power_Lost 1.0e-07 TF if023.Power_Lost 1.0e-07 TF if024.Power_Lost 1.0e-07 TF if025.Power_Lost 1.0e-07 TF if026.Power_Lost 1.0e-07 TF if027.Power_Lost 1.0e-07 TF if028.Power_Lost 1.0e-07 TF if029.Power_Lost 1.0e-07 TF if030.Control_Lost 1.0e-07 TF if031.Control_Lost 1.0e-07 TF if032.Control_Lost 1.0e-07 TF if033.Power_Lost 1.0e-07 TF if034.Power_Lost 1.0e-07 TF if035.Power_Lost 1.0e-07 TF if036.Power_Lost 1.0e-07 TF if037.Power_Lost 1.0e-07 TF if038.Power_Lost 1.0e-07 TF if039.Power_Lost 1.0e-07 TF if040.Power_Lost 1.0e-07 TF if041.Power_Lost 1.0e-07 TF if042.Power_Lost 1.0e-07 TF if043.Power_Lost 1.0e-07 TF if044.Power_Lost 1.0e-07 TF if045.Power_Lost 1.0e-07 TF if046.Power_Lost 1.0e-07 TF if047.Power_Lost 1.0e-07 TF if048.Power_Lost 1.0e-07 TF if049.Power_Lost 1.0e-07 TF if050.Power_Lost 1.0e-07 TF if051.Power_Lost 1.0e-07 TF if052.Power_Lost 1.0e-07 TF if053.Power_Lost 1.0e-07 TF if054.Power_Lost 1.0e-07 TF if055.Power_Lost 1.0e-07 TF if056.Power_Lost 1.0e-07 TF if057.Power_Lost 1.0e-07 TF if058.Power_Lost 1.0e-07 TF if059.Power_Lost 1.0e-07 TF if060.Power_Lost 1.0e-07 TF if061.Power_Lost 1.0e-07 TF if062.Power_Lost 1.0e-07 TF if063.Power_Lost 1.0e-07 TF if064.Power_Lost 1.0e-07 TF if065.Power_Lost 1.0e-07 TF if066.Power_Lost 1.0e-07 TF if067.Power_Lost 1.0e-07 TF if068.Power_Lost 1.0e-07 TF if069.Power_Lost 1.0e-07 TF if070.Power_Lost 1.0e-07 TF if071.Power_Lost 1.0e-07 TF if072.Power_Lost 1.0e-07 TF if073.Power_Lost 1.0e-07 TF if074.Power_Lost 1.0e-07 TF if075.Power_Lost 1.0e-07 TF if076.Power_Lost 1.0e-07 TF if077.Power_Lost 1.0e-07 TF if078.Power_Lost 1.0e-07 TF if079.Power_Lost 1.0e-07 TF if080.Power_Lost 1.0e-07 TF if081.Power_Lost 1.0e-07 TF if082.Power_Lost 1.0e-07 TF if083.Power_Lost 1.0e-07 TF if084.Power_Lost 1.0e-07 TF if085.Power_Lost 1.0e-07 TF if086.Power_Lost 1.0e-07 TF if087.Supply_Lost 1.0e-07 TF if088.Power_Lost 1.0e-07 TF if089.Power_Lost 1.0e-07 TF if090.Power_Lost 1.0e-07 TF if091.Power_Lost 1.0e-07 TF if092.Power_Lost 1.0e-07 TF if093.Power_Lost 1.0e-07 TF if094.Signal_Lost 1.0e-07 TF if095.Signal_Lost 1.0e-07 TF if096.Signal_Lost 1.0e-07 TF if097.Signal_Lost 1.0e-07 TF if098.Signal_Lost 1.0e-07 TF if099.Signal_Lost 1.0e-07 TF if100.Signal_Lost 1.0e-07 TF if101.Signal_Lost 1.0e-07 TF if102.Signal_Lost 1.0e-07 TF if103.Signal_Lost 1.0e-07 TF if104.Signal_Lost 1.0e-07 TF if105.Data_Lost 1.0e-07 TF if106.Data_Lost 1.0e-07 TF if107.Data_Lost 1.0e-07 TF if108.Data_Lost 1.0e-07 TF if109.Data_Lost 1.0e-07 TF if110.Data_Lost 1.0e-07 TF if111.Data_Lost 1.0e-07 TF if112.Control_Lost 1.0e-07 TF if113.Control_Lost 1.0e-07 TF if114.Control_Lost 1.0e-07 TF if115.Control_Lost 1.0e-07 TF if116.Control_Lost 1.0e-07 TF if117.Control_Lost 1.0e-07