/Generalized-SNS

Repository for the implementation of motion control algorithms for kinematically redundant robots under generalized hard inequality constraints.

Primary LanguageMATLABCreative Commons Attribution 4.0 InternationalCC-BY-4.0

Motion Control of Redundant Robots with Generalized Hard Inequality Constraints

Repository for the implementation of motion control algorithms for kinematically redundant robots under generalized hard inequality constraints.

Description

The algorithms presented in this repository offer efficient solutions for addressing redundancy resolution in velocity and acceleration commands while considering joint and Cartesian inequality constraints simultaneously. They provide real-time constraint customization without the need for parameter tuning. These algorithms are generalized versions of the Saturation in the Null Space (SNS) method, incorporating both joint and task-space constraints.

A significant advantage of these algorithms is their faster run-time execution compared to state-of-the-art local Quadratic Programming (QP) solvers. This feature is particularly beneficial for real-time applications involving redundant robots.

Simulation results are included in this repository to demonstrate the effectiveness of these algorithms across different robotic systems.

Getting Started

The codes in this repository are written in MATLAB. To get started:

  1. Clone or download this repository to your local machine.
  2. Open MATLAB and navigate to the downloaded repository folder.
  3. Run the Example_Vel_Planar_6DOF_Robot.m script to execute the example for a planar 6-degree-of-freedom robot at velocity-level control.

Todo

  • Add the algorithms for Velocity-level control.
  • Add the algorithms for acceleration-level control.
  • Add more simulation examples with different robot models.
  • Add Python scripts.
  • Enhance documentation for better code understanding.

Publications

Here are some of our publications related to this project:

  1. Kazemipour, A., Khatib, M., Al Khudir, K., Gaz, C. and De Luca, A., 2022. "Kinematic control of redundant robots with online handling of variable generalized hard constraints," IEEE Robotics and Automation Letters, 7(4), pp.9279-9286. (Link)
  2. A. Kazemipour, M. Khatib, K. Al Khudir, A. De Luca, "Motion control of redundant robots with generalised inequality constraints," 3rd Italian Conference on Robotics and Intelligent Machines, Rome, ITA, pp. 138-140, 2021. (Link)

Help

If you encounter any problems or issues with the code, please raise a new issue with a description of the problem, the steps to reproduce it, and the expected behavior.

Author

This project was developed as part of my Master's thesis in Control Engineering at the Sapienza UniversitĂ  di Roma.

For any questions or concerns, feel free to reach out.

Acknowledgments

Thanks to Prof. Alessandro De Luca, Dr. Maram Khatib, Dr. Khaled Al Khudir, and Dr. Claudio Gaz for their support and guidance throughout the research project.

License

Shield: CC BY 4.0 This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0