We all have a pretty intuitive idea of what a path is. We consider it as a way of getting from place A to place B. We can consider it as a set of points that link A to B; a set of small steps that we take along the way. A path is a spatial construct. It says something about how we get from A to B through the world but it doesn't say anything about how quickly we should move along it. There's no notion of time. A trajectory on the other hand comprises a path and a schedule for getting from A to B. So there is a notion of time or speed along the path. It's a set of points that I need to be at by a particular time. In my MATLAB work space, I have got two poses represented as 4x4 homogeneous transformation matrices. The first pose represented by the workspace variable T0, has got no rotation and has its origin at the origin of the world coordinate frame.
The second post represented by the work space variable T1, comprises set of 1 in the x direction 2 in the y direction and 3 in the z direction and an orientation described by roll pitch yaw angles 0.6, 0.8 and 1.4 radians respectively. And we can visualize each of these poses. I can plot the pose T0 and we can see there its origin is at the origin of the world frame. And its axes are aligned with the world frame. I can plot the other pose T1 and we can see that its origin is not at the origin of the world reference frame and its axes are not parallel to the reference axes. Now I can animate the motion that goes from pose T0 to pose T1 and we can see our coordinate frame is translating and rotating in order to move from pose T0 to pose T1. So this is what I mean when I talked about a trajectory which is smooth motion from one pose to the next. Figuring out how to do this is the subject of this lecture.
Time varying coordinate frames are required to describe how the end-effector of a robot should move to grab an object, or to describe objects that are moving in the world. We make an important distinction between a path and a trajectory.
This content assumes high school level mathematics and requires an understanding of undergraduate-level mathematics; for example, linear algebra - matrices, vectors, complex numbers, vector calculus and MATLAB programming.