Research Projects

8 Apr

Singularity and Dynamic Obstacle Avoidance for a 3R Planar Robot

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 robot follows the desired trajectory without singularity avoidance.
The robot follows the same trajectory with singularity avoidance enabled.

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.

The robot follows the desired trajectory without obstacle avoidance.
The robot follows the desired trajectory with obstacle avoidance.


28 Mar

Position-Based Impedance (Admittance) Control for Force Tracking on Even and Uneven Surfaces

Industrial robots are traditionally designed for tasks that do not require physical contact with their environment. Because of this, most industrial robots rely on position control rather than force control. Torque-based impedance control is often difficult to apply in these systems because it requires an accurate dynamic model of the robot, which can be complex and hard to compute. To address this issue, this project uses position-based impedance control. This approach allows the robot to behave like a virtual mass–spring–damper system, enabling force tracking during contact tasks without explicitly deriving the robot’s dynamic model.

As robots are increasingly used in tasks that involve direct physical interaction, safe and accurate force control has become essential.

Force Tracking on an Even Surface

Position-based impedance control is implemented on a 3R planar robot to track contact force on a flat surface. The simulation starts with the robot operating in free space and then transitions into contact with the surface, as shown in the simulation video.

Force Tracking on an Uneven Surface

For uneven surfaces, the same control strategy is applied, but the environment stiffness changes over time. This allows the controller to adapt to variations in surface properties. The stiffness profile is defined as:

  • Ke = 3500 N/m for 0 < t < 2.5 s
  • Ke = 5000 N/m for 2.5 < t < 3 s

The simulation demonstrates stable force tracking under changing surface conditions.

Force tracking on even surface with constant stiffness
Force tracking on uneven surface with varying stiffness