After a low speed command (less than 100 I2C speed command) exists at the input for a while, the driver do not increase the motor speed for any further higher speed commands. The driver continues to drive the motor at the low speed
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
After a low speed command (less than 100 I2C speed command) exists at the input for a while, the driver do not increase the motor speed for any further higher speed commands. The driver continues to drive the motor at the low speed
Hi Jain,
One of our DRV10x experts will get to you soon.
Thanks,
Aaron
Hello Jain,
Thank you for posting to the MD forum. Would you be able to share your EEPROM settings? As well as the values found in the SpeedCmd and spdCmdBuffer when the error occurs?
Best,
Isaac
Hello Isaac,
Yes Sure. Except for Software Current Limit, please refer the attached images for the EEPROM settings and the Software Current Limit is not disabled but enabled for 3.0 A. Unfortunately, we haven't logged the speed buffer data as we are not operating this through a TI GUI but rather a micro-controller that reads the data from these registers and gives appropriate I2C commands. Please tell us if speed buffer is a must requirement or if the below observations can help you understand the problem. Here are the observations:
Thank You,
Please get back to us ASAP if you need any more information.
Thank You,
Jain
Hello Jain,
Thanks for the info. Did you verify the BEMF constant (Kt) with the motor datasheet, if not found in the motor datasheet you should also be able to calculate the Kt value to see if that addresses the abnormal speed behavior? I have attached an image from the DRV10983 tuning guide which I have linked here:
Best,
Isaac
Dear Isaac,
Yes the BEMF constant in calculations came around 52mv/Hz, we have kept it at an lower value of 47.7mv/Hz because we have observed the BEMF value ranges between 37 to 54 mv/Hz in the estimated Kt as the speed varied so we kept it at mid-point value and also there is a slight increase in speed over time without any increase in command when kept at 52mv/Hz setting.
We have observed that when the speed command is directly given 100 or above this issue is not encountered. The issue is observed only when the command is slowly increased from 0 to 100 in steps of 10 especially if the command lingers at 60 or 70 for some time.
Thanks,
Jain
Hey Jain,
This definitely sounds like a system tuning issue to me. Have you tried using the lower or higher limits of your Kt calculation to see if this changes the behavior in any way?
My thought is that perhaps that we do not have the best Kt constant programmed into the device, this is something we touch up on in the tuning guide I mentioned above. Which coincides with the points you brought up in your previous post (reason I was asked for Speedcommand and the Speed CmdBuffer values). If you are seeing a disconnect between your Speed Command and Speed CmdBuffer where the values of the buffer is lower than the commanded speed means your Kt values is too low for the device.
A higher Kt value can make the motor more difficult to control at low speeds, and if you have a high enough Kt value with mechanical AVS enabled it would prevent you from decreasing the speed so the buffered value would be higher than the commanded speed value. The reason this occurs is because the mechanical AVS prevents the voltage generated by the BEMF of the motor to be higher than the voltage that is applied to the motor by the device. To me it sounds more likely that you need to increase the Kt value and perhaps disable the Mechanical AVS as mentioned in point 2 from the image above. This is what is probably from increasing the motors speed but also causing the instability at low speed.
Regarding point 4 above: Are you observing this high RPM, is this being calculated by your external MCU, or is this just being observed in the motors behavior?
Just so that you are aware there is an issue with the GUI calculation for RPMs so we recommend using the Motor electrical period and converting to mechanical speed or using the FG output. You can read about this in this post: https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/933806/drv10975-speed-vs-rpm?tisearch=e2e-sitesearch&keymatch=DRV10975%252525252525252520GUI#
I hope this helps!
Best,
Isaac
Dear Isaac,
Thank you for that detailed reply for our issue. Just to clear up a couple of things,
As for your suggestion, we will definitely try increasing the Kt value and get back to you with results.
Thanks,
Jain
Hello Jain,
Awesome that works well, just wanted to confirm the GUI was not being used. I will wait to hear from you regarding your testing.
Best,
Isaac