Giter Club home page Giter Club logo

cods_sdk's Introduction

Build Status

Dynamical system based compliant contact controller

Catkin package implementing DS based contact controller which was proposed in

Mirrazavi Salehian, S. S. and Billard, A. (2018) A Dynamical System Based Approach for Controlling Robotic Manipulators During Non-contact/Contact Transitions. IEEE Robotics and Automation Letters (RA-L).

You can find a use case study of this here: https://www.youtube.com/embed/fhfBBMH4XVg

Dependences

Features:

  • Controlling for contact and impact.
    • Making sure that the contact is going to be stable and the robot does not bounce on the surface.
  • Leaving the surface or staying on the it at desired points.

Documentation

You can get some basic source code documentation by running doxygen.

sudo apt-get install doxygen
roscd CoDs_SDK
doxygen Doxyfile

How to run

Initialization:

1- Initialize the modulation function:

void initialize(int Dimen_state,double delta_dx,double F_d,double Gammma_free_motion, bool define_desired_contact_point, bool define_desired_leaving_point);

In the loop:

1- Set the state of the gamma function, which conveys the notion of distance between the robot's end-effector and the contact surface

void Set_Gamma(double Gamma,VectorXd Normal,VectorXd q2,VectorXd q3,VectorXd Point_on_surface);

2- Set the state of the robot

  void Set_State(VectorXd State,VectorXd DState,VectorXd DState_real,VectorXd Original_Dynamic);

3- Set the location of the desired contact point

  void Set_Contact_point(VectorXd Contact_point);

4- Set the location of the desired leaving point and the location of the target in space!

  VectorXd Set_Leaving_point(VectorXd Leaving_point,VectorXd X_Target);

5- Calculate the modulation function

MatrixXd Calculate_Modulation();

6- Calculate the modulation function

MatrixXd Calculate_Modulation();

Note 1: Most of the variables are accessible by get_ functions see CoDs_SDK.h

Contact information

For more information contact Sina Mirrazavi.

cods_sdk's People

Contributors

sinamr88 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.