Code2flow - Online Interactive Code To Flowchart Converter
Code2flow - Online Interactive Code To Flowchart Converter
0 beta - flowcharts management, editable and private projects, sharing charts with the team and more! REQUEST ACCESS
Power Management System In
Parallel Operation
Created by Eka Nugraha
Wika Rekayasa Konsutruksi
Date : 18 September 2019
+ calculate total genset in
ccp operation
+ calculate total power
genset in gcp operation
+ calculate total power
genset in ccp operation
+ calculate total houseload
+ active load sharing ->
enable / disable
- implementation in loop
operation
- detect trouble in 20KV or
load rejection, convert to
island operation
bool Genset1ReadyForPlantPowerMode
bool Genset2ReadyForPlantPowerMode
bool PowerManagement1CCPPowerMode
bool PowerManagement2CCPPowerMode
active load sharing int totalGensetCCPMode
oat PowerMaximumGenset1
oat PowerMaximumGenset2
oat PowerMinimumGenset1
oat PowerMinimumGenset2
oat requestedPowerGenset2
oat actualBusBarValuePlant
oat actualGeneratorSetPoint
oat actualBusBarValueGeneratorTotal
oat actualBusBarValueGeneratorTotalCCP
oat actualBusBarValueGenerator2
modbus ANABBA01 ActivePower oat actualBusBarValueHouseLoad
modbus ANABBB01 ActivePower oat actualBusBarValueHouseLoad1
oat actualBusBarValueHouseLoad2
void assignCCPMode()
void calculateHouseLoad()
void calculatePowerGeneratorGCP()
void calculatePowerGeneratorCCP()
oat activeLoadSharing(bool Enable, oat requestValuePowerPlant)
void setup()
PowerMaximumGenset1 = 10
PowerMinimumGenset1 = 0.5
PowerMaximumGenset2 = 10
PowerMinimumGenset2 = 0.5
void loop()
assignCCPMode()
calculateHouseLoad()
calculatePowerGeneratorCCP()
detect and assign CCP Mode calculatePowerGeneratorGCP()
detect
GensetReadyForPowerPlant and void assignCCPMode()
assign to CCP Operation
send to GCP Genset1ReadyForPlantPowerMode == 1
True
PowerManagement1CCPPowerMode = 1 False
send to GCP Genset2ReadyForPlantPowerMode == 1
True
calculate Total Genset in False
PowerManagement2CCPPowerMode = 1
CCP Mode
(Genset1ReadyForPlantPowerMode == 1) && (Genset2ReadyForPlantPowerMode == 1)
True False
((Genset1ReadyForPlantPowerMode == 1) && (Genset2ReadyForPlantPowerMode == 0)
totalGensetCCPMode = 2 False
True ((Genset1ReadyForPlantPowerMode == 0) && (Genset2ReadyForPlantPowerMode == 1)
True False
) totalGensetCCPMode = 1 ((Genset1ReadyForPlantPowerMode == 0) && (Genset2ReadyForPlantPowerMode == 0)
True
) totalGensetCCPMode = 0 False
oat activeLoadSharing(bool Enable, oat requestValuePowerPlant)
oat tempRequestPowerEachGenset
(Enable == 1) && (requestValuePowerPlant > 0)
True False
tempRequestPowerEachGenset = ((requestValuePowerPlant + actualBusBarValueHouseLoad) - actualBusBarValueGeneratorTotalGCP) / totalGensetCCPMode void calculateHouseLoad()
tempRequestPowerEachGenset actualBusBarValueHouseLoad = actualBusBarValueHouseLoad1 + actualBusBarValueHouseLoad2
void calculatePowerGeneratorGCP()
Genset detect Generator 1 in
oat tempPowerGeneratorGCP
GCP operation
Genset1ReadyForPlantPowerMode == 0
True
Genset detect Generator 2 in False
tempPowerGeneratorGCP += actualBusBarValueGenerator1
GCP operation
Genset2ReadyForPlantPowerMode == 0
True
tempPowerGeneratorGCP += actualBusBarValueGenerator2 False
actualBusBarValueGeneratorTotalGCP = tempPowerGeneratorGCP
void calculatePowerGeneratorCCP()
Genset detect Generator 1 in
oat tempPowerGeneratorCCP
GCP operation
Genset1ReadyForPlantPowerMode == 1
True
Genset detect Generator 2 in False
tempPowerGeneratorCCP += actualBusBarValueGenerator1
GCP operation
Genset2ReadyForPlantPowerMode == 1
True
tempPowerGeneratorCCP += actualBusBarValueGenerator2 False
actualBusBarValueGeneratorTotalGCP = tempPowerGeneratorCCP