Robot joint Control



Modern electric motors are wonderful devices, but there are limits to their performance. There is a maximum acceleration, a maximum velocity and a maximum power.

So, let’s look first at what limits the acceleration of a motor. We have rearranged an earlier equation in to this form here, the ratio of the motor torque to the motor inertia. Clearly because inertia is in the denominator, if we increase inertia, we are going to reduce the acceleration. The inertia that the motor experiences has got two components. One of those components is the inertia of the motor’s armature. That’s the rotating part of electric motor that I denote by J sub m. The other inertia that the motor experiences is due to the link itself.

In this case, I have drawn a very simple rectangular prism for the link and the inertia of that is M times R squared. The R squared is problematic because it means that the inertia grows very quickly with the size of the link.

So, we can write the total inertia that the motor experiences in terms of these two components, the motor armature inertia which is a constant and the inertia of the link. And, in this simple case, the inertia of the link is a constant. But, for a real robot, the inertia is going to depend on the configuration of all the links that are attached to the end of this particular link and also to the payload which is held by the last link in the chain. So, the link inertia is going to be highly variable. However, in a real robot, there's typically a gearbox between the motor and the link and this is another advantage of the gearbox because it allows me to write the expression for inertia like this.

The inertia of the link is reduced by a factor of G squared. And, for a robot like the Puma, G is a number anywhere between say 10 and a 100. So, the link inertia is going to be greatly reduced. It means that the inertia that the motor control system is going to “see” is dominated by the constant motor armature inertia.

Variation in inertia due to link configuration change is going to be very, very small. If we consider now the numerator of the expression at the top, we know that the maximum torque depends on the maximum current. The maximum possible current is a function of the power amplifier which supplies current to the motor. If we apply too much current to the motor, the armature and the brushes will overheat and be damaged.

Also, remember that some of the torque generated by the motor is used to oppose friction and also to oppose gravity in the motor. So, less of it is actually available for acceleration. What we have defined here is an upper bound on the maximum acceleration of the robot joint.

Turning now to the maximum velocity the electrical model for the motor contains a generator, the circle is the back EMF source, and as the motor rotates faster and faster, the back EMF rises. And, when the back EMF equals the applied voltage, then no further current can flow in to motor. It will stop accelerating and that will define the maximum speed of the motor given by an equation like this.

The electrical power in to the motor is given by the product of the applied voltage and current. The mechanical power out of the motor is the product of speed and the torque. We can plot motor torque against motor speed and there are other two critical points on this curve.

One point is when the motor has got no load at all and it’s spinning as fast as it possibly can. We refer to this as the no load speed. At the other end of the line, the motor is stalled. It’s not actually rotating but it is exerting a torque and we refer to this as the stall torque.

Power is a quadratic function of speed, it has a maximum somewhere in the middle of the operating speed range of the motor and the motor cannot be operated for a sustained period of time above its maximum power rating or else it will be damaged through overheating.


There is no code in this lesson.

Actuators have finite capability, that is they have a maximum torque, velocity and power rating.

Professor Peter Corke

Professor of Robotic Vision at QUT and Director of the Australian Centre for Robotic Vision (ACRV). Peter is also a Fellow of the IEEE, a senior Fellow of the Higher Education Academy, and on the editorial board of several robotics research journals.

Skill level

This content assumes an understanding of high school-level mathematics, e.g. trigonometry, algebra, calculus, physics (optics) and some knowledge/experience of programming (any language).

More information...

Rate this lesson


Check your understanding


  1. Philine says:

    Thank you very much for this great lecture!
    I just got confused about the last part of the video: I am assuming the parabola represent power and not torque? Maybe P could be added in red to the y axis? Thank you

    1. Peter Corke says:

      That’s a good suggestion, thank you.

Leave a comment

Previous lesson Next lesson