Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compound excitation DC machines and examples #4106

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

m-kormann
Copy link
Contributor

Component models to implement compound excitation already existed and just had to be combined in the right way.

To allow modeling of a self-exciting DC generator, additionally I introduced saturation in the AirGapDC model.

It has to be discussed if the stray induction also needs a saturation model.

@CLAassistant
Copy link

CLAassistant commented Mar 31, 2023

CLA assistant check
All committers have signed the CLA.

@AHaumer
Copy link
Contributor

AHaumer commented Apr 27, 2023

I dislike the idea of introducing special effects (like saturation) into these models.
If we do so, we should introduce saturation, deep bar effect, .... what else? in all machine models.
To be honest, I don't have enough time neither to implement that nor to review that all.
And remember, you'll have to provide at least one meaningful test case (that tries to detect all flaws ;-)
We expect users that need such features to copy the corresponding models out of the MSL and adapt them to their needs.

@HansOlsson
Copy link
Contributor

I dislike the idea of introducing special effects (like saturation) into these models. If we do so, we should introduce saturation, deep bar effect, .... what else? in all machine models. To be honest, I don't have enough time neither to implement that nor to review that all. And remember, you'll have to provide at least one meaningful test case (that tries to detect all flaws ;-) We expect users that need such features to copy the corresponding models out of the MSL and adapt them to their needs.

I can understand the dislike of special effects in such models; and instead of adding more special effects in an existing it would to me make more sense to demonstrate how such effects can be added in example-models (either by adding separate components in the example, or by having more advanced models with those effects (ideally built by composition of existing components, and possibly some new ones, since that would also indicate that the existing models can be re-used).

Some reasons are that:

  • For understanding and education it helps to have a simple model without anything extra. (Tools can of course remove unnecessary equations when presenting it, but it is still a hurdle.)
  • In some uses (like HILS) the extra equations may cause unnecessary problems.

@m-kormann
Copy link
Contributor Author

Saturation was implemented to showcase the benefit of a compound-excited machine: Self-Excitation up to nominal voltage and keeping it constant under load. I was impressed myself that adding one simple effect such a behaviour can be modeled. But I agree with you. Once you start introducing a simple effect, where to stop going into details?

Basically saturation was just introduced by modifying the airgap model. So I will remove the saturation part from the MSL MR and adapt the example to work without self-excitation. Then a user could still implement saturation by replacing the airgap model.

@AHaumer
Copy link
Contributor

AHaumer commented Apr 28, 2023

@m-kormann to be honest, I understand your intention and the application.
You see I've prepared the possibility of having a compound machine but I didn't have the time to implement it.
DC machines have lost siginificance the past decades, but they're useful for education.
So I'd suggest two possibilities:

  1. Implement saturation in a 100% backwards compatible way and provide several additional example utilizing that,
    e.g. self-excitation of a parallel excited generator and self-excitation of a series excited machine for braking.
    Might be a lot of work and should be extended to quasi-static DC-machines.
  2. Implement the compound machine (transient and quasi-static).
    Implement an example using that machine. If desired, implement saturated air-gap in Examples.Utilities.

@m-kormann
Copy link
Contributor Author

@AHaumer Yes, DC machines have lost significance, but also in my opinion they are of high value for educational reasons. Using a compound DC machine as excitation machine I managed to model a synchronous generator keeping the output voltage nearly constant for different loads without the need of any controller.

So let's divide this topic into three parts and only implement the first one in this MR:

  1. Implement the compound machine transient and quasi-static
  2. Implement a saturated air-gap in Examples.Utilities
  3. Implement saturation for all other DC machines for different applications

The quasi-static machine already was implemented and now I added it to the example.

@tobolar tobolar changed the title Compound exitation DC machines and examples Compound excitation DC machines and examples May 9, 2023
@christiankral
Copy link
Contributor

I made some attempts to model DC machiens with saturation some time ago, see Magnetic_DCMachines.

@m-kormann So one additional option still ist to create a separate public library with saturation models. On my opinion, there is no need to have saturation models in the MSL. Considering this option, you are very free to implement as many options as you like.

@m-kormann
Copy link
Contributor Author

@christiankral This is a very good hint! I also had the thought to implement DC machines within Modelica.Magnetic.FundamentalWave, which I see you already have done. When I find time, I will implement the Compound Excited machine in your library.

Still I think the unsaturated Compound DC machine should go to MSL because half the path was already gone before.

@AHaumer
Copy link
Contributor

AHaumer commented May 26, 2023

@m-kormann please send me a personal mail. I'd like to exhange ideas privately:
https://www.oth-regensburg.de/personen/detailansicht/anton-haa-haumer
Additionally I have a small library with specical machine implementations (including saturaton) we could develop together with your ideas maybe for inclusion in MSL.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants