Position control of BLDC motor

Hi guys
I'm working on a BLDC motor project and I need position control of BLDC motor.
How can I do position control of BLDC motor?
Do you guys know of any good tutorials that will be helpful for me?

Sensored or sensorless? How accurate position control?

Hi
Sensored ,with high accurate
thanks alot

“high” is not a specification.

Degrees?

Speed?

Look for tutorials on building your own servo. “Servomotor” or something like that.

mhajihoseini:
Hi
Sensored ,with high accurate
thanks alot

So you will need an encoder, and of course a 3-phase driver for the motor (which can be commutated
by the hall sensors, or the encoder (if it is absolute)).

A position control PID loop would control the drive level to the bridge based on desired v. measured
position.

You have a choice of trapezoidal and sinusoidal drive to consider, the later will have less torque-ripple.

MorganS:
"high" is not a specification.

Degrees?

Speed?

Look for tutorials on building your own servo. "Servomotor" or something like that.

Hi
Degrees

MarkT:
So you will need an encoder, and of course a 3-phase driver for the motor (which can be commutated
by the hall sensors, or the encoder (if it is absolute)).

A position control PID loop would control the drive level to the bridge based on desired v. measured
position.

You have a choice of trapezoidal and sinusoidal drive to consider, the later will have less torque-ripple.

Thank you for Answer

mhajihoseini:
Hi
Degrees

How many degrees?

(I am already several thousand posts ahead of you. I can keep this simple question-and-answer going for a long time. If you want better answers, you need to supply more detail in your own questions.)

MorganS:
How many degrees?

(I am already several thousand posts ahead of you. I can keep this simple question-and-answer going for a long time. If you want better answers, you need to supply more detail in your own questions.)

Hi
I want to position control of 3phase BLDC motor with Arduino and it is important that I can position control of BLDC such as stepper motor 0 to 360 degrees. if you have any other question about this project ask me.
help me please, thanks a lot

Hi,

and it is important that I can position control of BLDC such as stepper motor 0 to 360 degrees

All the criteria you are giving us is for the use of a stepper motor.
Do you know the difference between a BLDC and a stepper?
Steppers are usually 2 pole/phase.

  • Why do you need to use a BLDC motor?
  • What is the spec/data of your BLDC?
  • How fast do you need the BLDC to go?
  • What controller are you going to use to turn the BLDC/stepper?
  • When you have reached your exact position, do you want the BLDC/stepper to lock in position or just stop?

Thanks.. Tom.. :slight_smile:

TomGeorge:
Hi,
All the criteria you are giving us is for the use of a stepper motor.
Do you know the difference between a BLDC and a stepper?
Steppers are usually 2 pole/phase.

  • Why do you need to use a BLDC motor?
  • What is the spec/data of your BLDC?
  • How fast do you need the BLDC to go?
  • What controller are you going to use to turn the BLDC/stepper?
  • When you have reached your exact position, do you want the BLDC/stepper to lock in position or just stop?

Thanks… Tom… :slight_smile:

Hi
I want to use BLDC motor in INDUSTRIAL work.
I’m going to use PI controller.
Accuracy is important for me.
Thank you

TomGeorge:
Why do you need to use a BLDC motor?

mhajihoseini:
I want to use BLDC motor

Wanting to do something is not the same as needing to.

manor_royal:
Wanting to do something is not the same as needing to.

Do you know a stepper motor that it have high power?

All of them are "high power". They all extract the maximum useful work from a defined size or weight or current.

How much power do you need? Do you know how to calculate power or do you need help with that?

And, yes everyone wants "accurate" but you have to tell us how accurate before we can help you. There's lots of different motors and controllers available with different accuracies.

MorganS:
All of them are "high power". They all extract the maximum useful work from a defined size or weight or current.

How much power do you need? Do you know how to calculate power or do you need help with that?

And, yes everyone wants "accurate" but you have to tell us how accurate before we can help you. There's lots of different motors and controllers available with different accuracies.

I need to accurate 0.1 degree,but for 3 phase BLDC motor.
please give me a sample position control of BLDC motor.
Thanks a lot

Well that needs something like a 3600 or 4000 count encoder or preferably rather better, and a PI or PID
loop to set drive level from position error.

With that sort of resolution you have to worry about bandwidth for quadrature encoder reading - even with
optimized direct-port-access in an ISR a 4000 count encoder can push the limit if your motor goes
fast (3000 rpm = 200,000 counts/second, ie 5us per count)

There are absolute encoders that you can poll for position, they mean lower bandwidth needed, but you lose
position accuracy at speed since the reading has latency…

Hi Experts,
I am working on BLDC motors and have difficulty in implementing accurate brake algo (power control).
I have motor encoders (1024 per rotation).
I use PID for speed control.

Could you please help me know how can I make control loop to position motor to stop at certain timer or steps independent of the motor load?
Any help would be appriciated.

Thank you
Neeraj