Sunteți pe pagina 1din 18

Excitation System Model

yo = lim(ypp+yii+ydd, VRMIN, VRMAX)


ypp = KPR*yi
yii = KIR*xi
xi. = select({yo>=VRMAX .and. yi>0}.or.{yo<=VRMIN .and. yi<0}, 0, yi)
ydd = KDR*xdd
xdd = (yi-xd)/TDR
xd. = xdd

limits(T)=[0,)
x.=select(T>0,(yi-x)/T,0.0)
yo=select(T>0,x,yi)

1/(1+sT)
TR

Vc

usetp

KPR,K

VRMIN

vs ig

inc(F0) = uerrs/(curex*KC)
inc(IN01) = 1/(F0+0.577)
inc(IN02) = sqrt(0.75/(1+F0*F0))
inc(IN03) = 1.732/(F0+1.7332)
inc(FN01) = 1-0.577*IN01
inc(FN02) = sqrt(0.75-sqr(IN02))
inc(FN03) = 1.732-1.732*IN03
inc(Fex) = select(IN01>=0.and.IN01<=0.433,FN01,
&
select(IN03<=1.and.IN03>=0.75,FN03,FN02))

avr_AC7B: Excitation System

inc(upss) = 0
inc(vuel) = 0
3
inc(xR) = u
inc(xE) = VE
inc(VE) = uerrs/Fex
inc(VFE) = KD*curex+Vxe+KE*VE
inc(xd_pid)= usetp-u
inc(xi_pid)= select(KIR>0, VR/KIR, 0)
inc(xF) = VFE
inc(xi_pi) = select(KIA>0, VA/KIA, 0)
inc(usetp) = select(KIR>0, u, VR/KPR)
inc(VR) = select(KIA>0, KF2*VFE+KF1*uerrs, KF2*VFE+KF1*uerrs+VA/KPA)
curex
4
inc(VA) = select(KP>0, VFE/KP/u, VFE)

Vf

upss

vuel

sK
K

inc(o5)=VA
vardef(TR) = 's' ; 'Voltage transducer time const'
vardef(KPR) = ' ' ; 'Voltage regulator proportional gain'
vardef(KIR) = ' ' ; 'Voltage regulator integral gain'
vardef(KDR) = ' ' ; 'Voltage regulator differential gain'
vardef(TDR) = 's' ; 'Voltage regulator differential time constant'
vardef(KPA) = ' ' ; 'Field current loop proportional gain'
vardef(KIA) = ' ' ; 'Field current loop integral gain'
vardef(TE) = 's' ; 'Exciter field time constant'
vardef(KE) = 'pu'; 'Exciter droop'
vardef(E1) = 'pu'; 'Field Voltage for SE1'
vardef(E2) = 'pu'; 'Field Voltage for SE2'
vardef(SE1) = 'pu'; 'Saturation at E1'
vardef(SE2) = 'pu'; 'Saturation at E2'
vardef(KD) = 'pu'; 'Demagnetising factor'
vardef(KC) = 'pu'; 'Rectifier loading factor'
vardef(VAMAX) = 'pu'; 'Field current loop maximum output'
vardef(VAMIN) = 'pu'; 'Field current loop minimum output'
vardef(VRMAX) = 'pu'; 'Voltage regulator maximum output'
vardef(VRMIN) = 'pu'; 'Voltage regulator minimum output'
vardef(KL) = 'pu'; 'Current loop limitation factor'
vardef(VFEMAX)= 'pu'; 'Exciter field current limit reference'
vardef(VFEMIN) = 'pu'; 'Minimum exciter output voltage'
vardef(KF1) = ' ' ; 'Exciter stabilising feedback gain'
vardef(KF2) = ' ' ; 'Exciter field current feedback gain'
vardef(KF3) = ' ' ; 'Field current stabilising feedback gain'
vardef(TF3) = 'pu'; 'Field current stabilising feednack time constant'
vardef(KP) = ' ' ; 'Potential circuit gain coefficient'

curex

tem Model

yo=K*yi

xr System Model
avr_AC7B: Excitation
KpVt

KPVT
KP

usetp

VRMAX

PID
KPR,KIR,KDR,TDR

VRMIN

VAMAX

VR

PI
KPA,KIA

xi,xd
ypp,yii,ydd,xdd

VAMIN

VA

Lim iter
KL

xi
ypp,yii

