
Pick and Place Operation
For simple point to point motion, we can execute pick and place operations using 4 discrete points:
- pick point
- lift-off point
- place point
- set-down point
1. Pick Point

- the coordinate frame is represented above
- this represents the initial position and orientation of the part being manipulated
2. Lift-off Point

- is referred to as the approach distance
- TCP orientation at the lift-off point is identical at the pick point
3. Place Point
- Place point is represented as
- this is the final position and orientation of the part being manipulated
- the place orientation should be selected in such a manner that the approach vector is orthogonal to the surface that the part will come to rest

- the distance between the place position and the place surface, should be the same as the distance between the pick position and pick surface
When the part is picked up from and placed down into the same common horizontal work surface, we can model the equation as such:
More generally, if parts are being stacked vertically and the vertical seperation between the pick surface and the plane surface is the height of the stack, denoted , then the following constraint must be satisfied for a proper stacking operation:
4. Set-down Point

- this is the last point
- it works the same way as the lift-off point
- once the place-point frame has been determined, that associated set-down point frame can be computed
Speed Variations


Paths and Trajectories
Continuous-path is crucial for applications where a specifc path must be followed in the workspace. The speed in these scenarios must also be regulated.

For this continuous path problem, we will use the formulation in tool configuration space , represented by:
Here is how we can model the continuous-path tool trajectory:
- is a curve in tool-configuration space , which is the path that the tool is supposed to follow
- is the normalized path length parameter where represents the start of the path and represents the end
- is a differentiable speed distribution function mapping into , with and
- it tells us which part of the path it is at, so its not the speed function
- the equation above is to represent a constant tool speed of
Time Derivative of Speed Distribution Function
The time derivative of speed distribution function, , represents the instantaneous speed of the tool tip at time . This is represented as .
Our goal is to be able to determine the joint rates that will generate our desired tool trajectory. The joint velocity is directly proportional to the output speed of the motor or actuator for .
Cubic Polynomial Interpolation
We require knot points and via-points (waypoints) because real path is usually not specific. For the general interpolation problem, there is a sequence of knot points in the tool-configuration space that must be visited by the tool:
The path between the knot points must be smooth. This requires at least 2 derivatives in order to avoid infinite acceleration.
Simplest case is . We have . Our cubic polynomial path is:
The polynomial coefficients are vectors in . The 2 position contraints are at the end points of the trajectory:
These 2 constraints remove 2 of the 4 dof available for choosing the coefficients. The remaining 2 dof can be used to specify the velocities at the end points of the trajectory.
Suppose the robot is to move from point to in tool-configuration space over an interval of time . If the starting time is 0 and then ending time is with velocity , then:
Interpolated Motion with parabolic bends
Piecewise-linear interpolation between knot points is efficient but not smooth. The velocity changes abruptly at a knot point, which demands infinite instantaneous acceleration. A parabolic blend replaces the corner with a constant-acceleration arc, so the acceleration stays finite.
Problem Statement

- three knot points in tool-configuration space
- segment traversal times and
- blend transition time , chosen by the user
The blend is centred on the middle knot and runs over the interval .
Step 1: Segment Displacements and Velocities
Each straight segment is traversed at its own constant velocity.
Step 2: Check the Transition Time
Step 3: Blend Acceleration
is the constant acceleration that carries the tool from velocity at time to velocity at time . Note that is just the velocity of the first segment.
Step 4: Complete Trajectory
Notes
- the blend is a quadratic in , of the general form
- the constant comes from the position constraint at the start of the transition:
- the tool does not pass through itself. It cuts the corner inside the blend region
Straight-Line Motion
A straight line is the shortest path between two points, so straight-line trajectories in the workspace are common.
The ideal straight line
Given the initial and final points and in tool-configuration space :
- is a differentiable speed distribution function mapping into with
- it either has a ramp-up, constant-speed, ramp-down profile, or the simple form
Two practical limitations
- if , the tool tip cannot follow an arbitrary straight-line path in . Most robots can still follow a straight line along the approach vector
- many robots only have point-to-point motion control, so the straight line must be approximated
The approximation is done by visiting a sequence of closely spaced knot points in joint space.
Algorithm 4-8-1: Bounded Deviation
Recursively insert knot points until the joint-space path stays within a tolerance of the true straight line.
- Select . Use inverse kinematics to compute , the joint vectors associated with
- Compute the joint-space midpoint
- Use and to compute the associated tool-configuration space midpoint
- Compute the exact tool-configuration space midpoint
- If the deviation , then stop. Otherwise insert as a knot point between and
- Apply the algorithm recursively to the two new segments and
The key idea is that is the midpoint in joint space, while is the midpoint in tool-configuration space. They do not coincide, because the forward kinematics is non-linear. The gap between them is the deviation from the straight line.
This algorithm does not necessarily distribute the knot points uniformly over the interval