Skip to content

ARMCL: ARM Contact point Localization via Monte Carlo Localization

License

Notifications You must be signed in to change notification settings

cxdcxd/muse_armcl

 
 

Repository files navigation

MuSe ARMCL: ARM Contact point Localization via Monte Carlo Localization

Demonstartion

image A video demonstration can be found on youtube

Dependencies & Installation

To install muse_armcl the following dependencies are required. We suggest using ROS kinetic.

  • ROS dependencies:

    sudo apt-get install ros-distro-orocos-kdl sudo apt-get install ros-distro-trac-ik

  • External dependencies:

    • Download and install OpenMesh OpenMesh
  • Internal dependencies: Create a workspace and clone the following repositories:

      git clone https://github.com/cogsys-tuebingen/muse_smc.git
      git clone https://github.com/cogsys-tuebingen/cslibs_plugins.git
      git clone https://github.com/cogsys-tuebingen/cslibs_mesh_map.git
      git clone  https://github.com/cogsys-tuebingen/cslibs_indexed_storage.git
      git clone https://github.com/cogsys-tuebingen/cslibs_kdl.git
      git clone https://github.com/cogsys-tuebingen/cslibs_utility.git
      git clone https://github.com/cogsys-tuebingen/cslibs_math.git
    

Compile with

catkin_make -DCMAKE_BUILD_TYPE=Release 

or

 catkin_make -DCMAKE_BUILD_TYPE=RelWithDebInfo	

Robot Model

You can provide your robot model as an ROS URDF model. Currently, serial manipulators with up to 3 fingers are supported. To support other kinematic trees you have to modify/update the ExternalForcesSerialChain class in cslibs_kdl. Besides, you require a mesh surface model of your manipulator in the obj-format. For surface model examples for the Kinova Jaco 2 see here.

Measurements

For measurements the particle filter requires a sensor_msgs/JointState. In this Joint State we have to provide the current joint angles and the effort field has to be set with the current external torque estimates. To estimate external torques you can use your own method or the observer provided in cslibs_kdl. if you have torque sensor in your manipulator.

Confusion Matrix Plot Script

rosrun muse_armcl plot_conf_mat.py -i <input file> -o <output file (optional)>

References

  • MuSe ARMCL:

      @inproceedings{O:Zwiener:2019,
              title={{ARMCL\ - ARM Contact point Localization via Monte Carlo Localization}},
              author={Zwiener, Adrian and Hanten, Richard and Schulz, Cornelia and Zell, Andreas},
              month={October},
              year={2019},
              booktitle={2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
              note={(under review)}
      }
    
  • MuSe Framework

      @INPROCEEDINGS{Hanten:2019,
              author={Hanten, Richard and Schulz, Cornelia and Zwiener, Adrian and Zell, Andreas},
              title={Multi-Sensor Integration for Sequential Monte Carlo Methods},
              booktitle={2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
              month={October},
              year={2019},
              note={(under review)},
      }
    

About

ARMCL: ARM Contact point Localization via Monte Carlo Localization

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 94.3%
  • Python 3.5%
  • CMake 2.2%