next up previous contents
Next: 4 Uncalibrated Jacobian Based Up: 3 A Tutorial on Previous: 3.2 Finding the Jacobian

3.3 Moving the Robot

The two previous sections give us the basic tools to build an uncalibrated visual control system. Assume that our initial visual state is tex2html_wrap_inline3536 and our goal is tex2html_wrap_inline3540 . One could directly apply one of the control laws in Section 3.1 to try to move to tex2html_wrap_inline3540 as quickly as possible. For reasons of stability and convergence (to be explored later in Chapter 5) it makes sense to divide the distance between tex2html_wrap_inline3536 and tex2html_wrap_inline3540 into a sequence of p subgoals:

(8)  displaymath3705

The robot is then moved towards each of the subgoals in order by:

  1. Calculate the movement tex2html_wrap_inline3674 by solving:

    displaymath3676

  2. Execute this move, i.e. set tex2html_wrap_inline3678
  3. Calculate a new Jacobian estimate using eq. 3.7.
  4. Repeat above for next goal tex2html_wrap_inline3680

To achieve the final goal tex2html_wrap_inline3540 step 1 to 3 of the above procedure is repeated until convergence. The algorithm is best started with a rough estimate of the true Jacobian, which can be obtained by, for instance, a very rough model, or by executing one set of test movements along the motor coordinate axes and form one initial finite difference approximation. In Chapter 5 we will show how to modify the algorithm so it is stable even for random initial Jacobians.

We call the set of subgoals way points, which are essentially additional visual goals describing the visual situation at intermediate points. In a bare bones visual servoing system it is usually enough to generate the way points at equidistant points along a line, such as in eq. 3.8. When solving real manipulation tasks the way points are generated in conjunction with trajectory planning. This is described in Section 5.2 and Chapter 7. By requiring a system to pass near or through such way points, drift from the desired trajectory can be eliminated. Dividing the transition between tex2html_wrap_inline3536 and tex2html_wrap_inline3540 into several subsegments, with intermediate visual goals along the straight line between them also allows us to bring the manipulator back onto the desired trajectory as soon as possible in the event of a deflection, by servoing on the nearest subgoal between the current pose and the goal. This is illustrated in Fig. 3.2. This behavior also reflects how the human arm reacts to a deflection.

   figure316
Figure 3.2: Planning intermediate way points in visual space reduces trajectory error compared to pure servoing on the goal.


next up previous contents
Next: 4 Uncalibrated Jacobian Based Up: 3 A Tutorial on Previous: 3.2 Finding the Jacobian

Martin Jägersand