←
This paper discusses a motion coordination method that has shown great promise in both simulation and application. Essentially, the method uses closedform reverse position analysis to satisfy the placement constraints on the robot’s hand and numerical optimization to resolve the redundancy. The numerical optimization generates configuration options and, based on a six DOF substructure of the robot’s geometry, closedform reverse position analysis ensures the options satisfy the placement constraints. This process explicitly identifies configuration options within the robot’s null space. A decision making process based on multiple performance criteria chooses one option as the next setpoint for the robot’s servo controllers. Crane, Duffy, and Carnahan (1991) have also shown the use of closedform reverse position analysis to solve 6
DOF substructures within a redundant robot, though they leave the decision making to a human operator.
Constraint Tracking
Constraint tracking acts as a filter to eliminate options not satisfying the positional and orientational
equality constraints, on the placement of the robot’s EEF. Concatenation of the geometric transformations
associated with each of these constraints generates the transformation the placement of the robot’s hand must
satisfy. The formulation of the transformation for the closedform position analysis proceeds as follows:
This section discusses two methods of generating configuration options. The first method systematically
generates options within a local hypercube about the robot’s current configuration. The second method bases
the configuration options on a simulated annealing algorithm and thus incorporates randomness.
Perturbing the joint displacements a small amount, AO, from their current values generates a set of local
configuration options: where s is an arbitrary sweep vector with all elements equal to ±1 or 0. The vector
of current displacement values, 0, is the base point for the perturbations.
All other E with elements equal to combinations of ±1 and 0 generate points on the faces, edges, and vertices of an ndimensional hypercube
with n equal to the number of joints involved in the exploration.
→