{1/s
T

VFEMIN

K
KF2

Vf

upss

xf

sK/(1+s T)
KF3,TF3

vuel

K
K F1

xr
Vc

1/(1+sT)
TR

(Vfe m a x-K d Ifd )/(K e + S e (e fd ))


K E ,VFE MAX,E 1 ,S E 1 ,E 2 ,S E 2

yo = max(yi, -KL*VFE)

VFE

yo = select(KP>0, KP*ut, 1)

vs ig

avr_AC7B

Vxe

Se(Efd)
E1,SE1,E2,SE

K e ve

K
KD

K
KE
curex

K
KE
curex

dx = (yi-x)/T
x. = dx
yo = K*dx

yo=K*yi

yo=K*yi

inc(ved) = efd
inc(S) = A1*exp(B1*ved)
inc(B1) = 1/(E2-E1)*ln(SE2/SE1)
inc(A1) = SE1*exp(-B1*E1)
inc(yo) = (VFEMAX-KdIfd)/(Ke+S)
ved = delay(efd,0.01)
S = A1*exp(B1*ved)
yo = (VFEMAX-KdIfd)/(Ke+S)

limits(T)=(0,)
x.=yi/T
yo=limstate(x,y_min,y_max)

= max(yi, -KL*VFE)

D Ig S IL E N T

In = lim(Kc*I/V,0,1)
Fex = select(In<=0.433,1-0.577*In,select(In>=0.75,1.732*(1-In),
&
sqrt(abs(0.75-In*In))))

{1/sT}
TE

VE

uerrs

Vxe

Fe x

xe

Se(Efd)
E1,SE1,E2,SE2..

BLANK
In
1

Fe x(In )
KC

BLANK
ved,S,A1,B1

VFE

(Vfe m a x-K d Ifd )/(K e + S e (e fd ))


K E ,VFE MAX,E 1 ,S E 1 ,E 2 ,S E 2

VFEMIN BLANK

BLANK
A,B,Asq,Bsq,sq,Aex,Bex

K e ve

Limiter
KL

K
KE

K
KE

yo=K*yi

!inc(yo)=select(yi>A,B*sqr(yi-A),0.0)
inc(sq)=select(Flagsat>0.5,0,sqrt(E1*SE1/(E2*SE2)))
inc(Asq)=select(Flagsat>0.5,0,(E1-E2*sq)/(1-sq))
inc(Bsq)=select(Flagsat>0.5,0,E2*SE2/sqr(E2-Asq))
!yo=select(yi>A,B*sqr(yi-A),0.0)
yo=select(Flagsat>0.5,yi*(A*exp(B*yi)),select(yi>A,B*sqr(yi-A),0.0))
inc(yo)= select(Flagsat>0.5,yi*(A*exp(B*yi)),select(yi>A,B*sqr(yi-A),0.0))
inc(Bex)=select(Flagsat>0.5,1/(E2-E1)*ln(SE2/SE1),0)
inc(Aex)=select(Flagsat>0.5,SE1*exp(-Bex*E1),0)
inc(A)=select(Flagsat>0.5,Aex,Asq)
inc(B)=select(Flagsat>0.5,Bex,Bsq)

MACRO EQUATIONS

! --------------------------------------------------------------------------model uerrs = 'avr_AC7B'(u,usetp,upss,vuel,curex;xR,xi_pid,xd_pid,xi_pi,xF,xE;TR,KPR,K


Vc = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\1/(1+sT).BlkDef'(u;xR;TR
VR = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\PID.BlkDef'(o0;xi_pid,xd_
VMAX = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\(Vfemax-Kd Ifd)/(Ke+S
Fex = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\Fex(In).BlkDef'(VE,curex
Keve = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\K.BlkDef'(VE;;KE;)
o5 = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\Limiter.BlkDef'(o4,VFE;;K
o8 = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\K.BlkDef'(VFE;;KF2;)
VE = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\{1/sT}.BlkDef'(o6,VMAX;
o7 = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\K.BlkDef'(curex;;KD;)
>=0.75,1.732*(1-In), KpVt = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\KPVT.BlkDef'(u;;KP;)
Vxe = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\Se(Efd).BlkDef'(VE;;E1,S
VA = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\PI.BlkDef'(o2;xi_pi;KPA,KI
Vf = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\sK/(1+sT).BlkDef'(VFE;xF
o17 = '\Library\Standard Models\avr_AC7B.BlkDef\Used Macros\K.BlkDef'(uerrs;;KF1;)
uerrs = VE*Fex
o4 = VA*KpVt
o0 = usetp+vsig-Vc
o6 = o5-VFE
o2 = VR-o9
VFE = o7+Keve+Vxe
vsig = upss+vuel-Vf
o9 = o17+o8
inc(F0) = uerrs/(curex*KC)
inc(IN01) = 1/(F0+0.577)
inc(IN02) = sqrt(0.75/(1+F0*F0))
inc(IN03) = 1.732/(F0+1.7332)
inc(FN01) = 1-0.577*IN01
inc(FN02) = sqrt(0.75-sqr(IN02))
inc(FN03) = 1.732-1.732*IN03
inc(Fex) = select(IN01>=0.and.IN01<=0.433,FN01,
&
select(IN03<=1.and.IN03>=0.75,FN03,FN02))
inc(upss) = 0
inc(vuel) = 0
inc(xR) = u
inc(xE) = VE
inc(VE) = uerrs/Fex
inc(VFE) = KD*curex+Vxe+KE*VE
inc(xd_pid)= usetp-u
inc(xi_pid)= select(KIR>0, VR/KIR, 0)

inc(xF) = VFE
inc(xi_pi) = select(KIA>0, VA/KIA, 0)
inc(usetp) = select(KIR>0, u, VR/KPR)
inc(VR) = select(KIA>0, KF2*VFE+KF1*uerrs, KF2*VFE+KF1*uerrs+VA/KPA)
inc(VA) = select(KP>0, VFE/KP/u, VFE)
inc(o5)=VA
vardef(TR) = 's' ; 'Voltage transducer time const'
vardef(KPR) = ' ' ; 'Voltage regulator proportional gain'
vardef(KIR) = ' ' ; 'Voltage regulator integral gain'
vardef(KDR) = ' ' ; 'Voltage regulator differential gain'
vardef(TDR) = 's' ; 'Voltage regulator differential time constant'
vardef(KPA) = ' ' ; 'Field current loop proportional gain'
vardef(KIA) = ' ' ; 'Field current loop integral gain'
vardef(TE) = 's' ; 'Exciter field time constant'
vardef(KE) = 'pu'; 'Exciter droop'
vardef(E1) = 'pu'; 'Field Voltage for SE1'
vardef(E2) = 'pu'; 'Field Voltage for SE2'
vardef(SE1) = 'pu'; 'Saturation at E1'
vardef(SE2) = 'pu'; 'Saturation at E2'
vardef(KD) = 'pu'; 'Demagnetising factor'
vardef(KC) = 'pu'; 'Rectifier loading factor'
vardef(VAMAX) = 'pu'; 'Field current loop maximum output'
vardef(VAMIN) = 'pu'; 'Field current loop minimum output'
vardef(VRMAX) = 'pu'; 'Voltage regulator maximum output'
vardef(VRMIN) = 'pu'; 'Voltage regulator minimum output'
vardef(KL) = 'pu'; 'Current loop limitation factor'
vardef(VFEMAX)= 'pu'; 'Exciter field current limit reference'
vardef(VFEMIN) = 'pu'; 'Minimum exciter output voltage'
vardef(KF1) = ' ' ; 'Exciter stabilising feedback gain'
vardef(KF2) = ' ' ; 'Exciter field current feedback gain'
vardef(KF3) = ' ' ; 'Field current stabilising feedback gain'
vardef(TF3) = 'pu'; 'Field current stabilising feednack time constant'
vardef(KP) = ' ' ; 'Potential circuit gain coefficient'

pid,xd_pid,xi_pi,xF,xE;TR,KPR,KIR,KDR,TDR,KPA,KIA,KF3,TF3,E1,SE1,E2,SE2,KL,KE,KF2,KD,KP,KF1,KC,T
acros\1/(1+sT).BlkDef'(u;xR;TR;)
Macros\PID.BlkDef'(o0;xi_pid,xd_pid;KPR,KIR,KDR,TDR,VRMIN,VRMAX;ypp,yii,ydd,xdd)
d Macros\(Vfemax-Kd Ifd)/(Ke+Se(efd)).BlkDef'(o7,VE;;KE,VFEMAX,E1,SE1,E2,SE2;ved,S,A1,B1)
Macros\Fex(In).BlkDef'(VE,curex;;KC;In)
Macros\K.BlkDef'(VE;;KE;)
acros\Limiter.BlkDef'(o4,VFE;;KL;)
acros\K.BlkDef'(VFE;;KF2;)
Macros\{1/sT}.BlkDef'(o6,VMAX;xE;TE,VFEMIN;)
acros\K.BlkDef'(curex;;KD;)
Macros\KPVT.BlkDef'(u;;KP;)
Macros\Se(Efd).BlkDef'(VE;;E1,SE1,E2,SE2,1;A,B,Asq,Bsq,sq,Aex,Bex)
acros\PI.BlkDef'(o2;xi_pi;KPA,KIA,VAMIN,VAMAX;ypp_pi,yii_pi)
acros\sK/(1+sT).BlkDef'(VFE;xF;KF3,TF3;dxF)
Macros\K.BlkDef'(uerrs;;KF1;)

+KF1*uerrs+VA/KPA)

ime constant'

2,KL,KE,KF2,KD,KP,KF1,KC,TE,VFEMAX,VRMIN,VAMIN,VFEMIN,VRMAX,VAMAX;ypp,yii,ydd,xdd,ypp_pi,yii_pi,dx

2;ved,S,A1,B1)

ypp,yii,ydd,xdd,ypp_pi,yii_pi,dxF,A,B,Asq,Bsq,sq,Aex,Bex,In,ved,S,A1,B1,Fex,Keve,KpVt,VA,VE,VFE,VMAX,VR,Vc,V

e,KpVt,VA,VE,VFE,VMAX,VR,Vc,Vf,Vxe,o0,o17,o2,o4,o5,o6,o7,o8,o9,vsig,FN01,FN02,FN03,IN01,IN02,IN03,F0 )

02,FN03,IN01,IN02,IN03,F0 )

S-ar putea să vă placă și