This project focuses on redundancy resolution for a 3R planar robotic manipulator. In simple terms, redundancy resolution means choosing the best joint configuration when multiple solutions can achieve the same end-effector motion. The choice depends on the task objective.
In this work, two key objectives are considered: 1) Singularity avoidance, and 2) Dynamic obstacle avoidance
Singularity Avoidance
A singularity occurs when the robot loses freedom of motion in certain directions, making control unstable or inefficient. To address this, a singularity avoidance algorithm is implemented and tested in simulation.
The robot is commanded to follow a desired trajectory while also keeping its joint configuration away from singular positions. To evaluate the effectiveness of the approach, two simulations are compared:
The results are visualised using a manipulability ellipsoid. As the robot approaches a singular configuration, the ellipsoid area shrinks. A larger ellipsoid indicates higher manipulability, meaning the robot is far from a singularity. At a fully extended position, a hard singularity cannot be avoided, and the ellipsoid collapses into a straight line.
Dynamic Obstacle Avoidance
In addition to singularity handling, a dynamic obstacle avoidance algorithm is implemented. The robot is required to avoid a moving obstacle while continuing to follow the desired trajectory.
The simulation demonstrates that the robot can successfully adjust its motion in real time to avoid collisions, without deviating significantly from the task path.
