bool IRecloserProgram.Execute(RecloserState state) { if (!state.currentState)//if turned off { if (tryCounter < tries) { timer = (state.time - lastEventTime); if (timer > waitTime) { tryCounter++; lastEventTime = state.time; return(true);//try to turn on } } return(false); } double p = state.IA * state.UA + state.IB * state.UB + state.IC * state.UC; if ( Math.Abs(state.IA) > iPeakMax || Math.Abs(state.IB) > iPeakMax || Math.Abs(state.IC) > iPeakMax || Math.Abs(p) > pPeakMax ) { lastEventTime = state.time; return(false); } if (state.time - lastEventTime > restoreTriesTime) { tryCounter = 0; } return(state.currentState); }
public bool GetNewState(TransientState transientState, double time) { RecloserState recloserState = new RecloserState( transientState.GetValue(IA), transientState.GetValue(IB), transientState.GetValue(IC), transientState.GetValue(in_pin.VA), transientState.GetValue(in_pin.VB), transientState.GetValue(in_pin.VC), time, State); return(program.Execute(recloserState)); }
bool IRecloserProgram.Execute(RecloserState state) { throw new NotImplementedException("RecloserProgram.Execute"); }