UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Multiprocessor-compatible inverse kinematics and path planning for robots Poon, Joseph Kin-Shing

Abstract

Novel algorithms in robot inverse kinematics and path planning are proposed. Emphasis is placed on real-time execution speed with multiprocessors and adaptability to unpredictable environments. The inverse kinematics algorithm is an iterative solution which is applicable to many classes of industrial robots, and is stable at and around singularities. The method is based on a simple functional analysis of each link of a manipulator and projecting vectors on the coordinate frame of each joint. Heuristic rules are used to control a mobile manipulator base and to guide the manipulator in the case of non-convergence caused by joint limits. The path planning algorithm uses a potential surface in a quantized configuration space. Paths are guaranteed to be collision-free for all parts of the robot. Local minimum regions on the potential surface are filled on demand by extending the obstacles. Arbitrarily shaped obstacles in 3-dimensions can be handled. Using a hierarchical collision detection technique, high execution speed can be maintained even with many complex shaped obstacles in the workspace. The path planning method can theoretically be applied to any manipulator with any degrees of freedom. The implementation of the inverse kinematics and path planning algorithms in a parallel hierarchical multiprocessor computer structure designed for the control of robots is proposed and investigated. Communication among the processors is by point-to-point message passing via asynchronous serial links with message buffers. Computer simulations are used to demonstrate the appropriateness and feasibility of this computer structure for robot control.

Item Media

Item Citations and Data

Rights

For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use.