The current control loop will have a finite response time, so a sudden current change would be detectable before the loop responds to correct the error.
..The loop determines what the buckboost output current is, -if the motor does not speed up (above 8000rpm) when the pump suddenly runs dry, then there will be no decrease in current from the buckboost converter....this is what worries me.
So you seem to be saying that the ML4425 (when used in 'normal' mode, not like i am doing) has two speed control loops...
loop 1...to adjust the PWM duty cycle as a means of adjusting the speed
loop 2...to adjust the commutation frequency as a means of adjusting the speed.
...it seems strange to me.....I mean, if we want the pump to spin at 8000rpm (only ever that speed), then surely we would want the frequency of the commutation of the igbt's to be 400Hz (which gives 8000rpm)....and only ever this frequency.
Surely the ML4425 should have a facility to be able to fix at a certain commutation frequency?
I would have thought that's how it worked always?
Admittedly at startup, it should ramp up to this frequency instead of just going straight up to it.
Surely in a BLDC controller like ML4425, one controls the speed by putting a voltage on the SPEEDSET pin to set ('in stone') the commutation frequency, and then allow the ML4425 to adjust the duty cycle until that speed is achieved?
Having the ML4425 adjusting both commutation frequency AND duty cycle to regulate the speed sounds like a bit of a who-haa?
...I mean, like juggling too many balls, unnecessarily?