Passing functions as arguments to one another
Ältere Kommentare anzeigen
Hi,
I'm trying to find the d and q axis flux linkages in a Permanent Magnet Synchronous Motor(PMSM). The equations are as follows:
Ψd = ʃ(Vd– (rs*id) + ωr*ψq).dt (1) //d-axis flux linkage
Ψq = ʃ(Vq– (rs*iq) + ωr*ψd).dt (2) //q-axis flux linkage
id = (Ψd – k)/Ld
iq = Ψq/Lq
The process is iterative where ωr is the rotor speed(electrical) and k is a constant quantity.
Clearly, (1) and (2) are coupled.
I cannot figure out as to how two functions can be passed as input arguments to one another, as in this case.
Consider that the motor runs from zero speed to steady state and id, iq being zero to beign with.
[d(Ψd )/dt and d(Ψq)/dt are back emf values; id and iq are d and q axis currents, respectively]
Any suggestion would be very welcome.
Thank you.
Antworten (1)
Sabin
am 9 Jan. 2023
0 Stimmen
You can use the flux from the previous iteration as input to your function when computing the new value.
Kategorien
Mehr zu Motor Drives finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!