Introduction to MATLAB Amine Abou Moughlbay - IRCCyN by pptfiles


									                Plan of the Presentation
 Definition of Redundant Manipulators
 Direct Differential Kinematics
 Inverse Differential Kinematics :
    - General Pseudo-inverse Solution
    - Damped Least-Square Solution
   Redundancy Resolution via Optimization (Liégeois, 1977 Baillieul, et al., 1984)
   Analytical Method for redundancy resolution (Ivlev, et al., 1997)
   Heuristic Method for Redundancy resolution (Marques, et al., 2009)
   Task-Priority Formulations for Kinematic Control (Baerlocher et al,1998)
   Directional Redundancy for Robot Control Mansard, et al., 2009
   Integrate Unilateral Constraints into SoT (Mansard, et al., 2009)
   Conclusion and Perspectives                                                2
  Kinematically Redundant Manipulators
                      (Chiaverini, et al., 2008)
 Redundant Manipulators : When a robotic manipulator has
  more DOF than those strictly required to execute a given task.
 Advantages of Redundant Manipulators:
  • Increase dexterity
  • Extend the applications workspace
  • Resolve the singularity, joint limits and workspace obstacles
  • Increase robustness to faults  improve reliability
  • Allow self-motions (internal motions) of the manipulator
  • Minimize torque/energy over a given task (manipulator can
    achieve a higher degree of autonomy).
  • Imitate Human arm: 7 DOF (3 in the shoulder, 1 in the elbow ,
    3 in the wrist) without considering the DOFs in the fingers. 3
Kinematically Redundant Manipulators
Example of redundant robots:

7-DOF DLR Lightweight Robot                7-DOF Mitsubishi
 Institute of Robotics and Mechatronics   PA-10 Manipulator   4
Kinematically Redundant Manipulators
Example of redundant robots:

     8 DOF - DEXTER robot       Hyper-redundant robots (Snakey)
       by Scienzia Machinale.    large number of DOF (snake-like robots…)
Task-Oriented Kinematics
  Configuration                  Location of the
 of N-joint Serial                manipulator
   manipulator                    end-effector

         Redundant robot  N>M

  First order differential kinematics:

 Task space                      Joint space
   velocity                        velocity

           M×N task Jacobian matrix

       Inverse Differential Kinematics
The General Solution:
                                                             Arbitrary joint-
                                                             space velocity
                              Orthogonal projection
                            matrix in the null space of Jt
 Pseudo- inverse of Jt
 This solution provides all least-squares solution to the end-
  effector task constraint, it minimizes
 Problem: Near singular configurations  Excessive joint velocity

 1st Solution: Modify the planned trajectory  Real-time control!

 2nd Solution: Joint space interpolation when planned trajectories
  is close to a singularity  Error in tracking the task. (Taylor, 1979)
       Inverse Differential Kinematics
The Damped Least-Square Solution:

                                      Damping factor
This Solution satisfies the condition:
Choice of :
 Small values of  : Accurate solution, low robustness in the
  singular and near-singular configurations.
 High values of  : Low tracking accuracy.
                                                       (Chiaverini, et al., 1991)
                     Far from singularity low 
 Use of varying 
                     Close to singularity  high 

  Ensures continuity and good shaping of the solution
 Infinite solutions for the inverse kinematics problem  Should
  consider more criterions                                                          8
                     Redundancy Resolution via
 Performance Criteria:
                              Maximize the manipulability measure
Singularity avoidance         Maximize the condition number
                              Maximize the smallest singular value.
Avoid mechanical joint limits          Minimize the cost function

 Local Optimization: (Baillieul, et al., 1984)
  Pseudo-inverse solution: minimize q

  Another solution: q 0 in the direction of the anti-gradient of a
  scalar configuration dependent performance criteria H(q).

  Scalar step size               Gradient of H at the current joint configuration
                   Redundancy Resolution via
 Local Optimization: (Liégeois, 1977)
  Redundancy resolution scheme:
  + Simplicity, can be used in real-time kinematic inversion.
  - Local optimization: unsatisfactory performance over long tasks
  - Choose the value of the scalar step size kH
  - Require a lot of knowledge about environment
  - Less reactive to change in the goal or environment.

 Global Optimization:
  Choose q 0 to minimize integral criteria of the form
  Problem: The solution of this problem may not exist !!!
  If H(q) is a quadratic form in the joint velocities or accelerations
   Solution can be found.                                          10
                        Analytical Method
                 for redundancy resolution (Ivlev, et al., 1997)
 The redundant robot is extended by imaginary links, which limit
  the flexibility of the robot and adapt it to the working space,
  without fixing some of the joints.
          Forward kinematics                Inverse kinematics
  End-effector                     Vector of joint
     pose                            variables
  Redundant kinematic structure (N>M): r=N-M redundant joints.

 Introduce r additional conditions to:
  - Limit the robots flexibility
  - Allow the demanded end-effector movement
  - Restrict the actual robots work-space with respect of obstacles
                     Analytical Method
            for redundancy resolution (Ivlev, et al., 1997)
 Extend the redundant kinematic chain with r imaginary links
  (each with 2 non-actuated spherical joints at both sides).
 Each link is connected to:
  An imaginary fixed point in Cartesian space (Anchor point Ak).
  The redundant kinematic chain at the other end.
         Planar manipulator (3 links
           with 3 rotational joints)
             A goal point {xG,yG}
