Skip to content

Coupled Dynamical Systems Execution for Position (master) - Orientation (slave) of end-effector encoded with Gaussian Mixture Models.

License

Notifications You must be signed in to change notification settings

epfl-lasa/coupled-dynamical-systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

coupled-dynamical-systems (CDS)

Implementation of the Execution of Coupled Dynamical Systems for ROS & Robot Toolkit. In this specific implementation the master dynamics is the position in [x,y,z] and the slave dynamics is the orientations [roll,pitch,yaw] of the end-effector of the robot. We use this to learn reaching motions, where a coupling in the position and orientation is present.

Build Status

Reference:

Shukla, A. and Billard, A. (2011) Coupled Dynamical System Based Hand-Arm Grasp Planning under Real-Time Perturbations. In Proceedings of Robotics: Science and Systems VII, Los Angeles CA. Volume 7, Pages 313--320.

Dependencies:

This package depends on Mathlib which is found in robot-toolkit:

$ git clone  https://github.com/epfl-lasa/robot-toolkit.git

Learning CDS:

To learn a CDS with both master/slave dynamics governed by a SEDS model you can use the code in:

https://github.com/alpais/cds_model_learning_generic

To learn independent SEDS models:

https://bitbucket.org/khansari/seds

You can find it in SEDS/Extensions/CDSv1, where the GMM parameters of each dynamical systems are stored. These are then fed to CDSExecution class.

Usage

	CDSExecution *cdsRun = new CDSExecution;
	cdsRun->init(masterDyn, slaveDyn, coupling);
	cdsRun->setObjectFrame(object_frame);
	cdsRun->setAttractorFrame(attractor_frame);
	cdsRun->setCurrentEEPose(curr_ee_pose);
	cdsRun->setDT(model_dt);
	cdsRun->setMotionParameters(0.5,1,1,reachingThreshold, masterType, slaveType);
	cdsRun->postInit();
	
	start loop  
		// set current ee pose  
		cdsRun->setCurrentEEPose(curr_ee_pose);  
		// Update DS and get next ee pose   
		cdsRun->getNextEEPose(des_ee_pose); 
	end loop  

About

Coupled Dynamical Systems Execution for Position (master) - Orientation (slave) of end-effector encoded with Gaussian Mixture Models.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published