Using a Fast Signal Processor to Solve the Inverse Kinematic Problem
We discuss how to use a fast signal processor as a coprocessor to solve the inverse kinematic problem for an arbitrary 6-joint robot is. The processor, DSP32C from ATLKQ T, has a peak performance of 25 million floating point operations per second, but the code must be written with great care so that the pipelining capabilities are efficiently used.
A general method proposed by Angeles using Gauss-Newtons method is used and approximately 1000 floating point operations should be performed in each timestep. Special emphasis is put on how to handle the singularity problem, e.g. when the Jacobian is close to rankdeficient. This leads to instabilities in the solution and can produce uncontrolled accelerations in the robot joints.
Techniques to estimate the smallest singular value oi the Jacobian are used to detect possible unstabilities and different regularization processes are tested. A method based on rank-one modifications of the Jacobian is proposed to handle this kind of problems, and it is compared to standard techniques. Implementation and tests of the the Gauss-Newton and regularization process is performed on a DSP32C-simulator.
Unable to display preview. Download preview PDF.
- J. Angeles, ’On the Numerical Solution of the Inverse Kinematic Problem’ Int. J of Rob. Research, Vo14,No 2.Google Scholar
- C.H Bischof, “Incremental Condition Estimation” Mathematics and Computer Science Division, Argonne National Laboratory, Preprint Mcs-P15–1088 (1989).Google Scholar
- G. H. Golub LKQ C. F. van Loan, “Matrix Computations”, The John Hopkins University Press (1983).Google Scholar
- J-E. Snell, “A study of a General Method for the Inverse Kinematic Problem for Robot Manipulators” Uppsala University Department of Computer Science, Internal Report No 86–02.Google Scholar
- “WE DSPS2C Digital Signal Processor Information Manual’ ATLKQ T Documentation Management Organization, (1988).Google Scholar