faysal_002299
New Member
Dear All,
I am using dsPIC30F3011 for controlling 3 sensored BLDC motors. For running the motors, I am using BLDC motor drivers. My MCU in this case has to just input 3 things to these motor drivers- (1) PWM signal of certain dutycycle (2) The CW/CCW direction (3) The Start/Stop instruction. I can also extract the current speed information of the motors from the pwm signal served by the BLDC drivers.
In my system, I have to change the speed and direction of the motors very frequently: My MCU can do that easily by setting the PDC value of pwm input signal (to the bldc driver) from 0-1000, where at PDC=0 the motor comes to a stand still. The problem is, the transition time to change in speed is much higher.
For exaple, say now the motor is running at a speed corresponding to PDC = 500. Then if I change it as PDC = 0 (or any higher or lower value), the motor speed start decreasing and the total transition time taken for the speed to become 500 to 0 is quite high. Please tell me, if I want the motor to come to its new speed value instantly (ASAP) what should I do? Please keep in mind all the operations in my case here are done through the bldc drivers and I have very little things to do from my MCU (as far as I know).
Will using PID controller help in this case? How can I implement PID here?
waiting eagerly to hear from you.
I am using dsPIC30F3011 for controlling 3 sensored BLDC motors. For running the motors, I am using BLDC motor drivers. My MCU in this case has to just input 3 things to these motor drivers- (1) PWM signal of certain dutycycle (2) The CW/CCW direction (3) The Start/Stop instruction. I can also extract the current speed information of the motors from the pwm signal served by the BLDC drivers.
In my system, I have to change the speed and direction of the motors very frequently: My MCU can do that easily by setting the PDC value of pwm input signal (to the bldc driver) from 0-1000, where at PDC=0 the motor comes to a stand still. The problem is, the transition time to change in speed is much higher.
For exaple, say now the motor is running at a speed corresponding to PDC = 500. Then if I change it as PDC = 0 (or any higher or lower value), the motor speed start decreasing and the total transition time taken for the speed to become 500 to 0 is quite high. Please tell me, if I want the motor to come to its new speed value instantly (ASAP) what should I do? Please keep in mind all the operations in my case here are done through the bldc drivers and I have very little things to do from my MCU (as far as I know).
Will using PID controller help in this case? How can I implement PID here?
waiting eagerly to hear from you.