sahil-kale / basilisk-actuator-control-lib

Hardware-agnostic library enabling field oriented control of of PMSM and BLDC Motors
https://sahil-kale.github.io/basilisk-actuator-control-lib/
1 stars 0 forks source link

Confirm Phase Inductance Measurement Convention #81

Open sahil-kale opened 8 months ago

sahil-kale commented 8 months ago

When validating the phase inductance estimator in simulation, the phase inductor estimate strictly works as intended in reporting the phase inductance, Ls, given a balanced 3 phase motor with no saliency. The following LTSpice model was also used to verify the voltage/current outputs manually: image

The phase inductance estimation law is able to deduce the phase inductance value given these measurements.

However, it was noted that the sensorless rotor observer paper defines the motor inductance for a non-salient motor as L = 3/2 * L_s, and defines L as equal to L_d and L_q. An NXP app note app note, however, claims that L_d is simply the phase inductance, as does the MATLAB documentation for PMSM drive parameterization. When the 3/2 term is removed from the observer, it works with the estimator values, equating L_d as L_s. image

I'm more inclined to think the paper parameterization may be referring to something else given that it does not describe the motor model directly, but this might be completely wrong...

For now I will remove the 3/2 term, but this is something to look into and make sure is correct.

sahil-kale commented 8 months ago

https://www.tntech.edu/engineering/pdf/cesr/ojo/cox/Chapter_2.pdf

sahil-kale commented 8 months ago

and defines L as equal to L_d and L_q.

this statement is false.. it might well be possible that L_s = L_d, but something might be wrong with the simulation environment. Will not be merging the 3/2 multiplier until I can figure out why. Good news is the phase inductance estimator does work as intended- this is likely an issue with the flux observer or somehow the way the motor controller is driving the motor