I am just learning about twists to represent 3D velocities (e.g. of a robot's end-effector), and I have two questions:

1) Wikipedia defines a twist as "an angular velocity around an axis and a linear velocity along this axis". To represent a twist mathematically, this requires defining a point in 3D space (3 coordinates), the direction of the axis passing through this point (2 coordinates), and the ratio of the linear and angular velocities. This is 6 numbers in total. However, it seems that you could also represent this same 3D velocity just by defining linear velocity about the axes (3 coordinates), and a rotational velocity about the three axes (3 coordinates), so that the linear and rotational velocities are defined independently. This is also 6 numbers in total. So why do we define 3D velocities as twists, rather than using my version? Is it just that there are some nice mathematical properties of twists that my version does not have? Or is it that my version is actually fundamentally wrong in some way?

2) Let's say I have an object with positive x- and y- linear velocity, but zero z- linear velocity. The object is also spinning around its z-axis, but there is no rotation about the x- and y- axes. You can think of this as a ball sliding across the floor, whilst spinning about its vertical axis. I am struggling to understand how it is possible to represent this 3D velocity using "an angular velocity around an axis and a linear velocity along this axis". In this example, it seems clear to me that the linear velocity is acting orthogonally to the axis of rotation of the angular velocity. The ball is rotating about its z-axis, and so it doesn't seem possible to also define the linear velocity in terms of this z-axis, because the linear velocity only has components in the x- and y- axes. What am I missing?

Thank you!


1) There are many ways to express velocities. All of them are mathematical constructs to describe the same motion. They can have some minor advantages/disadvantages depending on the applications. The one main disadvantage of an Euler angle based approach is the gimbal lock problem. An advantage of Euler angle based approaches is, that they can be more intuitive to comprehend.

The wikipedia site you quote addresses the advantage of screw-theory based approaches explicitly:

An important result of screw theory is that geometric calculations for points using vectors have parallel geometric calculations for lines obtained by replacing vectors with screws. This is termed the transfer principle.[4]

Screw theory has become an important tool in robot mechanics, mechanical design, computational geometry and multibody dynamics. This is in part because of the relationship between screws and dual quaternions which have been used to interpolate rigid-body motions.Based on screw theory, an efficient approach has also been developed for the type synthesis of parallel mechanisms (parallel manipulators or parallel robots)

2) I am not sure if I interpret you're question right. I think the point you might be missing, is that you assume a constant, fixed set of reference frame and a fixed axis used to describe the motion. If you assume that the axis is fixed you do not have enough parameters left to describe a complex motion. If you consider that the axis is instantaneous, then you have all 6 parameters available and complex motions can be descirbed. Note that the reference frame in which the axis is expressed is fixed, but not the axis itself.


For your second question: Moving in the xy plane, rotating around the z axis can be treated as instantaneously rotating around a "virtual center", located along the line perpendicular to the xy velocity, with a distance that is the ratio between the speed and the spin rate.

This interpretation highlights the weakness of the "slide along and rotate around an axis" interpretation of twists -- if you were to reduce the spin rate, the axis would go further and further away. As the spin rate goes to zero, the axis distance goes to infinity, at spin=zero the axis is just the axis in the direction of the pure translation, and as the spin becomes negative, the axis jumps to negative infinity and then walks its way back in.

  • $\begingroup$ Hello, and thanks for your answer. However, I am still a little confused. If the ball is rotating around the vertical axis, then doesn't the screw axis have to also be vertical? The definition of the screw axis is the one which the object rotates about. $\endgroup$ – Karnivaurus Jun 2 '20 at 23:35
  • $\begingroup$ Yes. For simplicity, let's say that the motion is in the pure x direction, and that the object is rotating counterclockwise as seen from above. The screw axis interpretation of the twist is that the axis is in the z direction, and it passes through the xy plane at x=0 and y=v_translation/v_rotation. As you make v_rotation smaller, y goes toward infinity. When v_rotation is zero, the axis makes a jump from being in the z direction at y=infinity, to being in the positive x direction at y=0, z=0. ... $\endgroup$ – RLH Jun 3 '20 at 3:50
  • $\begingroup$ If you keep decreasing the rotational velocity (making it negative/clockwise), the axis jumps again, to being in the negative z direction at x=0, y= -infinity. As you make the rotational velocity more and more negative, the axis stays in the -z direction, but walks its way back in from y= -infinity toward y=0. $\endgroup$ – RLH Jun 3 '20 at 3:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.