- The Vf input is normalized by the nominal field voltage, which is defined as the voltage needed to produce 1 pu stator voltage at no load.
- The If output is normalized by the nominal field current, which is the current required to produce that same stator voltage.
Why does field current If = field voltage Vf in steady state for "Synchronous Machine pu Fundamental" depite Rfd ≠ 1pu?
24 views (last 30 days)
Show older comments
Hello everyone,
I'm using the "Synchronous Machine pu Fundamental" block in Simscape Electrical SPS, and I noticed something that doesn't quite match my understanding of synchronous generator (SG) physics.
In my simulation, the field winding resistance is set to Rf = 0.06117 pu (default). However, when the system reaches steady state, the field current If is nearly equal to the input field voltage Vf, both in per-unit values.
This seems contradictory to the basic field circuit equation of an SG (in pu):
Vf = Rf * If + dpsi_f / dt = Rf * If (in steady state, assuming psi_f is constant)
Yet in the simulation, it appears that:
If ≈ Vf
The voltage at the Vf input of the block is normalized with respect to nominal field voltage so that a 1 pu input produces a 1 pu stator voltage at no load. The If current returned by the measurement output of the block is also normalized with respect to the nominal field current so that a 1 pu input produces If = 1 pu.
So my question is:
Why does Vf ≈ If hold true in steady state, regardless of the Rfd value? Does this mean the Vf input and If output are not directly interpreted as per-unit value, but rather as value with different normalization strategies? If so, what does the basic SG equations become under such normalization method?




0 Comments
Answers (1)
Sameer
on 6 Aug 2025 at 11:18
Hi @Hanchen
This happens due to the way the block normalizes the field voltage (Vf) and current (If):
In steady state, the field equation is:
Vf = Rf * If → If = Vf / Rf
But since the block chooses base values such that:
Nominal Vf = Rf * Nominal If
this makes the per-unit resistance Rf_pu = 1, so in per-unit:
Vf_pu = If_pu
So even if Rf ≠ 1 pu numerically, the per-unit normalization hides it, and that’s why you observe If ≈ Vf in steady state.
Hope this helps!
0 Comments
See Also
Categories
Find more on Electrical Sensors in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!