/mc_panda

Panda's RobotModule and extensions for mc_rtc

Primary LanguageC++BSD 2-Clause "Simplified" LicenseBSD-2-Clause

mc_panda

License CI

This package provides the following robot modules for mc_rtc:

  • PandaDefault: panda robot without an end-effector mounted
  • PandaFoot: panda robot with a static foot-like end-effector
  • PandaHand: panda robot with the standard panda gripper
  • PandaPump: panda robot with the standard panda pump

It also contains the definition of two devices:

  • mc_panda::Robot is an asynchronous interface for franka::Robot commands and franka::RobotState which are connected to the actual robot when mc_franka is running the controller;
  • mc_panda::Pump is an asynchronous interface for franka::VacuumGripper which is connected to the pump when mc_franka is running the controller. It is only available in the PandaPump variant.

And it provides some panda-specific FSM states:

  • PandaStop: immediately stop panda motion execution
  • PandaWaitForCollision: monitor panda contact sensor until certain threshold are reached
  • PumpDropOff: sends a dropOff command to the panda's pump and wait for the command completion
  • PumpStop: interrupt the pump operation
  • PumpVacuum: sends a vacuum command to the panda's pump and wait for the command completion

See state examples for details on the available parameters for each state.

Dependencies

This package requires:

If mc_openrtm is installed this will also install compatible Choreonoid projects for the panda robot.

Original xacro files from franka_ros

Pump model was downloaded from Schmalz

Video presentation

A video demonstrating panda motion generation and simultaneous pump actuation employing this implementation is available here:

Video presentation

Reference

Writing code takes time. If this implementation is useful for your research, please cite the related publication:

@INPROCEEDINGS{Dehio2021ICRA,
  title={Robot-Safe Impacts with Soft Contacts Based on Learned Deformations}, 
  author={Dehio, Niels and Kheddar, Abderrahmane},
  booktitle={IEEE Int. Conf. on Robotics and Automation},
  pages={1357-1363},
  year={2021},
  pdf = {https://hal.archives-ouvertes.fr/hal-02973947/document},
  url = {https://hal.archives-ouvertes.fr/hal-02973947}
}

I.AM.Logo

This work was partially supported by the Research Project I.AM. through the European Union H2020 program under GA 871899.