Mathematical Analysis
The equations are normalized. The nominal voltage of the battery is taken
to be 1 p.u and the nominal rms current of the secondary of the transformer
is taken to be 1 p.u. For example, let the nominal voltage of the battery
bank be 72 V. Let the rms secondary voltage be 100 V and its rated rms current
be 10 A. Then the peak secondary voltage equals (1.414*100/72), that is 1.964
p.u. If the drop in terminal voltage of the battery bank when it delivers
10 A is 1 V, then its source impedance is set to be 1.414/72, that is 0.0196
p.u.
The load current drawn by the load resistor should be relatively low, less
than 0.25 p.u. That is, 0.3 p.u corresponds to 4.24 A the corresponding load
resistance is 72/4.24, that is 17 W.
The simulation routine is explained below. All setting are in per unit notation.
Initializing routine:
Set the value of peak secondary voltage
Set the value of fractional load
Set the source inductance.
Set the peak battery current
Set the maximum average battery current
Set the initial battery voltage(internally set)
Set the time constant of the battery(set to 300 radians internally)
Set the source resistance of the battery
Set the firing angle to 175o (internal setting)
Reset to zero the battery current. peak charging current.
Reset to zero the rms secondary current.
average battery charging current.
Go to pre-amble routine
Pre-amble routine:
Print the battery voltage
Print the average battery voltage
Print the peak charging current
Print the rms secondary current
Set the rule-based controller as follows:
if (average Battery Current =(1.1*maximum average battery Current))
increase the firing angle by 1o
else
{
if ((batteryVolt<=1.1) and
(average Battery Current <maximum average battery Current))
decrease the firing angle by 1o
if ((batteryVolt<=1.1) and
(average Battery Current=maximum average battery Current))
do no change the firing angle
if ((batteryVolt1.1) and (batteryVolt<=1.15))
do no change the firing angle
if (batteryVolt1.15)
increase the firing angle by 1o
}
if (peakBtyCurpeakCurSet)
increase the firing angle by 2o
Reset to zero peak charging current,
average battery current and rms secondary Current.
Go to One-Output-Cycle routine.
One-Output-cycle routine:
angle=0;
while(angle=0 and angle <180)
{
compute increments in battery voltage and source current
compute increments to rms secondary current,
average battery charging current
set the peak battery charging current appropriately
increment angle by step size
}
TO THE TOP |