I would like to create simulation of speed control of BLDC motor (something based on following scheme):
But I have a problem with understanding how to compute duty cycle in Controller block (that is PI controller based on many sources). From what I already know is that PI controller get on input difference between desired speed and actual speed and its output is treated as duty cycle but...how? Difference between desired and actual speed can be very large but based on following image:
reference signal should take values from 0 to 1, but if I take desired speed for example 600 rad/s and have actual value for example 300 rad/s then PI controller output will be much higher than 1. On following image is showed exemplary output from PI controller in closed-loop control system:
I would like then to know how to convert PI controller output into duty cycle of PWM signal.
I would also like to make sure that I correctly understand PWM control system. Commutation Logic block decide which switches in Three-Phase Inverter block are closed (current is flowing) or opened (current is not flowing). But if specified switches are actually closed or opened depends of PWM signal value (if PWM signal value is 1 then switches are closed and when PWM signal value is 0 then switches are opened).
Several sources (e.g. https://www.researchgate.net/publication/273634792_Speed_Control_Analysis_of_Brushless_DC_Motor_Based_on_Maximum_Amplitude_DC_Current_Feedback?enrichId=rgreq-f79af632138101a2bb06fcf1df0fd5a5-XXX&enrichSource=Y292ZXJQYWdlOzI3MzYzNDc5MjtBUzoyMDc4MTIxNjU2NzI5NjhAMTQyNjU1NzY4OTkyOA%3D%3D&el=1_x_3&_esc=publicationCoverPdf) shows alternative versions of speed control:
Here, we have two PI controllers, where first is the one that takes as input difference between desired and actual speed, and second that takes as input difference between output from first PI divided by mechanical constant and Imax and thus I have several more quesions:
- is Imax maximal value from ia, ib, ic or sum of them or something else?
- several sources shows scheme where output of first PI controller (whose input is difference between desired and actual speed) isn't divided by mechanical constant. Should I divide output from first PI controller by mechanical constant or not?
- should pwm signal with duty cycle lower than 50% reverse direction of current in phases similarly to this movie (link to specified fragment) https://youtu.be/b5J5qkR7msc?t=482 ?
controllerwhose output is named
duty cycle. Does it not output PWM ? \$\endgroup\$