How does the mass of a spinning object effect PID values?

4 years 2 months ago #29532669 by revz
Hi All-

I am making the control system for a 3D Zoetrope. I have an LED strobing circuit @16Hz and a NEMA 34 motor running at 120 rpm geared dow to 2:1 to 60 rpm. The motor is controlled by a SDC 2160, I posted about it regarding a separate issue here: I have prototyped the whole system and everything is working pretty well when rotating a small and effectively massless object @ 60 rpm. Next week, I will be adapting the system to move a much larger object similar to this: In the previous links you can see that the actual rpm is oscillating around the target rpm. Whereas this is not ideal, neither is it a deal breaker in this particular application, so long as it is stable or diminishing.

If I already have a closed loop control and workable PID gains with this 'massless' object, what is a good approach to controlling the larger object in terms of PID gains?

I have read this page a few times: and whereas I grasp the concept, I must admit I get a tad lost. I think a coarse manual tuning is all I need, and I suppose I am just looking for a basic best practice or guidelines to approach this specific issue.

Any thoughts appreciated,


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

4 years 2 months ago #29532670 by blake
Please review Section 9 (page 113) of our User Manual which details our motor controller's Closed Loop Speed Mode. You will find a description of PID gains tuning on page 118.

In general, the load on the motor effects the PID loop. The gains when tuned while the motor is unloaded may be completely different than the gains needed to maintain smooth speed control of a loaded motor. You should tune your gains while the motor is loaded. The same rule of thumb applies to the gains as described in the manual for Speed Control, whether or not your motor is loaded: For Closed Loop Speed Mode you should begin with PID = 0,1,0 and tune from there. The "I" gain will be the most important in this mode and will always have the highest value. If you need to add any P or D gain it should be only in very small increments such as 0.1.

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

4 years 2 months ago #29532683 by revz
Thank you. I have review the manual and tuned the values a bit. It is working much better, but still not satisfactorily. I am getting a lot of stalls and very slow acceleration and this is leading me to believe that the motor is under powered / under geared. Could stalling possibly be the result of a poorly tuned PID? Would gearing down a NEMA 34 add more leverage / torque, or does this type of motor have lots of low end torque? At 120 RPM, what is a good RPM/s value to start at when turning a fairly heavy load?

Any input greatly appreciated,


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

4 years 1 month ago #29532694 by blake
Stalling can definitely happen as the result of poorly tuned PID values. When your loop error becomes too great, the result is a motor stall.

You'll definitely want to tune your PID values while the motor is loaded. The gains would likely be different for a loaded motor vs an unloaded motor.

If attach or send me your configuration file with the current settings you are testing a can perhaps provide more insight.

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

Moderators: tonysantoni
Time to create page: 0.105 seconds