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.

Sensored Inertia ID Difficulty lab12a

Other Parts Discussed in Thread: DRV8312

Hi All,

I ran into a problem where I am not able to let my motor spin enough distance with its loads to identify its system inertia and friction.

First of all, I have no issues while ID my motor inertia without loads.

But, in actual mechanical movement, motor will spin with belt and loads mounted to the belt.

There is only limited space for my motor to spin back and forth with loads, about 7 revolutions in each direction. 

So, How can I ID my system inertia under this condition?

If I am not able to get the ID system inertia and friction, What can I do to get a good estimation?

  • you shouldn't ID inertia with system load. you can keep any COUPLED gears/belts attached and that should work fine. Just no additional loads. It should be a low load / lower torque test.

  • But the mounted load on the belt will spin together with the rotor shaft when the rotor shaft changes spinning direction, just like coupled gears and belt.

  • how much is this load as a % of rated load?
    you can't run these tests with full load. or probably even 50% load
  • I don't know the exact value for that, so I did the inertia test with its coupled gear and belt.

    but I notice that when I run the SPIN-TAC Position plan (lab13c)with it, the motor can't reach its desired position. For most of time it only go half way from Position A to Position B, then directly go to Position C and all the position point mess up.

    And many times, gMotorVars.SpinTAC.PosCtlErrorID shows 2002
    But without the mounted load, My motor is able to move correctly and follows the position plan.
    so what should I do now?

  • I've sent to the expert on SpinTAC - Adam from LineStream - to see if he has any comments.
  • You should be able to complete the inertia identification in a very short travel distance.  This can be accomplished by making sure your axis has the maximum possible positive rotation.  Next decrease ramp time so that it is very small (0.5 - 1.0).  Also decrease goal speed to be something near a quarter of maximum speed.

    I think the issues you are seeing with not tracking the position reference isn't related to the inertia.  it is possible but if you have a gearbox and belts the inertia shouldn't be too much more than the motor inertia.  Have you tried adjusting the gain of the controller?  If it isn't tuned it may not be able to track the reference very well.  Especially under load.

    It is also possible that your profile is not achievable with your motor, inverter, and current limit combination.

  • Thanks! I got the inertia value in such short travel distance.

    But how can I adjust the gain of the controller ? Cuz I have difficulties on ID the motor due to the low current (max=0.41A), so I bypassed the ID process by using my own parameters from datasheet. Is it the root cause of losing position control at high acceleration?(in between 690krpms2 -2000krpms2)  My motor can run up to 2072krpms2 as datasheet indicated. my motor is FAULHABER BLDC Series 1628024B
    I am using F2805X and DRV8312

  • In the lab guide, Lab 13a discusses tuning the position controller. There is a variable in gMotorVars that will let you adjust the position controller bandwidth.