oofrivia / lipm_walking_controller

Walking controller based on linear inverted pendulum tracking

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LIPM Walking Controller

License Documentation

Stair climbing by the HRP-4 humanoid robot

Source code of the walking and stair climbing controller used in the experiments of Stair Climbing Stabilization of the HRP-4 Humanoid Robot using Whole-body Admittance Control, as well as in an industrial demonstrator at the Airbus Saint-Nazaire factory.

Getting started

The easiest way to get started with the controller is to run its Docker image from an Ubuntu Linux distribution:

xhost +local:docker
docker run -it --rm --user ayumi -e DISPLAY=${DISPLAY} -v /tmp/.X11-unix:/tmp/.X11-unix:rw \
    stephanecaron/lipm_walking_controller \
    lipm_walking --floor

See the documentation for more usage instructions.

Installation

The controller has been tested on Ubuntu 14.04 with ROS Indigo and Ubuntu 16.04 with ROS Kinetic. See the instructions to build from source in the documentation.

Dependencies

Compilation requires:

The following dependencies are not publicly released but available upon request to Pierre Gergondet:

  • mc_rtc: robot controller library (includes mc_control, mc_rbdyn, mc_solver and mc_tasks)
  • mc_rtc_ros: ROS tools for mc_rtc
  • mc_rtc_ros_data: ROS environment and object descriptions for mc_rtc

Usage

If it is not there already, enable the controller in your mc_rtc configuration:

{
  "MainRobot": "JVRC1",
  "Enabled": ["LIPMWalking"]
}

Launch RViz for the JVRC-1 model by:

roslaunch lipm_walking_controller display.launch robot:=jvrc1

Finally, start the controller from your mc_rtc interface. Here is the example of the Choreonoid project installed from jvrc_choreonoid in the Docker image:

cd /usr/local/share/hrpsys/samples/JVRC1
choreonoid --start-simulation sim_mc.cnoid

You should end up with the following windows: Choreonoid and RViz GUI of the controller See the Graphical user interface page of the wiki for further instructions on how to use this GUI.

Thanks

To @gergondet for developing and helping with the mc_rtc framework.

About

Walking controller based on linear inverted pendulum tracking

License:BSD 2-Clause "Simplified" License


Languages

Language:C++ 88.1%Language:CMake 11.6%Language:Shell 0.3%