Value of  and coordinates of Ak!

 The additional equation can be then written:
 Choose the length of  to avoid obstacles…
 The selection of  and the coordinates of Ak are dependant.   12
                     Heuristic Method
           for Redundancy resolution (Marques, et al., 2009)
 Pseudo-Inverse Jacobian Method:

                       Displacement              Constant column-vector
                  discretized in K intervals     obtained experimentally

 The final position will be reached in K iterations,
  with an approximately linear path.
 For every iteration  Small variation of q
   Apply direct kinematics  Determine the
  end-effector new position (until the target
  position is intended).
 Only after obtaining the final configuration,
  robot joints are physically rotated between the
  initial and the final configurations.                             13
                    Heuristic Method
          for Redundancy resolution (Marques, et al., 2009)
 Joint with larger influence first:
1- Compute virtual positions of the end-effector for a variation 
2- Compute distance di between goal and each virtual position of 1
3- Determine the joint rotation  i that minimizes the distance
4- Execute in virtual model the previous rotation and returns to 1
  while the end-effector doesn't arrive to the goal.
 Last joints first:
- In each iteration, it is first rotated by  degrees the joint
  closer to the end-effector.
- If none of these two rotations approaches the end-effector to
  the goal, the next joint is rotated (and so on).
- When the rotation of degrees doesn't decrease the distance
  of the end-effector to the goal, then the value of  is reduced.
                        Heuristic Method
           for Redundancy resolution (Marques, et al., 2009)
 Experimental results and Comparaisons:
- Different final conf.
  but same final end-
  effector pose.
- Pseudo-inverse
  jacobian approach
  is generally faster
  but less accurate
  than the heuristic
- The 2nd heuristic method (last joints first) is faster than the 1st
  one (joint with the larger influence first).
- These two heuristic methods present similar position errors. 15
             Task - Priority Formulations
             for the Kinematic Control (Baerlocher, et al., 1998)
 Example: the human kinematic control
  Large number of DOF, tree structure, unstable equilibrium …
   Requires an approach for multiple tasks prioritization
  (keeping balance is more important than reaching an object)

Formulation of the problem:
 Tasks (T1, … Tt) with an order of priority (Ti has priority over Ti+1).
 Task Ti controls location and/or orientation of one or more end-
  effectors simultaneously, and is defined by Ti   J i , xi 
 Find a joint velocity vector such that every kinematically
  achievable task Ti is satisfied, unless it conflicts with a higher-
  priority task Tj (j < i); in this case, its error has to be minimized.
            Task - Priority Formulations
            for the Kinematic Control (Baerlocher, et al., 1998)
The first task-priority formulation (F1)
 Case of Two tasks:

 Generalization:

 Amelioration:

The second task-priority formulation (F2)

            Task - Priority Formulations
            for the Kinematic Control (Baerlocher, et al., 1998)
Comparison of the two formulations and Simulation results:
 Computational cost of the formulation: depends on the
  computational cost of a single iteration, and the quality of the
  convergence. (F1) is slightly faster than (F2).
 Priorities among multiple cartesian tasks of diverse nature have
  been respected.
 Optimization of a desired criterion in joint space may be applied
  with lowest priority without affecting the progress of these tasks
 Major problems of (F2): inefficient task mapping that searches
  the least-squares solution in the unconstrained subspace.
 (F1) formulation faces the algorithmic singularities problem, but
  the artifacts can be reduced with proper damping.                18
               Directional Redundancy
                for Robot Control (Mansard, et al., 2009)
 Secondary Task helps the main task to be completed faster and
  enhance its performance by enlarging the nb of available DOF.
 When the 2ndary task goes in the same direction than the main
  task  Solution: impose the secondary control law not to
  increase the error of the main task.
Continuous approach:
 Classical redundancy formalism (1):
  The projection operator is used to transform any 2ndary vector z
  into a 2ndary control law that does not disturb the main task.

                                          reference decrease speed
               Directional Redundancy
                for Robot Control (Mansard, et al., 2009)
