How do I properly set up a Synchronous Machine (Salient Pole or Round Rotor) block?

5 views (last 30 days)
I started a project using a Synchronous Machine Salient Pole block (and have also tried replacing it with a Synchronous Machine Round Rotor Block).
To be clear, since there are two blocks with this name, I'm talking about the Simscape electrical block described here:
I started with the example posted here:
I successfully ran this model - and I made multiple modifications, including adding speed control without any issues.
The issues being whenever I try to simulate the actual physical generator I'm using. It is 240V, 26 kVA. The example is 13.8 kV, 100 MW. Changing the voltage and apparent power work OK (I don't actually get those values). The issue becomes when I try changes the rotor and stator impedances. Where I have them, I'm using actual measured value of my rotor and stator impedance. But when I plug those numbers in, my field current drops to 0 and therefore my generator output drops to 0. In fact, it only appears that I get ANY output at all because my initial terminal voltage magnitude is set to 240 V.
The rotor has a much higher impedance than the example - it is about 11 Ohms... but again... that is actual measured resistance. The rotor and stator inductances are also actual measured values. See my full setup below:
Synchronous Machine Salient Pole Block Parameters
The physical generator I'm using is not really salient pole, so I tried the "Round Rotor" version - that has TWO damper windings (again, my real generator has none). I tried the same sets of values for the second set of damper windings. Results were the same between "Round Rotor" and "Salient Pole"
Many trials and errors later, I have many questions:
  1. One issue I have - part of my simulation I want to simulate startup of the generator. That would mean my initial condition in the real world is a terminal voltage of 0V - but when I set that, I get the following error: "Error compiling Simscape network for model XXXXX / Caused by: / ['XXXXXXX/XXXX']: Terminal voltage magnitude must be greater than zero. Why must the initial terminal voltage magnitude be greater than zero? That doesn't make any sense to me - in the real world, zero is always your initial terminal voltage magnitude before you start spinning the machine.
  2. Why is my rotor field current 0? I realize my rotor resistance is MUCH higher than the default - but it doesn't seem to matter what I set the voltage source to, the field current drops to zero with these settings. At the original example value of 85.5 V, I should be getting 85.5 / 11.017 = 7.76 A at steady state, and even with my actual DC input voltage of 12 V I should be getting 12 / 11.017 = 1.09 A. But no matter what I set the voltage to, I'm getting 0 current.
  3. What does the "Field Circuit Current" parameter actually do? It obviously doesn't set the actual field current, since that should be from input voltage and impedance. I wondered if changing it changes other parameters to make the rotor field current equal to that when it hits its ratings. But, changing it doesn't seem to do anything...
  4. Since I'm trying to model a small generator - it doesn't have damper windings - so what do I enter there? Since damper windings would normally be connected in parallel, it would seem +Inf would be the proper choice but when I do that, I get multiple "fail to converge" warnings followed by "Initial conditions solve failed to converge` error and a long list of components that failed to converge with the suggestion that my infite values caused that. So, instead I put the very high values you see above (Note: for the heck of it, I tried very low values also and I saw no change). What should I put there?
  5. I don't have access to anything to determine q-axis mutual inductance - any suggestions for how to estimate without being able to take the required measurements? (Not that change this changes anything in my simulation right now)
  6. I also do not know and can't test for the Stator leakage inductance - any suggestions there? (again, doesn't change anything in my simulation right now)
  1 Comment
Captain Karnage
Captain Karnage on 14 Oct 2022
Edited: Captain Karnage on 14 Oct 2022
Trying to play around with the model to find a solution. If I put in a combination of a really low rotor resistance (like 0.11) and a really high rotor inductance (like 100000 Henries!!!!) then my rotor current sustains throughout my 10 second simulation. But, it appears that no matter what my settings are - the current is decaying exponentially over time. Maybe I have something else set wrong... but... well, it SHOULDN'T be this way. I have a DC voltage connected to my rotor. Over time, the inductance simply should not matter anymore and the current should settle at V/R - it should not go to 0 with an active voltage source connected. Unless someone can tell me otherwise and point to something I've done wrong, I strongly suspect this model is broken and it's just broken in a way that isn't visible with typical large generator settings - perhaps if a really extended simulation was done, one might see the current decay in that. I don't have time to do that myself, though...

Sign in to comment.

Answers (1)

Sabin on 22 Dec 2022
Each synchronous machine is parameterized using standard or fundamental parameters.
Machine fundamental parameters include the values of inductances and resistances of the stator and rotor d- and q-axis equivalent circuits. These parameters fully specify the electrical characteristics of the machine, but you cannot determine them directly from machine test responses. Hence, it is more common to parameterize a synchronous machine using a standard parameter set. You can obtain the standard parameters by observing responses at the machine terminals with suitable tests scenarios.
Please also bear in mind that synchronous machines in Simscape Electrical library are using the per-unit system (apart from time constants and nominal values where a unit box is visible).
For more insights see the folowing resources:

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!