Skip to content

mmurooka/LocomanipController

 
 

Repository files navigation

Humanoid loco-manipulation controller

CI Documentation LICENSE

Features

  • Completely open source! (controller framework: mc_rtc, simulator: Choreonoid, sample robot model: JVRC1)
  • Accepts commands for trajectory and velocity of a loco-manipulation object.
  • Automated management with CI: Dynamics simulation is run on CI to verify loco-manipulation.

Technical details

This controller is a simple extension of BaselineWalkingController for loco-manipulation. For more information on walking control, see BaselineWalkingController.

Install

Requirements

  • Compiler supporting C++17
  • Tested with Ubuntu 20.04 / ROS Noetic and Ubuntu 18.04 / ROS Melodic

Dependencies

This package depends on

Preparation

  1. (Skip if ROS is already installed.) Install ROS. See here for details.
$ export ROS_DISTRO=melodic
$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
$ wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install ros-${ROS_DISTRO}-ros-base python-catkin-tools python-rosdep
  1. (Skip if mc_rtc is already installed.) Install mc_rtc. See here for details.
$ curl -1sLf 'https://dl.cloudsmith.io/public/mc-rtc/stable/setup.deb.sh' | sudo -E bash
$ sudo apt-get install libmc-rtc-dev mc-rtc-utils ros-${ROS_DISTRO}-mc-rtc-plugin ros-${ROS_DISTRO}-mc-rtc-rviz-panel libeigen-qld-dev

Controller installation

  1. Setup catkin workspace.
$ mkdir -p ~/ros/ws_lmc/src
$ cd ~/ros/ws_lmc
$ wstool init src
$ wstool set -t src isri-aist/LocomanipController https://github.com/isri-aist/LocomanipController --git -y
$ wstool update -t src isri-aist/LocomanipController
$ wstool merge -t src src/isri-aist/LocomanipController/depends.rosinstall
$ wstool update -t src
  1. Install dependent packages.
$ source /opt/ros/${ROS_DISTRO}/setup.bash
$ rosdep install -y -r --from-paths src --ignore-src
  1. Build a package.
$ catkin build locomanip_controller -DCMAKE_BUILD_TYPE=RelWithDebInfo --catkin-make-args all tests
  1. Setup controller
$ mkdir -p ~/.config/mc_rtc/controllers
$ cp ~/ros/ws_lmc/src/isri-aist/LocomanipController/etc/mc_rtc.yaml ~/.config/mc_rtc/mc_rtc.yaml

Simulator installation

$ sudo apt-get install jvrc-choreonoid

Simulation execution

# Terminal 1
$ source ~/ros/ws_lmc/devel/setup.bash
$ roscore
# Terminal 2
$ source ~/ros/ws_lmc/devel/setup.bash
$ cd /usr/share/hrpsys/samples/JVRC1
$ ./clear-omninames.sh
$ choreonoid sim_mc.cnoid --start-simulation
# Terminal 3
$ source ~/ros/ws_lmc/devel/setup.bash
$ roslaunch locomanip_controller display.launch

Releases

No releases published

Packages

No packages published

Languages

  • C++ 94.2%
  • CMake 3.7%
  • Shell 2.1%