Continuous approach:
 Extended projection (2) :
  Search of a projection operator P (of a secondary task z) so that
            respects the convergence condition:
  Using SVD decomposition of J:

  Stability theorem:
  For any task function e whose Jacobian J is full rank: If the
  following control law                is applied to the robotic
  system, then the error e asymptotically converges to zero.
  Problem: Potential Oscillations at Task  Necessity to introduce
  an upper bound on the value of the secondary term              20
               Directional Redundancy
                for Robot Control (Mansard, et al., 2009)
Discrete approach (3):
 The solution of potential oscillations requires considering the
  robot as a discrete system
  Convergence condition:
  Final control law:

  Stability theorem:
  For any task function e whose Jacobian J is full rank, If the
  following control law:                     is applied to the robotic
  system, then, given that ∆t is sufficiently small, the error
  asymptotically converges to zero.                                21
              Directional Redundancy
                for Robot Control (Mansard, et al., 2009)
Comparison and remarks:
 The projection operator in (2) has more non zero coefficients
  (more free DOF) than that in case of classical redundancy (1).
 (3) accelerates the decreasing of each component of the error
  and takes the secondary task into account in the same way.
 The system is globally stable, and asymptotically converges to
  the main task completion and to the best reachable local
  minimum of the secondary task.

               Directional Redundancy
                for Robot Control (Mansard, et al., 2009)
Application to visual servoing:
 The robot has to move with respect to a visual target, and
  simultaneously to take into account a secondary control law.

 Cost function for avoidance:
  Its gradient can be considered as an artificial force, pushing the
  robot away from the undesirable configurations.
 Joint-Limit Avoidance Law:
  The cost function reaches its maximal value near the robot joint
  limits, and the gradient is nearly zero far from the limits.
 Occlusion Avoidance Law:
  It should maximize the distance d between the occluding object
  and the visual target that is used for the main task.      23
              Directional Redundancy
                for Robot Control (Mansard, et al., 2009)
 Experimental results:

 Classical redundancy : Rank(P) = 3 during the whole execution.
  Perfect exponential decrease of the error.
 Directional Redundancy: Rank(P)> 3 while the error of the main
  task is not null. The convergence of the 1st component of the
  main-task error is accelerated by the secondary task. When it
  reaches 0, the projection operator looses a rank.             24
  Integrate Unilateral Constraints into SoT
                          (Mansard, et al., 2009)
 Generally task is defined by e = 0, represents bilateral constraint.
 Exist tasks described by a set of unilateral constraints ei≤0.
 Examples: joints limits, collision avoidance, visibility loss,
  avoidance of singularities.
 Inverse-Kinematics Control:                       
 Assume that J is perfectly known. The control law is then always
  stable, and asymptotically stable if J is full rank.
 Unilateral constraint : e<0 
 Control law (Cheah, et al., 2007):
                   where                                 activation matrix
 Integrate Unilateral Constraints into SoT
                        (Mansard, et al., 2009)
 Solution : smooth H, by introducing an activation buffer
  before the point of activation of the constraint.
 Problem: The activation buffer is not considered due to
  inner mathematical simplification of the control law.
Keeping the Continuity at the Kinematics Level:
 Consider a task e, its Jacobian J (n×m , cte rank r) and its
  activation matrix H (diagonal matrix /hi in the interval [0,1]).
 The continuous inverse of J activated by H is defined by:

                                           all the subsets composed
                                             of the m first integers
            Xp Coupling matrices of J :                            26
 Integrate Unilateral Constraints into SoT
                        (Mansard, et al., 2009)

Using this equation, each component of the task is:
 • Perfectly realized if the corresponding hi is equal to 1.
 • Not taken into account if hi is zero.
 • Partially realized otherwise.
Extension of the Control law to k tasks:

+ Similar in shape to the classical control law.
+ Ensures the continuity whatever the evolution of the
 activation of the features.                                   27
 Integrate Unilateral Constraints into SoT
                      (Mansard, et al., 2009)
+ Ensure the priority order of active features (when feature is
  fully active, it is not disturbed by tasks of lower priority.
- Like the classical pseudo inverse, it is sensitive to the
  singularities of the Jacobian (& same set of singular points)
+ Points that are regularized by the continuous inverse are the
  activation points of the unilateral constraints, which were
  impossible to consider using the classical approach.
 To smooth these singularities of the Jacobian:
- Use the DLS instead of the classical pseudo inverse
   priority order will not be ensured perfectly any more.
- Set an explicit constraint to avoid the neighborhood of
  singular points (Gienger, et al., 2006).
          Conclusion and Prespectives
 Desired Tasks:
  - Maintain the robot equilibrium
  - Grasp an object from a table
  - Avoid Environmental obstacles
  - Avoid Occlusion of the object
  - Manipulate objects using 2 hands
 Use the StackOfTask Approach for redundancy
  resolution and tasks prioritizing.
 Application on Simulation OpenHRP
 Application on HRP2 Robot in LAAS Toulouse


To top