Skip to content

This repository contains major components of my dissertation and provides examples for simulating adaptive controllers in ROS and Gazebo for 2DOF robots.

Notifications You must be signed in to change notification settings

Keyran-H/ROS-2DOF-adaptive-control

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Adaptive Control of 2DOF Planar Robots

The repository comprises two ROS packages and a folder containing matlab scripts used for processing and visualising data. The ROS packages are:

  • adaptive_controller: Used to simulate a torque controlled 2DOF Planar robot in Gazebo with a gradient descent adaptive controller.
  • novel_adaptive_controller_paper: Used to simulate a torque controlled 2DOF humanoid robot arm in Gazebo with a novel adaptive controller from this paper.

Both packages use an indirect adaptive control strategy and is conceptually shown in the image below. Indirect adaptive control is simply a technique used for estimating model parameters (for example, link mass) while controlling the robot.

The four main components of the indirect adaptive control strategy are:

  • Trajectory: This is the reference the robot must follow. The trajectory defines the position, velocity and acceleration for each joint on the robot.
  • Adaptive Law: Block represents the equations used to estimate the parameters $\hat{\Theta}$ of the robot.
  • Control Law: This comprise the equations used to generate torque inputs $\tau$ for joint actuation.
  • Robot: Block represents the real or simulated robot.

Running the simulations

Use "planar_RR_robot_sim.launch" to run the simulation from adaptive_controller:

roslaunch adaptive_controller planar_RR_robot_sim.launch

Use "BERT2_sim.launch" to run the simulation from novel_adaptive_controller_paper:

roslaunch novel_adaptive_controller_paper BERT2_sim.launch

The controller parameters for the simulation can be adjusted using the yaml file from the config folder for the respective ROS package. The GIF shows the simulation from the adaptive_controller ROS package.

Miscellaneous

Software Version:

  • ROS: melodic
  • Gazebo: 9.0.0

Useful Resources:

About

This repository contains major components of my dissertation and provides examples for simulating adaptive controllers in ROS and Gazebo for 2DOF robots.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published