1 # Copyright (C) 2010 Richard Lincoln
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License, or (at your option) any later version.
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 # Lesser General Public License for more details.
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA, USA
17 from CIM14
.Dynamics
.ExcitationSystems
.ExcitationSystem
import ExcitationSystem
19 class ExcAC4A(ExcitationSystem
):
20 """IEEE (1992/2005) AC4A Model The Type AC4A alternator-supplied controlled-rectifier excitation system is quite different from the other type ac systems. This high initial response excitation system utilizes a full thyristor bridge in the exciter output circuit. The voltage regulator controls the firing of the thyristor bridges. The exciter alternator uses an independent voltage regulator to control its output voltage to a constant value. These effects are not modeled; however, transient loading effects on the exciter alternator are included.
23 def __init__(self
, ka
=0.0, vimin
=0.0, tb
=0.0, tr
=0.0, tc
=0.0, ta
=0.0, kc
=0.0, vrmin
=0.0, vrmax
=0.0, vimax
=0.0, *args
, **kw_args
):
24 """Initialises a new 'ExcAC4A' instance.
26 @param ka: Gain (> 0.)
27 @param vimin: Minimum error signal (< 0.)
28 @param tb: Lag time constant (>= 0.)
29 @param tr: Filter time constant (>= 0.)
30 @param tc: Lead time constant
31 @param ta: Time constant (> 0.)
32 @param kc: Excitation system regulation (>= 0.)
33 @param vrmin: Minimum controller output (< 0.)
34 @param vrmax: Maximum controller output (> 0.)
35 @param vimax: Maximum error signal ( > 0.)
40 #: Minimum error signal (< 0.)
43 #: Lag time constant (>= 0.)
46 #: Filter time constant (>= 0.)
52 #: Time constant (> 0.)
55 #: Excitation system regulation (>= 0.)
58 #: Minimum controller output (< 0.)
61 #: Maximum controller output (> 0.)
64 #: Maximum error signal ( > 0.)
67 super(ExcAC4A
, self
).__init
__(*args
, **kw_args
)
69 _attrs
= ["ka", "vimin", "tb", "tr", "tc", "ta", "kc", "vrmin", "vrmax", "vimax"]
70 _attr_types
= {"ka": float, "vimin": float, "tb": float, "tr": float, "tc": float, "ta": float, "kc": float, "vrmin": float, "vrmax": float, "vimax": float}
71 _defaults
= {"ka": 0.0, "vimin": 0.0, "tb": 0.0, "tr": 0.0, "tc": 0.0, "ta": 0.0, "kc": 0.0, "vrmin": 0.0, "vrmax": 0.0, "vimax": 0.0}