# Introduction to MATLAB Amine Abou Moughlbay - IRCCyN by pptfiles

VIEWS: 8 PAGES: 30

• pg 1
```									                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.
• Increase dexterity
• Extend the applications workspace
• Resolve the singularity, joint limits and workspace obstacles
problems
• 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…)
5
Configuration                  Location of the
of N-joint Serial                manipulator
manipulator                    end-effector

Redundant robot  N>M

First order differential kinematics:

velocity                        velocity

6
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-
 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)
7
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
Optimization
 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
9
Redundancy Resolution via
Optimization
 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
11
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.
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
Joints
discretized in K intervals     obtained experimentally
variation

 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.
14
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
methods.
- 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
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.
16
for the Kinematic Control (Baerlocher, et al., 1998)

 Generalization:
where

 Amelioration:

17
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.
where

reference decrease speed
19
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:
where

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

22
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
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
Discontinuity!
25
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
where
of the m first integers
Xp Coupling matrices of J :                            26
Integrate Unilateral Constraints into SoT
(Mansard, et al., 2009)
where

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:

where
+ 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).
28
Conclusion and Prespectives
- 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