BLDC Motor Control
BLDC Motor Control
(OP)
I'm trying to control a BLDC motor with a dsp. To do this, I'm using three loops: Position, Velocity, and Current (Torque). I have had some succes with the Velocity loop, but i am having trouble with the other two loops. If anyone has an algorith for the current or position loop, i would really appreciate it. - Chris





RE: BLDC Motor Control
http://www.analog.com
http://www-s.ti.com/sc/psheets/bpra055/bpra055.pdf
etc. for more info
RE: BLDC Motor Control
RE: BLDC Motor Control
6.1 Direct Back EMF Measurement ..............................8
in the second posted link. It states that the direct back emf measurement does not need a speed sensor. This means that the speed sensor is needed if you do not measure back emf.
RE: BLDC Motor Control
Have you simulated your control algorithms with any software?
RE: BLDC Motor Control
RE: BLDC Motor Control
RE: BLDC Motor Control
RE: BLDC Motor Control
Have you done ANY software simulation of the system?
RE: BLDC Motor Control
RE: BLDC Motor Control
I was actually thinking of Qxdesign for the control simulation. If you aren't familiar with it, it is available for free at www.qxdesign.com.
OK, let's see if I can help any, or just make it worse. A BLDC controller contains 3 control loops. At least all that I know about. The encoder ( or resolver if you want textbook terminology ) feeds the gating controller (loop 1) and the the summer for speed desired (loop 2). The output of the summer feeds the "speed controller". That feeds another summer, which takes the difference between the speed controller output and the DC current. The output of this summer feeds the "current controller" (loop 3) which feeds back to the gating controller.
Does any of this help? I do controllers for AC drives, so I don't have any good references for DC motor control.
RE: BLDC Motor Control
http://www.microcontroller.com/microcontrollers/news/C_mot/c100530mot_moco.htm
and relative convergence of DSPs with Microcontrollers.
RE: BLDC Motor Control
You can break the problem in two parts to avoid mixing signals: 1)The control scheme and its implementation and 2)the power section regarding the BLDC. In the control scheme as electricuwe says, the inner and fastest loop is the current one. Over this loop goes the speed and at the upper loop is the position loop. This control scheme is the same and it is proven over the years that it will work again(at least in my 17 yrs experiencie with DC drives). Some things can help you to implement are use multirate: a)Sample faster the current and its loop. The DC motor model can be used for BLDC Motor since it works under the same linear principles to control the torque-current relationship, P-I is enough. b) sample at half (good starting point) rate the speed with your decoder circuitry for the ENCODER is not a good idea, a voltage loop can be better, PID necesary. c) sample at last (a quarter of current sampling or less) the position. Here you need a feed-forward compensation to achieve stability with pole cancelation P-D. The litter integral gain, the better.
For the power electronics, there is a lot of paper for refrence.
Hope this can help, and sorry for the redaction english is my second languague
RE: BLDC Motor Control