Achieving precise BLDC torque control

Electric Motors and Controllers
Post Reply
brenoakiy   10 µW

10 µW
Posts: 6
Joined: Jan 17 2020 2:01am

Achieving precise BLDC torque control

Post by brenoakiy » Jan 17 2020 2:28am

Hello! I've been working on a project where I need to attach 2 hub motors to a tricycle, and come up with a control scheme involving torque control. Researching about BLDC motors and drivers I kept ending up in these forums, so I suppose this would be the best place to ask questions!

I'm using a Kelly controller in torque mode, KBS48051X, to control a brushless DC hub motor rated @ 250W, 15Nm. These Kelly controllers seem to have some popularity as far as Chinese components go, but I find the lack of information a bit troublesome.
My question is, how precise of a torque control can I expect from these controllers? Is it reasonable to expect both motors would give out similar torque for the same input?

I built a straightforward device to measure the output torque x input, using a moment arm pressing against a force sensor at stalled condition. What I found is the output torque is highly dependent on the stator-rotor angle, and stall torque is fairly unpredictable. I believe the reason might be due to the nonlinearity aspect of BLDC motors (such as the "cogging" behaviour), due to the structure and alignment of permanent magnets and stator, and perhaps the 6 step trapezoidal control scheme. Maybe when the motor is actually spinning I could get some consistent torque?

In addition, something else I've noticed is sometimes the motor won't start in torque mode, no matter the input. If I move it a little by hand, then it will start spinning. Basically, the motor won't start in torque mode for some specific angles. Could this be due to cogging? From what I read so far, cogging should be somewhat mild, and shouldn't prevent the motor from starting altogether.

john61ct   1 GW

1 GW
Posts: 3051
Joined: Dec 18 2018 2:06pm

Re: Achieving precise BLDC torque control

Post by john61ct » Jan 17 2020 4:28pm

Just because it's Sine Wave doesn't make it a true FOC controller. From my notes:

Apparently Kelly has only developed three: KBLS7280 (equal to KEB72801), KBLS7210 (equal to KEB72101), KBLS7212 (equal to KEB72121).

In general it seems Kelly doesn't have that great a rep in these circles.

Check out the Nucular, but long waitlist.

Sabvoton zombiess? also 72V150A

ASI BAC 2000 / BAC 4000 but need a pro to tune, Sevcon even more so

Votol reco, easier to program
e.g. Votol em72150
EM-200

APT too big & heavy?

_____
Edit, just realized you're talking much smaller motors than what I've been researching.

Check out Phaserunner

casainho   1.21 GW

1.21 GW
Posts: 3929
Joined: Feb 14 2011 2:43pm

Re: Achieving precise BLDC torque control

Post by casainho » Jan 17 2020 5:34pm

brenoakiy wrote:
Jan 17 2020 2:28am
Hello! I've been working on a project where I need to attach 2 hub motors to a tricycle, and come up with a control scheme involving torque control. Researching about BLDC motors and drivers I kept ending up in these forums, so I suppose this would be the best place to ask questions!

I'm using a Kelly controller in torque mode, KBS48051X, to control a brushless DC hub motor rated @ 250W, 15Nm. These Kelly controllers seem to have some popularity as far as Chinese components go, but I find the lack of information a bit troublesome.
My question is, how precise of a torque control can I expect from these controllers? Is it reasonable to expect both motors would give out similar torque for the same input?

I built a straightforward device to measure the output torque x input, using a moment arm pressing against a force sensor at stalled condition. What I found is the output torque is highly dependent on the stator-rotor angle, and stall torque is fairly unpredictable. I believe the reason might be due to the nonlinearity aspect of BLDC motors (such as the "cogging" behaviour), due to the structure and alignment of permanent magnets and stator, and perhaps the 6 step trapezoidal control scheme. Maybe when the motor is actually spinning I could get some consistent torque?

