Slow response time in torque mode

1 month 1 week ago #29535221 by raffaele
Good Morning everyone,
I am using a roboteq FBL2360A to control a BLDC motor in torque mode. given a reference it always takes at least 70 ms to reach it. I modified foc gains, setting:
Flux Proportional gain = 1;
Flux Integral Gain = 60;
Torque proportional gain = 0;
Torque inegral Gain = 5;
Closed loop parameters seem to be ineffective. I've seen an improvement increasing at maximum acceleration, deceleration and fault deceleration limits. In another topic ( www.roboteq.com/forum/10-troubleshooting...e-slow-response-time ) I read to set max speed at minimum, but this does not give effects (neither setting it to the maximum value).
May also there be an escamotage to obtain faster responses, using PWM?
in any case I need to follow a precise  current (or torque) reference, so staying in torque mode could be preferable.

thank you!

Please Log in or Create an account to join the conversation.

1 month 1 week ago #29535222 by Athanasios
Dear Rafaeele,
In the controller's manual you can see how to determine the FOC gains from the inductance and resistance of the motor.
Then increase the acceleration and deceleration values.
You can see the demand form the ramped command ?rmp. 
In case you still have slow response keep in mind that this depends on the inertia of the load too.
 

Please Log in or Create an account to join the conversation.

1 month 1 week ago - 1 month 1 week ago #29535223 by raffaele
Dear Athanasios,
thanks for your response, but the problem is a little bit different.
We are controlling the motor with trapezoidal swithcing in torque mode. Since the motor has a very low inductuance value, it would be enough to have a pure integral controller that can be tuned with loop gain considerations. In any case, we tried with different values of the integral part and the effect on the step response are visible only for very small values. Increasing it above a certain value, the step response seems to be limited by something else. In particular, as can be seen in the attached figure, the current response seems to be rate-limited, with a rate limited, also increasing the controller values above a threshold. And this rate-limiter seems to be dependent on the requested torque level, resulting in a constant rising time, whatever the reference is.
My question is: is there a rate-limiter in that response? is it modifiable? How the rise time can be reduced and the controller bandwidth further increased?

Thank you
Attachments:

Please Log in or Create an account to join the conversation.

1 month 1 week ago #29535224 by Athanasios
can you please try to set the flux gains to zero and use the torque gains after calculating as described in the FOC (even you do not use the sinusoidal mode this should be the same).
Please let me know the results

Please Log in or Create an account to join the conversation.

1 month 1 week ago #29535227 by raffaele
I set flux gains to zero and calculated torque gain as described through the formula in the manual (even though there it is specified that it is for flux gains and not for torque ones). my values should be 75muH for inductance and 7.8 mOhm for resistance. Next to the time response, I screenshot my settings to show also other parameters that may have effect.
As you can see rising time is very similar to the figures I uploaded before (in which I mainly modified flux gains). Moreover, trying to play other parameters out (max speed, closed loop parameters (starting from P = 0, I = 1 as suggested in the manual), flux gains, ecc) situation does not change.
For these reasons I suppose there should be some rate limiter. 
Trying to increasing the BW, rising time does not change so much as you can see, and trying to go beyond 200 Hz BW gains motor goes off. 
in the other figure there is a current tracking, but now it seems even worse than before.

So, are there settings limiting raise time or any kind of rate limiter I do not know?
thank you for your help

Attachments:

Please Log in or Create an account to join the conversation.

1 month 1 week ago #29535230 by Athanasios
Hi Raffaelle,Regarding your question there is no limiter for the raisetime The setpoint you give as motor command is then rampedaccording to acceleration deceleration.  (see
AC-set Acceleration in user manual). If you set this value to zero, then you
can disable this ramp.You can see the ramped command from roborun utility or makea stream with using ?rmp.After if you disable the acceleration by setting the value to 0 thenthere is nothing to limit the raise time.The response you get depends on your system and the gainsyou use. Due to the current loop sampling time (1KHz) if you use higher bandwidth
than a value you will have an unstable system. From the tests we have done the bandwidth that works goodfor most of the cases is the 50Hz. You can increase the bandwidth but for values more than 100 youmay end up with unstable system. So, the only way to get a faster response is to increase thegains given the restriction of current sampling at 1KHz.

Please Log in or Create an account to join the conversation.

1 week 2 days ago #29535276 by GMAN
Hi raffaele, I am curious how you generated these graphs from the roboteq current output? I am trying to evaluate torque mode similar to how you did but I cannot figure out a way to measure the output current well. Are you using the Roborun software, or some type of external current measurement?

Please Log in or Create an account to join the conversation.

Moderators: tonysantoni
Time to create page: 0.442 seconds