Está en la página 1de 9

IEEE Governor Models

Please Note: Type CMLFieldType has been changed to CMLFieldEnum. For example, CMLFieldType.ControlBlock has been changed to CMLFieldEnum.ControlBlock.

IEEE Steam Non-Reheat (SteamNR) (Source)

@AnController( input="mach.speed - 1.0", output="this.delayBlock.y", refPoint="this.gainBlock.u0 + this.filterBlock.y + this.intBlock.y", display= {"str.Pm, this.output"} ) public double k = 10.0, t1 = 0.5, t2 = 0.1; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="mach.speed - 1.0", parameter={"type.NoLimit", "this.k", "this.t2", "this.t1"}, y0="this.refPoint - this.gainBlock.y - this.intBlock.y" ) FilterControlBlock filterBlock; public double k3 = 1.0 /* 1.0/t3 */, pup = 1.2, pdown = 0.0; @AnControllerField( type= CMLFieldEnum.StaticBlock, input="this.refPoint - this.filterBlock.y this.intBlock.y", parameter={"type.Limit", "this.k3", "this.pup", "this.pdown"}, y0="this.intBlock.u0" ) GainBlock gainBlock; public double kint = 1.0, pmax = 10.0, pmin = 0.0; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.gainBlock.y", parameter={"type.Limit", "this.kint", "this.pmax", "this.pmin"}, y0="this.delayBlock.u0" ) IntegrationControlBlock intBlock;

public double kch = 1.0, tch = 1.2; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.intBlock.y", parameter={"type.NoLimit", "this.kch", "this.tch"}, y0="mach.pm" ) DelayControlBlock delayBlock;

Default Parameter Name K T1 T2 T3 Pmax Pmin Pup Type Default Unit Max Min pu sec sec sec pu pu pu sec sec ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

double ? double ? double ? double ? double ? double double ? ? ? ?

Pdown double Tch double

IEEE Steam Tandem Compound Single Reheat (StreamTCSR) (Source)

Up: Steam Speed Governor Down: Tandem Compound Single Reheat Turbine

@AnController( input="mach.speed - 1.0", output="this.fhp*this.chDelayBlock.y + this.fip*this.rhDelayBlock.y + this.flp*this.coDelayBlock.y", refPoint="this.gainBlock.u0 + this.filterBlock.y + this.intBlock.y", display= {"str.Pm, this.output", "str.CoBlock, this.coDelayBlock.y", "str.RhBlock, this.rhDelayBlock.y", "str.ChBlock, this.chDelayBlock.y"} ) public double fhp = 0.2, fip = 0.3, flp = 0.5; public double k = 1.0, t1 = 0.5, t2 = 0.1; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="mach.speed - 1.0", parameter={"type.NoLimit", "this.k", "this.t2", "this.t1"}, y0 = "this.refPoint - this.gainBlock.y -

this.intBlock.y" ) FilterControlBlock filterBlock; public double k3 = 1.0 /* 1.0/t3 */, pup = 1.2, pdown = 0.0; @AnControllerField( type= CMLFieldEnum.StaticBlock, input="this.refPoint - this.filterBlock.y this.intBlock.y", parameter={"type.Limit", "this.k3", "this.pup", "this.pdown"}, y0="this.intBlock.u0" ) GainBlock gainBlock; public double kint = 1.0, pmax = 10.0, pmin = 0.0; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.gainBlock.y", parameter={"type.Limit", "this.kint", "this.pmax", "this.pmin"}, y0="this.chDelayBlock.u0" ) IntegrationControlBlock intBlock; public double kch = 1.0, tch = 1.2; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.intBlock.y", parameter={"type.NoLimit", "this.kch", "this.tch"}, y0="this.rhDelayBlock.u0" ) DelayControlBlock chDelayBlock; public double krh = 1.0, trh = 1.2; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.chDelayBlock.y", parameter={"type.NoLimit", "this.krh", "this.trh"}, y0="this.coDelayBlock.u0" ) DelayControlBlock rhDelayBlock; public double kco = 1.0, tco = 1.2, factor = 1.0 / (fhp+fip+flp); @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.rhDelayBlock.y", parameter={"type.NoLimit", "this.kco", "this.tco"}, y0="this.factor*mach.pm" ) DelayControlBlock coDelayBlock;

Default Parameter Name K T1 T2 T3 Pmax Type Default Unit Max Min pu sec sec sec pu ? ? ? ? ? ? ? ? ? ?

double ? double ? double ? double ? double ?

Pmin Pup

double double

? ? ? ? ? ? ? ? ?

pu pu sec sec sec sec pu pu pu

? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ?

Pdown double Tch Trh Tco Fch Fip Flp double double double double double double

IEEE Steam Tandem Compound Double Reheat (SteamTCDR) (Source)