In addition, something else I've noticed is sometimes the motor won't start in torque mode, no matter the input. If I move it a little by hand, then it will start spinning. Basically, the motor won't start in torque mode for some specific angles. Could this be due to cogging? From what I read so far, cogging should be somewhat mild, and shouldn't prevent the motor from starting altogether.
KT motor controllers with our OpenSource firmware. There is torque control by controlling the motor phase current.
- TSDZ2 FAQ: issues and repairs, etc
- TSDZ2 OpenSource firmware

Developer of the Flexible OpenSource firmware for EBikes: TSDZ2 mid drive motor, KT motor controllers and displays: Bafang 850C color, SW102 Bluetooth and KT-LCD3.

If you like my work, please consider making a donation. I am being using the donations to buy needed resources for my developments. My paypal: casainho AT gmail.com.

brenoakiy   10 µW

10 µW
Posts: 6
Joined: Jan 17 2020 2:01am

Re: Achieving precise BLDC torque control

Post by brenoakiy » Jan 20 2020 1:09am

john61ct wrote:
Jan 17 2020 4:28pm
Just because it's Sine Wave doesn't make it a true FOC controller. From my notes:

Apparently Kelly has only developed three: KBLS7280 (equal to KEB72801), KBLS7210 (equal to KEB72101), KBLS7212 (equal to KEB72121).

In general it seems Kelly doesn't have that great a rep in these circles.

Check out the Nucular, but long waitlist.

Sabvoton zombiess? also 72V150A

ASI BAC 2000 / BAC 4000 but need a pro to tune, Sevcon even more so

Votol reco, easier to program
e.g. Votol em72150
EM-200

APT too big & heavy?

_____
Edit, just realized you're talking much smaller motors than what I've been researching.

Check out Phaserunner
My controller is not even a sine wave controller, but a simple 6-step trapezoidal controller. I'm still unsure how that interferes with torque control, though. I was thinking depending on the discontinuous generated EM field angle in relation to the magnets, part of the current wouldn't always contribute to generating torque. But then again, simple current control on a brushed DC motor is supposed to work fine, with that same angle discontinuity problem.

That Phaserunner controller looks very interesting. Would the fact that its power rating is much higher than motor interfere with the performance (my motor is rated at 13A at 24V, the phaserunner is rated at over 45A at 24-72V)?

brenoakiy   10 µW

10 µW
Posts: 6
Joined: Jan 17 2020 2:01am

Re: Achieving precise BLDC torque control

Post by brenoakiy » Jan 20 2020 1:12am

casainho wrote:
Jan 17 2020 5:34pm
brenoakiy wrote:
Jan 17 2020 2:28am
Hello! I've been working on a project where I need to attach 2 hub motors to a tricycle, and come up with a control scheme involving torque control. Researching about BLDC motors and drivers I kept ending up in these forums, so I suppose this would be the best place to ask questions!

I'm using a Kelly controller in torque mode, KBS48051X, to control a brushless DC hub motor rated @ 250W, 15Nm. These Kelly controllers seem to have some popularity as far as Chinese components go, but I find the lack of information a bit troublesome.
My question is, how precise of a torque control can I expect from these controllers? Is it reasonable to expect both motors would give out similar torque for the same input?

I built a straightforward device to measure the output torque x input, using a moment arm pressing against a force sensor at stalled condition. What I found is the output torque is highly dependent on the stator-rotor angle, and stall torque is fairly unpredictable. I believe the reason might be due to the nonlinearity aspect of BLDC motors (such as the "cogging" behaviour), due to the structure and alignment of permanent magnets and stator, and perhaps the 6 step trapezoidal control scheme. Maybe when the motor is actually spinning I could get some consistent torque?

In addition, something else I've noticed is sometimes the motor won't start in torque mode, no matter the input. If I move it a little by hand, then it will start spinning. Basically, the motor won't start in torque mode for some specific angles. Could this be due to cogging? From what I read so far, cogging should be somewhat mild, and shouldn't prevent the motor from starting altogether.
KT motor controllers with our OpenSource firmware. There is torque control by controlling the motor phase current.
I checked your firmware page, but none of the supported KT controllers have a rating adequate to my motor.
Is FOC supposed to work better in torque control, specially at low speed ranges? Is 6-step control inadequate?