Up: Steam Speed Governor Down: Tandem Compound Double Reheat Turbine
@AnController( input="mach.speed - 1.0", output="this.fvhp*this.chDelayBlock.y + this.fhp*this.rh1DelayBlock.y + this.fip*this.rh2DelayBlock.y + this.flp*this.coDelayBlock.y", refPoint="this.gainBlock.u0 + this.filterBlock.y + this.intBlock.y", display= {"str.Pm, this.output"} ) public double fvhp = 0.1, fhp = 0.1, fip = 0.3, flp = 0.5; public double k = 10.0, t1 = 0.5, t2 = 0.1; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="mach.speed - 1.0", parameter={"type.NoLimit", "this.k", "this.t2", "this.t1"}, y0 = "this.refPoint - this.gainBlock.y - this.intBlock.y" ) FilterControlBlock filterBlock; public double k3 = 1.0 /* 1.0/t3 */, pup = 1.2, pdown = 0.0; @AnControllerField(

type= CMLFieldEnum.StaticBlock, input="this.refPoint - this.filterBlock.y this.intBlock.y", parameter={"type.Limit", "this.k3", "this.pup", "this.pdown"}, y0="this.intBlock.u0" ) GainBlock gainBlock; public double kint = 1.0, pmax = 10.0, pmin = 0.0; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.gainBlock.y", parameter={"type.Limit", "this.kint", "this.pmax", "this.pmin"}, y0="this.coDelayBlock.u0" ) IntegrationControlBlock intBlock; public double kch = 1.0, tch = 1.2; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.intBlock.y", parameter={"type.NoLimit", "this.kch", "this.tch"}, y0="this.rh1DelayBlock.u0" ) DelayControlBlock chDelayBlock; public double krh1 = 1.0, trh1 = 1.2; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.chDelayBlock.y", parameter={"type.NoLimit", "this.krh1", "this.trh1"}, y0="this.rh2DelayBlock.u0" ) DelayControlBlock rh1DelayBlock; public double krh2 = 1.0, trh2 = 1.2; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.rh1DelayBlock.y", parameter={"type.NoLimit", "this.krh2", "this.trh2"}, y0="this.coDelayBlock.u0" ) DelayControlBlock rh2DelayBlock; public double kco = 1.0, tco = 1.2, factor = 1.0 / (fvhp+fhp+fip+flp); @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.rh2DelayBlock.y", parameter={"type.NoLimit", "this.kco", "this.tco"}, y0="this.factor*mach.pm" ) DelayControlBlock coDelayBlock;

Default Parameter Name K T1 T2 Type Default Unit Max Min pu sec sec ? ? ? ? ? ?

double ? double ? double ?

T3 Pmax Pmin Pup

double ? double ? double double ? ? ? ? ? ? ? ? ? ? ?

sec pu pu pu sec sec sec sec sec pu pu pu pu

? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ?

Pdown double Tch Trh1 Trh2 Tco Fvhp Fhp Fip Flp double double double double double double double double

IEEE Hydro Turbine (Source)

@AnController( input="mach.speed - 1.0", output="this.wFilterBlock.y", refPoint="this.gainBlock.u0 + this.delayBlock.y", display= {"str.Pm, this.output"} ) public double k = 1.0, t2 = 0.5, t1 = 0.01; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="mach.speed - 1.0",

parameter={"type.NoLimit", "this.k", "this.t2", "this.t1"}, y0="this.delayBlock.u0" ) FilterControlBlock filterBlock; public double k1 = 10.0, t3 = 0.5; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.filterBlock.y", parameter={"type.NoLimit", "this.k1", "this.t3"}, y0="this.refPoint - this.gainBlock.y" ) DelayControlBlock delayBlock; public double kgain = 1.0, pmax = 1.2, pmin = 0.0; @AnControllerField( type= CMLFieldEnum.StaticBlock, input="this.refPoint - this.delayBlock.y", parameter={"type.Limit", "this.kgain", "this.pmax", "this.pmin"}, y0="this.wFilterBlock.u0" ) GainBlock gainBlock; public double kf2 = 1.0, tw = 0.1, t4 = -0.5*tw, t5 = 0.5*tw; @AnControllerField( type= CMLFieldEnum.ControlBlock, input="this.gainBlock.y", parameter={"type.NoLimit", "this.kf2", "this.t4", "this.t5"}, y0="mach.pm" ) FilterControlBlock wFilterBlock;

Default Parameter Name Type K T1 T2 T3 Default Unit Max Min pu sec sec sec pu pu sec ? ? ? ? ? ? ? ? ? ? ? ? ? ?

double ? double ? double ? double ?

Pmax double ? Pmin Tw double double ? ?

Reference: [1] "Dynamic Models for Steam and Hydro Turbines in Power System Studies," IEEE Transactions on Power Apparatus and Systems, Vol. PAS-92, pp. 1904-1915, 1973 (Committee Report)

También podría gustarte