User avatar
amberwolf   100 GW

100 GW
Posts: 28693
Joined: Aug 17 2009 6:43am
Location: Phoenix, AZ, USA, Earth, Sol, Local Bubble, Orion Arm, Milky Way, Local Group
Contact:

Re: Achieving precise BLDC torque control

Post by amberwolf » Jan 20 2020 1:44am

brenoakiy wrote:
Jan 20 2020 1:12am
I checked your firmware page, but none of the supported KT controllers have a rating adequate to my motor.
if the motors you are using are only 250w, per the below, then i think any of the kt controllers are easily capable of that.
brenoakiy wrote:
Jan 17 2020 2:28am
brushless DC hub motor rated @ 250W, 15Nm.

brenoakiy   10 µW

10 µW
Posts: 6
Joined: Jan 17 2020 2:01am

Re: Achieving precise BLDC torque control

Post by brenoakiy » Jan 20 2020 2:21am

amberwolf wrote:
Jan 20 2020 1:44am
brenoakiy wrote:
Jan 20 2020 1:12am
I checked your firmware page, but none of the supported KT controllers have a rating adequate to my motor.
if the motors you are using are only 250w, per the below, then i think any of the kt controllers are easily capable of that.
brenoakiy wrote:
Jan 17 2020 2:28am
brushless DC hub motor rated @ 250W, 15Nm.
The problem is their rated continuous current, which seems to be 7A from what I could see in the photos in their website (http://www.szktdz.com/en/news.php?type=344).
My motors are rated 250W at 24 V, so around 10 A continuous would be the requisite, I suppose.

john61ct   1 GW

1 GW
Posts: 3051
Joined: Dec 18 2018 2:06pm

Re: Achieving precise BLDC torque control

Post by john61ct » Jan 20 2020 6:43am

Phaserunner or the other Grins would be fine.

The controller being **capable** of higher power than the motor needs is A Good Thing.

CAv3 if you want to set enforced limits will help keep you from stressing the motor, extend range and longevity.

brenoakiy   10 µW

10 µW
Posts: 6
Joined: Jan 17 2020 2:01am

Re: Achieving precise BLDC torque control

Post by brenoakiy » Jan 21 2020 11:46pm

john61ct wrote:
Jan 20 2020 6:43am
Phaserunner or the other Grins would be fine.

The controller being **capable** of higher power than the motor needs is A Good Thing.

CAv3 if you want to set enforced limits will help keep you from stressing the motor, extend range and longevity.
How does the input map into the output torque on the Phaserunner?
I understand it has programmable parameters. If I set max current to, say, 10 A, does that mean the throttle at 5V (or whatever the upper limit is set to) will produce 10 A current?

My Kelly controller for instance, is rated at 50A peak. It has a maximum current parameter, but the input mapping stays the same. So if I send a 10% input (e.g. 1V), it'll produce a 5A current, regardless of the maximum current setting (considering it's set higher than 5A, of course).

john61ct   1 GW

1 GW
Posts: 3051
Joined: Dec 18 2018 2:06pm

Re: Achieving precise BLDC torque control

Post by john61ct » Jan 22 2020 12:28am

read the docs

brenoakiy   10 µW

10 µW
Posts: 6
Joined: Jan 17 2020 2:01am

Re: Achieving precise BLDC torque control

Post by brenoakiy » Jan 22 2020 4:15am

john61ct wrote:
Jan 22 2020 12:28am
read the docs
I have read the manual. Unless I missed something, it doesn't explicitly say how that works.

john61ct   1 GW

1 GW
Posts: 3051
Joined: Dec 18 2018 2:06pm

Re: Achieving precise BLDC torque control

Post by john61ct » Jan 22 2020 6:49am

Maybe pertains more to the CAv3 ?

Post Reply